Skip to main content
summaryrefslogtreecommitdiffstats
path: root/debug
diff options
context:
space:
mode:
authorcvs2svn2007-02-20 17:23:36 +0000
committercvs2svn2007-02-20 17:23:36 +0000
commit38657ea284fe0cf0e2adb6ba78460f1a54e53e3c (patch)
tree95f80ca34643b105fc197c48a354a1c6930a76fe /debug
parent5fdd70a074698a3c0f1b81428320eff63421d833 (diff)
downloadorg.eclipse.cdt-zDougStdFix.tar.gz
org.eclipse.cdt-zDougStdFix.tar.xz
org.eclipse.cdt-zDougStdFix.zip
This commit was manufactured by cvs2svn to create tag 'zDougStdFix'.zDougStdFix
Sprout from master 2007-02-20 17:23:35 UTC Mikhail Sennikovsky <mikhail.sennikovskiy@gmail.com> 'New Project Model initial check-in' Delete: build/org.eclipse.cdt.make.core.tests/.classpath build/org.eclipse.cdt.make.core.tests/.cvsignore build/org.eclipse.cdt.make.core.tests/.project build/org.eclipse.cdt.make.core.tests/META-INF/MANIFEST.MF build/org.eclipse.cdt.make.core.tests/about.html build/org.eclipse.cdt.make.core.tests/build.properties build/org.eclipse.cdt.make.core.tests/plugin.xml build/org.eclipse.cdt.make.core.tests/src/org/eclipse/cdt/make/builder/tests/ScannerConfigConsoleParserTests.java build/org.eclipse.cdt.make.core.tests/src/org/eclipse/cdt/make/builder/tests/ScannerConfigDiscoveryTests.java build/org.eclipse.cdt.make.core.tests/src/org/eclipse/cdt/make/builder/tests/StandardBuildTests.java build/org.eclipse.cdt.make.core.tests/src/org/eclipse/cdt/make/core/tests/AutomatedIntegrationSuite.java build/org.eclipse.cdt.make.core.tests/src/org/eclipse/cdt/make/core/tests/MakeTestsPlugin.java build/org.eclipse.cdt.make.core.tests/src/org/eclipse/cdt/make/core/tests/StandardBuildTestHelper.java build/org.eclipse.cdt.managedbuilder.core.tests/.classpath build/org.eclipse.cdt.managedbuilder.core.tests/.cvsignore build/org.eclipse.cdt.managedbuilder.core.tests/.project build/org.eclipse.cdt.managedbuilder.core.tests/.settings/org.eclipse.jdt.core.prefs build/org.eclipse.cdt.managedbuilder.core.tests/ChangeLog build/org.eclipse.cdt.managedbuilder.core.tests/META-INF/MANIFEST.MF build/org.eclipse.cdt.managedbuilder.core.tests/about.html build/org.eclipse.cdt.managedbuilder.core.tests/build.properties build/org.eclipse.cdt.managedbuilder.core.tests/icons/one.gif build/org.eclipse.cdt.managedbuilder.core.tests/icons/two.gif build/org.eclipse.cdt.managedbuilder.core.tests/plugin.xml build/org.eclipse.cdt.managedbuilder.core.tests/resources/depCalcProjects/test1DepCalc2/test1DepCalc2.zip build/org.eclipse.cdt.managedbuilder.core.tests/resources/depCalcProjects/test1DepCalc3/test1DepCalc3.zip build/org.eclipse.cdt.managedbuilder.core.tests/resources/depCalcProjects/test1DepCalcPreBuild/test1DepCalcPreBuild.zip build/org.eclipse.cdt.managedbuilder.core.tests/resources/oldTypeProjects/1.2/test12.zip build/org.eclipse.cdt.managedbuilder.core.tests/resources/oldTypeProjects/2.0/test20.zip build/org.eclipse.cdt.managedbuilder.core.tests/resources/oldTypeProjects/2.1/test21.zip build/org.eclipse.cdt.managedbuilder.core.tests/resources/oldTypeProjects/2.1CPP/Test21CXX.zip build/org.eclipse.cdt.managedbuilder.core.tests/resources/test21Projects/linkedFolder/Benchmarks/makefile build/org.eclipse.cdt.managedbuilder.core.tests/resources/test21Projects/linkedFolder/Benchmarks/objects.mk build/org.eclipse.cdt.managedbuilder.core.tests/resources/test21Projects/linkedFolder/Benchmarks/sources.mk build/org.eclipse.cdt.managedbuilder.core.tests/resources/test21Projects/linkedFolder/Benchmarks/subdir.mk build/org.eclipse.cdt.managedbuilder.core.tests/resources/test21Projects/linkedFolder/f1.c build/org.eclipse.cdt.managedbuilder.core.tests/resources/test21Projects/linkedFolder/f2.c build/org.eclipse.cdt.managedbuilder.core.tests/resources/test21Projects/linkedFolder/test_ar.h build/org.eclipse.cdt.managedbuilder.core.tests/resources/test21Projects/linkedLib/f1.c build/org.eclipse.cdt.managedbuilder.core.tests/resources/test21Projects/linkedLib/f2.c build/org.eclipse.cdt.managedbuilder.core.tests/resources/test21Projects/linkedLib/linkedLib.zip build/org.eclipse.cdt.managedbuilder.core.tests/resources/test21Projects/linkedLib/test_ar.h build/org.eclipse.cdt.managedbuilder.core.tests/resources/test21Projects/multiResConfig/testResCfg.zip build/org.eclipse.cdt.managedbuilder.core.tests/resources/test21Projects/singleFileExe/testSingleExe.zip build/org.eclipse.cdt.managedbuilder.core.tests/resources/test21Projects/twoFileSO/testDoubleSO.zip build/org.eclipse.cdt.managedbuilder.core.tests/resources/test30Projects/CDTFortranTest1/CDTFortranTest1.zip build/org.eclipse.cdt.managedbuilder.core.tests/resources/test30Projects/CDTFortranTest2/CDTFortranTest2.zip build/org.eclipse.cdt.managedbuilder.core.tests/resources/test30Projects/TestATO/TestATO.zip build/org.eclipse.cdt.managedbuilder.core.tests/resources/test30Projects/copyandDeploy/copyandDeploy.zip build/org.eclipse.cdt.managedbuilder.core.tests/resources/test30Projects/deleteFile/deleteFile.zip build/org.eclipse.cdt.managedbuilder.core.tests/resources/test30Projects/inputTypeOption/inputTypeOption.zip build/org.eclipse.cdt.managedbuilder.core.tests/resources/test30Projects/linkedFolder/Benchmarks/makefile build/org.eclipse.cdt.managedbuilder.core.tests/resources/test30Projects/linkedFolder/Benchmarks/objects.mk build/org.eclipse.cdt.managedbuilder.core.tests/resources/test30Projects/linkedFolder/Benchmarks/sources.mk build/org.eclipse.cdt.managedbuilder.core.tests/resources/test30Projects/linkedFolder/Benchmarks/subdir.mk build/org.eclipse.cdt.managedbuilder.core.tests/resources/test30Projects/linkedFolder/f1.c build/org.eclipse.cdt.managedbuilder.core.tests/resources/test30Projects/linkedFolder/f2.c build/org.eclipse.cdt.managedbuilder.core.tests/resources/test30Projects/linkedFolder/test_ar.h build/org.eclipse.cdt.managedbuilder.core.tests/resources/test30Projects/linkedLib30/f1_30.c build/org.eclipse.cdt.managedbuilder.core.tests/resources/test30Projects/linkedLib30/f2_30.c build/org.eclipse.cdt.managedbuilder.core.tests/resources/test30Projects/linkedLib30/linkedLib30.zip build/org.eclipse.cdt.managedbuilder.core.tests/resources/test30Projects/linkedLib30/test_ar_30.h build/org.eclipse.cdt.managedbuilder.core.tests/resources/test30Projects/multiResConfig/multiResConfig.zip build/org.eclipse.cdt.managedbuilder.core.tests/resources/test30Projects/noFilesToBuild/noFilesToBuild.zip build/org.eclipse.cdt.managedbuilder.core.tests/resources/test30Projects/preAndPostBuildSteps/preAndPostBuildSteps.zip build/org.eclipse.cdt.managedbuilder.core.tests/resources/test30Projects/rcbsBasicTest/rcbsBasicTest.zip build/org.eclipse.cdt.managedbuilder.core.tests/resources/test30Projects/singleFileExe/singleFileExe.zip build/org.eclipse.cdt.managedbuilder.core.tests/resources/test30Projects/test with spaces/test with spaces.zip build/org.eclipse.cdt.managedbuilder.core.tests/resources/test30Projects/test30_1/test30_1.zip build/org.eclipse.cdt.managedbuilder.core.tests/resources/test30Projects/test30_2/test30_2.zip build/org.eclipse.cdt.managedbuilder.core.tests/resources/test30Projects/testFileWithNoExtension/testFileWithNoExtension.zip build/org.eclipse.cdt.managedbuilder.core.tests/resources/test30Projects/testMacroSupportInBuildDefinitions/testMacroSupportInBuildDefinitions.zip build/org.eclipse.cdt.managedbuilder.core.tests/resources/test30Projects/twoFileSO/twoFileSO.zip build/org.eclipse.cdt.managedbuilder.core.tests/resources/testBuildDescriptionProjects/test30_1/test30_1.zip build/org.eclipse.cdt.managedbuilder.core.tests/resources/toolChainConversionProjects/test20/Test20.zip build/org.eclipse.cdt.managedbuilder.core.tests/resources/toolChainConversionProjects/test21/Test21.zip build/org.eclipse.cdt.managedbuilder.core.tests/resources/toolChainConversionProjects/testProjectConversion/testProjectConversion.zip build/org.eclipse.cdt.managedbuilder.core.tests/suite/org/eclipse/cdt/managedbuilder/testplugin/CTestPlugin.java build/org.eclipse.cdt.managedbuilder.core.tests/suite/org/eclipse/cdt/managedbuilder/testplugin/ManagedBuildTestHelper.java build/org.eclipse.cdt.managedbuilder.core.tests/suite/org/eclipse/cdt/managedbuilder/tests/suite/AllManagedBuildTests.java build/org.eclipse.cdt.managedbuilder.core.tests/tests/org/eclipse/cdt/managedbuilder/core/tests/AlwaysOffApplicabilityCalculator.java build/org.eclipse.cdt.managedbuilder.core.tests/tests/org/eclipse/cdt/managedbuilder/core/tests/AlwaysOnApplicabilityCalculator.java build/org.eclipse.cdt.managedbuilder.core.tests/tests/org/eclipse/cdt/managedbuilder/core/tests/BuildDescriptionModelTests.java build/org.eclipse.cdt.managedbuilder.core.tests/tests/org/eclipse/cdt/managedbuilder/core/tests/BuildFileGenerator.java build/org.eclipse.cdt.managedbuilder.core.tests/tests/org/eclipse/cdt/managedbuilder/core/tests/CmdLineApplicabilityCalculator.java build/org.eclipse.cdt.managedbuilder.core.tests/tests/org/eclipse/cdt/managedbuilder/core/tests/DefaultFortranDependencyCalculator.java build/org.eclipse.cdt.managedbuilder.core.tests/tests/org/eclipse/cdt/managedbuilder/core/tests/ManagedBuildCommandLineGenerator.java build/org.eclipse.cdt.managedbuilder.core.tests/tests/org/eclipse/cdt/managedbuilder/core/tests/ManagedBuildCommandLineInfo.java build/org.eclipse.cdt.managedbuilder.core.tests/tests/org/eclipse/cdt/managedbuilder/core/tests/ManagedBuildCoreTests.java build/org.eclipse.cdt.managedbuilder.core.tests/tests/org/eclipse/cdt/managedbuilder/core/tests/ManagedBuildCoreTests20.java build/org.eclipse.cdt.managedbuilder.core.tests/tests/org/eclipse/cdt/managedbuilder/core/tests/ManagedBuildCoreTests_SharedToolOptions.java build/org.eclipse.cdt.managedbuilder.core.tests/tests/org/eclipse/cdt/managedbuilder/core/tests/ManagedBuildDependencyCalculatorTests.java build/org.eclipse.cdt.managedbuilder.core.tests/tests/org/eclipse/cdt/managedbuilder/core/tests/ManagedBuildEnvironmentTests.java build/org.eclipse.cdt.managedbuilder.core.tests/tests/org/eclipse/cdt/managedbuilder/core/tests/ManagedBuildMacrosTests.java build/org.eclipse.cdt.managedbuilder.core.tests/tests/org/eclipse/cdt/managedbuilder/core/tests/ManagedBuildTCSupportedTest.java build/org.eclipse.cdt.managedbuilder.core.tests/tests/org/eclipse/cdt/managedbuilder/core/tests/ManagedCommandLineGeneratorTest.java build/org.eclipse.cdt.managedbuilder.core.tests/tests/org/eclipse/cdt/managedbuilder/core/tests/ManagedProject21MakefileTests.java build/org.eclipse.cdt.managedbuilder.core.tests/tests/org/eclipse/cdt/managedbuilder/core/tests/ManagedProject30MakefileTests.java build/org.eclipse.cdt.managedbuilder.core.tests/tests/org/eclipse/cdt/managedbuilder/core/tests/ManagedProjectUpdateTests.java build/org.eclipse.cdt.managedbuilder.core.tests/tests/org/eclipse/cdt/managedbuilder/core/tests/MultiVersionSupportTests.java build/org.eclipse.cdt.managedbuilder.core.tests/tests/org/eclipse/cdt/managedbuilder/core/tests/OptionEnablementTests.java build/org.eclipse.cdt.managedbuilder.core.tests/tests/org/eclipse/cdt/managedbuilder/core/tests/PathConverterTest.java build/org.eclipse.cdt.managedbuilder.core.tests/tests/org/eclipse/cdt/managedbuilder/core/tests/ProjectConverter.java build/org.eclipse.cdt.managedbuilder.core.tests/tests/org/eclipse/cdt/managedbuilder/core/tests/ProjectConverter20.java build/org.eclipse.cdt.managedbuilder.core.tests/tests/org/eclipse/cdt/managedbuilder/core/tests/ProjectConverter21.java build/org.eclipse.cdt.managedbuilder.core.tests/tests/org/eclipse/cdt/managedbuilder/core/tests/ResourceBuildCoreTests.java build/org.eclipse.cdt.managedbuilder.core.tests/tests/org/eclipse/cdt/managedbuilder/core/tests/Test30_2_CommandLineGenerator.java build/org.eclipse.cdt.managedbuilder.core.tests/tests/org/eclipse/cdt/managedbuilder/core/tests/TestConfigElement.java build/org.eclipse.cdt.managedbuilder.core.tests/tests/org/eclipse/cdt/managedbuilder/core/tests/TestConfigurationNameProvider.java build/org.eclipse.cdt.managedbuilder.core.tests/tests/org/eclipse/cdt/managedbuilder/core/tests/TestLinkerNameProvider.java build/org.eclipse.cdt.managedbuilder.core.tests/tests/org/eclipse/cdt/managedbuilder/core/tests/TestMacro.java build/org.eclipse.cdt.managedbuilder.core.tests/tests/org/eclipse/cdt/managedbuilder/core/tests/TestManagedConfigProvider.java build/org.eclipse.cdt.managedbuilder.core.tests/tests/org/eclipse/cdt/managedbuilder/core/tests/TestPathConverter1.java build/org.eclipse.cdt.managedbuilder.core.tests/tests/org/eclipse/cdt/managedbuilder/core/tests/TestPathConverter2.java build/org.eclipse.cdt.managedbuilder.core.tests/tests/org/eclipse/cdt/managedbuilder/core/tests/TestPathConverter3.java build/org.eclipse.cdt.managedbuilder.core.tests/tests/org/eclipse/cdt/managedbuilder/core/tests/TestPathConverter4.java build/org.eclipse.cdt.managedbuilder.core.tests/tests/org/eclipse/cdt/managedbuilder/core/tests/TestProjectConverter.java build/org.eclipse.cdt.managedbuilder.core.tests/tests/org/eclipse/cdt/managedbuilder/core/tests/TestValueHandler.java build/org.eclipse.cdt.managedbuilder.core.tests/tests/org/eclipse/cdt/managedbuilder/core/tests/test_commands build/org.eclipse.cdt.managedbuilder.core.tests/tests/org/eclipse/cdt/projectmodel/tests/ProjectModelTests.java build/org.eclipse.cdt.managedbuilder.core/.classpath build/org.eclipse.cdt.managedbuilder.core/.cvsignore build/org.eclipse.cdt.managedbuilder.core/.options build/org.eclipse.cdt.managedbuilder.core/.project build/org.eclipse.cdt.managedbuilder.core/ChangeLog build/org.eclipse.cdt.managedbuilder.core/META-INF/MANIFEST.MF build/org.eclipse.cdt.managedbuilder.core/about.html build/org.eclipse.cdt.managedbuilder.core/build.properties build/org.eclipse.cdt.managedbuilder.core/plugin.properties build/org.eclipse.cdt.managedbuilder.core/plugin.xml build/org.eclipse.cdt.managedbuilder.core/schema/Converter.exsd build/org.eclipse.cdt.managedbuilder.core/schema/ManagedBuildTools.exsd build/org.eclipse.cdt.managedbuilder.core/schema/ScannerConfigurationDiscoveryProfile.exsd build/org.eclipse.cdt.managedbuilder.core/schema/buildDefinitions.exsd build/org.eclipse.cdt.managedbuilder.core/schema/buildProperties.exsd build/org.eclipse.cdt.managedbuilder.core/src/org/eclipse/cdt/make/core/scannerconfig/DiscoveredScannerInfo.java build/org.eclipse.cdt.managedbuilder.core/src/org/eclipse/cdt/make/core/scannerconfig/DiscoveredScannerInfoProvider.java build/org.eclipse.cdt.managedbuilder.core/src/org/eclipse/cdt/make/core/scannerconfig/IConfigurationScannerConfigBuilderInfo.java build/org.eclipse.cdt.managedbuilder.core/src/org/eclipse/cdt/make/core/scannerconfig/IDiscoveredPathManager.java build/org.eclipse.cdt.managedbuilder.core/src/org/eclipse/cdt/make/core/scannerconfig/IExternalScannerInfoProvider.java build/org.eclipse.cdt.managedbuilder.core/src/org/eclipse/cdt/make/core/scannerconfig/IScannerConfigBuilderInfo.java build/org.eclipse.cdt.managedbuilder.core/src/org/eclipse/cdt/make/core/scannerconfig/IScannerConfigBuilderInfo2.java build/org.eclipse.cdt.managedbuilder.core/src/org/eclipse/cdt/make/core/scannerconfig/IScannerInfoCollector.java build/org.eclipse.cdt.managedbuilder.core/src/org/eclipse/cdt/make/core/scannerconfig/IScannerInfoCollector2.java build/org.eclipse.cdt.managedbuilder.core/src/org/eclipse/cdt/make/core/scannerconfig/IScannerInfoCollector3.java build/org.eclipse.cdt.managedbuilder.core/src/org/eclipse/cdt/make/core/scannerconfig/IScannerInfoCollectorCleaner.java build/org.eclipse.cdt.managedbuilder.core/src/org/eclipse/cdt/make/core/scannerconfig/IScannerInfoConsoleParser.java build/org.eclipse.cdt.managedbuilder.core/src/org/eclipse/cdt/make/core/scannerconfig/InfoContext.java build/org.eclipse.cdt.managedbuilder.core/src/org/eclipse/cdt/make/core/scannerconfig/ScannerConfigBuilder.java build/org.eclipse.cdt.managedbuilder.core/src/org/eclipse/cdt/make/core/scannerconfig/ScannerConfigNature.java build/org.eclipse.cdt.managedbuilder.core/src/org/eclipse/cdt/make/core/scannerconfig/ScannerConfigScope.java build/org.eclipse.cdt.managedbuilder.core/src/org/eclipse/cdt/make/core/scannerconfig/ScannerInfoTypes.java build/org.eclipse.cdt.managedbuilder.core/src/org/eclipse/cdt/make/internal/core/scannerconfig/DiscoveredPathContainer.java build/org.eclipse.cdt.managedbuilder.core/src/org/eclipse/cdt/make/internal/core/scannerconfig/DiscoveredPathInfo.java build/org.eclipse.cdt.managedbuilder.core/src/org/eclipse/cdt/make/internal/core/scannerconfig/DiscoveredPathInitializer.java build/org.eclipse.cdt.managedbuilder.core/src/org/eclipse/cdt/make/internal/core/scannerconfig/DiscoveredPathManager.java build/org.eclipse.cdt.managedbuilder.core/src/org/eclipse/cdt/make/internal/core/scannerconfig/DiscoveredScannerInfoStore.java build/org.eclipse.cdt.managedbuilder.core/src/org/eclipse/cdt/make/internal/core/scannerconfig/PerFileDiscoveredPathContainer.java build/org.eclipse.cdt.managedbuilder.core/src/org/eclipse/cdt/make/internal/core/scannerconfig/PerFileDiscoveredPathInfo.java build/org.eclipse.cdt.managedbuilder.core/src/org/eclipse/cdt/make/internal/core/scannerconfig/ScannerConfigInfoFactory.java build/org.eclipse.cdt.managedbuilder.core/src/org/eclipse/cdt/make/internal/core/scannerconfig/ScannerConfigUtil.java build/org.eclipse.cdt.managedbuilder.core/src/org/eclipse/cdt/make/internal/core/scannerconfig/ScannerInfoConsoleParserFactory.java build/org.eclipse.cdt.managedbuilder.core/src/org/eclipse/cdt/make/internal/core/scannerconfig/gnu/AbstractGCCBOPConsoleParser.java build/org.eclipse.cdt.managedbuilder.core/src/org/eclipse/cdt/make/internal/core/scannerconfig/gnu/AbstractGCCBOPConsoleParserUtility.java build/org.eclipse.cdt.managedbuilder.core/src/org/eclipse/cdt/make/internal/core/scannerconfig/gnu/GCCPerFileBOPConsoleParser.java build/org.eclipse.cdt.managedbuilder.core/src/org/eclipse/cdt/make/internal/core/scannerconfig/gnu/GCCPerFileBOPConsoleParserUtility.java build/org.eclipse.cdt.managedbuilder.core/src/org/eclipse/cdt/make/internal/core/scannerconfig/gnu/GCCPerFileSIPConsoleParser.java build/org.eclipse.cdt.managedbuilder.core/src/org/eclipse/cdt/make/internal/core/scannerconfig/gnu/GCCScannerConfigUtil.java build/org.eclipse.cdt.managedbuilder.core/src/org/eclipse/cdt/make/internal/core/scannerconfig/gnu/GCCScannerInfoConsoleParser.java build/org.eclipse.cdt.managedbuilder.core/src/org/eclipse/cdt/make/internal/core/scannerconfig/gnu/GCCSpecsConsoleParser.java build/org.eclipse.cdt.managedbuilder.core/src/org/eclipse/cdt/make/internal/core/scannerconfig/gnu/ScannerInfoConsoleParserUtility.java build/org.eclipse.cdt.managedbuilder.core/src/org/eclipse/cdt/make/internal/core/scannerconfig/jobs/BuildOutputReaderJob.java build/org.eclipse.cdt.managedbuilder.core/src/org/eclipse/cdt/make/internal/core/scannerconfig/jobs/SCJobsUtil.java build/org.eclipse.cdt.managedbuilder.core/src/org/eclipse/cdt/make/internal/core/scannerconfig/util/CCommandDSC.java build/org.eclipse.cdt.managedbuilder.core/src/org/eclipse/cdt/make/internal/core/scannerconfig/util/CygpathTranslator.java build/org.eclipse.cdt.managedbuilder.core/src/org/eclipse/cdt/make/internal/core/scannerconfig/util/KVList.java build/org.eclipse.cdt.managedbuilder.core/src/org/eclipse/cdt/make/internal/core/scannerconfig/util/KVStringPair.java build/org.eclipse.cdt.managedbuilder.core/src/org/eclipse/cdt/make/internal/core/scannerconfig/util/LogWriter.java build/org.eclipse.cdt.managedbuilder.core/src/org/eclipse/cdt/make/internal/core/scannerconfig/util/SCDOptionsEnum.java build/org.eclipse.cdt.managedbuilder.core/src/org/eclipse/cdt/make/internal/core/scannerconfig/util/SymbolEntry.java build/org.eclipse.cdt.managedbuilder.core/src/org/eclipse/cdt/make/internal/core/scannerconfig/util/TraceUtil.java build/org.eclipse.cdt.managedbuilder.core/src/org/eclipse/cdt/make/internal/core/scannerconfig2/DefaultRunSIProvider.java build/org.eclipse.cdt.managedbuilder.core/src/org/eclipse/cdt/make/internal/core/scannerconfig2/DefaultSIFileReader.java build/org.eclipse.cdt.managedbuilder.core/src/org/eclipse/cdt/make/internal/core/scannerconfig2/GCCSpecsRunSIProvider.java build/org.eclipse.cdt.managedbuilder.core/src/org/eclipse/cdt/make/internal/core/scannerconfig2/PerFileSICollector.java build/org.eclipse.cdt.managedbuilder.core/src/org/eclipse/cdt/make/internal/core/scannerconfig2/PerProjectSICollector.java build/org.eclipse.cdt.managedbuilder.core/src/org/eclipse/cdt/make/internal/core/scannerconfig2/SCDMakefileGenerator.java build/org.eclipse.cdt.managedbuilder.core/src/org/eclipse/cdt/make/internal/core/scannerconfig2/SCMarkerGenerator.java build/org.eclipse.cdt.managedbuilder.core/src/org/eclipse/cdt/make/internal/core/scannerconfig2/SCProfileInstance.java build/org.eclipse.cdt.managedbuilder.core/src/org/eclipse/cdt/make/internal/core/scannerconfig2/ScannerConfigInfoFactory2.java build/org.eclipse.cdt.managedbuilder.core/src/org/eclipse/cdt/make/internal/core/scannerconfig2/ScannerConfigProfile.java build/org.eclipse.cdt.managedbuilder.core/src/org/eclipse/cdt/make/internal/core/scannerconfig2/ScannerConfigProfileManager.java build/org.eclipse.cdt.managedbuilder.core/src/org/eclipse/cdt/managedbuilder/buildmodel/BuildDescriptionManager.java build/org.eclipse.cdt.managedbuilder.core/src/org/eclipse/cdt/managedbuilder/buildmodel/IBuildCommand.java build/org.eclipse.cdt.managedbuilder.core/src/org/eclipse/cdt/managedbuilder/buildmodel/IBuildDescription.java build/org.eclipse.cdt.managedbuilder.core/src/org/eclipse/cdt/managedbuilder/buildmodel/IBuildDescriptionFactory.java build/org.eclipse.cdt.managedbuilder.core/src/org/eclipse/cdt/managedbuilder/buildmodel/IBuildIOType.java build/org.eclipse.cdt.managedbuilder.core/src/org/eclipse/cdt/managedbuilder/buildmodel/IBuildResource.java build/org.eclipse.cdt.managedbuilder.core/src/org/eclipse/cdt/managedbuilder/buildmodel/IBuildStep.java build/org.eclipse.cdt.managedbuilder.core/src/org/eclipse/cdt/managedbuilder/buildmodel/IStepVisitor.java build/org.eclipse.cdt.managedbuilder.core/src/org/eclipse/cdt/managedbuilder/buildproperties/IBuildProperties.java build/org.eclipse.cdt.managedbuilder.core/src/org/eclipse/cdt/managedbuilder/buildproperties/IBuildProperty.java build/org.eclipse.cdt.managedbuilder.core/src/org/eclipse/cdt/managedbuilder/buildproperties/IBuildPropertyManager.java build/org.eclipse.cdt.managedbuilder.core/src/org/eclipse/cdt/managedbuilder/buildproperties/IBuildPropertyType.java build/org.eclipse.cdt.managedbuilder.core/src/org/eclipse/cdt/managedbuilder/buildproperties/IBuildPropertyValue.java build/org.eclipse.cdt.managedbuilder.core/src/org/eclipse/cdt/managedbuilder/buildproperties/IPropertyBase.java build/org.eclipse.cdt.managedbuilder.core/src/org/eclipse/cdt/managedbuilder/core/BuildException.java build/org.eclipse.cdt.managedbuilder.core/src/org/eclipse/cdt/managedbuilder/core/IAdditionalInput.java build/org.eclipse.cdt.managedbuilder.core/src/org/eclipse/cdt/managedbuilder/core/IBuildObject.java build/org.eclipse.cdt.managedbuilder.core/src/org/eclipse/cdt/managedbuilder/core/IBuildObjectProperties.java build/org.eclipse.cdt.managedbuilder.core/src/org/eclipse/cdt/managedbuilder/core/IBuildObjectPropertiesContainer.java build/org.eclipse.cdt.managedbuilder.core/src/org/eclipse/cdt/managedbuilder/core/IBuildPathResolver.java build/org.eclipse.cdt.managedbuilder.core/src/org/eclipse/cdt/managedbuilder/core/IBuildPropertiesRestriction.java build/org.eclipse.cdt.managedbuilder.core/src/org/eclipse/cdt/managedbuilder/core/IBuilder.java build/org.eclipse.cdt.managedbuilder.core/src/org/eclipse/cdt/managedbuilder/core/IConfiguration.java build/org.eclipse.cdt.managedbuilder.core/src/org/eclipse/cdt/managedbuilder/core/IConfigurationNameProvider.java build/org.eclipse.cdt.managedbuilder.core/src/org/eclipse/cdt/managedbuilder/core/IConfigurationV2.java build/org.eclipse.cdt.managedbuilder.core/src/org/eclipse/cdt/managedbuilder/core/IConvertManagedBuildObject.java build/org.eclipse.cdt.managedbuilder.core/src/org/eclipse/cdt/managedbuilder/core/IEnvVarBuildPath.java build/org.eclipse.cdt.managedbuilder.core/src/org/eclipse/cdt/managedbuilder/core/IFileInfo.java build/org.eclipse.cdt.managedbuilder.core/src/org/eclipse/cdt/managedbuilder/core/IFolderInfo.java build/org.eclipse.cdt.managedbuilder.core/src/org/eclipse/cdt/managedbuilder/core/IHoldsOptions.java build/org.eclipse.cdt.managedbuilder.core/src/org/eclipse/cdt/managedbuilder/core/IInputOrder.java build/org.eclipse.cdt.managedbuilder.core/src/org/eclipse/cdt/managedbuilder/core/IInputType.java build/org.eclipse.cdt.managedbuilder.core/src/org/eclipse/cdt/managedbuilder/core/ILanguageInfoCalculator.java build/org.eclipse.cdt.managedbuilder.core/src/org/eclipse/cdt/managedbuilder/core/IManagedBuildDefinitionsStartup.java build/org.eclipse.cdt.managedbuilder.core/src/org/eclipse/cdt/managedbuilder/core/IManagedBuildInfo.java build/org.eclipse.cdt.managedbuilder.core/src/org/eclipse/cdt/managedbuilder/core/IManagedCommandLineGenerator.java build/org.eclipse.cdt.managedbuilder.core/src/org/eclipse/cdt/managedbuilder/core/IManagedCommandLineInfo.java build/org.eclipse.cdt.managedbuilder.core/src/org/eclipse/cdt/managedbuilder/core/IManagedConfigElement.java build/org.eclipse.cdt.managedbuilder.core/src/org/eclipse/cdt/managedbuilder/core/IManagedConfigElementProvider.java build/org.eclipse.cdt.managedbuilder.core/src/org/eclipse/cdt/managedbuilder/core/IManagedIsToolChainSupported.java build/org.eclipse.cdt.managedbuilder.core/src/org/eclipse/cdt/managedbuilder/core/IManagedOptionValueHandler.java build/org.eclipse.cdt.managedbuilder.core/src/org/eclipse/cdt/managedbuilder/core/IManagedOutputNameProvider.java build/org.eclipse.cdt.managedbuilder.core/src/org/eclipse/cdt/managedbuilder/core/IManagedProject.java build/org.eclipse.cdt.managedbuilder.core/src/org/eclipse/cdt/managedbuilder/core/IModificationStatus.java build/org.eclipse.cdt.managedbuilder.core/src/org/eclipse/cdt/managedbuilder/core/IOption.java build/org.eclipse.cdt.managedbuilder.core/src/org/eclipse/cdt/managedbuilder/core/IOptionApplicability.java build/org.eclipse.cdt.managedbuilder.core/src/org/eclipse/cdt/managedbuilder/core/IOptionCategory.java build/org.eclipse.cdt.managedbuilder.core/src/org/eclipse/cdt/managedbuilder/core/IOptionPathConverter.java build/org.eclipse.cdt.managedbuilder.core/src/org/eclipse/cdt/managedbuilder/core/IOutputType.java build/org.eclipse.cdt.managedbuilder.core/src/org/eclipse/cdt/managedbuilder/core/IProjectType.java build/org.eclipse.cdt.managedbuilder.core/src/org/eclipse/cdt/managedbuilder/core/IResourceConfiguration.java build/org.eclipse.cdt.managedbuilder.core/src/org/eclipse/cdt/managedbuilder/core/IResourceInfo.java build/org.eclipse.cdt.managedbuilder.core/src/org/eclipse/cdt/managedbuilder/core/ITarget.java build/org.eclipse.cdt.managedbuilder.core/src/org/eclipse/cdt/managedbuilder/core/ITargetPlatform.java build/org.eclipse.cdt.managedbuilder.core/src/org/eclipse/cdt/managedbuilder/core/ITool.java build/org.eclipse.cdt.managedbuilder.core/src/org/eclipse/cdt/managedbuilder/core/IToolChain.java build/org.eclipse.cdt.managedbuilder.core/src/org/eclipse/cdt/managedbuilder/core/IToolReference.java build/org.eclipse.cdt.managedbuilder.core/src/org/eclipse/cdt/managedbuilder/core/ManagedBuildManager.java build/org.eclipse.cdt.managedbuilder.core/src/org/eclipse/cdt/managedbuilder/core/ManagedBuilderCorePlugin.java build/org.eclipse.cdt.managedbuilder.core/src/org/eclipse/cdt/managedbuilder/core/ManagedCProjectNature.java build/org.eclipse.cdt.managedbuilder.core/src/org/eclipse/cdt/managedbuilder/core/ManagedOptionValueHandler.java build/org.eclipse.cdt.managedbuilder.core/src/org/eclipse/cdt/managedbuilder/envvar/IBuildEnvironmentVariable.java build/org.eclipse.cdt.managedbuilder.core/src/org/eclipse/cdt/managedbuilder/envvar/IConfigurationEnvironmentVariableSupplier.java build/org.eclipse.cdt.managedbuilder.core/src/org/eclipse/cdt/managedbuilder/envvar/IEnvironmentBuildPathsChangeListener.java build/org.eclipse.cdt.managedbuilder.core/src/org/eclipse/cdt/managedbuilder/envvar/IEnvironmentVariableProvider.java build/org.eclipse.cdt.managedbuilder.core/src/org/eclipse/cdt/managedbuilder/envvar/IEnvironmentVariableSupplier.java build/org.eclipse.cdt.managedbuilder.core/src/org/eclipse/cdt/managedbuilder/envvar/IProjectEnvironmentVariableSupplier.java build/org.eclipse.cdt.managedbuilder.core/src/org/eclipse/cdt/managedbuilder/internal/buildmodel/BuildCommand.java build/org.eclipse.cdt.managedbuilder.core/src/org/eclipse/cdt/managedbuilder/internal/buildmodel/BuildDescription.java build/org.eclipse.cdt.managedbuilder.core/src/org/eclipse/cdt/managedbuilder/internal/buildmodel/BuildGroup.java build/org.eclipse.cdt.managedbuilder.core/src/org/eclipse/cdt/managedbuilder/internal/buildmodel/BuildIOType.java build/org.eclipse.cdt.managedbuilder.core/src/org/eclipse/cdt/managedbuilder/internal/buildmodel/BuildMultiStatus.java build/org.eclipse.cdt.managedbuilder.core/src/org/eclipse/cdt/managedbuilder/internal/buildmodel/BuildProcessManager.java build/org.eclipse.cdt.managedbuilder.core/src/org/eclipse/cdt/managedbuilder/internal/buildmodel/BuildResource.java build/org.eclipse.cdt.managedbuilder.core/src/org/eclipse/cdt/managedbuilder/internal/buildmodel/BuildStatus.java build/org.eclipse.cdt.managedbuilder.core/src/org/eclipse/cdt/managedbuilder/internal/buildmodel/BuildStep.java build/org.eclipse.cdt.managedbuilder.core/src/org/eclipse/cdt/managedbuilder/internal/buildmodel/CommandBuilder.java build/org.eclipse.cdt.managedbuilder.core/src/org/eclipse/cdt/managedbuilder/internal/buildmodel/DbgUtil.java build/org.eclipse.cdt.managedbuilder.core/src/org/eclipse/cdt/managedbuilder/internal/buildmodel/DefaultBuildDescriptionFactory.java build/org.eclipse.cdt.managedbuilder.core/src/org/eclipse/cdt/managedbuilder/internal/buildmodel/DescriptionBuilder.java build/org.eclipse.cdt.managedbuilder.core/src/org/eclipse/cdt/managedbuilder/internal/buildmodel/FileMacroExplicitSubstitutor.java build/org.eclipse.cdt.managedbuilder.core/src/org/eclipse/cdt/managedbuilder/internal/buildmodel/GenDirInfo.java build/org.eclipse.cdt.managedbuilder.core/src/org/eclipse/cdt/managedbuilder/internal/buildmodel/IBuildModelBuilder.java build/org.eclipse.cdt.managedbuilder.core/src/org/eclipse/cdt/managedbuilder/internal/buildmodel/ParallelBuilder.java build/org.eclipse.cdt.managedbuilder.core/src/org/eclipse/cdt/managedbuilder/internal/buildmodel/ProcessLauncher.java build/org.eclipse.cdt.managedbuilder.core/src/org/eclipse/cdt/managedbuilder/internal/buildmodel/StepBuilder.java build/org.eclipse.cdt.managedbuilder.core/src/org/eclipse/cdt/managedbuilder/internal/buildproperties/BuildProperties.java build/org.eclipse.cdt.managedbuilder.core/src/org/eclipse/cdt/managedbuilder/internal/buildproperties/BuildProperty.java build/org.eclipse.cdt.managedbuilder.core/src/org/eclipse/cdt/managedbuilder/internal/buildproperties/BuildPropertyManager.java build/org.eclipse.cdt.managedbuilder.core/src/org/eclipse/cdt/managedbuilder/internal/buildproperties/BuildPropertyType.java build/org.eclipse.cdt.managedbuilder.core/src/org/eclipse/cdt/managedbuilder/internal/buildproperties/BuildPropertyValue.java build/org.eclipse.cdt.managedbuilder.core/src/org/eclipse/cdt/managedbuilder/internal/buildproperties/PropertyBase.java build/org.eclipse.cdt.managedbuilder.core/src/org/eclipse/cdt/managedbuilder/internal/core/AdditionalInput.java build/org.eclipse.cdt.managedbuilder.core/src/org/eclipse/cdt/managedbuilder/internal/core/BooleanExpressionApplicabilityCalculator.java build/org.eclipse.cdt.managedbuilder.core/src/org/eclipse/cdt/managedbuilder/internal/core/BuildObject.java build/org.eclipse.cdt.managedbuilder.core/src/org/eclipse/cdt/managedbuilder/internal/core/BuildObjectProperties.java build/org.eclipse.cdt.managedbuilder.core/src/org/eclipse/cdt/managedbuilder/internal/core/BuildSettingsUtil.java build/org.eclipse.cdt.managedbuilder.core/src/org/eclipse/cdt/managedbuilder/internal/core/Builder.java build/org.eclipse.cdt.managedbuilder.core/src/org/eclipse/cdt/managedbuilder/internal/core/BuilderFactory.java build/org.eclipse.cdt.managedbuilder.core/src/org/eclipse/cdt/managedbuilder/internal/core/CommonBuilder.java build/org.eclipse.cdt.managedbuilder.core/src/org/eclipse/cdt/managedbuilder/internal/core/Configuration.java build/org.eclipse.cdt.managedbuilder.core/src/org/eclipse/cdt/managedbuilder/internal/core/ConfigurationNameProvider.java build/org.eclipse.cdt.managedbuilder.core/src/org/eclipse/cdt/managedbuilder/internal/core/ConfigurationV2.java build/org.eclipse.cdt.managedbuilder.core/src/org/eclipse/cdt/managedbuilder/internal/core/ConverterInfo.java build/org.eclipse.cdt.managedbuilder.core/src/org/eclipse/cdt/managedbuilder/internal/core/DefaultManagedConfigElement.java build/org.eclipse.cdt.managedbuilder.core/src/org/eclipse/cdt/managedbuilder/internal/core/EnvVarBuildPath.java build/org.eclipse.cdt.managedbuilder.core/src/org/eclipse/cdt/managedbuilder/internal/core/FolderInfo.java build/org.eclipse.cdt.managedbuilder.core/src/org/eclipse/cdt/managedbuilder/internal/core/GeneratedMakefileBuilder.java build/org.eclipse.cdt.managedbuilder.core/src/org/eclipse/cdt/managedbuilder/internal/core/GnuConfigurationNameProvider.java build/org.eclipse.cdt.managedbuilder.core/src/org/eclipse/cdt/managedbuilder/internal/core/HoldsOptions.java build/org.eclipse.cdt.managedbuilder.core/src/org/eclipse/cdt/managedbuilder/internal/core/IBuildPropertyChangeListener.java build/org.eclipse.cdt.managedbuilder.core/src/org/eclipse/cdt/managedbuilder/internal/core/IMatchKeyProvider.java build/org.eclipse.cdt.managedbuilder.core/src/org/eclipse/cdt/managedbuilder/internal/core/ISettingsChangeListener.java build/org.eclipse.cdt.managedbuilder.core/src/org/eclipse/cdt/managedbuilder/internal/core/InputOrder.java build/org.eclipse.cdt.managedbuilder.core/src/org/eclipse/cdt/managedbuilder/internal/core/InputType.java build/org.eclipse.cdt.managedbuilder.core/src/org/eclipse/cdt/managedbuilder/internal/core/ManagedBuildInfo.java build/org.eclipse.cdt.managedbuilder.core/src/org/eclipse/cdt/managedbuilder/internal/core/ManagedCommandLineGenerator.java build/org.eclipse.cdt.managedbuilder.core/src/org/eclipse/cdt/managedbuilder/internal/core/ManagedCommandLineInfo.java build/org.eclipse.cdt.managedbuilder.core/src/org/eclipse/cdt/managedbuilder/internal/core/ManagedConfigStorageElement.java build/org.eclipse.cdt.managedbuilder.core/src/org/eclipse/cdt/managedbuilder/internal/core/ManagedMakeMessages.java build/org.eclipse.cdt.managedbuilder.core/src/org/eclipse/cdt/managedbuilder/internal/core/ManagedMakeProject.java build/org.eclipse.cdt.managedbuilder.core/src/org/eclipse/cdt/managedbuilder/internal/core/ManagedProject.java build/org.eclipse.cdt.managedbuilder.core/src/org/eclipse/cdt/managedbuilder/internal/core/MapStorageElement.java build/org.eclipse.cdt.managedbuilder.core/src/org/eclipse/cdt/managedbuilder/internal/core/ModificationStatus.java build/org.eclipse.cdt.managedbuilder.core/src/org/eclipse/cdt/managedbuilder/internal/core/NotificationManager.java build/org.eclipse.cdt.managedbuilder.core/src/org/eclipse/cdt/managedbuilder/internal/core/Option.java build/org.eclipse.cdt.managedbuilder.core/src/org/eclipse/cdt/managedbuilder/internal/core/OptionCategory.java build/org.eclipse.cdt.managedbuilder.core/src/org/eclipse/cdt/managedbuilder/internal/core/OptionReference.java build/org.eclipse.cdt.managedbuilder.core/src/org/eclipse/cdt/managedbuilder/internal/core/OutputType.java build/org.eclipse.cdt.managedbuilder.core/src/org/eclipse/cdt/managedbuilder/internal/core/PluginResources.properties build/org.eclipse.cdt.managedbuilder.core/src/org/eclipse/cdt/managedbuilder/internal/core/ProjectType.java build/org.eclipse.cdt.managedbuilder.core/src/org/eclipse/cdt/managedbuilder/internal/core/PropertyManager.java build/org.eclipse.cdt.managedbuilder.core/src/org/eclipse/cdt/managedbuilder/internal/core/ResourceChangeHandler.java build/org.eclipse.cdt.managedbuilder.core/src/org/eclipse/cdt/managedbuilder/internal/core/ResourceConfiguration.java build/org.eclipse.cdt.managedbuilder.core/src/org/eclipse/cdt/managedbuilder/internal/core/ResourceInfo.java build/org.eclipse.cdt.managedbuilder.core/src/org/eclipse/cdt/managedbuilder/internal/core/ResourceInfoContainer.java build/org.eclipse.cdt.managedbuilder.core/src/org/eclipse/cdt/managedbuilder/internal/core/SourcePath.java build/org.eclipse.cdt.managedbuilder.core/src/org/eclipse/cdt/managedbuilder/internal/core/SupportedProperties.java build/org.eclipse.cdt.managedbuilder.core/src/org/eclipse/cdt/managedbuilder/internal/core/Target.java build/org.eclipse.cdt.managedbuilder.core/src/org/eclipse/cdt/managedbuilder/internal/core/TargetPlatform.java build/org.eclipse.cdt.managedbuilder.core/src/org/eclipse/cdt/managedbuilder/internal/core/Tool.java build/org.eclipse.cdt.managedbuilder.core/src/org/eclipse/cdt/managedbuilder/internal/core/ToolChain.java build/org.eclipse.cdt.managedbuilder.core/src/org/eclipse/cdt/managedbuilder/internal/core/ToolReference.java build/org.eclipse.cdt.managedbuilder.core/src/org/eclipse/cdt/managedbuilder/internal/dataprovider/BuildBuildData.java build/org.eclipse.cdt.managedbuilder.core/src/org/eclipse/cdt/managedbuilder/internal/dataprovider/BuildConfigurationData.java build/org.eclipse.cdt.managedbuilder.core/src/org/eclipse/cdt/managedbuilder/internal/dataprovider/BuildEnvironmentContributor.java build/org.eclipse.cdt.managedbuilder.core/src/org/eclipse/cdt/managedbuilder/internal/dataprovider/BuildFileData.java build/org.eclipse.cdt.managedbuilder.core/src/org/eclipse/cdt/managedbuilder/internal/dataprovider/BuildFolderData.java build/org.eclipse.cdt.managedbuilder.core/src/org/eclipse/cdt/managedbuilder/internal/dataprovider/BuildLanguageData.java build/org.eclipse.cdt.managedbuilder.core/src/org/eclipse/cdt/managedbuilder/internal/dataprovider/BuildTargetPlatformData.java build/org.eclipse.cdt.managedbuilder.core/src/org/eclipse/cdt/managedbuilder/internal/dataprovider/BuildVariablesContributor.java build/org.eclipse.cdt.managedbuilder.core/src/org/eclipse/cdt/managedbuilder/internal/dataprovider/ConfigurationDataProvider.java build/org.eclipse.cdt.managedbuilder.core/src/org/eclipse/cdt/managedbuilder/internal/dataprovider/EntryInfo.java build/org.eclipse.cdt.managedbuilder.core/src/org/eclipse/cdt/managedbuilder/internal/dataprovider/EntryListMap.java build/org.eclipse.cdt.managedbuilder.core/src/org/eclipse/cdt/managedbuilder/internal/dataprovider/EntryStorage.java build/org.eclipse.cdt.managedbuilder.core/src/org/eclipse/cdt/managedbuilder/internal/dataprovider/ExternalExtensionMacroSupplier.java build/org.eclipse.cdt.managedbuilder.core/src/org/eclipse/cdt/managedbuilder/internal/dataprovider/ProfileInfoProvider.java build/org.eclipse.cdt.managedbuilder.core/src/org/eclipse/cdt/managedbuilder/internal/dataprovider/ProjectConverter.java build/org.eclipse.cdt.managedbuilder.core/src/org/eclipse/cdt/managedbuilder/internal/enablement/AdjustmentContext.java build/org.eclipse.cdt.managedbuilder.core/src/org/eclipse/cdt/managedbuilder/internal/enablement/AndExpression.java build/org.eclipse.cdt.managedbuilder.core/src/org/eclipse/cdt/managedbuilder/internal/enablement/CheckBuildPropertyExpression.java build/org.eclipse.cdt.managedbuilder.core/src/org/eclipse/cdt/managedbuilder/internal/enablement/CheckHolderExpression.java build/org.eclipse.cdt.managedbuilder.core/src/org/eclipse/cdt/managedbuilder/internal/enablement/CheckOptionExpression.java build/org.eclipse.cdt.managedbuilder.core/src/org/eclipse/cdt/managedbuilder/internal/enablement/CheckStringExpression.java build/org.eclipse.cdt.managedbuilder.core/src/org/eclipse/cdt/managedbuilder/internal/enablement/CompositeExpression.java build/org.eclipse.cdt.managedbuilder.core/src/org/eclipse/cdt/managedbuilder/internal/enablement/FalseExpression.java build/org.eclipse.cdt.managedbuilder.core/src/org/eclipse/cdt/managedbuilder/internal/enablement/IBooleanExpression.java build/org.eclipse.cdt.managedbuilder.core/src/org/eclipse/cdt/managedbuilder/internal/enablement/NotExpression.java build/org.eclipse.cdt.managedbuilder.core/src/org/eclipse/cdt/managedbuilder/internal/enablement/OptionEnablementExpression.java build/org.eclipse.cdt.managedbuilder.core/src/org/eclipse/cdt/managedbuilder/internal/enablement/OrExpression.java build/org.eclipse.cdt.managedbuilder.core/src/org/eclipse/cdt/managedbuilder/internal/envvar/BuildEnvVar.java build/org.eclipse.cdt.managedbuilder.core/src/org/eclipse/cdt/managedbuilder/internal/envvar/EnvironmentVariableProvider.java build/org.eclipse.cdt.managedbuilder.core/src/org/eclipse/cdt/managedbuilder/internal/envvar/ExternalExtensionEnvironmentSupplier.java build/org.eclipse.cdt.managedbuilder.core/src/org/eclipse/cdt/managedbuilder/internal/envvar/MbsEnvironmentSupplier.java build/org.eclipse.cdt.managedbuilder.core/src/org/eclipse/cdt/managedbuilder/internal/macros/BuildCdtVariablesSupplierBase.java build/org.eclipse.cdt.managedbuilder.core/src/org/eclipse/cdt/managedbuilder/internal/macros/BuildMacro.java build/org.eclipse.cdt.managedbuilder.core/src/org/eclipse/cdt/managedbuilder/internal/macros/BuildMacroProvider.java build/org.eclipse.cdt.managedbuilder.core/src/org/eclipse/cdt/managedbuilder/internal/macros/BuildMacroStatus.java build/org.eclipse.cdt.managedbuilder.core/src/org/eclipse/cdt/managedbuilder/internal/macros/BuildfileMacroSubstitutor.java build/org.eclipse.cdt.managedbuilder.core/src/org/eclipse/cdt/managedbuilder/internal/macros/CoreMacrosSupplier.java build/org.eclipse.cdt.managedbuilder.core/src/org/eclipse/cdt/managedbuilder/internal/macros/DefaultMacroContextInfo.java build/org.eclipse.cdt.managedbuilder.core/src/org/eclipse/cdt/managedbuilder/internal/macros/ExplicitFileMacroCollector.java build/org.eclipse.cdt.managedbuilder.core/src/org/eclipse/cdt/managedbuilder/internal/macros/FileContextBuildMacroValues.java build/org.eclipse.cdt.managedbuilder.core/src/org/eclipse/cdt/managedbuilder/internal/macros/FileContextData.java build/org.eclipse.cdt.managedbuilder.core/src/org/eclipse/cdt/managedbuilder/internal/macros/IMacroContextInfo.java build/org.eclipse.cdt.managedbuilder.core/src/org/eclipse/cdt/managedbuilder/internal/macros/IMacroContextInfoProvider.java build/org.eclipse.cdt.managedbuilder.core/src/org/eclipse/cdt/managedbuilder/internal/macros/MbsMacroSupplier.java build/org.eclipse.cdt.managedbuilder.core/src/org/eclipse/cdt/managedbuilder/internal/macros/OptionContextData.java build/org.eclipse.cdt.managedbuilder.core/src/org/eclipse/cdt/managedbuilder/internal/scannerconfig/DefaultGCCScannerInfoCollector.java build/org.eclipse.cdt.managedbuilder.core/src/org/eclipse/cdt/managedbuilder/internal/scannerconfig/DefaultGnuWinScannerInfoCollector.java build/org.eclipse.cdt.managedbuilder.core/src/org/eclipse/cdt/managedbuilder/internal/scannerconfig/ManagedBuildCPathEntryContainer.java build/org.eclipse.cdt.managedbuilder.core/src/org/eclipse/cdt/managedbuilder/internal/scannerconfig/ManagedBuildPathEntryContainerInitializer.java build/org.eclipse.cdt.managedbuilder.core/src/org/eclipse/cdt/managedbuilder/macros/BuildMacroException.java build/org.eclipse.cdt.managedbuilder.core/src/org/eclipse/cdt/managedbuilder/macros/IBuildMacro.java build/org.eclipse.cdt.managedbuilder.core/src/org/eclipse/cdt/managedbuilder/macros/IBuildMacroProvider.java build/org.eclipse.cdt.managedbuilder.core/src/org/eclipse/cdt/managedbuilder/macros/IBuildMacroStatus.java build/org.eclipse.cdt.managedbuilder.core/src/org/eclipse/cdt/managedbuilder/macros/IBuildMacroSupplier.java build/org.eclipse.cdt.managedbuilder.core/src/org/eclipse/cdt/managedbuilder/macros/IConfigurationBuildMacroSupplier.java build/org.eclipse.cdt.managedbuilder.core/src/org/eclipse/cdt/managedbuilder/macros/IFileContextBuildMacroValues.java build/org.eclipse.cdt.managedbuilder.core/src/org/eclipse/cdt/managedbuilder/macros/IFileContextData.java build/org.eclipse.cdt.managedbuilder.core/src/org/eclipse/cdt/managedbuilder/macros/IOptionContextData.java build/org.eclipse.cdt.managedbuilder.core/src/org/eclipse/cdt/managedbuilder/macros/IProjectBuildMacroSupplier.java build/org.eclipse.cdt.managedbuilder.core/src/org/eclipse/cdt/managedbuilder/macros/IReservedMacroNameSupplier.java build/org.eclipse.cdt.managedbuilder.core/src/org/eclipse/cdt/managedbuilder/makegen/IManagedBuilderMakefileGenerator.java build/org.eclipse.cdt.managedbuilder.core/src/org/eclipse/cdt/managedbuilder/makegen/IManagedBuilderMakefileGenerator2.java build/org.eclipse.cdt.managedbuilder.core/src/org/eclipse/cdt/managedbuilder/makegen/IManagedDependencyCalculator.java build/org.eclipse.cdt.managedbuilder.core/src/org/eclipse/cdt/managedbuilder/makegen/IManagedDependencyCommands.java build/org.eclipse.cdt.managedbuilder.core/src/org/eclipse/cdt/managedbuilder/makegen/IManagedDependencyGenerator.java build/org.eclipse.cdt.managedbuilder.core/src/org/eclipse/cdt/managedbuilder/makegen/IManagedDependencyGenerator2.java build/org.eclipse.cdt.managedbuilder.core/src/org/eclipse/cdt/managedbuilder/makegen/IManagedDependencyGeneratorType.java build/org.eclipse.cdt.managedbuilder.core/src/org/eclipse/cdt/managedbuilder/makegen/IManagedDependencyInfo.java build/org.eclipse.cdt.managedbuilder.core/src/org/eclipse/cdt/managedbuilder/makegen/IManagedDependencyPreBuild.java build/org.eclipse.cdt.managedbuilder.core/src/org/eclipse/cdt/managedbuilder/makegen/gnu/DefaultGCCDependencyCalculator.java build/org.eclipse.cdt.managedbuilder.core/src/org/eclipse/cdt/managedbuilder/makegen/gnu/DefaultGCCDependencyCalculator2.java build/org.eclipse.cdt.managedbuilder.core/src/org/eclipse/cdt/managedbuilder/makegen/gnu/DefaultGCCDependencyCalculator2Commands.java build/org.eclipse.cdt.managedbuilder.core/src/org/eclipse/cdt/managedbuilder/makegen/gnu/DefaultGCCDependencyCalculator3.java build/org.eclipse.cdt.managedbuilder.core/src/org/eclipse/cdt/managedbuilder/makegen/gnu/DefaultGCCDependencyCalculator3Commands.java build/org.eclipse.cdt.managedbuilder.core/src/org/eclipse/cdt/managedbuilder/makegen/gnu/DefaultGCCDependencyCalculatorPreBuild.java build/org.eclipse.cdt.managedbuilder.core/src/org/eclipse/cdt/managedbuilder/makegen/gnu/DefaultGCCDependencyCalculatorPreBuildCommands.java build/org.eclipse.cdt.managedbuilder.core/src/org/eclipse/cdt/managedbuilder/makegen/gnu/GnuDependencyGroupInfo.java build/org.eclipse.cdt.managedbuilder.core/src/org/eclipse/cdt/managedbuilder/makegen/gnu/GnuLinkOutputNameProvider.java build/org.eclipse.cdt.managedbuilder.core/src/org/eclipse/cdt/managedbuilder/makegen/gnu/GnuMakefileGenerator.java build/org.eclipse.cdt.managedbuilder.core/src/org/eclipse/cdt/managedbuilder/makegen/gnu/IManagedBuildGnuToolInfo.java build/org.eclipse.cdt.managedbuilder.core/src/org/eclipse/cdt/managedbuilder/makegen/gnu/ManagedBuildGnuToolInfo.java build/org.eclipse.cdt.managedbuilder.core/src/org/eclipse/cdt/managedbuilder/makegen/internal/DefaultIndexerDependencyCalculator.java build/org.eclipse.cdt.managedbuilder.core/src/org/eclipse/cdt/managedbuilder/makegen/internal/DefaultNoDependencyCalculator.java build/org.eclipse.cdt.managedbuilder.core/src/org/eclipse/cdt/managedbuilder/pdomdepgen/PDOMDependencyCalculator.java build/org.eclipse.cdt.managedbuilder.core/src/org/eclipse/cdt/managedbuilder/pdomdepgen/PDOMDependencyGenerator.java build/org.eclipse.cdt.managedbuilder.core/src/org/eclipse/cdt/managedbuilder/projectconverter/ConverterMessages.java build/org.eclipse.cdt.managedbuilder.core/src/org/eclipse/cdt/managedbuilder/projectconverter/PluginResources.properties build/org.eclipse.cdt.managedbuilder.core/src/org/eclipse/cdt/managedbuilder/projectconverter/UpdateManagedProject12.java build/org.eclipse.cdt.managedbuilder.core/src/org/eclipse/cdt/managedbuilder/projectconverter/UpdateManagedProject20.java build/org.eclipse.cdt.managedbuilder.core/src/org/eclipse/cdt/managedbuilder/projectconverter/UpdateManagedProject21.java build/org.eclipse.cdt.managedbuilder.core/src/org/eclipse/cdt/managedbuilder/projectconverter/UpdateManagedProject30.java build/org.eclipse.cdt.managedbuilder.core/src/org/eclipse/cdt/managedbuilder/projectconverter/UpdateManagedProjectManager.java build/org.eclipse.cdt.managedbuilder.core/src/org/eclipse/cdt/managedbuilder/scannerconfig/IManagedScannerInfoCollector.java build/org.eclipse.cdt.managedbuilder.core/src/org/eclipse/cdt/newmake/core/IMakeBuilderInfo.java build/org.eclipse.cdt.managedbuilder.core/src/org/eclipse/cdt/newmake/core/IMakeCommonBuildInfo.java build/org.eclipse.cdt.managedbuilder.core/src/org/eclipse/cdt/newmake/core/MakeBuilderUtil.java build/org.eclipse.cdt.managedbuilder.core/src/org/eclipse/cdt/newmake/core/MakeScannerInfo.java build/org.eclipse.cdt.managedbuilder.core/src/org/eclipse/cdt/newmake/core/MakeScannerProvider.java build/org.eclipse.cdt.managedbuilder.core/src/org/eclipse/cdt/newmake/internal/core/MakeMessages.java build/org.eclipse.cdt.managedbuilder.core/src/org/eclipse/cdt/newmake/internal/core/MakeMessages.properties build/org.eclipse.cdt.managedbuilder.core/src/org/eclipse/cdt/newmake/internal/core/PreferenceInitializer.java build/org.eclipse.cdt.managedbuilder.core/src/org/eclipse/cdt/newmake/internal/core/StreamMonitor.java build/org.eclipse.cdt.managedbuilder.gnu.ui/.classpath build/org.eclipse.cdt.managedbuilder.gnu.ui/.cvsignore build/org.eclipse.cdt.managedbuilder.gnu.ui/.project build/org.eclipse.cdt.managedbuilder.gnu.ui/META-INF/MANIFEST.MF build/org.eclipse.cdt.managedbuilder.gnu.ui/about.html build/org.eclipse.cdt.managedbuilder.gnu.ui/build.properties build/org.eclipse.cdt.managedbuilder.gnu.ui/plugin.properties build/org.eclipse.cdt.managedbuilder.gnu.ui/plugin.xml build/org.eclipse.cdt.managedbuilder.gnu.ui/src/org/eclipse/cdt/managedbuilder/gnu/cygwin/CygwinPathResolver.java build/org.eclipse.cdt.managedbuilder.gnu.ui/src/org/eclipse/cdt/managedbuilder/gnu/cygwin/GnuCygwinConfigurationEnvironmentSupplier.java build/org.eclipse.cdt.managedbuilder.gnu.ui/src/org/eclipse/cdt/managedbuilder/gnu/cygwin/IsGnuCygwinToolChainSupported.java build/org.eclipse.cdt.managedbuilder.gnu.ui/src/org/eclipse/cdt/managedbuilder/gnu/ui/GnuUIPlugin.java build/org.eclipse.cdt.managedbuilder.ui.tests/.classpath build/org.eclipse.cdt.managedbuilder.ui.tests/.cvsignore build/org.eclipse.cdt.managedbuilder.ui.tests/.project build/org.eclipse.cdt.managedbuilder.ui.tests/META-INF/MANIFEST.MF build/org.eclipse.cdt.managedbuilder.ui.tests/about.html build/org.eclipse.cdt.managedbuilder.ui.tests/build.properties build/org.eclipse.cdt.managedbuilder.ui.tests/plugin.xml build/org.eclipse.cdt.managedbuilder.ui.tests/src/org/eclipse/cdt/managedbuilder/ui/tests/TestCProjectPlatformPage.java build/org.eclipse.cdt.managedbuilder.ui.tests/src/org/eclipse/cdt/managedbuilder/ui/tests/TestCustomPageManager.java build/org.eclipse.cdt.managedbuilder.ui.tests/src/org/eclipse/cdt/managedbuilder/ui/tests/suite/AllManagedBuildUITests.java build/org.eclipse.cdt.managedbuilder.ui.tests/src/org/eclipse/cdt/managedbuilder/ui/tests/testplugin/TestsPlugin.java build/org.eclipse.cdt.managedbuilder.ui.tests/src/org/eclipse/cdt/managedbuilder/ui/tests/util/TestToolchain.java build/org.eclipse.cdt.managedbuilder.ui.tests/src/org/eclipse/cdt/managedbuilder/ui/tests/wizardPages/AlwaysPresentWizardPage.java build/org.eclipse.cdt.managedbuilder.ui.tests/src/org/eclipse/cdt/managedbuilder/ui/tests/wizardPages/NatureAWizardPage.java build/org.eclipse.cdt.managedbuilder.ui.tests/src/org/eclipse/cdt/managedbuilder/ui/tests/wizardPages/NatureBWizardPage.java build/org.eclipse.cdt.managedbuilder.ui.tests/src/org/eclipse/cdt/managedbuilder/ui/tests/wizardPages/ProjectTypeDWizardPage.java build/org.eclipse.cdt.managedbuilder.ui.tests/src/org/eclipse/cdt/managedbuilder/ui/tests/wizardPages/ProjectTypeEWizardPage.java build/org.eclipse.cdt.managedbuilder.ui.tests/src/org/eclipse/cdt/managedbuilder/ui/tests/wizardPages/TestRunnable.java build/org.eclipse.cdt.managedbuilder.ui.tests/src/org/eclipse/cdt/managedbuilder/ui/tests/wizardPages/ToolchainCWizardPage.java build/org.eclipse.cdt.managedbuilder.ui.tests/src/org/eclipse/cdt/managedbuilder/ui/tests/wizardPages/ToolchainCv20WizardPage.java build/org.eclipse.cdt.managedbuilder.ui.tests/src/org/eclipse/cdt/managedbuilder/ui/tests/wizardPages/ToolchainFWizardPage.java build/org.eclipse.cdt.managedbuilder.ui/.classpath build/org.eclipse.cdt.managedbuilder.ui/.cvsignore build/org.eclipse.cdt.managedbuilder.ui/.project build/org.eclipse.cdt.managedbuilder.ui/ChangeLog build/org.eclipse.cdt.managedbuilder.ui/META-INF/MANIFEST.MF build/org.eclipse.cdt.managedbuilder.ui/about.html build/org.eclipse.cdt.managedbuilder.ui/build.properties build/org.eclipse.cdt.managedbuilder.ui/icons/dlcl16/action-buildconfig.gif build/org.eclipse.cdt.managedbuilder.ui/icons/dlcl16/action-deleteconfig.gif build/org.eclipse.cdt.managedbuilder.ui/icons/dlcl16/action-editconfig.gif build/org.eclipse.cdt.managedbuilder.ui/icons/dlcl16/action-newconfig.gif build/org.eclipse.cdt.managedbuilder.ui/icons/dlcl16/build_configs.gif build/org.eclipse.cdt.managedbuilder.ui/icons/dlcl16/config-category.gif build/org.eclipse.cdt.managedbuilder.ui/icons/dlcl16/config-compiler.gif build/org.eclipse.cdt.managedbuilder.ui/icons/dlcl16/config-debug.gif build/org.eclipse.cdt.managedbuilder.ui/icons/dlcl16/config-librarian.gif build/org.eclipse.cdt.managedbuilder.ui/icons/dlcl16/config-linker.gif build/org.eclipse.cdt.managedbuilder.ui/icons/dlcl16/config-preprocessor.gif build/org.eclipse.cdt.managedbuilder.ui/icons/dlcl16/config-profile.gif build/org.eclipse.cdt.managedbuilder.ui/icons/dlcl16/config-release.gif build/org.eclipse.cdt.managedbuilder.ui/icons/dlcl16/config-tool.gif build/org.eclipse.cdt.managedbuilder.ui/icons/dlcl16/list-add.gif build/org.eclipse.cdt.managedbuilder.ui/icons/dlcl16/list-delete.gif build/org.eclipse.cdt.managedbuilder.ui/icons/dlcl16/list-edit.gif build/org.eclipse.cdt.managedbuilder.ui/icons/dlcl16/list-movedown.gif build/org.eclipse.cdt.managedbuilder.ui/icons/dlcl16/list-moveup.gif build/org.eclipse.cdt.managedbuilder.ui/icons/dlcl16/newmngc_app.gif build/org.eclipse.cdt.managedbuilder.ui/icons/dlcl16/newmngcc_app.gif build/org.eclipse.cdt.managedbuilder.ui/icons/dlcl16/read_only.gif build/org.eclipse.cdt.managedbuilder.ui/icons/elcl16/action-buildconfig.gif build/org.eclipse.cdt.managedbuilder.ui/icons/elcl16/action-deleteconfig.gif build/org.eclipse.cdt.managedbuilder.ui/icons/elcl16/action-editconfig.gif build/org.eclipse.cdt.managedbuilder.ui/icons/elcl16/action-newconfig.gif build/org.eclipse.cdt.managedbuilder.ui/icons/elcl16/build_configs.gif build/org.eclipse.cdt.managedbuilder.ui/icons/elcl16/built_in.gif build/org.eclipse.cdt.managedbuilder.ui/icons/elcl16/config-category.gif build/org.eclipse.cdt.managedbuilder.ui/icons/elcl16/config-compiler.gif build/org.eclipse.cdt.managedbuilder.ui/icons/elcl16/config-debug.gif build/org.eclipse.cdt.managedbuilder.ui/icons/elcl16/config-librarian.gif build/org.eclipse.cdt.managedbuilder.ui/icons/elcl16/config-linker.gif build/org.eclipse.cdt.managedbuilder.ui/icons/elcl16/config-preprocessor.gif build/org.eclipse.cdt.managedbuilder.ui/icons/elcl16/config-profile.gif build/org.eclipse.cdt.managedbuilder.ui/icons/elcl16/config-release.gif build/org.eclipse.cdt.managedbuilder.ui/icons/elcl16/config-tool.gif build/org.eclipse.cdt.managedbuilder.ui/icons/elcl16/discovery.gif build/org.eclipse.cdt.managedbuilder.ui/icons/elcl16/editable.gif build/org.eclipse.cdt.managedbuilder.ui/icons/elcl16/list-add.gif build/org.eclipse.cdt.managedbuilder.ui/icons/elcl16/list-delete.gif build/org.eclipse.cdt.managedbuilder.ui/icons/elcl16/list-edit.gif build/org.eclipse.cdt.managedbuilder.ui/icons/elcl16/list-movedown.gif build/org.eclipse.cdt.managedbuilder.ui/icons/elcl16/list-moveup.gif build/org.eclipse.cdt.managedbuilder.ui/icons/elcl16/newmngc_app.gif build/org.eclipse.cdt.managedbuilder.ui/icons/elcl16/newmngcc_app.gif build/org.eclipse.cdt.managedbuilder.ui/icons/elcl16/read_only.gif build/org.eclipse.cdt.managedbuilder.ui/icons/obj16/artifact.gif build/org.eclipse.cdt.managedbuilder.ui/icons/obj16/bin_obj.gif build/org.eclipse.cdt.managedbuilder.ui/icons/obj16/build_settings.gif build/org.eclipse.cdt.managedbuilder.ui/icons/obj16/define_obj.gif build/org.eclipse.cdt.managedbuilder.ui/icons/obj16/environment.gif build/org.eclipse.cdt.managedbuilder.ui/icons/obj16/error_obj.gif build/org.eclipse.cdt.managedbuilder.ui/icons/obj16/filesystem.gif build/org.eclipse.cdt.managedbuilder.ui/icons/obj16/fldr_obj.gif build/org.eclipse.cdt.managedbuilder.ui/icons/obj16/hfolder_obj.gif build/org.eclipse.cdt.managedbuilder.ui/icons/obj16/lib_obj.gif build/org.eclipse.cdt.managedbuilder.ui/icons/obj16/opentype.gif build/org.eclipse.cdt.managedbuilder.ui/icons/obj16/output_folder_obj.gif build/org.eclipse.cdt.managedbuilder.ui/icons/obj16/search_ref_obj.gif build/org.eclipse.cdt.managedbuilder.ui/icons/obj16/steps.gif build/org.eclipse.cdt.managedbuilder.ui/icons/obj16/workspace.gif build/org.eclipse.cdt.managedbuilder.ui/plugin.properties build/org.eclipse.cdt.managedbuilder.ui/plugin.xml build/org.eclipse.cdt.managedbuilder.ui/schema/CDTWizard.exsd build/org.eclipse.cdt.managedbuilder.ui/schema/CNewWizard.exsd build/org.eclipse.cdt.managedbuilder.ui/schema/DiscoveryProfileUI.exsd build/org.eclipse.cdt.managedbuilder.ui/schema/newWizardPages.exsd build/org.eclipse.cdt.managedbuilder.ui/src/org/eclipse/cdt/managedbuilder/ui/actions/BuildFilesAction.java build/org.eclipse.cdt.managedbuilder.ui/src/org/eclipse/cdt/managedbuilder/ui/actions/CleanFilesAction.java build/org.eclipse.cdt.managedbuilder.ui/src/org/eclipse/cdt/managedbuilder/ui/actions/ConvertTargetAction.java build/org.eclipse.cdt.managedbuilder.ui/src/org/eclipse/cdt/managedbuilder/ui/actions/ConvertTargetDialog.java build/org.eclipse.cdt.managedbuilder.ui/src/org/eclipse/cdt/managedbuilder/ui/newui/AbstractCBuildPropertyTab.java build/org.eclipse.cdt.managedbuilder.ui/src/org/eclipse/cdt/managedbuilder/ui/newui/AbstractDiscoveryPage.java build/org.eclipse.cdt.managedbuilder.ui/src/org/eclipse/cdt/managedbuilder/ui/newui/AbstractToolSettingUI.java build/org.eclipse.cdt.managedbuilder.ui/src/org/eclipse/cdt/managedbuilder/ui/newui/ArtifactTab.java build/org.eclipse.cdt.managedbuilder.ui/src/org/eclipse/cdt/managedbuilder/ui/newui/BuildOptionComboFieldEditor.java build/org.eclipse.cdt.managedbuilder.ui/src/org/eclipse/cdt/managedbuilder/ui/newui/BuildOptionSettingsUI.java build/org.eclipse.cdt.managedbuilder.ui/src/org/eclipse/cdt/managedbuilder/ui/newui/BuildStepsTab.java build/org.eclipse.cdt.managedbuilder.ui/src/org/eclipse/cdt/managedbuilder/ui/newui/BuildToolSettingUI.java build/org.eclipse.cdt.managedbuilder.ui/src/org/eclipse/cdt/managedbuilder/ui/newui/BuilderSettingsTab.java build/org.eclipse.cdt.managedbuilder.ui/src/org/eclipse/cdt/managedbuilder/ui/newui/CBuildLocationOutputTab.java build/org.eclipse.cdt.managedbuilder.ui/src/org/eclipse/cdt/managedbuilder/ui/newui/CNewOptionsPage.java build/org.eclipse.cdt.managedbuilder.ui/src/org/eclipse/cdt/managedbuilder/ui/newui/CPropertyVarsTab.java build/org.eclipse.cdt.managedbuilder.ui/src/org/eclipse/cdt/managedbuilder/ui/newui/DiscoveryTab.java build/org.eclipse.cdt.managedbuilder.ui/src/org/eclipse/cdt/managedbuilder/ui/newui/FileListControl.java build/org.eclipse.cdt.managedbuilder.ui/src/org/eclipse/cdt/managedbuilder/ui/newui/FileListControlFieldEditor.java build/org.eclipse.cdt.managedbuilder.ui/src/org/eclipse/cdt/managedbuilder/ui/newui/GCCPerFileSCDProfilePage.java build/org.eclipse.cdt.managedbuilder.ui/src/org/eclipse/cdt/managedbuilder/ui/newui/GCCPerProjectSCDProfilePage.java build/org.eclipse.cdt.managedbuilder.ui/src/org/eclipse/cdt/managedbuilder/ui/newui/IBuildInfoContainer.java build/org.eclipse.cdt.managedbuilder.ui/src/org/eclipse/cdt/managedbuilder/ui/newui/IFileListChangeListener.java build/org.eclipse.cdt.managedbuilder.ui/src/org/eclipse/cdt/managedbuilder/ui/newui/ManagedBuilderUIImages.java build/org.eclipse.cdt.managedbuilder.ui/src/org/eclipse/cdt/managedbuilder/ui/newui/ManagedBuilderUIPlugin.java build/org.eclipse.cdt.managedbuilder.ui/src/org/eclipse/cdt/managedbuilder/ui/newui/Messages.java build/org.eclipse.cdt.managedbuilder.ui/src/org/eclipse/cdt/managedbuilder/ui/newui/NewBuildConfigurationDialog.java build/org.eclipse.cdt.managedbuilder.ui/src/org/eclipse/cdt/managedbuilder/ui/newui/NewCfgDialog.java build/org.eclipse.cdt.managedbuilder.ui/src/org/eclipse/cdt/managedbuilder/ui/newui/NewVarDialog.java build/org.eclipse.cdt.managedbuilder.ui/src/org/eclipse/cdt/managedbuilder/ui/newui/PageLayout.java build/org.eclipse.cdt.managedbuilder.ui/src/org/eclipse/cdt/managedbuilder/ui/newui/PrefPage_NewCDTProject.java build/org.eclipse.cdt.managedbuilder.ui/src/org/eclipse/cdt/managedbuilder/ui/newui/ToolChainEditTab.java build/org.eclipse.cdt.managedbuilder.ui/src/org/eclipse/cdt/managedbuilder/ui/newui/ToolListContentProvider.java build/org.eclipse.cdt.managedbuilder.ui/src/org/eclipse/cdt/managedbuilder/ui/newui/ToolListElement.java build/org.eclipse.cdt.managedbuilder.ui/src/org/eclipse/cdt/managedbuilder/ui/newui/ToolListLabelProvider.java build/org.eclipse.cdt.managedbuilder.ui/src/org/eclipse/cdt/managedbuilder/ui/newui/ToolSelectionDialog.java build/org.eclipse.cdt.managedbuilder.ui/src/org/eclipse/cdt/managedbuilder/ui/newui/ToolSettingsPrefStore.java build/org.eclipse.cdt.managedbuilder.ui/src/org/eclipse/cdt/managedbuilder/ui/newui/ToolSettingsTab.java build/org.eclipse.cdt.managedbuilder.ui/src/org/eclipse/cdt/managedbuilder/ui/newui/messages.properties build/org.eclipse.cdt.managedbuilder.ui/src/org/eclipse/cdt/managedbuilder/ui/wizards/AbstractCWizard.java build/org.eclipse.cdt.managedbuilder.ui/src/org/eclipse/cdt/managedbuilder/ui/wizards/CCProjectWizard.java build/org.eclipse.cdt.managedbuilder.ui/src/org/eclipse/cdt/managedbuilder/ui/wizards/CConfigWizardPage.java build/org.eclipse.cdt.managedbuilder.ui/src/org/eclipse/cdt/managedbuilder/ui/wizards/CDTProjectWizard.java build/org.eclipse.cdt.managedbuilder.ui/src/org/eclipse/cdt/managedbuilder/ui/wizards/CMainWizardPage.java build/org.eclipse.cdt.managedbuilder.ui/src/org/eclipse/cdt/managedbuilder/ui/wizards/CNewWizard.java build/org.eclipse.cdt.managedbuilder.ui/src/org/eclipse/cdt/managedbuilder/ui/wizards/CProjectWizard.java build/org.eclipse.cdt.managedbuilder.ui/src/org/eclipse/cdt/managedbuilder/ui/wizards/CWizardHandler.java build/org.eclipse.cdt.managedbuilder.ui/src/org/eclipse/cdt/managedbuilder/ui/wizards/DummyHandler.java build/org.eclipse.cdt.managedbuilder.ui/src/org/eclipse/cdt/managedbuilder/ui/wizards/ICNewWizard.java build/org.eclipse.cdt.managedbuilder.ui/src/org/eclipse/cdt/managedbuilder/ui/wizards/ICWizardHandler.java build/org.eclipse.cdt.managedbuilder.ui/src/org/eclipse/cdt/managedbuilder/ui/wizards/IDEWorkbenchMessages.java build/org.eclipse.cdt.managedbuilder.ui/src/org/eclipse/cdt/managedbuilder/ui/wizards/IToolChainListListener.java build/org.eclipse.cdt.managedbuilder.ui/src/org/eclipse/cdt/managedbuilder/ui/wizards/MBSCustomPage.java build/org.eclipse.cdt.managedbuilder.ui/src/org/eclipse/cdt/managedbuilder/ui/wizards/MBSCustomPageData.java build/org.eclipse.cdt.managedbuilder.ui/src/org/eclipse/cdt/managedbuilder/ui/wizards/MBSCustomPageManager.java build/org.eclipse.cdt.managedbuilder.ui/src/org/eclipse/cdt/managedbuilder/ui/wizards/Messages.java build/org.eclipse.cdt.managedbuilder.ui/src/org/eclipse/cdt/managedbuilder/ui/wizards/NewModelProjectWizard.java build/org.eclipse.cdt.managedbuilder.ui/src/org/eclipse/cdt/managedbuilder/ui/wizards/StdBuildWizard.java build/org.eclipse.cdt.managedbuilder.ui/src/org/eclipse/cdt/managedbuilder/ui/wizards/StdProjectTypeHandler.java build/org.eclipse.cdt.managedbuilder.ui/src/org/eclipse/cdt/managedbuilder/ui/wizards/messages.properties core/org.eclipse.cdt.core.aix/.classpath core/org.eclipse.cdt.core.aix/.cvsignore core/org.eclipse.cdt.core.aix/.project core/org.eclipse.cdt.core.aix/META-INF/MANIFEST.MF core/org.eclipse.cdt.core.aix/about.html core/org.eclipse.cdt.core.aix/build.properties core/org.eclipse.cdt.core.aix/fragment.xml core/org.eclipse.cdt.core.aix/library/.cvsignore core/org.eclipse.cdt.core.aix/library/Makefile core/org.eclipse.cdt.core.aix/library/PTY.h core/org.eclipse.cdt.core.aix/library/PTYInputStream.h core/org.eclipse.cdt.core.aix/library/PTYOutputStream.h core/org.eclipse.cdt.core.aix/library/Spawner.h core/org.eclipse.cdt.core.aix/library/SpawnerInputStream.h core/org.eclipse.cdt.core.aix/library/SpawnerOutputStream.h core/org.eclipse.cdt.core.aix/library/exec0.h core/org.eclipse.cdt.core.aix/library/exec_pty.c core/org.eclipse.cdt.core.aix/library/exec_unix.c core/org.eclipse.cdt.core.aix/library/io.c core/org.eclipse.cdt.core.aix/library/openpty.c core/org.eclipse.cdt.core.aix/library/openpty.h core/org.eclipse.cdt.core.aix/library/pfind.c core/org.eclipse.cdt.core.aix/library/pty.c core/org.eclipse.cdt.core.aix/library/ptyio.c core/org.eclipse.cdt.core.aix/library/spawner.c core/org.eclipse.cdt.core.aix/os/aix/ppc/libpty.so core/org.eclipse.cdt.core.aix/os/aix/ppc/libspawner.so core/org.eclipse.cdt.core.aix/src/org/eclipse/cdt/internal/core/aix/ProcessInfo.java core/org.eclipse.cdt.core.aix/src/org/eclipse/cdt/internal/core/aix/ProcessList.java core/org.eclipse.cdt.core.linux.ia64/.project core/org.eclipse.cdt.core.linux.ia64/META-INF/MANIFEST.MF core/org.eclipse.cdt.core.linux.ia64/about.html core/org.eclipse.cdt.core.linux.ia64/build.properties core/org.eclipse.cdt.core.linux.ia64/fragment.xml core/org.eclipse.cdt.core.linux.ia64/os/linux/ia64/libpty.so core/org.eclipse.cdt.core.linux.ia64/os/linux/ia64/libspawner.so core/org.eclipse.cdt.core.linux.ppc/.project core/org.eclipse.cdt.core.linux.ppc/META-INF/MANIFEST.MF core/org.eclipse.cdt.core.linux.ppc/about.html core/org.eclipse.cdt.core.linux.ppc/build.properties core/org.eclipse.cdt.core.linux.ppc/fragment.xml core/org.eclipse.cdt.core.linux.ppc/os/linux/ppc/libpty.so core/org.eclipse.cdt.core.linux.ppc/os/linux/ppc/libspawner.so core/org.eclipse.cdt.core.linux.x86/.project core/org.eclipse.cdt.core.linux.x86/META-INF/MANIFEST.MF core/org.eclipse.cdt.core.linux.x86/about.html core/org.eclipse.cdt.core.linux.x86/build.properties core/org.eclipse.cdt.core.linux.x86/fragment.xml core/org.eclipse.cdt.core.linux.x86/os/linux/x86/libpty.so core/org.eclipse.cdt.core.linux.x86/os/linux/x86/libspawner.so core/org.eclipse.cdt.core.linux.x86_64/.project core/org.eclipse.cdt.core.linux.x86_64/META-INF/MANIFEST.MF core/org.eclipse.cdt.core.linux.x86_64/about.html core/org.eclipse.cdt.core.linux.x86_64/build.properties core/org.eclipse.cdt.core.linux.x86_64/fragment.xml core/org.eclipse.cdt.core.linux.x86_64/os/linux/x86_64/libpty.so core/org.eclipse.cdt.core.linux.x86_64/os/linux/x86_64/libspawner.so core/org.eclipse.cdt.core.linux/.classpath core/org.eclipse.cdt.core.linux/.cvsignore core/org.eclipse.cdt.core.linux/.project core/org.eclipse.cdt.core.linux/ChangeLog core/org.eclipse.cdt.core.linux/META-INF/MANIFEST.MF core/org.eclipse.cdt.core.linux/about.html core/org.eclipse.cdt.core.linux/build.properties core/org.eclipse.cdt.core.linux/fragment.xml core/org.eclipse.cdt.core.linux/library/.cvsignore core/org.eclipse.cdt.core.linux/library/Makefile core/org.eclipse.cdt.core.linux/library/PTY.h core/org.eclipse.cdt.core.linux/library/PTYInputStream.h core/org.eclipse.cdt.core.linux/library/PTYOutputStream.h core/org.eclipse.cdt.core.linux/library/Spawner.h core/org.eclipse.cdt.core.linux/library/SpawnerInputStream.h core/org.eclipse.cdt.core.linux/library/SpawnerOutputStream.h core/org.eclipse.cdt.core.linux/library/exec0.h core/org.eclipse.cdt.core.linux/library/exec_pty.c core/org.eclipse.cdt.core.linux/library/exec_unix.c core/org.eclipse.cdt.core.linux/library/io.c core/org.eclipse.cdt.core.linux/library/openpty.c core/org.eclipse.cdt.core.linux/library/openpty.h core/org.eclipse.cdt.core.linux/library/pfind.c core/org.eclipse.cdt.core.linux/library/pty.c core/org.eclipse.cdt.core.linux/library/ptyio.c core/org.eclipse.cdt.core.linux/library/spawner.c core/org.eclipse.cdt.core.linux/src/org/eclipse/cdt/internal/core/linux/ProcessInfo.java core/org.eclipse.cdt.core.linux/src/org/eclipse/cdt/internal/core/linux/ProcessList.java core/org.eclipse.cdt.core.macosx/.classpath core/org.eclipse.cdt.core.macosx/.cvsignore core/org.eclipse.cdt.core.macosx/.project core/org.eclipse.cdt.core.macosx/ChangeLog core/org.eclipse.cdt.core.macosx/META-INF/MANIFEST.MF core/org.eclipse.cdt.core.macosx/about.html core/org.eclipse.cdt.core.macosx/build.properties core/org.eclipse.cdt.core.macosx/fragment.xml core/org.eclipse.cdt.core.macosx/library/.cvsignore core/org.eclipse.cdt.core.macosx/library/Makefile core/org.eclipse.cdt.core.macosx/library/PTY.h core/org.eclipse.cdt.core.macosx/library/PTYInputStream.h core/org.eclipse.cdt.core.macosx/library/PTYOutputStream.h core/org.eclipse.cdt.core.macosx/library/Spawner.h core/org.eclipse.cdt.core.macosx/library/SpawnerInputStream.h core/org.eclipse.cdt.core.macosx/library/SpawnerOutputStream.h core/org.eclipse.cdt.core.macosx/library/exec0.h core/org.eclipse.cdt.core.macosx/library/exec_pty.c core/org.eclipse.cdt.core.macosx/library/exec_unix.c core/org.eclipse.cdt.core.macosx/library/io.c core/org.eclipse.cdt.core.macosx/library/openpty.c core/org.eclipse.cdt.core.macosx/library/openpty.h core/org.eclipse.cdt.core.macosx/library/pfind.c core/org.eclipse.cdt.core.macosx/library/pty.c core/org.eclipse.cdt.core.macosx/library/ptyio.c core/org.eclipse.cdt.core.macosx/library/spawner.c core/org.eclipse.cdt.core.macosx/os/macosx/ppc/libpty.jnilib core/org.eclipse.cdt.core.macosx/os/macosx/ppc/libspawner.jnilib core/org.eclipse.cdt.core.macosx/src/org/eclipse/cdt/internal/core/macosx/ProcessInfo.java core/org.eclipse.cdt.core.macosx/src/org/eclipse/cdt/internal/core/macosx/ProcessList.java core/org.eclipse.cdt.core.qnx/.classpath core/org.eclipse.cdt.core.qnx/.cvsignore core/org.eclipse.cdt.core.qnx/.project core/org.eclipse.cdt.core.qnx/ChangeLog core/org.eclipse.cdt.core.qnx/META-INF/MANIFEST.MF core/org.eclipse.cdt.core.qnx/about.html core/org.eclipse.cdt.core.qnx/build.properties core/org.eclipse.cdt.core.qnx/fragment.xml core/org.eclipse.cdt.core.qnx/library/.cvsignore core/org.eclipse.cdt.core.qnx/library/Makefile core/org.eclipse.cdt.core.qnx/library/pty/Makefile core/org.eclipse.cdt.core.qnx/library/pty/PTY.h core/org.eclipse.cdt.core.qnx/library/pty/PTYInputStream.h core/org.eclipse.cdt.core.qnx/library/pty/PTYOutputStream.h core/org.eclipse.cdt.core.qnx/library/pty/common.mk core/org.eclipse.cdt.core.qnx/library/pty/openpty.c core/org.eclipse.cdt.core.qnx/library/pty/openpty.h core/org.eclipse.cdt.core.qnx/library/pty/pty.c core/org.eclipse.cdt.core.qnx/library/pty/ptyio.c core/org.eclipse.cdt.core.qnx/library/pty/x86/Makefile core/org.eclipse.cdt.core.qnx/library/pty/x86/so/Makefile core/org.eclipse.cdt.core.qnx/library/spawner/Makefile core/org.eclipse.cdt.core.qnx/library/spawner/Spawner.h core/org.eclipse.cdt.core.qnx/library/spawner/SpawnerInputStream.h core/org.eclipse.cdt.core.qnx/library/spawner/SpawnerOutputStream.h core/org.eclipse.cdt.core.qnx/library/spawner/common.mk core/org.eclipse.cdt.core.qnx/library/spawner/iostream.c core/org.eclipse.cdt.core.qnx/library/spawner/openpty.c core/org.eclipse.cdt.core.qnx/library/spawner/openpty.h core/org.eclipse.cdt.core.qnx/library/spawner/spawner.c core/org.eclipse.cdt.core.qnx/library/spawner/x86/Makefile core/org.eclipse.cdt.core.qnx/library/spawner/x86/so/Makefile core/org.eclipse.cdt.core.qnx/os/qnx/x86/libpty.so core/org.eclipse.cdt.core.qnx/os/qnx/x86/libspawner.so core/org.eclipse.cdt.core.qnx/src/org/eclipse/cdt/internal/core/qnx/ProcessInfo.java core/org.eclipse.cdt.core.qnx/src/org/eclipse/cdt/internal/core/qnx/ProcessList.java core/org.eclipse.cdt.core.solaris/.classpath core/org.eclipse.cdt.core.solaris/.cvsignore core/org.eclipse.cdt.core.solaris/.project core/org.eclipse.cdt.core.solaris/ChangeLog core/org.eclipse.cdt.core.solaris/META-INF/MANIFEST.MF core/org.eclipse.cdt.core.solaris/about.html core/org.eclipse.cdt.core.solaris/build.properties core/org.eclipse.cdt.core.solaris/fragment.xml core/org.eclipse.cdt.core.solaris/library/.cvsignore core/org.eclipse.cdt.core.solaris/library/Makefile core/org.eclipse.cdt.core.solaris/library/PTY.h core/org.eclipse.cdt.core.solaris/library/PTYInputStream.h core/org.eclipse.cdt.core.solaris/library/PTYOutputStream.h core/org.eclipse.cdt.core.solaris/library/Spawner.h core/org.eclipse.cdt.core.solaris/library/SpawnerInputStream.h core/org.eclipse.cdt.core.solaris/library/SpawnerOutputStream.h core/org.eclipse.cdt.core.solaris/library/exec0.h core/org.eclipse.cdt.core.solaris/library/exec_pty.c core/org.eclipse.cdt.core.solaris/library/exec_unix.c core/org.eclipse.cdt.core.solaris/library/io.c core/org.eclipse.cdt.core.solaris/library/openpty.c core/org.eclipse.cdt.core.solaris/library/openpty.h core/org.eclipse.cdt.core.solaris/library/pfind.c core/org.eclipse.cdt.core.solaris/library/pty.c core/org.eclipse.cdt.core.solaris/library/ptyio.c core/org.eclipse.cdt.core.solaris/library/spawner.c core/org.eclipse.cdt.core.solaris/os/solaris/sparc/libpty.so core/org.eclipse.cdt.core.solaris/os/solaris/sparc/libspawner.so core/org.eclipse.cdt.core.solaris/src/org/eclipse/cdt/internal/core/solaris/ProcessInfo.java core/org.eclipse.cdt.core.solaris/src/org/eclipse/cdt/internal/core/solaris/ProcessList.java core/org.eclipse.cdt.core.tests/.cdtproject core/org.eclipse.cdt.core.tests/.classpath core/org.eclipse.cdt.core.tests/.cvsignore core/org.eclipse.cdt.core.tests/.project core/org.eclipse.cdt.core.tests/.settings/org.eclipse.cdt.core.prefs core/org.eclipse.cdt.core.tests/.settings/org.eclipse.jdt.core.prefs core/org.eclipse.cdt.core.tests/.settings/org.eclipse.jdt.ui.prefs core/org.eclipse.cdt.core.tests/.settings/org.eclipse.pde.prefs core/org.eclipse.cdt.core.tests/ChangeLog core/org.eclipse.cdt.core.tests/META-INF/MANIFEST.MF core/org.eclipse.cdt.core.tests/about.html core/org.eclipse.cdt.core.tests/build.properties core/org.eclipse.cdt.core.tests/failures/org/eclipse/cdt/core/model/failedTests/CModelElementsFailedTests.java core/org.eclipse.cdt.core.tests/failures/org/eclipse/cdt/core/model/failedTests/FailedDeclaratorsTest.java core/org.eclipse.cdt.core.tests/failures/org/eclipse/cdt/core/model/failedTests/FailedMacroTests.java core/org.eclipse.cdt.core.tests/failures/org/eclipse/cdt/core/parser/failedTests/ASTFailedTests.java core/org.eclipse.cdt.core.tests/failures/org/eclipse/cdt/core/parser/failedTests/FailedCompleteParseASTTest.java core/org.eclipse.cdt.core.tests/failures/org/eclipse/cdt/core/parser/failedTests/STLFailedTests.java core/org.eclipse.cdt.core.tests/failures/org/eclipse/cdt/core/parser/failedTests/SelectionParseFailedTest.java core/org.eclipse.cdt.core.tests/misc/org/eclipse/cdt/core/cdescriptor/tests/CDescriptorTests.java core/org.eclipse.cdt.core.tests/misc/org/eclipse/cdt/core/internal/errorparsers/tests/ErrorParserTests.java core/org.eclipse.cdt.core.tests/misc/org/eclipse/cdt/core/internal/errorparsers/tests/FileBasedErrorParserTests.java core/org.eclipse.cdt.core.tests/misc/org/eclipse/cdt/core/internal/errorparsers/tests/GCCErrorParserTests.java core/org.eclipse.cdt.core.tests/misc/org/eclipse/cdt/core/internal/errorparsers/tests/GenericErrorParserTests.java core/org.eclipse.cdt.core.tests/misc/org/eclipse/cdt/core/internal/tests/PositionTrackerTests.java core/org.eclipse.cdt.core.tests/misc/org/eclipse/cdt/core/winreg/tests/WinRegTests.java core/org.eclipse.cdt.core.tests/model/org/eclipse/cdt/core/model/tests/AllCoreTests.java core/org.eclipse.cdt.core.tests/model/org/eclipse/cdt/core/model/tests/AllLanguageInterfaceTests.java core/org.eclipse.cdt.core.tests/model/org/eclipse/cdt/core/model/tests/ArchiveTests.java core/org.eclipse.cdt.core.tests/model/org/eclipse/cdt/core/model/tests/BinaryTests.java core/org.eclipse.cdt.core.tests/model/org/eclipse/cdt/core/model/tests/CModelElementsTests.java core/org.eclipse.cdt.core.tests/model/org/eclipse/cdt/core/model/tests/CModelExceptionTest.java core/org.eclipse.cdt.core.tests/model/org/eclipse/cdt/core/model/tests/CModelTests.java core/org.eclipse.cdt.core.tests/model/org/eclipse/cdt/core/model/tests/CPathEntryTest.java core/org.eclipse.cdt.core.tests/model/org/eclipse/cdt/core/model/tests/DeclaratorsTests.java core/org.eclipse.cdt.core.tests/model/org/eclipse/cdt/core/model/tests/ElementDeltaTests.java core/org.eclipse.cdt.core.tests/model/org/eclipse/cdt/core/model/tests/FlagTests.java core/org.eclipse.cdt.core.tests/model/org/eclipse/cdt/core/model/tests/IIncludeTests.java core/org.eclipse.cdt.core.tests/model/org/eclipse/cdt/core/model/tests/IMacroTests.java core/org.eclipse.cdt.core.tests/model/org/eclipse/cdt/core/model/tests/IStructureTests.java core/org.eclipse.cdt.core.tests/model/org/eclipse/cdt/core/model/tests/ITemplateTests.java core/org.eclipse.cdt.core.tests/model/org/eclipse/cdt/core/model/tests/IntegratedCModelTest.java core/org.eclipse.cdt.core.tests/model/org/eclipse/cdt/core/model/tests/MacroTests.java core/org.eclipse.cdt.core.tests/model/org/eclipse/cdt/core/model/tests/StructuralCModelElementsTests.java core/org.eclipse.cdt.core.tests/model/org/eclipse/cdt/core/model/tests/StructuralMacroTests.java core/org.eclipse.cdt.core.tests/model/org/eclipse/cdt/core/model/tests/StructuralStructureTests.java core/org.eclipse.cdt.core.tests/model/org/eclipse/cdt/core/model/tests/StructuralTemplateTests.java core/org.eclipse.cdt.core.tests/model/org/eclipse/cdt/core/model/tests/TranslationUnitBaseTest.java core/org.eclipse.cdt.core.tests/model/org/eclipse/cdt/core/model/tests/TranslationUnitTests.java core/org.eclipse.cdt.core.tests/model/org/eclipse/cdt/core/model/tests/WorkingCopyTests.java core/org.eclipse.cdt.core.tests/parser/org/eclipse/cdt/core/parser/tests/ArrayUtilsTest.java core/org.eclipse.cdt.core.tests/parser/org/eclipse/cdt/core/parser/tests/AutomatedFramework.java core/org.eclipse.cdt.core.tests/parser/org/eclipse/cdt/core/parser/tests/AutomatedTest.java core/org.eclipse.cdt.core.tests/parser/org/eclipse/cdt/core/parser/tests/BaseASTTest.java core/org.eclipse.cdt.core.tests/parser/org/eclipse/cdt/core/parser/tests/CharArrayUtilsTest.java core/org.eclipse.cdt.core.tests/parser/org/eclipse/cdt/core/parser/tests/CompleteParseASTExpressionTest.java core/org.eclipse.cdt.core.tests/parser/org/eclipse/cdt/core/parser/tests/CompleteParseASTSymbolIteratorTest.java core/org.eclipse.cdt.core.tests/parser/org/eclipse/cdt/core/parser/tests/CompleteParseASTTemplateTest.java core/org.eclipse.cdt.core.tests/parser/org/eclipse/cdt/core/parser/tests/CompleteParseASTTest.java core/org.eclipse.cdt.core.tests/parser/org/eclipse/cdt/core/parser/tests/CompleteParseBaseTest.java core/org.eclipse.cdt.core.tests/parser/org/eclipse/cdt/core/parser/tests/CompleteParsePluginTest.java core/org.eclipse.cdt.core.tests/parser/org/eclipse/cdt/core/parser/tests/CompleteParseProblemTest.java core/org.eclipse.cdt.core.tests/parser/org/eclipse/cdt/core/parser/tests/CompletionParseBaseTest.java core/org.eclipse.cdt.core.tests/parser/org/eclipse/cdt/core/parser/tests/CompletionParseTest.java core/org.eclipse.cdt.core.tests/parser/org/eclipse/cdt/core/parser/tests/FailingTemplateTests.java core/org.eclipse.cdt.core.tests/parser/org/eclipse/cdt/core/parser/tests/FileBasePluginTest.java core/org.eclipse.cdt.core.tests/parser/org/eclipse/cdt/core/parser/tests/FractionalAutomatedTest.java core/org.eclipse.cdt.core.tests/parser/org/eclipse/cdt/core/parser/tests/GCCCompleteParseExtensionsTest.java core/org.eclipse.cdt.core.tests/parser/org/eclipse/cdt/core/parser/tests/GCCParserExtensionTestSuite.java core/org.eclipse.cdt.core.tests/parser/org/eclipse/cdt/core/parser/tests/GCCQuickParseExtensionsTest.java core/org.eclipse.cdt.core.tests/parser/org/eclipse/cdt/core/parser/tests/GCCSelectionParseExtensionsTest.java core/org.eclipse.cdt.core.tests/parser/org/eclipse/cdt/core/parser/tests/IScannerInfoPluginTest.java core/org.eclipse.cdt.core.tests/parser/org/eclipse/cdt/core/parser/tests/ParserSymbolTableTemplateTests.java core/org.eclipse.cdt.core.tests/parser/org/eclipse/cdt/core/parser/tests/ParserSymbolTableTest.java core/org.eclipse.cdt.core.tests/parser/org/eclipse/cdt/core/parser/tests/ParserTestSuite.java core/org.eclipse.cdt.core.tests/parser/org/eclipse/cdt/core/parser/tests/PerformanceTests.java core/org.eclipse.cdt.core.tests/parser/org/eclipse/cdt/core/parser/tests/PreprocessorConditionalTest.java core/org.eclipse.cdt.core.tests/parser/org/eclipse/cdt/core/parser/tests/QuickParseASTQualifiedNameTest.java core/org.eclipse.cdt.core.tests/parser/org/eclipse/cdt/core/parser/tests/QuickParseASTTests.java core/org.eclipse.cdt.core.tests/parser/org/eclipse/cdt/core/parser/tests/QuickParseProblemTests.java core/org.eclipse.cdt.core.tests/parser/org/eclipse/cdt/core/parser/tests/ScannerParserLoopTest.java core/org.eclipse.cdt.core.tests/parser/org/eclipse/cdt/core/parser/tests/ScannerSpeedTest.java core/org.eclipse.cdt.core.tests/parser/org/eclipse/cdt/core/parser/tests/SelectionParseBaseTest.java core/org.eclipse.cdt.core.tests/parser/org/eclipse/cdt/core/parser/tests/SelectionParseTest.java core/org.eclipse.cdt.core.tests/parser/org/eclipse/cdt/core/parser/tests/SpeedTest.java core/org.eclipse.cdt.core.tests/parser/org/eclipse/cdt/core/parser/tests/StructuralParseTest.java core/org.eclipse.cdt.core.tests/parser/org/eclipse/cdt/core/parser/tests/TortureTest.java core/org.eclipse.cdt.core.tests/parser/org/eclipse/cdt/core/parser/tests/XMLDumper.java core/org.eclipse.cdt.core.tests/parser/org/eclipse/cdt/core/parser/tests/ast2/AST2BaseTest.java core/org.eclipse.cdt.core.tests/parser/org/eclipse/cdt/core/parser/tests/ast2/AST2CPPSpecFailingTest.java core/org.eclipse.cdt.core.tests/parser/org/eclipse/cdt/core/parser/tests/ast2/AST2CPPSpecTest.java core/org.eclipse.cdt.core.tests/parser/org/eclipse/cdt/core/parser/tests/ast2/AST2CPPTests.java core/org.eclipse.cdt.core.tests/parser/org/eclipse/cdt/core/parser/tests/ast2/AST2CSpecFailingTest.java core/org.eclipse.cdt.core.tests/parser/org/eclipse/cdt/core/parser/tests/ast2/AST2CSpecTest.java core/org.eclipse.cdt.core.tests/parser/org/eclipse/cdt/core/parser/tests/ast2/AST2FileBasePluginTest.java core/org.eclipse.cdt.core.tests/parser/org/eclipse/cdt/core/parser/tests/ast2/AST2KnRTests.java core/org.eclipse.cdt.core.tests/parser/org/eclipse/cdt/core/parser/tests/ast2/AST2SelectionParseBaseTest.java core/org.eclipse.cdt.core.tests/parser/org/eclipse/cdt/core/parser/tests/ast2/AST2SelectionParseTest.java core/org.eclipse.cdt.core.tests/parser/org/eclipse/cdt/core/parser/tests/ast2/AST2SpecBaseTest.java core/org.eclipse.cdt.core.tests/parser/org/eclipse/cdt/core/parser/tests/ast2/AST2TemplateTests.java core/org.eclipse.cdt.core.tests/parser/org/eclipse/cdt/core/parser/tests/ast2/AST2Tests.java core/org.eclipse.cdt.core.tests/parser/org/eclipse/cdt/core/parser/tests/ast2/AST2UtilOldTests.java core/org.eclipse.cdt.core.tests/parser/org/eclipse/cdt/core/parser/tests/ast2/AST2UtilTests.java core/org.eclipse.cdt.core.tests/parser/org/eclipse/cdt/core/parser/tests/ast2/CDOMBaseTest.java core/org.eclipse.cdt.core.tests/parser/org/eclipse/cdt/core/parser/tests/ast2/CodeReaderCacheTest.java core/org.eclipse.cdt.core.tests/parser/org/eclipse/cdt/core/parser/tests/ast2/CompleteParser2Tests.java core/org.eclipse.cdt.core.tests/parser/org/eclipse/cdt/core/parser/tests/ast2/DOMFileBasePluginTest.java core/org.eclipse.cdt.core.tests/parser/org/eclipse/cdt/core/parser/tests/ast2/DOMGCCParserExtensionTestSuite.java core/org.eclipse.cdt.core.tests/parser/org/eclipse/cdt/core/parser/tests/ast2/DOMGCCSelectionParseExtensionsTest.java core/org.eclipse.cdt.core.tests/parser/org/eclipse/cdt/core/parser/tests/ast2/DOMLocationInclusionTests.java core/org.eclipse.cdt.core.tests/parser/org/eclipse/cdt/core/parser/tests/ast2/DOMLocationMacroTests.java core/org.eclipse.cdt.core.tests/parser/org/eclipse/cdt/core/parser/tests/ast2/DOMLocationTests.java core/org.eclipse.cdt.core.tests/parser/org/eclipse/cdt/core/parser/tests/ast2/DOMParserTestSuite.java core/org.eclipse.cdt.core.tests/parser/org/eclipse/cdt/core/parser/tests/ast2/DOMScannerTests.java core/org.eclipse.cdt.core.tests/parser/org/eclipse/cdt/core/parser/tests/ast2/DOMSearchUtil.java core/org.eclipse.cdt.core.tests/parser/org/eclipse/cdt/core/parser/tests/ast2/DOMSelectionParseBaseTest.java core/org.eclipse.cdt.core.tests/parser/org/eclipse/cdt/core/parser/tests/ast2/DOMSelectionParseTest.java core/org.eclipse.cdt.core.tests/parser/org/eclipse/cdt/core/parser/tests/ast2/GCCCompleteParseExtensionsTest.java core/org.eclipse.cdt.core.tests/parser/org/eclipse/cdt/core/parser/tests/ast2/GCCTests.java core/org.eclipse.cdt.core.tests/parser/org/eclipse/cdt/core/parser/tests/ast2/QuickParser2Tests.java core/org.eclipse.cdt.core.tests/parser/org/eclipse/cdt/core/parser/tests/prefix/BasicCompletionTest.java core/org.eclipse.cdt.core.tests/parser/org/eclipse/cdt/core/parser/tests/prefix/CompletionTestBase.java core/org.eclipse.cdt.core.tests/parser/org/eclipse/cdt/core/parser/tests/prefix/CompletionTestSuite.java core/org.eclipse.cdt.core.tests/parser/org/eclipse/cdt/core/parser/tests/scanner2/BaseScanner2Test.java core/org.eclipse.cdt.core.tests/parser/org/eclipse/cdt/core/parser/tests/scanner2/GCCScannerExtensionsTest.java core/org.eclipse.cdt.core.tests/parser/org/eclipse/cdt/core/parser/tests/scanner2/IncludeTest.java core/org.eclipse.cdt.core.tests/parser/org/eclipse/cdt/core/parser/tests/scanner2/ObjectMapTest.java core/org.eclipse.cdt.core.tests/parser/org/eclipse/cdt/core/parser/tests/scanner2/Scanner2SpeedTest.java core/org.eclipse.cdt.core.tests/parser/org/eclipse/cdt/core/parser/tests/scanner2/Scanner2Test.java core/org.eclipse.cdt.core.tests/parser/org/eclipse/cdt/core/parser/tests/scanner2/SpeedTest2.java core/org.eclipse.cdt.core.tests/parser/org/eclipse/cdt/internal/index/tests/EnclosingNamesTest.java core/org.eclipse.cdt.core.tests/parser/org/eclipse/cdt/internal/index/tests/IndexBugsTests.java core/org.eclipse.cdt.core.tests/parser/org/eclipse/cdt/internal/index/tests/IndexCompositeTests.java core/org.eclipse.cdt.core.tests/parser/org/eclipse/cdt/internal/index/tests/IndexIncludeTest.java core/org.eclipse.cdt.core.tests/parser/org/eclipse/cdt/internal/index/tests/IndexListenerTest.java core/org.eclipse.cdt.core.tests/parser/org/eclipse/cdt/internal/index/tests/IndexLocationTest.java core/org.eclipse.cdt.core.tests/parser/org/eclipse/cdt/internal/index/tests/IndexSearchTest.java core/org.eclipse.cdt.core.tests/parser/org/eclipse/cdt/internal/index/tests/IndexTestBase.java core/org.eclipse.cdt.core.tests/parser/org/eclipse/cdt/internal/index/tests/IndexTests.java core/org.eclipse.cdt.core.tests/parser/org/eclipse/cdt/internal/index/tests/TrilogyPerformanceTest.java core/org.eclipse.cdt.core.tests/parser/org/eclipse/cdt/internal/pdom/tests/BTreeExpensiveTests.java core/org.eclipse.cdt.core.tests/parser/org/eclipse/cdt/internal/pdom/tests/BTreeTests.java core/org.eclipse.cdt.core.tests/parser/org/eclipse/cdt/internal/pdom/tests/CCompositeTypeTests.java core/org.eclipse.cdt.core.tests/parser/org/eclipse/cdt/internal/pdom/tests/CFunctionTests.java core/org.eclipse.cdt.core.tests/parser/org/eclipse/cdt/internal/pdom/tests/CPPCompositeTypeTests.java core/org.eclipse.cdt.core.tests/parser/org/eclipse/cdt/internal/pdom/tests/CPPFieldTests.java core/org.eclipse.cdt.core.tests/parser/org/eclipse/cdt/internal/pdom/tests/CPPFunctionTests.java core/org.eclipse.cdt.core.tests/parser/org/eclipse/cdt/internal/pdom/tests/CPPVariableTests.java core/org.eclipse.cdt.core.tests/parser/org/eclipse/cdt/internal/pdom/tests/CVariableTests.java core/org.eclipse.cdt.core.tests/parser/org/eclipse/cdt/internal/pdom/tests/ClassTests.java core/org.eclipse.cdt.core.tests/parser/org/eclipse/cdt/internal/pdom/tests/DBTest.java core/org.eclipse.cdt.core.tests/parser/org/eclipse/cdt/internal/pdom/tests/DefDeclTests.java core/org.eclipse.cdt.core.tests/parser/org/eclipse/cdt/internal/pdom/tests/EnumerationTests.java core/org.eclipse.cdt.core.tests/parser/org/eclipse/cdt/internal/pdom/tests/FilesOnReindexTests.java core/org.eclipse.cdt.core.tests/parser/org/eclipse/cdt/internal/pdom/tests/IncludesTests.java core/org.eclipse.cdt.core.tests/parser/org/eclipse/cdt/internal/pdom/tests/IndexBindingResolutionBugs.java core/org.eclipse.cdt.core.tests/parser/org/eclipse/cdt/internal/pdom/tests/IndexBindingResolutionTestBase.java core/org.eclipse.cdt.core.tests/parser/org/eclipse/cdt/internal/pdom/tests/IndexCBindingResolutionTest.java core/org.eclipse.cdt.core.tests/parser/org/eclipse/cdt/internal/pdom/tests/IndexCPPBindingResolutionTest.java core/org.eclipse.cdt.core.tests/parser/org/eclipse/cdt/internal/pdom/tests/MethodTests.java core/org.eclipse.cdt.core.tests/parser/org/eclipse/cdt/internal/pdom/tests/NamespaceTests.java core/org.eclipse.cdt.core.tests/parser/org/eclipse/cdt/internal/pdom/tests/OverloadsWithinCommonHeaderTests.java core/org.eclipse.cdt.core.tests/parser/org/eclipse/cdt/internal/pdom/tests/OverloadsWithinSingleTUTests.java core/org.eclipse.cdt.core.tests/parser/org/eclipse/cdt/internal/pdom/tests/PDOMPrettyPrinter.java core/org.eclipse.cdt.core.tests/parser/org/eclipse/cdt/internal/pdom/tests/PDOMSearchTest.java core/org.eclipse.cdt.core.tests/parser/org/eclipse/cdt/internal/pdom/tests/PDOMTestBase.java core/org.eclipse.cdt.core.tests/parser/org/eclipse/cdt/internal/pdom/tests/PDOMTests.java core/org.eclipse.cdt.core.tests/parser/org/eclipse/cdt/internal/pdom/tests/RaceCondition157992Test.java core/org.eclipse.cdt.core.tests/parser/org/eclipse/cdt/internal/pdom/tests/TypesTests.java core/org.eclipse.cdt.core.tests/plugin.xml core/org.eclipse.cdt.core.tests/regression/org/eclipse/cdt/core/tests/BaseTestFramework.java core/org.eclipse.cdt.core.tests/regression/org/eclipse/cdt/core/tests/FailingTest.java core/org.eclipse.cdt.core.tests/regression/org/eclipse/cdt/core/tests/RegressionTestSuite.java core/org.eclipse.cdt.core.tests/regression/org/eclipse/cdt/core/tests/SelectionRegressionTest.java core/org.eclipse.cdt.core.tests/resources/cfiles/CModelElementsTestStart.h core/org.eclipse.cdt.core.tests/resources/cfiles/TranslationUnits.c core/org.eclipse.cdt.core.tests/resources/cfiles/WorkingCopyTestStart.h core/org.eclipse.cdt.core.tests/resources/cfiles/included.h core/org.eclipse.cdt.core.tests/resources/cmodel/DeclaratorsTests.cpp core/org.eclipse.cdt.core.tests/resources/cmodel/IIncludeTest.h core/org.eclipse.cdt.core.tests/resources/cmodel/IMacroTest.h core/org.eclipse.cdt.core.tests/resources/cmodel/IStructure.cpp core/org.eclipse.cdt.core.tests/resources/cmodel/ITemplate.cpp core/org.eclipse.cdt.core.tests/resources/cmodel/MacroTests.cpp core/org.eclipse.cdt.core.tests/resources/dependency/DepTest.cpp core/org.eclipse.cdt.core.tests/resources/dependency/DepTest.h core/org.eclipse.cdt.core.tests/resources/dependency/DepTest2.cpp core/org.eclipse.cdt.core.tests/resources/dependency/DepTest2.h core/org.eclipse.cdt.core.tests/resources/dependency/DepTest3.cpp core/org.eclipse.cdt.core.tests/resources/dependency/DepTest3.h core/org.eclipse.cdt.core.tests/resources/dependency/Inc1.h core/org.eclipse.cdt.core.tests/resources/dependency/a.h core/org.eclipse.cdt.core.tests/resources/dependency/c.h core/org.eclipse.cdt.core.tests/resources/dependency/d.h core/org.eclipse.cdt.core.tests/resources/errortests/output-1 core/org.eclipse.cdt.core.tests/resources/exe/Makefile core/org.eclipse.cdt.core.tests/resources/exe/common.mk core/org.eclipse.cdt.core.tests/resources/exe/main.c core/org.eclipse.cdt.core.tests/resources/exe/ppc/Makefile core/org.eclipse.cdt.core.tests/resources/exe/ppc/be.g/Makefile core/org.eclipse.cdt.core.tests/resources/exe/ppc/be.g/exe_g core/org.eclipse.cdt.core.tests/resources/exe/ppc/be.g/main.o core/org.eclipse.cdt.core.tests/resources/exe/ppc/be.g/test.o core/org.eclipse.cdt.core.tests/resources/exe/ppc/be.g/test2.o core/org.eclipse.cdt.core.tests/resources/exe/test.c core/org.eclipse.cdt.core.tests/resources/exe/test2.c core/org.eclipse.cdt.core.tests/resources/exe/x86/Makefile core/org.eclipse.cdt.core.tests/resources/exe/x86/o.g/Makefile core/org.eclipse.cdt.core.tests/resources/exe/x86/o.g/exe_g core/org.eclipse.cdt.core.tests/resources/exe/x86/o.g/main.o core/org.eclipse.cdt.core.tests/resources/exe/x86/o.g/test.o core/org.eclipse.cdt.core.tests/resources/exe/x86/o.g/test2.o core/org.eclipse.cdt.core.tests/resources/exe/x86/o/Makefile core/org.eclipse.cdt.core.tests/resources/exe/x86/o/exe core/org.eclipse.cdt.core.tests/resources/exe/x86/o/main.o core/org.eclipse.cdt.core.tests/resources/exe/x86/o/test.o core/org.eclipse.cdt.core.tests/resources/exe/x86/o/test2.o core/org.eclipse.cdt.core.tests/resources/exebig/Makefile core/org.eclipse.cdt.core.tests/resources/exebig/common.mk core/org.eclipse.cdt.core.tests/resources/exebig/main.c core/org.eclipse.cdt.core.tests/resources/exebig/x86/Makefile core/org.eclipse.cdt.core.tests/resources/exebig/x86/o.g/Makefile core/org.eclipse.cdt.core.tests/resources/exebig/x86/o.g/exebig_g core/org.eclipse.cdt.core.tests/resources/exebig/x86/o.g/main.o core/org.eclipse.cdt.core.tests/resources/indexTests/includes/included.h core/org.eclipse.cdt.core.tests/resources/indexTests/includes/notIncluded.h core/org.eclipse.cdt.core.tests/resources/indexTests/includes/testInclude.cpp core/org.eclipse.cdt.core.tests/resources/indexTests/search/enumerator.cpp core/org.eclipse.cdt.core.tests/resources/indexTests/search/nested.cpp core/org.eclipse.cdt.core.tests/resources/indexTests/search/staticFunc1.cpp core/org.eclipse.cdt.core.tests/resources/indexTests/search/staticFunc2.cpp core/org.eclipse.cdt.core.tests/resources/indexTests/trilogy/trilogy.cpp core/org.eclipse.cdt.core.tests/resources/indexer/DocumentManager.cpp core/org.eclipse.cdt.core.tests/resources/indexer/DocumentManager.h core/org.eclipse.cdt.core.tests/resources/indexer/extramail.cpp core/org.eclipse.cdt.core.tests/resources/indexer/mail.cpp core/org.eclipse.cdt.core.tests/resources/indexer/reftest.cpp core/org.eclipse.cdt.core.tests/resources/parser/AutomatedTest/AutomatedTest.properties core/org.eclipse.cdt.core.tests/resources/parser/AutomatedTest/FractionalAutomatedTest.properties core/org.eclipse.cdt.core.tests/resources/parser/AutomatedTest/defaultC/Simple.c core/org.eclipse.cdt.core.tests/resources/parser/AutomatedTest/defaultC/Simple.h core/org.eclipse.cdt.core.tests/resources/parser/AutomatedTest/defaultCpp/Simple.cpp core/org.eclipse.cdt.core.tests/resources/parser/AutomatedTest/defaultCpp/Simple.h core/org.eclipse.cdt.core.tests/resources/parser/LineNumberTest.h core/org.eclipse.cdt.core.tests/resources/parser/TortureTest/.cvsignore core/org.eclipse.cdt.core.tests/resources/parser/TortureTest/ReadMe-TortureText.txt core/org.eclipse.cdt.core.tests/resources/pdomtests/classTests/class.cpp core/org.eclipse.cdt.core.tests/resources/pdomtests/classTests/nested.cpp core/org.eclipse.cdt.core.tests/resources/pdomtests/classTests/pr147903.cpp core/org.eclipse.cdt.core.tests/resources/pdomtests/compositeTypeTests/compositeType.c core/org.eclipse.cdt.core.tests/resources/pdomtests/compositeTypeTests/compositeType.cpp core/org.eclipse.cdt.core.tests/resources/pdomtests/defDeclTests/func.c core/org.eclipse.cdt.core.tests/resources/pdomtests/defDeclTests/second.c core/org.eclipse.cdt.core.tests/resources/pdomtests/defDeclTests/types.c core/org.eclipse.cdt.core.tests/resources/pdomtests/defDeclTests/vars.c core/org.eclipse.cdt.core.tests/resources/pdomtests/enumerationTests/enumTest.c core/org.eclipse.cdt.core.tests/resources/pdomtests/enumerationTests/enumTest.cpp core/org.eclipse.cdt.core.tests/resources/pdomtests/fieldTests/fields.cpp core/org.eclipse.cdt.core.tests/resources/pdomtests/filesOnReindex/simple.cpp core/org.eclipse.cdt.core.tests/resources/pdomtests/functionTests/declarations.c core/org.eclipse.cdt.core.tests/resources/pdomtests/functionTests/declarations.cpp core/org.eclipse.cdt.core.tests/resources/pdomtests/functionTests/modifiers.c core/org.eclipse.cdt.core.tests/resources/pdomtests/functionTests/modifiers.cpp core/org.eclipse.cdt.core.tests/resources/pdomtests/functionTests/overloaded.cpp core/org.eclipse.cdt.core.tests/resources/pdomtests/includesTests/I1.cpp core/org.eclipse.cdt.core.tests/resources/pdomtests/includesTests/I1.h core/org.eclipse.cdt.core.tests/resources/pdomtests/includesTests/I2.cpp core/org.eclipse.cdt.core.tests/resources/pdomtests/includesTests/I2.h core/org.eclipse.cdt.core.tests/resources/pdomtests/includesTests/I3.cpp core/org.eclipse.cdt.core.tests/resources/pdomtests/includesTests/I3.h core/org.eclipse.cdt.core.tests/resources/pdomtests/includesTests/I4.cpp core/org.eclipse.cdt.core.tests/resources/pdomtests/includesTests/I4.h core/org.eclipse.cdt.core.tests/resources/pdomtests/includesTests/I5.cpp core/org.eclipse.cdt.core.tests/resources/pdomtests/includesTests/I5.h core/org.eclipse.cdt.core.tests/resources/pdomtests/methodTests/inheritance.cpp core/org.eclipse.cdt.core.tests/resources/pdomtests/namespaceTests/extend.cpp core/org.eclipse.cdt.core.tests/resources/pdomtests/namespaceTests/friend.cpp core/org.eclipse.cdt.core.tests/resources/pdomtests/namespaceTests/namespace.cpp core/org.eclipse.cdt.core.tests/resources/pdomtests/namespaceTests/overload.cpp core/org.eclipse.cdt.core.tests/resources/pdomtests/namespaceTests/unnamed.cpp core/org.eclipse.cdt.core.tests/resources/pdomtests/overloadsWithinCommonHeader/common.h core/org.eclipse.cdt.core.tests/resources/pdomtests/overloadsWithinCommonHeader/manyOverloadedClientA.cpp core/org.eclipse.cdt.core.tests/resources/pdomtests/overloadsWithinCommonHeader/manyOverloadedClientB.cpp core/org.eclipse.cdt.core.tests/resources/pdomtests/overloadsWithinSingleTU/withinSingleTranslationUnit.cpp core/org.eclipse.cdt.core.tests/resources/pdomtests/searchTests/Class1.cpp core/org.eclipse.cdt.core.tests/resources/pdomtests/searchTests/Class1.h core/org.eclipse.cdt.core.tests/resources/pdomtests/searchTests/Class2.cpp core/org.eclipse.cdt.core.tests/resources/pdomtests/searchTests/Class2.h core/org.eclipse.cdt.core.tests/resources/pdomtests/searchTests/main.cpp core/org.eclipse.cdt.core.tests/resources/pdomtests/types/bug145351.c core/org.eclipse.cdt.core.tests/resources/pdomtests/types/typedef.c core/org.eclipse.cdt.core.tests/resources/pdomtests/types/typedef.cpp core/org.eclipse.cdt.core.tests/resources/pdomtests/variableTests/variables.c core/org.eclipse.cdt.core.tests/resources/pdomtests/variableTests/variables.cpp core/org.eclipse.cdt.core.tests/resources/search/classDecl.cpp core/org.eclipse.cdt.core.tests/resources/search/include.h core/org.eclipse.cdt.core.tests/resources/testlib/Makefile core/org.eclipse.cdt.core.tests/resources/testlib/common.mk core/org.eclipse.cdt.core.tests/resources/testlib/test.c core/org.eclipse.cdt.core.tests/resources/testlib/test2.c core/org.eclipse.cdt.core.tests/resources/testlib/x86/Makefile core/org.eclipse.cdt.core.tests/resources/testlib/x86/a.g/Makefile core/org.eclipse.cdt.core.tests/resources/testlib/x86/a.g/libtestlib_g.a core/org.eclipse.cdt.core.tests/resources/testlib/x86/a.g/test.o core/org.eclipse.cdt.core.tests/resources/testlib/x86/a.g/test2.o core/org.eclipse.cdt.core.tests/resources/testlib/x86/so.g/Makefile core/org.eclipse.cdt.core.tests/resources/testlib/x86/so.g/libtestlib_g.so core/org.eclipse.cdt.core.tests/resources/testlib/x86/so.g/libtestlib_gS.a core/org.eclipse.cdt.core.tests/resources/testlib/x86/so.g/test.o core/org.eclipse.cdt.core.tests/resources/testlib/x86/so.g/test2.o core/org.eclipse.cdt.core.tests/resources/zips/CManaged.zip core/org.eclipse.cdt.core.tests/resources/zips/CPPManaged.zip core/org.eclipse.cdt.core.tests/resources/zips/CPPStandard.zip core/org.eclipse.cdt.core.tests/resources/zips/CStandard.zip core/org.eclipse.cdt.core.tests/suite/org/eclipse/cdt/core/suite/AISResultPrinter.java core/org.eclipse.cdt.core.tests/suite/org/eclipse/cdt/core/suite/AutomatedIntegrationSuite.java core/org.eclipse.cdt.core.tests/suite/org/eclipse/cdt/core/suite/ProjectCreator.java core/org.eclipse.cdt.core.tests/suite/org/eclipse/cdt/core/testplugin/CElementDecorator.java core/org.eclipse.cdt.core.tests/suite/org/eclipse/cdt/core/testplugin/CProjectHelper.java core/org.eclipse.cdt.core.tests/suite/org/eclipse/cdt/core/testplugin/CTestPlugin.java core/org.eclipse.cdt.core.tests/suite/org/eclipse/cdt/core/testplugin/CTestSetup.java core/org.eclipse.cdt.core.tests/suite/org/eclipse/cdt/core/testplugin/FileManager.java core/org.eclipse.cdt.core.tests/suite/org/eclipse/cdt/core/testplugin/Main.java core/org.eclipse.cdt.core.tests/suite/org/eclipse/cdt/core/testplugin/NewMain.java core/org.eclipse.cdt.core.tests/suite/org/eclipse/cdt/core/testplugin/TestPluginLauncher.java core/org.eclipse.cdt.core.tests/suite/org/eclipse/cdt/core/testplugin/TestProject.java core/org.eclipse.cdt.core.tests/suite/org/eclipse/cdt/core/testplugin/TestScannerInfo.java core/org.eclipse.cdt.core.tests/suite/org/eclipse/cdt/core/testplugin/TestScannerProvider.java core/org.eclipse.cdt.core.tests/suite/org/eclipse/cdt/core/testplugin/util/AccessibilityTestPass.java core/org.eclipse.cdt.core.tests/suite/org/eclipse/cdt/core/testplugin/util/BaseTestCase.java core/org.eclipse.cdt.core.tests/suite/org/eclipse/cdt/core/testplugin/util/ExpectedStrings.java core/org.eclipse.cdt.core.tests/suite/org/eclipse/cdt/core/testplugin/util/ExpectedStringsTests.java core/org.eclipse.cdt.core.tests/suite/org/eclipse/cdt/core/testplugin/util/FailureDialog.java core/org.eclipse.cdt.core.tests/suite/org/eclipse/cdt/core/testplugin/util/FocusTestPass.java core/org.eclipse.cdt.core.tests/suite/org/eclipse/cdt/core/testplugin/util/IDialogTestPass.java core/org.eclipse.cdt.core.tests/suite/org/eclipse/cdt/core/testplugin/util/SizingTestPass.java core/org.eclipse.cdt.core.tests/suite/org/eclipse/cdt/core/testplugin/util/TestSourceReader.java core/org.eclipse.cdt.core.tests/suite/org/eclipse/cdt/core/testplugin/util/VerifyDialog.java core/org.eclipse.cdt.core.tests/test.xml core/org.eclipse.cdt.core.win32/.classpath core/org.eclipse.cdt.core.win32/.cvsignore core/org.eclipse.cdt.core.win32/.project core/org.eclipse.cdt.core.win32/ChangeLog core/org.eclipse.cdt.core.win32/META-INF/MANIFEST.MF core/org.eclipse.cdt.core.win32/about.html core/org.eclipse.cdt.core.win32/build.properties core/org.eclipse.cdt.core.win32/fragment.xml core/org.eclipse.cdt.core.win32/library/Makefile core/org.eclipse.cdt.core.win32/library/Spawner.h core/org.eclipse.cdt.core.win32/library/SpawnerInputStream.h core/org.eclipse.cdt.core.win32/library/SpawnerOutputStream.h core/org.eclipse.cdt.core.win32/library/StdAfx.c core/org.eclipse.cdt.core.win32/library/StdAfx.h core/org.eclipse.cdt.core.win32/library/Win32ProcessEx.c core/org.eclipse.cdt.core.win32/library/iostream.c core/org.eclipse.cdt.core.win32/library/listtasks/StdAfx.cpp core/org.eclipse.cdt.core.win32/library/listtasks/StdAfx.h core/org.eclipse.cdt.core.win32/library/listtasks/listtasks.cpp core/org.eclipse.cdt.core.win32/library/listtasks/listtasks.dsp core/org.eclipse.cdt.core.win32/library/listtasks/listtasks.dsw core/org.eclipse.cdt.core.win32/library/listtasks/listtasks.h core/org.eclipse.cdt.core.win32/library/nmake.mak core/org.eclipse.cdt.core.win32/library/raise.c core/org.eclipse.cdt.core.win32/library/spawner.c core/org.eclipse.cdt.core.win32/library/spawner.dep core/org.eclipse.cdt.core.win32/library/spawner.dsp core/org.eclipse.cdt.core.win32/library/spawner.dsw core/org.eclipse.cdt.core.win32/library/spawner.mak core/org.eclipse.cdt.core.win32/library/starter/starter.cpp core/org.eclipse.cdt.core.win32/library/starter/starter.dep core/org.eclipse.cdt.core.win32/library/starter/starter.dsp core/org.eclipse.cdt.core.win32/library/starter/starter.dsw core/org.eclipse.cdt.core.win32/library/starter/starter.mak core/org.eclipse.cdt.core.win32/library/winreg.cpp core/org.eclipse.cdt.core.win32/nmake.launch core/org.eclipse.cdt.core.win32/os/win32/x86/.cvsignore core/org.eclipse.cdt.core.win32/os/win32/x86/listtasks.exe core/org.eclipse.cdt.core.win32/os/win32/x86/spawner.dll core/org.eclipse.cdt.core.win32/os/win32/x86/starter.exe core/org.eclipse.cdt.core.win32/os/win32/x86/winreg.dll core/org.eclipse.cdt.core.win32/src/org/eclipse/cdt/internal/core/win32/ProcessInfo.java core/org.eclipse.cdt.core.win32/src/org/eclipse/cdt/internal/core/win32/ProcessList.java core/org.eclipse.cdt.core/.classpath core/org.eclipse.cdt.core/.cvsignore core/org.eclipse.cdt.core/.options core/org.eclipse.cdt.core/.project core/org.eclipse.cdt.core/.settings/org.eclipse.core.resources.prefs core/org.eclipse.cdt.core/.settings/org.eclipse.jdt.core.prefs core/org.eclipse.cdt.core/.settings/org.eclipse.jdt.ui.prefs core/org.eclipse.cdt.core/ChangeLog core/org.eclipse.cdt.core/ChangeLog-2003 core/org.eclipse.cdt.core/META-INF/MANIFEST.MF core/org.eclipse.cdt.core/about.html core/org.eclipse.cdt.core/browser/ChangeLog-browser core/org.eclipse.cdt.core/browser/org/eclipse/cdt/core/browser/AllTypesCache.java core/org.eclipse.cdt.core/browser/org/eclipse/cdt/core/browser/IQualifiedTypeName.java core/org.eclipse.cdt.core/browser/org/eclipse/cdt/core/browser/ITypeInfo.java core/org.eclipse.cdt.core/browser/org/eclipse/cdt/core/browser/ITypeInfoVisitor.java core/org.eclipse.cdt.core/browser/org/eclipse/cdt/core/browser/ITypeReference.java core/org.eclipse.cdt.core/browser/org/eclipse/cdt/core/browser/ITypeSearchScope.java core/org.eclipse.cdt.core/browser/org/eclipse/cdt/core/browser/IWorkingCopyProvider.java core/org.eclipse.cdt.core/browser/org/eclipse/cdt/core/browser/PDOMTypeInfo.java core/org.eclipse.cdt.core/browser/org/eclipse/cdt/core/browser/PDOMTypeReference.java core/org.eclipse.cdt.core/browser/org/eclipse/cdt/core/browser/PathUtil.java core/org.eclipse.cdt.core/browser/org/eclipse/cdt/core/browser/QualifiedTypeName.java core/org.eclipse.cdt.core/browser/org/eclipse/cdt/core/browser/Signature.java core/org.eclipse.cdt.core/browser/org/eclipse/cdt/core/browser/TypeInfo.java core/org.eclipse.cdt.core/browser/org/eclipse/cdt/core/browser/TypeReference.java core/org.eclipse.cdt.core/browser/org/eclipse/cdt/core/browser/TypeSearchScope.java core/org.eclipse.cdt.core/browser/org/eclipse/cdt/core/browser/TypeUtil.java core/org.eclipse.cdt.core/browser/org/eclipse/cdt/core/browser/UnknownTypeInfo.java core/org.eclipse.cdt.core/browser/org/eclipse/cdt/internal/core/browser/util/ArrayUtil.java core/org.eclipse.cdt.core/browser/org/eclipse/cdt/internal/core/browser/util/DelegatedProgressMonitor.java core/org.eclipse.cdt.core/browser/org/eclipse/cdt/internal/core/browser/util/SimpleStack.java core/org.eclipse.cdt.core/build.properties core/org.eclipse.cdt.core/model/org/eclipse/cdt/core/model/AbstractLanguage.java core/org.eclipse.cdt.core/model/org/eclipse/cdt/core/model/BufferChangedEvent.java core/org.eclipse.cdt.core/model/org/eclipse/cdt/core/model/CModelException.java core/org.eclipse.cdt.core/model/org/eclipse/cdt/core/model/CoreModel.java core/org.eclipse.cdt.core/model/org/eclipse/cdt/core/model/CoreModelUtil.java core/org.eclipse.cdt.core/model/org/eclipse/cdt/core/model/ElementChangedEvent.java core/org.eclipse.cdt.core/model/org/eclipse/cdt/core/model/Flags.java core/org.eclipse.cdt.core/model/org/eclipse/cdt/core/model/IArchive.java core/org.eclipse.cdt.core/model/org/eclipse/cdt/core/model/IArchiveContainer.java core/org.eclipse.cdt.core/model/org/eclipse/cdt/core/model/IBinary.java core/org.eclipse.cdt.core/model/org/eclipse/cdt/core/model/IBinaryContainer.java core/org.eclipse.cdt.core/model/org/eclipse/cdt/core/model/IBinaryElement.java core/org.eclipse.cdt.core/model/org/eclipse/cdt/core/model/IBinaryFunction.java core/org.eclipse.cdt.core/model/org/eclipse/cdt/core/model/IBinaryModule.java core/org.eclipse.cdt.core/model/org/eclipse/cdt/core/model/IBinaryVariable.java core/org.eclipse.cdt.core/model/org/eclipse/cdt/core/model/IBuffer.java core/org.eclipse.cdt.core/model/org/eclipse/cdt/core/model/IBufferChangedListener.java core/org.eclipse.cdt.core/model/org/eclipse/cdt/core/model/ICContainer.java core/org.eclipse.cdt.core/model/org/eclipse/cdt/core/model/ICElement.java core/org.eclipse.cdt.core/model/org/eclipse/cdt/core/model/ICElementDelta.java core/org.eclipse.cdt.core/model/org/eclipse/cdt/core/model/ICElementVisitor.java core/org.eclipse.cdt.core/model/org/eclipse/cdt/core/model/ICModel.java core/org.eclipse.cdt.core/model/org/eclipse/cdt/core/model/ICModelMarker.java core/org.eclipse.cdt.core/model/org/eclipse/cdt/core/model/ICModelStatus.java core/org.eclipse.cdt.core/model/org/eclipse/cdt/core/model/ICModelStatusConstants.java core/org.eclipse.cdt.core/model/org/eclipse/cdt/core/model/ICProject.java core/org.eclipse.cdt.core/model/org/eclipse/cdt/core/model/IContainerEntry.java core/org.eclipse.cdt.core/model/org/eclipse/cdt/core/model/IContributedCElement.java core/org.eclipse.cdt.core/model/org/eclipse/cdt/core/model/IContributedModelBuilder.java core/org.eclipse.cdt.core/model/org/eclipse/cdt/core/model/IDeclaration.java core/org.eclipse.cdt.core/model/org/eclipse/cdt/core/model/IElementChangedListener.java core/org.eclipse.cdt.core/model/org/eclipse/cdt/core/model/IEnumeration.java core/org.eclipse.cdt.core/model/org/eclipse/cdt/core/model/IEnumerator.java core/org.eclipse.cdt.core/model/org/eclipse/cdt/core/model/IField.java core/org.eclipse.cdt.core/model/org/eclipse/cdt/core/model/IFunction.java core/org.eclipse.cdt.core/model/org/eclipse/cdt/core/model/IFunctionDeclaration.java core/org.eclipse.cdt.core/model/org/eclipse/cdt/core/model/IFunctionTemplate.java core/org.eclipse.cdt.core/model/org/eclipse/cdt/core/model/IFunctionTemplateDeclaration.java core/org.eclipse.cdt.core/model/org/eclipse/cdt/core/model/IInclude.java core/org.eclipse.cdt.core/model/org/eclipse/cdt/core/model/IIncludeEntry.java core/org.eclipse.cdt.core/model/org/eclipse/cdt/core/model/IIncludeFileEntry.java core/org.eclipse.cdt.core/model/org/eclipse/cdt/core/model/IIncludeReference.java core/org.eclipse.cdt.core/model/org/eclipse/cdt/core/model/IInheritance.java core/org.eclipse.cdt.core/model/org/eclipse/cdt/core/model/ILanguage.java core/org.eclipse.cdt.core/model/org/eclipse/cdt/core/model/ILanguageDescriptor.java core/org.eclipse.cdt.core/model/org/eclipse/cdt/core/model/ILibraryEntry.java core/org.eclipse.cdt.core/model/org/eclipse/cdt/core/model/ILibraryReference.java core/org.eclipse.cdt.core/model/org/eclipse/cdt/core/model/IMacro.java core/org.eclipse.cdt.core/model/org/eclipse/cdt/core/model/IMacroEntry.java core/org.eclipse.cdt.core/model/org/eclipse/cdt/core/model/IMacroFileEntry.java core/org.eclipse.cdt.core/model/org/eclipse/cdt/core/model/IMember.java core/org.eclipse.cdt.core/model/org/eclipse/cdt/core/model/IMethod.java core/org.eclipse.cdt.core/model/org/eclipse/cdt/core/model/IMethodDeclaration.java core/org.eclipse.cdt.core/model/org/eclipse/cdt/core/model/IMethodTemplate.java core/org.eclipse.cdt.core/model/org/eclipse/cdt/core/model/IMethodTemplateDeclaration.java core/org.eclipse.cdt.core/model/org/eclipse/cdt/core/model/INamespace.java core/org.eclipse.cdt.core/model/org/eclipse/cdt/core/model/IOpenable.java core/org.eclipse.cdt.core/model/org/eclipse/cdt/core/model/IOutputEntry.java core/org.eclipse.cdt.core/model/org/eclipse/cdt/core/model/IParent.java core/org.eclipse.cdt.core/model/org/eclipse/cdt/core/model/IPathEntry.java core/org.eclipse.cdt.core/model/org/eclipse/cdt/core/model/IPathEntryContainer.java core/org.eclipse.cdt.core/model/org/eclipse/cdt/core/model/IPathEntryContainerExtension.java core/org.eclipse.cdt.core/model/org/eclipse/cdt/core/model/IProblemRequestor.java core/org.eclipse.cdt.core/model/org/eclipse/cdt/core/model/IProjectEntry.java core/org.eclipse.cdt.core/model/org/eclipse/cdt/core/model/IRegion.java core/org.eclipse.cdt.core/model/org/eclipse/cdt/core/model/ISourceEntry.java core/org.eclipse.cdt.core/model/org/eclipse/cdt/core/model/ISourceManipulation.java core/org.eclipse.cdt.core/model/org/eclipse/cdt/core/model/ISourceRange.java core/org.eclipse.cdt.core/model/org/eclipse/cdt/core/model/ISourceReference.java core/org.eclipse.cdt.core/model/org/eclipse/cdt/core/model/ISourceRoot.java core/org.eclipse.cdt.core/model/org/eclipse/cdt/core/model/IStructure.java core/org.eclipse.cdt.core/model/org/eclipse/cdt/core/model/IStructureDeclaration.java core/org.eclipse.cdt.core/model/org/eclipse/cdt/core/model/IStructureTemplate.java core/org.eclipse.cdt.core/model/org/eclipse/cdt/core/model/IStructureTemplateDeclaration.java core/org.eclipse.cdt.core/model/org/eclipse/cdt/core/model/ITemplate.java core/org.eclipse.cdt.core/model/org/eclipse/cdt/core/model/ITranslationUnit.java core/org.eclipse.cdt.core/model/org/eclipse/cdt/core/model/ITypeDef.java core/org.eclipse.cdt.core/model/org/eclipse/cdt/core/model/IUsing.java core/org.eclipse.cdt.core/model/org/eclipse/cdt/core/model/IVariable.java core/org.eclipse.cdt.core/model/org/eclipse/cdt/core/model/IVariableDeclaration.java core/org.eclipse.cdt.core/model/org/eclipse/cdt/core/model/IWorkingCopy.java core/org.eclipse.cdt.core/model/org/eclipse/cdt/core/model/IWorkingCopyProvider.java core/org.eclipse.cdt.core/model/org/eclipse/cdt/core/model/LanguageManager.java core/org.eclipse.cdt.core/model/org/eclipse/cdt/core/model/PathEntryContainerChanged.java core/org.eclipse.cdt.core/model/org/eclipse/cdt/core/model/PathEntryContainerInitializer.java core/org.eclipse.cdt.core/model/org/eclipse/cdt/core/model/util/IQualifiedTypeName.java core/org.eclipse.cdt.core/model/org/eclipse/cdt/core/model/util/QualifiedTypeName.java core/org.eclipse.cdt.core/model/org/eclipse/cdt/core/model/util/Signature.java core/org.eclipse.cdt.core/model/org/eclipse/cdt/core/model/util/TypeUtil.java core/org.eclipse.cdt.core/model/org/eclipse/cdt/core/settings/model/CIncludeFileEntry.java core/org.eclipse.cdt.core/model/org/eclipse/cdt/core/settings/model/CIncludePathEntry.java core/org.eclipse.cdt.core/model/org/eclipse/cdt/core/settings/model/CLibraryFileEntry.java core/org.eclipse.cdt.core/model/org/eclipse/cdt/core/settings/model/CLibraryPathEntry.java core/org.eclipse.cdt.core/model/org/eclipse/cdt/core/settings/model/CMacroEntry.java core/org.eclipse.cdt.core/model/org/eclipse/cdt/core/settings/model/CMacroFileEntry.java core/org.eclipse.cdt.core/model/org/eclipse/cdt/core/settings/model/COutputEntry.java core/org.eclipse.cdt.core/model/org/eclipse/cdt/core/settings/model/CSourceEntry.java core/org.eclipse.cdt.core/model/org/eclipse/cdt/core/settings/model/ICBuildSetting.java core/org.eclipse.cdt.core/model/org/eclipse/cdt/core/settings/model/ICConfigExtensionReference.java core/org.eclipse.cdt.core/model/org/eclipse/cdt/core/settings/model/ICConfigurationDescription.java core/org.eclipse.cdt.core/model/org/eclipse/cdt/core/settings/model/ICExclusionPatternPathEntry.java core/org.eclipse.cdt.core/model/org/eclipse/cdt/core/settings/model/ICExternalSetting.java core/org.eclipse.cdt.core/model/org/eclipse/cdt/core/settings/model/ICFileDescription.java core/org.eclipse.cdt.core/model/org/eclipse/cdt/core/settings/model/ICFolderDescription.java core/org.eclipse.cdt.core/model/org/eclipse/cdt/core/settings/model/ICIncludeFileEntry.java core/org.eclipse.cdt.core/model/org/eclipse/cdt/core/settings/model/ICIncludePathEntry.java core/org.eclipse.cdt.core/model/org/eclipse/cdt/core/settings/model/ICLanguageSetting.java core/org.eclipse.cdt.core/model/org/eclipse/cdt/core/settings/model/ICLanguageSettingEntry.java core/org.eclipse.cdt.core/model/org/eclipse/cdt/core/settings/model/ICLanguageSettingPathEntry.java core/org.eclipse.cdt.core/model/org/eclipse/cdt/core/settings/model/ICLibraryFileEntry.java core/org.eclipse.cdt.core/model/org/eclipse/cdt/core/settings/model/ICLibraryPathEntry.java core/org.eclipse.cdt.core/model/org/eclipse/cdt/core/settings/model/ICMacroEntry.java core/org.eclipse.cdt.core/model/org/eclipse/cdt/core/settings/model/ICMacroFileEntry.java core/org.eclipse.cdt.core/model/org/eclipse/cdt/core/settings/model/ICOutputEntry.java core/org.eclipse.cdt.core/model/org/eclipse/cdt/core/settings/model/ICPathEntry.java core/org.eclipse.cdt.core/model/org/eclipse/cdt/core/settings/model/ICProjectDescription.java core/org.eclipse.cdt.core/model/org/eclipse/cdt/core/settings/model/ICResourceDescription.java core/org.eclipse.cdt.core/model/org/eclipse/cdt/core/settings/model/ICSettingBase.java core/org.eclipse.cdt.core/model/org/eclipse/cdt/core/settings/model/ICSettingContainer.java core/org.eclipse.cdt.core/model/org/eclipse/cdt/core/settings/model/ICSettingEntry.java core/org.eclipse.cdt.core/model/org/eclipse/cdt/core/settings/model/ICSettingObject.java core/org.eclipse.cdt.core/model/org/eclipse/cdt/core/settings/model/ICSettingsStorage.java core/org.eclipse.cdt.core/model/org/eclipse/cdt/core/settings/model/ICSourceEntry.java core/org.eclipse.cdt.core/model/org/eclipse/cdt/core/settings/model/ICStorageElement.java core/org.eclipse.cdt.core/model/org/eclipse/cdt/core/settings/model/ICTargetPlatformSetting.java core/org.eclipse.cdt.core/model/org/eclipse/cdt/core/settings/model/WriteAccessException.java core/org.eclipse.cdt.core/model/org/eclipse/cdt/core/settings/model/extension/CBuildData.java core/org.eclipse.cdt.core/model/org/eclipse/cdt/core/settings/model/extension/CConfigurationData.java core/org.eclipse.cdt.core/model/org/eclipse/cdt/core/settings/model/extension/CConfigurationDataProvider.java core/org.eclipse.cdt.core/model/org/eclipse/cdt/core/settings/model/extension/CDataObject.java core/org.eclipse.cdt.core/model/org/eclipse/cdt/core/settings/model/extension/CFileData.java core/org.eclipse.cdt.core/model/org/eclipse/cdt/core/settings/model/extension/CFolderData.java core/org.eclipse.cdt.core/model/org/eclipse/cdt/core/settings/model/extension/CLanguageData.java core/org.eclipse.cdt.core/model/org/eclipse/cdt/core/settings/model/extension/CResourceData.java core/org.eclipse.cdt.core/model/org/eclipse/cdt/core/settings/model/extension/CTargetPlatformData.java core/org.eclipse.cdt.core/model/org/eclipse/cdt/core/settings/model/extension/ICProjectConverter.java core/org.eclipse.cdt.core/model/org/eclipse/cdt/core/settings/model/extension/impl/CDataFacroty.java core/org.eclipse.cdt.core/model/org/eclipse/cdt/core/settings/model/extension/impl/CDefaultBuildData.java core/org.eclipse.cdt.core/model/org/eclipse/cdt/core/settings/model/extension/impl/CDefaultConfigurationData.java core/org.eclipse.cdt.core/model/org/eclipse/cdt/core/settings/model/extension/impl/CDefaultFileData.java core/org.eclipse.cdt.core/model/org/eclipse/cdt/core/settings/model/extension/impl/CDefaultFolderData.java core/org.eclipse.cdt.core/model/org/eclipse/cdt/core/settings/model/extension/impl/CDefaultLanguageData.java core/org.eclipse.cdt.core/model/org/eclipse/cdt/core/settings/model/extension/impl/CDefaultTargetPlatformData.java core/org.eclipse.cdt.core/model/org/eclipse/cdt/core/settings/model/extension/impl/CResourceDataContainer.java core/org.eclipse.cdt.core/model/org/eclipse/cdt/core/settings/model/util/CDataUtil.java core/org.eclipse.cdt.core/model/org/eclipse/cdt/core/settings/model/util/CEntriesSet.java core/org.eclipse.cdt.core/model/org/eclipse/cdt/core/settings/model/util/CExtensionUtil.java core/org.eclipse.cdt.core/model/org/eclipse/cdt/core/settings/model/util/Comparator.java core/org.eclipse.cdt.core/model/org/eclipse/cdt/core/settings/model/util/EntryNameKey.java core/org.eclipse.cdt.core/model/org/eclipse/cdt/core/settings/model/util/EntryStore.java core/org.eclipse.cdt.core/model/org/eclipse/cdt/core/settings/model/util/IKindBasedInfo.java core/org.eclipse.cdt.core/model/org/eclipse/cdt/core/settings/model/util/IPathSettingsContainerListener.java core/org.eclipse.cdt.core/model/org/eclipse/cdt/core/settings/model/util/IPathSettingsContainerVisitor.java core/org.eclipse.cdt.core/model/org/eclipse/cdt/core/settings/model/util/KindBasedStore.java core/org.eclipse.cdt.core/model/org/eclipse/cdt/core/settings/model/util/LanguageSettingEntriesSerializer.java core/org.eclipse.cdt.core/model/org/eclipse/cdt/core/settings/model/util/ListComparator.java core/org.eclipse.cdt.core/model/org/eclipse/cdt/core/settings/model/util/PathEntryResolveInfo.java core/org.eclipse.cdt.core/model/org/eclipse/cdt/core/settings/model/util/PathEntryResolveInfoElement.java core/org.eclipse.cdt.core/model/org/eclipse/cdt/core/settings/model/util/PathEntryTranslator.java core/org.eclipse.cdt.core/model/org/eclipse/cdt/core/settings/model/util/PathSettingsContainer.java core/org.eclipse.cdt.core/model/org/eclipse/cdt/core/settings/model/util/XmlStorageElement.java core/org.eclipse.cdt.core/model/org/eclipse/cdt/internal/core/language/LanguageMappingConfiguration.java core/org.eclipse.cdt.core/model/org/eclipse/cdt/internal/core/language/LanguageMappingStore.java core/org.eclipse.cdt.core/model/org/eclipse/cdt/internal/core/model/APathEntry.java core/org.eclipse.cdt.core/model/org/eclipse/cdt/internal/core/model/ASTHolderTUInfo.java core/org.eclipse.cdt.core/model/org/eclipse/cdt/internal/core/model/ASTStringUtil.java core/org.eclipse.cdt.core/model/org/eclipse/cdt/internal/core/model/Archive.java core/org.eclipse.cdt.core/model/org/eclipse/cdt/internal/core/model/ArchiveContainer.java core/org.eclipse.cdt.core/model/org/eclipse/cdt/internal/core/model/ArchiveContainerInfo.java core/org.eclipse.cdt.core/model/org/eclipse/cdt/internal/core/model/ArchiveInfo.java core/org.eclipse.cdt.core/model/org/eclipse/cdt/internal/core/model/BatchOperation.java core/org.eclipse.cdt.core/model/org/eclipse/cdt/internal/core/model/Binary.java core/org.eclipse.cdt.core/model/org/eclipse/cdt/internal/core/model/BinaryContainer.java core/org.eclipse.cdt.core/model/org/eclipse/cdt/internal/core/model/BinaryContainerInfo.java core/org.eclipse.cdt.core/model/org/eclipse/cdt/internal/core/model/BinaryElement.java core/org.eclipse.cdt.core/model/org/eclipse/cdt/internal/core/model/BinaryFunction.java core/org.eclipse.cdt.core/model/org/eclipse/cdt/internal/core/model/BinaryInfo.java core/org.eclipse.cdt.core/model/org/eclipse/cdt/internal/core/model/BinaryModule.java core/org.eclipse.cdt.core/model/org/eclipse/cdt/internal/core/model/BinaryParserConfig.java core/org.eclipse.cdt.core/model/org/eclipse/cdt/internal/core/model/BinaryRunner.java core/org.eclipse.cdt.core/model/org/eclipse/cdt/internal/core/model/BinaryVariable.java core/org.eclipse.cdt.core/model/org/eclipse/cdt/internal/core/model/Buffer.java core/org.eclipse.cdt.core/model/org/eclipse/cdt/internal/core/model/BufferManager.java core/org.eclipse.cdt.core/model/org/eclipse/cdt/internal/core/model/CContainer.java core/org.eclipse.cdt.core/model/org/eclipse/cdt/internal/core/model/CContainerInfo.java core/org.eclipse.cdt.core/model/org/eclipse/cdt/internal/core/model/CElement.java core/org.eclipse.cdt.core/model/org/eclipse/cdt/internal/core/model/CElementDelta.java core/org.eclipse.cdt.core/model/org/eclipse/cdt/internal/core/model/CElementDeltaBuilder.java core/org.eclipse.cdt.core/model/org/eclipse/cdt/internal/core/model/CElementInfo.java core/org.eclipse.cdt.core/model/org/eclipse/cdt/internal/core/model/CFileInfo.java core/org.eclipse.cdt.core/model/org/eclipse/cdt/internal/core/model/CModel.java core/org.eclipse.cdt.core/model/org/eclipse/cdt/internal/core/model/CModelBuilder.java core/org.eclipse.cdt.core/model/org/eclipse/cdt/internal/core/model/CModelBuilder2.java core/org.eclipse.cdt.core/model/org/eclipse/cdt/internal/core/model/CModelCache.java core/org.eclipse.cdt.core/model/org/eclipse/cdt/internal/core/model/CModelInfo.java core/org.eclipse.cdt.core/model/org/eclipse/cdt/internal/core/model/CModelManager.java core/org.eclipse.cdt.core/model/org/eclipse/cdt/internal/core/model/CModelOperation.java core/org.eclipse.cdt.core/model/org/eclipse/cdt/internal/core/model/CModelStatus.java core/org.eclipse.cdt.core/model/org/eclipse/cdt/internal/core/model/CProject.java core/org.eclipse.cdt.core/model/org/eclipse/cdt/internal/core/model/CProjectInfo.java core/org.eclipse.cdt.core/model/org/eclipse/cdt/internal/core/model/CShiftData.java core/org.eclipse.cdt.core/model/org/eclipse/cdt/internal/core/model/CommitWorkingCopyOperation.java core/org.eclipse.cdt.core/model/org/eclipse/cdt/internal/core/model/ContainerEntry.java core/org.eclipse.cdt.core/model/org/eclipse/cdt/internal/core/model/ContentTypeProcessor.java core/org.eclipse.cdt.core/model/org/eclipse/cdt/internal/core/model/CopyElementsOperation.java core/org.eclipse.cdt.core/model/org/eclipse/cdt/internal/core/model/CopyResourceElementsOperation.java core/org.eclipse.cdt.core/model/org/eclipse/cdt/internal/core/model/CoreModelMessages.java core/org.eclipse.cdt.core/model/org/eclipse/cdt/internal/core/model/CoreModelMessages.properties core/org.eclipse.cdt.core/model/org/eclipse/cdt/internal/core/model/CreateElementInTUOperation.java core/org.eclipse.cdt.core/model/org/eclipse/cdt/internal/core/model/CreateFieldOperation.java core/org.eclipse.cdt.core/model/org/eclipse/cdt/internal/core/model/CreateIncludeOperation.java core/org.eclipse.cdt.core/model/org/eclipse/cdt/internal/core/model/CreateMemberOperation.java core/org.eclipse.cdt.core/model/org/eclipse/cdt/internal/core/model/CreateMethodOperation.java core/org.eclipse.cdt.core/model/org/eclipse/cdt/internal/core/model/CreateNamespaceOperation.java core/org.eclipse.cdt.core/model/org/eclipse/cdt/internal/core/model/CreateSourceReferenceOperation.java core/org.eclipse.cdt.core/model/org/eclipse/cdt/internal/core/model/CreateUsingOperation.java core/org.eclipse.cdt.core/model/org/eclipse/cdt/internal/core/model/CreateWorkingCopyOperation.java core/org.eclipse.cdt.core/model/org/eclipse/cdt/internal/core/model/DefaultPathEntryStore.java core/org.eclipse.cdt.core/model/org/eclipse/cdt/internal/core/model/DeleteElementsOperation.java core/org.eclipse.cdt.core/model/org/eclipse/cdt/internal/core/model/DeleteResourceElementsOperation.java core/org.eclipse.cdt.core/model/org/eclipse/cdt/internal/core/model/DeltaProcessor.java core/org.eclipse.cdt.core/model/org/eclipse/cdt/internal/core/model/DestroyWorkingCopyOperation.java core/org.eclipse.cdt.core/model/org/eclipse/cdt/internal/core/model/ElementCache.java core/org.eclipse.cdt.core/model/org/eclipse/cdt/internal/core/model/Enumeration.java core/org.eclipse.cdt.core/model/org/eclipse/cdt/internal/core/model/EnumerationInfo.java core/org.eclipse.cdt.core/model/org/eclipse/cdt/internal/core/model/Enumerator.java core/org.eclipse.cdt.core/model/org/eclipse/cdt/internal/core/model/ExternalTranslationUnit.java core/org.eclipse.cdt.core/model/org/eclipse/cdt/internal/core/model/Field.java core/org.eclipse.cdt.core/model/org/eclipse/cdt/internal/core/model/FieldInfo.java core/org.eclipse.cdt.core/model/org/eclipse/cdt/internal/core/model/Function.java core/org.eclipse.cdt.core/model/org/eclipse/cdt/internal/core/model/FunctionDeclaration.java core/org.eclipse.cdt.core/model/org/eclipse/cdt/internal/core/model/FunctionInfo.java core/org.eclipse.cdt.core/model/org/eclipse/cdt/internal/core/model/FunctionTemplate.java core/org.eclipse.cdt.core/model/org/eclipse/cdt/internal/core/model/FunctionTemplateDeclaration.java core/org.eclipse.cdt.core/model/org/eclipse/cdt/internal/core/model/IBufferFactory.java core/org.eclipse.cdt.core/model/org/eclipse/cdt/internal/core/model/IConstants.java core/org.eclipse.cdt.core/model/org/eclipse/cdt/internal/core/model/IDebugLogConstants.java core/org.eclipse.cdt.core/model/org/eclipse/cdt/internal/core/model/Include.java core/org.eclipse.cdt.core/model/org/eclipse/cdt/internal/core/model/IncludeEntry.java core/org.eclipse.cdt.core/model/org/eclipse/cdt/internal/core/model/IncludeFileEntry.java core/org.eclipse.cdt.core/model/org/eclipse/cdt/internal/core/model/IncludeReference.java core/org.eclipse.cdt.core/model/org/eclipse/cdt/internal/core/model/LanguageDescriptor.java core/org.eclipse.cdt.core/model/org/eclipse/cdt/internal/core/model/LibraryEntry.java core/org.eclipse.cdt.core/model/org/eclipse/cdt/internal/core/model/LibraryReference.java core/org.eclipse.cdt.core/model/org/eclipse/cdt/internal/core/model/LibraryReferenceArchive.java core/org.eclipse.cdt.core/model/org/eclipse/cdt/internal/core/model/LibraryReferenceShared.java core/org.eclipse.cdt.core/model/org/eclipse/cdt/internal/core/model/Macro.java core/org.eclipse.cdt.core/model/org/eclipse/cdt/internal/core/model/MacroEntry.java core/org.eclipse.cdt.core/model/org/eclipse/cdt/internal/core/model/MacroFileEntry.java core/org.eclipse.cdt.core/model/org/eclipse/cdt/internal/core/model/Method.java core/org.eclipse.cdt.core/model/org/eclipse/cdt/internal/core/model/MethodDeclaration.java core/org.eclipse.cdt.core/model/org/eclipse/cdt/internal/core/model/MethodInfo.java core/org.eclipse.cdt.core/model/org/eclipse/cdt/internal/core/model/MethodTemplate.java core/org.eclipse.cdt.core/model/org/eclipse/cdt/internal/core/model/MethodTemplateDeclaration.java core/org.eclipse.cdt.core/model/org/eclipse/cdt/internal/core/model/MoveElementsOperation.java core/org.eclipse.cdt.core/model/org/eclipse/cdt/internal/core/model/MoveResourceElementsOperation.java core/org.eclipse.cdt.core/model/org/eclipse/cdt/internal/core/model/MultiOperation.java core/org.eclipse.cdt.core/model/org/eclipse/cdt/internal/core/model/Namespace.java core/org.eclipse.cdt.core/model/org/eclipse/cdt/internal/core/model/NullBinaryParser.java core/org.eclipse.cdt.core/model/org/eclipse/cdt/internal/core/model/Openable.java core/org.eclipse.cdt.core/model/org/eclipse/cdt/internal/core/model/OpenableInfo.java core/org.eclipse.cdt.core/model/org/eclipse/cdt/internal/core/model/OutputEntry.java core/org.eclipse.cdt.core/model/org/eclipse/cdt/internal/core/model/Parent.java core/org.eclipse.cdt.core/model/org/eclipse/cdt/internal/core/model/PathEntry.java core/org.eclipse.cdt.core/model/org/eclipse/cdt/internal/core/model/PathEntryContainerUpdatesOperation.java core/org.eclipse.cdt.core/model/org/eclipse/cdt/internal/core/model/PathEntryManager.java core/org.eclipse.cdt.core/model/org/eclipse/cdt/internal/core/model/PathEntryStoreChangedOperation.java core/org.eclipse.cdt.core/model/org/eclipse/cdt/internal/core/model/PathEntryStoreProxy.java core/org.eclipse.cdt.core/model/org/eclipse/cdt/internal/core/model/PathEntryUtil.java core/org.eclipse.cdt.core/model/org/eclipse/cdt/internal/core/model/ProjectEntry.java core/org.eclipse.cdt.core/model/org/eclipse/cdt/internal/core/model/ReconcileWorkingCopyOperation.java core/org.eclipse.cdt.core/model/org/eclipse/cdt/internal/core/model/Region.java core/org.eclipse.cdt.core/model/org/eclipse/cdt/internal/core/model/RenameElementsOperation.java core/org.eclipse.cdt.core/model/org/eclipse/cdt/internal/core/model/RenameResourceElementsOperation.java core/org.eclipse.cdt.core/model/org/eclipse/cdt/internal/core/model/SetPathEntriesOperation.java core/org.eclipse.cdt.core/model/org/eclipse/cdt/internal/core/model/SetPathEntryContainerOperation.java core/org.eclipse.cdt.core/model/org/eclipse/cdt/internal/core/model/SourceEntry.java core/org.eclipse.cdt.core/model/org/eclipse/cdt/internal/core/model/SourceManipulation.java core/org.eclipse.cdt.core/model/org/eclipse/cdt/internal/core/model/SourceManipulationInfo.java core/org.eclipse.cdt.core/model/org/eclipse/cdt/internal/core/model/SourceMapper.java core/org.eclipse.cdt.core/model/org/eclipse/cdt/internal/core/model/SourceRange.java core/org.eclipse.cdt.core/model/org/eclipse/cdt/internal/core/model/SourceRoot.java core/org.eclipse.cdt.core/model/org/eclipse/cdt/internal/core/model/Structure.java core/org.eclipse.cdt.core/model/org/eclipse/cdt/internal/core/model/StructureDeclaration.java core/org.eclipse.cdt.core/model/org/eclipse/cdt/internal/core/model/StructureInfo.java core/org.eclipse.cdt.core/model/org/eclipse/cdt/internal/core/model/StructureTemplate.java core/org.eclipse.cdt.core/model/org/eclipse/cdt/internal/core/model/StructureTemplateDeclaration.java core/org.eclipse.cdt.core/model/org/eclipse/cdt/internal/core/model/Template.java core/org.eclipse.cdt.core/model/org/eclipse/cdt/internal/core/model/TranslationUnit.java core/org.eclipse.cdt.core/model/org/eclipse/cdt/internal/core/model/TranslationUnitInfo.java core/org.eclipse.cdt.core/model/org/eclipse/cdt/internal/core/model/TypeDef.java core/org.eclipse.cdt.core/model/org/eclipse/cdt/internal/core/model/Using.java core/org.eclipse.cdt.core/model/org/eclipse/cdt/internal/core/model/Util.java core/org.eclipse.cdt.core/model/org/eclipse/cdt/internal/core/model/Variable.java core/org.eclipse.cdt.core/model/org/eclipse/cdt/internal/core/model/VariableDeclaration.java core/org.eclipse.cdt.core/model/org/eclipse/cdt/internal/core/model/VariableInfo.java core/org.eclipse.cdt.core/model/org/eclipse/cdt/internal/core/model/VariableTemplate.java core/org.eclipse.cdt.core/model/org/eclipse/cdt/internal/core/model/WorkingCopy.java core/org.eclipse.cdt.core/model/org/eclipse/cdt/internal/core/model/WorkingCopyInfo.java core/org.eclipse.cdt.core/model/org/eclipse/cdt/internal/core/model/ext/CElementHandle.java core/org.eclipse.cdt.core/model/org/eclipse/cdt/internal/core/model/ext/CElementHandleFactory.java core/org.eclipse.cdt.core/model/org/eclipse/cdt/internal/core/model/ext/EnumerationHandle.java core/org.eclipse.cdt.core/model/org/eclipse/cdt/internal/core/model/ext/EnumeratorHandle.java core/org.eclipse.cdt.core/model/org/eclipse/cdt/internal/core/model/ext/FieldHandle.java core/org.eclipse.cdt.core/model/org/eclipse/cdt/internal/core/model/ext/FunctionHandle.java core/org.eclipse.cdt.core/model/org/eclipse/cdt/internal/core/model/ext/ICElementHandle.java core/org.eclipse.cdt.core/model/org/eclipse/cdt/internal/core/model/ext/MethodHandle.java core/org.eclipse.cdt.core/model/org/eclipse/cdt/internal/core/model/ext/NamespaceHandle.java core/org.eclipse.cdt.core/model/org/eclipse/cdt/internal/core/model/ext/SourceRange.java core/org.eclipse.cdt.core/model/org/eclipse/cdt/internal/core/model/ext/StructureHandle.java core/org.eclipse.cdt.core/model/org/eclipse/cdt/internal/core/model/ext/StructureTemplateHandle.java core/org.eclipse.cdt.core/model/org/eclipse/cdt/internal/core/model/ext/TypedefHandle.java core/org.eclipse.cdt.core/model/org/eclipse/cdt/internal/core/model/ext/VariableHandle.java core/org.eclipse.cdt.core/model/org/eclipse/cdt/internal/core/settings/model/ACExclusionFilterEntry.java core/org.eclipse.cdt.core/model/org/eclipse/cdt/internal/core/settings/model/ACLanguageSettingEntry.java core/org.eclipse.cdt.core/model/org/eclipse/cdt/internal/core/settings/model/ACLanguageSettingPathEntry.java core/org.eclipse.cdt.core/model/org/eclipse/cdt/internal/core/settings/model/AbstractCExtensionProxy.java core/org.eclipse.cdt.core/model/org/eclipse/cdt/internal/core/settings/model/CBuildSetting.java core/org.eclipse.cdt.core/model/org/eclipse/cdt/internal/core/settings/model/CBuildSettingCache.java core/org.eclipse.cdt.core/model/org/eclipse/cdt/internal/core/settings/model/CConfigExtensionReference.java core/org.eclipse.cdt.core/model/org/eclipse/cdt/internal/core/settings/model/CConfigurationDataProviderDescriptor.java core/org.eclipse.cdt.core/model/org/eclipse/cdt/internal/core/settings/model/CConfigurationDescription.java core/org.eclipse.cdt.core/model/org/eclipse/cdt/internal/core/settings/model/CConfigurationDescriptionCache.java core/org.eclipse.cdt.core/model/org/eclipse/cdt/internal/core/settings/model/CConfigurationSpecSettings.java core/org.eclipse.cdt.core/model/org/eclipse/cdt/internal/core/settings/model/CDataProxy.java core/org.eclipse.cdt.core/model/org/eclipse/cdt/internal/core/settings/model/CDataProxyContainer.java core/org.eclipse.cdt.core/model/org/eclipse/cdt/internal/core/settings/model/CExternalSetting.java core/org.eclipse.cdt.core/model/org/eclipse/cdt/internal/core/settings/model/CExternalSettingProvider.java core/org.eclipse.cdt.core/model/org/eclipse/cdt/internal/core/settings/model/CFileDescription.java core/org.eclipse.cdt.core/model/org/eclipse/cdt/internal/core/settings/model/CFileDescriptionCache.java core/org.eclipse.cdt.core/model/org/eclipse/cdt/internal/core/settings/model/CFolderDescription.java core/org.eclipse.cdt.core/model/org/eclipse/cdt/internal/core/settings/model/CFolderDescriptionCache.java core/org.eclipse.cdt.core/model/org/eclipse/cdt/internal/core/settings/model/CLanguageSetting.java core/org.eclipse.cdt.core/model/org/eclipse/cdt/internal/core/settings/model/CLanguageSettingCache.java core/org.eclipse.cdt.core/model/org/eclipse/cdt/internal/core/settings/model/CProjectConverterDesciptor.java core/org.eclipse.cdt.core/model/org/eclipse/cdt/internal/core/settings/model/CProjectDescription.java core/org.eclipse.cdt.core/model/org/eclipse/cdt/internal/core/settings/model/CProjectDescriptionDelta.java core/org.eclipse.cdt.core/model/org/eclipse/cdt/internal/core/settings/model/CProjectDescriptionEvent.java core/org.eclipse.cdt.core/model/org/eclipse/cdt/internal/core/settings/model/CProjectDescriptionManager.java core/org.eclipse.cdt.core/model/org/eclipse/cdt/internal/core/settings/model/CStorage.java core/org.eclipse.cdt.core/model/org/eclipse/cdt/internal/core/settings/model/CTargetPlatformSetting.java core/org.eclipse.cdt.core/model/org/eclipse/cdt/internal/core/settings/model/CTargetPlatformSettingCache.java core/org.eclipse.cdt.core/model/org/eclipse/cdt/internal/core/settings/model/CfgProxyCache.java core/org.eclipse.cdt.core/model/org/eclipse/cdt/internal/core/settings/model/ConfigBasedEntriesContainerInitializer.java core/org.eclipse.cdt.core/model/org/eclipse/cdt/internal/core/settings/model/ConfigBasedPathEntryContainer.java core/org.eclipse.cdt.core/model/org/eclipse/cdt/internal/core/settings/model/ConfigBasedPathEntryStore.java core/org.eclipse.cdt.core/model/org/eclipse/cdt/internal/core/settings/model/DefaultConfigurationDataProvider.java core/org.eclipse.cdt.core/model/org/eclipse/cdt/internal/core/settings/model/DescriptionScannerInfoProvider.java core/org.eclipse.cdt.core/model/org/eclipse/cdt/internal/core/settings/model/DescriptionStatus.java core/org.eclipse.cdt.core/model/org/eclipse/cdt/internal/core/settings/model/EntriesNamesContainer.java core/org.eclipse.cdt.core/model/org/eclipse/cdt/internal/core/settings/model/ExceptionFactory.java core/org.eclipse.cdt.core/model/org/eclipse/cdt/internal/core/settings/model/ExternalSettingsManager.java core/org.eclipse.cdt.core/model/org/eclipse/cdt/internal/core/settings/model/ICDataProxyContainer.java core/org.eclipse.cdt.core/model/org/eclipse/cdt/internal/core/settings/model/ICDataScope.java core/org.eclipse.cdt.core/model/org/eclipse/cdt/internal/core/settings/model/ICDescriptionDelta.java core/org.eclipse.cdt.core/model/org/eclipse/cdt/internal/core/settings/model/ICProjectDescriptionListener.java core/org.eclipse.cdt.core/model/org/eclipse/cdt/internal/core/settings/model/ICachedData.java core/org.eclipse.cdt.core/model/org/eclipse/cdt/internal/core/settings/model/IDataProvider.java core/org.eclipse.cdt.core/model/org/eclipse/cdt/internal/core/settings/model/IExternalSettingsProvider.java core/org.eclipse.cdt.core/model/org/eclipse/cdt/internal/core/settings/model/IInternalCCfgInfo.java core/org.eclipse.cdt.core/model/org/eclipse/cdt/internal/core/settings/model/IInternalResourceDescription.java core/org.eclipse.cdt.core/model/org/eclipse/cdt/internal/core/settings/model/IProxyCache.java core/org.eclipse.cdt.core/model/org/eclipse/cdt/internal/core/settings/model/IProxyFactory.java core/org.eclipse.cdt.core/model/org/eclipse/cdt/internal/core/settings/model/IProxyProvider.java core/org.eclipse.cdt.core/model/org/eclipse/cdt/internal/core/settings/model/InternalXmlStorageElement.java core/org.eclipse.cdt.core/model/org/eclipse/cdt/internal/core/settings/model/MapProxyCache.java core/org.eclipse.cdt.core/model/org/eclipse/cdt/internal/core/settings/model/PathEntryConfigurationDataProvider.java core/org.eclipse.cdt.core/model/org/eclipse/cdt/internal/core/settings/model/ProjectRefInfo.java core/org.eclipse.cdt.core/model/org/eclipse/cdt/internal/core/settings/model/ProviderBasedRcDesHolder.java core/org.eclipse.cdt.core/model/org/eclipse/cdt/internal/core/settings/model/ProxyProvider.java core/org.eclipse.cdt.core/model/org/eclipse/cdt/internal/core/settings/model/ResourceDescriptionHolder.java core/org.eclipse.cdt.core/model/org/eclipse/cdt/internal/core/settings/model/ScannerInfoProviderProxy.java core/org.eclipse.cdt.core/model/org/eclipse/cdt/internal/core/settings/model/SetCProjectDescriptionOperation.java core/org.eclipse.cdt.core/model/org/eclipse/cdt/internal/core/util/CharArrayBuffer.java core/org.eclipse.cdt.core/model/org/eclipse/cdt/internal/core/util/ICacheEnumeration.java core/org.eclipse.cdt.core/model/org/eclipse/cdt/internal/core/util/ILRUCacheable.java core/org.eclipse.cdt.core/model/org/eclipse/cdt/internal/core/util/LRUCache.java core/org.eclipse.cdt.core/model/org/eclipse/cdt/internal/core/util/LRUCacheEnumerator.java core/org.eclipse.cdt.core/model/org/eclipse/cdt/internal/core/util/OverflowingLRUCache.java core/org.eclipse.cdt.core/model/org/eclipse/cdt/internal/core/util/ToStringSorter.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/dom/ICodeReaderFactory.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/dom/ILinkage.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/dom/IName.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/dom/IPDOM.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/dom/IPDOMIndexer.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/dom/IPDOMIndexerTask.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/dom/IPDOMManager.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/dom/IPDOMNode.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/dom/IPDOMVisitor.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/dom/IParserConfiguration.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/dom/ast/ASTCompletionNode.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/dom/ast/ASTNodeProperty.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/dom/ast/ASTSignatureUtil.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/dom/ast/ASTTypeUtil.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/dom/ast/ASTVisitor.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/dom/ast/DOMException.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/dom/ast/IASTASMDeclaration.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/dom/ast/IASTArrayDeclarator.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/dom/ast/IASTArrayModifier.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/dom/ast/IASTArraySubscriptExpression.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/dom/ast/IASTBinaryExpression.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/dom/ast/IASTBreakStatement.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/dom/ast/IASTBuiltinSymbolProvider.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/dom/ast/IASTCaseStatement.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/dom/ast/IASTCastExpression.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/dom/ast/IASTCompletionContext.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/dom/ast/IASTCompositeTypeSpecifier.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/dom/ast/IASTCompoundStatement.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/dom/ast/IASTConditionalExpression.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/dom/ast/IASTContinueStatement.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/dom/ast/IASTDeclSpecifier.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/dom/ast/IASTDeclaration.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/dom/ast/IASTDeclarationStatement.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/dom/ast/IASTDeclarator.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/dom/ast/IASTDefaultStatement.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/dom/ast/IASTDoStatement.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/dom/ast/IASTElaboratedTypeSpecifier.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/dom/ast/IASTEnumerationSpecifier.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/dom/ast/IASTExpression.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/dom/ast/IASTExpressionList.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/dom/ast/IASTExpressionStatement.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/dom/ast/IASTFieldDeclarator.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/dom/ast/IASTFieldReference.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/dom/ast/IASTFileLocation.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/dom/ast/IASTForStatement.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/dom/ast/IASTFunctionCallExpression.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/dom/ast/IASTFunctionDeclarator.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/dom/ast/IASTFunctionDefinition.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/dom/ast/IASTFunctionStyleMacroParameter.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/dom/ast/IASTGotoStatement.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/dom/ast/IASTIdExpression.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/dom/ast/IASTIfStatement.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/dom/ast/IASTInitializer.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/dom/ast/IASTInitializerExpression.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/dom/ast/IASTInitializerList.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/dom/ast/IASTLabelStatement.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/dom/ast/IASTLiteralExpression.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/dom/ast/IASTMacroExpansion.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/dom/ast/IASTName.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/dom/ast/IASTNameOwner.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/dom/ast/IASTNamedTypeSpecifier.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/dom/ast/IASTNode.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/dom/ast/IASTNodeLocation.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/dom/ast/IASTNullStatement.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/dom/ast/IASTParameterDeclaration.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/dom/ast/IASTPointer.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/dom/ast/IASTPointerOperator.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/dom/ast/IASTPreprocessorElifStatement.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/dom/ast/IASTPreprocessorElseStatement.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/dom/ast/IASTPreprocessorEndifStatement.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/dom/ast/IASTPreprocessorErrorStatement.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/dom/ast/IASTPreprocessorFunctionStyleMacroDefinition.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/dom/ast/IASTPreprocessorIfStatement.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/dom/ast/IASTPreprocessorIfdefStatement.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/dom/ast/IASTPreprocessorIfndefStatement.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/dom/ast/IASTPreprocessorIncludeStatement.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/dom/ast/IASTPreprocessorMacroDefinition.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/dom/ast/IASTPreprocessorObjectStyleMacroDefinition.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/dom/ast/IASTPreprocessorPragmaStatement.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/dom/ast/IASTPreprocessorStatement.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/dom/ast/IASTPreprocessorUndefStatement.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/dom/ast/IASTProblem.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/dom/ast/IASTProblemDeclaration.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/dom/ast/IASTProblemExpression.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/dom/ast/IASTProblemHolder.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/dom/ast/IASTProblemStatement.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/dom/ast/IASTProblemTypeId.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/dom/ast/IASTReturnStatement.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/dom/ast/IASTSimpleDeclSpecifier.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/dom/ast/IASTSimpleDeclaration.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/dom/ast/IASTStandardFunctionDeclarator.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/dom/ast/IASTStatement.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/dom/ast/IASTSwitchStatement.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/dom/ast/IASTTranslationUnit.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/dom/ast/IASTTypeId.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/dom/ast/IASTTypeIdExpression.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/dom/ast/IASTUnaryExpression.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/dom/ast/IASTWhileStatement.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/dom/ast/IArrayType.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/dom/ast/IBasicType.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/dom/ast/IBinding.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/dom/ast/ICompositeType.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/dom/ast/IEnumeration.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/dom/ast/IEnumerator.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/dom/ast/IField.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/dom/ast/IFunction.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/dom/ast/IFunctionType.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/dom/ast/ILabel.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/dom/ast/IMacroBinding.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/dom/ast/IParameter.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/dom/ast/IPointerType.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/dom/ast/IProblemBinding.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/dom/ast/IQualifierType.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/dom/ast/IScope.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/dom/ast/IType.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/dom/ast/ITypedef.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/dom/ast/IVariable.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/dom/ast/c/CASTVisitor.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/dom/ast/c/ICASTArrayDesignator.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/dom/ast/c/ICASTArrayModifier.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/dom/ast/c/ICASTCompositeTypeSpecifier.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/dom/ast/c/ICASTDeclSpecifier.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/dom/ast/c/ICASTDesignatedInitializer.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/dom/ast/c/ICASTDesignator.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/dom/ast/c/ICASTElaboratedTypeSpecifier.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/dom/ast/c/ICASTEnumerationSpecifier.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/dom/ast/c/ICASTFieldDesignator.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/dom/ast/c/ICASTPointer.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/dom/ast/c/ICASTSimpleDeclSpecifier.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/dom/ast/c/ICASTTypeIdInitializerExpression.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/dom/ast/c/ICASTTypedefNameSpecifier.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/dom/ast/c/ICArrayType.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/dom/ast/c/ICBasicType.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/dom/ast/c/ICCompositeTypeScope.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/dom/ast/c/ICExternalBinding.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/dom/ast/c/ICFunctionPrototypeScope.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/dom/ast/c/ICFunctionScope.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/dom/ast/c/ICPointerType.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/dom/ast/c/ICQualifierType.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/dom/ast/c/ICScope.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/dom/ast/cpp/CPPASTVisitor.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/dom/ast/cpp/ICPPASTBinaryExpression.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/dom/ast/cpp/ICPPASTCastExpression.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/dom/ast/cpp/ICPPASTCatchHandler.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/dom/ast/cpp/ICPPASTCompositeTypeSpecifier.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/dom/ast/cpp/ICPPASTConstructorChainInitializer.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/dom/ast/cpp/ICPPASTConstructorInitializer.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/dom/ast/cpp/ICPPASTConversionName.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/dom/ast/cpp/ICPPASTDeclSpecifier.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/dom/ast/cpp/ICPPASTDeleteExpression.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/dom/ast/cpp/ICPPASTElaboratedTypeSpecifier.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/dom/ast/cpp/ICPPASTExplicitTemplateInstantiation.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/dom/ast/cpp/ICPPASTFieldReference.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/dom/ast/cpp/ICPPASTForStatement.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/dom/ast/cpp/ICPPASTFunctionDeclarator.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/dom/ast/cpp/ICPPASTFunctionTryBlockDeclarator.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/dom/ast/cpp/ICPPASTIfStatement.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/dom/ast/cpp/ICPPASTLinkageSpecification.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/dom/ast/cpp/ICPPASTLiteralExpression.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/dom/ast/cpp/ICPPASTNamedTypeSpecifier.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/dom/ast/cpp/ICPPASTNamespaceAlias.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/dom/ast/cpp/ICPPASTNamespaceDefinition.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/dom/ast/cpp/ICPPASTNewExpression.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/dom/ast/cpp/ICPPASTOperatorName.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/dom/ast/cpp/ICPPASTParameterDeclaration.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/dom/ast/cpp/ICPPASTPointerToMember.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/dom/ast/cpp/ICPPASTQualifiedName.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/dom/ast/cpp/ICPPASTReferenceOperator.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/dom/ast/cpp/ICPPASTSimpleDeclSpecifier.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/dom/ast/cpp/ICPPASTSimpleTypeConstructorExpression.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/dom/ast/cpp/ICPPASTSimpleTypeTemplateParameter.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/dom/ast/cpp/ICPPASTSwitchStatement.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/dom/ast/cpp/ICPPASTTemplateDeclaration.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/dom/ast/cpp/ICPPASTTemplateId.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/dom/ast/cpp/ICPPASTTemplateParameter.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/dom/ast/cpp/ICPPASTTemplateSpecialization.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/dom/ast/cpp/ICPPASTTemplatedTypeTemplateParameter.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/dom/ast/cpp/ICPPASTTranslationUnit.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/dom/ast/cpp/ICPPASTTryBlockStatement.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/dom/ast/cpp/ICPPASTTypeIdExpression.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/dom/ast/cpp/ICPPASTTypenameExpression.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/dom/ast/cpp/ICPPASTUnaryExpression.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/dom/ast/cpp/ICPPASTUsingDeclaration.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/dom/ast/cpp/ICPPASTUsingDirective.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/dom/ast/cpp/ICPPASTVisiblityLabel.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/dom/ast/cpp/ICPPASTWhileStatement.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/dom/ast/cpp/ICPPBase.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/dom/ast/cpp/ICPPBasicType.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/dom/ast/cpp/ICPPBinding.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/dom/ast/cpp/ICPPBlockScope.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/dom/ast/cpp/ICPPClassScope.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/dom/ast/cpp/ICPPClassTemplate.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/dom/ast/cpp/ICPPClassTemplatePartialSpecialization.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/dom/ast/cpp/ICPPClassType.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/dom/ast/cpp/ICPPConstructor.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/dom/ast/cpp/ICPPDelegate.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/dom/ast/cpp/ICPPField.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/dom/ast/cpp/ICPPFunction.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/dom/ast/cpp/ICPPFunctionScope.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/dom/ast/cpp/ICPPFunctionTemplate.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/dom/ast/cpp/ICPPFunctionType.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/dom/ast/cpp/ICPPMember.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/dom/ast/cpp/ICPPMethod.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/dom/ast/cpp/ICPPNamespace.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/dom/ast/cpp/ICPPNamespaceAlias.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/dom/ast/cpp/ICPPNamespaceScope.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/dom/ast/cpp/ICPPParameter.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/dom/ast/cpp/ICPPPointerToMemberType.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/dom/ast/cpp/ICPPReferenceType.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/dom/ast/cpp/ICPPScope.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/dom/ast/cpp/ICPPSpecialization.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/dom/ast/cpp/ICPPTemplateDefinition.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/dom/ast/cpp/ICPPTemplateInstance.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/dom/ast/cpp/ICPPTemplateNonTypeParameter.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/dom/ast/cpp/ICPPTemplateParameter.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/dom/ast/cpp/ICPPTemplateScope.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/dom/ast/cpp/ICPPTemplateTemplateParameter.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/dom/ast/cpp/ICPPTemplateTypeParameter.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/dom/ast/cpp/ICPPUsingDeclaration.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/dom/ast/cpp/ICPPVariable.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/dom/ast/gnu/IGNUASTCompoundStatementExpression.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/dom/ast/gnu/IGNUASTTypeIdExpression.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/dom/ast/gnu/IGNUASTUnaryExpression.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/dom/ast/gnu/Messages.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/dom/ast/gnu/c/GCCLanguage.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/dom/ast/gnu/c/ICASTKnRFunctionDeclarator.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/dom/ast/gnu/c/IGCCASTArrayRangeDesignator.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/dom/ast/gnu/c/IGCCASTSimpleDeclSpecifier.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/dom/ast/gnu/cpp/GPPLanguage.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/dom/ast/gnu/cpp/IGPPASTBinaryExpression.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/dom/ast/gnu/cpp/IGPPASTDeclSpecifier.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/dom/ast/gnu/cpp/IGPPASTExplicitTemplateInstantiation.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/dom/ast/gnu/cpp/IGPPASTPointer.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/dom/ast/gnu/cpp/IGPPASTPointerToMember.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/dom/ast/gnu/cpp/IGPPASTSimpleDeclSpecifier.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/dom/ast/gnu/cpp/IGPPBasicType.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/dom/ast/gnu/cpp/IGPPPointerToMemberType.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/dom/ast/gnu/cpp/IGPPPointerType.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/dom/ast/gnu/cpp/IGPPQualifierType.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/dom/ast/gnu/messages.properties core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/index/IIndex.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/index/IIndexBinding.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/index/IIndexChangeEvent.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/index/IIndexChangeListener.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/index/IIndexFile.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/index/IIndexFileLocation.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/index/IIndexInclude.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/index/IIndexLinkage.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/index/IIndexLocationConverter.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/index/IIndexMacro.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/index/IIndexManager.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/index/IIndexName.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/index/IIndexerStateEvent.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/index/IIndexerStateListener.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/index/IndexFilter.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/index/IndexLocationFactory.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/parser/AbstractParserLogService.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/parser/CodeReader.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/parser/DefaultLogService.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/parser/DefaultProblemHandler.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/parser/Directives.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/parser/EndOfFileException.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/parser/Enum.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/parser/ExtendedScannerInfo.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/parser/GCCKeywords.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/parser/ICodeReaderCache.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/parser/IExtendedScannerInfo.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/parser/IGCCToken.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/parser/IMacro.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/parser/IOffsetDuple.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/parser/IParser.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/parser/IParserLogService.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/parser/IProblem.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/parser/IQuickParseCallback.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/parser/IScanner.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/parser/IScannerInfo.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/parser/ISourceElementCallbackDelegate.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/parser/ISourceElementRequestor.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/parser/IToken.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/parser/ITokenDuple.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/parser/KeywordSetKey.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/parser/Keywords.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/parser/NullLogService.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/parser/NullSourceElementRequestor.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/parser/OffsetLimitReachedException.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/parser/ParseError.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/parser/ParserFactory.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/parser/ParserFactoryError.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/parser/ParserLanguage.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/parser/ParserMode.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/parser/ScannerInfo.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/parser/ast/ASTAccessVisibility.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/parser/ast/ASTClassKind.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/parser/ast/ASTExpressionEvaluationException.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/parser/ast/ASTNotImplementedException.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/parser/ast/ASTPointerOperator.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/parser/ast/ASTSemanticException.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/parser/ast/ASTUtil.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/parser/ast/IASTASMDefinition.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/parser/ast/IASTAbstractDeclaration.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/parser/ast/IASTAbstractTypeSpecifierDeclaration.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/parser/ast/IASTArrayModifier.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/parser/ast/IASTBaseSpecifier.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/parser/ast/IASTClassReference.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/parser/ast/IASTClassSpecifier.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/parser/ast/IASTCodeScope.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/parser/ast/IASTCompilationUnit.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/parser/ast/IASTCompletionNode.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/parser/ast/IASTConstructorMemberInitializer.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/parser/ast/IASTDeclaration.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/parser/ast/IASTDesignator.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/parser/ast/IASTElaboratedTypeSpecifier.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/parser/ast/IASTEnumerationReference.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/parser/ast/IASTEnumerationSpecifier.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/parser/ast/IASTEnumerator.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/parser/ast/IASTEnumeratorReference.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/parser/ast/IASTExceptionSpecification.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/parser/ast/IASTExpression.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/parser/ast/IASTFactory.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/parser/ast/IASTField.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/parser/ast/IASTFieldReference.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/parser/ast/IASTFunction.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/parser/ast/IASTFunctionReference.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/parser/ast/IASTInclusion.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/parser/ast/IASTInitializerClause.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/parser/ast/IASTLinkageSpecification.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/parser/ast/IASTMacro.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/parser/ast/IASTMember.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/parser/ast/IASTMethod.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/parser/ast/IASTMethodReference.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/parser/ast/IASTNamespaceAlias.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/parser/ast/IASTNamespaceDefinition.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/parser/ast/IASTNamespaceReference.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/parser/ast/IASTNode.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/parser/ast/IASTOffsetableElement.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/parser/ast/IASTOffsetableNamedElement.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/parser/ast/IASTParameterDeclaration.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/parser/ast/IASTParameterReference.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/parser/ast/IASTPointerOperatorOwner.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/parser/ast/IASTQualifiedNameElement.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/parser/ast/IASTReference.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/parser/ast/IASTScope.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/parser/ast/IASTScopedElement.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/parser/ast/IASTScopedTypeSpecifier.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/parser/ast/IASTSimpleTypeSpecifier.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/parser/ast/IASTTemplate.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/parser/ast/IASTTemplateDeclaration.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/parser/ast/IASTTemplateInstantiation.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/parser/ast/IASTTemplateParameter.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/parser/ast/IASTTemplateParameterList.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/parser/ast/IASTTemplateParameterReference.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/parser/ast/IASTTemplateSpecialization.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/parser/ast/IASTTemplatedDeclaration.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/parser/ast/IASTTypeId.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/parser/ast/IASTTypeSpecifier.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/parser/ast/IASTTypeSpecifierOwner.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/parser/ast/IASTTypedefDeclaration.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/parser/ast/IASTTypedefReference.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/parser/ast/IASTUsingDeclaration.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/parser/ast/IASTUsingDirective.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/parser/ast/IASTVariable.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/parser/ast/IASTVariableReference.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/parser/ast/gcc/IASTGCCDesignator.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/parser/ast/gcc/IASTGCCExpression.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/parser/ast/gcc/IASTGCCSimpleTypeSpecifier.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/parser/extension/ExtensionDialect.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/parser/extension/IASTFactoryExtension.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/parser/extension/IParserExtension.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/parser/extension/IParserExtensionFactory.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/parser/util/ArrayUtil.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/parser/util/CharArrayIntMap.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/parser/util/CharArrayObjectMap.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/parser/util/CharArrayPool.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/parser/util/CharArraySet.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/parser/util/CharArrayUtils.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/parser/util/CharTable.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/parser/util/HashTable.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/parser/util/ObjectMap.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/parser/util/ObjectSet.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/parser/util/ObjectTable.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/dom/Linkage.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/dom/parser/ASTInternal.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/dom/parser/ASTNode.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/dom/parser/ASTPreprocessorSelectionResult.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/dom/parser/AbstractGNUSourceCodeParser.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/dom/parser/BacktrackException.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/dom/parser/EmptyCodeReaderCache.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/dom/parser/GCCBuiltinSymbolProvider.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/dom/parser/IASTAmbiguityParent.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/dom/parser/IASTAmbiguousDeclaration.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/dom/parser/IASTAmbiguousExpression.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/dom/parser/IASTAmbiguousStatement.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/dom/parser/IASTDeclarationAmbiguity.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/dom/parser/IASTInternalScope.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/dom/parser/IRequiresLocationInformation.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/dom/parser/ISourceCodeParser.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/dom/parser/ITypeContainer.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/dom/parser/ParserLogServiceWrapper.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/dom/parser/ProblemBinding.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/dom/parser/c/ANSICParserExtensionConfiguration.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/dom/parser/c/CASTASMDeclaration.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/dom/parser/c/CASTAmbiguity.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/dom/parser/c/CASTAmbiguousExpression.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/dom/parser/c/CASTAmbiguousStatement.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/dom/parser/c/CASTArrayDeclarator.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/dom/parser/c/CASTArrayDesignator.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/dom/parser/c/CASTArrayModifier.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/dom/parser/c/CASTArrayRangeDesignator.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/dom/parser/c/CASTArraySubscriptExpression.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/dom/parser/c/CASTBaseDeclSpecifier.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/dom/parser/c/CASTBinaryExpression.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/dom/parser/c/CASTBreakStatement.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/dom/parser/c/CASTCaseStatement.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/dom/parser/c/CASTCastExpression.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/dom/parser/c/CASTCompositeTypeSpecifier.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/dom/parser/c/CASTCompoundStatement.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/dom/parser/c/CASTCompoundStatementExpression.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/dom/parser/c/CASTConditionalExpression.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/dom/parser/c/CASTContinueStatement.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/dom/parser/c/CASTDeclarationStatement.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/dom/parser/c/CASTDeclarator.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/dom/parser/c/CASTDefaultStatement.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/dom/parser/c/CASTDesignatedInitializer.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/dom/parser/c/CASTDoStatement.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/dom/parser/c/CASTElaboratedTypeSpecifier.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/dom/parser/c/CASTEnumerationSpecifier.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/dom/parser/c/CASTEnumerator.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/dom/parser/c/CASTExpressionList.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/dom/parser/c/CASTExpressionStatement.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/dom/parser/c/CASTFieldDeclarator.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/dom/parser/c/CASTFieldDesignator.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/dom/parser/c/CASTFieldReference.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/dom/parser/c/CASTForStatement.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/dom/parser/c/CASTFunctionCallExpression.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/dom/parser/c/CASTFunctionDeclarator.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/dom/parser/c/CASTFunctionDefinition.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/dom/parser/c/CASTGotoStatement.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/dom/parser/c/CASTIdExpression.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/dom/parser/c/CASTIfStatement.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/dom/parser/c/CASTInitializerExpression.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/dom/parser/c/CASTInitializerList.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/dom/parser/c/CASTKnRFunctionDeclarator.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/dom/parser/c/CASTLabelStatement.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/dom/parser/c/CASTLiteralExpression.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/dom/parser/c/CASTModifiedArrayModifier.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/dom/parser/c/CASTName.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/dom/parser/c/CASTNode.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/dom/parser/c/CASTNullStatement.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/dom/parser/c/CASTParameterDeclaration.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/dom/parser/c/CASTPointer.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/dom/parser/c/CASTProblem.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/dom/parser/c/CASTProblemDeclaration.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/dom/parser/c/CASTProblemExpression.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/dom/parser/c/CASTProblemOwner.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/dom/parser/c/CASTProblemStatement.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/dom/parser/c/CASTReturnStatement.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/dom/parser/c/CASTSimpleDeclSpecifier.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/dom/parser/c/CASTSimpleDeclaration.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/dom/parser/c/CASTSwitchStatement.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/dom/parser/c/CASTTranslationUnit.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/dom/parser/c/CASTTypeId.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/dom/parser/c/CASTTypeIdExpression.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/dom/parser/c/CASTTypeIdInitializerExpression.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/dom/parser/c/CASTTypedefNameSpecifier.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/dom/parser/c/CASTUnaryExpression.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/dom/parser/c/CASTWhileStatement.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/dom/parser/c/CArrayType.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/dom/parser/c/CBasicType.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/dom/parser/c/CCompositeTypeScope.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/dom/parser/c/CEnumeration.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/dom/parser/c/CEnumerator.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/dom/parser/c/CExternalFunction.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/dom/parser/c/CExternalVariable.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/dom/parser/c/CField.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/dom/parser/c/CFunction.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/dom/parser/c/CFunctionScope.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/dom/parser/c/CFunctionType.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/dom/parser/c/CImplicitFunction.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/dom/parser/c/CImplicitTypedef.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/dom/parser/c/CKnRParameter.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/dom/parser/c/CLabel.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/dom/parser/c/CParameter.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/dom/parser/c/CPointerType.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/dom/parser/c/CQualifiedPointerType.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/dom/parser/c/CQualifierType.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/dom/parser/c/CScope.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/dom/parser/c/CStructure.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/dom/parser/c/CTypedef.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/dom/parser/c/CVariable.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/dom/parser/c/CVisitor.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/dom/parser/c/GCCASTSimpleDeclSpecifier.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/dom/parser/c/GCCParserExtensionConfiguration.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/dom/parser/c/GNUCSourceParser.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/dom/parser/c/ICInternalBinding.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/dom/parser/c/ICInternalFunction.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/dom/parser/c/ICParserExtensionConfiguration.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/dom/parser/cpp/ANSICPPParserExtensionConfiguration.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/dom/parser/cpp/CPPASTASMDeclaration.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/dom/parser/cpp/CPPASTAmbiguity.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/dom/parser/cpp/CPPASTAmbiguousDeclaration.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/dom/parser/cpp/CPPASTAmbiguousExpression.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/dom/parser/cpp/CPPASTAmbiguousStatement.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/dom/parser/cpp/CPPASTArrayDeclarator.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/dom/parser/cpp/CPPASTArrayModifier.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/dom/parser/cpp/CPPASTArraySubscriptExpression.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/dom/parser/cpp/CPPASTBaseDeclSpecifier.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/dom/parser/cpp/CPPASTBaseSpecifier.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/dom/parser/cpp/CPPASTBinaryExpression.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/dom/parser/cpp/CPPASTBreakStatement.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/dom/parser/cpp/CPPASTCaseStatement.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/dom/parser/cpp/CPPASTCastExpression.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/dom/parser/cpp/CPPASTCatchHandler.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/dom/parser/cpp/CPPASTCompositeTypeSpecifier.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/dom/parser/cpp/CPPASTCompoundStatement.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/dom/parser/cpp/CPPASTCompoundStatementExpression.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/dom/parser/cpp/CPPASTConditionalExpression.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/dom/parser/cpp/CPPASTConstructorChainInitializer.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/dom/parser/cpp/CPPASTConstructorInitializer.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/dom/parser/cpp/CPPASTContinueStatement.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/dom/parser/cpp/CPPASTConversionName.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/dom/parser/cpp/CPPASTDeclarationStatement.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/dom/parser/cpp/CPPASTDeclarator.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/dom/parser/cpp/CPPASTDefaultStatement.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/dom/parser/cpp/CPPASTDeleteExpression.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/dom/parser/cpp/CPPASTDoStatement.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/dom/parser/cpp/CPPASTElaboratedTypeSpecifier.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/dom/parser/cpp/CPPASTEnumerationSpecifier.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/dom/parser/cpp/CPPASTEnumerator.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/dom/parser/cpp/CPPASTExplicitTemplateInstantiation.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/dom/parser/cpp/CPPASTExpressionList.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/dom/parser/cpp/CPPASTExpressionStatement.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/dom/parser/cpp/CPPASTFieldDeclarator.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/dom/parser/cpp/CPPASTFieldReference.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/dom/parser/cpp/CPPASTForStatement.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/dom/parser/cpp/CPPASTFunctionCallExpression.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/dom/parser/cpp/CPPASTFunctionDeclarator.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/dom/parser/cpp/CPPASTFunctionDefinition.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/dom/parser/cpp/CPPASTFunctionTryBlockDeclarator.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/dom/parser/cpp/CPPASTGotoStatement.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/dom/parser/cpp/CPPASTIdExpression.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/dom/parser/cpp/CPPASTIfStatement.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/dom/parser/cpp/CPPASTInitializerExpression.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/dom/parser/cpp/CPPASTInitializerList.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/dom/parser/cpp/CPPASTLabelStatement.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/dom/parser/cpp/CPPASTLinkageSpecification.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/dom/parser/cpp/CPPASTLiteralExpression.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/dom/parser/cpp/CPPASTName.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/dom/parser/cpp/CPPASTNamedTypeSpecifier.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/dom/parser/cpp/CPPASTNamespaceAlias.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/dom/parser/cpp/CPPASTNamespaceDefinition.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/dom/parser/cpp/CPPASTNewExpression.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/dom/parser/cpp/CPPASTNode.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/dom/parser/cpp/CPPASTNullStatement.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/dom/parser/cpp/CPPASTOperatorName.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/dom/parser/cpp/CPPASTParameterDeclaration.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/dom/parser/cpp/CPPASTPointer.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/dom/parser/cpp/CPPASTPointerToMember.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/dom/parser/cpp/CPPASTProblem.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/dom/parser/cpp/CPPASTProblemDeclaration.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/dom/parser/cpp/CPPASTProblemExpression.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/dom/parser/cpp/CPPASTProblemOwner.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/dom/parser/cpp/CPPASTProblemStatement.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/dom/parser/cpp/CPPASTProblemTypeId.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/dom/parser/cpp/CPPASTQualifiedName.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/dom/parser/cpp/CPPASTReferenceOperator.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/dom/parser/cpp/CPPASTReturnStatement.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/dom/parser/cpp/CPPASTSimpleDeclSpecifier.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/dom/parser/cpp/CPPASTSimpleDeclaration.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/dom/parser/cpp/CPPASTSimpleTypeConstructorExpression.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/dom/parser/cpp/CPPASTSimpleTypeTemplateParameter.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/dom/parser/cpp/CPPASTSwitchStatement.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/dom/parser/cpp/CPPASTTemplateDeclaration.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/dom/parser/cpp/CPPASTTemplateId.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/dom/parser/cpp/CPPASTTemplateSpecialization.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/dom/parser/cpp/CPPASTTemplatedTypeTemplateParameter.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/dom/parser/cpp/CPPASTTranslationUnit.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/dom/parser/cpp/CPPASTTryBlockStatement.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/dom/parser/cpp/CPPASTTypeId.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/dom/parser/cpp/CPPASTTypeIdExpression.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/dom/parser/cpp/CPPASTTypenameExpression.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/dom/parser/cpp/CPPASTUnaryExpression.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/dom/parser/cpp/CPPASTUsingDeclaration.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/dom/parser/cpp/CPPASTUsingDirective.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/dom/parser/cpp/CPPASTVisibilityLabel.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/dom/parser/cpp/CPPASTWhileStatement.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/dom/parser/cpp/CPPArrayType.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/dom/parser/cpp/CPPBaseClause.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/dom/parser/cpp/CPPBasicType.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/dom/parser/cpp/CPPBlockScope.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/dom/parser/cpp/CPPClassInstance.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/dom/parser/cpp/CPPClassInstanceScope.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/dom/parser/cpp/CPPClassScope.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/dom/parser/cpp/CPPClassSpecialization.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/dom/parser/cpp/CPPClassTemplate.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/dom/parser/cpp/CPPClassTemplatePartialSpecialization.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/dom/parser/cpp/CPPClassTemplateSpecialization.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/dom/parser/cpp/CPPClassType.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/dom/parser/cpp/CPPCompositeBinding.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/dom/parser/cpp/CPPConstructor.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/dom/parser/cpp/CPPConstructorSpecialization.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/dom/parser/cpp/CPPConstructorTemplate.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/dom/parser/cpp/CPPConstructorTemplateSpecialization.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/dom/parser/cpp/CPPDeferredClassInstance.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/dom/parser/cpp/CPPDeferredFunctionInstance.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/dom/parser/cpp/CPPDelegate.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/dom/parser/cpp/CPPEnumeration.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/dom/parser/cpp/CPPEnumerator.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/dom/parser/cpp/CPPField.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/dom/parser/cpp/CPPFieldSpecialization.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/dom/parser/cpp/CPPFunction.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/dom/parser/cpp/CPPFunctionInstance.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/dom/parser/cpp/CPPFunctionScope.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/dom/parser/cpp/CPPFunctionSpecialization.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/dom/parser/cpp/CPPFunctionTemplate.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/dom/parser/cpp/CPPFunctionTemplateSpecialization.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/dom/parser/cpp/CPPFunctionType.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/dom/parser/cpp/CPPImplicitConstructor.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/dom/parser/cpp/CPPImplicitFunction.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/dom/parser/cpp/CPPImplicitMethod.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/dom/parser/cpp/CPPImplicitTypedef.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/dom/parser/cpp/CPPInstance.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/dom/parser/cpp/CPPLabel.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/dom/parser/cpp/CPPMethod.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/dom/parser/cpp/CPPMethodInstance.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/dom/parser/cpp/CPPMethodSpecialization.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/dom/parser/cpp/CPPMethodTemplate.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/dom/parser/cpp/CPPMethodTemplateSpecialization.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/dom/parser/cpp/CPPNamespace.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/dom/parser/cpp/CPPNamespaceAlias.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/dom/parser/cpp/CPPNamespaceScope.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/dom/parser/cpp/CPPParameter.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/dom/parser/cpp/CPPParameterSpecialization.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/dom/parser/cpp/CPPPointerToMemberType.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/dom/parser/cpp/CPPPointerType.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/dom/parser/cpp/CPPQualifierType.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/dom/parser/cpp/CPPReferenceType.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/dom/parser/cpp/CPPScope.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/dom/parser/cpp/CPPSemantics.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/dom/parser/cpp/CPPSpecialization.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/dom/parser/cpp/CPPTemplateDefinition.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/dom/parser/cpp/CPPTemplateNonTypeParameter.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/dom/parser/cpp/CPPTemplateParameter.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/dom/parser/cpp/CPPTemplateScope.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/dom/parser/cpp/CPPTemplateTemplateParameter.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/dom/parser/cpp/CPPTemplateTypeParameter.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/dom/parser/cpp/CPPTemplates.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/dom/parser/cpp/CPPTypedef.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/dom/parser/cpp/CPPTypedefSpecialization.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/dom/parser/cpp/CPPUnknownBinding.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/dom/parser/cpp/CPPUnknownClass.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/dom/parser/cpp/CPPUnknownScope.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/dom/parser/cpp/CPPUsingDeclaration.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/dom/parser/cpp/CPPVariable.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/dom/parser/cpp/CPPVisitor.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/dom/parser/cpp/GNUCPPSourceParser.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/dom/parser/cpp/GPPASTExplicitTemplateInstantiation.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/dom/parser/cpp/GPPASTPointer.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/dom/parser/cpp/GPPASTPointerToMember.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/dom/parser/cpp/GPPASTSimpleDeclSpecifier.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/dom/parser/cpp/GPPBasicType.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/dom/parser/cpp/GPPParserExtensionConfiguration.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/dom/parser/cpp/GPPPointerToMemberType.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/dom/parser/cpp/GPPPointerType.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/dom/parser/cpp/ICPPInternalBinding.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/dom/parser/cpp/ICPPInternalClassTemplate.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/dom/parser/cpp/ICPPInternalClassType.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/dom/parser/cpp/ICPPInternalFunction.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/dom/parser/cpp/ICPPInternalTemplate.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/dom/parser/cpp/ICPPInternalUnknown.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/dom/parser/cpp/ICPPParserExtensionConfiguration.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/index/CIndex.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/index/EmptyCIndex.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/index/IIndexFragment.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/index/IIndexFragmentBinding.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/index/IIndexFragmentFile.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/index/IIndexFragmentInclude.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/index/IIndexFragmentName.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/index/IIndexScope.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/index/IIndexType.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/index/IWritableIndex.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/index/IWritableIndexFragment.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/index/IWritableIndexManager.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/index/IndexBasedCodeReaderFactory.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/index/IndexChangeEvent.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/index/IndexFactory.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/index/IndexFileLocation.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/index/IndexerStateEvent.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/index/Messages.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/index/WritableCIndex.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/index/composite/AbstractCompositeFactory.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/index/composite/CompositeArrayType.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/index/composite/CompositeIndexBinding.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/index/composite/CompositePointerType.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/index/composite/CompositeQualifierType.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/index/composite/CompositeScope.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/index/composite/CompositeType.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/index/composite/CompositingNotImplementedError.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/index/composite/ICompositesFactory.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/index/composite/c/CCompositesFactory.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/index/composite/c/CompositeCBinding.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/index/composite/c/CompositeCCompositeScope.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/index/composite/c/CompositeCEnumeration.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/index/composite/c/CompositeCEnumerator.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/index/composite/c/CompositeCField.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/index/composite/c/CompositeCFunction.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/index/composite/c/CompositeCParameter.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/index/composite/c/CompositeCStructure.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/index/composite/c/CompositeCTypedef.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/index/composite/c/CompositeCVariable.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/index/composite/cpp/CPPCompositesFactory.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/index/composite/cpp/CompositeCPPBinding.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/index/composite/cpp/CompositeCPPClassScope.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/index/composite/cpp/CompositeCPPClassType.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/index/composite/cpp/CompositeCPPConstructor.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/index/composite/cpp/CompositeCPPEnumeration.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/index/composite/cpp/CompositeCPPEnumerator.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/index/composite/cpp/CompositeCPPField.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/index/composite/cpp/CompositeCPPFunction.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/index/composite/cpp/CompositeCPPMethod.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/index/composite/cpp/CompositeCPPNamespace.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/index/composite/cpp/CompositeCPPNamespaceAlias.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/index/composite/cpp/CompositeCPPNamespaceScope.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/index/composite/cpp/CompositeCPPParameter.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/index/composite/cpp/CompositeCPPPointerToMemberType.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/index/composite/cpp/CompositeCPPReferenceType.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/index/composite/cpp/CompositeCPPTypedef.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/index/composite/cpp/CompositeCPPVariable.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/index/messages.properties core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/parser/BacktrackException.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/parser/DeclarationWrapper.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/parser/Declarator.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/parser/GCCParserExtension.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/parser/IDeclarator.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/parser/IDeclaratorOwner.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/parser/IParameterCollection.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/parser/IParserData.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/parser/InternalParserUtil.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/parser/ParameterCollection.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/parser/Parser.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/parser/ParserException.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/parser/ParserExtensionFactory.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/parser/ParserMessages.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/parser/ParserMessages.properties core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/parser/ParserProblemFactory.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/parser/QuickParseCallback.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/parser/SimpleDeclarationStrategy.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/parser/StructuralParseCallback.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/parser/TemplateParameterManager.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/parser/TypeId.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/parser/ast/ASTAbstractDeclaration.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/parser/ast/ASTArrayModifier.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/parser/ast/ASTCompletionNode.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/parser/ast/ASTDesignator.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/parser/ast/ASTInclusion.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/parser/ast/ASTMacro.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/parser/ast/ASTQualifiedNamedElement.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/parser/ast/BaseASTFactory.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/parser/ast/EmptyIterator.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/parser/ast/GCCASTExtension.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/parser/ast/SymbolIterator.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/parser/ast/complete/ASTASMDefinition.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/parser/ast/complete/ASTAbstractTypeSpecifierDeclaration.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/parser/ast/complete/ASTAnonymousDeclaration.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/parser/ast/complete/ASTBaseSpecifier.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/parser/ast/complete/ASTBinaryExpression.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/parser/ast/complete/ASTClassReference.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/parser/ast/complete/ASTClassSpecifier.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/parser/ast/complete/ASTCodeScope.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/parser/ast/complete/ASTCompilationUnit.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/parser/ast/complete/ASTConditionalExpression.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/parser/ast/complete/ASTConstructorMemberInitializer.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/parser/ast/complete/ASTElaboratedTypeSpecifier.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/parser/ast/complete/ASTEmptyExpression.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/parser/ast/complete/ASTEnumerationReference.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/parser/ast/complete/ASTEnumerationSpecifier.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/parser/ast/complete/ASTEnumerator.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/parser/ast/complete/ASTEnumeratorReference.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/parser/ast/complete/ASTExceptionSpecification.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/parser/ast/complete/ASTExpression.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/parser/ast/complete/ASTField.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/parser/ast/complete/ASTFieldReference.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/parser/ast/complete/ASTFunction.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/parser/ast/complete/ASTFunctionReference.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/parser/ast/complete/ASTIdExpression.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/parser/ast/complete/ASTInitializerClause.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/parser/ast/complete/ASTLinkageSpecification.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/parser/ast/complete/ASTLiteralExpression.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/parser/ast/complete/ASTMethod.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/parser/ast/complete/ASTMethodReference.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/parser/ast/complete/ASTNamespaceAlias.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/parser/ast/complete/ASTNamespaceDefinition.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/parser/ast/complete/ASTNamespaceReference.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/parser/ast/complete/ASTNewDescriptor.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/parser/ast/complete/ASTNewExpression.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/parser/ast/complete/ASTNode.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/parser/ast/complete/ASTParameterDeclaration.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/parser/ast/complete/ASTParameterReference.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/parser/ast/complete/ASTProblemFactory.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/parser/ast/complete/ASTReference.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/parser/ast/complete/ASTScope.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/parser/ast/complete/ASTSimpleTypeSpecifier.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/parser/ast/complete/ASTSymbol.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/parser/ast/complete/ASTSymbolOwner.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/parser/ast/complete/ASTTemplateDeclaration.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/parser/ast/complete/ASTTemplateInstantiation.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/parser/ast/complete/ASTTemplateParameter.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/parser/ast/complete/ASTTemplateParameterReference.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/parser/ast/complete/ASTTemplateSpecialization.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/parser/ast/complete/ASTTypeId.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/parser/ast/complete/ASTTypeIdExpression.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/parser/ast/complete/ASTTypedef.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/parser/ast/complete/ASTTypedefReference.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/parser/ast/complete/ASTUnaryExpression.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/parser/ast/complete/ASTUnaryIdExpression.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/parser/ast/complete/ASTUnaryTypeIdExpression.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/parser/ast/complete/ASTUsingDeclaration.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/parser/ast/complete/ASTUsingDirective.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/parser/ast/complete/ASTVariable.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/parser/ast/complete/ASTVariableReference.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/parser/ast/complete/CompleteParseASTFactory.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/parser/ast/complete/ExpressionFactory.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/parser/ast/complete/ExpressionResult.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/parser/ast/complete/ExpressionResultList.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/parser/ast/complete/UnresolvedReferenceDuple.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/parser/ast/complete/gcc/ASTGCCSimpleTypeSpecifier.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/parser/ast/complete/gcc/GCCASTCompleteExtension.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/parser/ast/gcc/ASTGCCDesignator.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/parser/ast/quick/ASTASMDefinition.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/parser/ast/quick/ASTAbstractTypeSpecifierDeclaration.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/parser/ast/quick/ASTBaseSpecifier.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/parser/ast/quick/ASTBinaryExpression.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/parser/ast/quick/ASTClassSpecifier.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/parser/ast/quick/ASTCompilationUnit.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/parser/ast/quick/ASTConditionalExpression.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/parser/ast/quick/ASTConstructorMemberInitializer.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/parser/ast/quick/ASTDeclaration.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/parser/ast/quick/ASTDesignatedExpressionInitializerClause.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/parser/ast/quick/ASTDesignatedInitializerListInitializerClause.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/parser/ast/quick/ASTElaboratedTypeSpecifier.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/parser/ast/quick/ASTEmptyExpression.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/parser/ast/quick/ASTEnumerationSpecifier.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/parser/ast/quick/ASTEnumerator.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/parser/ast/quick/ASTExceptionSpecification.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/parser/ast/quick/ASTExpression.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/parser/ast/quick/ASTExpressionInitializerClause.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/parser/ast/quick/ASTField.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/parser/ast/quick/ASTFunction.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/parser/ast/quick/ASTIdExpression.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/parser/ast/quick/ASTInitializerClause.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/parser/ast/quick/ASTInitializerListInitializerClause.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/parser/ast/quick/ASTLinkageSpecification.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/parser/ast/quick/ASTLiteralExpression.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/parser/ast/quick/ASTMethod.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/parser/ast/quick/ASTNamespaceAlias.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/parser/ast/quick/ASTNamespaceDefinition.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/parser/ast/quick/ASTNewDescriptor.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/parser/ast/quick/ASTNewExpression.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/parser/ast/quick/ASTNode.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/parser/ast/quick/ASTParameterDeclaration.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/parser/ast/quick/ASTScopedTypeSpecifier.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/parser/ast/quick/ASTSimpleTypeSpecifier.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/parser/ast/quick/ASTTemplateDeclaration.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/parser/ast/quick/ASTTemplateInstantiation.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/parser/ast/quick/ASTTemplateParameter.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/parser/ast/quick/ASTTemplateSpecialization.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/parser/ast/quick/ASTTypeId.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/parser/ast/quick/ASTTypeIdExpression.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/parser/ast/quick/ASTTypedefDeclaration.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/parser/ast/quick/ASTUnaryExpression.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/parser/ast/quick/ASTUnaryIdExpression.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/parser/ast/quick/ASTUnaryTypeIdExpression.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/parser/ast/quick/ASTUsingDeclaration.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/parser/ast/quick/ASTUsingDirective.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/parser/ast/quick/ASTVariable.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/parser/ast/quick/ExpressionFactory.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/parser/ast/quick/GCCASTExpressionExtension.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/parser/ast/quick/IASTQClassSpecifier.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/parser/ast/quick/IASTQScope.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/parser/ast/quick/QuickParseASTFactory.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/parser/problem/BaseProblemFactory.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/parser/problem/IProblemFactory.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/parser/problem/Problem.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/parser/pst/AbstractSymbolExtension.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/parser/pst/BasicSymbol.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/parser/pst/BasicTypeInfo.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/parser/pst/ContainerSymbol.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/parser/pst/DeferredTemplateInstance.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/parser/pst/DerivableContainerSymbol.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/parser/pst/ExtensibleSymbol.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/parser/pst/ExtensibleSymbolExtension.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/parser/pst/ForewardDeclaredSymbolExtension.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/parser/pst/IContainerSymbol.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/parser/pst/IDeferredTemplateInstance.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/parser/pst/IDerivableContainerSymbol.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/parser/pst/IExtensibleSymbol.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/parser/pst/IParameterizedSymbol.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/parser/pst/ISpecializedSymbol.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/parser/pst/ISymbol.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/parser/pst/ISymbolASTExtension.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/parser/pst/ISymbolOwner.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/parser/pst/ITemplateFactory.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/parser/pst/ITemplateSymbol.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/parser/pst/ITypeInfo.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/parser/pst/IUsingDeclarationSymbol.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/parser/pst/IUsingDirectiveSymbol.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/parser/pst/NamespaceSymbolExtension.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/parser/pst/ParameterizedSymbol.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/parser/pst/ParserSymbolTable.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/parser/pst/ParserSymbolTableError.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/parser/pst/ParserSymbolTableException.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/parser/pst/SpecializedSymbol.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/parser/pst/StandardSymbolExtension.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/parser/pst/TemplateEngine.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/parser/pst/TemplateFactory.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/parser/pst/TemplateParameterTypeInfo.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/parser/pst/TemplateSymbol.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/parser/pst/TemplateSymbolExtension.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/parser/pst/TypeFilter.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/parser/pst/TypeInfo.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/parser/pst/TypeInfoProvider.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/parser/pst/UndefinedTemplateSymbol.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/parser/pst/UsingDeclarationSymbol.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/parser/pst/UsingDirectiveSymbol.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/parser/scanner2/BaseScanner.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/parser/scanner2/DOMScanner.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/parser/scanner2/DependencyTree.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/parser/scanner2/DynamicFunctionStyleMacro.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/parser/scanner2/DynamicStyleMacro.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/parser/scanner2/FileCodeReaderFactory.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/parser/scanner2/FunctionStyleMacro.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/parser/scanner2/GCCOldScannerExtensionConfiguration.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/parser/scanner2/GCCScannerExtensionConfiguration.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/parser/scanner2/GNUScannerExtensionConfiguration.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/parser/scanner2/GPPOldScannerExtensionConfiguration.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/parser/scanner2/GPPScannerExtensionConfiguration.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/parser/scanner2/IDependencyNodeHost.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/parser/scanner2/ILocationResolver.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/parser/scanner2/IScannerExtensionConfiguration.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/parser/scanner2/IScannerPreprocessorLog.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/parser/scanner2/InclusionNode.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/parser/scanner2/InvalidPreprocessorNodeException.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/parser/scanner2/LocationMap.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/parser/scanner2/MacroBinding.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/parser/scanner2/MacroExpansionToken.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/parser/scanner2/ObjectStyleMacro.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/parser/scanner2/Scanner2.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/parser/scanner2/ScannerASTProblem.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/parser/scanner2/ScannerCallbackManager.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/parser/scanner2/ScannerProblemFactory.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/parser/scanner2/ScannerUtility.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/parser/token/AbstractToken.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/parser/token/BasicTokenDuple.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/parser/token/ImagedExpansionToken.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/parser/token/ImagedToken.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/parser/token/KeywordSets.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/parser/token/OffsetDuple.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/parser/token/OperatorTokenDuple.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/parser/token/SimpleExpansionToken.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/parser/token/SimpleToken.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/parser/token/TemplateTokenDuple.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/parser/token/TokenFactory.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/parser/util/TraceUtil.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/pdom/CModelListener.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/pdom/Messages.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/pdom/PDOM.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/pdom/PDOMIndexerJob.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/pdom/PDOMLanguage.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/pdom/PDOMManager.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/pdom/WritablePDOM.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/pdom/db/BTree.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/pdom/db/Chunk.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/pdom/db/DBStatus.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/pdom/db/Database.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/pdom/db/IBTreeComparator.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/pdom/db/IBTreeVisitor.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/pdom/db/IString.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/pdom/db/ListItem.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/pdom/db/LongString.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/pdom/db/Messages.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/pdom/db/PDOMNodeLinkedList.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/pdom/db/ShortString.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/pdom/db/messages.properties core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/pdom/dom/BindingCollector.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/pdom/dom/FindBinding.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/pdom/dom/IPDOMLinkageFactory.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/pdom/dom/IPDOMMemberOwner.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/pdom/dom/Messages.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/pdom/dom/NamedNodeCollector.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/pdom/dom/PDOMASTAdapter.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/pdom/dom/PDOMArrayType.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/pdom/dom/PDOMBinding.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/pdom/dom/PDOMFile.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/pdom/dom/PDOMFileLocalScope.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/pdom/dom/PDOMInclude.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/pdom/dom/PDOMLinkage.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/pdom/dom/PDOMMacro.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/pdom/dom/PDOMMacroParameter.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/pdom/dom/PDOMName.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/pdom/dom/PDOMNamedNode.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/pdom/dom/PDOMNode.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/pdom/dom/PDOMNotImplementedError.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/pdom/dom/PDOMPointerType.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/pdom/dom/PDOMProjectIndexLocationConverter.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/pdom/dom/PDOMQualifierType.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/pdom/dom/c/PDOMCAnnotation.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/pdom/dom/c/PDOMCBasicType.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/pdom/dom/c/PDOMCEnumeration.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/pdom/dom/c/PDOMCEnumerator.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/pdom/dom/c/PDOMCField.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/pdom/dom/c/PDOMCFunction.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/pdom/dom/c/PDOMCLinkage.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/pdom/dom/c/PDOMCLinkageFactory.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/pdom/dom/c/PDOMCParameter.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/pdom/dom/c/PDOMCStructure.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/pdom/dom/c/PDOMCTypedef.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/pdom/dom/c/PDOMCVariable.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/pdom/dom/cpp/CPPFindBinding.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/pdom/dom/cpp/PDOMCPPAnnotation.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/pdom/dom/cpp/PDOMCPPBase.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/pdom/dom/cpp/PDOMCPPBasicType.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/pdom/dom/cpp/PDOMCPPBinding.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/pdom/dom/cpp/PDOMCPPClassType.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/pdom/dom/cpp/PDOMCPPConstructor.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/pdom/dom/cpp/PDOMCPPEnumeration.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/pdom/dom/cpp/PDOMCPPEnumerator.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/pdom/dom/cpp/PDOMCPPField.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/pdom/dom/cpp/PDOMCPPFunction.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/pdom/dom/cpp/PDOMCPPLinkage.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/pdom/dom/cpp/PDOMCPPLinkageFactory.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/pdom/dom/cpp/PDOMCPPMethod.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/pdom/dom/cpp/PDOMCPPNamespace.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/pdom/dom/cpp/PDOMCPPNamespaceAlias.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/pdom/dom/cpp/PDOMCPPParameter.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/pdom/dom/cpp/PDOMCPPPointerToMemberType.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/pdom/dom/cpp/PDOMCPPReferenceType.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/pdom/dom/cpp/PDOMCPPTypedef.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/pdom/dom/cpp/PDOMCPPVariable.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/pdom/dom/messages.properties core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/pdom/indexer/IndexerASTVisitor.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/pdom/indexer/Messages.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/pdom/indexer/PDOMIndexerTask.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/pdom/indexer/fast/PDOMFastHandleDelta.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/pdom/indexer/fast/PDOMFastIndexer.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/pdom/indexer/fast/PDOMFastIndexerJob.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/pdom/indexer/fast/PDOMFastReindex.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/pdom/indexer/full/PDOMFullHandleDelta.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/pdom/indexer/full/PDOMFullIndexer.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/pdom/indexer/full/PDOMFullIndexerJob.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/pdom/indexer/full/PDOMFullReindex.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/pdom/indexer/messages.properties core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/pdom/indexer/nulli/PDOMNullIndexer.java core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/pdom/messages.properties core/org.eclipse.cdt.core/plugin.properties core/org.eclipse.cdt.core/plugin.xml core/org.eclipse.cdt.core/schema/CBuildConsole.exsd core/org.eclipse.cdt.core/schema/CConfigurationDataProvider.exsd core/org.eclipse.cdt.core/schema/CIndexer.exsd core/org.eclipse.cdt.core/schema/CLanguage.exsd core/org.eclipse.cdt.core/schema/CProject.exsd core/org.eclipse.cdt.core/schema/CodeFormatter.exsd core/org.eclipse.cdt.core/schema/PathEntryContainerInitializer.exsd core/org.eclipse.cdt.core/schema/ProcessList.exsd core/org.eclipse.cdt.core/schema/language.exsd core/org.eclipse.cdt.core/schema/projectConverter.exsd core/org.eclipse.cdt.core/src/org/eclipse/cdt/core/AbstractCExtension.java core/org.eclipse.cdt.core/src/org/eclipse/cdt/core/CCProjectNature.java core/org.eclipse.cdt.core/src/org/eclipse/cdt/core/CConventions.java core/org.eclipse.cdt.core/src/org/eclipse/cdt/core/CCorePlugin.java core/org.eclipse.cdt.core/src/org/eclipse/cdt/core/CCorePreferenceConstants.java core/org.eclipse.cdt.core/src/org/eclipse/cdt/core/CDescriptorEvent.java core/org.eclipse.cdt.core/src/org/eclipse/cdt/core/CProjectNature.java core/org.eclipse.cdt.core/src/org/eclipse/cdt/core/CommandLauncher.java core/org.eclipse.cdt.core/src/org/eclipse/cdt/core/ConsoleOutputStream.java core/org.eclipse.cdt.core/src/org/eclipse/cdt/core/ErrorParserManager.java core/org.eclipse.cdt.core/src/org/eclipse/cdt/core/IAddress.java core/org.eclipse.cdt.core/src/org/eclipse/cdt/core/IAddressFactory.java core/org.eclipse.cdt.core/src/org/eclipse/cdt/core/IBinaryParser.java core/org.eclipse.cdt.core/src/org/eclipse/cdt/core/ICDescriptor.java core/org.eclipse.cdt.core/src/org/eclipse/cdt/core/ICDescriptorListener.java core/org.eclipse.cdt.core/src/org/eclipse/cdt/core/ICDescriptorManager.java core/org.eclipse.cdt.core/src/org/eclipse/cdt/core/ICDescriptorOperation.java core/org.eclipse.cdt.core/src/org/eclipse/cdt/core/ICExtension.java core/org.eclipse.cdt.core/src/org/eclipse/cdt/core/ICExtensionDescriptor.java core/org.eclipse.cdt.core/src/org/eclipse/cdt/core/ICExtensionReference.java core/org.eclipse.cdt.core/src/org/eclipse/cdt/core/ICLogConstants.java core/org.eclipse.cdt.core/src/org/eclipse/cdt/core/ICOwner.java core/org.eclipse.cdt.core/src/org/eclipse/cdt/core/ICOwnerInfo.java core/org.eclipse.cdt.core/src/org/eclipse/cdt/core/IConsoleParser.java core/org.eclipse.cdt.core/src/org/eclipse/cdt/core/IErrorParser.java core/org.eclipse.cdt.core/src/org/eclipse/cdt/core/IMarkerGenerator.java core/org.eclipse.cdt.core/src/org/eclipse/cdt/core/IPositionConverter.java core/org.eclipse.cdt.core/src/org/eclipse/cdt/core/IPositionTrackerManager.java core/org.eclipse.cdt.core/src/org/eclipse/cdt/core/IProcessInfo.java core/org.eclipse.cdt.core/src/org/eclipse/cdt/core/IProcessList.java core/org.eclipse.cdt.core/src/org/eclipse/cdt/core/ISymbolReader.java core/org.eclipse.cdt.core/src/org/eclipse/cdt/core/ProblemMarkerInfo.java core/org.eclipse.cdt.core/src/org/eclipse/cdt/core/ToolFactory.java core/org.eclipse.cdt.core/src/org/eclipse/cdt/core/cdtvariables/CdtVariable.java core/org.eclipse.cdt.core/src/org/eclipse/cdt/core/cdtvariables/CdtVariableException.java core/org.eclipse.cdt.core/src/org/eclipse/cdt/core/cdtvariables/CdtVariableStatus.java core/org.eclipse.cdt.core/src/org/eclipse/cdt/core/cdtvariables/ICdtVariable.java core/org.eclipse.cdt.core/src/org/eclipse/cdt/core/cdtvariables/ICdtVariableManager.java core/org.eclipse.cdt.core/src/org/eclipse/cdt/core/cdtvariables/ICdtVariableStatus.java core/org.eclipse.cdt.core/src/org/eclipse/cdt/core/cdtvariables/ICdtVariablesContributor.java core/org.eclipse.cdt.core/src/org/eclipse/cdt/core/dom/CDOM.java core/org.eclipse.cdt.core/src/org/eclipse/cdt/core/dom/IASTServiceProvider.java core/org.eclipse.cdt.core/src/org/eclipse/cdt/core/envvar/EnvirinmentVariable.java core/org.eclipse.cdt.core/src/org/eclipse/cdt/core/envvar/IContributedEnvironment.java core/org.eclipse.cdt.core/src/org/eclipse/cdt/core/envvar/IEnvironmentContributor.java core/org.eclipse.cdt.core/src/org/eclipse/cdt/core/envvar/IEnvironmentVariable.java core/org.eclipse.cdt.core/src/org/eclipse/cdt/core/envvar/IEnvironmentVariableManager.java core/org.eclipse.cdt.core/src/org/eclipse/cdt/core/formatter/CodeFormatter.java core/org.eclipse.cdt.core/src/org/eclipse/cdt/core/formatter/DefaultCodeFormatterConstants.java core/org.eclipse.cdt.core/src/org/eclipse/cdt/core/parser/CodeReaderCache.java core/org.eclipse.cdt.core/src/org/eclipse/cdt/core/parser/IScannerInfoChangeListener.java core/org.eclipse.cdt.core/src/org/eclipse/cdt/core/parser/IScannerInfoProvider.java core/org.eclipse.cdt.core/src/org/eclipse/cdt/core/parser/ParserTimeOut.java core/org.eclipse.cdt.core/src/org/eclipse/cdt/core/parser/ParserUtil.java core/org.eclipse.cdt.core/src/org/eclipse/cdt/core/resources/ACBuilder.java core/org.eclipse.cdt.core/src/org/eclipse/cdt/core/resources/FileStorage.java core/org.eclipse.cdt.core/src/org/eclipse/cdt/core/resources/IConsole.java core/org.eclipse.cdt.core/src/org/eclipse/cdt/core/resources/IPathEntryStore.java core/org.eclipse.cdt.core/src/org/eclipse/cdt/core/resources/IPathEntryStoreListener.java core/org.eclipse.cdt.core/src/org/eclipse/cdt/core/resources/IPathEntryVariableChangeListener.java core/org.eclipse.cdt.core/src/org/eclipse/cdt/core/resources/IPathEntryVariableManager.java core/org.eclipse.cdt.core/src/org/eclipse/cdt/core/resources/PathEntryStoreChangedEvent.java core/org.eclipse.cdt.core/src/org/eclipse/cdt/core/resources/PathEntryVariableChangeEvent.java core/org.eclipse.cdt.core/src/org/eclipse/cdt/core/resources/ScannerInfo.java core/org.eclipse.cdt.core/src/org/eclipse/cdt/core/resources/ScannerProvider.java core/org.eclipse.cdt.core/src/org/eclipse/cdt/internal/core/CConfigBasedDescriptor.java core/org.eclipse.cdt.core/src/org/eclipse/cdt/internal/core/CConfigBasedDescriptorManager.java core/org.eclipse.cdt.core/src/org/eclipse/cdt/internal/core/CContentTypes.java core/org.eclipse.cdt.core/src/org/eclipse/cdt/internal/core/CCoreInternals.java core/org.eclipse.cdt.core/src/org/eclipse/cdt/internal/core/CCorePluginResources.properties core/org.eclipse.cdt.core/src/org/eclipse/cdt/internal/core/CCorePreferenceInitializer.java core/org.eclipse.cdt.core/src/org/eclipse/cdt/internal/core/CDTLogWriter.java core/org.eclipse.cdt.core/src/org/eclipse/cdt/internal/core/CDescriptor.java core/org.eclipse.cdt.core/src/org/eclipse/cdt/internal/core/CDescriptorManager.java core/org.eclipse.cdt.core/src/org/eclipse/cdt/internal/core/CExtensionDescriptor.java core/org.eclipse.cdt.core/src/org/eclipse/cdt/internal/core/CExtensionInfo.java core/org.eclipse.cdt.core/src/org/eclipse/cdt/internal/core/CExtensionReference.java core/org.eclipse.cdt.core/src/org/eclipse/cdt/internal/core/COwner.java core/org.eclipse.cdt.core/src/org/eclipse/cdt/internal/core/COwnerConfiguration.java core/org.eclipse.cdt.core/src/org/eclipse/cdt/internal/core/ConsoleOutputSniffer.java core/org.eclipse.cdt.core/src/org/eclipse/cdt/internal/core/InternalCExtension.java core/org.eclipse.cdt.core/src/org/eclipse/cdt/internal/core/PathEntryVariableManager.java core/org.eclipse.cdt.core/src/org/eclipse/cdt/internal/core/PathEntryVariableResolver.java core/org.eclipse.cdt.core/src/org/eclipse/cdt/internal/core/PositionTracker.java core/org.eclipse.cdt.core/src/org/eclipse/cdt/internal/core/PositionTrackerChain.java core/org.eclipse.cdt.core/src/org/eclipse/cdt/internal/core/PositionTrackerManager.java core/org.eclipse.cdt.core/src/org/eclipse/cdt/internal/core/ProcessClosure.java core/org.eclipse.cdt.core/src/org/eclipse/cdt/internal/core/SystemBuildConsole.java core/org.eclipse.cdt.core/src/org/eclipse/cdt/internal/core/cdtvariables/BuildSystemVariableSupplier.java core/org.eclipse.cdt.core/src/org/eclipse/cdt/internal/core/cdtvariables/CdtMacroSupplier.java core/org.eclipse.cdt.core/src/org/eclipse/cdt/internal/core/cdtvariables/CdtVariableManager.java core/org.eclipse.cdt.core/src/org/eclipse/cdt/internal/core/cdtvariables/CoreMacroSupplierBase.java core/org.eclipse.cdt.core/src/org/eclipse/cdt/internal/core/cdtvariables/CoreVariableSubstitutor.java core/org.eclipse.cdt.core/src/org/eclipse/cdt/internal/core/cdtvariables/DefaultVariableContextInfo.java core/org.eclipse.cdt.core/src/org/eclipse/cdt/internal/core/cdtvariables/EclipseVariablesVariableSupplier.java core/org.eclipse.cdt.core/src/org/eclipse/cdt/internal/core/cdtvariables/EnvironmentVariableSupplier.java core/org.eclipse.cdt.core/src/org/eclipse/cdt/internal/core/cdtvariables/ICoreVariableContextInfo.java core/org.eclipse.cdt.core/src/org/eclipse/cdt/internal/core/cdtvariables/StorableCdtVariable.java core/org.eclipse.cdt.core/src/org/eclipse/cdt/internal/core/cdtvariables/StorableCdtVariables.java core/org.eclipse.cdt.core/src/org/eclipse/cdt/internal/core/cdtvariables/UserDefinedVariableSupplier.java core/org.eclipse.cdt.core/src/org/eclipse/cdt/internal/core/dom/InternalASTServiceProvider.java core/org.eclipse.cdt.core/src/org/eclipse/cdt/internal/core/dom/NullCodeReaderFactory.java core/org.eclipse.cdt.core/src/org/eclipse/cdt/internal/core/dom/PartialWorkingCopyCodeReaderFactory.java core/org.eclipse.cdt.core/src/org/eclipse/cdt/internal/core/dom/SavedCodeReaderFactory.java core/org.eclipse.cdt.core/src/org/eclipse/cdt/internal/core/dom/WorkingCopyCodeReaderFactory.java core/org.eclipse.cdt.core/src/org/eclipse/cdt/internal/core/envvar/BuildSustemEnvironmentSupplier.java core/org.eclipse.cdt.core/src/org/eclipse/cdt/internal/core/envvar/ContributedEnvironment.java core/org.eclipse.cdt.core/src/org/eclipse/cdt/internal/core/envvar/DefaultEnvironmentContextInfo.java core/org.eclipse.cdt.core/src/org/eclipse/cdt/internal/core/envvar/EclipseEnvironmentSupplier.java core/org.eclipse.cdt.core/src/org/eclipse/cdt/internal/core/envvar/EnvVarCollector.java core/org.eclipse.cdt.core/src/org/eclipse/cdt/internal/core/envvar/EnvVarDescriptor.java core/org.eclipse.cdt.core/src/org/eclipse/cdt/internal/core/envvar/EnvironmentVariableManager.java core/org.eclipse.cdt.core/src/org/eclipse/cdt/internal/core/envvar/ICoreEnvironmentVariableSupplier.java core/org.eclipse.cdt.core/src/org/eclipse/cdt/internal/core/envvar/IEnvironmentContextInfo.java core/org.eclipse.cdt.core/src/org/eclipse/cdt/internal/core/envvar/UserDefinedEnvironmentSupplier.java core/org.eclipse.cdt.core/src/org/eclipse/cdt/internal/core/parser/ParserLogService.java core/org.eclipse.cdt.core/src/org/eclipse/cdt/internal/errorparsers/AbstractErrorParser.java core/org.eclipse.cdt.core/src/org/eclipse/cdt/internal/errorparsers/ErrorPattern.java core/org.eclipse.cdt.core/src/org/eclipse/cdt/internal/errorparsers/GASErrorParser.java core/org.eclipse.cdt.core/src/org/eclipse/cdt/internal/errorparsers/GCCErrorParser.java core/org.eclipse.cdt.core/src/org/eclipse/cdt/internal/errorparsers/GLDErrorParser.java core/org.eclipse.cdt.core/src/org/eclipse/cdt/internal/errorparsers/MakeErrorParser.java core/org.eclipse.cdt.core/src/org/eclipse/cdt/internal/errorparsers/Messages.java core/org.eclipse.cdt.core/src/org/eclipse/cdt/internal/errorparsers/VCErrorParser.java core/org.eclipse.cdt.core/src/org/eclipse/cdt/internal/errorparsers/messages.properties core/org.eclipse.cdt.core/src/org/eclipse/cdt/internal/formatter/AbortFormatting.java core/org.eclipse.cdt.core/src/org/eclipse/cdt/internal/formatter/CCodeFormatter.java core/org.eclipse.cdt.core/src/org/eclipse/cdt/internal/formatter/CodeFormatterVisitor.java core/org.eclipse.cdt.core/src/org/eclipse/cdt/internal/formatter/DefaultCodeFormatterOptions.java core/org.eclipse.cdt.core/src/org/eclipse/cdt/internal/formatter/Location.java core/org.eclipse.cdt.core/src/org/eclipse/cdt/internal/formatter/OptimizedReplaceEdit.java core/org.eclipse.cdt.core/src/org/eclipse/cdt/internal/formatter/Scribe.java core/org.eclipse.cdt.core/src/org/eclipse/cdt/internal/formatter/align/Alignment.java core/org.eclipse.cdt.core/src/org/eclipse/cdt/internal/formatter/align/AlignmentException.java core/org.eclipse.cdt.core/src/org/eclipse/cdt/internal/formatter/scanner/Scanner.java core/org.eclipse.cdt.core/src/org/eclipse/cdt/internal/formatter/scanner/ScannerContext.java core/org.eclipse.cdt.core/src/org/eclipse/cdt/internal/formatter/scanner/SimpleScanner.java core/org.eclipse.cdt.core/src/org/eclipse/cdt/internal/formatter/scanner/Token.java core/org.eclipse.cdt.core/utils/org/eclipse/cdt/internal/core/CharOperation.java core/org.eclipse.cdt.core/utils/org/eclipse/cdt/internal/core/Messages.java core/org.eclipse.cdt.core/utils/org/eclipse/cdt/internal/core/Util.java core/org.eclipse.cdt.core/utils/org/eclipse/cdt/internal/core/messages.properties core/org.eclipse.cdt.core/utils/org/eclipse/cdt/utils/AR.java core/org.eclipse.cdt.core/utils/org/eclipse/cdt/utils/Addr2line.java core/org.eclipse.cdt.core/utils/org/eclipse/cdt/utils/Addr32.java core/org.eclipse.cdt.core/utils/org/eclipse/cdt/utils/Addr32Factory.java core/org.eclipse.cdt.core/utils/org/eclipse/cdt/utils/Addr64.java core/org.eclipse.cdt.core/utils/org/eclipse/cdt/utils/Addr64Factory.java core/org.eclipse.cdt.core/utils/org/eclipse/cdt/utils/BinaryFile.java core/org.eclipse.cdt.core/utils/org/eclipse/cdt/utils/BinaryObjectAdapter.java core/org.eclipse.cdt.core/utils/org/eclipse/cdt/utils/CPPFilt.java core/org.eclipse.cdt.core/utils/org/eclipse/cdt/utils/CygPath.java core/org.eclipse.cdt.core/utils/org/eclipse/cdt/utils/DefaultCygwinToolFactory.java core/org.eclipse.cdt.core/utils/org/eclipse/cdt/utils/DefaultGnuToolFactory.java core/org.eclipse.cdt.core/utils/org/eclipse/cdt/utils/ERandomAccessFile.java core/org.eclipse.cdt.core/utils/org/eclipse/cdt/utils/ICygwinToolsFactroy.java core/org.eclipse.cdt.core/utils/org/eclipse/cdt/utils/IGnuToolFactory.java core/org.eclipse.cdt.core/utils/org/eclipse/cdt/utils/NM.java core/org.eclipse.cdt.core/utils/org/eclipse/cdt/utils/Objdump.java core/org.eclipse.cdt.core/utils/org/eclipse/cdt/utils/PathUtil.java core/org.eclipse.cdt.core/utils/org/eclipse/cdt/utils/Platform.java core/org.eclipse.cdt.core/utils/org/eclipse/cdt/utils/Symbol.java core/org.eclipse.cdt.core/utils/org/eclipse/cdt/utils/WindowsRegistry.java core/org.eclipse.cdt.core/utils/org/eclipse/cdt/utils/cdtvariables/CdtVariableResolver.java core/org.eclipse.cdt.core/utils/org/eclipse/cdt/utils/cdtvariables/ICdtVariableSupplier.java core/org.eclipse.cdt.core/utils/org/eclipse/cdt/utils/cdtvariables/IVariableContextInfo.java core/org.eclipse.cdt.core/utils/org/eclipse/cdt/utils/cdtvariables/IVariableSubstitutor.java core/org.eclipse.cdt.core/utils/org/eclipse/cdt/utils/cdtvariables/SupplierBasedCdtVariableManager.java core/org.eclipse.cdt.core/utils/org/eclipse/cdt/utils/cdtvariables/SupplierBasedCdtVariableStatus.java core/org.eclipse.cdt.core/utils/org/eclipse/cdt/utils/cdtvariables/SupplierBasedCdtVariableSubstitutor.java core/org.eclipse.cdt.core/utils/org/eclipse/cdt/utils/coff/CodeViewReader.java core/org.eclipse.cdt.core/utils/org/eclipse/cdt/utils/coff/Coff.java core/org.eclipse.cdt.core/utils/org/eclipse/cdt/utils/coff/Exe.java core/org.eclipse.cdt.core/utils/org/eclipse/cdt/utils/coff/PE.java core/org.eclipse.cdt.core/utils/org/eclipse/cdt/utils/coff/PEArchive.java core/org.eclipse.cdt.core/utils/org/eclipse/cdt/utils/coff/PEConstants.java core/org.eclipse.cdt.core/utils/org/eclipse/cdt/utils/coff/ReadMemoryAccess.java core/org.eclipse.cdt.core/utils/org/eclipse/cdt/utils/coff/parser/CygwinPEBinaryArchive.java core/org.eclipse.cdt.core/utils/org/eclipse/cdt/utils/coff/parser/CygwinPEBinaryExecutable.java core/org.eclipse.cdt.core/utils/org/eclipse/cdt/utils/coff/parser/CygwinPEBinaryObject.java core/org.eclipse.cdt.core/utils/org/eclipse/cdt/utils/coff/parser/CygwinPEBinaryShared.java core/org.eclipse.cdt.core/utils/org/eclipse/cdt/utils/coff/parser/CygwinPEParser.java core/org.eclipse.cdt.core/utils/org/eclipse/cdt/utils/coff/parser/CygwinSymbol.java core/org.eclipse.cdt.core/utils/org/eclipse/cdt/utils/coff/parser/PEBinaryArchive.java core/org.eclipse.cdt.core/utils/org/eclipse/cdt/utils/coff/parser/PEBinaryExecutable.java core/org.eclipse.cdt.core/utils/org/eclipse/cdt/utils/coff/parser/PEBinaryObject.java core/org.eclipse.cdt.core/utils/org/eclipse/cdt/utils/coff/parser/PEBinaryShared.java core/org.eclipse.cdt.core/utils/org/eclipse/cdt/utils/coff/parser/PEParser.java core/org.eclipse.cdt.core/utils/org/eclipse/cdt/utils/debug/DebugArrayType.java core/org.eclipse.cdt.core/utils/org/eclipse/cdt/utils/debug/DebugBaseType.java core/org.eclipse.cdt.core/utils/org/eclipse/cdt/utils/debug/DebugCrossRefType.java core/org.eclipse.cdt.core/utils/org/eclipse/cdt/utils/debug/DebugDerivedType.java core/org.eclipse.cdt.core/utils/org/eclipse/cdt/utils/debug/DebugEnumField.java core/org.eclipse.cdt.core/utils/org/eclipse/cdt/utils/debug/DebugEnumType.java core/org.eclipse.cdt.core/utils/org/eclipse/cdt/utils/debug/DebugField.java core/org.eclipse.cdt.core/utils/org/eclipse/cdt/utils/debug/DebugFunctionType.java core/org.eclipse.cdt.core/utils/org/eclipse/cdt/utils/debug/DebugParameterKind.java core/org.eclipse.cdt.core/utils/org/eclipse/cdt/utils/debug/DebugPointerType.java core/org.eclipse.cdt.core/utils/org/eclipse/cdt/utils/debug/DebugReferenceType.java core/org.eclipse.cdt.core/utils/org/eclipse/cdt/utils/debug/DebugStructType.java core/org.eclipse.cdt.core/utils/org/eclipse/cdt/utils/debug/DebugType.java core/org.eclipse.cdt.core/utils/org/eclipse/cdt/utils/debug/DebugUnknownType.java core/org.eclipse.cdt.core/utils/org/eclipse/cdt/utils/debug/DebugVariableKind.java core/org.eclipse.cdt.core/utils/org/eclipse/cdt/utils/debug/DebugVisibility.java core/org.eclipse.cdt.core/utils/org/eclipse/cdt/utils/debug/IDebugEntryRequestor.java core/org.eclipse.cdt.core/utils/org/eclipse/cdt/utils/debug/dwarf/Dwarf.java core/org.eclipse.cdt.core/utils/org/eclipse/cdt/utils/debug/dwarf/DwarfConstants.java core/org.eclipse.cdt.core/utils/org/eclipse/cdt/utils/debug/dwarf/DwarfReader.java core/org.eclipse.cdt.core/utils/org/eclipse/cdt/utils/debug/stabs/StabConstant.java core/org.eclipse.cdt.core/utils/org/eclipse/cdt/utils/debug/stabs/Stabs.java core/org.eclipse.cdt.core/utils/org/eclipse/cdt/utils/debug/stabs/StabsReader.java core/org.eclipse.cdt.core/utils/org/eclipse/cdt/utils/debug/stabs/StringField.java core/org.eclipse.cdt.core/utils/org/eclipse/cdt/utils/debug/stabs/TypeInformation.java core/org.eclipse.cdt.core/utils/org/eclipse/cdt/utils/debug/stabs/TypeNumber.java core/org.eclipse.cdt.core/utils/org/eclipse/cdt/utils/debug/tools/DebugAddr2line.java core/org.eclipse.cdt.core/utils/org/eclipse/cdt/utils/debug/tools/DebugDump.java core/org.eclipse.cdt.core/utils/org/eclipse/cdt/utils/debug/tools/DebugSym.java core/org.eclipse.cdt.core/utils/org/eclipse/cdt/utils/debug/tools/DebugSymsRequestor.java core/org.eclipse.cdt.core/utils/org/eclipse/cdt/utils/elf/AR.java core/org.eclipse.cdt.core/utils/org/eclipse/cdt/utils/elf/Elf.java core/org.eclipse.cdt.core/utils/org/eclipse/cdt/utils/elf/ElfHelper.java core/org.eclipse.cdt.core/utils/org/eclipse/cdt/utils/elf/SymbolSortCompare.java core/org.eclipse.cdt.core/utils/org/eclipse/cdt/utils/elf/parser/ElfBinaryArchive.java core/org.eclipse.cdt.core/utils/org/eclipse/cdt/utils/elf/parser/ElfBinaryExecutable.java core/org.eclipse.cdt.core/utils/org/eclipse/cdt/utils/elf/parser/ElfBinaryObject.java core/org.eclipse.cdt.core/utils/org/eclipse/cdt/utils/elf/parser/ElfBinaryShared.java core/org.eclipse.cdt.core/utils/org/eclipse/cdt/utils/elf/parser/ElfParser.java core/org.eclipse.cdt.core/utils/org/eclipse/cdt/utils/elf/parser/GNUElfBinaryArchive.java core/org.eclipse.cdt.core/utils/org/eclipse/cdt/utils/elf/parser/GNUElfBinaryExecutable.java core/org.eclipse.cdt.core/utils/org/eclipse/cdt/utils/elf/parser/GNUElfBinaryObject.java core/org.eclipse.cdt.core/utils/org/eclipse/cdt/utils/elf/parser/GNUElfBinaryShared.java core/org.eclipse.cdt.core/utils/org/eclipse/cdt/utils/elf/parser/GNUElfParser.java core/org.eclipse.cdt.core/utils/org/eclipse/cdt/utils/elf/parser/GNUSymbol.java core/org.eclipse.cdt.core/utils/org/eclipse/cdt/utils/envvar/EnvVarOperationProcessor.java core/org.eclipse.cdt.core/utils/org/eclipse/cdt/utils/envvar/EnvironmentCollector.java core/org.eclipse.cdt.core/utils/org/eclipse/cdt/utils/envvar/StorableEnvVar.java core/org.eclipse.cdt.core/utils/org/eclipse/cdt/utils/envvar/StorableEnvironment.java core/org.eclipse.cdt.core/utils/org/eclipse/cdt/utils/envvar/StorableEnvironmentLoader.java core/org.eclipse.cdt.core/utils/org/eclipse/cdt/utils/macho/AR.java core/org.eclipse.cdt.core/utils/org/eclipse/cdt/utils/macho/ERandomAccessFile.java core/org.eclipse.cdt.core/utils/org/eclipse/cdt/utils/macho/MachO.java core/org.eclipse.cdt.core/utils/org/eclipse/cdt/utils/macho/MachOHelper.java core/org.eclipse.cdt.core/utils/org/eclipse/cdt/utils/macho/parser/MachOBinaryArchive.java core/org.eclipse.cdt.core/utils/org/eclipse/cdt/utils/macho/parser/MachOBinaryExecutable.java core/org.eclipse.cdt.core/utils/org/eclipse/cdt/utils/macho/parser/MachOBinaryObject.java core/org.eclipse.cdt.core/utils/org/eclipse/cdt/utils/macho/parser/MachOBinaryShared.java core/org.eclipse.cdt.core/utils/org/eclipse/cdt/utils/macho/parser/MachOParser.java core/org.eclipse.cdt.core/utils/org/eclipse/cdt/utils/pty/PTY.java core/org.eclipse.cdt.core/utils/org/eclipse/cdt/utils/pty/PTYInputStream.java core/org.eclipse.cdt.core/utils/org/eclipse/cdt/utils/pty/PTYOutputStream.java core/org.eclipse.cdt.core/utils/org/eclipse/cdt/utils/som/AR.java core/org.eclipse.cdt.core/utils/org/eclipse/cdt/utils/som/SOM.java core/org.eclipse.cdt.core/utils/org/eclipse/cdt/utils/som/parser/SOMBinaryArchive.java core/org.eclipse.cdt.core/utils/org/eclipse/cdt/utils/som/parser/SOMBinaryExecutable.java core/org.eclipse.cdt.core/utils/org/eclipse/cdt/utils/som/parser/SOMBinaryObject.java core/org.eclipse.cdt.core/utils/org/eclipse/cdt/utils/som/parser/SOMBinaryShared.java core/org.eclipse.cdt.core/utils/org/eclipse/cdt/utils/som/parser/SOMParser.java core/org.eclipse.cdt.core/utils/org/eclipse/cdt/utils/som/parser/SomSymbol.java core/org.eclipse.cdt.core/utils/org/eclipse/cdt/utils/spawner/EnvironmentReader.java core/org.eclipse.cdt.core/utils/org/eclipse/cdt/utils/spawner/ProcessFactory.java core/org.eclipse.cdt.core/utils/org/eclipse/cdt/utils/spawner/Spawner.java core/org.eclipse.cdt.core/utils/org/eclipse/cdt/utils/spawner/SpawnerInputStream.java core/org.eclipse.cdt.core/utils/org/eclipse/cdt/utils/spawner/SpawnerOutputStream.java core/org.eclipse.cdt.core/utils/org/eclipse/cdt/utils/xcoff/AR.java core/org.eclipse.cdt.core/utils/org/eclipse/cdt/utils/xcoff/XCoff32.java core/org.eclipse.cdt.core/utils/org/eclipse/cdt/utils/xcoff/parser/XCOFF32Parser.java core/org.eclipse.cdt.core/utils/org/eclipse/cdt/utils/xcoff/parser/XCOFFBinaryArchive.java core/org.eclipse.cdt.core/utils/org/eclipse/cdt/utils/xcoff/parser/XCOFFBinaryExecutable.java core/org.eclipse.cdt.core/utils/org/eclipse/cdt/utils/xcoff/parser/XCOFFBinaryObject.java core/org.eclipse.cdt.core/utils/org/eclipse/cdt/utils/xcoff/parser/XCOFFBinaryShared.java core/org.eclipse.cdt.core/utils/org/eclipse/cdt/utils/xcoff/parser/XCoffSymbol.java core/org.eclipse.cdt.ui.tests/.classpath core/org.eclipse.cdt.ui.tests/.cvsignore core/org.eclipse.cdt.ui.tests/.options core/org.eclipse.cdt.ui.tests/.project core/org.eclipse.cdt.ui.tests/.settings/org.eclipse.jdt.core.prefs core/org.eclipse.cdt.ui.tests/.settings/org.eclipse.jdt.ui.prefs core/org.eclipse.cdt.ui.tests/.settings/org.eclipse.pde.prefs core/org.eclipse.cdt.ui.tests/ChangeLog core/org.eclipse.cdt.ui.tests/META-INF/MANIFEST.MF core/org.eclipse.cdt.ui.tests/about.html core/org.eclipse.cdt.ui.tests/build.properties core/org.eclipse.cdt.ui.tests/icons/dom_view/brkpd_obj.gif core/org.eclipse.cdt.ui.tests/icons/dom_view/cdeclaration_obj.gif core/org.eclipse.cdt.ui.tests/icons/dom_view/clear.gif core/org.eclipse.cdt.ui.tests/icons/dom_view/collapseall.gif core/org.eclipse.cdt.ui.tests/icons/dom_view/define_obj.gif core/org.eclipse.cdt.ui.tests/icons/dom_view/disassembly.gif core/org.eclipse.cdt.ui.tests/icons/dom_view/enumerator_obj.gif core/org.eclipse.cdt.ui.tests/icons/dom_view/expandall.gif core/org.eclipse.cdt.ui.tests/icons/dom_view/expression_obj.gif core/org.eclipse.cdt.ui.tests/icons/dom_view/jump_co.gif core/org.eclipse.cdt.ui.tests/icons/dom_view/method_public_obj.gif core/org.eclipse.cdt.ui.tests/icons/dom_view/output_obj.gif core/org.eclipse.cdt.ui.tests/icons/dom_view/refresh_view.gif core/org.eclipse.cdt.ui.tests/icons/dom_view/reload_view.gif core/org.eclipse.cdt.ui.tests/icons/dom_view/search_ref_obj.gif core/org.eclipse.cdt.ui.tests/icons/dom_view/showasarray_co.gif core/org.eclipse.cdt.ui.tests/icons/dom_view/source_attach_attrib.gif core/org.eclipse.cdt.ui.tests/icons/dom_view/statement_obj.gif core/org.eclipse.cdt.ui.tests/icons/dom_view/tnames_co.gif core/org.eclipse.cdt.ui.tests/icons/dom_view/types.gif core/org.eclipse.cdt.ui.tests/icons/dom_view/var_declaration_obj.gif core/org.eclipse.cdt.ui.tests/icons/dom_view/var_pointer.gif core/org.eclipse.cdt.ui.tests/icons/dom_view/var_simple.gif core/org.eclipse.cdt.ui.tests/icons/dom_view/variable_local_obj.gif core/org.eclipse.cdt.ui.tests/icons/dom_view/variable_obj.gif core/org.eclipse.cdt.ui.tests/icons/dom_view/warning_obj.gif core/org.eclipse.cdt.ui.tests/icons/dom_view/watch_globals.gif core/org.eclipse.cdt.ui.tests/icons/indexer_view/alphab_sort.gif core/org.eclipse.cdt.ui.tests/icons/indexer_view/alphab_sorted.gif core/org.eclipse.cdt.ui.tests/icons/indexer_view/class_obj.gif core/org.eclipse.cdt.ui.tests/icons/indexer_view/constructor_obj.gif core/org.eclipse.cdt.ui.tests/icons/indexer_view/constructor_ref_obj.gif core/org.eclipse.cdt.ui.tests/icons/indexer_view/derived.gif core/org.eclipse.cdt.ui.tests/icons/indexer_view/display_full_name.gif core/org.eclipse.cdt.ui.tests/icons/indexer_view/enum_obj.gif core/org.eclipse.cdt.ui.tests/icons/indexer_view/enumerator_obj.gif core/org.eclipse.cdt.ui.tests/icons/indexer_view/enumerator_ref_obj.gif core/org.eclipse.cdt.ui.tests/icons/indexer_view/field_obj.gif core/org.eclipse.cdt.ui.tests/icons/indexer_view/field_ref_obj.gif core/org.eclipse.cdt.ui.tests/icons/indexer_view/filterbutton.gif core/org.eclipse.cdt.ui.tests/icons/indexer_view/friend.gif core/org.eclipse.cdt.ui.tests/icons/indexer_view/full_name_displayed.gif core/org.eclipse.cdt.ui.tests/icons/indexer_view/function_obj.gif core/org.eclipse.cdt.ui.tests/icons/indexer_view/function_ref_obj.gif core/org.eclipse.cdt.ui.tests/icons/indexer_view/fwd_class.gif core/org.eclipse.cdt.ui.tests/icons/indexer_view/fwd_struct.gif core/org.eclipse.cdt.ui.tests/icons/indexer_view/fwd_union.gif core/org.eclipse.cdt.ui.tests/icons/indexer_view/grouped_all.gif core/org.eclipse.cdt.ui.tests/icons/indexer_view/grouped_decl.gif core/org.eclipse.cdt.ui.tests/icons/indexer_view/grouped_ref.gif core/org.eclipse.cdt.ui.tests/icons/indexer_view/grouped_type.gif core/org.eclipse.cdt.ui.tests/icons/indexer_view/include_obj.gif core/org.eclipse.cdt.ui.tests/icons/indexer_view/macroDecl_obj.gif core/org.eclipse.cdt.ui.tests/icons/indexer_view/method_public_obj.gif core/org.eclipse.cdt.ui.tests/icons/indexer_view/method_public_ref_obj.gif core/org.eclipse.cdt.ui.tests/icons/indexer_view/namespace_obj.gif core/org.eclipse.cdt.ui.tests/icons/indexer_view/namespace_ref_obj.gif core/org.eclipse.cdt.ui.tests/icons/indexer_view/ngback.gif core/org.eclipse.cdt.ui.tests/icons/indexer_view/ngnext.gif core/org.eclipse.cdt.ui.tests/icons/indexer_view/ref_obj.gif core/org.eclipse.cdt.ui.tests/icons/indexer_view/search_decl_obj.gif core/org.eclipse.cdt.ui.tests/icons/indexer_view/stats.gif core/org.eclipse.cdt.ui.tests/icons/indexer_view/struct_obj.gif core/org.eclipse.cdt.ui.tests/icons/indexer_view/super_co.gif core/org.eclipse.cdt.ui.tests/icons/indexer_view/typedecl_obj.gif core/org.eclipse.cdt.ui.tests/icons/indexer_view/typedecl_ref_obj.gif core/org.eclipse.cdt.ui.tests/icons/indexer_view/typedef_obj.gif core/org.eclipse.cdt.ui.tests/icons/indexer_view/union_obj.gif core/org.eclipse.cdt.ui.tests/icons/indexer_view/variable_obj.gif core/org.eclipse.cdt.ui.tests/icons/indexer_view/warning_icon.gif core/org.eclipse.cdt.ui.tests/icons/sample.gif core/org.eclipse.cdt.ui.tests/icons/used/brkpd_obj.gif core/org.eclipse.cdt.ui.tests/icons/used/cdeclaration_obj.gif core/org.eclipse.cdt.ui.tests/icons/used/clear.gif core/org.eclipse.cdt.ui.tests/icons/used/collapseall.gif core/org.eclipse.cdt.ui.tests/icons/used/define_obj.gif core/org.eclipse.cdt.ui.tests/icons/used/disassembly.gif core/org.eclipse.cdt.ui.tests/icons/used/enumerator_obj.gif core/org.eclipse.cdt.ui.tests/icons/used/expandall.gif core/org.eclipse.cdt.ui.tests/icons/used/expression_obj.gif core/org.eclipse.cdt.ui.tests/icons/used/jump_co.gif core/org.eclipse.cdt.ui.tests/icons/used/method_public_obj.gif core/org.eclipse.cdt.ui.tests/icons/used/output_obj.gif core/org.eclipse.cdt.ui.tests/icons/used/search_ref_obj.gif core/org.eclipse.cdt.ui.tests/icons/used/showasarray_co.gif core/org.eclipse.cdt.ui.tests/icons/used/source_attach_attrib.gif core/org.eclipse.cdt.ui.tests/icons/used/statement_obj.gif core/org.eclipse.cdt.ui.tests/icons/used/tnames_co.gif core/org.eclipse.cdt.ui.tests/icons/used/types.gif core/org.eclipse.cdt.ui.tests/icons/used/var_declaration_obj.gif core/org.eclipse.cdt.ui.tests/icons/used/var_pointer.gif core/org.eclipse.cdt.ui.tests/icons/used/var_simple.gif core/org.eclipse.cdt.ui.tests/icons/used/variable_local_obj.gif core/org.eclipse.cdt.ui.tests/icons/used/variable_obj.gif core/org.eclipse.cdt.ui.tests/icons/used/warning_obj.gif core/org.eclipse.cdt.ui.tests/icons/used/watch_globals.gif core/org.eclipse.cdt.ui.tests/plugin.xml core/org.eclipse.cdt.ui.tests/resources/ceditor/main.cpp core/org.eclipse.cdt.ui.tests/resources/contentassist/CompletionTestStart.h core/org.eclipse.cdt.ui.tests/resources/contentassist/CompletionTestStart1.cpp core/org.eclipse.cdt.ui.tests/resources/contentassist/CompletionTestStart10.cpp core/org.eclipse.cdt.ui.tests/resources/contentassist/CompletionTestStart11.cpp core/org.eclipse.cdt.ui.tests/resources/contentassist/CompletionTestStart12.h core/org.eclipse.cdt.ui.tests/resources/contentassist/CompletionTestStart13.h core/org.eclipse.cdt.ui.tests/resources/contentassist/CompletionTestStart14.cpp core/org.eclipse.cdt.ui.tests/resources/contentassist/CompletionTestStart15.cpp core/org.eclipse.cdt.ui.tests/resources/contentassist/CompletionTestStart16.cpp core/org.eclipse.cdt.ui.tests/resources/contentassist/CompletionTestStart17.cpp core/org.eclipse.cdt.ui.tests/resources/contentassist/CompletionTestStart18.cpp core/org.eclipse.cdt.ui.tests/resources/contentassist/CompletionTestStart19.cpp core/org.eclipse.cdt.ui.tests/resources/contentassist/CompletionTestStart2.cpp core/org.eclipse.cdt.ui.tests/resources/contentassist/CompletionTestStart20.h core/org.eclipse.cdt.ui.tests/resources/contentassist/CompletionTestStart21.h core/org.eclipse.cdt.ui.tests/resources/contentassist/CompletionTestStart22.cpp core/org.eclipse.cdt.ui.tests/resources/contentassist/CompletionTestStart23.cpp core/org.eclipse.cdt.ui.tests/resources/contentassist/CompletionTestStart24.cpp core/org.eclipse.cdt.ui.tests/resources/contentassist/CompletionTestStart25.cpp core/org.eclipse.cdt.ui.tests/resources/contentassist/CompletionTestStart26.cpp core/org.eclipse.cdt.ui.tests/resources/contentassist/CompletionTestStart27.cpp core/org.eclipse.cdt.ui.tests/resources/contentassist/CompletionTestStart28.cpp core/org.eclipse.cdt.ui.tests/resources/contentassist/CompletionTestStart29.cpp core/org.eclipse.cdt.ui.tests/resources/contentassist/CompletionTestStart3.cpp core/org.eclipse.cdt.ui.tests/resources/contentassist/CompletionTestStart30.cpp core/org.eclipse.cdt.ui.tests/resources/contentassist/CompletionTestStart31.cpp core/org.eclipse.cdt.ui.tests/resources/contentassist/CompletionTestStart32.cpp core/org.eclipse.cdt.ui.tests/resources/contentassist/CompletionTestStart33.cpp core/org.eclipse.cdt.ui.tests/resources/contentassist/CompletionTestStart34.cpp core/org.eclipse.cdt.ui.tests/resources/contentassist/CompletionTestStart35.cpp core/org.eclipse.cdt.ui.tests/resources/contentassist/CompletionTestStart36.cpp core/org.eclipse.cdt.ui.tests/resources/contentassist/CompletionTestStart37.cpp core/org.eclipse.cdt.ui.tests/resources/contentassist/CompletionTestStart38.cpp core/org.eclipse.cdt.ui.tests/resources/contentassist/CompletionTestStart39.cpp core/org.eclipse.cdt.ui.tests/resources/contentassist/CompletionTestStart4.h core/org.eclipse.cdt.ui.tests/resources/contentassist/CompletionTestStart40.cpp core/org.eclipse.cdt.ui.tests/resources/contentassist/CompletionTestStart40.h core/org.eclipse.cdt.ui.tests/resources/contentassist/CompletionTestStart5.cpp core/org.eclipse.cdt.ui.tests/resources/contentassist/CompletionTestStart6.cpp core/org.eclipse.cdt.ui.tests/resources/contentassist/CompletionTestStart7.cpp core/org.eclipse.cdt.ui.tests/resources/contentassist/CompletionTestStart8.cpp core/org.eclipse.cdt.ui.tests/resources/contentassist/CompletionTestStart9.cpp core/org.eclipse.cdt.ui.tests/resources/folding/FoldingTest.cpp core/org.eclipse.cdt.ui.tests/resources/formatter/bugs/After.cpp core/org.eclipse.cdt.ui.tests/resources/formatter/bugs/Before.cpp core/org.eclipse.cdt.ui.tests/resources/formatter/complex/After.cpp core/org.eclipse.cdt.ui.tests/resources/formatter/complex/Before.cpp core/org.eclipse.cdt.ui.tests/resources/formatter/preview/After.cpp core/org.eclipse.cdt.ui.tests/resources/formatter/preview/Before.cpp core/org.eclipse.cdt.ui.tests/resources/formatter/sample/After.cpp core/org.eclipse.cdt.ui.tests/resources/formatter/sample/Before.cpp core/org.eclipse.cdt.ui.tests/resources/formatter/templates/After.cpp core/org.eclipse.cdt.ui.tests/resources/formatter/templates/Before.cpp core/org.eclipse.cdt.ui.tests/resources/inactiveCode/InactiveCodeTest.c core/org.eclipse.cdt.ui.tests/resources/indentation/complex/After.cpp core/org.eclipse.cdt.ui.tests/resources/indentation/complex/Before.cpp core/org.eclipse.cdt.ui.tests/resources/indentation/sample/After.cpp core/org.eclipse.cdt.ui.tests/resources/indentation/sample/Before.cpp core/org.eclipse.cdt.ui.tests/resources/indentation/unchanged/After.cpp core/org.eclipse.cdt.ui.tests/resources/indentation/unchanged/Before.cpp core/org.eclipse.cdt.ui.tests/resources/semanticHighlighting/SHTest.cpp core/org.eclipse.cdt.ui.tests/src/org/eclipse/cdt/ui/testplugin/CElementDecorator.java core/org.eclipse.cdt.ui.tests/src/org/eclipse/cdt/ui/testplugin/CTestPlugin.java core/org.eclipse.cdt.ui.tests/src/org/eclipse/cdt/ui/testplugin/CTestSetup.java core/org.eclipse.cdt.ui.tests/src/org/eclipse/cdt/ui/testplugin/Main.java core/org.eclipse.cdt.ui.tests/src/org/eclipse/cdt/ui/testplugin/NewMain.java core/org.eclipse.cdt.ui.tests/src/org/eclipse/cdt/ui/testplugin/TestPluginLauncher.java core/org.eclipse.cdt.ui.tests/src/org/eclipse/cdt/ui/testplugin/util/AccessibilityTestPass.java core/org.eclipse.cdt.ui.tests/src/org/eclipse/cdt/ui/testplugin/util/ExpectedStrings.java core/org.eclipse.cdt.ui.tests/src/org/eclipse/cdt/ui/testplugin/util/ExpectedStringsTests.java core/org.eclipse.cdt.ui.tests/src/org/eclipse/cdt/ui/testplugin/util/FailureDialog.java core/org.eclipse.cdt.ui.tests/src/org/eclipse/cdt/ui/testplugin/util/FocusTestPass.java core/org.eclipse.cdt.ui.tests/src/org/eclipse/cdt/ui/testplugin/util/IDialogTestPass.java core/org.eclipse.cdt.ui.tests/src/org/eclipse/cdt/ui/testplugin/util/SizingTestPass.java core/org.eclipse.cdt.ui.tests/src/org/eclipse/cdt/ui/testplugin/util/VerifyDialog.java core/org.eclipse.cdt.ui.tests/src/org/eclipse/cdt/ui/tests/DOMAST/CPPPopulateASTViewAction.java core/org.eclipse.cdt.ui.tests/src/org/eclipse/cdt/ui/tests/DOMAST/CPopulateASTViewAction.java core/org.eclipse.cdt.ui.tests/src/org/eclipse/cdt/ui/tests/DOMAST/DOMAST.java core/org.eclipse.cdt.ui.tests/src/org/eclipse/cdt/ui/tests/DOMAST/DOMASTNodeLeaf.java core/org.eclipse.cdt.ui.tests/src/org/eclipse/cdt/ui/tests/DOMAST/DOMASTNodeParent.java core/org.eclipse.cdt.ui.tests/src/org/eclipse/cdt/ui/tests/DOMAST/DOMASTPluginImages.java core/org.eclipse.cdt.ui.tests/src/org/eclipse/cdt/ui/tests/DOMAST/FindIASTNameDialog.java core/org.eclipse.cdt.ui.tests/src/org/eclipse/cdt/ui/tests/DOMAST/FindIASTNameTarget.java core/org.eclipse.cdt.ui.tests/src/org/eclipse/cdt/ui/tests/DOMAST/IPopulateDOMASTAction.java core/org.eclipse.cdt.ui.tests/src/org/eclipse/cdt/ui/tests/DOMAST/IncludeStatementFilter.java core/org.eclipse.cdt.ui.tests/src/org/eclipse/cdt/ui/tests/DOMAST/OpenDOMViewAction.java core/org.eclipse.cdt.ui.tests/src/org/eclipse/cdt/ui/tests/DOMAST/PreprocessorFilter.java core/org.eclipse.cdt.ui.tests/src/org/eclipse/cdt/ui/tests/DOMAST/ProblemHolderFilter.java core/org.eclipse.cdt.ui.tests/src/org/eclipse/cdt/ui/tests/DOMAST/ShowInDOMViewAction.java core/org.eclipse.cdt.ui.tests/test.xml core/org.eclipse.cdt.ui.tests/ui/org/eclipse/cdt/ui/tests/AutomatedSuite.java core/org.eclipse.cdt.ui.tests/ui/org/eclipse/cdt/ui/tests/BaseUITestCase.java core/org.eclipse.cdt.ui.tests/ui/org/eclipse/cdt/ui/tests/buildconsole/BuildConsoleTests.java core/org.eclipse.cdt.ui.tests/ui/org/eclipse/cdt/ui/tests/callhierarchy/BasicCallHierarchyTest.java core/org.eclipse.cdt.ui.tests/ui/org/eclipse/cdt/ui/tests/callhierarchy/BasicCppCallHierarchyTest.java core/org.eclipse.cdt.ui.tests/ui/org/eclipse/cdt/ui/tests/callhierarchy/CallHierarchyAcrossProjectsTest.java core/org.eclipse.cdt.ui.tests/ui/org/eclipse/cdt/ui/tests/callhierarchy/CallHierarchyBaseTest.java core/org.eclipse.cdt.ui.tests/ui/org/eclipse/cdt/ui/tests/callhierarchy/CallHierarchyTestSuite.java core/org.eclipse.cdt.ui.tests/ui/org/eclipse/cdt/ui/tests/callhierarchy/CppCallHierarchyTest.java core/org.eclipse.cdt.ui.tests/ui/org/eclipse/cdt/ui/tests/callhierarchy/InitializersInCallHierarchyTest.java core/org.eclipse.cdt.ui.tests/ui/org/eclipse/cdt/ui/tests/chelp/CHelpProviderTester.java core/org.eclipse.cdt.ui.tests/ui/org/eclipse/cdt/ui/tests/chelp/CHelpTest.java core/org.eclipse.cdt.ui.tests/ui/org/eclipse/cdt/ui/tests/chelp/CHelpTestInfoProvider.java core/org.eclipse.cdt.ui.tests/ui/org/eclipse/cdt/ui/tests/includebrowser/BasicIncludeBrowserTest.java core/org.eclipse.cdt.ui.tests/ui/org/eclipse/cdt/ui/tests/includebrowser/IncludeBrowserBaseTest.java core/org.eclipse.cdt.ui.tests/ui/org/eclipse/cdt/ui/tests/includebrowser/IncludeBrowserTestSuite.java core/org.eclipse.cdt.ui.tests/ui/org/eclipse/cdt/ui/tests/text/AbstractSemanticHighlightingTest.java core/org.eclipse.cdt.ui.tests/ui/org/eclipse/cdt/ui/tests/text/Accessor.java core/org.eclipse.cdt.ui.tests/ui/org/eclipse/cdt/ui/tests/text/BasicCEditorTest.java core/org.eclipse.cdt.ui.tests/ui/org/eclipse/cdt/ui/tests/text/BracketInserterTest.java core/org.eclipse.cdt.ui.tests/ui/org/eclipse/cdt/ui/tests/text/BreakIteratorTest.java core/org.eclipse.cdt.ui.tests/ui/org/eclipse/cdt/ui/tests/text/CAutoIndentTest.java core/org.eclipse.cdt.ui.tests/ui/org/eclipse/cdt/ui/tests/text/CBreakIteratorTest.java core/org.eclipse.cdt.ui.tests/ui/org/eclipse/cdt/ui/tests/text/CHeaderRuleTest.java core/org.eclipse.cdt.ui.tests/ui/org/eclipse/cdt/ui/tests/text/CHeuristicScannerTest.java core/org.eclipse.cdt.ui.tests/ui/org/eclipse/cdt/ui/tests/text/CPartitionScanner.java core/org.eclipse.cdt.ui.tests/ui/org/eclipse/cdt/ui/tests/text/CPartitionerTest.java core/org.eclipse.cdt.ui.tests/ui/org/eclipse/cdt/ui/tests/text/CWordIteratorTest.java core/org.eclipse.cdt.ui.tests/ui/org/eclipse/cdt/ui/tests/text/DisplayHelper.java core/org.eclipse.cdt.ui.tests/ui/org/eclipse/cdt/ui/tests/text/EditorTestHelper.java core/org.eclipse.cdt.ui.tests/ui/org/eclipse/cdt/ui/tests/text/FileTool.java core/org.eclipse.cdt.ui.tests/ui/org/eclipse/cdt/ui/tests/text/FoldingTest.java core/org.eclipse.cdt.ui.tests/ui/org/eclipse/cdt/ui/tests/text/FormatActionTest.java core/org.eclipse.cdt.ui.tests/ui/org/eclipse/cdt/ui/tests/text/InactiveCodeHighlightingTest.java core/org.eclipse.cdt.ui.tests/ui/org/eclipse/cdt/ui/tests/text/IndentActionTest.java core/org.eclipse.cdt.ui.tests/ui/org/eclipse/cdt/ui/tests/text/NumberRuleTest.java core/org.eclipse.cdt.ui.tests/ui/org/eclipse/cdt/ui/tests/text/PairMatcherTest.java core/org.eclipse.cdt.ui.tests/ui/org/eclipse/cdt/ui/tests/text/PartitionTokenScannerTest.java core/org.eclipse.cdt.ui.tests/ui/org/eclipse/cdt/ui/tests/text/ResourceHelper.java core/org.eclipse.cdt.ui.tests/ui/org/eclipse/cdt/ui/tests/text/ResourceTestHelper.java core/org.eclipse.cdt.ui.tests/ui/org/eclipse/cdt/ui/tests/text/SemanticHighlightingTest.java core/org.eclipse.cdt.ui.tests/ui/org/eclipse/cdt/ui/tests/text/TestCase.txt core/org.eclipse.cdt.ui.tests/ui/org/eclipse/cdt/ui/tests/text/TestCase2.txt core/org.eclipse.cdt.ui.tests/ui/org/eclipse/cdt/ui/tests/text/TextTestSuite.java core/org.eclipse.cdt.ui.tests/ui/org/eclipse/cdt/ui/tests/text/contentassist/ContentAssistTestSuite.java core/org.eclipse.cdt.ui.tests/ui/org/eclipse/cdt/ui/tests/text/contentassist/ContentAssistTests.java core/org.eclipse.cdt.ui.tests/ui/org/eclipse/cdt/ui/tests/text/contentassist/ProposalFilterPreferencesTest.java core/org.eclipse.cdt.ui.tests/ui/org/eclipse/cdt/ui/tests/text/contentassist/TestProposalFilter.java core/org.eclipse.cdt.ui.tests/ui/org/eclipse/cdt/ui/tests/text/contentassist2/AbstractContentAssistTest.java core/org.eclipse.cdt.ui.tests/ui/org/eclipse/cdt/ui/tests/text/contentassist2/CompletionProposalsBaseTest.java core/org.eclipse.cdt.ui.tests/ui/org/eclipse/cdt/ui/tests/text/contentassist2/CompletionTest_AnonymousTypes.java core/org.eclipse.cdt.ui.tests/ui/org/eclipse/cdt/ui/tests/text/contentassist2/CompletionTest_ArgumentType_Prefix.java core/org.eclipse.cdt.ui.tests/ui/org/eclipse/cdt/ui/tests/text/contentassist2/CompletionTest_ArgumentType_Prefix2.java core/org.eclipse.cdt.ui.tests/ui/org/eclipse/cdt/ui/tests/text/contentassist2/CompletionTest_ClassReference_NoPrefix.java core/org.eclipse.cdt.ui.tests/ui/org/eclipse/cdt/ui/tests/text/contentassist2/CompletionTest_ClassReference_Prefix.java core/org.eclipse.cdt.ui.tests/ui/org/eclipse/cdt/ui/tests/text/contentassist2/CompletionTest_ConstructorReference.java core/org.eclipse.cdt.ui.tests/ui/org/eclipse/cdt/ui/tests/text/contentassist2/CompletionTest_ExceptionReference_NoPrefix.java core/org.eclipse.cdt.ui.tests/ui/org/eclipse/cdt/ui/tests/text/contentassist2/CompletionTest_ExceptionReference_Prefix.java core/org.eclipse.cdt.ui.tests/ui/org/eclipse/cdt/ui/tests/text/contentassist2/CompletionTest_FieldType_NoPrefix.java core/org.eclipse.cdt.ui.tests/ui/org/eclipse/cdt/ui/tests/text/contentassist2/CompletionTest_FieldType_NoPrefix2.java core/org.eclipse.cdt.ui.tests/ui/org/eclipse/cdt/ui/tests/text/contentassist2/CompletionTest_FieldType_Prefix.java core/org.eclipse.cdt.ui.tests/ui/org/eclipse/cdt/ui/tests/text/contentassist2/CompletionTest_FunctionReference_Prefix.java core/org.eclipse.cdt.ui.tests/ui/org/eclipse/cdt/ui/tests/text/contentassist2/CompletionTest_MacroRef_NoPrefix.java core/org.eclipse.cdt.ui.tests/ui/org/eclipse/cdt/ui/tests/text/contentassist2/CompletionTest_MacroRef_Prefix.java core/org.eclipse.cdt.ui.tests/ui/org/eclipse/cdt/ui/tests/text/contentassist2/CompletionTest_MemberReference_Arrow_NoPrefix.java core/org.eclipse.cdt.ui.tests/ui/org/eclipse/cdt/ui/tests/text/contentassist2/CompletionTest_MemberReference_Arrow_Prefix.java core/org.eclipse.cdt.ui.tests/ui/org/eclipse/cdt/ui/tests/text/contentassist2/CompletionTest_MemberReference_Arrow_Prefix2.java core/org.eclipse.cdt.ui.tests/ui/org/eclipse/cdt/ui/tests/text/contentassist2/CompletionTest_MemberReference_Dot_NoPrefix.java core/org.eclipse.cdt.ui.tests/ui/org/eclipse/cdt/ui/tests/text/contentassist2/CompletionTest_MemberReference_Dot_Prefix.java core/org.eclipse.cdt.ui.tests/ui/org/eclipse/cdt/ui/tests/text/contentassist2/CompletionTest_NamespaceRef_NoPrefix.java core/org.eclipse.cdt.ui.tests/ui/org/eclipse/cdt/ui/tests/text/contentassist2/CompletionTest_NamespaceRef_Prefix.java core/org.eclipse.cdt.ui.tests/ui/org/eclipse/cdt/ui/tests/text/contentassist2/CompletionTest_NewTypeReference_NoPrefix.java core/org.eclipse.cdt.ui.tests/ui/org/eclipse/cdt/ui/tests/text/contentassist2/CompletionTest_NewTypeReference_Prefix.java core/org.eclipse.cdt.ui.tests/ui/org/eclipse/cdt/ui/tests/text/contentassist2/CompletionTest_ScopedReference_NoPrefix.java core/org.eclipse.cdt.ui.tests/ui/org/eclipse/cdt/ui/tests/text/contentassist2/CompletionTest_ScopedReference_NonCodeScope.java core/org.eclipse.cdt.ui.tests/ui/org/eclipse/cdt/ui/tests/text/contentassist2/CompletionTest_ScopedReference_Prefix.java core/org.eclipse.cdt.ui.tests/ui/org/eclipse/cdt/ui/tests/text/contentassist2/CompletionTest_SingleName_Method_NoPrefix.java core/org.eclipse.cdt.ui.tests/ui/org/eclipse/cdt/ui/tests/text/contentassist2/CompletionTest_SingleName_Method_Prefix.java core/org.eclipse.cdt.ui.tests/ui/org/eclipse/cdt/ui/tests/text/contentassist2/CompletionTest_SingleName_NoPrefix.java core/org.eclipse.cdt.ui.tests/ui/org/eclipse/cdt/ui/tests/text/contentassist2/CompletionTest_SingleName_Prefix.java core/org.eclipse.cdt.ui.tests/ui/org/eclipse/cdt/ui/tests/text/contentassist2/CompletionTest_SingleName_Prefix2.java core/org.eclipse.cdt.ui.tests/ui/org/eclipse/cdt/ui/tests/text/contentassist2/CompletionTest_TypeDef_NoPrefix.java core/org.eclipse.cdt.ui.tests/ui/org/eclipse/cdt/ui/tests/text/contentassist2/CompletionTest_TypeDef_Prefix.java core/org.eclipse.cdt.ui.tests/ui/org/eclipse/cdt/ui/tests/text/contentassist2/CompletionTest_TypeRef_NoPrefix.java core/org.eclipse.cdt.ui.tests/ui/org/eclipse/cdt/ui/tests/text/contentassist2/CompletionTest_TypeRef_Prefix.java core/org.eclipse.cdt.ui.tests/ui/org/eclipse/cdt/ui/tests/text/contentassist2/CompletionTest_VariableType_NestedPrefix.java core/org.eclipse.cdt.ui.tests/ui/org/eclipse/cdt/ui/tests/text/contentassist2/CompletionTest_VariableType_NoPrefix.java core/org.eclipse.cdt.ui.tests/ui/org/eclipse/cdt/ui/tests/text/contentassist2/CompletionTest_VariableType_Prefix.java core/org.eclipse.cdt.ui.tests/ui/org/eclipse/cdt/ui/tests/text/contentassist2/CompletionTests.java core/org.eclipse.cdt.ui.tests/ui/org/eclipse/cdt/ui/tests/text/contentassist2/ContentAssist2TestSuite.java core/org.eclipse.cdt.ui.tests/ui/org/eclipse/cdt/ui/tests/text/contentassist2/ParameterHintTests.java core/org.eclipse.cdt.ui.tests/ui/org/eclipse/cdt/ui/tests/text/selection/BaseSelectionTestsIndexer.java core/org.eclipse.cdt.ui.tests/ui/org/eclipse/cdt/ui/tests/text/selection/CPPSelectionTestsAnyIndexer.java core/org.eclipse.cdt.ui.tests/ui/org/eclipse/cdt/ui/tests/text/selection/CPPSelectionTestsDOMIndexer.java core/org.eclipse.cdt.ui.tests/ui/org/eclipse/cdt/ui/tests/text/selection/CPPSelectionTestsFastIndexer.java core/org.eclipse.cdt.ui.tests/ui/org/eclipse/cdt/ui/tests/text/selection/CPPSelectionTestsNoIndexer.java core/org.eclipse.cdt.ui.tests/ui/org/eclipse/cdt/ui/tests/text/selection/CSelectionTestsAnyIndexer.java core/org.eclipse.cdt.ui.tests/ui/org/eclipse/cdt/ui/tests/text/selection/CSelectionTestsDOMIndexer.java core/org.eclipse.cdt.ui.tests/ui/org/eclipse/cdt/ui/tests/text/selection/CSelectionTestsFastIndexer.java core/org.eclipse.cdt.ui.tests/ui/org/eclipse/cdt/ui/tests/text/selection/CSelectionTestsNoIndexer.java core/org.eclipse.cdt.ui.tests/ui/org/eclipse/cdt/ui/tests/text/selection/ResolveBindingTests.java core/org.eclipse.cdt.ui.tests/ui/org/eclipse/cdt/ui/tests/text/selection/SelectionTestSuite.java core/org.eclipse.cdt.ui.tests/ui/org/eclipse/cdt/ui/tests/typehierarchy/CTypeHierarchyTest.java core/org.eclipse.cdt.ui.tests/ui/org/eclipse/cdt/ui/tests/typehierarchy/CppTypeHierarchyTest.java core/org.eclipse.cdt.ui.tests/ui/org/eclipse/cdt/ui/tests/typehierarchy/QuickTypeHierarchyTest.java core/org.eclipse.cdt.ui.tests/ui/org/eclipse/cdt/ui/tests/typehierarchy/TypeHierarchyAcrossProjectsTest.java core/org.eclipse.cdt.ui.tests/ui/org/eclipse/cdt/ui/tests/typehierarchy/TypeHierarchyBaseTest.java core/org.eclipse.cdt.ui.tests/ui/org/eclipse/cdt/ui/tests/typehierarchy/TypeHierarchyTestSuite.java core/org.eclipse.cdt.ui.tests/ui/org/eclipse/cdt/ui/tests/viewsupport/AsyncViewerTest.java core/org.eclipse.cdt.ui.tests/ui/org/eclipse/cdt/ui/tests/viewsupport/ViewSupportTestSuite.java core/org.eclipse.cdt.ui/.classpath core/org.eclipse.cdt.ui/.cvsignore core/org.eclipse.cdt.ui/.options core/org.eclipse.cdt.ui/.project core/org.eclipse.cdt.ui/.settings/org.eclipse.jdt.core.prefs core/org.eclipse.cdt.ui/.settings/org.eclipse.jdt.ui.prefs core/org.eclipse.cdt.ui/.settings/org.eclipse.pde.prefs core/org.eclipse.cdt.ui/ChangeLog core/org.eclipse.cdt.ui/ChangeLog-2003 core/org.eclipse.cdt.ui/META-INF/MANIFEST.MF core/org.eclipse.cdt.ui/NEWS core/org.eclipse.cdt.ui/about.html core/org.eclipse.cdt.ui/browser/ChangeLog-browser core/org.eclipse.cdt.ui/browser/org/eclipse/cdt/internal/ui/browser/opentype/OpenTypeAction.java core/org.eclipse.cdt.ui/browser/org/eclipse/cdt/internal/ui/browser/opentype/OpenTypeDialog.java core/org.eclipse.cdt.ui/browser/org/eclipse/cdt/internal/ui/browser/opentype/OpenTypeMessages.java core/org.eclipse.cdt.ui/browser/org/eclipse/cdt/internal/ui/browser/opentype/OpenTypeMessages.properties core/org.eclipse.cdt.ui/browser/org/eclipse/cdt/ui/browser/typeinfo/TypeInfoLabelProvider.java core/org.eclipse.cdt.ui/browser/org/eclipse/cdt/ui/browser/typeinfo/TypeInfoMessages.java core/org.eclipse.cdt.ui/browser/org/eclipse/cdt/ui/browser/typeinfo/TypeInfoMessages.properties core/org.eclipse.cdt.ui/browser/org/eclipse/cdt/ui/browser/typeinfo/TypeSelectionDialog.java core/org.eclipse.cdt.ui/build.properties core/org.eclipse.cdt.ui/icons/dlcl16/action-editconfig.gif core/org.eclipse.cdt.ui/icons/dlcl16/alphab_sort_co.gif core/org.eclipse.cdt.ui/icons/dlcl16/ch_callees.gif core/org.eclipse.cdt.ui/icons/dlcl16/ch_callers.gif core/org.eclipse.cdt.ui/icons/dlcl16/clear_co.gif core/org.eclipse.cdt.ui/icons/dlcl16/collapseall.gif core/org.eclipse.cdt.ui/icons/dlcl16/config-tool.gif core/org.eclipse.cdt.ui/icons/dlcl16/definingtype_sort_co.gif core/org.eclipse.cdt.ui/icons/dlcl16/fields_co.gif core/org.eclipse.cdt.ui/icons/dlcl16/filterDefines.gif core/org.eclipse.cdt.ui/icons/dlcl16/filterInactive.gif core/org.eclipse.cdt.ui/icons/dlcl16/filterSystem.gif core/org.eclipse.cdt.ui/icons/dlcl16/group_include.gif core/org.eclipse.cdt.ui/icons/dlcl16/hierarchy_co.gif core/org.eclipse.cdt.ui/icons/dlcl16/history_list.gif core/org.eclipse.cdt.ui/icons/dlcl16/impl_co.gif core/org.eclipse.cdt.ui/icons/dlcl16/inher_co.gif core/org.eclipse.cdt.ui/icons/dlcl16/lock_co.gif core/org.eclipse.cdt.ui/icons/dlcl16/metharg_obj.gif core/org.eclipse.cdt.ui/icons/dlcl16/open_incl.gif core/org.eclipse.cdt.ui/icons/dlcl16/open_include.gif core/org.eclipse.cdt.ui/icons/dlcl16/progress_stop.gif core/org.eclipse.cdt.ui/icons/dlcl16/public_co.gif core/org.eclipse.cdt.ui/icons/dlcl16/refresh_nav.gif core/org.eclipse.cdt.ui/icons/dlcl16/search_next.gif core/org.eclipse.cdt.ui/icons/dlcl16/search_prev.gif core/org.eclipse.cdt.ui/icons/dlcl16/search_sortmatch.gif core/org.eclipse.cdt.ui/icons/dlcl16/segment_edit.gif core/org.eclipse.cdt.ui/icons/dlcl16/shift_l_edit.gif core/org.eclipse.cdt.ui/icons/dlcl16/shift_r_edit.gif core/org.eclipse.cdt.ui/icons/dlcl16/static_co.gif core/org.eclipse.cdt.ui/icons/dlcl16/sub_co.gif core/org.eclipse.cdt.ui/icons/dlcl16/super_co.gif core/org.eclipse.cdt.ui/icons/dlcl16/synced.gif core/org.eclipse.cdt.ui/icons/dlcl16/th_automatic.gif core/org.eclipse.cdt.ui/icons/dlcl16/th_horizontal.gif core/org.eclipse.cdt.ui/icons/dlcl16/th_showqualified.gif core/org.eclipse.cdt.ui/icons/dlcl16/th_single.gif core/org.eclipse.cdt.ui/icons/dlcl16/th_vertical.gif core/org.eclipse.cdt.ui/icons/dtool16/action-buildconfig.gif core/org.eclipse.cdt.ui/icons/dtool16/action-deleteconfig.gif core/org.eclipse.cdt.ui/icons/dtool16/action-editconfig.gif core/org.eclipse.cdt.ui/icons/dtool16/action-newconfig.gif core/org.eclipse.cdt.ui/icons/dtool16/build_configs.gif core/org.eclipse.cdt.ui/icons/dtool16/config-category.gif core/org.eclipse.cdt.ui/icons/dtool16/config-compiler.gif core/org.eclipse.cdt.ui/icons/dtool16/config-debug.gif core/org.eclipse.cdt.ui/icons/dtool16/config-librarian.gif core/org.eclipse.cdt.ui/icons/dtool16/config-linker.gif core/org.eclipse.cdt.ui/icons/dtool16/config-preprocessor.gif core/org.eclipse.cdt.ui/icons/dtool16/config-profile.gif core/org.eclipse.cdt.ui/icons/dtool16/config-release.gif core/org.eclipse.cdt.ui/icons/dtool16/config-tool.gif core/org.eclipse.cdt.ui/icons/dtool16/convert-normal.gif core/org.eclipse.cdt.ui/icons/dtool16/newc_app.gif core/org.eclipse.cdt.ui/icons/dtool16/newc_lib.gif core/org.eclipse.cdt.ui/icons/dtool16/newcc_app.gif core/org.eclipse.cdt.ui/icons/dtool16/newcc_lib.gif core/org.eclipse.cdt.ui/icons/dtool16/newcfile_wiz.gif core/org.eclipse.cdt.ui/icons/dtool16/newclass_wiz.gif core/org.eclipse.cdt.ui/icons/dtool16/newcprj_wiz.gif core/org.eclipse.cdt.ui/icons/dtool16/newfile_wiz.gif core/org.eclipse.cdt.ui/icons/dtool16/newfolder_wiz.gif core/org.eclipse.cdt.ui/icons/dtool16/newhfile_wiz.gif core/org.eclipse.cdt.ui/icons/dtool16/newmngc_app.gif core/org.eclipse.cdt.ui/icons/dtool16/newmngcc_app.gif core/org.eclipse.cdt.ui/icons/dtool16/newsrcfldr_wiz.gif core/org.eclipse.cdt.ui/icons/dtool16/next_error_nav.gif core/org.eclipse.cdt.ui/icons/dtool16/opentype.gif core/org.eclipse.cdt.ui/icons/dtool16/prev_error_nav.gif core/org.eclipse.cdt.ui/icons/dtool16/prj_obj.gif core/org.eclipse.cdt.ui/icons/dtool16/prop_edt.gif core/org.eclipse.cdt.ui/icons/elcl16/action-editconfig.gif core/org.eclipse.cdt.ui/icons/elcl16/alphab_sort_co.gif core/org.eclipse.cdt.ui/icons/elcl16/ch_callees.gif core/org.eclipse.cdt.ui/icons/elcl16/ch_callers.gif core/org.eclipse.cdt.ui/icons/elcl16/clear_co.gif core/org.eclipse.cdt.ui/icons/elcl16/codeassist_co.gif core/org.eclipse.cdt.ui/icons/elcl16/collapseall.gif core/org.eclipse.cdt.ui/icons/elcl16/config-tool.gif core/org.eclipse.cdt.ui/icons/elcl16/definingtype_sort_co.gif core/org.eclipse.cdt.ui/icons/elcl16/fields_co.gif core/org.eclipse.cdt.ui/icons/elcl16/filterDefines.gif core/org.eclipse.cdt.ui/icons/elcl16/filterInactive.gif core/org.eclipse.cdt.ui/icons/elcl16/filterSystem.gif core/org.eclipse.cdt.ui/icons/elcl16/group_include.gif core/org.eclipse.cdt.ui/icons/elcl16/hierarchy_co.gif core/org.eclipse.cdt.ui/icons/elcl16/history_list.gif core/org.eclipse.cdt.ui/icons/elcl16/impl_co.gif core/org.eclipse.cdt.ui/icons/elcl16/inher_co.gif core/org.eclipse.cdt.ui/icons/elcl16/lock_co.gif core/org.eclipse.cdt.ui/icons/elcl16/metharg_obj.gif core/org.eclipse.cdt.ui/icons/elcl16/open_incl.gif core/org.eclipse.cdt.ui/icons/elcl16/open_include.gif core/org.eclipse.cdt.ui/icons/elcl16/progress_stop.gif core/org.eclipse.cdt.ui/icons/elcl16/public_co.gif core/org.eclipse.cdt.ui/icons/elcl16/refresh_nav.gif core/org.eclipse.cdt.ui/icons/elcl16/search_next.gif core/org.eclipse.cdt.ui/icons/elcl16/search_prev.gif core/org.eclipse.cdt.ui/icons/elcl16/search_sortmatch.gif core/org.eclipse.cdt.ui/icons/elcl16/segment_edit.gif core/org.eclipse.cdt.ui/icons/elcl16/shift_l_edit.gif core/org.eclipse.cdt.ui/icons/elcl16/shift_r_edit.gif core/org.eclipse.cdt.ui/icons/elcl16/static_co.gif core/org.eclipse.cdt.ui/icons/elcl16/sub_co.gif core/org.eclipse.cdt.ui/icons/elcl16/super_co.gif core/org.eclipse.cdt.ui/icons/elcl16/synced.gif core/org.eclipse.cdt.ui/icons/elcl16/templateprop_co.gif core/org.eclipse.cdt.ui/icons/elcl16/th_automatic.gif core/org.eclipse.cdt.ui/icons/elcl16/th_horizontal.gif core/org.eclipse.cdt.ui/icons/elcl16/th_showqualified.gif core/org.eclipse.cdt.ui/icons/elcl16/th_single.gif core/org.eclipse.cdt.ui/icons/elcl16/th_vertical.gif core/org.eclipse.cdt.ui/icons/elcl16/wordassist_co.gif core/org.eclipse.cdt.ui/icons/etool16/action-buildconfig.gif core/org.eclipse.cdt.ui/icons/etool16/action-deleteconfig.gif core/org.eclipse.cdt.ui/icons/etool16/action-editconfig.gif core/org.eclipse.cdt.ui/icons/etool16/action-newconfig.gif core/org.eclipse.cdt.ui/icons/etool16/build_configs.gif core/org.eclipse.cdt.ui/icons/etool16/config-category.gif core/org.eclipse.cdt.ui/icons/etool16/config-compiler.gif core/org.eclipse.cdt.ui/icons/etool16/config-debug.gif core/org.eclipse.cdt.ui/icons/etool16/config-librarian.gif core/org.eclipse.cdt.ui/icons/etool16/config-linker.gif core/org.eclipse.cdt.ui/icons/etool16/config-preprocessor.gif core/org.eclipse.cdt.ui/icons/etool16/config-profile.gif core/org.eclipse.cdt.ui/icons/etool16/config-release.gif core/org.eclipse.cdt.ui/icons/etool16/config-tool.gif core/org.eclipse.cdt.ui/icons/etool16/convert-normal.gif core/org.eclipse.cdt.ui/icons/etool16/newc_app.gif core/org.eclipse.cdt.ui/icons/etool16/newc_lib.gif core/org.eclipse.cdt.ui/icons/etool16/newcc_app.gif core/org.eclipse.cdt.ui/icons/etool16/newcc_lib.gif core/org.eclipse.cdt.ui/icons/etool16/newcfile_wiz.gif core/org.eclipse.cdt.ui/icons/etool16/newclass_wiz.gif core/org.eclipse.cdt.ui/icons/etool16/newcprj_wiz.gif core/org.eclipse.cdt.ui/icons/etool16/newfile_wiz.gif core/org.eclipse.cdt.ui/icons/etool16/newfolder_wiz.gif core/org.eclipse.cdt.ui/icons/etool16/newhfile_wiz.gif core/org.eclipse.cdt.ui/icons/etool16/newmngc_app.gif core/org.eclipse.cdt.ui/icons/etool16/newmngcc_app.gif core/org.eclipse.cdt.ui/icons/etool16/newsrcfldr_wiz.gif core/org.eclipse.cdt.ui/icons/etool16/next_error_nav.gif core/org.eclipse.cdt.ui/icons/etool16/opentype.gif core/org.eclipse.cdt.ui/icons/etool16/prev_error_nav.gif core/org.eclipse.cdt.ui/icons/etool16/prj_obj.gif core/org.eclipse.cdt.ui/icons/etool16/prop_edt.gif core/org.eclipse.cdt.ui/icons/obj16/ar_obj.gif core/org.eclipse.cdt.ui/icons/obj16/bin_obj.gif core/org.eclipse.cdt.ui/icons/obj16/breakpoint.gif core/org.eclipse.cdt.ui/icons/obj16/breakpoint_active.gif core/org.eclipse.cdt.ui/icons/obj16/breakpoint_disabled.gif core/org.eclipse.cdt.ui/icons/obj16/build_menu.gif core/org.eclipse.cdt.ui/icons/obj16/c_file_obj.gif core/org.eclipse.cdt.ui/icons/obj16/c_resource_obj.gif core/org.eclipse.cdt.ui/icons/obj16/cdeclaration_obj.gif core/org.eclipse.cdt.ui/icons/obj16/cfolder_obj.gif core/org.eclipse.cdt.ui/icons/obj16/change.gif core/org.eclipse.cdt.ui/icons/obj16/class_obj.gif core/org.eclipse.cdt.ui/icons/obj16/classfo_obj.gif core/org.eclipse.cdt.ui/icons/obj16/composite_change.gif core/org.eclipse.cdt.ui/icons/obj16/container_obj.gif core/org.eclipse.cdt.ui/icons/obj16/core_obj.gif core/org.eclipse.cdt.ui/icons/obj16/cp_order_obj.gif core/org.eclipse.cdt.ui/icons/obj16/cprojects.gif core/org.eclipse.cdt.ui/icons/obj16/csearch_obj.gif core/org.eclipse.cdt.ui/icons/obj16/cu_change.gif core/org.eclipse.cdt.ui/icons/obj16/define_obj.gif core/org.eclipse.cdt.ui/icons/obj16/enum_obj.gif core/org.eclipse.cdt.ui/icons/obj16/enumerator_obj.gif core/org.eclipse.cdt.ui/icons/obj16/enumfo_obj.gif core/org.eclipse.cdt.ui/icons/obj16/environment.gif core/org.eclipse.cdt.ui/icons/obj16/error_obj.gif core/org.eclipse.cdt.ui/icons/obj16/exclusion_filter_attrib.gif core/org.eclipse.cdt.ui/icons/obj16/exec_dbg_obj.gif core/org.eclipse.cdt.ui/icons/obj16/exec_obj.gif core/org.eclipse.cdt.ui/icons/obj16/fatalerror_obj.gif core/org.eclipse.cdt.ui/icons/obj16/field_obj.gif core/org.eclipse.cdt.ui/icons/obj16/field_private_obj.gif core/org.eclipse.cdt.ui/icons/obj16/field_protected_obj.gif core/org.eclipse.cdt.ui/icons/obj16/field_public_obj.gif core/org.eclipse.cdt.ui/icons/obj16/file_change.gif core/org.eclipse.cdt.ui/icons/obj16/filesyst.GIF core/org.eclipse.cdt.ui/icons/obj16/fldr_obj.gif core/org.eclipse.cdt.ui/icons/obj16/function_obj.gif core/org.eclipse.cdt.ui/icons/obj16/h_file_obj.gif core/org.eclipse.cdt.ui/icons/obj16/hfolder_obj.gif core/org.eclipse.cdt.ui/icons/obj16/hfolder_quote_obj.gif core/org.eclipse.cdt.ui/icons/obj16/incc_obj.gif core/org.eclipse.cdt.ui/icons/obj16/include_obj.gif core/org.eclipse.cdt.ui/icons/obj16/includes_container.gif core/org.eclipse.cdt.ui/icons/obj16/info_obj.gif core/org.eclipse.cdt.ui/icons/obj16/keyword_obj.gif core/org.eclipse.cdt.ui/icons/obj16/lib_obj.gif core/org.eclipse.cdt.ui/icons/obj16/method_private_obj.gif core/org.eclipse.cdt.ui/icons/obj16/method_protected_obj.gif core/org.eclipse.cdt.ui/icons/obj16/method_public_obj.gif core/org.eclipse.cdt.ui/icons/obj16/namespace_obj.gif core/org.eclipse.cdt.ui/icons/obj16/opentype.gif core/org.eclipse.cdt.ui/icons/obj16/output_folder_obj.gif core/org.eclipse.cdt.ui/icons/obj16/output_obj.gif core/org.eclipse.cdt.ui/icons/obj16/quickfix_error_obj.gif core/org.eclipse.cdt.ui/icons/obj16/quickfix_warning_obj.gif core/org.eclipse.cdt.ui/icons/obj16/s_file_obj.gif core/org.eclipse.cdt.ui/icons/obj16/search_decl_obj.gif core/org.eclipse.cdt.ui/icons/obj16/search_ref_obj.gif core/org.eclipse.cdt.ui/icons/obj16/search_sortmatch.gif core/org.eclipse.cdt.ui/icons/obj16/shlib_obj.gif core/org.eclipse.cdt.ui/icons/obj16/source_attach_attrib.gif core/org.eclipse.cdt.ui/icons/obj16/sroot_obj.gif core/org.eclipse.cdt.ui/icons/obj16/struct_obj.gif core/org.eclipse.cdt.ui/icons/obj16/structfo_obj.GIF core/org.eclipse.cdt.ui/icons/obj16/template_obj.gif core/org.eclipse.cdt.ui/icons/obj16/text_edit.gif core/org.eclipse.cdt.ui/icons/obj16/typedef_obj.gif core/org.eclipse.cdt.ui/icons/obj16/typedeffo_obj.gif core/org.eclipse.cdt.ui/icons/obj16/union_obj.gif core/org.eclipse.cdt.ui/icons/obj16/unionfo_obj.gif core/org.eclipse.cdt.ui/icons/obj16/unknown_obj.gif core/org.eclipse.cdt.ui/icons/obj16/unknown_type_obj.gif core/org.eclipse.cdt.ui/icons/obj16/using_obj.gif core/org.eclipse.cdt.ui/icons/obj16/var_declaration_obj.gif core/org.eclipse.cdt.ui/icons/obj16/variable_local_obj.gif core/org.eclipse.cdt.ui/icons/obj16/variable_obj.gif core/org.eclipse.cdt.ui/icons/obj16/warning_obj.gif core/org.eclipse.cdt.ui/icons/obj16/workspace.GIF core/org.eclipse.cdt.ui/icons/ovr16/c_ovr.gif core/org.eclipse.cdt.ui/icons/ovr16/defines_co.gif core/org.eclipse.cdt.ui/icons/ovr16/error_co.gif core/org.eclipse.cdt.ui/icons/ovr16/path_inherit_co.gif core/org.eclipse.cdt.ui/icons/ovr16/rec_referencedby_co.gif core/org.eclipse.cdt.ui/icons/ovr16/rec_relatesto_co.gif core/org.eclipse.cdt.ui/icons/ovr16/referencedby_co.gif core/org.eclipse.cdt.ui/icons/ovr16/relatestoMultiple_co.gif core/org.eclipse.cdt.ui/icons/ovr16/relatesto_co.gif core/org.eclipse.cdt.ui/icons/ovr16/static_co.gif core/org.eclipse.cdt.ui/icons/ovr16/systeminclude_co.gif core/org.eclipse.cdt.ui/icons/ovr16/template_co.gif core/org.eclipse.cdt.ui/icons/ovr16/volatile_co.gif core/org.eclipse.cdt.ui/icons/ovr16/warning_co.gif core/org.eclipse.cdt.ui/icons/view16/buildconsole.gif core/org.eclipse.cdt.ui/icons/view16/c_pers.gif core/org.eclipse.cdt.ui/icons/view16/call_hierarchy.gif core/org.eclipse.cdt.ui/icons/view16/cbrowsing_pers.gif core/org.eclipse.cdt.ui/icons/view16/chierch_pers.gif core/org.eclipse.cdt.ui/icons/view16/class_hi.gif core/org.eclipse.cdt.ui/icons/view16/cprojects.gif core/org.eclipse.cdt.ui/icons/view16/cview.gif core/org.eclipse.cdt.ui/icons/view16/includeBrowser.gif core/org.eclipse.cdt.ui/icons/view16/members.gif core/org.eclipse.cdt.ui/icons/view16/namespaces.gif core/org.eclipse.cdt.ui/icons/view16/types.gif core/org.eclipse.cdt.ui/icons/wizban/addpath_wiz.gif core/org.eclipse.cdt.ui/icons/wizban/c_app_wiz.gif core/org.eclipse.cdt.ui/icons/wizban/fieldrefact_wiz.gif core/org.eclipse.cdt.ui/icons/wizban/methrefact_wiz.gif core/org.eclipse.cdt.ui/icons/wizban/newcfile_wiz.gif core/org.eclipse.cdt.ui/icons/wizban/newclass_wiz.gif core/org.eclipse.cdt.ui/icons/wizban/newcprj_wiz.gif core/org.eclipse.cdt.ui/icons/wizban/newfile_wiz.gif core/org.eclipse.cdt.ui/icons/wizban/newfolder_wiz.gif core/org.eclipse.cdt.ui/icons/wizban/newhfile_wiz.gif core/org.eclipse.cdt.ui/icons/wizban/newmngc_app.gif core/org.eclipse.cdt.ui/icons/wizban/newmngcc_app.gif core/org.eclipse.cdt.ui/icons/wizban/newsrcfldr_wiz.gif core/org.eclipse.cdt.ui/icons/wizban/prj_obj.gif core/org.eclipse.cdt.ui/icons/wizban/typerefact_wiz.gif core/org.eclipse.cdt.ui/plugin.properties core/org.eclipse.cdt.ui/plugin.xml core/org.eclipse.cdt.ui/schema/CHelpProvider.exsd core/org.eclipse.cdt.ui/schema/IndexerPage.exsd core/org.eclipse.cdt.ui/schema/PathContainerPage.exsd core/org.eclipse.cdt.ui/schema/ProposalFilter.exsd core/org.eclipse.cdt.ui/schema/cPropertyTab.exsd core/org.eclipse.cdt.ui/schema/completionContributors.exsd core/org.eclipse.cdt.ui/schema/completionProposalComputer.exsd core/org.eclipse.cdt.ui/schema/foldingStructureProviders.exsd core/org.eclipse.cdt.ui/schema/newCfgDialog.exsd core/org.eclipse.cdt.ui/schema/textHovers.exsd core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/corext/CorextMessages.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/corext/CorextMessages.properties core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/corext/template/c/CContext.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/corext/template/c/CContextType.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/corext/template/c/CFormatter.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/corext/template/c/CommentContext.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/corext/template/c/CommentContextType.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/corext/template/c/ExclusivePositionUpdater.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/corext/template/c/TemplateMessages.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/corext/template/c/TemplateMessages.properties core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/corext/template/c/TranslationUnitContext.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/corext/template/c/TranslationUnitContextType.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/corext/util/CModelUtil.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/corext/util/CodeFormatterUtil.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/corext/util/Messages.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/corext/util/SimplePositionTracker.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/BaseCElementContentProvider.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/BinaryPropertySource.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/CElementAdapterFactory.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/CElementPropertySource.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/CHelpProviderManager.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/CPerspectiveFactory.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/CPluginImages.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/CPluginResources.properties core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/CProjectAdapterFactory.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/CStatusConstants.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/CUIException.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/CUIMessages.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/CUIMessages.properties core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/CUIStatus.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/CWorkbenchAdapter.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/DeferredCWorkbenchAdapter.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/DocumentInputStream.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/ICElementPropertyConstants.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/ICHelpContextIds.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/ICStatusConstants.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/IContextMenuConstants.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/IndexLabelProvider.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/LineBackgroundPainter.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/PersistableCElementFactory.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/ResourceAdapterFactory.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/actions/AbstractToggleLinkingAction.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/actions/ActionMessages.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/actions/ActionMessages.properties core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/actions/ActionUtil.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/actions/AddBlockCommentAction.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/actions/BlockCommentAction.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/actions/CompositeActionGroup.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/actions/FoldingActionGroup.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/actions/FoldingMessages.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/actions/FoldingMessages.properties core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/actions/GoToNextPreviousMemberAction.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/actions/IndentAction.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/actions/JoinLinesAction.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/actions/OpenActionUtil.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/actions/PDOMUpdateProjectAction.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/actions/RemoveBlockCommentAction.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/actions/SelectAllAction.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/actions/SelectionConverter.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/actions/WorkbenchRunnableAdapter.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/buildconsole/BuildConsole.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/buildconsole/BuildConsoleDocument.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/buildconsole/BuildConsoleManager.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/buildconsole/BuildConsolePage.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/buildconsole/BuildConsolePartition.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/buildconsole/BuildConsolePartitioner.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/buildconsole/BuildConsoleStream.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/buildconsole/BuildConsoleViewer.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/buildconsole/CBuildConsole.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/buildconsole/ConsoleEvent.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/buildconsole/ConsoleMessages.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/buildconsole/ConsoleMessages.properties core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/buildconsole/ConsoleOutputTextStore.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/buildconsole/ScrollLockAction.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/callhierarchy/CElementSet.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/callhierarchy/CHContentProvider.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/callhierarchy/CHDropTargetListener.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/callhierarchy/CHHistoryAction.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/callhierarchy/CHHistoryDropDownAction.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/callhierarchy/CHHistoryListAction.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/callhierarchy/CHLabelProvider.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/callhierarchy/CHMessages.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/callhierarchy/CHMessages.properties core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/callhierarchy/CHMultiDefNode.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/callhierarchy/CHNode.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/callhierarchy/CHQueries.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/callhierarchy/CHReferenceInfo.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/callhierarchy/CHViewPart.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/callhierarchy/CallHierarchyUI.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/callhierarchy/CalledByResult.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/callhierarchy/CallsToResult.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/callhierarchy/OpenCallHierarchyAction.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/callhierarchy/ReferenceVisitor.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/codemanipulation/AddIncludesOperation.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/codemanipulation/StubUtility.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/compare/CContentViewerCreator.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/compare/CMergeViewer.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/compare/CNode.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/compare/CParseTreeBuilder.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/compare/CStructureCreator.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/compare/SourceElementRequestorAdapter.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/cview/BuildGroup.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/cview/CView.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/cview/CViewAction.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/cview/CViewActionGroup.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/cview/CViewContentProvider.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/cview/CViewElementComparer.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/cview/CViewFrameSource.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/cview/CViewLabelProvider.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/cview/CViewMessages.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/cview/CViewMessages.properties core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/cview/CViewMoveAction.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/cview/CViewRenameAction.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/cview/CollapseAllAction.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/cview/CopyAction.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/cview/DefaultAction.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/cview/GotoActionGroup.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/cview/IncludeRefContainer.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/cview/IncludeReferenceProxy.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/cview/LibraryRefContainer.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/cview/MainActionGroup.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/cview/OpenFileGroup.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/cview/OpenProjectGroup.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/cview/PasteAction.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/cview/RefactorActionGroup.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/cview/SelectionTransferDragAdapter.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/cview/SelectionTransferDropAdapter.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/cview/ToggleLinkingAction.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/dialogs/AbstractElementListSelectionDialog.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/dialogs/ElementListSelectionDialog.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/dialogs/ISelectionValidator.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/dialogs/IStatusChangeListener.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/dialogs/MessageLine.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/dialogs/OptionalMessageDialog.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/dialogs/SelectionList.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/dialogs/SelectionStatusDialog.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/dialogs/StatusDialog.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/dialogs/StatusInfo.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/dialogs/StatusTool.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/dialogs/StatusUtil.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/dialogs/TypedElementSelectionValidator.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/dialogs/TypedViewerFilter.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/dialogs/cpaths/AbstractPathOptionBlock.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/dialogs/cpaths/ArchiveFileFilter.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/dialogs/cpaths/CPElement.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/dialogs/cpaths/CPElementAttribute.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/dialogs/cpaths/CPElementFilter.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/dialogs/cpaths/CPElementGroup.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/dialogs/cpaths/CPElementLabelProvider.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/dialogs/cpaths/CPElementSorter.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/dialogs/cpaths/CPListImageDescriptor.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/dialogs/cpaths/CPathBasePage.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/dialogs/cpaths/CPathContainerDefaultPage.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/dialogs/cpaths/CPathContainerDescriptor.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/dialogs/cpaths/CPathContainerEntryPage.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/dialogs/cpaths/CPathContainerSelectionPage.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/dialogs/cpaths/CPathContainerWizard.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/dialogs/cpaths/CPathEntryMessages.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/dialogs/cpaths/CPathEntryMessages.properties core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/dialogs/cpaths/CPathFilterPage.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/dialogs/cpaths/CPathFilterPathPage.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/dialogs/cpaths/CPathIncludeSymbolEntryBasePage.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/dialogs/cpaths/CPathIncludeSymbolEntryPage.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/dialogs/cpaths/CPathIncludeSymbolEntryPerFilePage.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/dialogs/cpaths/CPathLibraryEntryPage.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/dialogs/cpaths/CPathOrderExportPage.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/dialogs/cpaths/CPathOutputEntryPage.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/dialogs/cpaths/CPathProjectsEntryPage.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/dialogs/cpaths/CPathPropertyPage.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/dialogs/cpaths/CPathSourceEntryPage.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/dialogs/cpaths/CPathTabBlock.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/dialogs/cpaths/ExclusionPatternDialog.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/dialogs/cpaths/ExclusionPatternEntryDialog.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/dialogs/cpaths/FolderSelectionDialog.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/dialogs/cpaths/IContainerDescriptor.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/dialogs/cpaths/IncludesSymbolsPropertyPage.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/dialogs/cpaths/MultipleFolderSelectionDialog.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/dialogs/cpaths/NewIncludesSymbolsTabBlock.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/dialogs/cpaths/NewSourceFolderDialog.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/dialogs/cpaths/ProjectContainerDescriptor.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/dialogs/cpaths/ProjectContainerPage.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/dialogs/cpaths/SourceAttachmentBlock.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/dialogs/cpaths/SourceAttachmentDialog.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/dnd/BasicSelectionTransferDragAdapter.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/dnd/CDTViewerDragAdapter.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/dnd/CDTViewerDropAdapter.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/dnd/DelegatingDragAdapter.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/dnd/DelegatingDropAdapter.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/dnd/FileTransferDragAdapter.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/dnd/FileTransferDropAdapter.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/dnd/ResourceTransferDragAdapter.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/dnd/ResourceTransferDropAdapter.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/dnd/TextEditorDropAdapter.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/dnd/TextViewerDragAdapter.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/dnd/TransferDragSourceListener.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/dnd/TransferDropTargetListener.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/editor/ASTProvider.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/editor/AddIncludeOnSelectionAction.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/editor/CAnnotationIterator.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/editor/CContentOutlinePage.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/editor/CContentOutlinerProvider.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/editor/CDocumentProvider.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/editor/CDocumentSetupParticipant.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/editor/CEditor.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/editor/CEditorActionContributor.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/editor/CEditorErrorTickUpdater.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/editor/CEditorMessages.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/editor/CEditorMessages.properties core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/editor/CElementHyperlink.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/editor/CElementHyperlinkDetector.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/editor/CMarkerAnnotation.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/editor/CSourceViewer.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/editor/CSourceViewerDecorationSupport.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/editor/CStorageDocumentProvider.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/editor/CTextEditorActionConstants.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/editor/CustomBufferFactory.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/editor/DocumentAdapter.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/editor/ExternalSearchAnnotationModel.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/editor/ExternalSearchDocumentProvider.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/editor/ExternalSearchEditor.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/editor/GotoAnnotationAction.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/editor/GotoMatchingBracketAction.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/editor/ICAnnotation.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/editor/ICEditorActionDefinitionIds.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/editor/IProblemAnnotation.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/editor/IReconcilingParticipant.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/editor/ITranslationUnitEditorInput.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/editor/InactiveCodeHighlighting.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/editor/IndentUtil.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/editor/LexicalSortingAction.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/editor/OpenIncludeAction.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/editor/ProblemAnnotationIterator.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/editor/SearchDialogAction.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/editor/SemanticHighlighting.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/editor/SemanticHighlightingManager.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/editor/SemanticHighlightingPresenter.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/editor/SemanticHighlightingReconciler.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/editor/SemanticHighlightings.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/editor/SemanticToken.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/editor/SharedTextColors.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/editor/SpecificContentAssistAction.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/editor/SpecificContentAssistExecutor.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/editor/ToggleCommentAction.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/editor/TogglePresentationAction.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/editor/TranslationUnitAnnotationModelEvent.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/editor/WorkingCopyManager.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/editor/asm/ASMEditorActionContributor.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/editor/asm/AsmCodeScanner.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/editor/asm/AsmPreprocessorScanner.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/editor/asm/AsmSourceViewerConfiguration.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/editor/asm/AsmTextEditor.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/editor/asm/AsmTextTools.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/editor/asm/AsmWordDetector.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/filters/ArchiveFilter.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/filters/ClosedProjectFilter.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/filters/CustomFiltersDialog.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/filters/ExecutableFilter.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/filters/FilterDescriptor.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/filters/FilterMessages.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/filters/FilterMessages.properties core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/filters/MacroDirectiveFilter.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/filters/NamePatternFilter.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/filters/NonCElementFilter.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/filters/NonCProjectsFilter.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/filters/ObjectFilter.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/filters/SharedFilter.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/filters/UsingDirectiveFilter.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/includebrowser/IBContentProvider.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/includebrowser/IBConversions.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/includebrowser/IBDragSourceListener.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/includebrowser/IBDropTargetListener.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/includebrowser/IBFile.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/includebrowser/IBHistoryAction.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/includebrowser/IBHistoryDropDownAction.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/includebrowser/IBHistoryListAction.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/includebrowser/IBLabelProvider.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/includebrowser/IBMessages.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/includebrowser/IBMessages.properties core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/includebrowser/IBNode.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/includebrowser/IBViewPart.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/includebrowser/IBWorkingSetFilter.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/indexview/CountNodeAction.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/indexview/DiscardExternalDefsAction.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/indexview/FindDeclarationsAction.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/indexview/FindReferencesAction.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/indexview/IndexAction.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/indexview/IndexView.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/indexview/OpenDefinitionAction.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/indexview/RebuildIndexActionDelegate.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/indexview/SetFastIndexerAction.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/indexview/ToggleLinkingAction.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/language/ContentTypeMappingDialog.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/language/ProjectLanguageMappingPropertyPage.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/navigator/AbstractCNavigatorActionGroup.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/navigator/CNavigatorBuildActionGroup.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/navigator/CNavigatorBuildActionProvider.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/navigator/CNavigatorContentProvider.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/navigator/CNavigatorDragAdapterAssistant.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/navigator/CNavigatorDropAdapterAssistant.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/navigator/CNavigatorEditActionGroup.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/navigator/CNavigatorEditActionProvider.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/navigator/CNavigatorLabelProvider.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/navigator/CNavigatorOpenActionProvider.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/navigator/CNavigatorOpenEditorActionGroup.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/navigator/CNavigatorOpenViewActionProvider.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/navigator/CNavigatorRefactorActionGroup.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/navigator/CNavigatorRefactorActionProvider.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/navigator/CNavigatorSearchActionProvider.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/navigator/OpenCElementAction.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/preferences/AbstractConfigurationBlock.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/preferences/AbstractConfigurationBlockPreferencePage.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/preferences/AbstractPreferencePage.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/preferences/AppearancePreferencePage.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/preferences/BuildConsolePreferencePage.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/preferences/CEditorColoringConfigurationBlock.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/preferences/CEditorColoringPreferencePage.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/preferences/CEditorHoverConfigurationBlock.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/preferences/CEditorHoverPreferencePage.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/preferences/CEditorPreferencePage.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/preferences/CFileTypeAssociation.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/preferences/CFileTypeDialog.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/preferences/CFileTypesPreferenceBlock.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/preferences/CFileTypesPreferencePage.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/preferences/CFileTypesPropertyPage.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/preferences/CParserPreferencePage.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/preferences/CPluginPreferencePage.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/preferences/CSourcePreviewerUpdater.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/preferences/CTemplatePreferencePage.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/preferences/CodeAssistAdvancedConfigurationBlock.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/preferences/CodeAssistAdvancedPreferencePage.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/preferences/CodeAssistPreferencePage.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/preferences/CodeFormatterPreferencePage.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/preferences/ColorSettingPreviewCode.txt core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/preferences/FoldingConfigurationBlock.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/preferences/FoldingPreferencePage.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/preferences/IPreferenceConfigurationBlock.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/preferences/IndexerPreferencePage.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/preferences/OptionsConfigurationBlock.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/preferences/OverlayPreferenceStore.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/preferences/PathEntryVariableDialog.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/preferences/PathEntryVariablePreferencePage.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/preferences/PathEntryVariablesGroup.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/preferences/PreferencesAccess.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/preferences/PreferencesMessages.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/preferences/PreferencesMessages.properties core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/preferences/PreviewSourceViewer.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/preferences/PropertyAndPreferencePage.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/preferences/ProposalFilterPreferencesUtil.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/preferences/ScrolledPageContent.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/preferences/SmartTypingConfigurationBlock.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/preferences/SmartTypingPreferencePage.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/preferences/WorkInProgressPreferencePage.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/preferences/formatter/AlreadyExistsDialog.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/preferences/formatter/BracesTabPage.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/preferences/formatter/CPreview.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/preferences/formatter/CodeFormatterConfigurationBlock.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/preferences/formatter/CreateProfileDialog.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/preferences/formatter/CustomCodeFormatterBlock.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/preferences/formatter/FormatterMessages.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/preferences/formatter/FormatterMessages.properties core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/preferences/formatter/FormatterModifyDialog.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/preferences/formatter/FormatterProfileManager.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/preferences/formatter/FormatterProfileStore.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/preferences/formatter/IProfileVersioner.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/preferences/formatter/IndentationTabPage.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/preferences/formatter/LineWrappingTabPage.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/preferences/formatter/ModifyDialog.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/preferences/formatter/ModifyDialogTabPage.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/preferences/formatter/ProfileConfigurationBlock.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/preferences/formatter/ProfileManager.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/preferences/formatter/ProfileStore.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/preferences/formatter/ProfileVersioner.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/preferences/formatter/TranslationUnitPreview.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/search/CSearchMessages.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/search/CSearchMessages.properties core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/search/CSearchUtil.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/search/CountLabelProvider.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/search/IPDOMSearchContentProvider.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/search/LRUWorkingSets.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/search/OpenCSearchPageAction.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/search/PDOMSearchBindingQuery.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/search/PDOMSearchElement.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/search/PDOMSearchElementQuery.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/search/PDOMSearchListContentProvider.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/search/PDOMSearchListLabelProvider.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/search/PDOMSearchMatch.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/search/PDOMSearchPage.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/search/PDOMSearchPatternQuery.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/search/PDOMSearchQuery.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/search/PDOMSearchResult.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/search/PDOMSearchTextSelectionQuery.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/search/PDOMSearchTreeContentProvider.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/search/PDOMSearchTreeLabelProvider.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/search/PDOMSearchViewPage.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/search/actions/DeclarationsSearchGroup.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/search/actions/FindAction.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/search/actions/FindDeclarationsAction.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/search/actions/FindDeclarationsInWorkingSetAction.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/search/actions/FindDeclarationsProjectAction.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/search/actions/FindInWorkingSetAction.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/search/actions/FindRefsAction.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/search/actions/FindRefsInWorkingSetAction.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/search/actions/FindRefsProjectAction.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/search/actions/OpenDeclarationsAction.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/search/actions/OpenDefinitionAction.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/search/actions/ReferencesSearchGroup.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/search/actions/SelectionParseAction.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/search/actions/SelectionSearchGroup.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/search/actions/WorkingSetFindAction.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/text/AbstractCScanner.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/text/AbstractInformationControl.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/text/BufferedDocumentScanner.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/text/CAnnotationHover.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/text/CAutoIndentStrategy.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/text/CBraceRule.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/text/CBreakIterator.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/text/CCodeReader.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/text/CCodeScanner.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/text/CCommentAutoIndentStrategy.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/text/CCommentScanner.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/text/CDoubleClickSelector.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/text/CFormattingStrategy.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/text/CHeaderRule.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/text/CHelpBookDescriptor.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/text/CHelpProviderDescriptor.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/text/CHelpSettings.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/text/CHeuristicScanner.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/text/CIndenter.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/text/COperatorRule.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/text/COutlineInformationControl.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/text/CPairMatcher.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/text/CParameterListValidator.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/text/CPreprocessorScanner.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/text/CPresentationReconciler.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/text/CReconciler.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/text/CReconcilingStrategy.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/text/CSourceViewerConfiguration.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/text/CStringAutoIndentStrategy.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/text/CTextTools.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/text/CWordFinder.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/text/CWordIterator.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/text/CppCodeScanner.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/text/DocumentCharacterIterator.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/text/FastCPartitionScanner.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/text/HTML2TextReader.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/text/HTMLPrinter.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/text/HTMLTextPresenter.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/text/ICColorConstants.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/text/ICReconcilingListener.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/text/IColorManager.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/text/IColorManagerExtension.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/text/IProblemRequestorExtension.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/text/LineBreakingReader.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/text/NumberRule.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/text/PartitionDamager.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/text/PreferencesAdapter.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/text/PreprocessorRule.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/text/SequenceCharacterIterator.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/text/SimpleCSourceViewerConfiguration.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/text/SimpleDocument.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/text/SingleCharReader.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/text/SingleCharRule.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/text/SingleTokenCScanner.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/text/SubstitutionTextReader.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/text/Symbols.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/text/c/hover/AbstractAnnotationHover.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/text/c/hover/AbstractCEditorTextHover.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/text/c/hover/AnnotationHover.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/text/c/hover/BestMatchHover.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/text/c/hover/CDocHover.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/text/c/hover/CEditorTextHoverDescriptor.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/text/c/hover/CEditorTextHoverProxy.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/text/c/hover/CHoverMessages.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/text/c/hover/CHoverMessages.properties core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/text/c/hover/CSourceHover.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/text/c/hover/SourceViewerInformationControl.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/text/comment/CommentFormattingContext.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/text/contentassist/CCompletionProposal.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/text/contentassist/CCompletionProposalComparator.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/text/contentassist/CContentAssistInvocationContext.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/text/contentassist/CContentAssistProcessor.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/text/contentassist/CProposalContextInformation.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/text/contentassist/CompletionEngine.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/text/contentassist/CompletionProposalCategory.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/text/contentassist/CompletionProposalComputerDescriptor.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/text/contentassist/CompletionProposalComputerRegistry.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/text/contentassist/CompletionRequestorAdaptor.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/text/contentassist/ContentAssistComputerParameter.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/text/contentassist/ContentAssistElementRequestor.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/text/contentassist/ContentAssistHandler.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/text/contentassist/ContentAssistMessages.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/text/contentassist/ContentAssistMessages.properties core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/text/contentassist/ContentAssistPreference.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/text/contentassist/ContentAssistProcessor.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/text/contentassist/DOMCompletionProposalComputer.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/text/contentassist/DefaultProposalFilter.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/text/contentassist/HelpCompletionContributor.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/text/contentassist/HippieProposalComputer.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/text/contentassist/ICompletionRequestor.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/text/contentassist/IProblem.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/text/contentassist/ITimeoutThreadOwner.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/text/contentassist/KeywordCompletionContributor.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/text/contentassist/LegacyCompletionProposalComputer.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/text/contentassist/ParsingBasedProposalComputer.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/text/contentassist/Problem.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/text/contentassist/RelevanceConstants.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/text/contentassist/ResultCollector.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/text/contentassist/TemplateCompletionProposalComputer.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/text/folding/CFoldingStructureProviderDescriptor.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/text/folding/CFoldingStructureProviderRegistry.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/text/folding/DefaultCFoldingPreferenceBlock.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/text/folding/DefaultCFoldingStructureProvider.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/text/folding/EmptyCFoldingPreferenceBlock.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/text/folding/FoldingMessages.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/text/folding/FoldingMessages.properties core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/text/template/TemplateEngine.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/text/util/CColorManager.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/text/util/CWhitespaceDetector.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/text/util/CWordDetector.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/typehierarchy/ITHModelPresenter.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/typehierarchy/Messages.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/typehierarchy/OpenTypeHierarchyAction.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/typehierarchy/THContentProvider.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/typehierarchy/THDropTargetListener.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/typehierarchy/THGraph.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/typehierarchy/THGraphEdge.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/typehierarchy/THGraphNode.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/typehierarchy/THHierarchyModel.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/typehierarchy/THHistoryAction.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/typehierarchy/THHistoryDropDownAction.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/typehierarchy/THHistoryListAction.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/typehierarchy/THInformationControl.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/typehierarchy/THInformationProvider.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/typehierarchy/THLabelProvider.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/typehierarchy/THMemberContentProvider.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/typehierarchy/THNode.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/typehierarchy/THSchedulingRule.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/typehierarchy/THViewPart.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/typehierarchy/TypeHierarchyUI.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/typehierarchy/messages.properties core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/util/BusyIndicatorRunnableContext.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/util/CHelpDisplayContext.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/util/CUIHelp.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/util/CoreUtility.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/util/DeleteIProblemMarkerAction.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/util/DeleteTaskAction.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/util/EditorUtility.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/util/ExceptionHandler.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/util/ExternalEditorInput.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/util/IDebugLogConstants.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/util/IProblemChangedListener.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/util/ImageDescriptorRegistry.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/util/Messages.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/util/OpenExternalProblemAction.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/util/PendingUpdateAdapter.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/util/PixelConverter.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/util/ProblemMarkerManager.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/util/ProblemTableViewer.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/util/ProblemTreeViewer.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/util/RemoteTreeContentManager.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/util/RemoteTreeViewer.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/util/ResourceToItemsMapper.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/util/Resources.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/util/RowLayouter.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/util/SWTUtil.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/util/SelectionUtil.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/util/StringMatcher.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/util/Strings.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/util/TableLayoutComposite.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/util/TwoArrayQuickSort.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/util/Util.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/util/ViewerPane.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/viewsupport/AdaptingSelectionProvider.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/viewsupport/AppearanceAwareLabelProvider.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/viewsupport/AsyncTreeContentProvider.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/viewsupport/AsyncTreeWorkInProgressNode.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/viewsupport/CDTContextActivator.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/viewsupport/CElementImageProvider.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/viewsupport/CElementLabels.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/viewsupport/CUILabelProvider.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/viewsupport/DecoratingCLabelProvider.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/viewsupport/EditorOpener.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/viewsupport/ExtendedTreeViewer.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/viewsupport/FindNameForSelectionVisitor.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/viewsupport/IViewPartInputProvider.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/viewsupport/ImageImageDescriptor.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/viewsupport/IndexUI.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/viewsupport/ListContentProvider.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/viewsupport/MemberFilter.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/viewsupport/MemberFilterAction.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/viewsupport/ProblemsLabelDecorator.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/viewsupport/SelectionProviderMediator.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/viewsupport/StandardCElementLabelProvider.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/viewsupport/StatusBarUpdater.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/viewsupport/StorageLabelProvider.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/viewsupport/TreeNavigator.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/viewsupport/WorkingSetFilter.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/viewsupport/WorkingSetFilterUI.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/wizards/AbstractOpenWizardAction.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/wizards/AbstractWizardDropDownAction.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/wizards/CWizardRegistry.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/wizards/NewClassCreationWizard.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/wizards/NewElementWizard.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/wizards/NewElementWizardPage.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/wizards/NewFileDropDownAction.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/wizards/NewFolderDropDownAction.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/wizards/NewProjectDropDownAction.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/wizards/NewTypeDropDownAction.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/wizards/NewWizardMessages.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/wizards/NewWizardMessages.properties core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/wizards/OpenNewWizardAction.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/wizards/SourceFolderSelectionDialog.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/wizards/classwizard/AbstractMethodStub.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/wizards/classwizard/BaseClassInfo.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/wizards/classwizard/BaseClassesLabelProvider.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/wizards/classwizard/BaseClassesListDialogField.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/wizards/classwizard/ConstructorMethodStub.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/wizards/classwizard/DestructorMethodStub.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/wizards/classwizard/EnclosingClassSelectionDialog.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/wizards/classwizard/IBaseClassInfo.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/wizards/classwizard/IMethodStub.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/wizards/classwizard/MethodStubsLabelProvider.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/wizards/classwizard/MethodStubsListDialogField.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/wizards/classwizard/NamespaceSelectionDialog.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/wizards/classwizard/NewBaseClassSelectionDialog.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/wizards/classwizard/NewClassCodeGenerator.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/wizards/classwizard/NewClassWizardMessages.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/wizards/classwizard/NewClassWizardMessages.properties core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/wizards/classwizard/NewClassWizardPrefs.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/wizards/classwizard/NewClassWizardUtil.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/wizards/classwizard/SourceFileSelectionDialog.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/wizards/dialogfields/CheckedListDialogField.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/wizards/dialogfields/ComboDialogField.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/wizards/dialogfields/DialogField.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/wizards/dialogfields/IDialogFieldListener.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/wizards/dialogfields/IListAdapter.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/wizards/dialogfields/IStringButtonAdapter.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/wizards/dialogfields/ITreeListAdapter.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/wizards/dialogfields/LayoutUtil.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/wizards/dialogfields/LinkToFileGroup.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/wizards/dialogfields/ListDialogField.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/wizards/dialogfields/SelectionButtonDialogField.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/wizards/dialogfields/SelectionButtonDialogFieldGroup.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/wizards/dialogfields/Separator.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/wizards/dialogfields/StringButtonDialogField.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/wizards/dialogfields/StringDialogField.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/wizards/dialogfields/TreeListDialogField.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/wizards/filewizard/AbstractFileCreationWizard.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/wizards/filewizard/AbstractFileCreationWizardPage.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/wizards/filewizard/NewFileWizardMessages.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/wizards/filewizard/NewFileWizardMessages.properties core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/wizards/filewizard/NewHeaderFileCreationWizardPage.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/wizards/filewizard/NewSourceFileCreationWizardPage.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/wizards/filewizard/NewSourceFileGenerator.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/wizards/folderwizard/NewFolderWizardMessages.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/wizards/folderwizard/NewFolderWizardMessages.properties core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/wizards/folderwizard/NewSourceFolderWizardPage.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/workingsets/CElementWorkingSetPage.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/workingsets/CElementWorkingSetPageContentProvider.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/workingsets/CElementWorkingSetUpdater.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/workingsets/WorkingSetComparator.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/workingsets/WorkingSetMessages.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/workingsets/WorkingSetMessages.properties core/org.eclipse.cdt.ui/src/org/eclipse/cdt/ui/CElementContentProvider.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/ui/CElementGrouping.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/ui/CElementImageDescriptor.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/ui/CElementLabelProvider.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/ui/CElementSorter.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/ui/CUIPlugin.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/ui/CUIPreferenceInitializer.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/ui/CodeGeneration.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/ui/FunctionPrototypeSummary.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/ui/IBuildConsoleEvent.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/ui/IBuildConsoleListener.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/ui/IBuildConsoleManager.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/ui/ICDTConstants.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/ui/ICHelpBook.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/ui/ICHelpProvider.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/ui/ICHelpResourceDescriptor.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/ui/IEditorInputDelegate.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/ui/IFunctionSummary.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/ui/ILanguageUI.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/ui/IRequiredInclude.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/ui/IWorkingCopyManager.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/ui/IWorkingCopyManagerExtension.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/ui/IncludesGrouping.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/ui/NamespacesGrouping.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/ui/PreferenceConstants.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/ui/actions/BuildConfigAction.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/ui/actions/CdtActionConstants.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/ui/actions/ChangeBuildConfigActionBase.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/ui/actions/ChangeBuildConfigContextAction.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/ui/actions/ChangeBuildConfigMenuAction.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/ui/actions/CustomFiltersActionGroup.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/ui/actions/DeleteResConfigsAction.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/ui/actions/GenerateActionGroup.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/ui/actions/ManageConfigsAction.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/ui/actions/MemberFilterActionGroup.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/ui/actions/OpenAction.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/ui/actions/OpenViewActionGroup.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/ui/actions/SelectionDispatchAction.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/ui/actions/ShowInCViewAction.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/ui/dialogs/AbstractBinaryParserPage.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/ui/dialogs/AbstractCOptionPage.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/ui/dialogs/AbstractErrorParserBlock.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/ui/dialogs/AbstractGNUBinaryParserPage.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/ui/dialogs/BinaryParserBlock.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/ui/dialogs/CHelpConfigurationPropertyPage.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/ui/dialogs/CygwinPEBinaryParserPage.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/ui/dialogs/DOMSourceIndexerBlock.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/ui/dialogs/GNUElfBinaryParserPage.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/ui/dialogs/GNUSomBinaryParserPage.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/ui/dialogs/GNUXCoffBinaryParserPage.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/ui/dialogs/ICOptionContainer.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/ui/dialogs/ICOptionPage.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/ui/dialogs/IndexerBlock.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/ui/dialogs/IndexerOptionPropertyPage.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/ui/dialogs/MachOBinaryParserPage.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/ui/dialogs/NullIndexerBlock.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/ui/dialogs/ReferenceBlock.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/ui/dialogs/TabFolderOptionBlock.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/ui/index/AbstractIndexerPage.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/ui/newui/AbstractCPropertyTab.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/ui/newui/AbstractExportTab.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/ui/newui/AbstractLangsListTab.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/ui/newui/AbstractPage.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/ui/newui/AbstractPrefPage.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/ui/newui/AbstractPropertyDialog.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/ui/newui/BinaryParsTab.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/ui/newui/CDTListComparator.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/ui/newui/CLocationOutputTab.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/ui/newui/CLocationSourceTab.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/ui/newui/CLocationTab.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/ui/newui/EnvDialog.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/ui/newui/EnvironmentTab.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/ui/newui/ErrorParsTab.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/ui/newui/ExPatternDialog.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/ui/newui/ExPatternEntryDialog.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/ui/newui/ExpDialog.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/ui/newui/ExpIncludeTab.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/ui/newui/ExpLibraryPathTab.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/ui/newui/ExpLibraryTab.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/ui/newui/ExpSymbolTab.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/ui/newui/ICPropertyProvider.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/ui/newui/ICPropertyTab.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/ui/newui/INewCfgDialog.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/ui/newui/IncludeDialog.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/ui/newui/IncludeTab.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/ui/newui/LanguagesTab.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/ui/newui/LibraryPathTab.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/ui/newui/LibraryTab.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/ui/newui/ManageConfigDialog.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/ui/newui/ManagedBuilderHelpContextIds.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/ui/newui/MultiLineTextFieldEditor.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/ui/newui/NewConfigurationDialog.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/ui/newui/NewUIMessages.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/ui/newui/Page_BuildSettings.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/ui/newui/Page_ExpPathAndSymb.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/ui/newui/Page_Languages.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/ui/newui/Page_PathAndSymb.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/ui/newui/Page_ToolChain.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/ui/newui/Page_Variables.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/ui/newui/PluginResources.properties core/org.eclipse.cdt.ui/src/org/eclipse/cdt/ui/newui/PrefPage_Env.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/ui/newui/PrefPage_Vars.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/ui/newui/PropertyTester.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/ui/newui/RefsTab.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/ui/newui/RenameConfigurationDialog.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/ui/newui/SDKsTab.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/ui/newui/SymbolDialog.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/ui/newui/SymbolTab.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/ui/text/ICCompletionProposal.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/ui/text/ICHelpInvocationContext.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/ui/text/ICPartitions.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/ui/text/c/hover/ICEditorTextHover.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/ui/text/contentassist/ContentAssistInvocationContext.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/ui/text/contentassist/ICompletionContributor.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/ui/text/contentassist/ICompletionProposalComputer.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/ui/text/contentassist/IProposalFilter.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/ui/text/folding/ICFoldingPreferenceBlock.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/ui/text/folding/ICFoldingStructureProvider.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/ui/wizards/ICPathContainerPage.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/ui/wizards/IPathEntryContainerPage.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/ui/wizards/NewCCProjectWizard.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/ui/wizards/NewCProjectWizard.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/ui/wizards/NewCProjectWizardOptionPage.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/ui/wizards/NewCProjectWizardPage.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/ui/wizards/NewClassCreationWizardPage.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/ui/wizards/NewFileCreationWizard.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/ui/wizards/NewFolderCreationWizard.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/ui/wizards/NewHeaderFileCreationWizard.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/ui/wizards/NewSourceFileCreationWizard.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/ui/wizards/NewSourceFolderCreationWizard.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/ui/wizards/conversion/ConversionWizard.java core/org.eclipse.cdt.ui/src/org/eclipse/cdt/ui/wizards/conversion/ConvertProjectWizardPage.java core/org.eclipse.cdt.ui/templates/default-templates.properties core/org.eclipse.cdt.ui/templates/default-templates.xml core/org.eclipse.cdt.ui/utils.ui/org/eclipse/cdt/utils/ui/controls/ControlFactory.java core/org.eclipse.cdt.ui/utils.ui/org/eclipse/cdt/utils/ui/controls/RadioButtonsArea.java core/org.eclipse.cdt.ui/utils.ui/org/eclipse/cdt/utils/ui/controls/TabFolderLayout.java debug/org.eclipse.cdt.debug.core.tests/.project debug/org.eclipse.cdt.debug.core.tests/about.html debug/org.eclipse.cdt.debug.core/.classpath debug/org.eclipse.cdt.debug.core/.cvsignore debug/org.eclipse.cdt.debug.core/.project debug/org.eclipse.cdt.debug.core/ChangeLog debug/org.eclipse.cdt.debug.core/ChangeLog-2003 debug/org.eclipse.cdt.debug.core/META-INF/MANIFEST.MF debug/org.eclipse.cdt.debug.core/NEWS debug/org.eclipse.cdt.debug.core/about.html debug/org.eclipse.cdt.debug.core/build.properties debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/CDIException.java debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/ICDIAddressLocation.java debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/ICDIBreakpointHit.java debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/ICDICondition.java debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/ICDIEndSteppingRange.java debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/ICDIErrorInfo.java debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/ICDIEventManager.java debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/ICDIExitInfo.java debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/ICDIFileLocation.java debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/ICDIFormat.java debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/ICDIFunctionFinished.java debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/ICDIFunctionLocation.java debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/ICDILineLocation.java debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/ICDILocation.java debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/ICDILocator.java debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/ICDISession.java debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/ICDISessionConfiguration.java debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/ICDISessionObject.java debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/ICDISharedLibraryEvent.java debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/ICDISignalExitInfo.java debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/ICDISignalReceived.java debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/ICDITraceManager.java debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/ICDITraceSnapshot.java debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/ICDIWatchpointScope.java debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/ICDIWatchpointTrigger.java debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/event/ICDIBreakpointMovedEvent.java debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/event/ICDIBreakpointProblemEvent.java debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/event/ICDIChangedEvent.java debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/event/ICDICreatedEvent.java debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/event/ICDIDestroyedEvent.java debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/event/ICDIDisconnectedEvent.java debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/event/ICDIEvent.java debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/event/ICDIEventListener.java debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/event/ICDIExitedEvent.java debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/event/ICDIMemoryChangedEvent.java debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/event/ICDIRestartedEvent.java debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/event/ICDIResumedEvent.java debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/event/ICDISuspendedEvent.java debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/ICDIAddressBreakpoint.java debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/ICDIAddressFactoryManagement.java debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/ICDIArgument.java debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/ICDIArgumentDescriptor.java debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/ICDIBreakpoint.java debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/ICDIBreakpointManagement.java debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/ICDIBreakpointManagement2.java debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/ICDIExceptionpoint.java debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/ICDIExecuteResume.java debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/ICDIExecuteStep.java debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/ICDIExecuteStepReturn.java debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/ICDIExpression.java debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/ICDIExpressionManagement.java debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/ICDIFunctionBreakpoint.java debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/ICDIGlobalVariable.java debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/ICDIGlobalVariableDescriptor.java debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/ICDIInstruction.java debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/ICDILineBreakpoint.java debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/ICDILocalVariable.java debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/ICDILocalVariableDescriptor.java debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/ICDILocationBreakpoint.java debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/ICDIMemoryBlock.java debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/ICDIMemoryBlockManagement.java debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/ICDIMemoryBlockManagement2.java debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/ICDIMemorySpaceManagement.java debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/ICDIMixedInstruction.java debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/ICDIObject.java debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/ICDIRegister.java debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/ICDIRegisterDescriptor.java debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/ICDIRegisterGroup.java debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/ICDIRuntimeOptions.java debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/ICDISharedLibrary.java debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/ICDISharedLibraryManagement.java debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/ICDISignal.java debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/ICDISignalManagement.java debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/ICDISourceManagement.java debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/ICDIStackFrame.java debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/ICDISuspend.java debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/ICDITarget.java debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/ICDITarget2.java debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/ICDITargetConfiguration.java debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/ICDITargetConfiguration2.java debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/ICDITargetConfiguration3.java debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/ICDIThread.java debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/ICDIThreadGroup.java debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/ICDIThreadStorage.java debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/ICDIThreadStorageDescriptor.java debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/ICDITracepoint.java debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/ICDIValue.java debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/ICDIVariable.java debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/ICDIVariableDescriptor.java debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/ICDIWatchpoint.java debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/type/ICDIAggregateType.java debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/type/ICDIAggregateValue.java debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/type/ICDIArrayType.java debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/type/ICDIArrayValue.java debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/type/ICDIBoolType.java debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/type/ICDIBoolValue.java debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/type/ICDICharType.java debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/type/ICDICharValue.java debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/type/ICDIDerivedType.java debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/type/ICDIDerivedValue.java debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/type/ICDIDoubleType.java debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/type/ICDIDoubleValue.java debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/type/ICDIEnumType.java debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/type/ICDIEnumValue.java debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/type/ICDIFloatType.java debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/type/ICDIFloatValue.java debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/type/ICDIFloatingPointType.java debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/type/ICDIFloatingPointValue.java debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/type/ICDIFunctionType.java debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/type/ICDIFunctionValue.java debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/type/ICDIIntType.java debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/type/ICDIIntValue.java debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/type/ICDIIntegralType.java debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/type/ICDIIntegralValue.java debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/type/ICDILongLongType.java debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/type/ICDILongLongValue.java debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/type/ICDILongType.java debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/type/ICDILongValue.java debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/type/ICDIPointerType.java debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/type/ICDIPointerValue.java debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/type/ICDIReferenceType.java debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/type/ICDIReferenceValue.java debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/type/ICDIShortType.java debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/type/ICDIShortValue.java debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/type/ICDIStructType.java debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/type/ICDIStructValue.java debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/type/ICDIType.java debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/type/ICDIVoidType.java debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/type/ICDIWCharType.java debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/type/ICDIWCharValue.java debug/org.eclipse.cdt.debug.core/plugin.properties debug/org.eclipse.cdt.debug.core/plugin.xml debug/org.eclipse.cdt.debug.core/schema/CDebugger.exsd debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/core/CDIDebugModel.java debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/core/CDebugCorePlugin.java debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/core/CDebugUtils.java debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/core/DebugCoreMessages.java debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/core/DebugCoreMessages.properties debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/core/ICBreakpointListener.java debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/core/ICDIDebugger.java debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/core/ICDIDebugger2.java debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/core/ICDTLaunchConfigurationConstants.java debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/core/ICDebugConfiguration.java debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/core/ICDebugConstants.java debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/core/ICDebugger.java debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/core/ICGlobalVariableManager.java debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/core/model/CDebugElementState.java debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/core/model/CVariableFormat.java debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/core/model/IAsmInstruction.java debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/core/model/IAsmSourceLine.java debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/core/model/ICAddressBreakpoint.java debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/core/model/ICBreakpoint.java debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/core/model/ICDebugElement.java debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/core/model/ICDebugElementStatus.java debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/core/model/ICDebugTarget.java debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/core/model/ICDebugTargetGroup.java debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/core/model/ICFunctionBreakpoint.java debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/core/model/ICGlobalVariable.java debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/core/model/ICLineBreakpoint.java debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/core/model/ICModule.java debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/core/model/ICSignal.java debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/core/model/ICStackFrame.java debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/core/model/ICThread.java debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/core/model/ICType.java debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/core/model/ICValue.java debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/core/model/ICVariable.java debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/core/model/ICWatchpoint.java debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/core/model/ICastToArray.java debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/core/model/ICastToType.java debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/core/model/IDebuggerProcessSupport.java debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/core/model/IDisassembly.java debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/core/model/IDisassemblyBlock.java debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/core/model/IDummyStackFrame.java debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/core/model/IEnableDisableTarget.java debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/core/model/IExecFileInfo.java debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/core/model/IFormatSupport.java debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/core/model/IGlobalVariableDescriptor.java debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/core/model/IJumpToAddress.java debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/core/model/IJumpToLine.java debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/core/model/IModuleRetrieval.java debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/core/model/IPersistableRegisterGroup.java debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/core/model/IRegisterDescriptor.java debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/core/model/IRestart.java debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/core/model/IResumeWithoutSignal.java debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/core/model/IRunToAddress.java debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/core/model/IRunToLine.java debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/core/model/ISteppingModeTarget.java debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/core/model/ITargetProperties.java debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/core/sourcelookup/AbsolutePathSourceContainer.java debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/core/sourcelookup/ICSourceLocation.java debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/core/sourcelookup/ICSourceLocator.java debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/core/sourcelookup/IDirectorySourceLocation.java debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/core/sourcelookup/IProjectSourceLocation.java debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/core/sourcelookup/ISourceLookupChangeListener.java debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/core/sourcelookup/MappingSourceContainer.java debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/core/sourcelookup/SourceLookupFactory.java debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/core/sourcelookup/SourceLookupMessages.java debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/core/sourcelookup/SourceLookupMessages.properties debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/CBreakpointManager.java debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/CBreakpointNotifier.java debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/CDebugAdapter.java debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/CDebugCorePreferenceInitializer.java debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/CGlobalVariableManager.java debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/CMemoryBlockRetrievalExtension.java debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/CRegisterManager.java debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/CSignalManager.java debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/DebugConfiguration.java debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/ICDebugInternalConstants.java debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/InternalDebugCoreMessages.java debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/InternalDebugCoreMessages.properties debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/ListenerList.java debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/SessionManager.java debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/breakpoints/AbstractLineBreakpoint.java debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/breakpoints/BreakpointMessages.java debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/breakpoints/BreakpointMessages.properties debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/breakpoints/BreakpointProblems.java debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/breakpoints/CAddressBreakpoint.java debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/breakpoints/CBreakpoint.java debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/breakpoints/CFunctionBreakpoint.java debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/breakpoints/CLineBreakpoint.java debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/breakpoints/CWatchpoint.java debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/model/AbstractCValue.java debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/model/AbstractCVariable.java debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/model/AsmInstruction.java debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/model/AsmSourceLine.java debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/model/CCoreFileDebugTarget.java debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/model/CDebugElement.java debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/model/CDebugTarget.java debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/model/CDummyStackFrame.java debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/model/CExpression.java debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/model/CFloatingPointValue.java debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/model/CGlobalValue.java debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/model/CGlobalVariable.java debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/model/CIndexedValue.java debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/model/CLocalVariable.java debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/model/CMemoryBlockExtension.java debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/model/CModule.java debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/model/CModuleManager.java debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/model/CRegister.java debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/model/CRegisterDescriptor.java debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/model/CRegisterGroup.java debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/model/CSignal.java debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/model/CStackFrame.java debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/model/CThread.java debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/model/CType.java debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/model/CValue.java debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/model/CValueFactory.java debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/model/CVariable.java debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/model/CVariableFactory.java debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/model/CoreModelMessages.java debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/model/CoreModelMessages.properties debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/model/Disassembly.java debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/model/DisassemblyBlock.java debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/sourcelookup/AbsolutePathSourceContainerType.java debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/sourcelookup/CDirectorySourceContainerType.java debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/sourcelookup/CDirectorySourceLocation.java debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/sourcelookup/CProjectSourceLocation.java debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/sourcelookup/CSourceLocator.java debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/sourcelookup/CSourceLookupDirector.java debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/sourcelookup/CSourceLookupParticipant.java debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/sourcelookup/CSourceManager.java debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/sourcelookup/CSourceNotFoundElement.java debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/sourcelookup/CSourcePathComputerDelegate.java debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/sourcelookup/CommonSourceLookupDirector.java debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/sourcelookup/InternalSourceLookupMessages.java debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/sourcelookup/InternalSourceLookupMessages.properties debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/sourcelookup/MapEntrySourceContainer.java debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/sourcelookup/MapEntrySourceContainerType.java debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/sourcelookup/MappingSourceContainerType.java debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/sourcelookup/SourceUtils.java debug/org.eclipse.cdt.debug.mi.core/.classpath debug/org.eclipse.cdt.debug.mi.core/.cvsignore debug/org.eclipse.cdt.debug.mi.core/.options debug/org.eclipse.cdt.debug.mi.core/.project debug/org.eclipse.cdt.debug.mi.core/ChangeLog debug/org.eclipse.cdt.debug.mi.core/ChangeLog-2003 debug/org.eclipse.cdt.debug.mi.core/META-INF/MANIFEST.MF debug/org.eclipse.cdt.debug.mi.core/about.html debug/org.eclipse.cdt.debug.mi.core/build.properties debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/BreakpointHit.java debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/BreakpointManager.java debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/CdiResources.java debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/CdiResources.properties debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/Condition.java debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/EndSteppingRange.java debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/ErrorInfo.java debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/EventManager.java debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/ExitInfo.java debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/ExpressionManager.java debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/FileLocation.java debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/Format.java debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/FunctionFinished.java debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/LineLocation.java debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/Location.java debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/Locator.java debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/MI2CDIException.java debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/Manager.java debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/MemoryManager.java debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/ProcessManager.java debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/RegisterManager.java debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/Session.java debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/SessionConfiguration.java debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/SessionObject.java debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/SharedLibraryEvent.java debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/SharedLibraryManager.java debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/SignalExitInfo.java debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/SignalManager.java debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/SignalReceived.java debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/SourceManager.java debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/ThreadManager.java debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/VariableManager.java debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/WatchpointScope.java debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/WatchpointTrigger.java debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/event/ChangedEvent.java debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/event/CreatedEvent.java debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/event/DestroyedEvent.java debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/event/DisconnectedEvent.java debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/event/ExitedEvent.java debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/event/MemoryChangedEvent.java debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/event/ResumedEvent.java debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/event/SuspendedEvent.java debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/model/AddressBreakpoint.java debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/model/AddressLocation.java debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/model/Argument.java debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/model/ArgumentDescriptor.java debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/model/Breakpoint.java debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/model/CObject.java debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/model/CoreFileConfiguration.java debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/model/Exceptionpoint.java debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/model/Expression.java debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/model/FunctionBreakpoint.java debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/model/FunctionLocation.java debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/model/GlobalVariable.java debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/model/GlobalVariableDescriptor.java debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/model/Instruction.java debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/model/LineBreakpoint.java debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/model/LocalVariable.java debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/model/LocalVariableDescriptor.java debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/model/LocationBreakpoint.java debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/model/MemoryBlock.java debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/model/MixedInstruction.java debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/model/Register.java debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/model/RegisterDescriptor.java debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/model/RegisterGroup.java debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/model/RuntimeOptions.java debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/model/SharedLibrary.java debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/model/Signal.java debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/model/StackFrame.java debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/model/Target.java debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/model/TargetConfiguration.java debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/model/Thread.java debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/model/ThreadStorage.java debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/model/ThreadStorageDescriptor.java debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/model/Value.java debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/model/Variable.java debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/model/VariableDescriptor.java debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/model/Watchpoint.java debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/model/type/AggregateType.java debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/model/type/AggregateValue.java debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/model/type/ArrayType.java debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/model/type/ArrayValue.java debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/model/type/BoolType.java debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/model/type/BoolValue.java debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/model/type/CharType.java debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/model/type/CharValue.java debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/model/type/DerivedType.java debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/model/type/DerivedValue.java debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/model/type/DoubleType.java debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/model/type/DoubleValue.java debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/model/type/EnumType.java debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/model/type/EnumValue.java debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/model/type/FloatType.java debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/model/type/FloatValue.java debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/model/type/FloatingPointType.java debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/model/type/FloatingPointValue.java debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/model/type/FunctionType.java debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/model/type/FunctionValue.java debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/model/type/IncompleteType.java debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/model/type/IntType.java debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/model/type/IntValue.java debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/model/type/IntegralType.java debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/model/type/IntegralValue.java debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/model/type/LongLongType.java debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/model/type/LongLongValue.java debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/model/type/LongType.java debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/model/type/LongValue.java debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/model/type/PointerType.java debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/model/type/PointerValue.java debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/model/type/ReferenceType.java debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/model/type/ReferenceValue.java debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/model/type/ShortType.java debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/model/type/ShortValue.java debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/model/type/StructType.java debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/model/type/StructValue.java debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/model/type/Type.java debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/model/type/VoidType.java debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/model/type/VoidValue.java debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/model/type/WCharType.java debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/model/type/WCharValue.java debug/org.eclipse.cdt.debug.mi.core/design.txt debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/CLIProcessor.java debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/CommandQueue.java debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/CoreProcess.java debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/EventThread.java debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/GDBTypeParser.java debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/IMITTY.java debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/MIException.java debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/MIFormat.java debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/MIInferior.java debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/MIProcess.java debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/MISession.java debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/Queue.java debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/RxThread.java debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/SessionProcess.java debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/TxThread.java debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/CLICommand.java debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/CLIExecAbort.java debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/CLIHandle.java debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/CLIInfoProgram.java debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/CLIInfoSharedLibrary.java debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/CLIInfoSignals.java debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/CLIInfoThreads.java debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/CLIJump.java debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/CLIPType.java debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/CLISharedLibrary.java debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/CLISignal.java debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/CLITargetAttach.java debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/CLIWhatis.java debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/Command.java debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/CommandFactory.java debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/MIBreakAfter.java debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/MIBreakCondition.java debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/MIBreakDelete.java debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/MIBreakDisable.java debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/MIBreakEnable.java debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/MIBreakInsert.java debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/MIBreakList.java debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/MIBreakWatch.java debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/MICommand.java debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/MIDataDisassemble.java debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/MIDataEvaluateExpression.java debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/MIDataListChangedRegisters.java debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/MIDataListRegisterNames.java debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/MIDataListRegisterValues.java debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/MIDataReadMemory.java debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/MIDataWriteMemory.java debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/MIDataWriteRegisterValues.java debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/MIEnvironmentCD.java debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/MIEnvironmentDirectory.java debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/MIEnvironmentPWD.java debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/MIEnvironmentPath.java debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/MIExecArguments.java debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/MIExecContinue.java debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/MIExecFinish.java debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/MIExecInterrupt.java debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/MIExecNext.java debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/MIExecNextInstruction.java debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/MIExecReturn.java debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/MIExecRun.java debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/MIExecStep.java debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/MIExecStepInstruction.java debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/MIExecUntil.java debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/MIFileExecFile.java debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/MIFileSymbolFile.java debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/MIGDBExit.java debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/MIGDBSet.java debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/MIGDBSetAutoSolib.java debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/MIGDBSetBreakpointPending.java debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/MIGDBSetEnvironment.java debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/MIGDBSetNewConsole.java debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/MIGDBSetSolibSearchPath.java debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/MIGDBSetStopOnSolibEvents.java debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/MIGDBShow.java debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/MIGDBShowAddressSize.java debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/MIGDBShowDirectories.java debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/MIGDBShowEndian.java debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/MIGDBShowExitCode.java debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/MIGDBShowPrompt.java debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/MIGDBShowSolibSearchPath.java debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/MIInterpreterExec.java debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/MIInterpreterExecConsole.java debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/MIStackInfoDepth.java debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/MIStackListArguments.java debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/MIStackListFrames.java debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/MIStackListLocals.java debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/MIStackSelectFrame.java debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/MITargetDetach.java debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/MITargetDownload.java debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/MITargetSelect.java debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/MIThreadListIds.java debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/MIThreadSelect.java debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/MIVarAssign.java debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/MIVarCreate.java debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/MIVarDelete.java debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/MIVarEvaluateExpression.java debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/MIVarInfoExpression.java debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/MIVarInfoNumChildren.java debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/MIVarInfoType.java debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/MIVarListChildren.java debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/MIVarSetFormat.java debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/MIVarShowAttributes.java debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/MIVarShowFormat.java debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/MIVarUpdate.java debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/MIVersion.java debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/RawCommand.java debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/factories/CommandFactoriesMessages.java debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/factories/CommandFactoriesMessages.properties debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/factories/CommandFactoryDescriptor.java debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/factories/CommandFactoryManager.java debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/factories/StandardCommandFactory.java debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/factories/linux/LinuxCLIInfoSharedLibrary.java debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/factories/linux/LinuxCLIInfoSharedLibraryInfo.java debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/factories/linux/StandardLinuxCommandFactory.java debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/factories/macos/MacOSMIEnvironmentCD.java debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/factories/macos/StandardMacOSCommandFactory.java debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/factories/win32/CygwinCommandFactory.java debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/factories/win32/CygwinMIEnvironmentCD.java debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/factories/win32/CygwinMIEnvironmentDirectory.java debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/factories/win32/StandardWinCommandFactory.java debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/factories/win32/WinCLIInfoSharedLibrary.java debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/factories/win32/WinCLIInfoSharedLibraryInfo.java debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/factories/win32/WinMIEnvironmentCD.java debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/event/MIBreakpointChangedEvent.java debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/event/MIBreakpointCreatedEvent.java debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/event/MIBreakpointDeletedEvent.java debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/event/MIBreakpointHitEvent.java debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/event/MIChangedEvent.java debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/event/MICreatedEvent.java debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/event/MIDestroyedEvent.java debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/event/MIDetachedEvent.java debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/event/MIErrorEvent.java debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/event/MIEvent.java debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/event/MIFunctionFinishedEvent.java debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/event/MIGDBExitEvent.java debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/event/MIInferiorCreatedEvent.java debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/event/MIInferiorExitEvent.java debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/event/MIInferiorSignalExitEvent.java debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/event/MILocationReachedEvent.java debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/event/MIMemoryChangedEvent.java debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/event/MIMemoryCreatedEvent.java debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/event/MIRegisterChangedEvent.java debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/event/MIRegisterCreatedEvent.java debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/event/MIRunningEvent.java debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/event/MISharedLibChangedEvent.java debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/event/MISharedLibCreatedEvent.java debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/event/MISharedLibEvent.java debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/event/MISharedLibUnloadedEvent.java debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/event/MISignalChangedEvent.java debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/event/MISignalEvent.java debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/event/MISteppingRangeEvent.java debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/event/MIStoppedEvent.java debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/event/MIThreadCreatedEvent.java debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/event/MIThreadExitEvent.java debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/event/MIVarChangedEvent.java debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/event/MIVarCreatedEvent.java debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/event/MIVarDeletedEvent.java debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/event/MIWatchpointScopeEvent.java debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/event/MIWatchpointTriggerEvent.java debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/output/CLIInfoProgramInfo.java debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/output/CLIInfoSharedLibraryInfo.java debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/output/CLIInfoSignalsInfo.java debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/output/CLIInfoThreadsInfo.java debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/output/CLIPTypeInfo.java debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/output/CLIWhatisInfo.java debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/output/MIArg.java debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/output/MIAsm.java debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/output/MIAsyncRecord.java debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/output/MIBreakInsertInfo.java debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/output/MIBreakListInfo.java debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/output/MIBreakWatchInfo.java debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/output/MIBreakpoint.java debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/output/MIConsoleStreamOutput.java debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/output/MIConst.java debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/output/MIDataDisassembleInfo.java debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/output/MIDataEvaluateExpressionInfo.java debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/output/MIDataListChangedRegistersInfo.java debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/output/MIDataListRegisterNamesInfo.java debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/output/MIDataListRegisterValuesInfo.java debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/output/MIDataReadMemoryInfo.java debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/output/MIEnvironmentPWDInfo.java debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/output/MIExecAsyncOutput.java debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/output/MIFrame.java debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/output/MIGDBShowAddressSizeInfo.java debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/output/MIGDBShowDirectoriesInfo.java debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/output/MIGDBShowEndianInfo.java debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/output/MIGDBShowExitCodeInfo.java debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/output/MIGDBShowInfo.java debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/output/MIGDBShowSolibSearchPathInfo.java debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/output/MIInfo.java debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/output/MIList.java debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/output/MILogStreamOutput.java debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/output/MIMemory.java debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/output/MINotifyAsyncOutput.java debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/output/MIOOBRecord.java debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/output/MIOutput.java debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/output/MIParser.java debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/output/MIRegisterValue.java debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/output/MIResult.java debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/output/MIResultRecord.java debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/output/MIShared.java debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/output/MISigHandle.java debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/output/MISrcAsm.java debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/output/MIStackInfoDepthInfo.java debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/output/MIStackListArgumentsInfo.java debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/output/MIStackListFramesInfo.java debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/output/MIStackListLocalsInfo.java debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/output/MIStatusAsyncOutput.java debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/output/MIStreamRecord.java debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/output/MITargetStreamOutput.java debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/output/MIThreadListIdsInfo.java debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/output/MIThreadSelectInfo.java debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/output/MITuple.java debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/output/MIValue.java debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/output/MIVar.java debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/output/MIVarChange.java debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/output/MIVarCreateInfo.java debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/output/MIVarDeleteInfo.java debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/output/MIVarEvaluateExpressionInfo.java debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/output/MIVarInfoExpressionInfo.java debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/output/MIVarInfoNumChildrenInfo.java debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/output/MIVarInfoTypeInfo.java debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/output/MIVarListChildrenInfo.java debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/output/MIVarShowAttributesInfo.java debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/output/MIVarShowFormatInfo.java debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/output/MIVarUpdateInfo.java debug/org.eclipse.cdt.debug.mi.core/plugin.properties debug/org.eclipse.cdt.debug.mi.core/plugin.xml debug/org.eclipse.cdt.debug.mi.core/schema/commandFactories.exsd debug/org.eclipse.cdt.debug.mi.core/src/org/eclipse/cdt/debug/mi/core/AbstractGDBCDIDebugger.java debug/org.eclipse.cdt.debug.mi.core/src/org/eclipse/cdt/debug/mi/core/CygwinGDBCDIDebugger.java debug/org.eclipse.cdt.debug.mi.core/src/org/eclipse/cdt/debug/mi/core/CygwinGDBCDIDebugger2.java debug/org.eclipse.cdt.debug.mi.core/src/org/eclipse/cdt/debug/mi/core/CygwinGDBDebugger.java debug/org.eclipse.cdt.debug.mi.core/src/org/eclipse/cdt/debug/mi/core/GDBCDIDebugger.java debug/org.eclipse.cdt.debug.mi.core/src/org/eclipse/cdt/debug/mi/core/GDBCDIDebugger2.java debug/org.eclipse.cdt.debug.mi.core/src/org/eclipse/cdt/debug/mi/core/GDBDebugger.java debug/org.eclipse.cdt.debug.mi.core/src/org/eclipse/cdt/debug/mi/core/GDBProcess.java debug/org.eclipse.cdt.debug.mi.core/src/org/eclipse/cdt/debug/mi/core/GDBServerCDIDebugger.java debug/org.eclipse.cdt.debug.mi.core/src/org/eclipse/cdt/debug/mi/core/GDBServerCDIDebugger2.java debug/org.eclipse.cdt.debug.mi.core/src/org/eclipse/cdt/debug/mi/core/GDBServerDebugger.java debug/org.eclipse.cdt.debug.mi.core/src/org/eclipse/cdt/debug/mi/core/IGDBServerMILaunchConfigurationConstants.java debug/org.eclipse.cdt.debug.mi.core/src/org/eclipse/cdt/debug/mi/core/IMIConstants.java debug/org.eclipse.cdt.debug.mi.core/src/org/eclipse/cdt/debug/mi/core/IMILaunchConfigurationConstants.java debug/org.eclipse.cdt.debug.mi.core/src/org/eclipse/cdt/debug/mi/core/MICoreUtils.java debug/org.eclipse.cdt.debug.mi.core/src/org/eclipse/cdt/debug/mi/core/MIPlugin.java debug/org.eclipse.cdt.debug.mi.core/src/org/eclipse/cdt/debug/mi/core/MIPluginResources.properties debug/org.eclipse.cdt.debug.mi.core/src/org/eclipse/cdt/debug/mi/core/MIPreferenceInitializer.java debug/org.eclipse.cdt.debug.mi.core/src/org/eclipse/cdt/debug/mi/core/MIProcessAdapter.java debug/org.eclipse.cdt.debug.mi.core/src/org/eclipse/cdt/debug/mi/core/MITTYAdapter.java debug/org.eclipse.cdt.debug.mi.ui/.classpath debug/org.eclipse.cdt.debug.mi.ui/.cvsignore debug/org.eclipse.cdt.debug.mi.ui/.project debug/org.eclipse.cdt.debug.mi.ui/.settings/org.eclipse.core.resources.prefs debug/org.eclipse.cdt.debug.mi.ui/ChangeLog debug/org.eclipse.cdt.debug.mi.ui/META-INF/MANIFEST.MF debug/org.eclipse.cdt.debug.mi.ui/about.html debug/org.eclipse.cdt.debug.mi.ui/build.properties debug/org.eclipse.cdt.debug.mi.ui/icons/obj16/save_console.gif debug/org.eclipse.cdt.debug.mi.ui/icons/obj16/verbose_mode_co.gif debug/org.eclipse.cdt.debug.mi.ui/plugin.properties debug/org.eclipse.cdt.debug.mi.ui/plugin.xml debug/org.eclipse.cdt.debug.mi.ui/src/org/eclipse/cdt/debug/mi/internal/ui/ActionFilterAdapterFactory.java debug/org.eclipse.cdt.debug.mi.ui/src/org/eclipse/cdt/debug/mi/internal/ui/CygwinDebuggerPage.java debug/org.eclipse.cdt.debug.mi.ui/src/org/eclipse/cdt/debug/mi/internal/ui/GDBDebuggerPage.java debug/org.eclipse.cdt.debug.mi.ui/src/org/eclipse/cdt/debug/mi/internal/ui/GDBServerDebuggerPage.java debug/org.eclipse.cdt.debug.mi.ui/src/org/eclipse/cdt/debug/mi/internal/ui/GDBSolibBlock.java debug/org.eclipse.cdt.debug.mi.ui/src/org/eclipse/cdt/debug/mi/internal/ui/GDBTargetActionFilter.java debug/org.eclipse.cdt.debug.mi.ui/src/org/eclipse/cdt/debug/mi/internal/ui/IMIHelpContextIds.java debug/org.eclipse.cdt.debug.mi.ui/src/org/eclipse/cdt/debug/mi/internal/ui/IMIUIConstants.java debug/org.eclipse.cdt.debug.mi.ui/src/org/eclipse/cdt/debug/mi/internal/ui/MIUIMessages.java debug/org.eclipse.cdt.debug.mi.ui/src/org/eclipse/cdt/debug/mi/internal/ui/MIUIMessages.properties debug/org.eclipse.cdt.debug.mi.ui/src/org/eclipse/cdt/debug/mi/internal/ui/MIUIPlugin.java debug/org.eclipse.cdt.debug.mi.ui/src/org/eclipse/cdt/debug/mi/internal/ui/PixelConverter.java debug/org.eclipse.cdt.debug.mi.ui/src/org/eclipse/cdt/debug/mi/internal/ui/SWTUtil.java debug/org.eclipse.cdt.debug.mi.ui/src/org/eclipse/cdt/debug/mi/internal/ui/SerialPortSettingsBlock.java debug/org.eclipse.cdt.debug.mi.ui/src/org/eclipse/cdt/debug/mi/internal/ui/SolibSearchPathBlock.java debug/org.eclipse.cdt.debug.mi.ui/src/org/eclipse/cdt/debug/mi/internal/ui/StandardGDBDebuggerPage.java debug/org.eclipse.cdt.debug.mi.ui/src/org/eclipse/cdt/debug/mi/internal/ui/TCPSettingsBlock.java debug/org.eclipse.cdt.debug.mi.ui/src/org/eclipse/cdt/debug/mi/internal/ui/actions/ActionMessages.java debug/org.eclipse.cdt.debug.mi.ui/src/org/eclipse/cdt/debug/mi/internal/ui/actions/ActionMessages.properties debug/org.eclipse.cdt.debug.mi.ui/src/org/eclipse/cdt/debug/mi/internal/ui/actions/SetAutoSolibActionDelegate.java debug/org.eclipse.cdt.debug.mi.ui/src/org/eclipse/cdt/debug/mi/internal/ui/actions/VerboseModeActionDelegate.java debug/org.eclipse.cdt.debug.mi.ui/src/org/eclipse/cdt/debug/mi/internal/ui/dialogfields/CheckedListDialogField.java debug/org.eclipse.cdt.debug.mi.ui/src/org/eclipse/cdt/debug/mi/internal/ui/dialogfields/ComboDialogField.java debug/org.eclipse.cdt.debug.mi.ui/src/org/eclipse/cdt/debug/mi/internal/ui/dialogfields/DialogField.java debug/org.eclipse.cdt.debug.mi.ui/src/org/eclipse/cdt/debug/mi/internal/ui/dialogfields/IDialogFieldListener.java debug/org.eclipse.cdt.debug.mi.ui/src/org/eclipse/cdt/debug/mi/internal/ui/dialogfields/IListAdapter.java debug/org.eclipse.cdt.debug.mi.ui/src/org/eclipse/cdt/debug/mi/internal/ui/dialogfields/IStringButtonAdapter.java debug/org.eclipse.cdt.debug.mi.ui/src/org/eclipse/cdt/debug/mi/internal/ui/dialogfields/LayoutUtil.java debug/org.eclipse.cdt.debug.mi.ui/src/org/eclipse/cdt/debug/mi/internal/ui/dialogfields/ListDialogField.java debug/org.eclipse.cdt.debug.mi.ui/src/org/eclipse/cdt/debug/mi/internal/ui/dialogfields/SelectionButtonDialogField.java debug/org.eclipse.cdt.debug.mi.ui/src/org/eclipse/cdt/debug/mi/internal/ui/dialogfields/SelectionButtonDialogFieldGroup.java debug/org.eclipse.cdt.debug.mi.ui/src/org/eclipse/cdt/debug/mi/internal/ui/dialogfields/Separator.java debug/org.eclipse.cdt.debug.mi.ui/src/org/eclipse/cdt/debug/mi/internal/ui/dialogfields/StringButtonDialogField.java debug/org.eclipse.cdt.debug.mi.ui/src/org/eclipse/cdt/debug/mi/internal/ui/dialogfields/StringButtonStatusDialogField.java debug/org.eclipse.cdt.debug.mi.ui/src/org/eclipse/cdt/debug/mi/internal/ui/dialogfields/StringDialogField.java debug/org.eclipse.cdt.debug.mi.ui/src/org/eclipse/cdt/debug/mi/internal/ui/preferences/MIPreferencePage.java debug/org.eclipse.cdt.debug.mi.ui/src/org/eclipse/cdt/debug/mi/internal/ui/preferences/PreferenceMessages.java debug/org.eclipse.cdt.debug.mi.ui/src/org/eclipse/cdt/debug/mi/internal/ui/preferences/PreferenceMessages.properties debug/org.eclipse.cdt.debug.mi.ui/src/org/eclipse/cdt/debug/mi/internal/ui/propertypages/OptionsPropertyPage.java debug/org.eclipse.cdt.debug.mi.ui/src/org/eclipse/cdt/debug/mi/internal/ui/propertypages/PropertyMessages.java debug/org.eclipse.cdt.debug.mi.ui/src/org/eclipse/cdt/debug/mi/internal/ui/propertypages/PropertyMessages.properties debug/org.eclipse.cdt.debug.mi.ui/src/org/eclipse/cdt/debug/mi/ui/IMILaunchConfigurationComponent.java debug/org.eclipse.cdt.debug.mi.ui/src/org/eclipse/cdt/debug/mi/ui/MIUIUtils.java debug/org.eclipse.cdt.debug.mi.ui/src/org/eclipse/cdt/debug/mi/ui/console/MiConsolePageParticipant.java debug/org.eclipse.cdt.debug.mi.ui/src/org/eclipse/cdt/debug/mi/ui/console/VerboseModeChangedEvent.java debug/org.eclipse.cdt.debug.mi.ui/src/org/eclipse/cdt/debug/mi/ui/console/actions/IMiConsoleImagesConst.java debug/org.eclipse.cdt.debug.mi.ui/src/org/eclipse/cdt/debug/mi/ui/console/actions/MiConsoleMessages.java debug/org.eclipse.cdt.debug.mi.ui/src/org/eclipse/cdt/debug/mi/ui/console/actions/MiConsoleMessages.properties debug/org.eclipse.cdt.debug.mi.ui/src/org/eclipse/cdt/debug/mi/ui/console/actions/MiConsoleSaveAction.java debug/org.eclipse.cdt.debug.mi.ui/src/org/eclipse/cdt/debug/mi/ui/console/actions/MiConsoleVerboseModeAction.java debug/org.eclipse.cdt.debug.ui.tests/.classpath debug/org.eclipse.cdt.debug.ui.tests/.cvsignore debug/org.eclipse.cdt.debug.ui.tests/.project debug/org.eclipse.cdt.debug.ui.tests/.settings/org.eclipse.jdt.core.prefs debug/org.eclipse.cdt.debug.ui.tests/Changelog debug/org.eclipse.cdt.debug.ui.tests/META-INF/MANIFEST.MF debug/org.eclipse.cdt.debug.ui.tests/about.html debug/org.eclipse.cdt.debug.ui.tests/build.properties debug/org.eclipse.cdt.debug.ui.tests/core/org/eclipse/cdt/debug/core/tests/.cvsignore debug/org.eclipse.cdt.debug.ui.tests/core/org/eclipse/cdt/debug/core/tests/AllDebugTests.java debug/org.eclipse.cdt.debug.ui.tests/core/org/eclipse/cdt/debug/core/tests/BreakpointTests.java debug/org.eclipse.cdt.debug.ui.tests/core/org/eclipse/cdt/debug/core/tests/DebugTests.java debug/org.eclipse.cdt.debug.ui.tests/core/org/eclipse/cdt/debug/core/tests/LocationTests.java debug/org.eclipse.cdt.debug.ui.tests/core/org/eclipse/cdt/debug/core/tests/TargetTests.java debug/org.eclipse.cdt.debug.ui.tests/plugin.xml debug/org.eclipse.cdt.debug.ui.tests/resources/debugTest.zip debug/org.eclipse.cdt.debug.ui.tests/src/org/eclipse/cdt/debug/testplugin/CDebugHelper.java debug/org.eclipse.cdt.debug.ui.tests/src/org/eclipse/cdt/debug/testplugin/CProjectHelper.java debug/org.eclipse.cdt.debug.ui.tests/src/org/eclipse/cdt/debug/testplugin/CTestPlugin.java debug/org.eclipse.cdt.debug.ui.tests/src/org/eclipse/cdt/debug/testplugin/util/ExpectedStrings.java debug/org.eclipse.cdt.debug.ui.tests/src/org/eclipse/cdt/debug/testplugin/util/ExpectedStringsTests.java debug/org.eclipse.cdt.debug.ui.tests/test.xml debug/org.eclipse.cdt.debug.ui/.classpath debug/org.eclipse.cdt.debug.ui/.cvsignore debug/org.eclipse.cdt.debug.ui/.project debug/org.eclipse.cdt.debug.ui/.settings/org.eclipse.jdt.core.prefs debug/org.eclipse.cdt.debug.ui/ChangeLog debug/org.eclipse.cdt.debug.ui/ChangeLog-2003 debug/org.eclipse.cdt.debug.ui/META-INF/MANIFEST.MF debug/org.eclipse.cdt.debug.ui/NEWS debug/org.eclipse.cdt.debug.ui/about.html debug/org.eclipse.cdt.debug.ui/build.properties debug/org.eclipse.cdt.debug.ui/icons/dlcl16/auto_refresh_co.gif debug/org.eclipse.cdt.debug.ui/icons/dlcl16/casttotype_co.gif debug/org.eclipse.cdt.debug.ui/icons/dlcl16/change_reg_value_co.gif debug/org.eclipse.cdt.debug.ui/icons/dlcl16/collapseall.gif debug/org.eclipse.cdt.debug.ui/icons/dlcl16/debugger_console.gif debug/org.eclipse.cdt.debug.ui/icons/dlcl16/det_pane_hide.gif debug/org.eclipse.cdt.debug.ui/icons/dlcl16/det_pane_right.gif debug/org.eclipse.cdt.debug.ui/icons/dlcl16/det_pane_under.gif debug/org.eclipse.cdt.debug.ui/icons/dlcl16/disabled_co.gif debug/org.eclipse.cdt.debug.ui/icons/dlcl16/disassembly.gif debug/org.eclipse.cdt.debug.ui/icons/dlcl16/enabled_co.gif debug/org.eclipse.cdt.debug.ui/icons/dlcl16/instr_step.gif debug/org.eclipse.cdt.debug.ui/icons/dlcl16/jump_co.gif debug/org.eclipse.cdt.debug.ui/icons/dlcl16/load_all_symbols_co.gif debug/org.eclipse.cdt.debug.ui/icons/dlcl16/load_symbols_co.gif debug/org.eclipse.cdt.debug.ui/icons/dlcl16/memory_clear.gif debug/org.eclipse.cdt.debug.ui/icons/dlcl16/memory_update.gif debug/org.eclipse.cdt.debug.ui/icons/dlcl16/refresh_co.gif debug/org.eclipse.cdt.debug.ui/icons/dlcl16/rem_all_co.gif debug/org.eclipse.cdt.debug.ui/icons/dlcl16/rem_co.gif debug/org.eclipse.cdt.debug.ui/icons/dlcl16/restart.gif debug/org.eclipse.cdt.debug.ui/icons/dlcl16/runtoline_co.gif debug/org.eclipse.cdt.debug.ui/icons/dlcl16/show_ascii.gif debug/org.eclipse.cdt.debug.ui/icons/dlcl16/show_paths.gif debug/org.eclipse.cdt.debug.ui/icons/dlcl16/showasarray_co.gif debug/org.eclipse.cdt.debug.ui/icons/dlcl16/signal0_co.gif debug/org.eclipse.cdt.debug.ui/icons/dlcl16/signal_co.gif debug/org.eclipse.cdt.debug.ui/icons/dlcl16/tnames_co.gif debug/org.eclipse.cdt.debug.ui/icons/dlcl16/watch_globals.gif debug/org.eclipse.cdt.debug.ui/icons/dtool16/watch_exp.gif debug/org.eclipse.cdt.debug.ui/icons/elcl16/auto_refresh_co.gif debug/org.eclipse.cdt.debug.ui/icons/elcl16/casttotype_co.gif debug/org.eclipse.cdt.debug.ui/icons/elcl16/change_reg_value_co.gif debug/org.eclipse.cdt.debug.ui/icons/elcl16/collapseall.gif debug/org.eclipse.cdt.debug.ui/icons/elcl16/debugger_console.gif debug/org.eclipse.cdt.debug.ui/icons/elcl16/det_pane_hide.gif debug/org.eclipse.cdt.debug.ui/icons/elcl16/det_pane_right.gif debug/org.eclipse.cdt.debug.ui/icons/elcl16/det_pane_under.gif debug/org.eclipse.cdt.debug.ui/icons/elcl16/disabled_co.gif debug/org.eclipse.cdt.debug.ui/icons/elcl16/disassembly.gif debug/org.eclipse.cdt.debug.ui/icons/elcl16/enabled_co.gif debug/org.eclipse.cdt.debug.ui/icons/elcl16/function_brkpt_co.gif debug/org.eclipse.cdt.debug.ui/icons/elcl16/instr_step.gif debug/org.eclipse.cdt.debug.ui/icons/elcl16/jump_co.gif debug/org.eclipse.cdt.debug.ui/icons/elcl16/load_all_symbols_co.gif debug/org.eclipse.cdt.debug.ui/icons/elcl16/load_symbols_co.gif debug/org.eclipse.cdt.debug.ui/icons/elcl16/memory_clear.gif debug/org.eclipse.cdt.debug.ui/icons/elcl16/memory_update.gif debug/org.eclipse.cdt.debug.ui/icons/elcl16/refresh_co.gif debug/org.eclipse.cdt.debug.ui/icons/elcl16/rem_all_co.gif debug/org.eclipse.cdt.debug.ui/icons/elcl16/rem_co.gif debug/org.eclipse.cdt.debug.ui/icons/elcl16/restart.gif debug/org.eclipse.cdt.debug.ui/icons/elcl16/runtoline_co.gif debug/org.eclipse.cdt.debug.ui/icons/elcl16/show_ascii.gif debug/org.eclipse.cdt.debug.ui/icons/elcl16/show_parents.gif debug/org.eclipse.cdt.debug.ui/icons/elcl16/show_paths.gif debug/org.eclipse.cdt.debug.ui/icons/elcl16/showasarray_co.gif debug/org.eclipse.cdt.debug.ui/icons/elcl16/signal0_co.gif debug/org.eclipse.cdt.debug.ui/icons/elcl16/signal_co.gif debug/org.eclipse.cdt.debug.ui/icons/elcl16/tnames_co.gif debug/org.eclipse.cdt.debug.ui/icons/elcl16/watch_globals.gif debug/org.eclipse.cdt.debug.ui/icons/elcl16/watchpoint_co.gif debug/org.eclipse.cdt.debug.ui/icons/etool16/watch_exp.gif debug/org.eclipse.cdt.debug.ui/icons/obj16/abspath_obj.gif debug/org.eclipse.cdt.debug.ui/icons/obj16/addrbrkp_obj.gif debug/org.eclipse.cdt.debug.ui/icons/obj16/addrbrkpd_obj.gif debug/org.eclipse.cdt.debug.ui/icons/obj16/brkp_obj.gif debug/org.eclipse.cdt.debug.ui/icons/obj16/brkpd_obj.gif debug/org.eclipse.cdt.debug.ui/icons/obj16/c_app.gif debug/org.eclipse.cdt.debug.ui/icons/obj16/cproject_obj.gif debug/org.eclipse.cdt.debug.ui/icons/obj16/directory_obj.gif debug/org.eclipse.cdt.debug.ui/icons/obj16/disassembly_obj.gif debug/org.eclipse.cdt.debug.ui/icons/obj16/exec_dbg_obj.gif debug/org.eclipse.cdt.debug.ui/icons/obj16/exec_obj.gif debug/org.eclipse.cdt.debug.ui/icons/obj16/expression_obj.gif debug/org.eclipse.cdt.debug.ui/icons/obj16/ext_file_obj.gif debug/org.eclipse.cdt.debug.ui/icons/obj16/filenotfound_obj.gif debug/org.eclipse.cdt.debug.ui/icons/obj16/folder_obj.gif debug/org.eclipse.cdt.debug.ui/icons/obj16/funbrkp_obj.gif debug/org.eclipse.cdt.debug.ui/icons/obj16/funbrkpd_obj.gif debug/org.eclipse.cdt.debug.ui/icons/obj16/inst_ptr.gif debug/org.eclipse.cdt.debug.ui/icons/obj16/inst_ptr_top.gif debug/org.eclipse.cdt.debug.ui/icons/obj16/library_obj.gif debug/org.eclipse.cdt.debug.ui/icons/obj16/library_syms_obj.gif debug/org.eclipse.cdt.debug.ui/icons/obj16/mapentry_obj.gif debug/org.eclipse.cdt.debug.ui/icons/obj16/mapping_obj.gif debug/org.eclipse.cdt.debug.ui/icons/obj16/prj_file_obj.gif debug/org.eclipse.cdt.debug.ui/icons/obj16/project_obj.gif debug/org.eclipse.cdt.debug.ui/icons/obj16/read_obj.gif debug/org.eclipse.cdt.debug.ui/icons/obj16/read_obj_disabled.gif debug/org.eclipse.cdt.debug.ui/icons/obj16/readwrite_obj.gif debug/org.eclipse.cdt.debug.ui/icons/obj16/readwrite_obj_disabled.gif debug/org.eclipse.cdt.debug.ui/icons/obj16/register_obj.gif debug/org.eclipse.cdt.debug.ui/icons/obj16/registerd_obj.gif debug/org.eclipse.cdt.debug.ui/icons/obj16/registergroup_obj.gif debug/org.eclipse.cdt.debug.ui/icons/obj16/registergroupd_obj.gif debug/org.eclipse.cdt.debug.ui/icons/obj16/showpaths_obj.gif debug/org.eclipse.cdt.debug.ui/icons/obj16/signal_obj.gif debug/org.eclipse.cdt.debug.ui/icons/obj16/var_aggr.gif debug/org.eclipse.cdt.debug.ui/icons/obj16/var_env.gif debug/org.eclipse.cdt.debug.ui/icons/obj16/var_global.gif debug/org.eclipse.cdt.debug.ui/icons/obj16/var_global_aggr.gif debug/org.eclipse.cdt.debug.ui/icons/obj16/var_pointer.gif debug/org.eclipse.cdt.debug.ui/icons/obj16/var_simple.gif debug/org.eclipse.cdt.debug.ui/icons/obj16/var_simple_aggr.gif debug/org.eclipse.cdt.debug.ui/icons/obj16/var_static.gif debug/org.eclipse.cdt.debug.ui/icons/obj16/var_static_aggr.gif debug/org.eclipse.cdt.debug.ui/icons/obj16/var_string.gif debug/org.eclipse.cdt.debug.ui/icons/obj16/vard_aggr.gif debug/org.eclipse.cdt.debug.ui/icons/obj16/vard_pointer.gif debug/org.eclipse.cdt.debug.ui/icons/obj16/vard_simple.gif debug/org.eclipse.cdt.debug.ui/icons/obj16/write_obj.gif debug/org.eclipse.cdt.debug.ui/icons/obj16/write_obj_disabled.gif debug/org.eclipse.cdt.debug.ui/icons/ovr16/address_ovr.gif debug/org.eclipse.cdt.debug.ui/icons/ovr16/address_ovr_disabled.gif debug/org.eclipse.cdt.debug.ui/icons/ovr16/argument_ovr.gif debug/org.eclipse.cdt.debug.ui/icons/ovr16/castarray_ovr.gif debug/org.eclipse.cdt.debug.ui/icons/ovr16/casttype_ovr.gif debug/org.eclipse.cdt.debug.ui/icons/ovr16/conditional_ovr.gif debug/org.eclipse.cdt.debug.ui/icons/ovr16/conditional_ovr_disabled.gif debug/org.eclipse.cdt.debug.ui/icons/ovr16/error_ovr.gif debug/org.eclipse.cdt.debug.ui/icons/ovr16/function_ovr.gif debug/org.eclipse.cdt.debug.ui/icons/ovr16/function_ovr_disabled.gif debug/org.eclipse.cdt.debug.ui/icons/ovr16/global_ovr.gif debug/org.eclipse.cdt.debug.ui/icons/ovr16/installed_ovr.gif debug/org.eclipse.cdt.debug.ui/icons/ovr16/installed_ovr_disabled.gif debug/org.eclipse.cdt.debug.ui/icons/ovr16/warning_ovr.gif debug/org.eclipse.cdt.debug.ui/icons/view16/disassembly_view.gif debug/org.eclipse.cdt.debug.ui/icons/view16/memory_view.gif debug/org.eclipse.cdt.debug.ui/icons/view16/modules_view.gif debug/org.eclipse.cdt.debug.ui/icons/view16/signals_view.gif debug/org.eclipse.cdt.debug.ui/icons/wizban/addsrcloc_wiz.gif debug/org.eclipse.cdt.debug.ui/icons/wizban/mapentry_wiz.gif debug/org.eclipse.cdt.debug.ui/icons/wizban/mapping_wiz.gif debug/org.eclipse.cdt.debug.ui/plugin.properties debug/org.eclipse.cdt.debug.ui/plugin.xml debug/org.eclipse.cdt.debug.ui/schema/CDebuggerPage.exsd debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/BreakpointImageProvider.java debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/CBreakpointUpdater.java debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/CBreakpointWorkbenchAdapterFactory.java debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/CDebugImageDescriptorRegistry.java debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/CDebugImages.java debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/CDebugModelPresentation.java debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/CDebugUIMessages.java debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/CDebugUIMessages.properties debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/CDebugUIPreferenceInitializer.java debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/CDebugUIUtils.java debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/CDebuggerPageAdapter.java debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/CValueDetailProvider.java debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/CWatchExpressionDelegate.java debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/ColorManager.java debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/DebugMarkerAnnotationModel.java debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/DebugMarkerAnnotationModelFactory.java debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/DetailsViewerConfiguration.java debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/ErrorStatusHandler.java debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/EvaluationContextManager.java debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/HTML2TextReader.java debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/HTMLPrinter.java debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/HTMLTextPresenter.java debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/ICDebugHelpContextIds.java debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/IInternalCDebugUIConstants.java debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/InfoStatusHandler.java debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/LineBreakingReader.java debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/OverlayImageCache.java debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/OverlayImageDescriptor.java debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/PixelConverter.java debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/QuestionStatusHandler.java debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/SWTUtil.java debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/SingleCharReader.java debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/Startup.java debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/SubstitutionTextReader.java debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/actions/AbstractBreakpointRulerAction.java debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/actions/AbstractDebugActionDelegate.java debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/actions/AbstractEditorActionDelegate.java debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/actions/AbstractListenerActionDelegate.java debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/actions/AbstractViewActionDelegate.java debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/actions/ActionMessages.java debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/actions/ActionMessages.properties debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/actions/AddExpressionEditorActionDelegate.java debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/actions/AddGlobalsActionDelegate.java debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/actions/AddRegisterGroupActionDelegate.java debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/actions/AddWatchpointActionDelegate.java debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/actions/AddWatchpointDialog.java debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/actions/BinaryVariableFormatActionDelegate.java debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/actions/BreakpointLocationVerifier.java debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/actions/CBreakpointPropertiesAction.java debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/actions/CBreakpointPropertiesRulerAction.java debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/actions/CBreakpointPropertiesRulerActionDelegate.java debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/actions/CastToArrayActionDelegate.java debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/actions/CastToTypeActionDelegate.java debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/actions/CollapseAllModulesAction.java debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/actions/DecVariableFormatActionDelegate.java debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/actions/DisableVariablesActionDelegate.java debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/actions/EditRegisterGroupActionDelegate.java debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/actions/EnableDisableBreakpointRulerAction.java debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/actions/EnableDisableBreakpointRulerActionDelegate.java debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/actions/EnableVariablesActionDelegate.java debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/actions/ExpressionDialog.java debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/actions/HexVariableFormatActionDelegate.java debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/actions/IResumeAtLineTarget.java debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/actions/LoadModuleSymbolsActionDelegate.java debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/actions/LoadSymbolsForAllActionDelegate.java debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/actions/ManageBreakpointRulerActionDelegate.java debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/actions/ManageFunctionBreakpointActionDelegate.java debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/actions/ModulesPropertiesActionDelegate.java debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/actions/NaturalVariableFormatActionDelegate.java debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/actions/RegisterGroupDialog.java debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/actions/RemoveAllGlobalsActionDelegate.java debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/actions/RemoveGlobalsActionDelegate.java debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/actions/RemoveRegisterGroupActionDelegate.java debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/actions/RestartActionDelegate.java debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/actions/RestoreDefaultRegisterGroupsActionDelegate.java debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/actions/RestoreDefaultTypeActionDelegate.java debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/actions/ResumeAtLineActionDelegate.java debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/actions/ResumeAtLineAdapter.java debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/actions/RetargetAction.java debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/actions/RetargetResumeAtLineAction.java debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/actions/RetargettableActionAdapterFactory.java debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/actions/RunToLineAdapter.java debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/actions/ShowFullPathsAction.java debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/actions/SignalActionDelegate.java debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/actions/SignalPropertiesActionDelegate.java debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/actions/SignalZeroWorkbenchActionDelegate.java debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/actions/ToggleBreakpointAdapter.java debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/actions/ToggleBreakpointRulerAction.java debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/actions/ToggleDetailPaneAction.java debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/actions/ToggleInstructionStepModeActionDelegate.java debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/actions/ToggleWatchpointActionDelegate.java debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/actions/VariableFormatActionDelegate.java debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/actions/ViewFilterAction.java debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/actions/WatchpointExpressionVerifier.java debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/dialogfields/CheckedListDialogField.java debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/dialogfields/ComboDialogField.java debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/dialogfields/DialogField.java debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/dialogfields/IDialogFieldListener.java debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/dialogfields/IListAdapter.java debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/dialogfields/IStringButtonAdapter.java debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/dialogfields/LayoutUtil.java debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/dialogfields/ListDialogField.java debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/dialogfields/SelectionButtonDialogField.java debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/dialogfields/SelectionButtonDialogFieldGroup.java debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/dialogfields/Separator.java debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/dialogfields/StringButtonDialogField.java debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/dialogfields/StringButtonStatusDialogField.java debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/dialogfields/StringDialogField.java debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/editors/DebugTextHover.java debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/editors/SharedTextColors.java debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/elements/adapters/CDebugElementAdapterFactory.java debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/elements/adapters/CMemoryAdapterFactory.java debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/elements/adapters/CWatchExpressionFactoryAdapter.java debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/elements/adapters/CWatchExpressionFactoryAdapterFactory.java debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/preferences/CDebugPreferencePage.java debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/preferences/ComboFieldEditor.java debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/preferences/DebuggerTypesPage.java debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/preferences/ICDebugPreferenceConstants.java debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/preferences/PreferenceMessages.java debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/preferences/PreferenceMessages.properties debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/preferences/SourcePreferencePage.java debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/propertypages/CBreakpointFilteringPage.java debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/propertypages/CBreakpointPreferenceStore.java debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/propertypages/CBreakpointPropertyPage.java debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/propertypages/ModuleProperties.java debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/propertypages/ModulePropertyPage.java debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/propertypages/PropertyPageMessages.java debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/propertypages/PropertyPageMessages.properties debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/propertypages/SignalPropertyPage.java debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/propertypages/ThreadFilterEditor.java debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/sourcelookup/AddContainerAction.java debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/sourcelookup/AddSourceContainerDialog.java debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/sourcelookup/CSourceNotFoundEditor.java debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/sourcelookup/CSourceNotFoundEditorInput.java debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/sourcelookup/DownAction.java debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/sourcelookup/EditContainerAction.java debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/sourcelookup/MappingSourceContainerBrowser.java debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/sourcelookup/PathMappingDialog.java debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/sourcelookup/RemoveAction.java debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/sourcelookup/SourceContainerAction.java debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/sourcelookup/SourceContainerAdapterFactory.java debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/sourcelookup/SourceContainerLabelProvider.java debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/sourcelookup/SourceContainerViewer.java debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/sourcelookup/SourceContainerWorkbenchAdapter.java debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/sourcelookup/SourceLookupUIMessages.java debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/sourcelookup/SourceLookupUIMessages.properties debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/sourcelookup/UpAction.java debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/views/AbstractDebugEventHandler.java debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/views/AbstractDebugEventHandlerView.java debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/views/IDebugExceptionHandler.java debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/views/disassembly/DisassemblyAnnotationHover.java debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/views/disassembly/DisassemblyAnnotationModel.java debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/views/disassembly/DisassemblyDocumentProvider.java debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/views/disassembly/DisassemblyEditorInput.java debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/views/disassembly/DisassemblyInstructionPointerAnnotation.java debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/views/disassembly/DisassemblyMessages.java debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/views/disassembly/DisassemblyMessages.properties debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/views/disassembly/DisassemblyView.java debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/views/disassembly/DisassemblyViewEventHandler.java debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/views/disassembly/DisassemblyViewer.java debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/views/disassembly/DisassemblyViewerConfiguration.java debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/views/disassembly/IDisassemblyListener.java debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/views/memory/AddMemoryBlockDialog.java debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/views/memory/AddMemoryBlocks.java debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/views/memory/MemoryBlockLabelDecorator.java debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/views/memory/Messages.java debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/views/memory/messages.properties debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/views/modules/ModuleContentProvider.java debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/views/modules/ModuleLabelProvider.java debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/views/modules/ModuleMementoProvider.java debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/views/modules/ModuleProxyFactory.java debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/views/modules/ModulesMessages.java debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/views/modules/ModulesMessages.properties debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/views/modules/ModulesView.java debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/views/modules/ModulesViewEventHandler.java debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/views/modules/ModulesViewModelProxy.java debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/views/signals/SignalsMessages.java debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/views/signals/SignalsMessages.properties debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/views/signals/SignalsView.java debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/views/signals/SignalsViewContentProvider.java debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/views/signals/SignalsViewEventHandler.java debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/views/signals/SignalsViewer.java debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/ui/AbstractCDebuggerPage.java debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/ui/CDebugUIPlugin.java debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/ui/ICDebugUIConstants.java debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/ui/ICDebuggerPage.java debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/ui/UIMessages.java debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/ui/UIMessages.properties debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/ui/importexecutable/AbstractImportExecutableWizard.java debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/ui/importexecutable/ImportExecutablePageOne.java debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/ui/importexecutable/ImportExecutablePageTwo.java debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/ui/importexecutable/ImportExecutableWizard.java debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/ui/importexecutable/Messages.java debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/ui/importexecutable/messages.properties debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/ui/sourcelookup/DefaultSourceLocator.java debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/ui/sourcelookup/OldDefaultSourceLocator.java debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/ui/sourcelookup/SourceLookupMessages.java debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/ui/sourcelookup/SourceLookupMessages.properties doc/org.eclipse.cdt.doc.isv/.contentsettings doc/org.eclipse.cdt.doc.isv/.cvsignore doc/org.eclipse.cdt.doc.isv/.externalToolBuilders/cdt.doc.isv doc builder.launch doc/org.eclipse.cdt.doc.isv/.project doc/org.eclipse.cdt.doc.isv/META-INF/MANIFEST.MF doc/org.eclipse.cdt.doc.isv/about.html doc/org.eclipse.cdt.doc.isv/book.css doc/org.eclipse.cdt.doc.isv/build.properties doc/org.eclipse.cdt.doc.isv/buildDoc.xml doc/org.eclipse.cdt.doc.isv/cdtOptions doc/org.eclipse.cdt.doc.isv/cdtOptions.txt doc/org.eclipse.cdt.doc.isv/guide/dom/index.html doc/org.eclipse.cdt.doc.isv/guide/index.html doc/org.eclipse.cdt.doc.isv/guide/mbs/extensibilityGuide/IWizardPage.jpeg doc/org.eclipse.cdt.doc.isv/guide/mbs/extensibilityGuide/MBSCustomPage.jpeg doc/org.eclipse.cdt.doc.isv/guide/mbs/extensibilityGuide/MBSCustomPageData.jpeg doc/org.eclipse.cdt.doc.isv/guide/mbs/extensibilityGuide/MBSCustomPageManager.jpeg doc/org.eclipse.cdt.doc.isv/guide/mbs/extensibilityGuide/Managed_Build_Extensibility.html doc/org.eclipse.cdt.doc.isv/guide/mbs/extensibilityGuide/classdiagram.jpeg doc/org.eclipse.cdt.doc.isv/guide/mbs/extensibilityGuide/classdiagram2.jpeg doc/org.eclipse.cdt.doc.isv/guide/mbs/extensibilityGuide/clip_image001.jpg doc/org.eclipse.cdt.doc.isv/guide/mbs/extensibilityGuide/image002.gif doc/org.eclipse.cdt.doc.isv/guide/mbs/extensibilityGuide/image003.gif doc/org.eclipse.cdt.doc.isv/guide/mbs/extensibilityGuide/image004.gif doc/org.eclipse.cdt.doc.isv/guide/mbs/extensibilityGuide/image024.gif doc/org.eclipse.cdt.doc.isv/guide/mbs/extensibilityGuide/image026.gif doc/org.eclipse.cdt.doc.isv/guide/mbs/extensibilityGuide/image028.gif doc/org.eclipse.cdt.doc.isv/guide/mbs/extensibilityGuide/image030.gif doc/org.eclipse.cdt.doc.isv/guide/mbs/extensibilityGuide/image031.gif doc/org.eclipse.cdt.doc.isv/guide/mbs/extensibilityGuide/image032.gif doc/org.eclipse.cdt.doc.isv/guide/mbs/extensibilityGuide/image034.gif doc/org.eclipse.cdt.doc.isv/guide/mbs/extensibilityGuide/image035.gif doc/org.eclipse.cdt.doc.isv/guide/mbs/extensibilityGuide/image036.gif doc/org.eclipse.cdt.doc.isv/guide/mbs/extensibilityGuide/image038.gif doc/org.eclipse.cdt.doc.isv/guide/mbs/extensibilityGuide/image040.gif doc/org.eclipse.cdt.doc.isv/guide/mbs/extensibilityGuide/image042.gif doc/org.eclipse.cdt.doc.isv/guide/mbs/extensibilityGuide/image044.gif doc/org.eclipse.cdt.doc.isv/guide/mbs/extensibilityGuide/image060.gif doc/org.eclipse.cdt.doc.isv/guide/mbs/extensibilityGuide/image062.gif doc/org.eclipse.cdt.doc.isv/guide/mbs/extensibilityGuide/image064.gif doc/org.eclipse.cdt.doc.isv/guide/mbs/extensibilityGuide/image066.gif doc/org.eclipse.cdt.doc.isv/guide/mbs/extensibilityGuide/image068.gif doc/org.eclipse.cdt.doc.isv/notices.html doc/org.eclipse.cdt.doc.isv/plugin.properties doc/org.eclipse.cdt.doc.isv/plugin.xml doc/org.eclipse.cdt.doc.isv/schema.css doc/org.eclipse.cdt.doc.isv/toc.xml doc/org.eclipse.cdt.doc.isv/topics_Guide.xml doc/org.eclipse.cdt.doc.isv/topics_Reference.xml doc/org.eclipse.cdt.doc.user/.project doc/org.eclipse.cdt.doc.user/META-INF/MANIFEST.MF doc/org.eclipse.cdt.doc.user/about.html doc/org.eclipse.cdt.doc.user/build.properties doc/org.eclipse.cdt.doc.user/build.xml doc/org.eclipse.cdt.doc.user/concepts/cdt_c_before_you_begin.htm doc/org.eclipse.cdt.doc.user/concepts/cdt_c_brkpnts.htm doc/org.eclipse.cdt.doc.user/concepts/cdt_c_build_over.htm doc/org.eclipse.cdt.doc.user/concepts/cdt_c_comments.htm doc/org.eclipse.cdt.doc.user/concepts/cdt_c_content_assist.htm doc/org.eclipse.cdt.doc.user/concepts/cdt_c_dbg_info.htm doc/org.eclipse.cdt.doc.user/concepts/cdt_c_editor.htm doc/org.eclipse.cdt.doc.user/concepts/cdt_c_indexer.htm doc/org.eclipse.cdt.doc.user/concepts/cdt_c_indexer_ctagsindexer.htm doc/org.eclipse.cdt.doc.user/concepts/cdt_c_indexer_fullindexer.htm doc/org.eclipse.cdt.doc.user/concepts/cdt_c_indexer_open_close.htm doc/org.eclipse.cdt.doc.user/concepts/cdt_c_indexer_prog_bar.htm doc/org.eclipse.cdt.doc.user/concepts/cdt_c_makefile.htm doc/org.eclipse.cdt.doc.user/concepts/cdt_c_open_declarations.htm doc/org.eclipse.cdt.doc.user/concepts/cdt_c_open_definitions.htm doc/org.eclipse.cdt.doc.user/concepts/cdt_c_outlineview.htm doc/org.eclipse.cdt.doc.user/concepts/cdt_c_over_cdt.htm doc/org.eclipse.cdt.doc.user/concepts/cdt_c_over_dbg.htm doc/org.eclipse.cdt.doc.user/concepts/cdt_c_perspectives.htm doc/org.eclipse.cdt.doc.user/concepts/cdt_c_proj_file_views.htm doc/org.eclipse.cdt.doc.user/concepts/cdt_c_projects.htm doc/org.eclipse.cdt.doc.user/concepts/cdt_c_search.htm doc/org.eclipse.cdt.doc.user/concepts/cdt_c_templates.htm doc/org.eclipse.cdt.doc.user/concepts/cdt_c_views.htm doc/org.eclipse.cdt.doc.user/concepts/cdt_c_whatsnew.htm doc/org.eclipse.cdt.doc.user/concepts/cdt_o_build_conc.htm doc/org.eclipse.cdt.doc.user/concepts/cdt_o_code_entry.htm doc/org.eclipse.cdt.doc.user/concepts/cdt_o_concepts.htm doc/org.eclipse.cdt.doc.user/concepts/cdt_o_dbg_concepts.htm doc/org.eclipse.cdt.doc.user/concepts/cdt_o_edit.htm doc/org.eclipse.cdt.doc.user/concepts/cdt_o_home.htm doc/org.eclipse.cdt.doc.user/concepts/cdt_o_nav.htm doc/org.eclipse.cdt.doc.user/contexts_CDT.xml doc/org.eclipse.cdt.doc.user/contexts_CDT_DEBUGGER.xml doc/org.eclipse.cdt.doc.user/contexts_CDT_DEBUGGER_MI.xml doc/org.eclipse.cdt.doc.user/contexts_CDT_LAUNCH.xml doc/org.eclipse.cdt.doc.user/contexts_CDT_make.xml doc/org.eclipse.cdt.doc.user/getting_started/cdt_o_tutorial.htm doc/org.eclipse.cdt.doc.user/getting_started/cdt_w_basic.htm doc/org.eclipse.cdt.doc.user/getting_started/cdt_w_basic00.htm doc/org.eclipse.cdt.doc.user/getting_started/cdt_w_basic01.htm doc/org.eclipse.cdt.doc.user/getting_started/cdt_w_basic02.htm doc/org.eclipse.cdt.doc.user/getting_started/cdt_w_basic03.htm doc/org.eclipse.cdt.doc.user/getting_started/cdt_w_basic04.htm doc/org.eclipse.cdt.doc.user/getting_started/cdt_w_basic05.htm doc/org.eclipse.cdt.doc.user/getting_started/cdt_w_basic06.htm doc/org.eclipse.cdt.doc.user/getting_started/cdt_w_basic07.htm doc/org.eclipse.cdt.doc.user/getting_started/cdt_w_basic08.htm doc/org.eclipse.cdt.doc.user/getting_started/cdt_w_basic09.htm doc/org.eclipse.cdt.doc.user/getting_started/cdt_w_basic10.htm doc/org.eclipse.cdt.doc.user/getting_started/cdt_w_basic11.htm doc/org.eclipse.cdt.doc.user/getting_started/cdt_w_basic12.htm doc/org.eclipse.cdt.doc.user/getting_started/cdt_w_basic13.htm doc/org.eclipse.cdt.doc.user/getting_started/cdt_w_basic14.htm doc/org.eclipse.cdt.doc.user/getting_started/cdt_w_basic15.htm doc/org.eclipse.cdt.doc.user/getting_started/cdt_w_basic16.htm doc/org.eclipse.cdt.doc.user/getting_started/cdt_w_basic17.htm doc/org.eclipse.cdt.doc.user/getting_started/cdt_w_basic18.htm doc/org.eclipse.cdt.doc.user/getting_started/cdt_w_basic19.htm doc/org.eclipse.cdt.doc.user/getting_started/cdt_w_basic20.htm doc/org.eclipse.cdt.doc.user/getting_started/cdt_w_basic21.htm doc/org.eclipse.cdt.doc.user/getting_started/cdt_w_basic22.htm doc/org.eclipse.cdt.doc.user/getting_started/cdt_w_basic23.htm doc/org.eclipse.cdt.doc.user/getting_started/cdt_w_build.htm doc/org.eclipse.cdt.doc.user/getting_started/cdt_w_debug.htm doc/org.eclipse.cdt.doc.user/getting_started/cdt_w_existing_code.htm doc/org.eclipse.cdt.doc.user/getting_started/cdt_w_import.htm doc/org.eclipse.cdt.doc.user/getting_started/cdt_w_import01.htm doc/org.eclipse.cdt.doc.user/getting_started/cdt_w_import02.htm doc/org.eclipse.cdt.doc.user/getting_started/cdt_w_import03.htm doc/org.eclipse.cdt.doc.user/getting_started/cdt_w_import04.htm doc/org.eclipse.cdt.doc.user/getting_started/cdt_w_import05.htm doc/org.eclipse.cdt.doc.user/getting_started/cdt_w_import07.htm doc/org.eclipse.cdt.doc.user/getting_started/cdt_w_import08.htm doc/org.eclipse.cdt.doc.user/getting_started/cdt_w_import09.htm doc/org.eclipse.cdt.doc.user/getting_started/cdt_w_import10.htm doc/org.eclipse.cdt.doc.user/getting_started/cdt_w_import11.htm doc/org.eclipse.cdt.doc.user/getting_started/cdt_w_import12.htm doc/org.eclipse.cdt.doc.user/getting_started/cdt_w_import13.htm doc/org.eclipse.cdt.doc.user/getting_started/cdt_w_import14.htm doc/org.eclipse.cdt.doc.user/getting_started/cdt_w_import15.htm doc/org.eclipse.cdt.doc.user/getting_started/cdt_w_import16.htm doc/org.eclipse.cdt.doc.user/getting_started/cdt_w_import17.htm doc/org.eclipse.cdt.doc.user/getting_started/cdt_w_import18.htm doc/org.eclipse.cdt.doc.user/getting_started/cdt_w_import19.htm doc/org.eclipse.cdt.doc.user/getting_started/cdt_w_import20.htm doc/org.eclipse.cdt.doc.user/getting_started/cdt_w_import21.htm doc/org.eclipse.cdt.doc.user/getting_started/cdt_w_install_cdt.htm doc/org.eclipse.cdt.doc.user/getting_started/cdt_w_newcpp.htm doc/org.eclipse.cdt.doc.user/getting_started/cdt_w_newmake.htm doc/org.eclipse.cdt.doc.user/getting_started/cdt_w_newproj.htm doc/org.eclipse.cdt.doc.user/getting_started/cdt_w_prepare_workbench.htm doc/org.eclipse.cdt.doc.user/getting_started/cdt_w_standard.htm doc/org.eclipse.cdt.doc.user/getting_started/cdt_w_standard01.htm doc/org.eclipse.cdt.doc.user/getting_started/cdt_w_standard02.htm doc/org.eclipse.cdt.doc.user/getting_started/cdt_w_standard03.htm doc/org.eclipse.cdt.doc.user/getting_started/cdt_w_standard04.htm doc/org.eclipse.cdt.doc.user/getting_started/cdt_w_standard05.htm doc/org.eclipse.cdt.doc.user/getting_started/cdt_w_standard06.htm doc/org.eclipse.cdt.doc.user/getting_started/cdt_w_standard07.htm doc/org.eclipse.cdt.doc.user/getting_started/cdt_w_standard08.htm doc/org.eclipse.cdt.doc.user/getting_started/cdt_w_standard09.htm doc/org.eclipse.cdt.doc.user/getting_started/cdt_w_standard10.htm doc/org.eclipse.cdt.doc.user/getting_started/cdt_w_standard11.htm doc/org.eclipse.cdt.doc.user/getting_started/cdt_w_standard12.htm doc/org.eclipse.cdt.doc.user/getting_started/cdt_w_standard13.htm doc/org.eclipse.cdt.doc.user/getting_started/cdt_w_standard14.htm doc/org.eclipse.cdt.doc.user/getting_started/cdt_w_standard15.htm doc/org.eclipse.cdt.doc.user/getting_started/cdt_w_standard16.htm doc/org.eclipse.cdt.doc.user/getting_started/cdt_w_standard17.htm doc/org.eclipse.cdt.doc.user/getting_started/cdt_w_standard18.htm doc/org.eclipse.cdt.doc.user/getting_started/cdt_w_standard19.htm doc/org.eclipse.cdt.doc.user/getting_started/cdt_w_standard20.htm doc/org.eclipse.cdt.doc.user/getting_started/cdt_w_standard21.htm doc/org.eclipse.cdt.doc.user/getting_started/cdt_w_standard22.htm doc/org.eclipse.cdt.doc.user/getting_started/cdt_w_standard23.htm doc/org.eclipse.cdt.doc.user/getting_started/cdt_w_standard24.htm doc/org.eclipse.cdt.doc.user/getting_started/cdt_w_standard25.htm doc/org.eclipse.cdt.doc.user/getting_started/cdt_w_standard26.htm doc/org.eclipse.cdt.doc.user/getting_started/cdt_w_standard27.htm doc/org.eclipse.cdt.doc.user/getting_started/cdt_w_standard28.htm doc/org.eclipse.cdt.doc.user/getting_started/hw_example.htm doc/org.eclipse.cdt.doc.user/getting_started/make_example.htm doc/org.eclipse.cdt.doc.user/help.css doc/org.eclipse.cdt.doc.user/images/BuildConsole.png doc/org.eclipse.cdt.doc.user/images/C-C++Preferences.png doc/org.eclipse.cdt.doc.user/images/Idea.jpg doc/org.eclipse.cdt.doc.user/images/add_breakpoint.png doc/org.eclipse.cdt.doc.user/images/add_external_include_path.png doc/org.eclipse.cdt.doc.user/images/add_preprocessor_symbol.png doc/org.eclipse.cdt.doc.user/images/alphab_sort_co.gif doc/org.eclipse.cdt.doc.user/images/back.gif doc/org.eclipse.cdt.doc.user/images/build_make_targets.png doc/org.eclipse.cdt.doc.user/images/build_manage.png doc/org.eclipse.cdt.doc.user/images/build_order.png doc/org.eclipse.cdt.doc.user/images/c_cpp_preferences.png doc/org.eclipse.cdt.doc.user/images/c_element_filters.png doc/org.eclipse.cdt.doc.user/images/c_file_obj.gif doc/org.eclipse.cdt.doc.user/images/c_path_symbols_edit.png doc/org.eclipse.cdt.doc.user/images/c_paths_symbols.png doc/org.eclipse.cdt.doc.user/images/cdt_ca_no_completions.png doc/org.eclipse.cdt.doc.user/images/cdt_debug_exes01.png doc/org.eclipse.cdt.doc.user/images/cdt_debug_exes02.png doc/org.eclipse.cdt.doc.user/images/cdt_debug_exes03.png doc/org.eclipse.cdt.doc.user/images/cdt_debug_exes04.png doc/org.eclipse.cdt.doc.user/images/cdt_debug_exes05.png doc/org.eclipse.cdt.doc.user/images/cdt_error_workbench.png doc/org.eclipse.cdt.doc.user/images/cdt_menu_edit.png doc/org.eclipse.cdt.doc.user/images/cdt_menu_file.png doc/org.eclipse.cdt.doc.user/images/cdt_menu_help.png doc/org.eclipse.cdt.doc.user/images/cdt_menu_navigate.png doc/org.eclipse.cdt.doc.user/images/cdt_menu_project.png doc/org.eclipse.cdt.doc.user/images/cdt_menu_run.png doc/org.eclipse.cdt.doc.user/images/cdt_menu_search.png doc/org.eclipse.cdt.doc.user/images/cdt_menu_window.png doc/org.eclipse.cdt.doc.user/images/cdt_menubar.png doc/org.eclipse.cdt.doc.user/images/cdt_o_tutorial.htm doc/org.eclipse.cdt.doc.user/images/cdt_open_type.png doc/org.eclipse.cdt.doc.user/images/cdt_pref_build_console.png doc/org.eclipse.cdt.doc.user/images/cdt_pref_file_types.png doc/org.eclipse.cdt.doc.user/images/cdt_pref_parser.png doc/org.eclipse.cdt.doc.user/images/cdt_properties_indexer.png doc/org.eclipse.cdt.doc.user/images/cdt_refactor.png doc/org.eclipse.cdt.doc.user/images/cdt_refactor_undo.png doc/org.eclipse.cdt.doc.user/images/cdt_restart.png doc/org.eclipse.cdt.doc.user/images/cdt_set_src_folder.png doc/org.eclipse.cdt.doc.user/images/cdt_toolbar.png doc/org.eclipse.cdt.doc.user/images/cdt_update_find-install.png doc/org.eclipse.cdt.doc.user/images/cdt_update_install_cdt_site.png doc/org.eclipse.cdt.doc.user/images/cdt_update_install_new.png doc/org.eclipse.cdt.doc.user/images/cdt_update_install_new_sites.png doc/org.eclipse.cdt.doc.user/images/cdt_update_install_sites.png doc/org.eclipse.cdt.doc.user/images/cdt_update_jar_verification.png doc/org.eclipse.cdt.doc.user/images/cdt_update_license_agreement.png doc/org.eclipse.cdt.doc.user/images/cdt_update_location.png doc/org.eclipse.cdt.doc.user/images/cdt_update_search_results.png doc/org.eclipse.cdt.doc.user/images/cdt_w_basic01.png doc/org.eclipse.cdt.doc.user/images/cdt_w_basic02.png doc/org.eclipse.cdt.doc.user/images/cdt_w_basic03.png doc/org.eclipse.cdt.doc.user/images/cdt_w_basic04.png doc/org.eclipse.cdt.doc.user/images/cdt_w_basic05.png doc/org.eclipse.cdt.doc.user/images/cdt_w_basic06.png doc/org.eclipse.cdt.doc.user/images/cdt_w_basic07.png doc/org.eclipse.cdt.doc.user/images/cdt_w_basic08.png doc/org.eclipse.cdt.doc.user/images/cdt_w_basic09.png doc/org.eclipse.cdt.doc.user/images/cdt_w_basic10.png doc/org.eclipse.cdt.doc.user/images/cdt_w_basic11.png doc/org.eclipse.cdt.doc.user/images/cdt_w_basic12.gif doc/org.eclipse.cdt.doc.user/images/cdt_w_basic12.png doc/org.eclipse.cdt.doc.user/images/cdt_w_basic12a.png doc/org.eclipse.cdt.doc.user/images/cdt_w_basic12b.png doc/org.eclipse.cdt.doc.user/images/cdt_w_basic12c.png doc/org.eclipse.cdt.doc.user/images/cdt_w_basic13.png doc/org.eclipse.cdt.doc.user/images/cdt_w_basic14.gif doc/org.eclipse.cdt.doc.user/images/cdt_w_basic14.png doc/org.eclipse.cdt.doc.user/images/cdt_w_basic15.png doc/org.eclipse.cdt.doc.user/images/cdt_w_basic16.png doc/org.eclipse.cdt.doc.user/images/cdt_w_basic17.png doc/org.eclipse.cdt.doc.user/images/cdt_w_basic18.png doc/org.eclipse.cdt.doc.user/images/cdt_w_basic19.png doc/org.eclipse.cdt.doc.user/images/cdt_w_basic20.png doc/org.eclipse.cdt.doc.user/images/cdt_w_basic21.png doc/org.eclipse.cdt.doc.user/images/cdt_w_basic22.png doc/org.eclipse.cdt.doc.user/images/cdt_w_basic23.png doc/org.eclipse.cdt.doc.user/images/cdt_w_import01.png doc/org.eclipse.cdt.doc.user/images/cdt_w_import02.png doc/org.eclipse.cdt.doc.user/images/cdt_w_import03.png doc/org.eclipse.cdt.doc.user/images/cdt_w_import04.png doc/org.eclipse.cdt.doc.user/images/cdt_w_import05.png doc/org.eclipse.cdt.doc.user/images/cdt_w_import07.png doc/org.eclipse.cdt.doc.user/images/cdt_w_import08.png doc/org.eclipse.cdt.doc.user/images/cdt_w_import09.png doc/org.eclipse.cdt.doc.user/images/cdt_w_import10.png doc/org.eclipse.cdt.doc.user/images/cdt_w_import11.png doc/org.eclipse.cdt.doc.user/images/cdt_w_import12.png doc/org.eclipse.cdt.doc.user/images/cdt_w_import13.png doc/org.eclipse.cdt.doc.user/images/cdt_w_import14.png doc/org.eclipse.cdt.doc.user/images/cdt_w_import15.png doc/org.eclipse.cdt.doc.user/images/cdt_w_import16.png doc/org.eclipse.cdt.doc.user/images/cdt_w_import17.png doc/org.eclipse.cdt.doc.user/images/cdt_w_import18.png doc/org.eclipse.cdt.doc.user/images/cdt_w_import19.png doc/org.eclipse.cdt.doc.user/images/cdt_w_import20.png doc/org.eclipse.cdt.doc.user/images/cdt_w_import21.png doc/org.eclipse.cdt.doc.user/images/cdt_w_standard01.png doc/org.eclipse.cdt.doc.user/images/cdt_w_standard02.png doc/org.eclipse.cdt.doc.user/images/cdt_w_standard03.png doc/org.eclipse.cdt.doc.user/images/cdt_w_standard04.png doc/org.eclipse.cdt.doc.user/images/cdt_w_standard05.png doc/org.eclipse.cdt.doc.user/images/cdt_w_standard06.png doc/org.eclipse.cdt.doc.user/images/cdt_w_standard07.png doc/org.eclipse.cdt.doc.user/images/cdt_w_standard08.png doc/org.eclipse.cdt.doc.user/images/cdt_w_standard09.png doc/org.eclipse.cdt.doc.user/images/cdt_w_standard10.png doc/org.eclipse.cdt.doc.user/images/cdt_w_standard11.png doc/org.eclipse.cdt.doc.user/images/cdt_w_standard12.png doc/org.eclipse.cdt.doc.user/images/cdt_w_standard13.png doc/org.eclipse.cdt.doc.user/images/cdt_w_standard14.png doc/org.eclipse.cdt.doc.user/images/cdt_w_standard15.png doc/org.eclipse.cdt.doc.user/images/cdt_w_standard16.png doc/org.eclipse.cdt.doc.user/images/cdt_w_standard17.png doc/org.eclipse.cdt.doc.user/images/cdt_w_standard18.png doc/org.eclipse.cdt.doc.user/images/cdt_w_standard19.png doc/org.eclipse.cdt.doc.user/images/cdt_w_standard20.png doc/org.eclipse.cdt.doc.user/images/cdt_w_standard21.png doc/org.eclipse.cdt.doc.user/images/cdt_w_standard22.png doc/org.eclipse.cdt.doc.user/images/cdt_w_standard23.png doc/org.eclipse.cdt.doc.user/images/cdt_w_standard24.png doc/org.eclipse.cdt.doc.user/images/cdt_w_standard25.png doc/org.eclipse.cdt.doc.user/images/cdt_w_standard26.png doc/org.eclipse.cdt.doc.user/images/cdt_w_standard27.png doc/org.eclipse.cdt.doc.user/images/cdt_w_standard28.png doc/org.eclipse.cdt.doc.user/images/class_obj.gif doc/org.eclipse.cdt.doc.user/images/code_templates.png doc/org.eclipse.cdt.doc.user/images/code_templates_edit.png doc/org.eclipse.cdt.doc.user/images/code_templates_new.png doc/org.eclipse.cdt.doc.user/images/codetemplates_example.png doc/org.eclipse.cdt.doc.user/images/console_build.png doc/org.eclipse.cdt.doc.user/images/container_obj.gif doc/org.eclipse.cdt.doc.user/images/contentAssist_example.gif doc/org.eclipse.cdt.doc.user/images/contentAssist_example.png doc/org.eclipse.cdt.doc.user/images/contentAssist_preferences.png doc/org.eclipse.cdt.doc.user/images/contents_view.gif doc/org.eclipse.cdt.doc.user/images/convert_proj.png doc/org.eclipse.cdt.doc.user/images/create_make_target.png doc/org.eclipse.cdt.doc.user/images/create_make_target_win.png doc/org.eclipse.cdt.doc.user/images/customize_perspective.png doc/org.eclipse.cdt.doc.user/images/debug_gdb_pref.png doc/org.eclipse.cdt.doc.user/images/debug_pref.png doc/org.eclipse.cdt.doc.user/images/debug_src_pref.png doc/org.eclipse.cdt.doc.user/images/define_obj.gif doc/org.eclipse.cdt.doc.user/images/discovery_preferences.png doc/org.eclipse.cdt.doc.user/images/edit_menu.png doc/org.eclipse.cdt.doc.user/images/editor_annotations_preferences.png doc/org.eclipse.cdt.doc.user/images/editor_c_codetemplates_use.gif doc/org.eclipse.cdt.doc.user/images/editor_c_codetemplates_use.png doc/org.eclipse.cdt.doc.user/images/editor_color_preferences.png doc/org.eclipse.cdt.doc.user/images/editor_general_preferences.png doc/org.eclipse.cdt.doc.user/images/editor_hover_preferences.png doc/org.eclipse.cdt.doc.user/images/editor_navigation_preferences.png doc/org.eclipse.cdt.doc.user/images/enum_obj.gif doc/org.eclipse.cdt.doc.user/images/enumerator_obj.gif doc/org.eclipse.cdt.doc.user/images/error_icon.gif doc/org.eclipse.cdt.doc.user/images/field_obj.gif doc/org.eclipse.cdt.doc.user/images/field_private_obj.gif doc/org.eclipse.cdt.doc.user/images/field_protected_obj.gif doc/org.eclipse.cdt.doc.user/images/field_public_obj.gif doc/org.eclipse.cdt.doc.user/images/fields_co.gif doc/org.eclipse.cdt.doc.user/images/file_menu.png doc/org.eclipse.cdt.doc.user/images/file_new_conv.png doc/org.eclipse.cdt.doc.user/images/file_new_project.png doc/org.eclipse.cdt.doc.user/images/filterbutton.gif doc/org.eclipse.cdt.doc.user/images/find_replace_dialog.png doc/org.eclipse.cdt.doc.user/images/function_obj.gif doc/org.eclipse.cdt.doc.user/images/home.gif doc/org.eclipse.cdt.doc.user/images/icon_back.png doc/org.eclipse.cdt.doc.user/images/icon_breakpoint_disable.gif doc/org.eclipse.cdt.doc.user/images/icon_breakpoint_obj.gif doc/org.eclipse.cdt.doc.user/images/icon_build_target.png doc/org.eclipse.cdt.doc.user/images/icon_collapse_all.png doc/org.eclipse.cdt.doc.user/images/icon_con_clear.png doc/org.eclipse.cdt.doc.user/images/icon_con_disp_console.png doc/org.eclipse.cdt.doc.user/images/icon_con_max.png doc/org.eclipse.cdt.doc.user/images/icon_con_min.png doc/org.eclipse.cdt.doc.user/images/icon_con_pin.png doc/org.eclipse.cdt.doc.user/images/icon_con_rem_all_term.png doc/org.eclipse.cdt.doc.user/images/icon_con_scroll_lock.png doc/org.eclipse.cdt.doc.user/images/icon_con_terminate.png doc/org.eclipse.cdt.doc.user/images/icon_create_c_class.png doc/org.eclipse.cdt.doc.user/images/icon_create_file.png doc/org.eclipse.cdt.doc.user/images/icon_create_folder.png doc/org.eclipse.cdt.doc.user/images/icon_debug.png doc/org.eclipse.cdt.doc.user/images/icon_debug_exc.gif doc/org.eclipse.cdt.doc.user/images/icon_debugt_obj.gif doc/org.eclipse.cdt.doc.user/images/icon_delete.png doc/org.eclipse.cdt.doc.user/images/icon_disconnect.gif doc/org.eclipse.cdt.doc.user/images/icon_ext_tools.png doc/org.eclipse.cdt.doc.user/images/icon_filter.png doc/org.eclipse.cdt.doc.user/images/icon_forward.png doc/org.eclipse.cdt.doc.user/images/icon_go_next_prob.png doc/org.eclipse.cdt.doc.user/images/icon_go_prev_prob.png doc/org.eclipse.cdt.doc.user/images/icon_home.png doc/org.eclipse.cdt.doc.user/images/icon_installed_ovr.gif doc/org.eclipse.cdt.doc.user/images/icon_last_edit_loc.png doc/org.eclipse.cdt.doc.user/images/icon_link_with_editor.png doc/org.eclipse.cdt.doc.user/images/icon_memory_update.gif doc/org.eclipse.cdt.doc.user/images/icon_menu.png doc/org.eclipse.cdt.doc.user/images/icon_nav_back.png doc/org.eclipse.cdt.doc.user/images/icon_nav_forward.png doc/org.eclipse.cdt.doc.user/images/icon_new.png doc/org.eclipse.cdt.doc.user/images/icon_next.png doc/org.eclipse.cdt.doc.user/images/icon_open_type.png doc/org.eclipse.cdt.doc.user/images/icon_previous.png doc/org.eclipse.cdt.doc.user/images/icon_print.png doc/org.eclipse.cdt.doc.user/images/icon_relaunch.gif doc/org.eclipse.cdt.doc.user/images/icon_remove.png doc/org.eclipse.cdt.doc.user/images/icon_remove_all.gif doc/org.eclipse.cdt.doc.user/images/icon_restore_default.png doc/org.eclipse.cdt.doc.user/images/icon_run.png doc/org.eclipse.cdt.doc.user/images/icon_run_exc.gif doc/org.eclipse.cdt.doc.user/images/icon_save.png doc/org.eclipse.cdt.doc.user/images/icon_search.png doc/org.eclipse.cdt.doc.user/images/icon_show_advanced_prop.png doc/org.eclipse.cdt.doc.user/images/icon_show_categories.png doc/org.eclipse.cdt.doc.user/images/icon_show_prev_search.png doc/org.eclipse.cdt.doc.user/images/icon_stackframe.gif doc/org.eclipse.cdt.doc.user/images/icon_stackframe_running.gif doc/org.eclipse.cdt.doc.user/images/icon_synchronize.png doc/org.eclipse.cdt.doc.user/images/icon_terminate.gif doc/org.eclipse.cdt.doc.user/images/icon_terminate_all.gif doc/org.eclipse.cdt.doc.user/images/icon_terminate_rem.gif doc/org.eclipse.cdt.doc.user/images/icon_thread1.gif doc/org.eclipse.cdt.doc.user/images/icon_thread2.gif doc/org.eclipse.cdt.doc.user/images/icon_thread3.gif doc/org.eclipse.cdt.doc.user/images/icon_up.png doc/org.eclipse.cdt.doc.user/images/icon_watchpoint_readwrite_obj.gif doc/org.eclipse.cdt.doc.user/images/include_obj.gif doc/org.eclipse.cdt.doc.user/images/indexer_ctags_ctagsmissing.PNG doc/org.eclipse.cdt.doc.user/images/indexer_ctags_properties.PNG doc/org.eclipse.cdt.doc.user/images/indexer_ctags_wrongtagformat.PNG doc/org.eclipse.cdt.doc.user/images/indexer_fullindexer_properties.PNG doc/org.eclipse.cdt.doc.user/images/indexer_import_largeproject1.PNG doc/org.eclipse.cdt.doc.user/images/indexer_import_largeproject2.PNG doc/org.eclipse.cdt.doc.user/images/indexer_inclusionnotfound.PNG doc/org.eclipse.cdt.doc.user/images/indexer_inclusionnotfound_problemsview.PNG doc/org.eclipse.cdt.doc.user/images/indexer_preference_page.PNG doc/org.eclipse.cdt.doc.user/images/install_feature_updates.png doc/org.eclipse.cdt.doc.user/images/intl_05.gif doc/org.eclipse.cdt.doc.user/images/make_targets.png doc/org.eclipse.cdt.doc.user/images/makefile.gif doc/org.eclipse.cdt.doc.user/images/manage_defined_symbols.png doc/org.eclipse.cdt.doc.user/images/manage_include_path.png doc/org.eclipse.cdt.doc.user/images/menu_navigate.png doc/org.eclipse.cdt.doc.user/images/method_private_obj.gif doc/org.eclipse.cdt.doc.user/images/method_protected_obj.gif doc/org.eclipse.cdt.doc.user/images/method_public_obj.gif doc/org.eclipse.cdt.doc.user/images/mfile_build.PNG doc/org.eclipse.cdt.doc.user/images/mfile_build_rcbs.png doc/org.eclipse.cdt.doc.user/images/mfile_info.PNG doc/org.eclipse.cdt.doc.user/images/mpref.png doc/org.eclipse.cdt.doc.user/images/mpref_env.png doc/org.eclipse.cdt.doc.user/images/mpref_macro.PNG doc/org.eclipse.cdt.doc.user/images/mprop_binaryp.png doc/org.eclipse.cdt.doc.user/images/mprop_build.png doc/org.eclipse.cdt.doc.user/images/mprop_build_settings.png doc/org.eclipse.cdt.doc.user/images/mprop_builders.png doc/org.eclipse.cdt.doc.user/images/mprop_dcbs.png doc/org.eclipse.cdt.doc.user/images/mprop_documentation.png doc/org.eclipse.cdt.doc.user/images/mprop_env.png doc/org.eclipse.cdt.doc.user/images/mprop_env_new_prep.png doc/org.eclipse.cdt.doc.user/images/mprop_env_new_repl.PNG doc/org.eclipse.cdt.doc.user/images/mprop_errorp.png doc/org.eclipse.cdt.doc.user/images/mprop_file_types.png doc/org.eclipse.cdt.doc.user/images/mprop_indexer.png doc/org.eclipse.cdt.doc.user/images/mprop_info.png doc/org.eclipse.cdt.doc.user/images/mprop_macros.png doc/org.eclipse.cdt.doc.user/images/mprop_macros_new_file.PNG doc/org.eclipse.cdt.doc.user/images/mprop_macros_new_list_file.PNG doc/org.eclipse.cdt.doc.user/images/mprop_manage.png doc/org.eclipse.cdt.doc.user/images/mprop_new.png doc/org.eclipse.cdt.doc.user/images/mprop_proref.png doc/org.eclipse.cdt.doc.user/images/mprop_refactoring_history.png doc/org.eclipse.cdt.doc.user/images/mprop_rename.png doc/org.eclipse.cdt.doc.user/images/navigatorView.png doc/org.eclipse.cdt.doc.user/images/new_make-binary_parser.png doc/org.eclipse.cdt.doc.user/images/new_make-builder.png doc/org.eclipse.cdt.doc.user/images/new_make-error_parser.png doc/org.eclipse.cdt.doc.user/images/new_make-paths_symbols.png doc/org.eclipse.cdt.doc.user/images/new_make_disc_options.png doc/org.eclipse.cdt.doc.user/images/new_proj_convert.png doc/org.eclipse.cdt.doc.user/images/new_proj_wz_man_error.png doc/org.eclipse.cdt.doc.user/images/new_proj_wz_man_indexer.png doc/org.eclipse.cdt.doc.user/images/new_proj_wz_man_name.png doc/org.eclipse.cdt.doc.user/images/new_proj_wz_man_proj.png doc/org.eclipse.cdt.doc.user/images/new_proj_wz_man_target.png doc/org.eclipse.cdt.doc.user/images/new_proj_wz_std_binary.png doc/org.eclipse.cdt.doc.user/images/new_proj_wz_std_dscovery.png doc/org.eclipse.cdt.doc.user/images/new_proj_wz_std_error.png doc/org.eclipse.cdt.doc.user/images/new_proj_wz_std_indexer.png doc/org.eclipse.cdt.doc.user/images/new_proj_wz_std_makeb.png doc/org.eclipse.cdt.doc.user/images/new_proj_wz_std_name.png doc/org.eclipse.cdt.doc.user/images/new_proj_wz_std_proj.png doc/org.eclipse.cdt.doc.user/images/new_project.png doc/org.eclipse.cdt.doc.user/images/new_project_wizard.png doc/org.eclipse.cdt.doc.user/images/new_project_wizard_managed.png doc/org.eclipse.cdt.doc.user/images/next.gif doc/org.eclipse.cdt.doc.user/images/ng00_04a.gif doc/org.eclipse.cdt.doc.user/images/ng00_05a.gif doc/org.eclipse.cdt.doc.user/images/ng03_04.gif doc/org.eclipse.cdt.doc.user/images/ng2003.gif doc/org.eclipse.cdt.doc.user/images/ngback.gif doc/org.eclipse.cdt.doc.user/images/ngconcepts.gif doc/org.eclipse.cdt.doc.user/images/ngnext.gif doc/org.eclipse.cdt.doc.user/images/ngref.gif doc/org.eclipse.cdt.doc.user/images/ngtasks.gif doc/org.eclipse.cdt.doc.user/images/ngtopics.gif doc/org.eclipse.cdt.doc.user/images/openDeclaration.png doc/org.eclipse.cdt.doc.user/images/openDeclarations.png doc/org.eclipse.cdt.doc.user/images/openDefinition.png doc/org.eclipse.cdt.doc.user/images/open_declaration_error.png doc/org.eclipse.cdt.doc.user/images/open_definition_error.png doc/org.eclipse.cdt.doc.user/images/outlineView-Sort.png doc/org.eclipse.cdt.doc.user/images/outlineView-hideFields.png doc/org.eclipse.cdt.doc.user/images/outlineView-hideNon-PublicMembers.png doc/org.eclipse.cdt.doc.user/images/outlineView-hideStaticMembers.png doc/org.eclipse.cdt.doc.user/images/outlineView.png doc/org.eclipse.cdt.doc.user/images/project_new_cppfile.png doc/org.eclipse.cdt.doc.user/images/project_new_file.png doc/org.eclipse.cdt.doc.user/images/project_new_file_name.png doc/org.eclipse.cdt.doc.user/images/project_new_makefile.png doc/org.eclipse.cdt.doc.user/images/project_properties.png doc/org.eclipse.cdt.doc.user/images/project_references.png doc/org.eclipse.cdt.doc.user/images/project_rename.png doc/org.eclipse.cdt.doc.user/images/projectsView.png doc/org.eclipse.cdt.doc.user/images/projects_filters.png doc/org.eclipse.cdt.doc.user/images/projects_properties.png doc/org.eclipse.cdt.doc.user/images/public_co.gif doc/org.eclipse.cdt.doc.user/images/ref-79.gif doc/org.eclipse.cdt.doc.user/images/remove_exc.gif doc/org.eclipse.cdt.doc.user/images/rh03_04.gif doc/org.eclipse.cdt.doc.user/images/run_arguments.png doc/org.eclipse.cdt.doc.user/images/run_common.png doc/org.eclipse.cdt.doc.user/images/run_common_folder.png doc/org.eclipse.cdt.doc.user/images/run_config.png doc/org.eclipse.cdt.doc.user/images/run_debugger.png doc/org.eclipse.cdt.doc.user/images/run_environment.png doc/org.eclipse.cdt.doc.user/images/run_menu.png doc/org.eclipse.cdt.doc.user/images/run_source.png doc/org.eclipse.cdt.doc.user/images/scanner_cfg_disc.png doc/org.eclipse.cdt.doc.user/images/search.png doc/org.eclipse.cdt.doc.user/images/searchMenu.png doc/org.eclipse.cdt.doc.user/images/searchView.png doc/org.eclipse.cdt.doc.user/images/search_pref.png doc/org.eclipse.cdt.doc.user/images/selection_search.png doc/org.eclipse.cdt.doc.user/images/show_view.png doc/org.eclipse.cdt.doc.user/images/splash.png doc/org.eclipse.cdt.doc.user/images/sprop_builders.png doc/org.eclipse.cdt.doc.user/images/sprop_file_types.png doc/org.eclipse.cdt.doc.user/images/sprop_indexer.png doc/org.eclipse.cdt.doc.user/images/sprop_info.png doc/org.eclipse.cdt.doc.user/images/sprop_make_binary.png doc/org.eclipse.cdt.doc.user/images/sprop_make_builder.png doc/org.eclipse.cdt.doc.user/images/sprop_make_discovery_file.png doc/org.eclipse.cdt.doc.user/images/sprop_make_discovery_project.png doc/org.eclipse.cdt.doc.user/images/sprop_make_error.png doc/org.eclipse.cdt.doc.user/images/sprop_paths.png doc/org.eclipse.cdt.doc.user/images/sprop_propaths_containers.png doc/org.eclipse.cdt.doc.user/images/sprop_propaths_lib.png doc/org.eclipse.cdt.doc.user/images/sprop_propaths_output.png doc/org.eclipse.cdt.doc.user/images/sprop_propaths_proj.png doc/org.eclipse.cdt.doc.user/images/sprop_propaths_source.png doc/org.eclipse.cdt.doc.user/images/sprop_proref.png doc/org.eclipse.cdt.doc.user/images/static_co.gif doc/org.eclipse.cdt.doc.user/images/struct_obj.gif doc/org.eclipse.cdt.doc.user/images/template_obj.gif doc/org.eclipse.cdt.doc.user/images/toc_closed.gif doc/org.eclipse.cdt.doc.user/images/trans.gif doc/org.eclipse.cdt.doc.user/images/typedef_obj.gif doc/org.eclipse.cdt.doc.user/images/union_obj.gif doc/org.eclipse.cdt.doc.user/images/update_managed_build.png doc/org.eclipse.cdt.doc.user/images/update_managed_build20.PNG doc/org.eclipse.cdt.doc.user/images/var_declaration_obj.gif doc/org.eclipse.cdt.doc.user/images/view-back.png doc/org.eclipse.cdt.doc.user/images/view-collapseAll.png doc/org.eclipse.cdt.doc.user/images/view-collapseAll2.png doc/org.eclipse.cdt.doc.user/images/view-forward.png doc/org.eclipse.cdt.doc.user/images/view-linkWithEditor.png doc/org.eclipse.cdt.doc.user/images/view-menu.png doc/org.eclipse.cdt.doc.user/images/view-up.png doc/org.eclipse.cdt.doc.user/images/view_console.png doc/org.eclipse.cdt.doc.user/images/view_editor.png doc/org.eclipse.cdt.doc.user/images/view_make_targets.png doc/org.eclipse.cdt.doc.user/images/view_navigator.png doc/org.eclipse.cdt.doc.user/images/view_problem.png doc/org.eclipse.cdt.doc.user/images/view_problems.png doc/org.eclipse.cdt.doc.user/images/view_projects.png doc/org.eclipse.cdt.doc.user/images/view_properties.png doc/org.eclipse.cdt.doc.user/images/warning_icon.gif doc/org.eclipse.cdt.doc.user/images/window_customize_perspective.png doc/org.eclipse.cdt.doc.user/images/workbench_prop.png doc/org.eclipse.cdt.doc.user/plugin.properties doc/org.eclipse.cdt.doc.user/plugin.xml doc/org.eclipse.cdt.doc.user/reference/cdt_o_ceditor_pref.htm doc/org.eclipse.cdt.doc.user/reference/cdt_o_dbg_view.htm doc/org.eclipse.cdt.doc.user/reference/cdt_o_menu.htm doc/org.eclipse.cdt.doc.user/reference/cdt_o_mmake_file.htm doc/org.eclipse.cdt.doc.user/reference/cdt_o_mmake_proj.htm doc/org.eclipse.cdt.doc.user/reference/cdt_o_mproj_pref.htm doc/org.eclipse.cdt.doc.user/reference/cdt_o_mproj_pref_env.htm doc/org.eclipse.cdt.doc.user/reference/cdt_o_mproj_pref_macro.htm doc/org.eclipse.cdt.doc.user/reference/cdt_o_new_mproj.htm doc/org.eclipse.cdt.doc.user/reference/cdt_o_new_sproj.htm doc/org.eclipse.cdt.doc.user/reference/cdt_o_parser_perf.htm doc/org.eclipse.cdt.doc.user/reference/cdt_o_proj_prop_pages.htm doc/org.eclipse.cdt.doc.user/reference/cdt_o_ref.htm doc/org.eclipse.cdt.doc.user/reference/cdt_o_run_dbg_pages.htm doc/org.eclipse.cdt.doc.user/reference/cdt_o_smake_proj.htm doc/org.eclipse.cdt.doc.user/reference/cdt_o_sproj_make.htm doc/org.eclipse.cdt.doc.user/reference/cdt_o_sproj_paths.htm doc/org.eclipse.cdt.doc.user/reference/cdt_o_views.htm doc/org.eclipse.cdt.doc.user/reference/cdt_u_build_pref.htm doc/org.eclipse.cdt.doc.user/reference/cdt_u_c_editor_color.htm doc/org.eclipse.cdt.doc.user/reference/cdt_u_c_editor_con_assist.htm doc/org.eclipse.cdt.doc.user/reference/cdt_u_c_editor_gen.htm doc/org.eclipse.cdt.doc.user/reference/cdt_u_c_editor_hov.htm doc/org.eclipse.cdt.doc.user/reference/cdt_u_c_editor_navigation.htm doc/org.eclipse.cdt.doc.user/reference/cdt_u_c_file_types.htm doc/org.eclipse.cdt.doc.user/reference/cdt_u_c_parser_codereader_cache_pref.htm doc/org.eclipse.cdt.doc.user/reference/cdt_u_c_pref.htm doc/org.eclipse.cdt.doc.user/reference/cdt_u_code_temp.htm doc/org.eclipse.cdt.doc.user/reference/cdt_u_console_view.htm doc/org.eclipse.cdt.doc.user/reference/cdt_u_cproj_view.htm doc/org.eclipse.cdt.doc.user/reference/cdt_u_create_make_target.htm doc/org.eclipse.cdt.doc.user/reference/cdt_u_dbg_pref.htm doc/org.eclipse.cdt.doc.user/reference/cdt_u_dbg_src.htm doc/org.eclipse.cdt.doc.user/reference/cdt_u_dbg_view.htm doc/org.eclipse.cdt.doc.user/reference/cdt_u_debug.htm doc/org.eclipse.cdt.doc.user/reference/cdt_u_discovery_preferences.htm doc/org.eclipse.cdt.doc.user/reference/cdt_u_editor_view.htm doc/org.eclipse.cdt.doc.user/reference/cdt_u_find_replace.htm doc/org.eclipse.cdt.doc.user/reference/cdt_u_gdb_mi.htm doc/org.eclipse.cdt.doc.user/reference/cdt_u_icons.htm doc/org.eclipse.cdt.doc.user/reference/cdt_u_indexer_preference.html doc/org.eclipse.cdt.doc.user/reference/cdt_u_m_edit.htm doc/org.eclipse.cdt.doc.user/reference/cdt_u_m_file.htm doc/org.eclipse.cdt.doc.user/reference/cdt_u_m_navigate.htm doc/org.eclipse.cdt.doc.user/reference/cdt_u_m_project.htm doc/org.eclipse.cdt.doc.user/reference/cdt_u_m_run.htm doc/org.eclipse.cdt.doc.user/reference/cdt_u_m_search.htm doc/org.eclipse.cdt.doc.user/reference/cdt_u_m_window.htm doc/org.eclipse.cdt.doc.user/reference/cdt_u_make_targets_pref.htm doc/org.eclipse.cdt.doc.user/reference/cdt_u_make_targets_view.htm doc/org.eclipse.cdt.doc.user/reference/cdt_u_mem_view_pref.htm doc/org.eclipse.cdt.doc.user/reference/cdt_u_memoryview.htm doc/org.eclipse.cdt.doc.user/reference/cdt_u_mfile_build.htm doc/org.eclipse.cdt.doc.user/reference/cdt_u_mfile_info.htm doc/org.eclipse.cdt.doc.user/reference/cdt_u_mfile_rcbs.htm doc/org.eclipse.cdt.doc.user/reference/cdt_u_mfile_tool_settings.htm doc/org.eclipse.cdt.doc.user/reference/cdt_u_modules_view.htm doc/org.eclipse.cdt.doc.user/reference/cdt_u_mprop_build.htm doc/org.eclipse.cdt.doc.user/reference/cdt_u_mprop_build_settings.htm doc/org.eclipse.cdt.doc.user/reference/cdt_u_mprop_builders.htm doc/org.eclipse.cdt.doc.user/reference/cdt_u_mprop_dcbs.htm doc/org.eclipse.cdt.doc.user/reference/cdt_u_mprop_documentation.htm doc/org.eclipse.cdt.doc.user/reference/cdt_u_mprop_env.htm doc/org.eclipse.cdt.doc.user/reference/cdt_u_mprop_file_types.htm doc/org.eclipse.cdt.doc.user/reference/cdt_u_mprop_indexer.htm doc/org.eclipse.cdt.doc.user/reference/cdt_u_mprop_info.htm doc/org.eclipse.cdt.doc.user/reference/cdt_u_mprop_macros.htm doc/org.eclipse.cdt.doc.user/reference/cdt_u_mprop_manage.htm doc/org.eclipse.cdt.doc.user/reference/cdt_u_mprop_mbinary.htm doc/org.eclipse.cdt.doc.user/reference/cdt_u_mprop_merror.htm doc/org.eclipse.cdt.doc.user/reference/cdt_u_mprop_new.htm doc/org.eclipse.cdt.doc.user/reference/cdt_u_mprop_ref.htm doc/org.eclipse.cdt.doc.user/reference/cdt_u_mprop_refactoring_history.htm doc/org.eclipse.cdt.doc.user/reference/cdt_u_mprop_rename.htm doc/org.eclipse.cdt.doc.user/reference/cdt_u_mprop_tool_settings.htm doc/org.eclipse.cdt.doc.user/reference/cdt_u_navigator_view.htm doc/org.eclipse.cdt.doc.user/reference/cdt_u_new_proj_wiz.htm doc/org.eclipse.cdt.doc.user/reference/cdt_u_new_proj_wiz_m_cindexer.htm doc/org.eclipse.cdt.doc.user/reference/cdt_u_new_proj_wiz_m_errorp.htm doc/org.eclipse.cdt.doc.user/reference/cdt_u_new_proj_wiz_m_name.htm doc/org.eclipse.cdt.doc.user/reference/cdt_u_new_proj_wiz_m_proj.htm doc/org.eclipse.cdt.doc.user/reference/cdt_u_new_proj_wiz_m_target.htm doc/org.eclipse.cdt.doc.user/reference/cdt_u_new_proj_wiz_s_binary.htm doc/org.eclipse.cdt.doc.user/reference/cdt_u_new_proj_wiz_s_cindexer.htm doc/org.eclipse.cdt.doc.user/reference/cdt_u_new_proj_wiz_s_discovery.htm doc/org.eclipse.cdt.doc.user/reference/cdt_u_new_proj_wiz_s_errorp.htm doc/org.eclipse.cdt.doc.user/reference/cdt_u_new_proj_wiz_s_mbuilder.htm doc/org.eclipse.cdt.doc.user/reference/cdt_u_new_proj_wiz_s_name.htm doc/org.eclipse.cdt.doc.user/reference/cdt_u_new_proj_wiz_s_proj.htm doc/org.eclipse.cdt.doc.user/reference/cdt_u_newproj_buildset.htm doc/org.eclipse.cdt.doc.user/reference/cdt_u_newproj_def_symb.htm doc/org.eclipse.cdt.doc.user/reference/cdt_u_newproj_discovery_options.htm doc/org.eclipse.cdt.doc.user/reference/cdt_u_newproj_parser_binary.htm doc/org.eclipse.cdt.doc.user/reference/cdt_u_newproj_parser_error.htm doc/org.eclipse.cdt.doc.user/reference/cdt_u_newproj_platf.htm doc/org.eclipse.cdt.doc.user/reference/cdt_u_open_type.htm doc/org.eclipse.cdt.doc.user/reference/cdt_u_outline_view.htm doc/org.eclipse.cdt.doc.user/reference/cdt_u_problems_view.htm doc/org.eclipse.cdt.doc.user/reference/cdt_u_properties.htm doc/org.eclipse.cdt.doc.user/reference/cdt_u_properties_view.htm doc/org.eclipse.cdt.doc.user/reference/cdt_u_registersview.htm doc/org.eclipse.cdt.doc.user/reference/cdt_u_run_dbg_arg.htm doc/org.eclipse.cdt.doc.user/reference/cdt_u_run_dbg_comm.htm doc/org.eclipse.cdt.doc.user/reference/cdt_u_run_dbg_dbg.htm doc/org.eclipse.cdt.doc.user/reference/cdt_u_run_dbg_env.htm doc/org.eclipse.cdt.doc.user/reference/cdt_u_run_dbg_main.htm doc/org.eclipse.cdt.doc.user/reference/cdt_u_run_dbg_srce.htm doc/org.eclipse.cdt.doc.user/reference/cdt_u_scanner_cfg_disc.htm doc/org.eclipse.cdt.doc.user/reference/cdt_u_search.htm doc/org.eclipse.cdt.doc.user/reference/cdt_u_search_view.htm doc/org.eclipse.cdt.doc.user/reference/cdt_u_signals_view.htm doc/org.eclipse.cdt.doc.user/reference/cdt_u_sprop_builders.htm doc/org.eclipse.cdt.doc.user/reference/cdt_u_sprop_file_types.htm doc/org.eclipse.cdt.doc.user/reference/cdt_u_sprop_includes.htm doc/org.eclipse.cdt.doc.user/reference/cdt_u_sprop_indexer.htm doc/org.eclipse.cdt.doc.user/reference/cdt_u_sprop_info.htm doc/org.eclipse.cdt.doc.user/reference/cdt_u_sprop_mbinary.htm doc/org.eclipse.cdt.doc.user/reference/cdt_u_sprop_mbuild.htm doc/org.eclipse.cdt.doc.user/reference/cdt_u_sprop_mdiscovery.htm doc/org.eclipse.cdt.doc.user/reference/cdt_u_sprop_merror.htm doc/org.eclipse.cdt.doc.user/reference/cdt_u_sprop_pcontainers.htm doc/org.eclipse.cdt.doc.user/reference/cdt_u_sprop_plib.htm doc/org.eclipse.cdt.doc.user/reference/cdt_u_sprop_poutput.htm doc/org.eclipse.cdt.doc.user/reference/cdt_u_sprop_pproj.htm doc/org.eclipse.cdt.doc.user/reference/cdt_u_sprop_psource.htm doc/org.eclipse.cdt.doc.user/reference/cdt_u_sprop_ref.htm doc/org.eclipse.cdt.doc.user/reference/cdt_u_toolbar.htm doc/org.eclipse.cdt.doc.user/reference/cdt_u_views.htm doc/org.eclipse.cdt.doc.user/tasks/cdt_o_brkpnts_watch.htm doc/org.eclipse.cdt.doc.user/tasks/cdt_o_build_task.htm doc/org.eclipse.cdt.doc.user/tasks/cdt_o_con_assist.htm doc/org.eclipse.cdt.doc.user/tasks/cdt_o_debug.htm doc/org.eclipse.cdt.doc.user/tasks/cdt_o_proj_files.htm doc/org.eclipse.cdt.doc.user/tasks/cdt_o_run.htm doc/org.eclipse.cdt.doc.user/tasks/cdt_o_run_config.htm doc/org.eclipse.cdt.doc.user/tasks/cdt_o_tasks.htm doc/org.eclipse.cdt.doc.user/tasks/cdt_o_tasksview.htm doc/org.eclipse.cdt.doc.user/tasks/cdt_o_write_code.htm doc/org.eclipse.cdt.doc.user/tasks/cdt_t_add_brkpnts.htm doc/org.eclipse.cdt.doc.user/tasks/cdt_t_add_codetemp.htm doc/org.eclipse.cdt.doc.user/tasks/cdt_t_add_custom_persp.htm doc/org.eclipse.cdt.doc.user/tasks/cdt_t_add_watch.htm doc/org.eclipse.cdt.doc.user/tasks/cdt_t_addmaketarget.htm doc/org.eclipse.cdt.doc.user/tasks/cdt_t_autobuild.htm doc/org.eclipse.cdt.doc.user/tasks/cdt_t_autosave.htm doc/org.eclipse.cdt.doc.user/tasks/cdt_t_build_process.htm doc/org.eclipse.cdt.doc.user/tasks/cdt_t_cbuild_pref.htm doc/org.eclipse.cdt.doc.user/tasks/cdt_t_comment_out.htm doc/org.eclipse.cdt.doc.user/tasks/cdt_t_contentassist.htm doc/org.eclipse.cdt.doc.user/tasks/cdt_t_controldebug.htm doc/org.eclipse.cdt.doc.user/tasks/cdt_t_conv_proj.htm doc/org.eclipse.cdt.doc.user/tasks/cdt_t_convert_cdt_proj.htm doc/org.eclipse.cdt.doc.user/tasks/cdt_t_convert_mbs20_proj.htm doc/org.eclipse.cdt.doc.user/tasks/cdt_t_create_make_target.htm doc/org.eclipse.cdt.doc.user/tasks/cdt_t_cust_cpp_editor.htm doc/org.eclipse.cdt.doc.user/tasks/cdt_t_debug_exes.htm doc/org.eclipse.cdt.doc.user/tasks/cdt_t_debug_prog.htm doc/org.eclipse.cdt.doc.user/tasks/cdt_t_disassembly.htm doc/org.eclipse.cdt.doc.user/tasks/cdt_t_discovery.htm doc/org.eclipse.cdt.doc.user/tasks/cdt_t_endis_able_brk_wtch.htm doc/org.eclipse.cdt.doc.user/tasks/cdt_t_expressions.htm doc/org.eclipse.cdt.doc.user/tasks/cdt_t_filtererror.htm doc/org.eclipse.cdt.doc.user/tasks/cdt_t_imp_code_temp.htm doc/org.eclipse.cdt.doc.user/tasks/cdt_t_indexer_enablectags.html doc/org.eclipse.cdt.doc.user/tasks/cdt_t_indexer_enablefull.htm doc/org.eclipse.cdt.doc.user/tasks/cdt_t_jumperror.htm doc/org.eclipse.cdt.doc.user/tasks/cdt_t_manualbuild.htm doc/org.eclipse.cdt.doc.user/tasks/cdt_t_memory.htm doc/org.eclipse.cdt.doc.user/tasks/cdt_t_mproj_build_set.htm doc/org.eclipse.cdt.doc.user/tasks/cdt_t_new_cpp.htm doc/org.eclipse.cdt.doc.user/tasks/cdt_t_new_make.htm doc/org.eclipse.cdt.doc.user/tasks/cdt_t_new_run_config.htm doc/org.eclipse.cdt.doc.user/tasks/cdt_t_open_declarations.htm doc/org.eclipse.cdt.doc.user/tasks/cdt_t_open_definitions.htm doc/org.eclipse.cdt.doc.user/tasks/cdt_t_proj_build_set.htm doc/org.eclipse.cdt.doc.user/tasks/cdt_t_proj_error_parser.htm doc/org.eclipse.cdt.doc.user/tasks/cdt_t_proj_new.htm doc/org.eclipse.cdt.doc.user/tasks/cdt_t_proj_parser.htm doc/org.eclipse.cdt.doc.user/tasks/cdt_t_proj_paths.htm doc/org.eclipse.cdt.doc.user/tasks/cdt_t_proj_platf.htm doc/org.eclipse.cdt.doc.user/tasks/cdt_t_proj_ref.htm doc/org.eclipse.cdt.doc.user/tasks/cdt_t_proj_rename.htm doc/org.eclipse.cdt.doc.user/tasks/cdt_t_prvw_hide_files.htm doc/org.eclipse.cdt.doc.user/tasks/cdt_t_refactoring.htm doc/org.eclipse.cdt.doc.user/tasks/cdt_t_registers.htm doc/org.eclipse.cdt.doc.user/tasks/cdt_t_rem_wtch_brk.htm doc/org.eclipse.cdt.doc.user/tasks/cdt_t_run_arg.htm doc/org.eclipse.cdt.doc.user/tasks/cdt_t_run_com.htm doc/org.eclipse.cdt.doc.user/tasks/cdt_t_run_config.htm doc/org.eclipse.cdt.doc.user/tasks/cdt_t_run_dbg.htm doc/org.eclipse.cdt.doc.user/tasks/cdt_t_run_env.htm doc/org.eclipse.cdt.doc.user/tasks/cdt_t_run_main.htm doc/org.eclipse.cdt.doc.user/tasks/cdt_t_run_source.htm doc/org.eclipse.cdt.doc.user/tasks/cdt_t_search.htm doc/org.eclipse.cdt.doc.user/tasks/cdt_t_sel_search.htm doc/org.eclipse.cdt.doc.user/tasks/cdt_t_set_src_fold.htm doc/org.eclipse.cdt.doc.user/tasks/cdt_t_setbuildorder.htm doc/org.eclipse.cdt.doc.user/tasks/cdt_t_setreminder.htm doc/org.eclipse.cdt.doc.user/tasks/cdt_t_shift_code.htm doc/org.eclipse.cdt.doc.user/tasks/cdt_t_show_proj_files.htm doc/org.eclipse.cdt.doc.user/tasks/cdt_t_variables.htm doc/org.eclipse.cdt.doc.user/tasks/indexer_importing_large_project.html doc/org.eclipse.cdt.doc.user/toc.xml doc/org.eclipse.cdt.doc.user/topics_Concepts.xml doc/org.eclipse.cdt.doc.user/topics_Getting_Started.xml doc/org.eclipse.cdt.doc.user/topics_Reference.xml doc/org.eclipse.cdt.doc.user/topics_Tasks.xml launch/org.eclipse.cdt.launch/.classpath launch/org.eclipse.cdt.launch/.cvsignore launch/org.eclipse.cdt.launch/.project launch/org.eclipse.cdt.launch/ChangeLog launch/org.eclipse.cdt.launch/META-INF/MANIFEST.MF launch/org.eclipse.cdt.launch/about.html launch/org.eclipse.cdt.launch/build.properties launch/org.eclipse.cdt.launch/icons/obj16/c_app.gif launch/org.eclipse.cdt.launch/icons/obj16/exec_obj.gif launch/org.eclipse.cdt.launch/icons/view16/arguments_tab.gif launch/org.eclipse.cdt.launch/icons/view16/debugger_tab.gif launch/org.eclipse.cdt.launch/icons/view16/environment_tab.gif launch/org.eclipse.cdt.launch/icons/view16/main_tab.gif launch/org.eclipse.cdt.launch/icons/view16/source_tab.gif launch/org.eclipse.cdt.launch/plugin.properties launch/org.eclipse.cdt.launch/plugin.xml launch/org.eclipse.cdt.launch/src/org/eclipse/cdt/launch/AbstractCLaunchDelegate.java launch/org.eclipse.cdt.launch/src/org/eclipse/cdt/launch/LaunchUtils.java launch/org.eclipse.cdt.launch/src/org/eclipse/cdt/launch/internal/CApplicationLaunchShortcut.java launch/org.eclipse.cdt.launch/src/org/eclipse/cdt/launch/internal/CPropertyTester.java launch/org.eclipse.cdt.launch/src/org/eclipse/cdt/launch/internal/CoreFileLaunchDelegate.java launch/org.eclipse.cdt.launch/src/org/eclipse/cdt/launch/internal/LocalAttachLaunchDelegate.java launch/org.eclipse.cdt.launch/src/org/eclipse/cdt/launch/internal/LocalCDILaunchDelegate.java launch/org.eclipse.cdt.launch/src/org/eclipse/cdt/launch/internal/LocalRunLaunchDelegate.java launch/org.eclipse.cdt.launch/src/org/eclipse/cdt/launch/internal/ui/AbstractCDebuggerTab.java launch/org.eclipse.cdt.launch/src/org/eclipse/cdt/launch/internal/ui/CoreFileLaunchConfigurationTabGroup.java launch/org.eclipse.cdt.launch/src/org/eclipse/cdt/launch/internal/ui/CoreFilePrompter.java launch/org.eclipse.cdt.launch/src/org/eclipse/cdt/launch/internal/ui/LaunchImages.java launch/org.eclipse.cdt.launch/src/org/eclipse/cdt/launch/internal/ui/LaunchMessages.java launch/org.eclipse.cdt.launch/src/org/eclipse/cdt/launch/internal/ui/LaunchMessages.properties launch/org.eclipse.cdt.launch/src/org/eclipse/cdt/launch/internal/ui/LaunchUIPlugin.java launch/org.eclipse.cdt.launch/src/org/eclipse/cdt/launch/internal/ui/LocalAttachLaunchConfigurationTabGroup.java launch/org.eclipse.cdt.launch/src/org/eclipse/cdt/launch/internal/ui/LocalRunLaunchConfigurationTabGroup.java launch/org.eclipse.cdt.launch/src/org/eclipse/cdt/launch/internal/ui/MigratingCEnvironmentTab.java launch/org.eclipse.cdt.launch/src/org/eclipse/cdt/launch/internal/ui/PixelConverter.java launch/org.eclipse.cdt.launch/src/org/eclipse/cdt/launch/internal/ui/ProcessPrompter.java launch/org.eclipse.cdt.launch/src/org/eclipse/cdt/launch/internal/ui/WorkingDirectoryBlock.java launch/org.eclipse.cdt.launch/src/org/eclipse/cdt/launch/ui/CArgumentsTab.java launch/org.eclipse.cdt.launch/src/org/eclipse/cdt/launch/ui/CDebuggerTab.java launch/org.eclipse.cdt.launch/src/org/eclipse/cdt/launch/ui/CEnvironmentTab.java launch/org.eclipse.cdt.launch/src/org/eclipse/cdt/launch/ui/CLaunchConfigurationTab.java launch/org.eclipse.cdt.launch/src/org/eclipse/cdt/launch/ui/CMainAttachTab.java launch/org.eclipse.cdt.launch/src/org/eclipse/cdt/launch/ui/CMainTab.java launch/org.eclipse.cdt.launch/src/org/eclipse/cdt/launch/ui/CoreFileDebuggerTab.java launch/org.eclipse.cdt.launch/src/org/eclipse/cdt/launch/ui/ICDTLaunchHelpContextIds.java releng/org.eclipse.cdt-feature/.project releng/org.eclipse.cdt-feature/build.properties releng/org.eclipse.cdt-feature/eclipse_update_120.jpg releng/org.eclipse.cdt-feature/epl-v10.html releng/org.eclipse.cdt-feature/feature.properties releng/org.eclipse.cdt-feature/feature.xml releng/org.eclipse.cdt-feature/license.html releng/org.eclipse.cdt-feature/rootfiles/epl-v10.html releng/org.eclipse.cdt-feature/rootfiles/notice.html releng/org.eclipse.cdt-feature/sourceTemplateFeature/eclipse_update_120.jpg releng/org.eclipse.cdt-feature/sourceTemplateFeature/epl-v10.html releng/org.eclipse.cdt-feature/sourceTemplateFeature/feature.properties releng/org.eclipse.cdt-feature/sourceTemplateFeature/license.html releng/org.eclipse.cdt-feature/sourceTemplatePlugin/about.html releng/org.eclipse.cdt-feature/sourceTemplatePlugin/about.ini releng/org.eclipse.cdt-feature/sourceTemplatePlugin/about.mappings releng/org.eclipse.cdt-feature/sourceTemplatePlugin/about.properties releng/org.eclipse.cdt-feature/sourceTemplatePlugin/build.properties releng/org.eclipse.cdt-feature/sourceTemplatePlugin/eclipse32.gif releng/org.eclipse.cdt-feature/sourceTemplatePlugin/plugin.properties releng/org.eclipse.cdt.releng/.cvsignore releng/org.eclipse.cdt.releng/.project releng/org.eclipse.cdt.releng/JUNIT.XSL releng/org.eclipse.cdt.releng/build.sh releng/org.eclipse.cdt.releng/build.xml releng/org.eclipse.cdt.releng/buildindex.html releng/org.eclipse.cdt.releng/maps/cdt.map releng/org.eclipse.cdt.releng/message.in releng/org.eclipse.cdt.releng/myscp releng/org.eclipse.cdt.releng/platform/.cvsignore releng/org.eclipse.cdt.releng/platform/build.properties releng/org.eclipse.cdt.releng/platform/customTargets.xml releng/org.eclipse.cdt.releng/sdk/build.properties releng/org.eclipse.cdt.releng/sdk/customTargets.xml releng/org.eclipse.cdt.releng/testing/build.properties releng/org.eclipse.cdt.releng/testing/customTargets.xml releng/org.eclipse.cdt.releng/windows/build.properties releng/org.eclipse.cdt.releng/windows/customTargets.xml releng/org.eclipse.cdt.releng/xlc/build.properties releng/org.eclipse.cdt.releng/xlc/customTargets.xml releng/org.eclipse.cdt.sdk-feature/.cvsignore releng/org.eclipse.cdt.sdk-feature/.project releng/org.eclipse.cdt.sdk-feature/build.properties releng/org.eclipse.cdt.sdk-feature/eclipse_update_120.jpg releng/org.eclipse.cdt.sdk-feature/epl-v10.html releng/org.eclipse.cdt.sdk-feature/feature.properties releng/org.eclipse.cdt.sdk-feature/feature.xml releng/org.eclipse.cdt.sdk-feature/license.html releng/org.eclipse.cdt.sdk/.project releng/org.eclipse.cdt.sdk/META-INF/MANIFEST.MF releng/org.eclipse.cdt.sdk/about.html releng/org.eclipse.cdt.sdk/about.ini releng/org.eclipse.cdt.sdk/about.mappings releng/org.eclipse.cdt.sdk/about.properties releng/org.eclipse.cdt.sdk/build.properties releng/org.eclipse.cdt.sdk/eclipse32.gif releng/org.eclipse.cdt.sdk/epl-v10.html releng/org.eclipse.cdt.sdk/notice.html releng/org.eclipse.cdt.sdk/plugin.properties releng/org.eclipse.cdt.sdk/plugin.xml releng/org.eclipse.cdt.sdk/welcome.xml releng/org.eclipse.cdt.testing-feature/.project releng/org.eclipse.cdt.testing-feature/build.properties releng/org.eclipse.cdt.testing-feature/eclipse_update_120.jpg releng/org.eclipse.cdt.testing-feature/epl-v10.html releng/org.eclipse.cdt.testing-feature/feature.properties releng/org.eclipse.cdt.testing-feature/feature.xml releng/org.eclipse.cdt.testing-feature/license.html releng/org.eclipse.cdt.testing/.project releng/org.eclipse.cdt.testing/META-INF/MANIFEST.MF releng/org.eclipse.cdt.testing/about.html releng/org.eclipse.cdt.testing/about.ini releng/org.eclipse.cdt.testing/about.mappings releng/org.eclipse.cdt.testing/about.properties releng/org.eclipse.cdt.testing/build.properties releng/org.eclipse.cdt.testing/eclipse32.gif releng/org.eclipse.cdt.testing/epl-v10.html releng/org.eclipse.cdt.testing/notice.html releng/org.eclipse.cdt.testing/plugin.properties releng/org.eclipse.cdt.testing/plugin.xml releng/org.eclipse.cdt.testing/test.xml releng/org.eclipse.cdt/.eclipseproduct releng/org.eclipse.cdt/.project releng/org.eclipse.cdt/META-INF/MANIFEST.MF releng/org.eclipse.cdt/about.html releng/org.eclipse.cdt/about.ini releng/org.eclipse.cdt/about.mappings releng/org.eclipse.cdt/about.properties releng/org.eclipse.cdt/build.properties releng/org.eclipse.cdt/cheatsheets/HelloWorld.xml releng/org.eclipse.cdt/css/graphics/obj_48/capp_obj.gif releng/org.eclipse.cdt/css/graphics/obj_48/capphov_obj.gif releng/org.eclipse.cdt/css/graphics/obj_48/cdtdev_obj.gif releng/org.eclipse.cdt/css/graphics/obj_48/cdtdevhov_obj.gif releng/org.eclipse.cdt/css/overview.css releng/org.eclipse.cdt/css/swt.properties releng/org.eclipse.cdt/eclipse32.gif releng/org.eclipse.cdt/intro/overviewExtensionContent.xml releng/org.eclipse.cdt/intro/samplesExtensionContent.xml releng/org.eclipse.cdt/intro/tutorialsExtensionContent.xml releng/org.eclipse.cdt/intro/whatsNewExtensionContent.xml releng/org.eclipse.cdt/notice.html releng/org.eclipse.cdt/plugin.properties releng/org.eclipse.cdt/plugin.xml xlc/org.eclipse.cdt.errorparsers.xlc.tests/.classpath xlc/org.eclipse.cdt.errorparsers.xlc.tests/.cvsignore xlc/org.eclipse.cdt.errorparsers.xlc.tests/.project xlc/org.eclipse.cdt.errorparsers.xlc.tests/META-INF/MANIFEST.MF xlc/org.eclipse.cdt.errorparsers.xlc.tests/about.html xlc/org.eclipse.cdt.errorparsers.xlc.tests/build.properties xlc/org.eclipse.cdt.errorparsers.xlc.tests/plugin.xml xlc/org.eclipse.cdt.errorparsers.xlc.tests/src/org/eclipse/cdt/errorparsers/xlc/tests/AllXlcErrorParserTests.java xlc/org.eclipse.cdt.errorparsers.xlc.tests/src/org/eclipse/cdt/errorparsers/xlc/tests/TestConditional.java xlc/org.eclipse.cdt.errorparsers.xlc.tests/src/org/eclipse/cdt/errorparsers/xlc/tests/TestFloatingPoint.java xlc/org.eclipse.cdt.errorparsers.xlc.tests/src/org/eclipse/cdt/errorparsers/xlc/tests/TestFuncArg.java xlc/org.eclipse.cdt.errorparsers.xlc.tests/src/org/eclipse/cdt/errorparsers/xlc/tests/TestMissingArg.java xlc/org.eclipse.cdt.errorparsers.xlc.tests/src/org/eclipse/cdt/errorparsers/xlc/tests/TestNoFuncProto.java xlc/org.eclipse.cdt.errorparsers.xlc.tests/src/org/eclipse/cdt/errorparsers/xlc/tests/TestOperModi.java xlc/org.eclipse.cdt.errorparsers.xlc.tests/src/org/eclipse/cdt/errorparsers/xlc/tests/TestSyntaxError.java xlc/org.eclipse.cdt.errorparsers.xlc.tests/src/org/eclipse/cdt/errorparsers/xlc/tests/TestUndeclIdent.java xlc/org.eclipse.cdt.errorparsers.xlc.tests/src/org/eclipse/cdt/errorparsers/xlc/tests/TestsPlugin.java xlc/org.eclipse.cdt.errorparsers.xlc/.classpath xlc/org.eclipse.cdt.errorparsers.xlc/.cvsignore xlc/org.eclipse.cdt.errorparsers.xlc/.project xlc/org.eclipse.cdt.errorparsers.xlc/META-INF/MANIFEST.MF xlc/org.eclipse.cdt.errorparsers.xlc/about.html xlc/org.eclipse.cdt.errorparsers.xlc/build.properties xlc/org.eclipse.cdt.errorparsers.xlc/plugin.properties xlc/org.eclipse.cdt.errorparsers.xlc/plugin.xml xlc/org.eclipse.cdt.errorparsers.xlc/src/org/eclipse/cdt/errorparsers/xlc/Activator.java xlc/org.eclipse.cdt.errorparsers.xlc/src/org/eclipse/cdt/errorparsers/xlc/XlcErrorParser.java xlc/org.eclipse.cdt.xlc.feature/.project xlc/org.eclipse.cdt.xlc.feature/build.properties xlc/org.eclipse.cdt.xlc.feature/eclipse_update_120.jpg xlc/org.eclipse.cdt.xlc.feature/epl-v10.html xlc/org.eclipse.cdt.xlc.feature/feature.properties xlc/org.eclipse.cdt.xlc.feature/feature.xml xlc/org.eclipse.cdt.xlc.feature/license.html xlc/org.eclipse.cdt.xlc.feature/rootfiles/epl-v10.html xlc/org.eclipse.cdt.xlc.feature/rootfiles/notice.html
Diffstat (limited to 'debug')
-rw-r--r--debug/org.eclipse.cdt.debug.core.tests/.project11
-rw-r--r--debug/org.eclipse.cdt.debug.core.tests/about.html24
-rw-r--r--debug/org.eclipse.cdt.debug.core/.classpath8
-rw-r--r--debug/org.eclipse.cdt.debug.core/.cvsignore2
-rw-r--r--debug/org.eclipse.cdt.debug.core/.project28
-rw-r--r--debug/org.eclipse.cdt.debug.core/ChangeLog1838
-rw-r--r--debug/org.eclipse.cdt.debug.core/ChangeLog-20031689
-rw-r--r--debug/org.eclipse.cdt.debug.core/META-INF/MANIFEST.MF24
-rw-r--r--debug/org.eclipse.cdt.debug.core/NEWS5
-rw-r--r--debug/org.eclipse.cdt.debug.core/about.html24
-rw-r--r--debug/org.eclipse.cdt.debug.core/build.properties24
-rw-r--r--debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/CDIException.java56
-rw-r--r--debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/ICDIAddressLocation.java30
-rw-r--r--debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/ICDIBreakpointHit.java30
-rw-r--r--debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/ICDICondition.java43
-rw-r--r--debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/ICDIEndSteppingRange.java21
-rw-r--r--debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/ICDIErrorInfo.java31
-rw-r--r--debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/ICDIEventManager.java43
-rw-r--r--debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/ICDIExitInfo.java30
-rw-r--r--debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/ICDIFileLocation.java24
-rw-r--r--debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/ICDIFormat.java24
-rw-r--r--debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/ICDIFunctionFinished.java35
-rw-r--r--debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/ICDIFunctionLocation.java29
-rw-r--r--debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/ICDILineLocation.java28
-rw-r--r--debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/ICDILocation.java25
-rw-r--r--debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/ICDILocator.java19
-rw-r--r--debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/ICDISession.java75
-rw-r--r--debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/ICDISessionConfiguration.java27
-rw-r--r--debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/ICDISessionObject.java27
-rw-r--r--debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/ICDISharedLibraryEvent.java23
-rw-r--r--debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/ICDISignalExitInfo.java31
-rw-r--r--debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/ICDISignalReceived.java29
-rw-r--r--debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/ICDITraceManager.java161
-rw-r--r--debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/ICDITraceSnapshot.java52
-rw-r--r--debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/ICDIWatchpointScope.java29
-rw-r--r--debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/ICDIWatchpointTrigger.java43
-rw-r--r--debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/event/ICDIBreakpointMovedEvent.java26
-rw-r--r--debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/event/ICDIBreakpointProblemEvent.java57
-rw-r--r--debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/event/ICDIChangedEvent.java21
-rw-r--r--debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/event/ICDICreatedEvent.java26
-rw-r--r--debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/event/ICDIDestroyedEvent.java25
-rw-r--r--debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/event/ICDIDisconnectedEvent.java25
-rw-r--r--debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/event/ICDIEvent.java29
-rw-r--r--debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/event/ICDIEventListener.java28
-rw-r--r--debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/event/ICDIExitedEvent.java33
-rw-r--r--debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/event/ICDIMemoryChangedEvent.java25
-rw-r--r--debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/event/ICDIRestartedEvent.java25
-rw-r--r--debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/event/ICDIResumedEvent.java38
-rw-r--r--debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/event/ICDISuspendedEvent.java43
-rw-r--r--debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/ICDIAddressBreakpoint.java21
-rw-r--r--debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/ICDIAddressFactoryManagement.java24
-rw-r--r--debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/ICDIArgument.java21
-rw-r--r--debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/ICDIArgumentDescriptor.java17
-rw-r--r--debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/ICDIBreakpoint.java86
-rw-r--r--debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/ICDIBreakpointManagement.java111
-rw-r--r--debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/ICDIBreakpointManagement2.java91
-rw-r--r--debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/ICDIExceptionpoint.java22
-rw-r--r--debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/ICDIExecuteResume.java52
-rw-r--r--debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/ICDIExecuteStep.java72
-rw-r--r--debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/ICDIExecuteStepReturn.java39
-rw-r--r--debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/ICDIExpression.java58
-rw-r--r--debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/ICDIExpressionManagement.java48
-rw-r--r--debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/ICDIFunctionBreakpoint.java21
-rw-r--r--debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/ICDIGlobalVariable.java19
-rw-r--r--debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/ICDIGlobalVariableDescriptor.java19
-rw-r--r--debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/ICDIInstruction.java57
-rw-r--r--debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/ICDILineBreakpoint.java20
-rw-r--r--debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/ICDILocalVariable.java19
-rw-r--r--debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/ICDILocalVariableDescriptor.java28
-rw-r--r--debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/ICDILocationBreakpoint.java28
-rw-r--r--debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/ICDIMemoryBlock.java125
-rw-r--r--debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/ICDIMemoryBlockManagement.java64
-rw-r--r--debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/ICDIMemoryBlockManagement2.java36
-rw-r--r--debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/ICDIMemorySpaceManagement.java56
-rw-r--r--debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/ICDIMixedInstruction.java34
-rw-r--r--debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/ICDIObject.java27
-rw-r--r--debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/ICDIRegister.java69
-rw-r--r--debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/ICDIRegisterDescriptor.java21
-rw-r--r--debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/ICDIRegisterGroup.java47
-rw-r--r--debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/ICDIRuntimeOptions.java45
-rw-r--r--debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/ICDISharedLibrary.java59
-rw-r--r--debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/ICDISharedLibraryManagement.java29
-rw-r--r--debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/ICDISignal.java69
-rw-r--r--debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/ICDISignalManagement.java28
-rw-r--r--debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/ICDISourceManagement.java93
-rw-r--r--debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/ICDIStackFrame.java93
-rw-r--r--debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/ICDISuspend.java35
-rw-r--r--debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/ICDITarget.java264
-rw-r--r--debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/ICDITarget2.java24
-rw-r--r--debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/ICDITargetConfiguration.java118
-rw-r--r--debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/ICDITargetConfiguration2.java59
-rw-r--r--debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/ICDITargetConfiguration3.java45
-rw-r--r--debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/ICDIThread.java172
-rw-r--r--debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/ICDIThreadGroup.java39
-rw-r--r--debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/ICDIThreadStorage.java19
-rw-r--r--debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/ICDIThreadStorageDescriptor.java28
-rw-r--r--debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/ICDITracepoint.java103
-rw-r--r--debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/ICDIValue.java69
-rw-r--r--debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/ICDIVariable.java68
-rw-r--r--debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/ICDIVariableDescriptor.java89
-rw-r--r--debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/ICDIWatchpoint.java47
-rw-r--r--debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/type/ICDIAggregateType.java24
-rw-r--r--debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/type/ICDIAggregateValue.java26
-rw-r--r--debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/type/ICDIArrayType.java24
-rw-r--r--debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/type/ICDIArrayValue.java25
-rw-r--r--debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/type/ICDIBoolType.java18
-rw-r--r--debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/type/ICDIBoolValue.java18
-rw-r--r--debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/type/ICDICharType.java23
-rw-r--r--debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/type/ICDICharValue.java23
-rw-r--r--debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/type/ICDIDerivedType.java25
-rw-r--r--debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/type/ICDIDerivedValue.java26
-rw-r--r--debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/type/ICDIDoubleType.java23
-rw-r--r--debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/type/ICDIDoubleValue.java23
-rw-r--r--debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/type/ICDIEnumType.java18
-rw-r--r--debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/type/ICDIEnumValue.java18
-rw-r--r--debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/type/ICDIFloatType.java23
-rw-r--r--debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/type/ICDIFloatValue.java23
-rw-r--r--debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/type/ICDIFloatingPointType.java28
-rw-r--r--debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/type/ICDIFloatingPointValue.java28
-rw-r--r--debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/type/ICDIFunctionType.java24
-rw-r--r--debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/type/ICDIFunctionValue.java24
-rw-r--r--debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/type/ICDIIntType.java23
-rw-r--r--debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/type/ICDIIntValue.java23
-rw-r--r--debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/type/ICDIIntegralType.java24
-rw-r--r--debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/type/ICDIIntegralValue.java38
-rw-r--r--debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/type/ICDILongLongType.java23
-rw-r--r--debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/type/ICDILongLongValue.java23
-rw-r--r--debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/type/ICDILongType.java23
-rw-r--r--debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/type/ICDILongValue.java23
-rw-r--r--debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/type/ICDIPointerType.java23
-rw-r--r--debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/type/ICDIPointerValue.java28
-rw-r--r--debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/type/ICDIReferenceType.java19
-rw-r--r--debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/type/ICDIReferenceValue.java26
-rw-r--r--debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/type/ICDIShortType.java23
-rw-r--r--debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/type/ICDIShortValue.java23
-rw-r--r--debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/type/ICDIStructType.java28
-rw-r--r--debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/type/ICDIStructValue.java23
-rw-r--r--debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/type/ICDIType.java38
-rw-r--r--debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/type/ICDIVoidType.java24
-rw-r--r--debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/type/ICDIWCharType.java18
-rw-r--r--debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/type/ICDIWCharValue.java17
-rw-r--r--debug/org.eclipse.cdt.debug.core/plugin.properties31
-rw-r--r--debug/org.eclipse.cdt.debug.core/plugin.xml183
-rw-r--r--debug/org.eclipse.cdt.debug.core/schema/CDebugger.exsd139
-rw-r--r--debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/core/CDIDebugModel.java548
-rw-r--r--debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/core/CDebugCorePlugin.java396
-rw-r--r--debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/core/CDebugUtils.java418
-rw-r--r--debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/core/DebugCoreMessages.java33
-rw-r--r--debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/core/DebugCoreMessages.properties18
-rw-r--r--debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/core/ICBreakpointListener.java68
-rw-r--r--debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/core/ICDIDebugger.java29
-rw-r--r--debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/core/ICDIDebugger2.java31
-rw-r--r--debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/core/ICDTLaunchConfigurationConstants.java278
-rw-r--r--debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/core/ICDebugConfiguration.java34
-rw-r--r--debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/core/ICDebugConstants.java93
-rw-r--r--debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/core/ICDebugger.java27
-rw-r--r--debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/core/ICGlobalVariableManager.java48
-rw-r--r--debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/core/model/CDebugElementState.java41
-rw-r--r--debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/core/model/CVariableFormat.java50
-rw-r--r--debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/core/model/IAsmInstruction.java62
-rw-r--r--debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/core/model/IAsmSourceLine.java31
-rw-r--r--debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/core/model/ICAddressBreakpoint.java18
-rw-r--r--debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/core/model/ICBreakpoint.java266
-rw-r--r--debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/core/model/ICDebugElement.java34
-rw-r--r--debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/core/model/ICDebugElementStatus.java64
-rw-r--r--debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/core/model/ICDebugTarget.java122
-rw-r--r--debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/core/model/ICDebugTargetGroup.java20
-rw-r--r--debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/core/model/ICFunctionBreakpoint.java19
-rw-r--r--debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/core/model/ICGlobalVariable.java24
-rw-r--r--debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/core/model/ICLineBreakpoint.java80
-rw-r--r--debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/core/model/ICModule.java138
-rw-r--r--debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/core/model/ICSignal.java83
-rw-r--r--debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/core/model/ICStackFrame.java86
-rw-r--r--debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/core/model/ICThread.java19
-rw-r--r--debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/core/model/ICType.java89
-rw-r--r--debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/core/model/ICValue.java24
-rw-r--r--debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/core/model/ICVariable.java44
-rw-r--r--debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/core/model/ICWatchpoint.java61
-rw-r--r--debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/core/model/ICastToArray.java36
-rw-r--r--debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/core/model/ICastToType.java56
-rw-r--r--debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/core/model/IDebuggerProcessSupport.java25
-rw-r--r--debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/core/model/IDisassembly.java36
-rw-r--r--debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/core/model/IDisassemblyBlock.java63
-rw-r--r--debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/core/model/IDummyStackFrame.java18
-rw-r--r--debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/core/model/IEnableDisableTarget.java42
-rw-r--r--debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/core/model/IExecFileInfo.java26
-rw-r--r--debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/core/model/IFormatSupport.java41
-rw-r--r--debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/core/model/IGlobalVariableDescriptor.java34
-rw-r--r--debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/core/model/IJumpToAddress.java34
-rw-r--r--debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/core/model/IJumpToLine.java49
-rw-r--r--debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/core/model/IModuleRetrieval.java43
-rw-r--r--debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/core/model/IPersistableRegisterGroup.java53
-rw-r--r--debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/core/model/IRegisterDescriptor.java33
-rw-r--r--debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/core/model/IRestart.java35
-rw-r--r--debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/core/model/IResumeWithoutSignal.java38
-rw-r--r--debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/core/model/IRunToAddress.java34
-rw-r--r--debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/core/model/IRunToLine.java48
-rw-r--r--debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/core/model/ISteppingModeTarget.java40
-rw-r--r--debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/core/model/ITargetProperties.java37
-rw-r--r--debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/core/sourcelookup/AbsolutePathSourceContainer.java98
-rw-r--r--debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/core/sourcelookup/ICSourceLocation.java77
-rw-r--r--debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/core/sourcelookup/ICSourceLocator.java93
-rw-r--r--debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/core/sourcelookup/IDirectorySourceLocation.java28
-rw-r--r--debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/core/sourcelookup/IProjectSourceLocation.java26
-rw-r--r--debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/core/sourcelookup/ISourceLookupChangeListener.java24
-rw-r--r--debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/core/sourcelookup/MappingSourceContainer.java203
-rw-r--r--debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/core/sourcelookup/SourceLookupFactory.java47
-rw-r--r--debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/core/sourcelookup/SourceLookupMessages.java34
-rw-r--r--debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/core/sourcelookup/SourceLookupMessages.properties13
-rw-r--r--debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/CBreakpointManager.java1124
-rw-r--r--debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/CBreakpointNotifier.java81
-rw-r--r--debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/CDebugAdapter.java136
-rw-r--r--debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/CDebugCorePreferenceInitializer.java40
-rw-r--r--debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/CGlobalVariableManager.java286
-rw-r--r--debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/CMemoryBlockRetrievalExtension.java406
-rw-r--r--debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/CRegisterManager.java348
-rw-r--r--debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/CSignalManager.java131
-rw-r--r--debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/DebugConfiguration.java165
-rw-r--r--debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/ICDebugInternalConstants.java31
-rw-r--r--debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/InternalDebugCoreMessages.java33
-rw-r--r--debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/InternalDebugCoreMessages.properties22
-rw-r--r--debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/ListenerList.java136
-rw-r--r--debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/SessionManager.java80
-rw-r--r--debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/breakpoints/AbstractLineBreakpoint.java105
-rw-r--r--debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/breakpoints/BreakpointMessages.java33
-rw-r--r--debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/breakpoints/BreakpointMessages.properties36
-rw-r--r--debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/breakpoints/BreakpointProblems.java181
-rw-r--r--debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/breakpoints/CAddressBreakpoint.java56
-rw-r--r--debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/breakpoints/CBreakpoint.java368
-rw-r--r--debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/breakpoints/CFunctionBreakpoint.java54
-rw-r--r--debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/breakpoints/CLineBreakpoint.java54
-rw-r--r--debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/breakpoints/CWatchpoint.java103
-rw-r--r--debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/model/AbstractCValue.java65
-rw-r--r--debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/model/AbstractCVariable.java72
-rw-r--r--debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/model/AsmInstruction.java76
-rw-r--r--debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/model/AsmSourceLine.java65
-rw-r--r--debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/model/CCoreFileDebugTarget.java48
-rw-r--r--debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/model/CDebugElement.java377
-rw-r--r--debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/model/CDebugTarget.java1844
-rw-r--r--debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/model/CDummyStackFrame.java271
-rw-r--r--debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/model/CExpression.java212
-rw-r--r--debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/model/CFloatingPointValue.java44
-rw-r--r--debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/model/CGlobalValue.java42
-rw-r--r--debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/model/CGlobalVariable.java383
-rw-r--r--debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/model/CIndexedValue.java259
-rw-r--r--debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/model/CLocalVariable.java329
-rw-r--r--debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/model/CMemoryBlockExtension.java522
-rw-r--r--debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/model/CModule.java228
-rw-r--r--debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/model/CModuleManager.java165
-rw-r--r--debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/model/CRegister.java415
-rw-r--r--debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/model/CRegisterDescriptor.java64
-rw-r--r--debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/model/CRegisterGroup.java268
-rw-r--r--debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/model/CSignal.java139
-rw-r--r--debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/model/CStackFrame.java916
-rw-r--r--debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/model/CThread.java951
-rw-r--r--debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/model/CType.java138
-rw-r--r--debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/model/CValue.java545
-rw-r--r--debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/model/CValueFactory.java105
-rw-r--r--debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/model/CVariable.java609
-rw-r--r--debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/model/CVariableFactory.java77
-rw-r--r--debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/model/CoreModelMessages.java33
-rw-r--r--debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/model/CoreModelMessages.properties42
-rw-r--r--debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/model/Disassembly.java151
-rw-r--r--debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/model/DisassemblyBlock.java228
-rw-r--r--debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/sourcelookup/AbsolutePathSourceContainerType.java29
-rw-r--r--debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/sourcelookup/CDirectorySourceContainerType.java65
-rw-r--r--debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/sourcelookup/CDirectorySourceLocation.java535
-rw-r--r--debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/sourcelookup/CProjectSourceLocation.java423
-rw-r--r--debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/sourcelookup/CSourceLocator.java646
-rw-r--r--debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/sourcelookup/CSourceLookupDirector.java205
-rw-r--r--debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/sourcelookup/CSourceLookupParticipant.java109
-rw-r--r--debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/sourcelookup/CSourceManager.java235
-rw-r--r--debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/sourcelookup/CSourceNotFoundElement.java64
-rw-r--r--debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/sourcelookup/CSourcePathComputerDelegate.java62
-rw-r--r--debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/sourcelookup/CommonSourceLookupDirector.java36
-rw-r--r--debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/sourcelookup/InternalSourceLookupMessages.java33
-rw-r--r--debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/sourcelookup/InternalSourceLookupMessages.properties33
-rw-r--r--debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/sourcelookup/MapEntrySourceContainer.java129
-rw-r--r--debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/sourcelookup/MapEntrySourceContainerType.java69
-rw-r--r--debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/sourcelookup/MappingSourceContainerType.java93
-rw-r--r--debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/sourcelookup/SourceUtils.java189
-rw-r--r--debug/org.eclipse.cdt.debug.mi.core/.classpath9
-rw-r--r--debug/org.eclipse.cdt.debug.mi.core/.cvsignore1
-rw-r--r--debug/org.eclipse.cdt.debug.mi.core/.options1
-rw-r--r--debug/org.eclipse.cdt.debug.mi.core/.project28
-rw-r--r--debug/org.eclipse.cdt.debug.mi.core/ChangeLog1219
-rw-r--r--debug/org.eclipse.cdt.debug.mi.core/ChangeLog-20032151
-rw-r--r--debug/org.eclipse.cdt.debug.mi.core/META-INF/MANIFEST.MF26
-rw-r--r--debug/org.eclipse.cdt.debug.mi.core/about.html24
-rw-r--r--debug/org.eclipse.cdt.debug.mi.core/build.properties26
-rw-r--r--debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/BreakpointHit.java42
-rw-r--r--debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/BreakpointManager.java1014
-rw-r--r--debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/CdiResources.java48
-rw-r--r--debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/CdiResources.properties33
-rw-r--r--debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/Condition.java71
-rw-r--r--debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/EndSteppingRange.java22
-rw-r--r--debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/ErrorInfo.java42
-rw-r--r--debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/EventManager.java537
-rw-r--r--debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/ExitInfo.java34
-rw-r--r--debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/ExpressionManager.java269
-rw-r--r--debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/FileLocation.java22
-rw-r--r--debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/Format.java48
-rw-r--r--debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/FunctionFinished.java71
-rw-r--r--debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/LineLocation.java22
-rw-r--r--debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/Location.java155
-rw-r--r--debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/Locator.java71
-rw-r--r--debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/MI2CDIException.java30
-rw-r--r--debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/Manager.java66
-rw-r--r--debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/MemoryManager.java194
-rw-r--r--debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/ProcessManager.java90
-rw-r--r--debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/RegisterManager.java426
-rw-r--r--debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/Session.java227
-rw-r--r--debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/SessionConfiguration.java39
-rw-r--r--debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/SessionObject.java33
-rw-r--r--debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/SharedLibraryEvent.java22
-rw-r--r--debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/SharedLibraryManager.java415
-rw-r--r--debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/SignalExitInfo.java41
-rw-r--r--debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/SignalManager.java216
-rw-r--r--debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/SignalReceived.java36
-rw-r--r--debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/SourceManager.java498
-rw-r--r--debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/ThreadManager.java112
-rw-r--r--debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/VariableManager.java743
-rw-r--r--debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/WatchpointScope.java42
-rw-r--r--debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/WatchpointTrigger.java56
-rw-r--r--debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/event/ChangedEvent.java135
-rw-r--r--debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/event/CreatedEvent.java134
-rw-r--r--debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/event/DestroyedEvent.java111
-rw-r--r--debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/event/DisconnectedEvent.java38
-rw-r--r--debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/event/ExitedEvent.java67
-rw-r--r--debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/event/MemoryChangedEvent.java59
-rw-r--r--debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/event/ResumedEvent.java81
-rw-r--r--debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/event/SuspendedEvent.java84
-rw-r--r--debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/model/AddressBreakpoint.java26
-rw-r--r--debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/model/AddressLocation.java25
-rw-r--r--debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/model/Argument.java37
-rw-r--r--debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/model/ArgumentDescriptor.java25
-rw-r--r--debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/model/Breakpoint.java128
-rw-r--r--debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/model/CObject.java33
-rw-r--r--debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/model/CoreFileConfiguration.java94
-rw-r--r--debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/model/Exceptionpoint.java54
-rw-r--r--debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/model/Expression.java127
-rw-r--r--debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/model/FunctionBreakpoint.java26
-rw-r--r--debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/model/FunctionLocation.java23
-rw-r--r--debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/model/GlobalVariable.java52
-rw-r--r--debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/model/GlobalVariableDescriptor.java35
-rw-r--r--debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/model/Instruction.java70
-rw-r--r--debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/model/LineBreakpoint.java24
-rw-r--r--debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/model/LocalVariable.java44
-rw-r--r--debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/model/LocalVariableDescriptor.java34
-rw-r--r--debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/model/LocationBreakpoint.java87
-rw-r--r--debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/model/MemoryBlock.java368
-rw-r--r--debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/model/MixedInstruction.java55
-rw-r--r--debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/model/Register.java110
-rw-r--r--debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/model/RegisterDescriptor.java37
-rw-r--r--debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/model/RegisterGroup.java59
-rw-r--r--debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/model/RuntimeOptions.java112
-rw-r--r--debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/model/SharedLibrary.java80
-rw-r--r--debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/model/Signal.java80
-rw-r--r--debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/model/StackFrame.java265
-rw-r--r--debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/model/Target.java1216
-rw-r--r--debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/model/TargetConfiguration.java159
-rw-r--r--debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/model/Thread.java561
-rw-r--r--debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/model/ThreadStorage.java55
-rw-r--r--debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/model/ThreadStorageDescriptor.java36
-rw-r--r--debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/model/Value.java119
-rw-r--r--debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/model/Variable.java529
-rw-r--r--debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/model/VariableDescriptor.java415
-rw-r--r--debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/model/Watchpoint.java66
-rw-r--r--debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/model/type/AggregateType.java24
-rw-r--r--debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/model/type/AggregateValue.java24
-rw-r--r--debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/model/type/ArrayType.java64
-rw-r--r--debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/model/type/ArrayValue.java81
-rw-r--r--debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/model/type/BoolType.java32
-rw-r--r--debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/model/type/BoolValue.java28
-rw-r--r--debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/model/type/CharType.java31
-rw-r--r--debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/model/type/CharValue.java36
-rw-r--r--debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/model/type/DerivedType.java53
-rw-r--r--debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/model/type/DerivedValue.java25
-rw-r--r--debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/model/type/DoubleType.java31
-rw-r--r--debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/model/type/DoubleValue.java27
-rw-r--r--debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/model/type/EnumType.java31
-rw-r--r--debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/model/type/EnumValue.java28
-rw-r--r--debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/model/type/FloatType.java31
-rw-r--r--debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/model/type/FloatValue.java27
-rw-r--r--debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/model/type/FloatingPointType.java53
-rw-r--r--debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/model/type/FloatingPointValue.java83
-rw-r--r--debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/model/type/FunctionType.java46
-rw-r--r--debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/model/type/FunctionValue.java27
-rw-r--r--debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/model/type/IncompleteType.java27
-rw-r--r--debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/model/type/IntType.java32
-rw-r--r--debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/model/type/IntValue.java28
-rw-r--r--debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/model/type/IntegralType.java35
-rw-r--r--debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/model/type/IntegralValue.java92
-rw-r--r--debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/model/type/LongLongType.java31
-rw-r--r--debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/model/type/LongLongValue.java28
-rw-r--r--debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/model/type/LongType.java31
-rw-r--r--debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/model/type/LongValue.java28
-rw-r--r--debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/model/type/PointerType.java43
-rw-r--r--debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/model/type/PointerValue.java37
-rw-r--r--debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/model/type/ReferenceType.java46
-rw-r--r--debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/model/type/ReferenceValue.java92
-rw-r--r--debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/model/type/ShortType.java31
-rw-r--r--debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/model/type/ShortValue.java28
-rw-r--r--debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/model/type/StructType.java50
-rw-r--r--debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/model/type/StructValue.java27
-rw-r--r--debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/model/type/Type.java50
-rw-r--r--debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/model/type/VoidType.java27
-rw-r--r--debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/model/type/VoidValue.java28
-rw-r--r--debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/model/type/WCharType.java32
-rw-r--r--debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/model/type/WCharValue.java37
-rw-r--r--debug/org.eclipse.cdt.debug.mi.core/design.txt110
-rw-r--r--debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/CLIProcessor.java222
-rw-r--r--debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/CommandQueue.java62
-rw-r--r--debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/CoreProcess.java74
-rw-r--r--debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/EventThread.java59
-rw-r--r--debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/GDBTypeParser.java580
-rw-r--r--debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/IMITTY.java43
-rw-r--r--debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/MIException.java38
-rw-r--r--debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/MIFormat.java107
-rw-r--r--debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/MIInferior.java359
-rw-r--r--debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/MIProcess.java58
-rw-r--r--debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/MISession.java840
-rw-r--r--debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/Queue.java82
-rw-r--r--debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/RxThread.java542
-rw-r--r--debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/SessionProcess.java120
-rw-r--r--debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/TxThread.java104
-rw-r--r--debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/CLICommand.java47
-rw-r--r--debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/CLIExecAbort.java28
-rw-r--r--debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/CLIHandle.java27
-rw-r--r--debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/CLIInfoProgram.java45
-rw-r--r--debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/CLIInfoSharedLibrary.java45
-rw-r--r--debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/CLIInfoSignals.java49
-rw-r--r--debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/CLIInfoThreads.java45
-rw-r--r--debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/CLIJump.java48
-rw-r--r--debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/CLIPType.java45
-rw-r--r--debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/CLISharedLibrary.java30
-rw-r--r--debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/CLISignal.java49
-rw-r--r--debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/CLITargetAttach.java27
-rw-r--r--debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/CLIWhatis.java45
-rw-r--r--debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/Command.java115
-rw-r--r--debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/CommandFactory.java425
-rw-r--r--debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/MIBreakAfter.java33
-rw-r--r--debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/MIBreakCondition.java41
-rw-r--r--debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/MIBreakDelete.java37
-rw-r--r--debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/MIBreakDisable.java36
-rw-r--r--debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/MIBreakEnable.java35
-rw-r--r--debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/MIBreakInsert.java137
-rw-r--r--debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/MIBreakList.java73
-rw-r--r--debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/MIBreakWatch.java63
-rw-r--r--debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/MICommand.java207
-rw-r--r--debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/MIDataDisassemble.java123
-rw-r--r--debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/MIDataEvaluateExpression.java49
-rw-r--r--debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/MIDataListChangedRegisters.java47
-rw-r--r--debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/MIDataListRegisterNames.java63
-rw-r--r--debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/MIDataListRegisterValues.java94
-rw-r--r--debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/MIDataReadMemory.java153
-rw-r--r--debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/MIDataWriteMemory.java98
-rw-r--r--debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/MIDataWriteRegisterValues.java72
-rw-r--r--debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/MIEnvironmentCD.java42
-rw-r--r--debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/MIEnvironmentDirectory.java33
-rw-r--r--debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/MIEnvironmentPWD.java44
-rw-r--r--debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/MIEnvironmentPath.java26
-rw-r--r--debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/MIExecArguments.java27
-rw-r--r--debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/MIExecContinue.java27
-rw-r--r--debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/MIExecFinish.java28
-rw-r--r--debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/MIExecInterrupt.java31
-rw-r--r--debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/MIExecNext.java31
-rw-r--r--debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/MIExecNextInstruction.java33
-rw-r--r--debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/MIExecReturn.java32
-rw-r--r--debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/MIExecRun.java32
-rw-r--r--debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/MIExecStep.java33
-rw-r--r--debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/MIExecStepInstruction.java36
-rw-r--r--debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/MIExecUntil.java34
-rw-r--r--debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/MIFileExecFile.java30
-rw-r--r--debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/MIFileSymbolFile.java28
-rw-r--r--debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/MIGDBExit.java26
-rw-r--r--debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/MIGDBSet.java26
-rw-r--r--debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/MIGDBSetAutoSolib.java25
-rw-r--r--debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/MIGDBSetBreakpointPending.java25
-rw-r--r--debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/MIGDBSetEnvironment.java52
-rw-r--r--debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/MIGDBSetNewConsole.java9
-rw-r--r--debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/MIGDBSetSolibSearchPath.java37
-rw-r--r--debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/MIGDBSetStopOnSolibEvents.java26
-rw-r--r--debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/MIGDBShow.java46
-rw-r--r--debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/MIGDBShowAddressSize.java39
-rw-r--r--debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/MIGDBShowDirectories.java45
-rw-r--r--debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/MIGDBShowEndian.java41
-rw-r--r--debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/MIGDBShowExitCode.java48
-rw-r--r--debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/MIGDBShowPrompt.java25
-rw-r--r--debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/MIGDBShowSolibSearchPath.java45
-rw-r--r--debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/MIInterpreterExec.java39
-rw-r--r--debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/MIInterpreterExecConsole.java27
-rw-r--r--debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/MIStackInfoDepth.java52
-rw-r--r--debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/MIStackListArguments.java72
-rw-r--r--debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/MIStackListFrames.java78
-rw-r--r--debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/MIStackListLocals.java54
-rw-r--r--debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/MIStackSelectFrame.java29
-rw-r--r--debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/MITargetDetach.java27
-rw-r--r--debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/MITargetDownload.java38
-rw-r--r--debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/MITargetSelect.java39
-rw-r--r--debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/MIThreadListIds.java48
-rw-r--r--debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/MIThreadSelect.java48
-rw-r--r--debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/MIVarAssign.java27
-rw-r--r--debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/MIVarCreate.java77
-rw-r--r--debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/MIVarDelete.java49
-rw-r--r--debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/MIVarEvaluateExpression.java51
-rw-r--r--debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/MIVarInfoExpression.java52
-rw-r--r--debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/MIVarInfoNumChildren.java49
-rw-r--r--debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/MIVarInfoType.java51
-rw-r--r--debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/MIVarListChildren.java50
-rw-r--r--debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/MIVarSetFormat.java57
-rw-r--r--debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/MIVarShowAttributes.java51
-rw-r--r--debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/MIVarShowFormat.java29
-rw-r--r--debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/MIVarUpdate.java53
-rw-r--r--debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/MIVersion.java31
-rw-r--r--debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/RawCommand.java44
-rw-r--r--debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/factories/CommandFactoriesMessages.java33
-rw-r--r--debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/factories/CommandFactoriesMessages.properties11
-rw-r--r--debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/factories/CommandFactoryDescriptor.java136
-rw-r--r--debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/factories/CommandFactoryManager.java85
-rw-r--r--debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/factories/StandardCommandFactory.java33
-rw-r--r--debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/factories/linux/LinuxCLIInfoSharedLibrary.java37
-rw-r--r--debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/factories/linux/LinuxCLIInfoSharedLibraryInfo.java71
-rw-r--r--debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/factories/linux/StandardLinuxCommandFactory.java72
-rw-r--r--debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/factories/macos/MacOSMIEnvironmentCD.java30
-rw-r--r--debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/factories/macos/StandardMacOSCommandFactory.java36
-rw-r--r--debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/factories/win32/CygwinCommandFactory.java37
-rw-r--r--debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/factories/win32/CygwinMIEnvironmentCD.java52
-rw-r--r--debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/factories/win32/CygwinMIEnvironmentDirectory.java99
-rw-r--r--debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/factories/win32/StandardWinCommandFactory.java142
-rw-r--r--debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/factories/win32/WinCLIInfoSharedLibrary.java37
-rw-r--r--debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/factories/win32/WinCLIInfoSharedLibraryInfo.java50
-rw-r--r--debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/factories/win32/WinMIEnvironmentCD.java50
-rw-r--r--debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/event/MIBreakpointChangedEvent.java37
-rw-r--r--debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/event/MIBreakpointCreatedEvent.java37
-rw-r--r--debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/event/MIBreakpointDeletedEvent.java37
-rw-r--r--debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/event/MIBreakpointHitEvent.java94
-rw-r--r--debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/event/MIChangedEvent.java25
-rw-r--r--debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/event/MICreatedEvent.java25
-rw-r--r--debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/event/MIDestroyedEvent.java25
-rw-r--r--debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/event/MIDetachedEvent.java30
-rw-r--r--debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/event/MIErrorEvent.java80
-rw-r--r--debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/event/MIEvent.java44
-rw-r--r--debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/event/MIFunctionFinishedEvent.java106
-rw-r--r--debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/event/MIGDBExitEvent.java25
-rw-r--r--debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/event/MIInferiorCreatedEvent.java29
-rw-r--r--debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/event/MIInferiorExitEvent.java82
-rw-r--r--debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/event/MIInferiorSignalExitEvent.java85
-rw-r--r--debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/event/MILocationReachedEvent.java81
-rw-r--r--debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/event/MIMemoryChangedEvent.java37
-rw-r--r--debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/event/MIMemoryCreatedEvent.java46
-rw-r--r--debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/event/MIRegisterChangedEvent.java39
-rw-r--r--debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/event/MIRegisterCreatedEvent.java44
-rw-r--r--debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/event/MIRunningEvent.java46
-rw-r--r--debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/event/MISharedLibChangedEvent.java37
-rw-r--r--debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/event/MISharedLibCreatedEvent.java37
-rw-r--r--debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/event/MISharedLibEvent.java34
-rw-r--r--debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/event/MISharedLibUnloadedEvent.java35
-rw-r--r--debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/event/MISignalChangedEvent.java37
-rw-r--r--debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/event/MISignalEvent.java99
-rw-r--r--debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/event/MISteppingRangeEvent.java80
-rw-r--r--debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/event/MIStoppedEvent.java99
-rw-r--r--debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/event/MIThreadCreatedEvent.java36
-rw-r--r--debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/event/MIThreadExitEvent.java36
-rw-r--r--debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/event/MIVarChangedEvent.java38
-rw-r--r--debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/event/MIVarCreatedEvent.java39
-rw-r--r--debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/event/MIVarDeletedEvent.java38
-rw-r--r--debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/event/MIWatchpointScopeEvent.java85
-rw-r--r--debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/event/MIWatchpointTriggerEvent.java156
-rw-r--r--debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/output/CLIInfoProgramInfo.java76
-rw-r--r--debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/output/CLIInfoSharedLibraryInfo.java192
-rw-r--r--debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/output/CLIInfoSignalsInfo.java115
-rw-r--r--debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/output/CLIInfoThreadsInfo.java93
-rw-r--r--debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/output/CLIPTypeInfo.java54
-rw-r--r--debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/output/CLIWhatisInfo.java54
-rw-r--r--debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/output/MIArg.java130
-rw-r--r--debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/output/MIAsm.java116
-rw-r--r--debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/output/MIAsyncRecord.java74
-rw-r--r--debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/output/MIBreakInsertInfo.java86
-rw-r--r--debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/output/MIBreakListInfo.java84
-rw-r--r--debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/output/MIBreakWatchInfo.java24
-rw-r--r--debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/output/MIBreakpoint.java266
-rw-r--r--debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/output/MIConsoleStreamOutput.java18
-rw-r--r--debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/output/MIConst.java122
-rw-r--r--debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/output/MIDataDisassembleInfo.java121
-rw-r--r--debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/output/MIDataEvaluateExpressionInfo.java52
-rw-r--r--debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/output/MIDataListChangedRegistersInfo.java73
-rw-r--r--debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/output/MIDataListRegisterNamesInfo.java90
-rw-r--r--debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/output/MIDataListRegisterValuesInfo.java53
-rw-r--r--debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/output/MIDataReadMemoryInfo.java154
-rw-r--r--debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/output/MIEnvironmentPWDInfo.java55
-rw-r--r--debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/output/MIExecAsyncOutput.java17
-rw-r--r--debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/output/MIFrame.java134
-rw-r--r--debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/output/MIGDBShowAddressSizeInfo.java35
-rw-r--r--debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/output/MIGDBShowDirectoriesInfo.java65
-rw-r--r--debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/output/MIGDBShowEndianInfo.java55
-rw-r--r--debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/output/MIGDBShowExitCodeInfo.java39
-rw-r--r--debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/output/MIGDBShowInfo.java50
-rw-r--r--debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/output/MIGDBShowSolibSearchPathInfo.java52
-rw-r--r--debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/output/MIInfo.java85
-rw-r--r--debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/output/MIList.java58
-rw-r--r--debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/output/MILogStreamOutput.java18
-rw-r--r--debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/output/MIMemory.java107
-rw-r--r--debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/output/MINotifyAsyncOutput.java17
-rw-r--r--debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/output/MIOOBRecord.java17
-rw-r--r--debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/output/MIOutput.java49
-rw-r--r--debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/output/MIParser.java564
-rw-r--r--debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/output/MIRegisterValue.java97
-rw-r--r--debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/output/MIResult.java50
-rw-r--r--debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/output/MIResultRecord.java63
-rw-r--r--debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/output/MIShared.java51
-rw-r--r--debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/output/MISigHandle.java58
-rw-r--r--debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/output/MISrcAsm.java90
-rw-r--r--debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/output/MIStackInfoDepthInfo.java52
-rw-r--r--debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/output/MIStackListArgumentsInfo.java83
-rw-r--r--debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/output/MIStackListFramesInfo.java84
-rw-r--r--debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/output/MIStackListLocalsInfo.java63
-rw-r--r--debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/output/MIStatusAsyncOutput.java18
-rw-r--r--debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/output/MIStreamRecord.java42
-rw-r--r--debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/output/MITargetStreamOutput.java19
-rw-r--r--debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/output/MIThreadListIdsInfo.java70
-rw-r--r--debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/output/MIThreadSelectInfo.java61
-rw-r--r--debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/output/MITuple.java57
-rw-r--r--debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/output/MIValue.java17
-rw-r--r--debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/output/MIVar.java77
-rw-r--r--debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/output/MIVarChange.java45
-rw-r--r--debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/output/MIVarCreateInfo.java66
-rw-r--r--debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/output/MIVarDeleteInfo.java52
-rw-r--r--debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/output/MIVarEvaluateExpressionInfo.java47
-rw-r--r--debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/output/MIVarInfoExpressionInfo.java57
-rw-r--r--debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/output/MIVarInfoNumChildrenInfo.java54
-rw-r--r--debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/output/MIVarInfoTypeInfo.java48
-rw-r--r--debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/output/MIVarListChildrenInfo.java88
-rw-r--r--debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/output/MIVarShowAttributesInfo.java51
-rw-r--r--debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/output/MIVarShowFormatInfo.java60
-rw-r--r--debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/output/MIVarUpdateInfo.java103
-rw-r--r--debug/org.eclipse.cdt.debug.mi.core/plugin.properties23
-rw-r--r--debug/org.eclipse.cdt.debug.mi.core/plugin.xml118
-rw-r--r--debug/org.eclipse.cdt.debug.mi.core/schema/commandFactories.exsd161
-rw-r--r--debug/org.eclipse.cdt.debug.mi.core/src/org/eclipse/cdt/debug/mi/core/AbstractGDBCDIDebugger.java217
-rw-r--r--debug/org.eclipse.cdt.debug.mi.core/src/org/eclipse/cdt/debug/mi/core/CygwinGDBCDIDebugger.java87
-rw-r--r--debug/org.eclipse.cdt.debug.mi.core/src/org/eclipse/cdt/debug/mi/core/CygwinGDBCDIDebugger2.java64
-rw-r--r--debug/org.eclipse.cdt.debug.mi.core/src/org/eclipse/cdt/debug/mi/core/CygwinGDBDebugger.java138
-rw-r--r--debug/org.eclipse.cdt.debug.mi.core/src/org/eclipse/cdt/debug/mi/core/GDBCDIDebugger.java303
-rw-r--r--debug/org.eclipse.cdt.debug.mi.core/src/org/eclipse/cdt/debug/mi/core/GDBCDIDebugger2.java246
-rw-r--r--debug/org.eclipse.cdt.debug.mi.core/src/org/eclipse/cdt/debug/mi/core/GDBDebugger.java171
-rw-r--r--debug/org.eclipse.cdt.debug.mi.core/src/org/eclipse/cdt/debug/mi/core/GDBProcess.java30
-rw-r--r--debug/org.eclipse.cdt.debug.mi.core/src/org/eclipse/cdt/debug/mi/core/GDBServerCDIDebugger.java120
-rw-r--r--debug/org.eclipse.cdt.debug.mi.core/src/org/eclipse/cdt/debug/mi/core/GDBServerCDIDebugger2.java134
-rw-r--r--debug/org.eclipse.cdt.debug.mi.core/src/org/eclipse/cdt/debug/mi/core/GDBServerDebugger.java135
-rw-r--r--debug/org.eclipse.cdt.debug.mi.core/src/org/eclipse/cdt/debug/mi/core/IGDBServerMILaunchConfigurationConstants.java25
-rw-r--r--debug/org.eclipse.cdt.debug.mi.core/src/org/eclipse/cdt/debug/mi/core/IMIConstants.java66
-rw-r--r--debug/org.eclipse.cdt.debug.mi.core/src/org/eclipse/cdt/debug/mi/core/IMILaunchConfigurationConstants.java86
-rw-r--r--debug/org.eclipse.cdt.debug.mi.core/src/org/eclipse/cdt/debug/mi/core/MICoreUtils.java35
-rw-r--r--debug/org.eclipse.cdt.debug.mi.core/src/org/eclipse/cdt/debug/mi/core/MIPlugin.java599
-rw-r--r--debug/org.eclipse.cdt.debug.mi.core/src/org/eclipse/cdt/debug/mi/core/MIPluginResources.properties39
-rw-r--r--debug/org.eclipse.cdt.debug.mi.core/src/org/eclipse/cdt/debug/mi/core/MIPreferenceInitializer.java32
-rw-r--r--debug/org.eclipse.cdt.debug.mi.core/src/org/eclipse/cdt/debug/mi/core/MIProcessAdapter.java207
-rw-r--r--debug/org.eclipse.cdt.debug.mi.core/src/org/eclipse/cdt/debug/mi/core/MITTYAdapter.java52
-rw-r--r--debug/org.eclipse.cdt.debug.mi.ui/.classpath7
-rw-r--r--debug/org.eclipse.cdt.debug.mi.ui/.cvsignore1
-rw-r--r--debug/org.eclipse.cdt.debug.mi.ui/.project28
-rw-r--r--debug/org.eclipse.cdt.debug.mi.ui/.settings/org.eclipse.core.resources.prefs3
-rw-r--r--debug/org.eclipse.cdt.debug.mi.ui/ChangeLog370
-rw-r--r--debug/org.eclipse.cdt.debug.mi.ui/META-INF/MANIFEST.MF27
-rw-r--r--debug/org.eclipse.cdt.debug.mi.ui/about.html24
-rw-r--r--debug/org.eclipse.cdt.debug.mi.ui/build.properties18
-rw-r--r--debug/org.eclipse.cdt.debug.mi.ui/icons/obj16/save_console.gifbin641 -> 0 bytes
-rw-r--r--debug/org.eclipse.cdt.debug.mi.ui/icons/obj16/verbose_mode_co.gifbin367 -> 0 bytes
-rw-r--r--debug/org.eclipse.cdt.debug.mi.ui/plugin.properties22
-rw-r--r--debug/org.eclipse.cdt.debug.mi.ui/plugin.xml86
-rw-r--r--debug/org.eclipse.cdt.debug.mi.ui/src/org/eclipse/cdt/debug/mi/internal/ui/ActionFilterAdapterFactory.java45
-rw-r--r--debug/org.eclipse.cdt.debug.mi.ui/src/org/eclipse/cdt/debug/mi/internal/ui/CygwinDebuggerPage.java30
-rw-r--r--debug/org.eclipse.cdt.debug.mi.ui/src/org/eclipse/cdt/debug/mi/internal/ui/GDBDebuggerPage.java334
-rw-r--r--debug/org.eclipse.cdt.debug.mi.ui/src/org/eclipse/cdt/debug/mi/internal/ui/GDBServerDebuggerPage.java185
-rw-r--r--debug/org.eclipse.cdt.debug.mi.ui/src/org/eclipse/cdt/debug/mi/internal/ui/GDBSolibBlock.java192
-rw-r--r--debug/org.eclipse.cdt.debug.mi.ui/src/org/eclipse/cdt/debug/mi/internal/ui/GDBTargetActionFilter.java34
-rw-r--r--debug/org.eclipse.cdt.debug.mi.ui/src/org/eclipse/cdt/debug/mi/internal/ui/IMIHelpContextIds.java25
-rw-r--r--debug/org.eclipse.cdt.debug.mi.ui/src/org/eclipse/cdt/debug/mi/internal/ui/IMIUIConstants.java22
-rw-r--r--debug/org.eclipse.cdt.debug.mi.ui/src/org/eclipse/cdt/debug/mi/internal/ui/MIUIMessages.java33
-rw-r--r--debug/org.eclipse.cdt.debug.mi.ui/src/org/eclipse/cdt/debug/mi/internal/ui/MIUIMessages.properties74
-rw-r--r--debug/org.eclipse.cdt.debug.mi.ui/src/org/eclipse/cdt/debug/mi/internal/ui/MIUIPlugin.java67
-rw-r--r--debug/org.eclipse.cdt.debug.mi.ui/src/org/eclipse/cdt/debug/mi/internal/ui/PixelConverter.java56
-rw-r--r--debug/org.eclipse.cdt.debug.mi.ui/src/org/eclipse/cdt/debug/mi/internal/ui/SWTUtil.java100
-rw-r--r--debug/org.eclipse.cdt.debug.mi.ui/src/org/eclipse/cdt/debug/mi/internal/ui/SerialPortSettingsBlock.java204
-rw-r--r--debug/org.eclipse.cdt.debug.mi.ui/src/org/eclipse/cdt/debug/mi/internal/ui/SolibSearchPathBlock.java589
-rw-r--r--debug/org.eclipse.cdt.debug.mi.ui/src/org/eclipse/cdt/debug/mi/internal/ui/StandardGDBDebuggerPage.java499
-rw-r--r--debug/org.eclipse.cdt.debug.mi.ui/src/org/eclipse/cdt/debug/mi/internal/ui/TCPSettingsBlock.java197
-rw-r--r--debug/org.eclipse.cdt.debug.mi.ui/src/org/eclipse/cdt/debug/mi/internal/ui/actions/ActionMessages.java33
-rw-r--r--debug/org.eclipse.cdt.debug.mi.ui/src/org/eclipse/cdt/debug/mi/internal/ui/actions/ActionMessages.properties13
-rw-r--r--debug/org.eclipse.cdt.debug.mi.ui/src/org/eclipse/cdt/debug/mi/internal/ui/actions/SetAutoSolibActionDelegate.java261
-rw-r--r--debug/org.eclipse.cdt.debug.mi.ui/src/org/eclipse/cdt/debug/mi/internal/ui/actions/VerboseModeActionDelegate.java53
-rw-r--r--debug/org.eclipse.cdt.debug.mi.ui/src/org/eclipse/cdt/debug/mi/internal/ui/dialogfields/CheckedListDialogField.java222
-rw-r--r--debug/org.eclipse.cdt.debug.mi.ui/src/org/eclipse/cdt/debug/mi/internal/ui/dialogfields/ComboDialogField.java226
-rw-r--r--debug/org.eclipse.cdt.debug.mi.ui/src/org/eclipse/cdt/debug/mi/internal/ui/dialogfields/DialogField.java227
-rw-r--r--debug/org.eclipse.cdt.debug.mi.ui/src/org/eclipse/cdt/debug/mi/internal/ui/dialogfields/IDialogFieldListener.java23
-rw-r--r--debug/org.eclipse.cdt.debug.mi.ui/src/org/eclipse/cdt/debug/mi/internal/ui/dialogfields/IListAdapter.java28
-rw-r--r--debug/org.eclipse.cdt.debug.mi.ui/src/org/eclipse/cdt/debug/mi/internal/ui/dialogfields/IStringButtonAdapter.java20
-rw-r--r--debug/org.eclipse.cdt.debug.mi.ui/src/org/eclipse/cdt/debug/mi/internal/ui/dialogfields/LayoutUtil.java140
-rw-r--r--debug/org.eclipse.cdt.debug.mi.ui/src/org/eclipse/cdt/debug/mi/internal/ui/dialogfields/ListDialogField.java771
-rw-r--r--debug/org.eclipse.cdt.debug.mi.ui/src/org/eclipse/cdt/debug/mi/internal/ui/dialogfields/SelectionButtonDialogField.java190
-rw-r--r--debug/org.eclipse.cdt.debug.mi.ui/src/org/eclipse/cdt/debug/mi/internal/ui/dialogfields/SelectionButtonDialogFieldGroup.java254
-rw-r--r--debug/org.eclipse.cdt.debug.mi.ui/src/org/eclipse/cdt/debug/mi/internal/ui/dialogfields/Separator.java93
-rw-r--r--debug/org.eclipse.cdt.debug.mi.ui/src/org/eclipse/cdt/debug/mi/internal/ui/dialogfields/StringButtonDialogField.java140
-rw-r--r--debug/org.eclipse.cdt.debug.mi.ui/src/org/eclipse/cdt/debug/mi/internal/ui/dialogfields/StringButtonStatusDialogField.java166
-rw-r--r--debug/org.eclipse.cdt.debug.mi.ui/src/org/eclipse/cdt/debug/mi/internal/ui/dialogfields/StringDialogField.java159
-rw-r--r--debug/org.eclipse.cdt.debug.mi.ui/src/org/eclipse/cdt/debug/mi/internal/ui/preferences/MIPreferencePage.java533
-rw-r--r--debug/org.eclipse.cdt.debug.mi.ui/src/org/eclipse/cdt/debug/mi/internal/ui/preferences/PreferenceMessages.java33
-rw-r--r--debug/org.eclipse.cdt.debug.mi.ui/src/org/eclipse/cdt/debug/mi/internal/ui/preferences/PreferenceMessages.properties17
-rw-r--r--debug/org.eclipse.cdt.debug.mi.ui/src/org/eclipse/cdt/debug/mi/internal/ui/propertypages/OptionsPropertyPage.java104
-rw-r--r--debug/org.eclipse.cdt.debug.mi.ui/src/org/eclipse/cdt/debug/mi/internal/ui/propertypages/PropertyMessages.java37
-rw-r--r--debug/org.eclipse.cdt.debug.mi.ui/src/org/eclipse/cdt/debug/mi/internal/ui/propertypages/PropertyMessages.properties11
-rw-r--r--debug/org.eclipse.cdt.debug.mi.ui/src/org/eclipse/cdt/debug/mi/ui/IMILaunchConfigurationComponent.java84
-rw-r--r--debug/org.eclipse.cdt.debug.mi.ui/src/org/eclipse/cdt/debug/mi/ui/MIUIUtils.java33
-rw-r--r--debug/org.eclipse.cdt.debug.mi.ui/src/org/eclipse/cdt/debug/mi/ui/console/MiConsolePageParticipant.java110
-rw-r--r--debug/org.eclipse.cdt.debug.mi.ui/src/org/eclipse/cdt/debug/mi/ui/console/VerboseModeChangedEvent.java29
-rw-r--r--debug/org.eclipse.cdt.debug.mi.ui/src/org/eclipse/cdt/debug/mi/ui/console/actions/IMiConsoleImagesConst.java17
-rw-r--r--debug/org.eclipse.cdt.debug.mi.ui/src/org/eclipse/cdt/debug/mi/ui/console/actions/MiConsoleMessages.java29
-rw-r--r--debug/org.eclipse.cdt.debug.mi.ui/src/org/eclipse/cdt/debug/mi/ui/console/actions/MiConsoleMessages.properties4
-rw-r--r--debug/org.eclipse.cdt.debug.mi.ui/src/org/eclipse/cdt/debug/mi/ui/console/actions/MiConsoleSaveAction.java80
-rw-r--r--debug/org.eclipse.cdt.debug.mi.ui/src/org/eclipse/cdt/debug/mi/ui/console/actions/MiConsoleVerboseModeAction.java41
-rw-r--r--debug/org.eclipse.cdt.debug.ui.tests/.classpath8
-rw-r--r--debug/org.eclipse.cdt.debug.ui.tests/.cvsignore1
-rw-r--r--debug/org.eclipse.cdt.debug.ui.tests/.project28
-rw-r--r--debug/org.eclipse.cdt.debug.ui.tests/.settings/org.eclipse.jdt.core.prefs47
-rw-r--r--debug/org.eclipse.cdt.debug.ui.tests/Changelog69
-rw-r--r--debug/org.eclipse.cdt.debug.ui.tests/META-INF/MANIFEST.MF22
-rw-r--r--debug/org.eclipse.cdt.debug.ui.tests/about.html24
-rw-r--r--debug/org.eclipse.cdt.debug.ui.tests/build.properties18
-rw-r--r--debug/org.eclipse.cdt.debug.ui.tests/core/org/eclipse/cdt/debug/core/tests/.cvsignore0
-rw-r--r--debug/org.eclipse.cdt.debug.ui.tests/core/org/eclipse/cdt/debug/core/tests/AllDebugTests.java46
-rw-r--r--debug/org.eclipse.cdt.debug.ui.tests/core/org/eclipse/cdt/debug/core/tests/BreakpointTests.java735
-rw-r--r--debug/org.eclipse.cdt.debug.ui.tests/core/org/eclipse/cdt/debug/core/tests/DebugTests.java142
-rw-r--r--debug/org.eclipse.cdt.debug.ui.tests/core/org/eclipse/cdt/debug/core/tests/LocationTests.java196
-rw-r--r--debug/org.eclipse.cdt.debug.ui.tests/core/org/eclipse/cdt/debug/core/tests/TargetTests.java109
-rw-r--r--debug/org.eclipse.cdt.debug.ui.tests/plugin.xml6
-rw-r--r--debug/org.eclipse.cdt.debug.ui.tests/resources/debugTest.zipbin1578 -> 0 bytes
-rw-r--r--debug/org.eclipse.cdt.debug.ui.tests/src/org/eclipse/cdt/debug/testplugin/CDebugHelper.java83
-rw-r--r--debug/org.eclipse.cdt.debug.ui.tests/src/org/eclipse/cdt/debug/testplugin/CProjectHelper.java236
-rw-r--r--debug/org.eclipse.cdt.debug.ui.tests/src/org/eclipse/cdt/debug/testplugin/CTestPlugin.java64
-rw-r--r--debug/org.eclipse.cdt.debug.ui.tests/src/org/eclipse/cdt/debug/testplugin/util/ExpectedStrings.java106
-rw-r--r--debug/org.eclipse.cdt.debug.ui.tests/src/org/eclipse/cdt/debug/testplugin/util/ExpectedStringsTests.java124
-rw-r--r--debug/org.eclipse.cdt.debug.ui.tests/test.xml51
-rw-r--r--debug/org.eclipse.cdt.debug.ui/.classpath7
-rw-r--r--debug/org.eclipse.cdt.debug.ui/.cvsignore1
-rw-r--r--debug/org.eclipse.cdt.debug.ui/.project28
-rw-r--r--debug/org.eclipse.cdt.debug.ui/.settings/org.eclipse.jdt.core.prefs7
-rw-r--r--debug/org.eclipse.cdt.debug.ui/ChangeLog1699
-rw-r--r--debug/org.eclipse.cdt.debug.ui/ChangeLog-20031267
-rw-r--r--debug/org.eclipse.cdt.debug.ui/META-INF/MANIFEST.MF39
-rw-r--r--debug/org.eclipse.cdt.debug.ui/NEWS17
-rw-r--r--debug/org.eclipse.cdt.debug.ui/about.html24
-rw-r--r--debug/org.eclipse.cdt.debug.ui/build.properties20
-rw-r--r--debug/org.eclipse.cdt.debug.ui/icons/dlcl16/auto_refresh_co.gifbin348 -> 0 bytes
-rw-r--r--debug/org.eclipse.cdt.debug.ui/icons/dlcl16/casttotype_co.gifbin194 -> 0 bytes
-rw-r--r--debug/org.eclipse.cdt.debug.ui/icons/dlcl16/change_reg_value_co.gifbin318 -> 0 bytes
-rw-r--r--debug/org.eclipse.cdt.debug.ui/icons/dlcl16/collapseall.gifbin155 -> 0 bytes
-rw-r--r--debug/org.eclipse.cdt.debug.ui/icons/dlcl16/debugger_console.gifbin560 -> 0 bytes
-rw-r--r--debug/org.eclipse.cdt.debug.ui/icons/dlcl16/det_pane_hide.gifbin229 -> 0 bytes
-rw-r--r--debug/org.eclipse.cdt.debug.ui/icons/dlcl16/det_pane_right.gifbin354 -> 0 bytes
-rw-r--r--debug/org.eclipse.cdt.debug.ui/icons/dlcl16/det_pane_under.gifbin219 -> 0 bytes
-rw-r--r--debug/org.eclipse.cdt.debug.ui/icons/dlcl16/disabled_co.gifbin148 -> 0 bytes
-rw-r--r--debug/org.eclipse.cdt.debug.ui/icons/dlcl16/disassembly.gifbin138 -> 0 bytes
-rw-r--r--debug/org.eclipse.cdt.debug.ui/icons/dlcl16/enabled_co.gifbin343 -> 0 bytes
-rw-r--r--debug/org.eclipse.cdt.debug.ui/icons/dlcl16/instr_step.gifbin76 -> 0 bytes
-rw-r--r--debug/org.eclipse.cdt.debug.ui/icons/dlcl16/jump_co.gifbin284 -> 0 bytes
-rw-r--r--debug/org.eclipse.cdt.debug.ui/icons/dlcl16/load_all_symbols_co.gifbin360 -> 0 bytes
-rw-r--r--debug/org.eclipse.cdt.debug.ui/icons/dlcl16/load_symbols_co.gifbin333 -> 0 bytes
-rw-r--r--debug/org.eclipse.cdt.debug.ui/icons/dlcl16/memory_clear.gifbin533 -> 0 bytes
-rw-r--r--debug/org.eclipse.cdt.debug.ui/icons/dlcl16/memory_update.gifbin580 -> 0 bytes
-rw-r--r--debug/org.eclipse.cdt.debug.ui/icons/dlcl16/refresh_co.gifbin309 -> 0 bytes
-rw-r--r--debug/org.eclipse.cdt.debug.ui/icons/dlcl16/rem_all_co.gifbin163 -> 0 bytes
-rw-r--r--debug/org.eclipse.cdt.debug.ui/icons/dlcl16/rem_co.gifbin159 -> 0 bytes
-rw-r--r--debug/org.eclipse.cdt.debug.ui/icons/dlcl16/restart.gifbin77 -> 0 bytes
-rw-r--r--debug/org.eclipse.cdt.debug.ui/icons/dlcl16/runtoline_co.gifbin190 -> 0 bytes
-rw-r--r--debug/org.eclipse.cdt.debug.ui/icons/dlcl16/show_ascii.gifbin190 -> 0 bytes
-rw-r--r--debug/org.eclipse.cdt.debug.ui/icons/dlcl16/show_paths.gifbin166 -> 0 bytes
-rw-r--r--debug/org.eclipse.cdt.debug.ui/icons/dlcl16/showasarray_co.gifbin90 -> 0 bytes
-rw-r--r--debug/org.eclipse.cdt.debug.ui/icons/dlcl16/signal0_co.gifbin306 -> 0 bytes
-rw-r--r--debug/org.eclipse.cdt.debug.ui/icons/dlcl16/signal_co.gifbin304 -> 0 bytes
-rw-r--r--debug/org.eclipse.cdt.debug.ui/icons/dlcl16/tnames_co.gifbin347 -> 0 bytes
-rw-r--r--debug/org.eclipse.cdt.debug.ui/icons/dlcl16/watch_globals.gifbin309 -> 0 bytes
-rw-r--r--debug/org.eclipse.cdt.debug.ui/icons/dtool16/watch_exp.gifbin94 -> 0 bytes
-rw-r--r--debug/org.eclipse.cdt.debug.ui/icons/elcl16/auto_refresh_co.gifbin369 -> 0 bytes
-rw-r--r--debug/org.eclipse.cdt.debug.ui/icons/elcl16/casttotype_co.gifbin214 -> 0 bytes
-rw-r--r--debug/org.eclipse.cdt.debug.ui/icons/elcl16/change_reg_value_co.gifbin344 -> 0 bytes
-rw-r--r--debug/org.eclipse.cdt.debug.ui/icons/elcl16/collapseall.gifbin157 -> 0 bytes
-rw-r--r--debug/org.eclipse.cdt.debug.ui/icons/elcl16/debugger_console.gifbin588 -> 0 bytes
-rw-r--r--debug/org.eclipse.cdt.debug.ui/icons/elcl16/det_pane_hide.gifbin370 -> 0 bytes
-rw-r--r--debug/org.eclipse.cdt.debug.ui/icons/elcl16/det_pane_right.gifbin374 -> 0 bytes
-rw-r--r--debug/org.eclipse.cdt.debug.ui/icons/elcl16/det_pane_under.gifbin352 -> 0 bytes
-rw-r--r--debug/org.eclipse.cdt.debug.ui/icons/elcl16/disabled_co.gifbin148 -> 0 bytes
-rw-r--r--debug/org.eclipse.cdt.debug.ui/icons/elcl16/disassembly.gifbin148 -> 0 bytes
-rw-r--r--debug/org.eclipse.cdt.debug.ui/icons/elcl16/enabled_co.gifbin343 -> 0 bytes
-rw-r--r--debug/org.eclipse.cdt.debug.ui/icons/elcl16/function_brkpt_co.gifbin154 -> 0 bytes
-rw-r--r--debug/org.eclipse.cdt.debug.ui/icons/elcl16/instr_step.gifbin108 -> 0 bytes
-rw-r--r--debug/org.eclipse.cdt.debug.ui/icons/elcl16/jump_co.gifbin307 -> 0 bytes
-rw-r--r--debug/org.eclipse.cdt.debug.ui/icons/elcl16/load_all_symbols_co.gifbin365 -> 0 bytes
-rw-r--r--debug/org.eclipse.cdt.debug.ui/icons/elcl16/load_symbols_co.gifbin345 -> 0 bytes
-rw-r--r--debug/org.eclipse.cdt.debug.ui/icons/elcl16/memory_clear.gifbin545 -> 0 bytes
-rw-r--r--debug/org.eclipse.cdt.debug.ui/icons/elcl16/memory_update.gifbin610 -> 0 bytes
-rw-r--r--debug/org.eclipse.cdt.debug.ui/icons/elcl16/refresh_co.gifbin327 -> 0 bytes
-rw-r--r--debug/org.eclipse.cdt.debug.ui/icons/elcl16/rem_all_co.gifbin204 -> 0 bytes
-rw-r--r--debug/org.eclipse.cdt.debug.ui/icons/elcl16/rem_co.gifbin226 -> 0 bytes
-rw-r--r--debug/org.eclipse.cdt.debug.ui/icons/elcl16/restart.gifbin180 -> 0 bytes
-rw-r--r--debug/org.eclipse.cdt.debug.ui/icons/elcl16/runtoline_co.gifbin138 -> 0 bytes
-rw-r--r--debug/org.eclipse.cdt.debug.ui/icons/elcl16/show_ascii.gifbin230 -> 0 bytes
-rw-r--r--debug/org.eclipse.cdt.debug.ui/icons/elcl16/show_parents.gifbin118 -> 0 bytes
-rw-r--r--debug/org.eclipse.cdt.debug.ui/icons/elcl16/show_paths.gifbin179 -> 0 bytes
-rw-r--r--debug/org.eclipse.cdt.debug.ui/icons/elcl16/showasarray_co.gifbin96 -> 0 bytes
-rw-r--r--debug/org.eclipse.cdt.debug.ui/icons/elcl16/signal0_co.gifbin336 -> 0 bytes
-rw-r--r--debug/org.eclipse.cdt.debug.ui/icons/elcl16/signal_co.gifbin335 -> 0 bytes
-rw-r--r--debug/org.eclipse.cdt.debug.ui/icons/elcl16/tnames_co.gifbin363 -> 0 bytes
-rw-r--r--debug/org.eclipse.cdt.debug.ui/icons/elcl16/watch_globals.gifbin323 -> 0 bytes
-rw-r--r--debug/org.eclipse.cdt.debug.ui/icons/elcl16/watchpoint_co.gifbin231 -> 0 bytes
-rw-r--r--debug/org.eclipse.cdt.debug.ui/icons/etool16/watch_exp.gifbin125 -> 0 bytes
-rw-r--r--debug/org.eclipse.cdt.debug.ui/icons/obj16/abspath_obj.gifbin924 -> 0 bytes
-rw-r--r--debug/org.eclipse.cdt.debug.ui/icons/obj16/addrbrkp_obj.gifbin334 -> 0 bytes
-rw-r--r--debug/org.eclipse.cdt.debug.ui/icons/obj16/addrbrkpd_obj.gifbin331 -> 0 bytes
-rw-r--r--debug/org.eclipse.cdt.debug.ui/icons/obj16/brkp_obj.gifbin183 -> 0 bytes
-rw-r--r--debug/org.eclipse.cdt.debug.ui/icons/obj16/brkpd_obj.gifbin130 -> 0 bytes
-rw-r--r--debug/org.eclipse.cdt.debug.ui/icons/obj16/c_app.gifbin606 -> 0 bytes
-rw-r--r--debug/org.eclipse.cdt.debug.ui/icons/obj16/cproject_obj.gifbin351 -> 0 bytes
-rw-r--r--debug/org.eclipse.cdt.debug.ui/icons/obj16/directory_obj.gifbin162 -> 0 bytes
-rw-r--r--debug/org.eclipse.cdt.debug.ui/icons/obj16/disassembly_obj.gifbin238 -> 0 bytes
-rw-r--r--debug/org.eclipse.cdt.debug.ui/icons/obj16/exec_dbg_obj.gifbin348 -> 0 bytes
-rw-r--r--debug/org.eclipse.cdt.debug.ui/icons/obj16/exec_obj.gifbin125 -> 0 bytes
-rw-r--r--debug/org.eclipse.cdt.debug.ui/icons/obj16/expression_obj.gifbin909 -> 0 bytes
-rw-r--r--debug/org.eclipse.cdt.debug.ui/icons/obj16/ext_file_obj.gifbin581 -> 0 bytes
-rw-r--r--debug/org.eclipse.cdt.debug.ui/icons/obj16/filenotfound_obj.gifbin354 -> 0 bytes
-rw-r--r--debug/org.eclipse.cdt.debug.ui/icons/obj16/folder_obj.gifbin216 -> 0 bytes
-rw-r--r--debug/org.eclipse.cdt.debug.ui/icons/obj16/funbrkp_obj.gifbin204 -> 0 bytes
-rw-r--r--debug/org.eclipse.cdt.debug.ui/icons/obj16/funbrkpd_obj.gifbin146 -> 0 bytes
-rw-r--r--debug/org.eclipse.cdt.debug.ui/icons/obj16/inst_ptr.gifbin83 -> 0 bytes
-rw-r--r--debug/org.eclipse.cdt.debug.ui/icons/obj16/inst_ptr_top.gifbin82 -> 0 bytes
-rw-r--r--debug/org.eclipse.cdt.debug.ui/icons/obj16/library_obj.gifbin338 -> 0 bytes
-rw-r--r--debug/org.eclipse.cdt.debug.ui/icons/obj16/library_syms_obj.gifbin570 -> 0 bytes
-rw-r--r--debug/org.eclipse.cdt.debug.ui/icons/obj16/mapentry_obj.gifbin581 -> 0 bytes
-rw-r--r--debug/org.eclipse.cdt.debug.ui/icons/obj16/mapping_obj.gifbin594 -> 0 bytes
-rw-r--r--debug/org.eclipse.cdt.debug.ui/icons/obj16/prj_file_obj.gifbin603 -> 0 bytes
-rw-r--r--debug/org.eclipse.cdt.debug.ui/icons/obj16/project_obj.gifbin351 -> 0 bytes
-rw-r--r--debug/org.eclipse.cdt.debug.ui/icons/obj16/read_obj.gifbin157 -> 0 bytes
-rw-r--r--debug/org.eclipse.cdt.debug.ui/icons/obj16/read_obj_disabled.gifbin154 -> 0 bytes
-rw-r--r--debug/org.eclipse.cdt.debug.ui/icons/obj16/readwrite_obj.gifbin230 -> 0 bytes
-rw-r--r--debug/org.eclipse.cdt.debug.ui/icons/obj16/readwrite_obj_disabled.gifbin227 -> 0 bytes
-rw-r--r--debug/org.eclipse.cdt.debug.ui/icons/obj16/register_obj.gifbin115 -> 0 bytes
-rw-r--r--debug/org.eclipse.cdt.debug.ui/icons/obj16/registerd_obj.gifbin118 -> 0 bytes
-rw-r--r--debug/org.eclipse.cdt.debug.ui/icons/obj16/registergroup_obj.gifbin250 -> 0 bytes
-rw-r--r--debug/org.eclipse.cdt.debug.ui/icons/obj16/registergroupd_obj.gifbin184 -> 0 bytes
-rw-r--r--debug/org.eclipse.cdt.debug.ui/icons/obj16/showpaths_obj.gifbin179 -> 0 bytes
-rw-r--r--debug/org.eclipse.cdt.debug.ui/icons/obj16/signal_obj.gifbin323 -> 0 bytes
-rw-r--r--debug/org.eclipse.cdt.debug.ui/icons/obj16/var_aggr.gifbin361 -> 0 bytes
-rw-r--r--debug/org.eclipse.cdt.debug.ui/icons/obj16/var_env.gifbin331 -> 0 bytes
-rw-r--r--debug/org.eclipse.cdt.debug.ui/icons/obj16/var_global.gifbin515 -> 0 bytes
-rw-r--r--debug/org.eclipse.cdt.debug.ui/icons/obj16/var_global_aggr.gifbin581 -> 0 bytes
-rw-r--r--debug/org.eclipse.cdt.debug.ui/icons/obj16/var_pointer.gifbin82 -> 0 bytes
-rw-r--r--debug/org.eclipse.cdt.debug.ui/icons/obj16/var_simple.gifbin95 -> 0 bytes
-rw-r--r--debug/org.eclipse.cdt.debug.ui/icons/obj16/var_simple_aggr.gifbin346 -> 0 bytes
-rw-r--r--debug/org.eclipse.cdt.debug.ui/icons/obj16/var_static.gifbin349 -> 0 bytes
-rw-r--r--debug/org.eclipse.cdt.debug.ui/icons/obj16/var_static_aggr.gifbin581 -> 0 bytes
-rw-r--r--debug/org.eclipse.cdt.debug.ui/icons/obj16/var_string.gifbin84 -> 0 bytes
-rw-r--r--debug/org.eclipse.cdt.debug.ui/icons/obj16/vard_aggr.gifbin346 -> 0 bytes
-rw-r--r--debug/org.eclipse.cdt.debug.ui/icons/obj16/vard_pointer.gifbin78 -> 0 bytes
-rw-r--r--debug/org.eclipse.cdt.debug.ui/icons/obj16/vard_simple.gifbin95 -> 0 bytes
-rw-r--r--debug/org.eclipse.cdt.debug.ui/icons/obj16/write_obj.gifbin210 -> 0 bytes
-rw-r--r--debug/org.eclipse.cdt.debug.ui/icons/obj16/write_obj_disabled.gifbin158 -> 0 bytes
-rw-r--r--debug/org.eclipse.cdt.debug.ui/icons/ovr16/address_ovr.gifbin275 -> 0 bytes
-rw-r--r--debug/org.eclipse.cdt.debug.ui/icons/ovr16/address_ovr_disabled.gifbin174 -> 0 bytes
-rw-r--r--debug/org.eclipse.cdt.debug.ui/icons/ovr16/argument_ovr.gifbin65 -> 0 bytes
-rw-r--r--debug/org.eclipse.cdt.debug.ui/icons/ovr16/castarray_ovr.gifbin63 -> 0 bytes
-rw-r--r--debug/org.eclipse.cdt.debug.ui/icons/ovr16/casttype_ovr.gifbin85 -> 0 bytes
-rw-r--r--debug/org.eclipse.cdt.debug.ui/icons/ovr16/conditional_ovr.gifbin87 -> 0 bytes
-rw-r--r--debug/org.eclipse.cdt.debug.ui/icons/ovr16/conditional_ovr_disabled.gifbin81 -> 0 bytes
-rw-r--r--debug/org.eclipse.cdt.debug.ui/icons/ovr16/error_ovr.gifbin82 -> 0 bytes
-rw-r--r--debug/org.eclipse.cdt.debug.ui/icons/ovr16/function_ovr.gifbin80 -> 0 bytes
-rw-r--r--debug/org.eclipse.cdt.debug.ui/icons/ovr16/function_ovr_disabled.gifbin64 -> 0 bytes
-rw-r--r--debug/org.eclipse.cdt.debug.ui/icons/ovr16/global_ovr.gifbin275 -> 0 bytes
-rw-r--r--debug/org.eclipse.cdt.debug.ui/icons/ovr16/installed_ovr.gifbin64 -> 0 bytes
-rw-r--r--debug/org.eclipse.cdt.debug.ui/icons/ovr16/installed_ovr_disabled.gifbin80 -> 0 bytes
-rw-r--r--debug/org.eclipse.cdt.debug.ui/icons/ovr16/warning_ovr.gifbin173 -> 0 bytes
-rw-r--r--debug/org.eclipse.cdt.debug.ui/icons/view16/disassembly_view.gifbin367 -> 0 bytes
-rw-r--r--debug/org.eclipse.cdt.debug.ui/icons/view16/memory_view.gifbin567 -> 0 bytes
-rw-r--r--debug/org.eclipse.cdt.debug.ui/icons/view16/modules_view.gifbin338 -> 0 bytes
-rw-r--r--debug/org.eclipse.cdt.debug.ui/icons/view16/signals_view.gifbin323 -> 0 bytes
-rw-r--r--debug/org.eclipse.cdt.debug.ui/icons/wizban/addsrcloc_wiz.gifbin3051 -> 0 bytes
-rw-r--r--debug/org.eclipse.cdt.debug.ui/icons/wizban/mapentry_wiz.gifbin2694 -> 0 bytes
-rw-r--r--debug/org.eclipse.cdt.debug.ui/icons/wizban/mapping_wiz.gifbin2910 -> 0 bytes
-rw-r--r--debug/org.eclipse.cdt.debug.ui/plugin.properties141
-rw-r--r--debug/org.eclipse.cdt.debug.ui/plugin.xml1287
-rw-r--r--debug/org.eclipse.cdt.debug.ui/schema/CDebuggerPage.exsd130
-rw-r--r--debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/BreakpointImageProvider.java62
-rw-r--r--debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/CBreakpointUpdater.java128
-rw-r--r--debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/CBreakpointWorkbenchAdapterFactory.java52
-rw-r--r--debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/CDebugImageDescriptorRegistry.java97
-rw-r--r--debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/CDebugImages.java322
-rw-r--r--debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/CDebugModelPresentation.java810
-rw-r--r--debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/CDebugUIMessages.java33
-rw-r--r--debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/CDebugUIMessages.properties41
-rw-r--r--debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/CDebugUIPreferenceInitializer.java37
-rw-r--r--debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/CDebugUIUtils.java75
-rw-r--r--debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/CDebuggerPageAdapter.java165
-rw-r--r--debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/CValueDetailProvider.java47
-rw-r--r--debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/CWatchExpressionDelegate.java77
-rw-r--r--debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/ColorManager.java61
-rw-r--r--debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/DebugMarkerAnnotationModel.java103
-rw-r--r--debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/DebugMarkerAnnotationModelFactory.java37
-rw-r--r--debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/DetailsViewerConfiguration.java20
-rw-r--r--debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/ErrorStatusHandler.java42
-rw-r--r--debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/EvaluationContextManager.java228
-rw-r--r--debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/HTML2TextReader.java297
-rw-r--r--debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/HTMLPrinter.java152
-rw-r--r--debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/HTMLTextPresenter.java194
-rw-r--r--debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/ICDebugHelpContextIds.java74
-rw-r--r--debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/IInternalCDebugUIConstants.java71
-rw-r--r--debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/InfoStatusHandler.java41
-rw-r--r--debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/LineBreakingReader.java109
-rw-r--r--debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/OverlayImageCache.java60
-rw-r--r--debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/OverlayImageDescriptor.java137
-rw-r--r--debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/PixelConverter.java65
-rw-r--r--debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/QuestionStatusHandler.java42
-rw-r--r--debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/SWTUtil.java99
-rw-r--r--debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/SingleCharReader.java56
-rw-r--r--debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/Startup.java28
-rw-r--r--debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/SubstitutionTextReader.java147
-rw-r--r--debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/actions/AbstractBreakpointRulerAction.java161
-rw-r--r--debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/actions/AbstractDebugActionDelegate.java416
-rw-r--r--debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/actions/AbstractEditorActionDelegate.java225
-rw-r--r--debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/actions/AbstractListenerActionDelegate.java109
-rw-r--r--debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/actions/AbstractViewActionDelegate.java186
-rw-r--r--debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/actions/ActionMessages.java33
-rw-r--r--debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/actions/ActionMessages.properties120
-rw-r--r--debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/actions/AddExpressionEditorActionDelegate.java110
-rw-r--r--debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/actions/AddGlobalsActionDelegate.java322
-rw-r--r--debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/actions/AddRegisterGroupActionDelegate.java85
-rw-r--r--debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/actions/AddWatchpointActionDelegate.java64
-rw-r--r--debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/actions/AddWatchpointDialog.java181
-rw-r--r--debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/actions/BinaryVariableFormatActionDelegate.java26
-rw-r--r--debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/actions/BreakpointLocationVerifier.java39
-rw-r--r--debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/actions/CBreakpointPropertiesAction.java96
-rw-r--r--debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/actions/CBreakpointPropertiesRulerAction.java77
-rw-r--r--debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/actions/CBreakpointPropertiesRulerActionDelegate.java26
-rw-r--r--debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/actions/CastToArrayActionDelegate.java326
-rw-r--r--debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/actions/CastToTypeActionDelegate.java174
-rw-r--r--debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/actions/CollapseAllModulesAction.java52
-rw-r--r--debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/actions/DecVariableFormatActionDelegate.java26
-rw-r--r--debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/actions/DisableVariablesActionDelegate.java28
-rw-r--r--debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/actions/EditRegisterGroupActionDelegate.java79
-rw-r--r--debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/actions/EnableDisableBreakpointRulerAction.java68
-rw-r--r--debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/actions/EnableDisableBreakpointRulerActionDelegate.java26
-rw-r--r--debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/actions/EnableVariablesActionDelegate.java155
-rw-r--r--debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/actions/ExpressionDialog.java132
-rw-r--r--debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/actions/HexVariableFormatActionDelegate.java26
-rw-r--r--debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/actions/IResumeAtLineTarget.java43
-rw-r--r--debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/actions/LoadModuleSymbolsActionDelegate.java105
-rw-r--r--debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/actions/LoadSymbolsForAllActionDelegate.java99
-rw-r--r--debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/actions/ManageBreakpointRulerActionDelegate.java45
-rw-r--r--debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/actions/ManageFunctionBreakpointActionDelegate.java81
-rw-r--r--debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/actions/ModulesPropertiesActionDelegate.java97
-rw-r--r--debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/actions/NaturalVariableFormatActionDelegate.java26
-rw-r--r--debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/actions/RegisterGroupDialog.java159
-rw-r--r--debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/actions/RemoveAllGlobalsActionDelegate.java51
-rw-r--r--debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/actions/RemoveGlobalsActionDelegate.java120
-rw-r--r--debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/actions/RemoveRegisterGroupActionDelegate.java84
-rw-r--r--debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/actions/RestartActionDelegate.java91
-rw-r--r--debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/actions/RestoreDefaultRegisterGroupsActionDelegate.java64
-rw-r--r--debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/actions/RestoreDefaultTypeActionDelegate.java115
-rw-r--r--debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/actions/ResumeAtLineActionDelegate.java175
-rw-r--r--debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/actions/ResumeAtLineAdapter.java191
-rw-r--r--debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/actions/RetargetAction.java215
-rw-r--r--debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/actions/RetargetResumeAtLineAction.java96
-rw-r--r--debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/actions/RetargettableActionAdapterFactory.java46
-rw-r--r--debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/actions/RunToLineAdapter.java194
-rw-r--r--debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/actions/ShowFullPathsAction.java68
-rw-r--r--debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/actions/SignalActionDelegate.java109
-rw-r--r--debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/actions/SignalPropertiesActionDelegate.java99
-rw-r--r--debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/actions/SignalZeroWorkbenchActionDelegate.java71
-rw-r--r--debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/actions/ToggleBreakpointAdapter.java504
-rw-r--r--debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/actions/ToggleBreakpointRulerAction.java136
-rw-r--r--debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/actions/ToggleDetailPaneAction.java87
-rw-r--r--debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/actions/ToggleInstructionStepModeActionDelegate.java157
-rw-r--r--debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/actions/ToggleWatchpointActionDelegate.java84
-rw-r--r--debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/actions/VariableFormatActionDelegate.java123
-rw-r--r--debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/actions/ViewFilterAction.java151
-rw-r--r--debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/actions/WatchpointExpressionVerifier.java31
-rw-r--r--debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/dialogfields/CheckedListDialogField.java222
-rw-r--r--debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/dialogfields/ComboDialogField.java226
-rw-r--r--debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/dialogfields/DialogField.java227
-rw-r--r--debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/dialogfields/IDialogFieldListener.java23
-rw-r--r--debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/dialogfields/IListAdapter.java28
-rw-r--r--debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/dialogfields/IStringButtonAdapter.java20
-rw-r--r--debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/dialogfields/LayoutUtil.java140
-rw-r--r--debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/dialogfields/ListDialogField.java772
-rw-r--r--debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/dialogfields/SelectionButtonDialogField.java190
-rw-r--r--debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/dialogfields/SelectionButtonDialogFieldGroup.java254
-rw-r--r--debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/dialogfields/Separator.java93
-rw-r--r--debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/dialogfields/StringButtonDialogField.java140
-rw-r--r--debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/dialogfields/StringButtonStatusDialogField.java166
-rw-r--r--debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/dialogfields/StringDialogField.java159
-rw-r--r--debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/editors/DebugTextHover.java344
-rw-r--r--debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/editors/SharedTextColors.java76
-rw-r--r--debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/elements/adapters/CDebugElementAdapterFactory.java86
-rw-r--r--debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/elements/adapters/CMemoryAdapterFactory.java68
-rw-r--r--debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/elements/adapters/CWatchExpressionFactoryAdapter.java33
-rw-r--r--debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/elements/adapters/CWatchExpressionFactoryAdapterFactory.java41
-rw-r--r--debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/preferences/CDebugPreferencePage.java381
-rw-r--r--debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/preferences/ComboFieldEditor.java200
-rw-r--r--debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/preferences/DebuggerTypesPage.java251
-rw-r--r--debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/preferences/ICDebugPreferenceConstants.java49
-rw-r--r--debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/preferences/PreferenceMessages.java33
-rw-r--r--debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/preferences/PreferenceMessages.properties32
-rw-r--r--debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/preferences/SourcePreferencePage.java186
-rw-r--r--debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/propertypages/CBreakpointFilteringPage.java65
-rw-r--r--debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/propertypages/CBreakpointPreferenceStore.java363
-rw-r--r--debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/propertypages/CBreakpointPropertyPage.java450
-rw-r--r--debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/propertypages/ModuleProperties.java121
-rw-r--r--debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/propertypages/ModulePropertyPage.java237
-rw-r--r--debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/propertypages/PropertyPageMessages.java33
-rw-r--r--debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/propertypages/PropertyPageMessages.properties57
-rw-r--r--debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/propertypages/SignalPropertyPage.java144
-rw-r--r--debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/propertypages/ThreadFilterEditor.java340
-rw-r--r--debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/sourcelookup/AddContainerAction.java52
-rw-r--r--debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/sourcelookup/AddSourceContainerDialog.java155
-rw-r--r--debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/sourcelookup/CSourceNotFoundEditor.java201
-rw-r--r--debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/sourcelookup/CSourceNotFoundEditorInput.java27
-rw-r--r--debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/sourcelookup/DownAction.java57
-rw-r--r--debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/sourcelookup/EditContainerAction.java89
-rw-r--r--debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/sourcelookup/MappingSourceContainerBrowser.java81
-rw-r--r--debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/sourcelookup/PathMappingDialog.java532
-rw-r--r--debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/sourcelookup/RemoveAction.java45
-rw-r--r--debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/sourcelookup/SourceContainerAction.java176
-rw-r--r--debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/sourcelookup/SourceContainerAdapterFactory.java37
-rw-r--r--debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/sourcelookup/SourceContainerLabelProvider.java89
-rw-r--r--debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/sourcelookup/SourceContainerViewer.java188
-rw-r--r--debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/sourcelookup/SourceContainerWorkbenchAdapter.java104
-rw-r--r--debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/sourcelookup/SourceLookupUIMessages.java34
-rw-r--r--debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/sourcelookup/SourceLookupUIMessages.properties40
-rw-r--r--debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/sourcelookup/UpAction.java62
-rw-r--r--debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/views/AbstractDebugEventHandler.java279
-rw-r--r--debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/views/AbstractDebugEventHandlerView.java77
-rw-r--r--debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/views/IDebugExceptionHandler.java25
-rw-r--r--debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/views/disassembly/DisassemblyAnnotationHover.java145
-rw-r--r--debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/views/disassembly/DisassemblyAnnotationModel.java202
-rw-r--r--debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/views/disassembly/DisassemblyDocumentProvider.java189
-rw-r--r--debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/views/disassembly/DisassemblyEditorInput.java349
-rw-r--r--debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/views/disassembly/DisassemblyInstructionPointerAnnotation.java79
-rw-r--r--debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/views/disassembly/DisassemblyMessages.java33
-rw-r--r--debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/views/disassembly/DisassemblyMessages.properties18
-rw-r--r--debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/views/disassembly/DisassemblyView.java956
-rw-r--r--debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/views/disassembly/DisassemblyViewEventHandler.java85
-rw-r--r--debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/views/disassembly/DisassemblyViewer.java60
-rw-r--r--debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/views/disassembly/DisassemblyViewerConfiguration.java56
-rw-r--r--debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/views/disassembly/IDisassemblyListener.java32
-rw-r--r--debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/views/memory/AddMemoryBlockDialog.java266
-rw-r--r--debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/views/memory/AddMemoryBlocks.java295
-rw-r--r--debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/views/memory/MemoryBlockLabelDecorator.java100
-rw-r--r--debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/views/memory/Messages.java36
-rw-r--r--debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/views/memory/messages.properties10
-rw-r--r--debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/views/modules/ModuleContentProvider.java70
-rw-r--r--debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/views/modules/ModuleLabelProvider.java76
-rw-r--r--debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/views/modules/ModuleMementoProvider.java75
-rw-r--r--debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/views/modules/ModuleProxyFactory.java32
-rw-r--r--debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/views/modules/ModulesMessages.java37
-rw-r--r--debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/views/modules/ModulesMessages.properties25
-rw-r--r--debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/views/modules/ModulesView.java960
-rw-r--r--debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/views/modules/ModulesViewEventHandler.java102
-rw-r--r--debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/views/modules/ModulesViewModelProxy.java46
-rw-r--r--debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/views/signals/SignalsMessages.java32
-rw-r--r--debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/views/signals/SignalsMessages.properties17
-rw-r--r--debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/views/signals/SignalsView.java228
-rw-r--r--debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/views/signals/SignalsViewContentProvider.java89
-rw-r--r--debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/views/signals/SignalsViewEventHandler.java59
-rw-r--r--debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/views/signals/SignalsViewer.java83
-rw-r--r--debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/ui/AbstractCDebuggerPage.java36
-rw-r--r--debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/ui/CDebugUIPlugin.java320
-rw-r--r--debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/ui/ICDebugUIConstants.java77
-rw-r--r--debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/ui/ICDebuggerPage.java36
-rw-r--r--debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/ui/UIMessages.java33
-rw-r--r--debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/ui/UIMessages.properties12
-rw-r--r--debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/ui/importexecutable/AbstractImportExecutableWizard.java280
-rw-r--r--debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/ui/importexecutable/ImportExecutablePageOne.java636
-rw-r--r--debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/ui/importexecutable/ImportExecutablePageTwo.java426
-rw-r--r--debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/ui/importexecutable/ImportExecutableWizard.java50
-rw-r--r--debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/ui/importexecutable/Messages.java92
-rw-r--r--debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/ui/importexecutable/messages.properties44
-rw-r--r--debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/ui/sourcelookup/DefaultSourceLocator.java96
-rw-r--r--debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/ui/sourcelookup/OldDefaultSourceLocator.java213
-rw-r--r--debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/ui/sourcelookup/SourceLookupMessages.java33
-rw-r--r--debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/ui/sourcelookup/SourceLookupMessages.properties20
1088 files changed, 0 insertions, 108209 deletions
diff --git a/debug/org.eclipse.cdt.debug.core.tests/.project b/debug/org.eclipse.cdt.debug.core.tests/.project
deleted file mode 100644
index 2514a86a71b..00000000000
--- a/debug/org.eclipse.cdt.debug.core.tests/.project
+++ /dev/null
@@ -1,11 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<projectDescription>
- <name>org.eclipse.cdt.debug.core.tests</name>
- <comment></comment>
- <projects>
- </projects>
- <buildSpec>
- </buildSpec>
- <natures>
- </natures>
-</projectDescription>
diff --git a/debug/org.eclipse.cdt.debug.core.tests/about.html b/debug/org.eclipse.cdt.debug.core.tests/about.html
deleted file mode 100644
index 9c7ba0a57bc..00000000000
--- a/debug/org.eclipse.cdt.debug.core.tests/about.html
+++ /dev/null
@@ -1,24 +0,0 @@
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml"><head>
-<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"><title>About</title></head>
-
-<body lang="EN-US">
-<h2>About This Content</h2>
-
-<p>May 2, 2006</p>
-<h3>License</h3>
-
-<p>The Eclipse Foundation makes available all content in this plug-in ("Content"). Unless otherwise
-indicated below, the Content is provided to you under the terms and conditions of the
-Eclipse Public License Version 1.0 ("EPL"). A copy of the EPL is available
-at <a href="http://www.eclipse.org/legal/epl-v10.html">http://www.eclipse.org/legal/epl-v10.html</a>.
-For purposes of the EPL, "Program" will mean the Content.</p>
-
-<p>If you did not receive this Content directly from the Eclipse Foundation, the Content is
-being redistributed by another party ("Redistributor") and different terms and conditions may
-apply to your use of any object code in the Content. Check the Redistributor's license that was
-provided with the Content. If no such license exists, contact the Redistributor. Unless otherwise
-indicated below, the terms and conditions of the EPL still apply to any source code in the Content
-and such source code may be obtained at <a href="http://www.eclipse.org/">http://www.eclipse.org</a>.</p>
-
-</body></html> \ No newline at end of file
diff --git a/debug/org.eclipse.cdt.debug.core/.classpath b/debug/org.eclipse.cdt.debug.core/.classpath
deleted file mode 100644
index 0cdb20b9d49..00000000000
--- a/debug/org.eclipse.cdt.debug.core/.classpath
+++ /dev/null
@@ -1,8 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<classpath>
- <classpathentry kind="src" path="src"/>
- <classpathentry kind="src" path="cdi"/>
- <classpathentry kind="con" path="org.eclipse.pde.core.requiredPlugins"/>
- <classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER"/>
- <classpathentry kind="output" path="bin"/>
-</classpath>
diff --git a/debug/org.eclipse.cdt.debug.core/.cvsignore b/debug/org.eclipse.cdt.debug.core/.cvsignore
deleted file mode 100644
index 693869726de..00000000000
--- a/debug/org.eclipse.cdt.debug.core/.cvsignore
+++ /dev/null
@@ -1,2 +0,0 @@
-bin
-doc
diff --git a/debug/org.eclipse.cdt.debug.core/.project b/debug/org.eclipse.cdt.debug.core/.project
deleted file mode 100644
index d42c04bc6a1..00000000000
--- a/debug/org.eclipse.cdt.debug.core/.project
+++ /dev/null
@@ -1,28 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<projectDescription>
- <name>org.eclipse.cdt.debug.core</name>
- <comment></comment>
- <projects>
- </projects>
- <buildSpec>
- <buildCommand>
- <name>org.eclipse.jdt.core.javabuilder</name>
- <arguments>
- </arguments>
- </buildCommand>
- <buildCommand>
- <name>org.eclipse.pde.ManifestBuilder</name>
- <arguments>
- </arguments>
- </buildCommand>
- <buildCommand>
- <name>org.eclipse.pde.SchemaBuilder</name>
- <arguments>
- </arguments>
- </buildCommand>
- </buildSpec>
- <natures>
- <nature>org.eclipse.jdt.core.javanature</nature>
- <nature>org.eclipse.pde.PluginNature</nature>
- </natures>
-</projectDescription>
diff --git a/debug/org.eclipse.cdt.debug.core/ChangeLog b/debug/org.eclipse.cdt.debug.core/ChangeLog
deleted file mode 100644
index 5bd30bfe9be..00000000000
--- a/debug/org.eclipse.cdt.debug.core/ChangeLog
+++ /dev/null
@@ -1,1838 +0,0 @@
-2006-09-11 Mikhail Khodjaiants
- Bugzilla Bug 156707: A failed operation (e.g., resume) can leave the CDebugTarget in an invalid run state.
- * CDebugTarget.java
-
-2006-08-29 Mikhail Khodjaiants
- Bug 155275: Exception when stepping.
- * CThread.java
-
-2006-08-14 Mikhail Khodjaiants
- Bug 136896: View variables in binary format.
- Applied modified patch from Mark Mitchell (CodeSourcery).
- * CValue.java
-
-2006-05-31 Mikhail Khodjaiants
- Bug 144719: [Modules view] Modules from from different sessions are mixed up.
- * CDebugElement.java
-
-2006-05-29 Mikhail Khodjaiants
- Bug 108472: Debug continues to fail.
- * DebugCoreMessages.properties
- * CDebugTarget.java
- * CoreModelMessages.properties
-
-2006-05-26 Mikhail Khodjaiants
- Bug 137138: Common source containers get disposed.
- * CSourceLookupParticipant.java
- * CSourcePathComputerDelegate.java
-
-2006-05-26 Mikhail Khodjaiants
- Bug 122010: Registers View is displayed even if supportsRegisters and
- supportsRegisterModification are disabled.
- Fix for supportsRegisterModification.
- * CRegister.java
-
-2006-05-19 Mikhail Khodjaiants
- Warning cleanup.
- * CBreakpointManager.java
-
-2006-05-12 Mikhail Khodjaiants
- Bug 118274: Condition is not shown in the tooltip of conditional breakpoint.
- * CDebugUtils.java
- * DebugCoreMessages.properties
- * BreakpointMessages.properties
- * CAddressBreakpoint.java
- * CFunctionBreakpoint.java
- * CLineBreakpoint.java
- * CWatchpoint.java
-
-2006-03-27 Mikhail Khodjaiants
- Moved the extraction of the stop symbol to the launch.
- * CDIDebugModel.java
- * CDebugTarget.java
-
-2006-03-06 Mikhail Khodjaiants
- Fix for Bug 93777: Postmortem and Local launch need a default preference for selected debugger.
- * CDebugCorePlugin.java
- * ICDebugConstants.java
-
-2006-02-27 Mikhail Khodjaiants
- All serializable objects should have a stable serialVersionUID.
- * CDIException.java
-
-2006-02-27 Mikhail Khodjaiants
- The DirectorySourceContainer's UI now supports the subfolders searching option (see bug 89748).
- Removed CDirectorySourceContainer and related classes.
- The CDirectorySourceContainerType is kept for migration purposes.
- - CDirectorySourceContainer.java
- * CDebugTarget.java
- * CDirectorySourceContainerType.java
- * CSourceLookupDirector.java
- * SourceUtils.java
- * plugin.properties
- * plugin.xml
-
-2006-02-24 Mikhail Khodjaiants
- Fix for bugs 129152 (Keyboard shortcuts are gone in CDT CVS HEAD)
- and 128844 (No prompt for Debug perspective on suspend).
- * CDebugTarget.java
-
-2006-02-20 Mikhail Khodjaiants
- Fire the resume event instead of the change event when a non-current thread is resumed.
- * CThread.java
-
-2006-02-20 Mikhail Khodjaiants
- CModuleManager needs to extend PlatformObject to be accessible as an adapter
- for IModuleRetrival.
- * CModuleManager.java
-
-2006-02-08 Mikhail Khodjaiants
- Bug 126958: wrong state setting for thread in CThread.handleResumeEvent().
- * CThread.java
-
-2006-01-30 Mikhail Khodjaiants
- Bug 125603: Debugger don't stop on breakpoints if src is linked.
- * CSourceLookupDirector.java
-
-2006-01-29 Mikhail Khodjaiants
- Bug 118894: Allow stopping at other locations other than main().
- Applied patch from Ken Ryall (Nokia).
- * ICDTLaunchConfigurationConstants.java
- * CDebugTarget.java
-
-2006-01-23 Mikhail Khodjaiants
- Bug 119683: long messages during launch cause gdb to timeout, launch to fail.
- New "createSession" method accepts File instead of IBinaryObject.
- * ICDIDebugger.java
- + ICDIDebugger2.java
-
-2006-01-15 Mikhail Khodjaiants
- Bug 123745: Disassembly view can get into endless loop.
- * DisassemblyBlock.java
-
-2006-01-04 Mikhail Khodjaiants
- Bug 118900: Display libraries loaded in post-mortem debug.
- * CDebugTarget.java
- * CModuleManager.java
-
-2005-12-30 Mikhail Khodjaiants
- Cleanup.
- * CModule.java
- * CThread.java
- * CValue.java
-
-2005-12-29 Mikhail Khodjaiants
- Temporary fix for bug 122344: Memory monitors are not shown in the Memory view.
- * CMemoryBlockRetrievalExtension.java
-
-2005-12-29 Mikhail Khodjaiants
- Bug 122336: Use the asynchronous tree viewer in the Modules view.
- Grouped the modules-related methods of ICDebugTarget under the
- new IModuleRetrieval interface.
- * ICDebugTarget.java
- + IModuleRetrieval.java
- * CDebugElement.java
- * CDebugTarget.java
- * CModuleManager.java
-
-2005-12-27 Mikhail Khodjaiants
- Bug 109526: Support Eclipse-LazyStart and deprecate Eclipse-AutoStart.
- * MANIFEST.MF
-
-2005-12-16 Mikhail Khodjaiants
- Bug 118809: Failure to evaluate stack frame.
- Previous fix didn't work for stack depths > 100.
- * CThread.java
-
-2005-12-08 Mikhail Khodjaiants
- Bug 118809: Failure to evaluate stack frame.
- * CThread.java
-
-2005-11-28 Mikhail Khodjaiants
- Bug 118272: Invalid stack trace when stepping out of function.
- * CThread.java
-
-2005-11-07 Mikhail Khodjaiants
- Bug 115385: Pointer to a structure is not updated correctly
- * CVariable.java
-
-2005-10-24 Mikhail Khodjaiants
- Fix for bugs 112008 and 111828.
- Applied modified patch from Matthias Spycher (matthias@coware.com).
- * CBreakpointManager.java
-
-2005-09-30 Mikhail Khodjaiants
- Partial fix for bug 109950: Major crash and stack overflow if two projects reference each other.
- * CDebugTarget.java
- * CSourceLookupDirector.java
-
-2005-09-16 Mikhail Khodjaiants
- Bug 109785: "mi_cmd_var_create: unable to create variable object" when stepping out of stack frame.
- * CStackFrame.java
-
-2005-09-09 Mikhail Khodjaiants
- Bug 109206: Last register group is not added if it has only one register.
- * CRegisterManager.java
-
-2005-09-06 Mikhail Khodjaiants
- Cleanup: replaced "new Boolean" by the static Boolean objects (Java 1.4).
- * CDebugUtils.java
- * CDIDebugModel.java
- * CBreakpointManager.java
- * CDebugTarget.java
- * CGlobalValue.java
- * CRegisterGroup.java
- * CDirectorySourceLocation.java
- * CProjectSourceLocation.java
- * CSourceLocator.java
-
-2005-09-06 Mikhail Khodjaiants
- Bug 108636: mi level selection option should be moved to the gdb page.
- * ICDTLaunchConfigurationConstants.java
-
-2005-09-01 Mikhail Khodjaiants
- Bug 108424: Debugger stops on removed breakpoints.
- * CBreakpointManager.java
-
-2005-08-25 Mikhail Khodjaiants
- Bug 106241: Argument stopInMain has no impact in method org.eclipse.cdt.debug.core.CDIDebugModel#newDebugTarget.
- * CDIDebugModel.java
-
-2005-08-25 Mikhail Khodjaiants
- Bug 108028: Duplicate watchpointes.
- * CBreakpointManager.java
-
-2005-08-23 Mikhail Khodjaiants
- Bug 107787: Casting variable to array causes NPE.
- * CIndexedValue.java
-
-2005-08-04 Alain Magloire
- ClastCastException being throw in CThread.getAdapter(IRunToLine.class);
- Patch solution to ignore the exception.
-
- * src/org/eclipse/cdt/debug/internal/core/model/CThread.java
-
-2005-07-29 Mikhail Khodjaiants
- The registers with errors shouldn't be disposed when the target is suspended.
- Added synchronization to the "getRegisters" method.
- * CRegisterGroup.java
-
-2005-07-28 Mikhail Khodjaiants
- Bug 104421: Register view can not show correct value when switch between different thread or stack frame.
- * ICDIRegister.java
- * ICDIStackFrame.java
- * ICDITarget.java
- * ICDIThread.java
- * ICDIVariable.java
- * ICDIVariableDescriptor.java
- * CRegisterManager.java
- * CExpression.java
- * CGlobalVariable.java
- * CIndexedValue.java
- + CLocalVariable.java
- * CRegister.java
- * CRegisterGroup.java
- * CStackFrame.java
- * CValue.java
- * CVariable.java
- * CVariableFactory.java
-
-2005-07-28 Mikhail Khodjaiants
- Bug 103567: breakpoints view of of sync w/CDT CVS HEAD
- * CBreakpointManager.java
-
-2005-07-26 Mikhail Khodjaiants
- Bug 105224: Two identical directory source container types.
- * plugin.properties
-
-2005-07-26 Mikhail Khodjaiants
- Bug 102929: Race conditions when setting breakpoints at launch.
- The initial breakpoint settings, stop in main and resume are batched
- in one job. This garantees the right order of commands sent to the backend.
- * CDIDebugModel.java
- * CBreakpointManager.java
- * CDebugTarget.java
-
-2005-07-22 Alain Magloire
- Fix to Copyright.
- * src/org/eclipse/cdt/debug/internal/core/CBreakpointManager.java
-
-2005-07-18 Alain Magloire
- new launch constant for the MI protocol
- * src/org/eclipse/cdt/debug/core/ICDTLaunchConfigurationConstants.java
-
-2005-07-14 Mikhail Khodjaiants
- Bug 103917: NPE in Variables View.
- * AbstractCValue.java
-
-2005-07-14 Mikhail Khodjaiants
- Bug 103784: NPE in source lookup.
- * CSourceLookupDirector.java
-
-2005-07-11 Mikhail Khodjaiants
- Bug 94770: Breakpoint marker messages need formatting.
- * BreakpointMessages.properties
- * CAddressBreakpoint.java
- * CFunctionBreakpoint.java
- * CLineBreakpoint.java
- * CWatchpoint.java
-
-2005-07-11 Mikhail Khodjaiants
- Bug 102077: The DebugLabelViewDecorato asking info out of context.
- Added a new flag to CVariable indicate the disposed state and prevent target requests.
- * CExpression.java
- * CGlobalVariable.java
- * CVariable.java
-
-2005-07-11 Mikhail Khodjaiants
- Bug 102563: Break points not working.
- Temporary switching back to use file names instead of full paths.
- * CBreakpointManager.java
-
-2005-07-10 Mikhail Khodjaiants
- Bug 103173: Register: user created register groups disappear after debug session restart.
- * CRegisterManager.java
-
-2005-07-08 Mikhail Khodjaiants
- Filter breakpoints before setting using the source lookup mechanism.
- * CBreakpointManager.java
- * CSourceLookupDirector.java
-
-2005-07-08 Mikhail Khodjaiants
- Bug 79371: Setting breakpoints in the left hand side ruler of the disassembly view is sluggish.
- Asynchronous breakpoint handling.
- * CBreakpointManager.java
- * InternalDebugCoreMessages.properties
- * CDebugTarget.java
-
-2005-07-04 Mikhail Khodjaiants
- Removed the "IBreakpointTarget" interface.
- - IBreakpointTarget.java
- * ICDebugTarget.java
- * CDebugTarget.java
-
-2005-06-29 Mikhail Khodjaiants
- Bug 41725: I can't set a breakpoint in a function where I used attach source.
- Bug 45514: Breakpoints made is assembly view do not show in C view.
- * CDIDebugModel.java
- * IAsmSourceLine.java
- * ICBreakpoint.java
- * IDisassemblyBlock.java
- * CBreakpointManager.java
- * CBreakpoint.java
- * AsmSourceLine.java
- * DisassemblyBlock.java
-
-2005-06-28 Mikhail Khodjaiants
- Bug 101188: Breakpoints don't work with MingW gdb.
- Use "toPortableString" instead of "toOsString" when setting the source search paths.
- * CDebugTarget.java
-
-2005-06-27 Alain Magloire
- Change in ICDIReferenceValue.
- * cdi/org/eclipse/cdt/debug/core/cdi/model/type/ICDIReferenceValue.java
- * src/org/eclipse/cdt/debug/internal/core/model/CValue.java
-
-2005-05-27 Alain Magloire
- Use the fCDIVariable instead of fCDIVariableObject when possible.
- * src/org/eclipse/cdt/debug/internal/core/model/CVariable.java
-
-2005-05-23 Mikhail Khodjaiants
- Bug 100756: Breakpoints listed twice in Breakpoints view.
- * CBreakpointManager.java
-
-2005-05-21 Mikhail Khodjaiants
- Minor refactoring.
- * CMemoryBlockExtension.java
-
-2005-05-21 Mikhail Khodjaiants
- Bug 91374: CDT launch should set ATTR_PROCESS_TYPE.
- * ICDTLaunchConfigurationConstants.java
-
-2005-06-20 Mikhail Khodjaiants
- Bug 93856: Variable View: Should disable change value options if selected item is not changeable.
- * CVariable.java
-
-2005-06-17 Mikhail Khodjaiants
- Bug 99217: NPE thrown when fetching deffered children.
- * CExpression.java
- * CValueFactory.java
- * CVariable.java
-
-2005-06-17 Mikhail Khodjaiants
- Bug 100261: Memory veiw: Renderings content disappears when click on Vairable/Module... view.
- * CDebugElement.java
-
-2005-06-16 Mikhail Khodjaiants
- Bug 100471: Signed/Unsigned Integer renderings show '?' for valid memory blocks.
- * CMemoryBlockExtension.java
-
-2005-06-16 Mikhail Khodjaiants
- Bug 100445: The endianess of a debug target is reversed.
- * CMemoryBlockExtension.java
-
-2005-06-16 Mikhail Khodjaiants
- Partial fix for bug 79371: Setting breakpoints in the left hand side ruler of the disassembly view is sluggish.
- * CBreakpointManager.java
-
-2005-06-14 Mikhail Khodjaiants
- Bug 98814: NullPointerException and failed to launch debug session for a project.
- * CDebugTarget.java
-
-2005-06-13 Mikhail Khodjaiants
- Temporary fix for bug 77279: The memory view address should not be cleared on project restart.
- * ICDTLaunchConfigurationConstants.java
- * CMemoryBlockRetrievalExtension.java
- * InternalDebugCoreMessages.properties
- * CDebugTarget.java
-
-2005-06-12 Mikhail Khodjaiants
- Temporary fix for bug 79872: Make instruction stepping default in disassembly view.
- * ICDebugConstants.java
- * CDebugCorePreferenceInitializer.java
- * CDebugTarget.java
-
-2005-06-09 Mikhail Khodjaiants
- Bug 94139: User-defined register groups.
- Don't save the list of registers for default groups.
- * CRegisterManager.java
-
-2005-06-09 Mikhail Khodjaiants
- Bug 94139: User-defined register groups.
- Support fo the "Restore Default Register Groups" action.
- * ICDebugTarget.java
- * CRegisterManager.java
- * CDebugTarget.java
-
-2005-06-07 Mikhail Khodjaiants
- Bug 94139: User-defined register groups.
- Support fo the "Edit Register Group" action.
- * ICDebugTarget.java
- * IPersistableRegisterGroup.java
- * CRegisterManager.java
- * CDebugTarget.java
- * CRegisterGroup.java
-
-2005-06-07 Mikhail Khodjaiants
- The endianness flag is not chached.
- * CDebugTarget.java
-
-2005-06-06 Mikhail Khodjaiants
- Bug 98594: Unable to set address breakpoints.
- * CBreakpointManager.java
-
-2005-05-24 Mikhail Khodjaiants
- Bug 88558: run-to-line not thread oriented.
- The IRunTo* and IJumpTo* interfaces moved to ICStackFrame.
- * ICDebugTarget.java
- * ICStackFrame.java
- * CDebugTarget.java
- * CStackFrame.java
- * CThread.java
-
-2005-05-20 Mikhail Khodjaiants
- Bug 94139: User-defined register groups.
- Added API and group serialization.
- * ICDTLaunchConfigurationConstants.java
- - ICRegisterManager.java
- * ICDebugTarget.java
- + IPersistableRegisterGroup.java
- + IRegisterDescriptor.java
- * CRegisterManager.java
- * InternalDebugCoreMessages.properties
- * CDebugTarget.java
- * CoreModelMessages.properties
- * CRegister.java
- + CRegisterDescriptor.java
- * CRegisterGroup.java
-
-2005-05-12 Mikhail Khodjaiants
- Bug 94905: Error examining structure contents in debugger.
- The structure's elements should inherit the enablement flag from parents.
- * CVariable.java
-
-2005-04-25 Mikhail Khodjaiants
- Update the source search path of the underlyuing debugger when the source
- containers are changed.
- + ISourceLookupChangeListener.java
- * CDebugTarget.java
- * CSourceLookupParticipant.java
-
-2005-04-27 Alain Magloire
- Change in the CDI interface
- * cdi/org/eclipse/cdt/debug/core/cdi/model/ICDISourceManagent.java
-
-2005-04-25 Mikhail Khodjaiants
- Added the new source container type (CDirectorySourceContainer) to provide
- the UI support for the subfolders search.
- + CDirectorySourceContainer.java
- + CDirectorySourceContainerType.java
- * CSourceLookupDirector.java
- * SourceUtils.java
- * InternalSourceLookupMessages.properties
- * plugin.properties
- * plugin.xml
-
-2005-04-25 Alain Magloire
- Changes to the CDI interface.
- + cdi/org/eclipse/cdt/debug/core/cdi/ICDIAddressLocation.java
- + cdi/org/eclipse/cdt/debug/core/cdi/ICDIFileLocation.java
- + cdi/org/eclipse/cdt/debug/core/cdi/ICDIFunctionLocation.java
- + cdi/org/eclipse/cdt/debug/core/cdi/ICDILineLocation.java
- + cdi/org/eclipse/cdt/debug/core/cdi/ICDLocator.java
- * cdi/org/eclipse/cdt/debug/core/cdi/ICDLocation.java
- + cdi/org/eclipse/cdt/debug/core/cdi/model/ICDIAddressBreakpoint.java
- + cdi/org/eclipse/cdt/debug/core/cdi/model/ICDILineBreakpoint.java
- + cdi/org/eclipse/cdt/debug/core/cdi/model/ICDIFunctionBreakpoint.java
- * cdi/org/eclipse/cdt/debug/core/cdi/model/ICDIBreapoint.java
- * cdi/org/eclipse/cdt/debug/core/cdi/model/ICDBreakpointManagement.java
- * cdi/org/eclipse/cdt/debug/core/cdi/model/ICDILocationBreakpoint.java
- * cdi/org/eclipse/cdt/debug/core/cdi/model/ICDIStackFrame.java
- * cdi/org/eclipse/cdt/debug/core/cdi/model/ICDITarget.java
-
- * src/org/eclipse/cdt/debug/core/CDIDebugModel.java
- * src/org/eclipse/cdt/debug/internal/core/CBreakpointManager.java
- * src/org/eclipse/cdt/debug/internal/core/model/CDebugTarget.java
- * src/org/eclipse/cdt/debug/internal/core/model/CStackFrame.java
-
-2005-04-21 Mikhail Khodjaiants
- Restoring the session manager.
- * CDebugCorePlugin.java
- * SessionManager.java
-
-2005-04-21 Mikhail Khodjaiants
- Cleanup. Removed the session manager from the CDebugCorePlugin class.
- * CDebugCorePlugin.java
-
-2005-04-21 Mikhail Khodjaiants
- Bug 80175: Replace the CDT source lookup by the source lookup provided by Eclipse platform.
- * CDebugCorePlugin.java
- * MappingSourceContainer.java
- * SourceLookupMessages.java: new
- * SourceLookupMessages.properties: new
- * CBreakpointManager.java
- * ICDebugInternalConstants.java
- * CommonSourceLookupDirector.java: new
- * CSourceLookupDirector.java
- * CSourceLookupParticipant.java
- * CSourcePathComputerDelegate.java
- * InternalSourceLookupMessages.properties
- * MapEntrySourceContainer.java
- * MapEntrySourceContainerType.java
- * MappingSourceContainerType.java
- * SourceUtils.java
-
-2005-04-15 Alain Magloire
- Fix Pr 91581
- * src/org/eclipse/cdt/debug/internal/core/breakpoint/CAddressBreakpoint.java
-
-2005-04-07 Mikhail Khodjaiants
- Move to Eclipse-31M6.
- * CMemoryBlockRetrievalExtension.java
- * CMemoryBlockExtension.java
-
-2005-04-07 Mikhail Khodjaiants
- Bug 89755: CThread.suspend suspends target, not thread.
- * CThread.java
-
-2005-04-04 Alain Magloire
- Move to Eclipse-31M6
- - src/org/eclipse/cdt/debug/internal/core/CMemoryBlockExtensionRetrieval.java
- + src/org/eclipse/cdt/debug/internal/core/CMemoryBlockRetrievalExtension.java
- * src/org/eclipse/cdt/debug/internal/core/model/CDebugTarget.java
- * src/org/eclipse/cdt/debug/internal/core/model/CMemoryBlockExtension.java
-
-2005-03-24 Alain Magloire
- * cdi/org/eclipse/cdt/debug/core/cdi/model/ICDIMemoryBlock.java
- * cdi/org/eclipse/cdt/debug/core/cdi/model/ICDIMemoryBlockManagement.java
- * src/org/eclipse/cdt/debug/internal/core/model/CMemoryBlockExtension.java
-
-2005-03-23 Alain Magloire
- Change is the ICDIMemoryBlock&& ICDIMemoryManagement API
- * cdi/org/eclipse/cdt/debug/core/cdi/model/ICDIMemoryBlock.java
- * cdi/org/eclipse/cdt/debug/core/cdi/model/ICDIMemoryBlockManagement.java
- * src/org/eclipse/cdt/debug/internal/core/model/CMemoryBlockExtension.java
-
-2005-03-21 Mikhail Khodjaiants
- Bug 80175: Replace the CDT source lookup by the source lookup provided by Eclipse platform.
- * MappingSourceContainer.java: new
- * DisassemblyBlock.java
- * CSourceLookupDirector.java: new
- * CSourceLookupParticipant.java: new
- * CSourcePathComputerDelegate.java: new
- * MapEntrySourceContainer.java: new
- * MapEntrySourceContainerType.java: new
- * MappingSourceContainerType.java: new
- * plugin.properties
- * plugin.xml
-
-2005-03-17 Mikhail Khodjaiants
- If casting of variable to a type or array causes an error, the status
- of the variable is set to "error" and it can't be reset by subsequent castings.
- * CVariable.java
-
-2005-02-24 Mikhail Khodjaiants
- Applied patch from Tracy Miranda (bug 86540: NPE in CProjectSourceLocation).
- Check for the project and synchronization are added to "initializeFolders".
- * CProjectSourceLocation.java
-
-2005-02-22 Mikhail Khodjaiants
- Bug 84799: Implement Memory View and renderings with new rendering APIs.
- * CMemoryBlockExtensionRetrieval.java
-
-2005-02-18 Mikhail Khodjaiants
- Remove.
- * cdi/org/eclipse/cdt/debug/core/cdi/ICDIManager.java
-
-2005-02-17 Mikhail Khodjaiants
- Bug 82264: Enhance the Shared Libraries view.
- Removed the core support of the Shared Libraries view.
- * ICSharedLibraryManager.java: removed
- * ICDebugTarget.java
- * ICSharedLibrary.java: removed
- * CSharedLibraryManager.java; removed
- * CDebugTarget.java
- * CSharedLibrary.java: removed
-
-2005-02-16 Mikhail Khodjaiants
- Bug 82264: Enhance the Shared Libraries view.
- Cleanup of the ICModule interface.
- * ICModule.java
- * CModule.java
-
-2005-02-15 Mikhail Khodjaiants
- Bug 82264: Enhance the Shared Libraries view.
- Support for the symbols loading operations.
- * CModule.java
- * CoreModelMessages.properties
-
-2005-02-14 Mikhail Khodjaiants
- Bug 82264: Enhance the Shared Libraries view.
- Support for the symbols loading operations.
- * ICModule.java
- * CModule.java
- * CoreModelMessages.properties
-
-2005-02-11 Mikhail Khodjaiants
- Bug 82264: Enhance the Shared Libraries view.
- Added new "getCPU" method to ICModule.
- * ICModule.java
- * CModule.java
-
-2005-02-07 Mikhail Khodjaiants
- Bug 82264: Enhance the Shared Libraries view.
- Core support for the Modules view.
- * ICDebugTarget.java
- * ICModule.java: new
- * CoreModelMessages.properties
- * CDebugTarget.java
- * CModule.java: new
- * CModuleManager.java: new
-
-2005-02-03 Mikhail Khodjaiants
- Fix for bug 84187: "Toggle Watchpoint" and "Toggle Method Breakpoint" don't work with C editor.
- ICWatchpoint should extend ILineBreakpoint to allow watchpoints to be shown in editors.
- * ICWatchpoint.java
- * CWatchpoint.java
-
-2005-02-03 Mikhail Khodjaiants
- Fix for bug 84187: "Toggle Watchpoint" and "Toggle Method Breakpoint" don't work with C editor.
- * CDIDebugModel.java
-
-2005-02-02 Mikhail Khodjaiants
- Fix for bug 84187: "Toggle Watchpoint" and "Toggle Method Breakpoint" don't work with C editor.
- Added new "createWatchpoint" method that accepts position information.
- * CDIDebugModel.java
-
-2005-01-19 Mikhail Khodjaiants
- Fix for bug 83051: Add global variables deletes existing ones when new added.
- * ICGlobalVariableManager.java
- * CGlobalVariableManager.java
- * CVariableFactory.java
-
-2005-01-18 Mikhail Khodjaiants
- Fix for bug 82858: NPE when adding global variable to variable view.
- * CDebugTarget.java
- * CVariableFactory.java
-
-2005-01-18 Mikhail Khodjaiants
- Fix for bug 82800: Make "Resume At Line" action retargettable.
- CDebugElement should provide an adapter to ICDebugTarget.
- * CDebugElement.java
-
-2005-01-18 Mikhail Khodjaiants
- Fix for bug 82800: Make "Resume At Line" action retargettable.
- CStackFrame should provide an adapter to IJumpToLine and IJumpToAddress.
- * CStackFrame.java
-
-2005-01-12 Mikhail Khodjaiants
- Bug 73168: Use memory view provided by Eclipse platform in CDT.
- Removed the old memory view.
- * CDebugCorePlugin.java
- * CDebugModel.java: removed
- * ICMemoryManager.java: removed
- * IFormattedMemoryBlock.java: removed
- * IFormattedMemoryBlockRow.java: removed
- * CMemoryManager.java: removed
- * CSignalManager.java
- * CDebugTarget.java
- * CFormattedMemoryBlock.java: removed
-
-2005-01-12 Mikhail Khodjaiants
- Fix bug 82601: Enhance the ICDIMemoryBlock interface.
- * CMemoryBlockExtension.java
-
-2005-01-10 Mikhail Khodjaiants
- PR 82601 changes to the memory block interface
- * cdi/org/eclipse/cdt/debug/core/cdi/model/ICDIMemoryBlock.java
-
-2005-01-11 Mikhail Khodjaiants
- Use the asynchronous implementation for resume, suspend, step etc provided by eclipse 3.1.
- * CDebugTarget.java
- * CThread.java
- * CoreModelMessages.properties
-
-2005-01-10 Mikhail Khodjaiants
- Use the asynchronous implementation for resume, suspend, step etc provided by eclipse 3.1.
- * CDebugTarget.java
- * CThread.java
- * CoreModelMessages.properties
-
-2005-01-10 Mikhail Khodjaiants
- Bug 73168: Use memory view provided by Eclipse platform in CDT.
- * ICType.java
- * CType.java
- * CMemoryBlockExtension.java
- * CMemoryBlockExtensionRetrieval.java
-
-2005-01-04 Mikhail Khodjaiants
- Fix for bug 82184: arrayboundsexception on display of array variable.
- * CIndexedValue.java
-
-2004-12-23 Mikhail Khodjaiants
- Cleanup.
- * CMemoryBlockExtension.java
-
-2004-12-22 Mikhail Khodjaiants
- Fix for bug 75948: Provide "breakpoint type name" for C breakpoints.
- Applied patch from Jared Burns.
- * plugin.properties
- * plugin.xml
-
-2004-12-22 Mikhail Khodjaiants
- Fix for bug 73168: Use memory view provided by Eclipse platform in CDT.
- The CMemoryBlockextension is used as an adapter to "IMemoryBlockRetrieval".
- * CMemoryBlockExtension.java
-
-2004-12-21 Mikhail Khodjaiants
- Switch to the new memory view interfaces (Eclipse 3.1).
- * InternalDebugCoreMessages.properties
- * CMemoryBlockExtensionRetrieval.java: new
- * CExtendedMemoryBlockRetrieval.java: deleted
- * CDebugTarget.java
- * CMemoryBlockExtension.java: new
- * CExtendedMemoryBlock.java: deleted
-
-2004-12-20 Mikhail Khodjaiants
- Fix for bug 81698: NumberFormatException in CValue.
- * CValue.java
-
-2004-12-16 Mikhail Khodjaiants
- Fix for bug 81381: Deadlock when single stepping.
- * CThread.java
-
-2004-12-08 Mikhail Khodjaiants
- Fix for bug 79678: NPE in Expression.
- * CExpression.java
-
-2004-12-01 Mikhail Khodjaiants
- New fix for bug 80034: Expressions view does not display correct no. of elements in array.
- * CValueFactory.java
- * CExpression.java
-
-2004-12-03 Mikhail Khodjaiants
- Fix for bug 62659: Unable to set default for register format via plugin_customization.ini.
- * CDebugCorePreferenceInitializer.java: new
- * plugin.xml
-
-2004-12-03 Mikhail Khodjaiants
- Fix for bug 80106: Terminating during stepping state caused exception in CDT.
- * CThread.java
-
-2004-12-01 Mikhail Khodjaiants
- Partial fix for bug 77444: CDT does not handle address breakpoints across sessions.
- * CBreakpointManager.java
-
-2004-12-01 Mikhail Khodjaiants
- Fix for bug 80034: Expressions view does not display correct no. of elements in array.
- * CValueFactory.java
-
-2004-12-01 Mikhail Khodjaiants
- Fix for bug 79454: Unable to remove a breakpoint set from the gdb console.
- * CBreakpointManager.java
-
-2004-12-01 Mikhail Khodjaiants
- Fix for bug 74043: Overaggressive exception reporting?
- * CBreakpointManager.java
-
-2004-11-26 Mikhail Khodjaiants
- Fix for bug 79608: NPE in CValue.
- * CValue.java
-
-2004-11-26 Mikhail Khodjaiants
- Fix for bug 79377: "Mixed disassembly" should fall back to disassembly w/o source when mixed disassembly fails.
- * Disassembly.java
-
-2004-11-26 Mikhail Khodjaiants
- Fix for bug 79583: Deffered breakpoints and shared library events.
- * CSharedLibraryManager.java
-
-2004-11-25 Mikhail Khodjaiants
- Fix for bug 79452: Unable to set a breakpoint on a class method.
- * CDebugUtils.java: cleanup.
- * CBreakpointManager.java
-
-2004-11-25 Mikhail Khodjaiants
- The "decrementInstallCount" method of IBreakpoint should be called from the UI thread.
- Replaced the "breakpointRemoved" method of ICBreakpointListener by the "breakpointsRemoved"
- method that accepts multiple breakpoints.
- * ICBreakpointListener.java
- * CBreakpointManager.java
- * CBreakpointNotifier.java
-
-2004-11-24 Alain Magloire
-
- Use the ICDITarget.deleteAllBreakpoints() for speed.
- * org/eclipse/cdt/debug/internal/core/CBreakpointManager.java
-
-2004-11-24 Mikhail Khodjaiants
- Do not request to dispose local variables when the target is resumed.
- * CExpression.java
- * CGlobalVariable.java
- * CVariable.java
-
-2004-11-23 Mikhail Khodjaiants
- The enablement of the step actions is calculated in the UI thread. This causes
- the UI locks for slow or unresponsive targets. Use the cached stack frames to
- calculate the enablement instead of requesting gdb.
- * CThread.java
-
-2004-11-22 Mikhail Khodjaiants
- Check if the pointer value is not null before pass it to the address factory.
- * CValue.java
-
-2004-11-18 Mikhail Khodjaiants
- Worker threads can try to evaluate expressions on the stack frames that
- have already been disposed. A flag is added to identify that the stack
- frame is disposed.
- * CStackFrame.java
-
-2004-11-19 Alain Magloire
-
- Clear the confusion about sublist of stackframes.
- PR 78611
-
- * cdi/org/eclipse/cdt/debug/core/cdi/model/ICDIStackFrame.java
- * cdi/org/eclipse/cdt/debug/core/cdi/model/ICDIThread.java
- * src/org/eclipse/cdt/debug/internal/model/CThread.java
-
-2004-11-17 David Inglis
-
- Change debug target to use IBinaryObject instead of IBinaryExecutable
-
- * src/org/eclipse/cdt/debug/core/CDIDebugModel.java
- * src/org/eclipse/cdt/debug/core/ICDIDebugger.java
- * src/org/eclipse/cdt/debug/core/model/IExecFileInfo.java
- * src/org/eclipse/cdt/debug/internal/core/CDebugAdapter.java
- * src/org/eclipse/cdt/debug/internal/core/model/CDebugTarget.java
-
-2004-11-16 Alain Magloire
- Optimize things by providing a new method
- ICDIRegisterGroup.hasRegisters();
- * cdi/org/eclipse/cdt/debug/core/cdi/model/ICDIRegisterGroup.java
- * src/org/eclipse/cdt/debug/internal/core/model/CRegisterGroup.java
-
-2004-11-15 Mikhail Khodjaiants
- Fix for bug 78604: Disassembly causes Java exception when disassembling beyond fn(?).
- Added the "getAddressFactory" method to the "IDisassembly" interface.
- * IDisassembly.java
- * Disassembly.java
-
-2004-11-15 Mikhail Khodjaiants
- Batch breakpoint updates in one job.
- * CBreakpointManager.java
-
-2004-11-12 Mikhail Khodjaiants
- Apply the breakpoint's condition changes to the associated gdb breakpoint
- only if there are differences.
- * CBreakpointManager.java
-
-2004-11-12 Mikhail Khodjaiants
- Compare breakpoint source handles as pathes.
- * CDIDebugModel.java
-
-2004-11-11 Alain Magloire
- Fix for PR 75000, from PalmSource
- * cdi/org/eclipse/cdt/debug/core/cdi/model/ICDIVariable.java
-
-2004-11-10 Mikhail Khodjaiants
- Fix for bug 76340: CDT hogs Windows input loop when double clicking on a breakpoint.
- * InternalDebugCoreMessages.properties
- * CBreakpointManager.java
-
-2004-11-09 Mikhail Khodjaiants
- Fix for bug 77275: Disassembly causes Java exception for fn's with 0 bytes fn prologues.
- * DisassemblyBlock.java
-
-2004-11-09 Mikhail Khodjaiants
- Partial fix for bug 41725: I can't set a breakpoint in a function where I used attach source.
- * CBreakpointManager.java
-
-2004-11-09 Alain Magloire
- Put possiblity to set Exception breakpoint
- * cdi/org/eclipse/cdt/debug/core/cdi/ICDIBreakpointManagement.java
-
-2004-11-08 Alain Magloire
- Bug in CVariableFactory for globals, the filename of the
- binary was use instead of the filename of the symbol.
- * src/org/eclipse/cdt/debug/internal/core/model/CVariableFactory.java
-
-2004-11-08 Alain Magloire
- New class ICDIFunctionFinished.
- It return the return value of the function.
- * cdi/org/eclipse/cdt/debug/core/cdi/ICDIFunctionFinished.java
-
-2004-11-04 Mikhail Khodjaiants
- Removed "Refresh" and "Auto-Refresh" actions support for shared libraries.
- * ICDebugConstants.java
- * ICSharedLibraryManager.java
- * CSharedLibraryManager.java
- * ICUpdateManager.java: removed
- * CUpdateManager.java: removed
-
-2004-11-04 Mikhail Khodjaiants
- Removed "Refresh" and "Auto-Refresh" actions support for registers.
- * ICDebugConstants.java
- * ICRegisterManager.java
- * CRegisterManager.java
-
-2004-11-04 Mikhail Khodjaiants
- No need of "ICSignalManager".
- * ICSignalManager.java: removed
- * CSignalManager.java
- * CDebugTarget.java
-
-2004-11-04 Mikhail Khodjaiants
- CSignalManager no longer extends CUpdateManager.
- * CSignalManager.java
-
-2004-11-03 Mikhail Khodjaiants
- New implementation of expressions.
- Large arrays partitioning based on the framework model.
- * CoreModelMessages.properties
- * AbstractCValue.java
- * CExpression.java
- * CIndexedValue.java: new
- * CValue.java
- * CValueFactory.java
- * CVariable.java
- * CArrayPartition.java: removed
- * CArrayPartitionValue.java: removed
-
-2004-11-02 Alain Magloire
- Refactor ICDIConfiguratio --> ICDISessionConfiguration and ICDITargetConfiguration
- * cdi/org/eclipse/cdt/debug/core/cdi/ICDISession.java
- * cdi/org/eclipse/cdt/debug/core/cdi/ICDISessionConfiguration.java
- * cdi/org/eclipse/cdt/debug/core/cdi/model/ICDITarget.java
- * cdi/org/eclipse/cdt/debug/core/cdi/model/ICDITargetConfiguration.java
-
- * src/org/eclipse/cdt/debug/core/CDIDebugModel.java
- * src/org/eclipse/cdt/debug/interternal/core/model/CDIDebugTarget.java
- * src/org/eclipse/cdt/debug/interternal/core/model/CThread.java
-
-2004-11-1 David Inglis
-
- Fixed bogus exception with older CDI debuggers.
-
- * src/org/eclipse/cdt/debug/internal/core/CDebugAdapter.java
-
-2004-10-31 Alain Magloire
- Refactor ICDIVariableObject --> ICDIVariableDescriptor
- Refactor ICDIArgumentObject --> ICDIArgumentDescriptor
- Refactor ICDIRegisterObject --> ICDIRegisterDescriptor
- Addition ICDIThreadStorageDescriptor, ICDIThreadStorage
- Addition ICDILocalVariableDescriptor, ICDILocalVariable
- Addition ICDIGlobalVariableDescriptor, ICDIGlovalVariable
-
- Adjust the classes to the changes.
-
-2004-10-29 Mikhail Khodjaiants
- Use the new expression API of CDI.
- * CDebugModel.java
- * CDIDebugModel.java
- * CGlobalVariableManager.java
- * AbstractCValue.java
- * AbstractCVariable.java
- * CArrayPartition.java
- * CArrayPartitionValue.java
- * CDebugTarget.java
- * CExpression.java
- * CStackFrame.java
- * CValue.java
- * CVariable.java
- * CExpressionTarget.java: removed
-
-2004-10-29 Alain Magloire
- Remove of ICDISharedLibraryManager
- * cdi/org/eclipse/cdt/debug/core/cdi/ICDISession.java
- * cdi/org/eclipse/cdt/debug/core/cdi/ICDISharedLibraryManager.java
- * cdi/org/eclipse/cdt/debug/core/cdi/model/ICDITarget.java
- * cdi/org/eclipse/cdt/debug/core/cdi/model/ICDISharedLibraryManagement.java
-
- * CSharedLibraryManager.java
-
-2004-10-28 Alain Magloire
- Add getType() method.
- * cdi/org/eclipse/cdt/debug/core/cdi/model/ICDIExpression.java
- * cdi/org/eclipse/cdt/debug/core/cdi/model/ICDIValue.java
-
-2004-10-26 Alain Magloire
- Remove ICDIMemoryManager for ICDIMemoryBlockManagement
- * cdi/org/eclipse/cdt/debug/core/cdi/ICDISession.java
- * cdi/org/eclipse/cdt/debug/core/cdi/ICDIMemoryManager.java
- * cdi/org/eclipse/cdt/debug/core/cdi/model/ICDITarget.java
- * cdi/org/eclipse/cdt/debug/core/cdi/model/ICDIMemoryBlockManagement.java
-
- * CDebugModel.java
- * CExtendedMemoryBlock.java
- * CFormattedMemoryBlock.java
-
-2004-10-26 Alain Magloire
- Remove of ICDISourceManager in CDI
- * cdi/org/eclipse/cdt/debug/core/cdi/ICDISession.java
- * cdi/org/eclipse/cdt/debug/core/cdi/ICDISourceManager.java
- * cdi/org/eclipse/cdt/debug/core/cdi/model/ICDITarget.java
- * cdi/org/eclipse/cdt/debug/core/cdi/model/ICDISourceManagement.java
-
- * Disassembly.java
-
-2004-10-26 Alain Magloire
- Remove of ICDISignalManager in CDI
- * cdi/org/eclipse/cdt/debug/core/cdi/ICDISession.java
- * cdi/org/eclipse/cdt/debug/core/cdi/ICDISignalManager.java
- * cdi/org/eclipse/cdt/debug/core/cdi/model/ICDITarget.java
- * cdi/org/eclipse/cdt/debug/core/cdi/model/ICDIThreadGroup.java
-
- * CSignalManager.java
-
-2004-10-25 Mikhail Khodjaiants
- NPE in "CVlaue.isUnsigned". Check if the type of the parent variable is null.
- * CValue.java
-
-2004-10-25 David Inglis
- Deprecated environment launch constent in favor of the constant provided by the debug.core.
- * src/org/eclipse/cdt/debug/core/ICDTLaunchConfigurationConstants.java
-
-2004-10-25 Alain Magloire
- Remove of the class ICDIExpressionManager.
- instead new clas ICDIExpressionManagegment that is on the ICDITarget
- * cdi/org/eclipse/cdt/debug/core/cdi/ICDISession.java
- * cdi/org/eclipse/cdt/debug/core/cdi/model/ICDIExpression.java
- * cdi/org/eclipse/cdt/debug/core/cdi/model/ICDIThreadGroup.java
- * cdi/org/eclipse/cdt/debug/core/cdi/model/ICDIExpressionManagement.java
-
- * CDebugModel.java
- * CDIDebugModel.java
- * CExpression.java
- * CFormattedMemoryBlock.java
- * CStackFrame.java
-
-2004-10-22 Mikhail Khodjaiants
- Replaced the deprecated "evaluateExpressionTtoString" method of "ICDITarget.
- * CDebugTarget.java
- * CStackFrame.java
- * CExtendedMemoryBlockRetrieval.java
-
-2004-10-22 Alain Magloire
- Provide a context for ICDITarget.evaluateExpressionTtoString()
- * cdi/org/eclipse/cdt/debug/core/cdi/model/ICDITarget.java
-
-2004-10-22 Mikhail Khodjaiants
- Fire the suspend event for the current thread on the target creation.
- * CDebugTarget.java
-
-2004-10-21 Mikhail Khodjaiants
- Thread should handle CDI events from the corresponding CDI thread only.
- "canSuspend" should return true if the thread is stepping.
- New implementation of "stepReturn" for stack frames.
- * CThread.java
- * CStackFrame.java
-
-2004-10-21 Mikhail Khodjaiants
- Pass the target state to threads on terminate, disconnect, resume, suspend and restart.
- * CoreModelMessages.properties
- * CDebugElement.java
- * CDebugTarget.java
- * CThread.java
-
-2004-10-19 Mikhail Khodjaiants
- Set the initial state of a thread according to the state of the underlying CDI thread.
- * CThread.java
-
-2004-10-19 Alain Magloire
- Fix NPE.
- * src/org/eclipse/cdt/debug/internal/core/DebugConfiguration.java
-
-2004-10-19 Mikhail Khodjaiants
- Support of the thread-specific breakpoints.
- Fix for the error handling of the asynchronous operations.
- * CBreakpointManager.java
- * CDebugTarget.java
- * CoreModelMessages.properties
-
-2004-10-18 Alain Magloire
- Make ICDIRuntimeOptions be part of ICDITarget
- * cdi/org/eclipse/cdt/debug/core/cdi/ICDISession.java
- * cdi/org/eclipse/cdt/debug/core/cdi/model/ICDITarget.java
- * cdi/org/eclipse/cdt/debug/core/cdi/model/ICDIRuntimeOptions.java
-
-2004-10-18 David Inglis
- Update to new ICDIDebugger interface deprecating old
-
- * src/org/eclipse/debug/core/CDebugModel.java
- * src/org/eclipse/debug/core/CDIDebugModel.java
- * src/org/eclipse/debug/core/ICDebugConfiguration.java
- * src/org/eclipse/debug/core/ICDebugger.java
- * src/org/eclipse/debug/core/ICDIDebugger.java
- * src/org/eclipse/debug/core/ICDILaunchCOnfiguration.java
- * src/org/eclipse/debug/core/model/IExecFileInfo.java
- * src/org/eclipse/debug/internal/core/CBreakpointManager.java
- * src/org/eclipse/debug/internal/core/CDebugAdapter.java
- * src/org/eclipse/debug/internal/core/DebugConfiguration.java
- * src/org/eclipse/debug/internal/core/model/CDebugTarget.java
- * src/org/eclipse/debug/internal/core/model/CVariableFactory.java
- * src/org/eclipse/debug/internal/core/model/DisassemblyBlock.java
-
-2004-10-18 Mikhail Khodjaiants
- Use characters instead of strings.
- * CDIException.java
-
-2004-10-17 Alain Magloire
- Remove deprecated method in CDI
- * cdi/org/eclipse/cdt/debug/core/model/ICDITarget.java
- * cdi/org/eclipse/cdt/debug/core/ICDISession.java
-
-2004-10-15 Alain Magloire
- Adjustment to changes in CDI interface concerning breakpoints.
- Now the thread ids for a breakpoint is specified in the ICDICondition.
- * cdi/org/eclipse/cdt/debug/core/cdi/ICDICondition.java
- * cdi/org/eclipse/cdt/debug/core/cdi/model/ICDIBreakpoint.java
- * cdi/org/eclipse/cdt/debug/core/cdi/model/ICDIBreakpointManagement.java
- * cdi/org/eclipse/cdt/debug/core/cdi/model/ICDITarget.java
-
- * CBreakpointManager.java
- * CDebugTarget.java
-
-2004-10-14 Mikhail Khodjaiants
- Partial fix for bug 39936 GDB hits modified conditional breakpoints when condition not satisfied.
- Condition has to be set at the mi level.
- * CBreakpointManager.java
-
-2004-10-08 Mikhail Khodjaiants
- Added the launch configuration preference for the register bookkeeping.
- * ICDTLaunchConfigurationConstants.java
- * CExpression.java
- * CRegister.java
- * CRegisterGroup.java
- * CVariable.java
-
-2004-10-08 Mikhail Khodjaiants
- Added the bookkeeping of registers and register groups.
- * ICVariable.java
- * IEnableDisableTarget.java: new
- * AbstractCVariable.java
- * CRegister.java
- * CRegisterGroup.java
-
-2004-10-07 Mikhail Khodjaiants
- Pass the current stack frame to the registers manager to provide the evaluation context.
- * ICRegisterManager.java
- * IDummyStackFrame.java
- * CRegisterManager.java
- * CDebugTarget.java
- * CDummyStackFrame.java
- * CRegisterGroup.java
- * CStackFrame.java
-
-2004-10-07 Mikhail Khodjaiants
- Provide a context for expression evaluation.
- * ICValue.java
- * AbstractCValue.java
- * CArrayPartitionValue.java
- * CValue.java
-
-2004-10-06 Mikhail Khodjaiants
- Added the "getType" method to ICValue.
- * ICValue.java
- * AbstractCValue.java
- * CArrayPartitionValue.java
- * CValue.java
-
-2004-09-30 Mikhail Khodjaiants
- Implementing adapters for the platform's Memory view.
- * CExtendedMemoryBlockRetrieval.java: new
- * CDebugTarget.java
- * CExtendedMemoryBlock.java: new
- * CThread.java
- * InternalDebugCoreMessages.properties
-
-2004-09-29 Mikhail Khodjaiants
- Use the new "createAddress(BigInteger)" method of "IAddressFactory".
- * CBreakpointManager.java
- * AsmInstruction.java
- * CFormattedMemoryBlock.java
- * CSharedLibrary.java
- * CStackFrame.java
- * CValue.java
-
-2004-09-28 Mikhail Khodjaiants
- Synchronize the "getType" method of "CVariable.InternalVariable".
- * CVariable.java
-
-2004-09-27 Mikhail Khodjaiants
- Use the new "getValue" method of "IAddress" for address comparison.
- * Disassembly.java
-
-2004-09-27 Mikhail Khodjaiants
- Target filtering fixes for watchpoints.
- * CBreakpointManager.java
-
-2004-09-21 Mikhail Khodjaiants
- Fixed the problems with the Disassembly view and address breakpoints caused by switch to IAddress.
- * CBreakpointManager.java
- * AsmInstruction.java
- * Disassembly.java
- * DisassemblyBlock.java
- * src/org/eclipse/cdt/debug/internal/core/CDebugUtils.java: removed
-
-2004-09-21 Mikhail Khodjaiants
- Changes to the IBinary interface
- * CDebugTarget.java
-
-2004-09-20 Mikhail Khodjaiants
- Evaluate expressions on stack frame instead of target to provide evaluation context.
- * ICDebugTarget.java
- * ICStackFrame.java
- * ICExpressionEvaluator.java
- * AbstractCValue.java
- * AbstractCVariable.java
- * CArrayPartition.java
- * CArrayPartitionValue.java
- * CDebugTarget.java
- * CFormattedMemoryBlock.java
- * CStackFrame.java
- * CThread.java
- * CValue.java
- * CVariable.java
-
-2004-09-17 Alain Magloire
- Support for 64 bits application
- PR 74056. Pathc from Artyom Kuanbekov
- To much files to enumerate.
-
-2004-09-15 Mikhail Khodjaiants
- Removed the "ISwitchToThread" and "ISwitchToFrame" interfaces.
- * ICDebugTarget.java
- * ISwitchToThread.java: removed
- * ISwitchToFrame.java: removed
- * CDebugTarget.java
- * CStackFrame.java
- * CThread.java
-
-2004-09-13 Mikhail Khodjaiants
- Moved to the new CDI interfaces.
- * CDebugTarget.java
- * CSignal.java
- * CStackFrame.java
- * CThread.java
-
-2004-09-13 Mikhail Khodjaiants
- Fix for bug 72555: "Toggle breakpoint" action doesn't remove function breakpoints from editor.
- * CDIDebugModel.java
-
-2004-09-10 Mikhail Khodjaiants
- Fixes for breakpoint filtering.
- * CBreakpointManager.java
- * CBreakpoint.java
- * CDebugTarget.java
-
-2004-09-09 Alain Magloire
- Introduction of new classes in the CDI interface
- * ICDIExecuteStep.java
- * ICDIExecuteStepReturn.java
- * ICDIExecuteResume.java
- * ICDISuspend.java
- * ICDIThreadGroup.java
-
-2004-09-07 Mikhail Khodjaiants
- Fix for bug 73498: Condition is cleared when disabled conditional breakpoint is set.
- * CBreakpointManager.java
-
-2004-09-07 Alain Magloire
- Remove ICDIBreakpointManager.java
- Remove ICDICatchEvent/ICDICatchpoint
- add ICDIExceptionpoint
-
- * ICDISession.java
- * CDIDebugModel.java
- * CDebugTarget.java
- * ICDIExceptionpoint.java
-
-2004-09-07 Mikhail Khodjaiants
- Moved to the new breakpoint management API.
- * CBreakpointManager.java
-
-2004-09-07 Alain Magloire
- New interfaces to Target.
- * ICDITarget.java
- * ICDIBreakpointManagement.java
-
-2004-09-03 Mikhail Khodjaiants
- Made global variables persistent.
- * CDIDebugModel.java
- * ICDTLaunchConfigurationConstants.java
- * ICGlobalVariableManager.java
- * ICGlobalVariable.java
- * IGlobalVariableDescriptor.java
- * InternalDebugCoreMessages.properties
- * CGlobalVariableManager.java
- * CDebugTarget.java
- * CGlobalVariable.java
- * CRegister.java
- * CVariableFactory.java
-
-2004-09-01 Mikhail Khodjaiants
- Breakpoint filtering by targets (core).
- * ICBreakpoint.java
- * CBreakpointManager.java
- * CBreakpoint.java
- * CDebugTarget.java
-
-2004-08-18 Mikhail Khodjaiants
- New constant - the default value for the "stop at main" property.
- * ICDTLaunchConfigurationConstants.java
-
-2004-08-14 Alain Magloire
- Fix for 71992.
- * CType.java
-
-2004-08-05 Mikhail Khodjaiants
- Restrict the "display as array" operation to the pointer types only.
- * CVariable.java
-
-2004-08-05 Mikhail Khodjaiants
- Warning cleanup.
- * CSharedLibraryManager.java
- * CUpdateManager.java
-
-2004-08-05 Mikhail Khodjaiants
- Display the error message in the array label, if the attempt to get array values fails.
- * CArrayPartition.java
- * CArrayPartitionValue.java
- * CDebugElement.java: made the exception throwing methods static.
-
-2004-08-05 Mikhail Khodjaiants
- Fixed the "resumed" event handler of the variable types.
- * CExpression.java
- * CGlobalVariable.java
- * CStackFrame.java
- * CVariable.java
-
-2004-08-05 Mikhail Khodjaiants
- Added the abstract prototypes for some generic methods.
- * AbstractCValue.java
- * AbstractCVariable.java
- * CArrayPartition.java
- * CArrayPartitionValue.java
- * CValue.java
- * CVariable.java
-
-2004-08-04 Mikhail Khodjaiants
- New implementation of the variable types.
- * CDIDebugModel.java
- * CVariableFormat.java: new
- * ICastToArray.java
- * ICastToType.java
- * ICGlobalVariable.java
- * ICType.java
- * ICValue.java
- * ICVariable.java
- * IFormatSupport.java: new
- * CGlobalVariableManager.java
- * CoreModelMessages.properties
- * AbstractCValue.java: new
- * AbstractCVariable.java: new
- * CArrayPartition.java
- * CArrayPartitionValue.java
- * CDebugTarget.java
- * CExpression.java
- * CGlobalVariable.java
- * CRegister.java
- * CRegisterGroup.java
- * CStackFrame.java
- * CType.java
- * CValue.java
- * CValueFactory.java
- * CVariable.java
- * CVariableFactory.java: new
- * CModificationVariable: deleted
-
-2004-07-23 Mikhail Khodjaiants
- Marked the expression creation methods as deprecated in CDebugModel.
- * CDebugModel.java
-
-2004-07-21 Mikhail Khodjaiants
- CThread cleanup.
- * CThread.java
-
-2004-07-21 Mikhail Khodjaiants
- Copied the target factory methods from CDebugModel to CDIDebugModel.
- Marked the old methods as deprecated.
- * CDebugModel.java
- * CDIDebugModel.java
-
-2004-07-21 Mikhail Khodjaiants
- CDebugTarget and CThread cleanup.
- * CoreModelMessages.properties
- * CDebugTarget.java
- * CThread.java
-
-2004-07-21 Mikhail Khodjaiants
- Removed state validation from CDebugElement.
- * CDebugTarget.java
- * CDebugElement.java
-
-2004-07-20 Mikhail Khodjaiants
- Added new state - "STEPPED".
- * CDebugElementState.java
-
-2004-07-20 Mikhail Khodjaiants
- Cleanup.
- * ICDebugInternalConstants.java
-
-2004-07-20 Mikhail Khodjaiants
- Cleanup.
- * CStackFrame.java
-
-2004-07-16 Mikhail Khodjaiants
- Asynchronous resume, suspend and step operations. Cleanup.
- * CDebugModel.java
- * CDebugElementState.java
- * ICDebugElement.java
- * ICDebugTarget.java
- * ICThread.java: new
- * ICDebugTargetType: removed
- * IState: removed
- * CCoreFileDebugTarget.java
- * CDebugElement.java
- * CDebugTarget.java
- * CStackFrame.java
- * CThread.java
- * CModificationVariable.java
-
-2004-07-15 Alain Magloire
-
- org.eclipse.cdt.debug.core.cdi.model.type should
- be in the cdi source folder.
-
-2004-07-09 Mikhail Khodjaiants
- Cleanup. Added support of "CDebugElementState".
- * ICDebugElement.java
- * CDebugElement.java
-
-2004-07-09 Mikhail Khodjaiants
- Renamed "ICDebugElementErrorStatus" to "ICDebugElementStatus".
- Added comments to ICDebugElementStatus.java.
- * ICDebugElementStatus.java
- * CDebugElement.java
- * CDebugTarget.java
- * CThread.java
- * CValue.java
- * CVariable.java
-
-2004-07-02 Alain Magloire
-
- Move the CDI interface to its own source browser and library
- * cdi/*
-
-2004-06-29 Alain Magloire
-
- Do not use the cache stackframe.
- * src/org/eclipse/cdt/debug/internal/core/model/CThread.java
-
-2004-06-29 Mikhail Khodjaiants
- Temporary fix for bug 68915: Invalid values in the Variables view.
- * CStackFrame.java
- * CThread.java
-
-2004-06-28 Mikhail Khodjaiants
- Partial fix for bug 45535: Performance problems when debugging.
- Cache the double and float presentations of the floating point types.
- * CDebugUtils.java
- * CFloatingPointValue.java: new
- * CValueFactory.java
-
-2004-06-24 Mikhail Khodjaiants
- Temporary fix for bug 56520: Debug Perspective doesn't get called when a breakpoint is hit.
- * CThread.java
-
-2004-06-23 Mikhail Khodjaiants
- Fix for bug 68316: Exception shutting down Eclipse with an active debug session.
- * CStackFrame.java
- * CThread.java
-
-2004-06-22 Mikhail Khodjaiants
- Replaced global resource bundles by messages.
-
-2004-06-16 Mikhail Khodjaiants
- Added support for the "Skip Breakpoints" and "Skip breakpoints during a "Run To Line" operation.
- * IRunToAddress.java
- * IRunToLine.java
- * CBreakpointManager.java
- * CDebugTarget.java
-
-2004-06-12 Mikhail Khodjaiants
- "CUpdateManager" extends "Observable" to support "Auto-Refresh" toggle actions.
- * CRegisterManager.java
- * CSharedLibraryManager.java
- * CSignalManager.java
- * CUpdateManager.jave
-
-2004-06-12 Mikhail Khodjaiants
- Changed the comments and copyright text.
- * ICUpdateManager.java
-
-2004-06-11 Mikhail Khodjaiants
- "CDebugTarget" should provide an adapter for "ICDebugTarget".
- * CDebugTarget.java
-
-2004-06-09 Mikhail Khodjaiants
- Changed the synchronization scope.
- * CSharedLibraryManager.java
-
-2004-06-02 Mikhail Khodjaiants
- Fix for bug 65112: Debug Registers view is empty.
- * CRegisterManager.java
- * CDebugTarget.java
- * CRegister.java
- * CRegisterGroup.java
- * CVariable.java
-
-2004-05-28 Mikhail Khodjaiants
- Support for the "Skip All Breakpoints" action.
- * CBreakpointManager.java
-
-2004-05-27 Mikhail Khodjaiants
- Display global variables in the Variables view.
- * CDIDebugModel.java
- * ICGlobalVariableManager.java: new
- * IGlobalVariable.java: removed
- * ICGlobalVariable.java
- * IExecFileInfo.java
- * IGlobalVariableDescriptor.java: new
- * CGlobalVariableManager.java: new
- * CDebugTarget.java
- * CGlobalVariable.java
- * CRegister.java
- * CStackFrame.java
- * CVariable.java
-
-2004-05-20 Mikhail Khodjaiants
- Removed dependencies on the compatibility plugin and replaced deprecated classes and methods.
- Warning cleanup.
- * CDebugCorePlugin.java
- * ICDebugConstants.java
- * CBreakpointManager.java
- * DebugConfiguration.java
- * CThread.java
- * CValue.java
- * CVariable.java
- * CDirectorySourceLocation.java
- * CProjectSourceLocation.java
- * SourceUtils.java
- * plugin.xml
- * ChangeLog-2003: new
-
-2004-05-20 Mikhail Khodjaiants
- The "IStackFrameInfo" interface is removed and it's methods moved to "ICStackFrame".
- * ICStackFrameInfo: removed
- * CStackFrame.java
- * CSourceLocator.java
- * CSourceManager.java
-
-2004-05-19 Mikhail Khodjaiants
- Added the support of watch expressions.
- * CDIDebugModel.java
- * ICStackFrame.java
- * CExpressionTarget.java: new
- * CDebugTarget.java
- * CExpression.java
- * CStackFrame.java
-
-2004-05-14 Mikhail Khodjaiants
- Update disassembly when source locator is changed.
- * Disassembly.java
- * CSourceManager.java
-
-2004-05-13 Mikhail Khodjaiants
- Changed the format of the disassembly error messages.
- * Disassembly.java
- * CoreModelMessages.properties
-
-2004-05-13 Mikhail Khodjaiants
- Removed old disassembly implementation.
- * IDisassemblyStorage.java: deleted
- * ISourceMode.java: deleted
- * DisassemblyStorage.java: deleted
- * DisassemblyManager.java: deleted
- * ICDebugConstants.java
- * CDebugTarget.java
- * CThread.java
- * CSourceManager.java
-
-2004-05-13 Mikhail Khodjaiants
- Support for the instruction stepping mode.
- * ICDebugTarget.java
- * ISteppingModeTarget.java: new
- * ITargetProperties.java: new
- * IInstructionstep.java: deleted
- * CDebugTarget.java
- * CThread.java
-
-2004-05-06 Mikhail Khodjaiants
- Implementation of mixed disassembly mode.
- * IAsmSourceLine.java: new
- * IDisassembly.java
- * IDisassemblyBlock.java: new
- * AsmSourceLine.java: new
- * Disassembly.java
- * DisassemblyBlock.java: new
-
-2004-04-30 Mikhail Khodjaiants
- New copyright.
- * IJumpToAddress.java
- * IJumpToLine.java
-
-2004-04-27 Mikhail Khodjaiants
- Moved the "FUNCTION" and "ADDRESS" breakpoint attributes to ICLineBreakpoint.
- Added support for the Disassembly view.
- * plugin.xml
- * CDIDebugModel.java
- * IBreakpointTarget.java: new
- * ICAddressBreakpoint.java
- * ICDebugTarget.java
- * ICFunctionBreakpoint.java
- * ICLineBreakpoint.java
- * CBreakpointManager.java
- * AbstractLineBreakpoint.java: new
- * CAddressBreakpoint.java
- * CFunctionBreakpoint.java
- * CLineBreakpoint.java
- * CDebugTarget.java
-
-2004-04-26 Mikhail Khodjaiants
- The notification of the Breakpoint Manager on breakpoint creation has been
- moved to CBreakpointUpdater.
- * CDebugTarget.java
-
-2004-04-22 Mikhail Khodjaiants
- Additional fix for bug 58711: Breakpoint race condition.
- * CBreakpointManager.java
-
-2004-04-21 Mikhail Khodjaiants
- Disassembly should provide an adapter for IExecFialeInfo.
- * Disassembly.java
-
-2004-04-20 Mikhail Khodjaiants
- The "getCFileGlobals" method of "IExecFileInfo" throws "DebugException".
- * IExecFileInfo.java
- * CoreModelMessages.properties
- * CDebugTarget.java
- * CoreModelMessages.java
- * Disassembly.java
-
-2004-04-19 Alain Magloire
-
- CoreModel throws Exception.
-
- * src/org/eclipse/cdt/debug/core/CDebugTarget.java
-
-2004-04-15 Mikhail Khodjaiants
- Fix for bug 58711: Breakpoint race condition.
- To avoid race condition all breakpoint marker updates (like increment/decrement the install count,
- enable/disable etc.) should be done in the UI thread. At the same time installing breakpoint
- at a target should be synchronized with other gdb commands (bug 58711).
- A special listener (CBreakpointUpdater) has been added to receive notifications from the event
- thread and post marker updates to the UI thread.
- * CDebugCorePlugin.java
- * ICBreakpointListener.java: new
- * ICBreakpoint.java
- * CBreakpointManager.java
- * CBreakpointNotifier.java: new
- * ListenerList.java: new
- * CBreakpoint.java
- * CDebugTarget.java
- * IAsyncExecutor.java: removed
-
-2004-04-19 Mikhail Khodjaiants
- Display global variable name in the error message when the "Add Globals" action fails.
- * CDebugModel.java
-
-2004-04-16 Mikhail Khodjaiants
- Stack frame should provide an adapter for IRunToAddress.
- * CStackFrame.java
-
-2004-04-15 Mikhail Khodjaiants
- Implementing core support of disassembly.
- * AsmInstruction.java
- * CDebugTarget.java
- * CStackFrame.java
- * Disassembly.java: new
-
-2004-04-12 Mikhail Khodjaiants
- Implementing retargettable breakpoint related actions.
- * CDebugModel.java
- * CDIDebugModel.java
- * ICAddressBreakpoint.java
- * ICBreakpoint.java
- * ICFunctionBreakpoint.java
- * ICLineBreakpoint.java
- * ICWatchpoint.java
- * CBreakpointManager.java
- * CDebugUtils.java
- * BreakpointMessages.properties
- * BreakpointMessages.java
- * CAddressBreakpoint.java
- * CBreakpoint.java
- * CFunctionBreakpoint.java
- * CLineBreakpoint.java
- * CWatchpoint.java
- * plugin.xml
-
-2004-04-11 Mikhail Khodjaiants
- Stack frame should provide an adapter for IRunToLine.
- * CStackFrame.java
-
-2004-04-08 Mikhail Khodjaiants
- Implementing retargettable actions.
- * IRunToAddress.java
- * IRunToLine.java
- * IDisassemblyStorage.java
-
-2004-04-07 Mikhail Khodjaiants
- Removed the support of debugger process.
- * ICDebugTarget.java
- * CDebugTarget.java
-
-2004-04-02 Mikhail Khodjaiants
- Removed dependency to xerces.
- * CDebugUtils.java
- * CDirectorySourceLocation.java
- * CProjectSourceLocation.java
- * CSourceLocator.java
- * SourceUtils.java
- * plugin.xml
-
-2004-04-01 Mikhail Khodjaiants
- Changes and additions to support the new implementations of Shared Libraries,
- Signals and Disassembly views.
- * CDebugElementState.java
- * IAsmInstruction.java
- * ICDebugElement.java
- * ICDebugTarget.java
- * ICDebugTargetGroup.java
- * ICSharedLibrary.java
- * ICSignal.java
- * ICStackFrame.java
- * IDisassembly.java
- * CSharedLibraryManager.java
- * CSignalManager.java
- * CDebugElement.java
- * CDebugTarget.java
- * CSignal.java
-
-2004-03-31 Mikhail Khodjaiants
- Added default preferences to the C/C++ Debug preference page.
- * CDebugCorePlugin.java
-
-2004-03-31 Mikhail Khodjaiants
- The Registers view has been contibuted and moved to the Eclipse platform.
- To enable updating set the default value of the auto-refresh flag of the registers to true.
- Remove it when the "Refresh" and "Auto-Refresh" actions are contributed.
- * CDebugCorePlugin.java
-
-2004-03-17 Alain Magloire
-
- Changes to get some performances. The array of
- events is passed instead of one at a time.
-
- Affected files all the implement ICDIEventListener
- to many to enumerate.
-
-2004-03-16 Alain Magloire
-
- Make this class extends ICDIEventListener
-
- * src/org/eclipse/cdt/debug/core/cdi/ICDIManager.java
-
-2004-03-10 Tanya Wolff
- Externalized strings and marked non-translatable strings
- Packages affected:
- org.eclipse.cdt.debug.core
- org.eclipse.cdt.debug.core.cdi
- org.eclipse.cdt.debug.internal.core
- org.eclipse.cdt.debug.internal.core.breakpoints
- org.eclipse.cdt.debug.internal.core.model
- org.eclipse.cdt.debug.internal.core.sourcelookup
-
-2004-03-09 David Inglis
- Added PLATFORM_NATIVE const to ICDebugCongifuration
- ICDebugConfiguration.java
-
-2004-02-20 Mikhail Khodjaiants
- Fire the "suspend" event when the target is suspended because of an error.
- * CDebugTarget.java
-
-2004-02-17 Mikhail Khodjaiants
- Reset the current thread flag when resume.
- * CThread.java
-
-2004-02-16 Mikhail Khodjaiants
- Fix for bug 52135: Debugger should indicate which thread triggered breakpoint.
- * CThread.java
-
-2004-02-11 Mikhail Khodjaiants
- In the 'reset' method check if value is an instance of CValue before type casting.
- * CVariable.java
-
-2004-02-10 Mikhail Khodjaiants
- Cache the endianness flag.
- * CDebugTarget.java
-
-2004-01-30 Mikhail Khodjaiants
- Fix for bug 50981: In the 'getValue' method of CVariable 'getType' should be only called once.
- * CVariable.java
-
-2004-01-29 Mikhail Khodjaiants
- Fire sets of debug events instead of firing it one by one.
- * CDebugTarget.java
- * CThread.java
-
-2004-01-29 Mikhail Khodjaiants
- Added DebugEvent factory methods to 'CDebugElement'.
- * CDebugElement.java
-
-2004-01-15 Mikhail Khodjaiants
- Fix for bug 48682: IThread.getBreakpoints() stubbed out.
- * CDebugTarget.java
- * CThread.java
diff --git a/debug/org.eclipse.cdt.debug.core/ChangeLog-2003 b/debug/org.eclipse.cdt.debug.core/ChangeLog-2003
deleted file mode 100644
index 905937a62dc..00000000000
--- a/debug/org.eclipse.cdt.debug.core/ChangeLog-2003
+++ /dev/null
@@ -1,1689 +0,0 @@
-2003-12-23 Mikhail Khodjaiants
- Fix for bug 49294: Source file doesn't change when switching between stack frames.
- Do not use the breakpoint's markers for source lookup.
- * CSourceManager.java
-
-2003-12-08 Mikhail Khodjaiants
- Reset the 'terminating' flag if 'terminate' fails.
- * CDebugTarget.java
-
-2003-11-26 Mikhail Khodjaiants
- Extracted the main part of the 'breakpointAdded' method into a separate method to avoid
- double checking.
- * CDebugTarget.java
-
-2003-11-26 Mikhail Khodjaiants
- Cleanup.
- * CDebugModel.java
- * CDebugUtils.java
- * CRegisterManager.java
- * CSharedLibraryManager.java
- * CSignalManager.java
- * CUpdateManager.java
- * CDebugTarget.java
- * CThread.java
- * CVariable.java
-
-2003-11-10 Mikhail Khodjaiants
- Ensure that all breakpoint creation and modification operations are running in the UI thread.
- * CBreakpointManager.java
-
-2003-11-10 Mikhail Khodjaiants
- Added synchronization to some of the 'CBreakpoint' methods.
- * CBreakpoint.java
-
-2003-11-07 Mikhail Khodjaiants
- Fix for PR 46358: NPE in the "setCurrentThread" method of "CDebugTarget".
- 'setCurrentThread': check if the old current thread is not null.
- * CDebugTarget.java
-
-2003-11-07 Mikhail Khodjaiants
- Use the corresponding methods of 'ICBreakpoint' to set breakpoint properties.
- * CBreakpointManager.java
-
-2003-11-07 Mikhail Khodjaiants
- Fix for PR 46303: Exception when selecting Debug... menu.
- Check if the string passed to the 'getCommonSourceLocationsFromMemento' method is not empty.
- * SourceUtils.java
-
-2003-11-05 Mikhail Khodjaiants
- 'getCDIBreakpointFile' returns wrong file for address breakpoints.
- * CBreakpointManager.java
-
-2003-11-05 Mikhail Khodjaiants
- Changed the handling of the breakpoint created event to reflect the CDI changes for deferred
- breakpoints support.
- * CBreakpointManager.java
- * CSharedLibraryManager.java
- * CDebugTarget.java
-
-2003-11-05 Mikhail Khodjaiants
- Moved all breakpoint-related functionality to the new class - 'CBreakpointManager'.
- * CBreakpointManager.java
-
-2003-11-05 Mikhail Khodjaiants
- The argument type of the 'getBreakpointAddress' method of 'ICBreakpointManager' is changed from
- 'ICBreakpoint' to 'ICBreakpointManager'.
- * ICBreakpointMaanger.java
-
-2003-10-30 Mikhail Khodjaiants
- * CSourceManager.java: implements adapters for 'ISourceMode' and 'IPersistableSourceLocator'.
-
-2003-10-30 Mikhail Khodjaiants
- Fix for PR 45818 doesn't solve the problem. Fall back to the previous version.
- * CDebugElement.java
-
-2003-10-30 Mikhail Khodjaiants
- Fix for PR 45818: NPE when closing the workbench.
- * CDebugElement.java
-
-2003-10-29 Mikhail Khodjaiants
- * CProjectSourceLocation.java: check if the searched element name is not null or empty.
-
-2003-10-29 Mikhail Khodjaiants
- Added the 'dispose' method to 'ICSourceLocation'.
- * ICSourceLocation.java
- * CDirectorySourceLocation.java
- * CProjectSourceLocation.java: made 'dispose' public.
-
-2003-10-29 Mikhail Khodjaiants
- * CProjectSourceLocation.java: added 'toString' method.
-
-2003-10-28 Mikhail Khodjaiants
- Search only in the parent folders if the given file path is absolute.
- Return a list only if the number of resulting files is > 1.
- * CDirectorySourceLocation.java
-
-2003-10-27 Mikhail Khodjaiants
- Renamed 'SourceLocationFactory' to 'SourceLookupFactory'.
- Added the 'createSourceLocator' method to 'SourceLookupFactory'.
- * SourceLookupFactory.java
- * CSourceLocator.java
-
-2003-10-27 Mikhail Khodjaiants
- Changed the 'getAdapter' method of 'CSourceManager' to return the adapter of
- the 'ICSourceLocator' class.
- * CSourceManager.java
-
-2003-10-26 Mikhail Khodjaiants
- Fix for PR 45534: gdb/MI error in retrieving a register can lead to an empty register pane.
- * CRegister.java
- * CRegisterGroup.java
-
-2003-10-23 Mikhail Khodjaiants
- Core support of the new workbench preferences: 'Source Locations' and 'Search
- For Duplicate Source Files'.
- * CDebugCorePlugin.java
- * ICDebugConstants.java
- * SourceUtils.java: new
-
-2003-10-20 Mikhail Khodjaiants
- Core support of the "Search subfolders" option for directory source locations.
- * IDirectorySourceLocation.java
- * SourceLocationFactory.java
- * CDirectorySourceLocation.java
-
-2003-10-20 Mikhail Khodjaiants
- Do not interrupt the initialization of all additional source locations
- if the initialization of one fails.
- * CSourceLocator.java
-
-2003-10-17 Alain Magloire
-
- ICDIBreakpointManager new method
- setLocationBreakpoint(...., deferred);
- The new boolean "deferred" indicate if yes or not the breakpoint
- should be on the deferred list if the setting fails.
-
- * ICDIBreakpointManager.java
-
-2003-10-17 Mikhail Khodjaiants
- Core support of the 'Search for duplicate source files' option.
- * ICSourceLocation.java
- * ICSourceLocator.java
- * CDirectorySourceLocation.java
- * CProjectSourceLocation.java
- * CSourceLocator.java
- * CSourceManager.java
-
-2003-10-17 Mikhail Khodjaiants
- If the target is suspended by a line breakpoint the source manager tries to retrieve
- the file resource from the breakpoint marker.
- * CSourceManager.java
- * CDebugTarget.java
-
-2003-10-15 Mikhail Khodjaiants
- Improving the source search algorithms.
- * CDirectorySourceLocation.java
- * CProjectSourceLocation.java
- * CSourceLocator.java
-
-2003-10-14 Mikhail Khodjaiants
- Improved the source search algorithm.
- * CProjectSourceLocation.java
-
-2003-10-13 Mikhail Khodjaiants
- Fix for bug 43372: changed the source lookup procedures to avoid the usage of 'getCanonicalPath'.
- * CDirectorySourceLocation.java
- * CProjectSourceLocation.java
-
-2003-10-07 Mikhail Khodjaiants
- All methods of 'IRuntimeOptions' should throw CDI exceptions in case of failure.
- * ICDIRuntimeOptions.java
-
-2003-10-06 Mikhail Khodjaiants
- Added the "isArgument" method to ICVariable. This method is used to distinguish
- the arguments in the Variables View.
- * ICVariable.java
- * CVariable.java
-
-2003-09-30 Mikhail Khodjaiants
- Use the new 'equals' method of ICDIVaraiableObject to compare variables.
- * CVariable.java
-
-2003-09-30 Alain Magloire
-
- ICDIVariableObject been updated with a new method.
- * CVariable.java
- * ICDIVariable.java
-
-2003-09-29 Mikhail Khodjaiants
- Fix for PR 43856: Format doesn't work for wchar_t.
- * CValue.java
-
-2003-09-23 Mikhail Khodjaiants
- Changed the 'hasStackFrames' method of the 'CThread' class to return true regardless if
- the thread contains stack frames or not. This method is only used by UI to update the thread label.
- * CThread.java
-
-2003-09-17 Mikhail Khodjaiants
- Temporary fix for PR 39061: Attach source does not work for applications compiled in CygWin.
- * CDirectorySourceLocation.java
-
-2003-09-16 Mikhail Khodjaiants
- Fix for PR 38468: Error in files location.
- Use the 'getCanonicalPath' method of the 'File' class to obtain the file name.
- * CDirectorySourceLocation.java
- * CProjectSourceLocation.java
- * CSourceLocator.java
-
-2003-09-15 Mikhail Khodjaiants
- Fix for PR 43101: Breakpoint exception when source doesn't exist.
- The 'fireBreakpointChanged' method of 'BreakpointManager' is used to notify
- the UI components that a breakpoint is added. This is a part of new implementation
- to support deffered breakpoints. For new breakpoints the 'delta' argument is null.
- Check if delta is not null to avoid this problem.
- * CDebugTarget.java
-
-2003-09-11 Mikhail Khodjaiants
- Detail Pane values for casted variables.
- * CVariable.java: the qualified name should be chached in the InternalVariable instance
- * CArrayPartition.java: added new field to store the chached value of the qualified name
-
-2003-10-11 Mikhail Khodjaiants
- Moving the shared library search paths block to mi UI.
- * ICDTLaunchConfigurationConstants.java: moved the 'ATTR_DEBUGGER_SOLIB_PATH' attribute to mi.
-
-2003-09-10 Mikhail Khodjaiants
- If breakpoint is a line breakpoint check if source locator contains this file
- instead of container project.
- * CDebugTarget.java
-
-2003-09-10 Mikhail Khodjaiants
- Fix for PR 42790: Memory view is not cleared when target is terminated.
- * CFormattedMemoryBlock.java: fire 'terminate' event when block is disposing.
- * CMemoryManager.java: implementation of 'dispose'.
-
-2003-09-09 Mikhail Khodjaiants
- Fix for PR 39680: Gash in error message for memory view.
- * CDebugModel.java
-
-2003-09-09 Mikhail Khodjaiants
- Final fix for PR 39484: Move 'getType' method from ICDIVariable to ICDIVaraibleObject.
- * CArrayPartition.java
- * CVariable.java
-
-2003-09-09 Mikhail Khodjaiants
- Regrouping the launch configuration constants.
- * ICDTLaunchConfigurationConstants.java
-
-2003-09-09 Mikhail Khodjaiants
- Removed the internal handling of the 'stop-on-shared-library-events' option -
- will be moved to the mi.
- Try to set the deferred breakpoints only when:
- - a shared library is loaded
- - the symbols of shared library are loaded
- * CSharedLibararyManager.java
- * CDebugTarget.java
- * CThread.java
-
-2003-09-09 Mikhail Khodjaiants
- Added the 'getSharedLibraryPaths' and 'setSharedLibraryPaths' methods
- to the 'ICDISharedLibraryManager' interface.
- * ICDISharedLibraryManager.java
-
-2003-08-29 Mikhail Khodjaiants
- Implementation of deferred breakpoints.
- * CDebugTarget.java
- * CThread.java
-
-2003-08-29 Mikhail Khodjaiants
- Moving shared library features from mi to CDI.
- Added new launch configuration constants to ICDTLaunchConfigurationConstants.
-
-2003-08-29 Mikhail Khodjaiants
- Moving shared library features from mi to CDI.
- Added new methods to ICDISharedLibraryManager:
- - isAutoLoadSymbols
- - isStopOnSolibEvents
- - setAutoLoadSymbols
- - setStopOnSolibEvents
- - supportsAutoLoadSymbols
- - supportsStopOnSolibEvents
- * ICDISharedLibraryManager.java
-
-2003-08-21 Mikhail Khodjaiants
- Removed the 'isAccessSpecifier' method from CVaraiable.
- * CArrayPartitionValue.java
- * CValue.java
- * CVariable.java
-
-2003-08-21 Mikhail Khodjaiants
- Use the names of array's elements returned by CDI.
- * CVariable.java
-
-2003-08-20 Mikhail Khodjaiants
- Unable to terminate post mortem debugging session.
- Extended the 'CDebugTarget' class to overload the 'terminate' and 'canTerminate' methods.
- * CDebugModel.java
- * CCoreFileDebugTarget.java: new
-
-2003-08-19 Mikhail Khodjaiants
- Create ICDIVariableObject for each array partition to compute a detail panel's value.
- * CArrayPartition.java
- * CVariable.java
-
-2003-08-18 Alain Magloire
-
- ICDISharedLibraryEvent.java:
- New file, to notify a breakpoint from a shared lib event.
-
-2003-08-13 Mikhail Khodjaiants
- * ICDIVariableManager.java: removed the 'type' parameter from the 'getVariableObjectAsArray' method
- * ICastToArray.java: removed the 'type' parameter from the 'castToArray' method
- * CVariable.java: changed the implementation of the 'ICastToArray' interface
-
-2003-08-13 Mikhail Khodjaiants
- * ICDIVariable.java: removed the 'isEditable' method
- * ICDIVariableObject.java: added the 'isEditable', 'getQualifiedName' and 'sizeof' methods
- * ICDIArrayValue.java: added the 'getVariables(int start, int length)' method
- * ICType.java: added the 'isReference' method
- * ICValue.java: added the 'dispose' method
- * CArrayPartition.java
- * CArrayPartitionValue.java
- * CGlobalVariable.java
- * CType.java
- * CValue.java
- * CValueFactory.java
- * CVariable.java
- Create 'var-objects' only for the requested array partitions.
-
-2003-08-07 Alain Magloire
-
- * ICDIVariableManager.java:
- Remove the unused method getVariableObject(ICDIStackframe, String)
- and getArgumentObject(ICDIStackframe, String).
- Rename getVariableObject(String, String, String) to
- getGlobalVariableObject.
-
- * CDebugModel.java: Refactoring of ICDIVariableManager.
-
-2003-08-06 Mikhail Khodjaiants
- Added the implementation of the 'getType' and 'getTypeName' methods of the 'CVaraible:ErrorVariable' class.
- * CVariable.java
-
-2003-08-06 Mikhail Khodjaiants
- Uncommented the 'sizeof' method of 'ICDIVariableObject'.
- * ICDIVariableObject.java
- * CVariable.java
-
-2003-08-06 Alain Magloire
-
- Move some of the methods in ICDIVariableObject.
-
- * src/org/eclipse/cdt/debug/core/cdi/ICDIVariable.java
- * src/org/eclipse/cdt/debug/core/cdi/ICDIVariableObject.java
-
-2003-08-05 Mikhail Khodjaiants
- Use the 'getReferencedProject' method to obtain all referenced projects.
- * CDebugUtils.java
-
-2003-08-05 Mikhail Khodjaiants
- Invalidate error variables when the session is resumed.
- * CVariable.java
-
-2003-07-30 Mikhail Khodjaiants
- Moved the 'getReferencedProject' method to 'CDebugUtils'. Added the cycle checking.
- * CDebugUtils.java
- * CSourceLocator.java
-
-2003-07-28 Mikhail Khodjaiants
- Minimize the number of the "evaluate expression" requests when changing the value of the floating point types.
- * CDebugUtils.java
-
-2003-07-28 Mikhail Khodjaiants
- Refactoring: moved the 'isNaN', 'isPositiveInfinity' and 'isNegativeInfinity' to the 'CDebugUtils' class.
- * ICValue.java
- * CValue.java
- * CDebugUtils.java
-
-2003-07-28 Mikhail Khodjaiants
- Refactoring: moved the 'CDebugUtils' class to the 'org.eclipse.cdt.debug.core' package -
- the methods of this class are mostly used in UI plugins.
- * CDebugUtils.java
- * CDebugModel.java
- * DisassemblyStorage.java
- * CAddressBreakpoint.java
- * CDebugTarget.java
- * CFormattedMemoryBlock.java
- * CDebugElement.java
- * CDirectorySourceLocation.java
- * CProjectSourceLocation.java
- * CSourceLocator.java
-
-2003-07-28 Mikhail Khodjaiants
- Cleanup. Removed the unused 'getNumberOfChildren' method from the 'CValue' class.
- * CValue.java
-
-2003-07-28 Mikhail Khodjaiants
- Cleanup. Removed the 'reset' and 'getQualifiedName' methods from the 'ICVaraible' interface.
- * ICVariable.java
- * CVariable.java
-
-2003-07-24 Mikhail Khodjaiants
- Fix for PR 40696. If the project contains the reference to a project that is
- deleted from the workspace the source locator tries to get the location of deleted project.
- * CProjectSourceLocation.java
-
-2003-07-22 Mikhail Khodjaiants
- Create a special type of ICDIVariable (ErrorVariable) if request to gdb fails.
- * CVariable.java
- * CValue.java
-
-2003-07-22 Mikhail Khodjaiants
- Use the 'getReferencedProjects' method of 'CSourceLocator' to obtain the list of referenced projects.
- Use the correct tag for additional source locations.
- * CSourceLocator.java
-
-2003-07-17 Mikhail Khodjaiants
- Fix for PR 39936: GDB hits modified conditional breakpoints when condition not satisfied.
- This is a work around for GDB PR MI/1289.
- * CDebugTarget.java
-
-2003-07-17 Mikhail Khodjaiants
- Automatically update the list of source locations when the list of the referenced
- projects is modified.
- * ICSourceLocator.java: added new method - 'getProject'
- * IProjectSourceLocation.java: added new method - 'isGeneric'
- * SourceLocationFactory.java: new class factory for source locations.
- * CSourceLocator.java
- * CDirectorySourceLocation.java
- * CProjectSourceLocation.java
- * CSourceManager.java
- * CDebugTarget.java
-
-2003-06-30 Mikhail Khodjaiants
- Fix for PR 39372: Breakpoints don't get activated when symbols are loaded.
-
-2003-06-30 Mikhail Khodjaiants
- Fix for PR 39100: CDT/Debug core is asking value 16 times.
- * CValue.java
-
-2003-06-30 Mikhail Khodjaiants
- Fix for PR 39087: Cache the MI answer once we know if the variable is writable.
- * CVariable.java
-
-2003-06-24 Mikhail Khodjaiants
- All local var_objects are destroyed when a thread other than current is selected.
- CVariable has to be invalidated if a "destroyed" event has been received.
- * CVariable.java
-
-2003-06-23 Mikhail Khodjaiants
- Fix for ClassCastException in CStackFrame.
- * CStackFrame.java
-
-2003-06-20 Mikhail Khodjaiants
- Variable bookkeeping (phase 0.1).
- * ICDTLaunchConfigurationConstants.java: add a new attribute - ATTR_DEBUGGER_ENABLE_VARIABLE_BOOKKEEPING.
- * ICVariable.java: added the 'canEnableDisable', 'isEnabled' and 'setEnabled' methods
- * CArrayPartition.java
- * CExpression.java
- * CModificationVariable.java
- * CRegister.java
- * CStackFrame.java
- * CVariable.java
-
-2003-06-18 Mikhail Khodjaiants
- Incorrect casting in the 'setChanged' method of CVariable.
- * CVariable.java
-
-2003-06-11 Mikhail Khodjaiants
- The unused 'getUnderlyingValueString' method has been removed from ICValue and CValue.
- The methods 'setChanged' and 'getUnderlyingValue' are only for internal usage and
- have been removed from ICValue.
- * ICValue.java
- * CArrayPartitionValue.java
- * CValueFactory.java
- * CValue.java
- * CVariable.java
-
-2003-06-10 Mikhail Khodjaiants
- Refactoring: moved the type and value related methods from ICVariable to ICType and ICValue.
- * ICType.java: new
- * ICVariable.java
- * ICValue.java
- * CArrayPartitionValue.java
- * CType.java
- * CValue.java
- * CVariable.java
-
-2003-06-09 Mikhail Khodjaiants
- Added default format preferences for variables, registers and expressions.
- * CExpression.java
- * CRegister.java
- * CVariable.java
-
-2003-06-09 Mikhail Khodjaiants
- Renamed the 'refresh' method of ICVariable to 'reset'. Added new method -
- 'reset' to CValue instead of using the 'setChanged' method.
- * ICVariable.java
- * CValue.java
- * CVariable.java
-
-2003-06-06 Mikhail Khodjaiants
- Mark as changed parent variables.
- * CVariable.java
-
-2003-06-06 Mikhail Khodjaiants
- Refresh only the state of variable when handling a change event.
- * CVariable.java
-
-2003-06-06 Mikhail Khodjaiants
- Correct presentation of the full names of variables that contain pointers.
- * CVariable.java
-
-2003-06-06 Mikhail Khodjaiants
- Changed the implementation of the'getName' method of CVariable to return
- the actual names of array members.
- * CArrayPartition.java
- * CArrayPartitionValue.java
- * CVariable.java
-
-2003-06-05 Mikhail Khodjaiants
- Core support of infinite values of the floating point types.
- * ICVariable.java
- * CVariable.java
-
-2003-06-05 Mikhail Khodjaiants
- Renamed the 'computeDetail' method of the 'ICValue' interface to 'evaluateAsExpression'.
- * ICValue.java
- * CArrayPartitionValue.java
- * CValue.java
-
-2003-06-05 Mikhail Khodjaiants
- Removed the redundant methods from the 'ICDIFloatingPointValue' interface.
- * ICDIFloatingPointValue.java
- * CValue.java
- * CVariable.java
-
-2003-06-04 Mikhail Khodjaiants
- Implementing the core support of the detail panel.
- * ICValue.java
- * ICVariable.java
- * CArrayPartitionValue.java
- * CValue.java
- * CVariable.java
-
-2003-06-04 Mikhail Khodjaiants
- Added the processing of reference values.
- * CValue.java
-
-2003-06-04 Mikhail Khodjaiants
- Implementing the core support of UI features for types and internal formating
- (instead of using the format features provided by gdb).
- * src/org/eclipse/cdt/debug/core/cdi/model/type/ICDIFloatingPointValue.java
- * src/org/eclipse/cdt/debug/core/cdi/model/type/ICDIPointerValue.java
- * src/org/eclipse/cdt/debug/core/cdi/model/type/ICDIReferenceValue.java
- * src/org/eclipse/cdt/debug/core/cdi/model/ICDIPointerValue.java: removed
- * src/org/eclipse/cdt/debug/core/model/ICVariable.java
- * src/org/eclipse/cdt/debug/internal/core/model/CVariable.java
- * src/org/eclipse/cdt/debug/core/model/CValue.java
-
-2003-05-29 Alain Magloire
-
- * src/org/eclipse/cdt/debug/core/cdi/model/type/ICDIIntegralValue.java:
- public long longValue() throws CDIException;
- public int intValue() throws CDIException;
- public short shortValue() throws CDIException;
- public int byteValue() throws CDIException;
-
-2003-05-29 Mikhail Khodjaiants
- Added new methods to ICVariable to vizualize arrays and structures based
- on the new CDI types.
- * ICVariable.java
- * CVariable.java
-
-2003-05-27 Mikhail Khodjaiants
- Check if the location of breakpoint is eligible for the target
- when setting, removing or changing the propeties.
- * CDebugTarget.java
-
-2003-03-23 Alain Magloire
-
- * src/org/eclipse/cdt/debug/core/cdi/model/type/ICDIVariable.java:
- (getType): New method.
-
-2003-05-26 Mikhail Khodjaiants
- First draft of the tracepoints in the CDI.
- * ICDITraceManager.java
- * ICDITraceSnapshot.java
- * ICDITracepoint.java
-
-2003-05-23 Alain Magloire
-
- * src/org/eclipse/cdt/debug/core/cdi/model/type/ICDIType.java: extends
- ICDIObject.
-
-2003-05-23 Alain Magloire
-
- First draft of the implementing the types, org.eclipse.cdt.debug.core.cdi.model.type.*
- in the CDI interface.
-
-2003-05-14 Mikhail Khodjaiants
- Created preference for the maximum number of disassembly instructions.
- * CDebugTarget.java
- * ICDebugConstants.java
- * DisassemblyManager.java
-
-2003-05-12 Mikhail Khodjaiants
- Moved the generation of expressions for global variables to the mi plugin.
- * CDebugTarget.java
- * CExpression.java
- * CDebugModel.java
-
-2003-05-12 Mikhail Khodjaiants
- When generating disassembly instructions by file name and line number check
- if the frame address is in the address range of the instruction set.
- If the instruction set doesn't contain the frame address generate a new instruction set
- based on the frame address.
- * DisassemblyManager.java
-
-2003-05-08 Mikhail Khodjaiants
- In the "terminate" event handler of the session manager check the targets that
- belong to the current session.
- * SessionManager.java
-
-2003-05-07 Mikhail Khodjaiants
- Set the error status if the debug target is suspended because of an error.
- * CDebugTarget.java
-
-2003-05-06 Mikhail Khodjaiants
- Check if the underlying debugger supports expression evaluation in the "canEvaluate" method.
- * CDebugTarget.java
-
-2003-05-06 Mikhail Khodjaiants
- Added tooltips to breakpoints and watchpoints.
- * CAddressBreakpoint.java
- * CBreakpoint.java
- * CFunctionBreakpoint.java
- * CLineBreakpoint.java
- * CWatchpoint.java
-
-2003-05-05 Mikhail Khodjaiants
- Added a status functionality to the CDebugElement class.
- This allows to reflect the problems occured in the element in UI.
- * ICDebugElementErrorStatus.java: new
- * CDebugElement.java: implementation
- * CThread.java
- * CDebugTarget.java
-
-2003-05-05 Mikhail Khodjaiants
- New method in ICBreakpoint - "isConditional".
- * ICBreakpoint.java
- * CBreakpoint.java
-
-2003-05-02 Mikhail Khodjaiants
- Notify the Launch view about stack changes when handling the 'Resumed' event.
- * CThread.java
-
-2003-05-01 Mikhail Khodjaiants
- Implementation of termination policy.
- * ICDIConfiguration.java: new "terminateSessionOnExit" method added.
- * SessionManager.java: terminates the launch when all targets are terminated or disconnected.
- * CDebugCorePlugin.java: provides an access to the current session managers.
- * CDebugTarget.java
-
-2003-04-25 Mikhail Khodjaiants
- Fix for bug 36909
- * DisassemblyManager.java: check if the address of a stack frame is not 0;
-
-2003-04-23 Mikhail Khodjaiants
- Check for null pointer in 'isCharacter' and 'isCharPointer'.
- * CValue.java
-
-2003-04-23 Mikhail Khodjaiants
- Throw DebugException when getSignals() fails.
- * CSignalManager.java
-
-2003-04-23 Mikhail Khodjaiants
- Additional checks for the situation when the stack depth is not 0 and
- the frame array is empty.
- * CThread.java
-
-2003-04-22 Mikhail Khodjaiants
- Disconnect: terminate should be called from the disconnect event handler.
- * CDebugTarget.java
-
-2003-04-21 Mikhail Khodjaiants
- Disconnnect: target should be disconnected before terminate the session
- because of race condition.
- * CDebugTarget.java
-
-2003-04-21 Mikhail Khodjaiants
- Unnecessary error logging (bug 36682).
- * CValue.java
-
-2003-04-21 Mikhail Khodjaiants
- Temporary fix for character values.
- * CValue.java
-
-2003-04-20 Alain Magloire
-
- * CValue.java:
- Was throwing a IndexOutOfBoundException.
-
-2003-04-17 Mikhail Khodjaiants
- Check if the underlying cdi variable is not null before accessing it.
- * CVariable.java
-
-2003-04-16 Mikhail Khodjaiants
- Quick fix for variable values.
- * CValue.java
-
-2003-04-14 Alain Magloire
-
- StringBuffer.indexOf() is 1.4.x only
-
- * CDebugUtils.java
-
-2003-04-11 Mikhail Khodjaiants
- Core support of function and method breakpoints.
- * CDebugModel.java
- * ICFunctionBreakpoint.java
- * CDebugUtils.java
- * CFunctionBreakpoint.java
- * CDebugTarget.java
-
-2003-04-09 Mikhail Khodjaiants
- Core support of function breakpoints.
- * CDebugModel.java
- * ICFunctionBreakpoint.java
- * CDebugTarget.java
-
-2003-04-07 Mikhail Khodjaiants
- Changed the message text in the 'getStackDepth' method.
- * CThread.java
-
-2003-04-07 Mikhail Khodjaiants
- Changed the message generated in the 'targetRequestFailed' methods of CDebugElement.
- * CDebugElement.java
-
-2003-04-07 Mikhail Khodjaiants
- Replaced 'toString()' by 'getMessage()' for CDI exceptions.
- * CSharedLibraryManager.java
- * CUpdateManager.java
- * CDebugTarget.java
- * CStackFrame.java
- * CThread.java
- * CVariable.java
-
-2003-04-01 Mikhail Khodjaiants
- Moved the 'Auto-Refresh' preferences from CDebugUIPlugin to use it for initialization of update managers.
- * ICDebugConstants.java
- * CRegisterManager.java
- * CSharedLibraryManager.java
-
-2003-04-01 Mikhail Khodjaiants
- Removed the 'fDebugTarget' field from CSharedLibraryManager.
- * CSharedLibraryManager.java
-
-2003-03-31 Mikhail Khodjaiants
- The new abstract class ('CUpdateManager') is added to provide a basic implementation of ICUpdateManager.
- CSignalManager, CSharedLibraryManager and CRegisterManager extend this class.
- * ICRegisterManager.java: new
- * CRegisterManager.java: new
- * CSharedLibraryManager.java
- * CSignalManager.java
- * CUpdateManager.java: new
- * CDebugTarget.java
- * CRegisterGroup.java
-
-2003-03-28 Mikhail Khodjaiants
- Use the 'exists' method of the 'IFile' interface instead of using 'toFile().exists()' for 'IPath'.
- * CDirectorySourceLocation.java
- * CSourceLocator.java
-
-2003-03-28 Mikhail Khodjaiants
- Do not log the exceptions thrown by the breakpoint setting methods.
- * CDebugTarget.java
-
-2003-03-28 Mikhail Khodjaiants
- Added default format preference constants for variables, expressions and registers.
- * ICDebugConstants.java
-
-2003-03-28 Mikhail Khodjaiants
- Core support of the 'Run To C/C++ Line' and 'Resume At C/C++ Line' actions for external files.
- * IJumpToLine.java
- * IRunToLine.java
- * CDebugTarget.java
- * CThread.java
-
-2003-03-27 Mikhail Khodjaiants
- Applied patch from Chris Songer: Assembly View Fixups
- * ICDIInstruction.java
- * DisassemblyStorage.java
-
-2003-03027 Alain Magloire
-
- Adjust the code refactor in the CoreModel for IBinary
- * CDebugTarget.java
-
-2003-03-18 Mikhail Khodjaiants
- Removed the gdb-specific variable parsing.
- * ICValue.java
- * CArrayPartition.java
- * CArrayPartitionValue.java
- * CModificationVariable.java
- * CStackFrame.java
- * CValue.java
- * CVariable.java
- * CArrayEntryVariable.java: removed
- * CLocalVariable.java: removed
-
-2003-03-17 Mikhail Khodjaiants
- Replace range by start index and length in 'Display As Array' action.
- * ICDIVariableManager.java
- * ICastToArray.java
- * CVariable.java
-
-2003-03-14 Mikhail Khodjaiants
- Added the 'isEditable' and 'hasChildren' methods to the 'ICVariable' interface.
- * ICVariable.java
- * CVariable.java
- * CModificationVariable.java
-
-2003-03-14 Mikhail Khodjaiants
- Cross-referencing projects cause the debugger to go into a stack overflow exception.
- Make sure that there is only one source location for each referenced project.
- * CSourceLocator.java
-
-2003-03-13 Alain Magloire
-
- No longer throw exceptions.
- * src/org/eclipse/cdt/internal/core/model/CFormattedMemoryBlock.java
- * src/org/eclipse/cdt/internal/core/model/CVariable.java
-
-2003-03-13 Alain Magloire
-
- * src/org/eclipse/cdt/debug/core/cdi/model/ICDIVariable.java:
- Also extends ICDIVariableObject.
- * src/org/eclipse/cdt/debug/core/cdi/model/ICDIArgument.java:
- Also extends ICDIArgumentObject.
- * src/org/eclipse/cdt/debug/core/cdi/model/ICDIRegister.java:
- Also extends ICDIRegisterObject
- * src/org/eclipse/cdt/debug/core/cdi/ICDIVariableManager.java:
- getLocalVariableObject() new method.
-
-2003-03-09 Mikhail Khodjaiants
- New ICDIVariableManager methods for the 'DisplayAsArray' and 'CastToType' actions.
- * CVariable.java
-
-2003-03-11 Alain Magloire
-
- * src/org/eclipse/cdt/debug/core/cdi/ICDIVariableManager.java:
- New methods getVariableObjectAsArray(), getVariableObjectAsType().
-
-2003-03-09 Mikhail Khodjaiants
- Core support of the "Display As Array" action.
- * ICastToArray.java
- * CLocalVariable.java
- * CVariable.java
-
-2003-03-09 Mikhail Khodjaiants
- Core support of the "Cast To Type" and "Restore Default Type" actions.
- * ICastToType.java: new
- * CLocalVariable.java
- * CStackFrame.java
- * CVariable.java
-
-2003-02-24 Alain Magloire
-
- * src/org/eclipse/cdt/debug/core/cdi/ICDIRegisterObject.java:
- * src/org/eclipse/cdt/debug/core/cdi/ICDIArgumentObject.java:
- Reorganized imports.
-
-2003-02-20 Mikhail Khodjaiants
- No need to set the source search path to the debugger.
- * ICSourceLocation.java
- * CDirectorySourceLocation.java
- * CProjectSourceLocation.java
- * CDebugTarget.java
-
-2003-02-20 Mikhail Khodjaiants
- Changed to 'public' the access modifier of the 'setAssocition' method.
- * CDirectorySourceLocation.java
-
-2003-02-18 Mikhail Khodjaiants
- Added persistency to the source locator.
- * plugin.xml: added dependency on the 'org.apache.xerces' plugin
- * ICSourceLocation.java
- * CDebugUtils.java
- * CDirectorySourceLocation.java
- * CProjectSourceLocation.java
- * CSourceLocator.java
- * CSourceManager.java
-
-2003-02-13 Mikhail Khodjaiants
- Undo changes because the 'asyncExec' method of the 'DebugPlugin' class has added since version 2.1.
- * IAsyncExecutor.java: removed
- * CDebugCorePlugin.java
-
-2003-02-13 Mikhail Khodjaiants
- Use the 'asyncExec' method of the 'DebugPlugin' class.
- * IAsyncExecutor.java: removed
- * CDebugCorePlugin.java
-
-2003-02-12 Mikhail Khodjaiants
- The gdb-specific 'setAutoSolibMethod' method is removed from ICDISharedLibraryManager.
- * ICDISharedLibraryManager.java
- * CSharedLibraryManager.java
-
-2003-02-12 Alain Magloire
-
- * src/org/eclipse/cdt/debug/core/cdi/mode/ICDITarget.java (getSharedLibraries):
- Remove action done via the manager.
-
-2003-02-12 Mikhail Khodjaiants
- Use ICDIRegisterManager instead of ICDITarget.
- * ICDITarget.java
- * CDebugTarget.java
- * CRegisterGroup.java
-
-2003-02-11 Mikhail Khodjaiants
- The 'auto load symbols' action support in ICSharedLibraryManager.
- * ICSharedLibraryManager.java
- * CSharedLibraryManager.java
-
-2003-02-11 Mikhail Khodjaiants
- The 'load symbols' actions support in ICSharedLibraryManager.
- * ICSharedLibraryManager.java
- * CSharedLibraryManager.java
-
-2003-02-10 Mikhail Khodjaiants
- Support of update ('Refresh', 'Auto-Refresh) actions.
- * ICUpdateManager.java: new
- * ICSharedLibraryManager.java
- * CSharedLibraryManager.java
-
-2003-02-10 Mikhail Khodjaiants
- Disable the address breakpoints to prevent the debugger to insert them prematurely.
- * CDebugTarget.java
-
-2003-02-05 David Inglis
-
- Refactor Constants to debug.core
- * src/org/eclipse/cdt/debug/core/ICDTLaunchConfigurationConstants.java
-
-
-2003-02-05 Mikhail Khodjaiants
- Support of the 'Resume At C/C++ Line' action.
- * IJumpToLine.java: new
- * IJumpToAddress.java: new
- * ICDebugTarget.java
- * CDebugTarget.java
-
-2003-02-04 Mikhail Khodjaiants
- Support of the 'Resume Without Signal' action.
- * IResumeWithoutSignal.java: new
- * ICDebugTarget.java
- * CDebugTarget.java
- * CThread.java
- * CStackFrame.java
- * CSignal.java
-
-2003-02-03 Alain Magloire
-
- * src/org/eclipse/cdt/debug/core/cdi/model/ICDITarget.java:
- * src/org/eclipse/cdt/debug/core/cdi/model/ICDIThread.java:
- Added methods, signal(), jump() stepReturn(boolean) to
- mimic gdb "return/finish".
-
-2003-02-03 Mikhail Khodjaiants
- Filter out breakpoints set in unrelated projects.
- * CDebugTarget.java
- * CDebugUtils.java
-
-2003-02-03 Mikhail Khodjaiants
- Implemention of the 'handle' command of the 'Signals' view.
- * ICDISignal.java: added the 'handle' method
- * CSignal.java: implementation of the 'handle' command.
-
-2003-02-03 Mikhail Khodjaiants
- Implementing the 'Signals' view.
- * CSignalManager.java: new
- * CSignal.java: new
-
-2003-02-03 Alain Magloire
-
- * src/org/eclipse/cdt/debug/core/cdi/event/ICDIExitEvent.java:
- Extends ICDIDestroyedEvent.
- (getReason): New method.
- * src/org/eclipse/cdt/debug/core/cdi/ICDISignalExitInfo.java:
- New file.
- * src/org/eclipse/cdt/debug/internal/core/CDebugTarget.java (handleExitEvent):
- Change to conform to new ICDIExitEvent changes.
-
-2003-02-03 Alain Magloire
-
- * src/org/eclipse/cdt/debug/core/cdi/model/ICDISignal.java:
- (getDescription): new Method replace getMeaning().
- (isStopSet): new method.
- (isIgnore): new method.
-
-2003-01-31 Mikhail Khodjaiants
- Implementing the 'Signals' view.
- * ICSharedLibraryManager.java
- * ICSignalManager.java: new
- * ICSignal.java: new
- * CSignalManager.java: new
- * CSignal.java: new
- * CDebugTarget.java
-
-2003-01-30 Mikhail Khodjaiants
- Create an address breakpoint if the source locator can not find the file specified by gdb.
- * CDebugTarget.java
-
-2003-01-29 Mikhail Khodjaiants
- Managing breakpoints from the gdb console (fixes).
- * CDebugModel.java
- * CAddressBreakpoint.java
- * CBreakpoint.java
- * CFunctionBreakpoint.java
- * CLineBreakpoint.java
- * CWatchpoint.java
- * CDebugTarget.java
-
-2003-01-29 Alain Magloire
-
- * src/org/eclipse/cdt/debug/core/cdi/model/ICDISharedLibraryManger.java (getSharedLibraryPaths):
- New method.
- (setSharedLibraryPaths): New method.
- (setAutoLoadSymbols): New method.
-
-2003-01-28 Alain Magloire
-
- * src/org/eclipse/cdt/debug/core/cdi/model/ICDIThread.java (setCurrentFrame):
- New method.
-
-2003-01-27 Mikhail Khodjaiants
- Managing breakpoints from the gdb console.
- * CDebugCorePlugin.java
- * CDebugModel.java
- * IAsyncExecutor.java
- * ICSourceLocator.java
- * CAddressBreakpoint.java
- * CBreakpoint.java
- * CFunctionBreakpoint.java
- * CLineBreakpoint.java
- * CWatchpoint.java
- * CDebugTarget.java
- * CSourceLocator.java
- * CSourceManager.java
-
-2003-01-27 Mikhail Khodjaiants
- Use 'equals' to compare CDI variables instead of names.
- * CStackFrame.java
-
-2003-01-27 Alain Magloire
-
- * src/org/eclipse/cdt/debug/core/cdi/model/ICDIVariableObject.java:
- * src/org/eclipse/cdt/debug/core/cdi/model/ICDIArgumentObject.java:
- * src/org/eclipse/cdt/debug/core/cdi/model/ICDIRegisterObject.java:
- Move to model package.
- * src/org/eclipse/cdt/debug/core/cdi/ICDIRegisterManager.java:
- * src/org/eclipse/cdt/debug/core/cdi/ICDIVariableManager.java:
- * src/org/eclipse/cdt/debug/internal/core/model/CDebugTarget.java:
- * src/org/eclipse/cdt/debug/internal/core/model/CRegisterGroup.java:
- Refactor/move of the ICDIRegisterObject and ICDIVariableObject
-
-2003-01-25 Alain Magloire
-
- Added new Managers:
- ICDIVariableManager
- ICDIExpressionManager
- ICDIRegisterManager
- ICDIManager.
-
- Refactor of CSession to Session, CTarget to Target
- and CThread to Thread.
- * src/org/eclipse/cdt/debug/core/cdi/model/ICDITarget.java (getGlobalVariables):
- Removed.
- * src/org/eclipse/cdt/debug/core/cdi/model/ICDIThread.java (getCurrentStackFrame):
- New method.
- * src/org/eclipse/cdt/debug/core/cdi/ICDIManger.java:
- New interface for the managers.
- * src/org/eclipse/cdt/debug/core/cdi/ICDIBreakpointManger.java:
- * src/org/eclipse/cdt/debug/core/cdi/ICDIExpressionManger.java:
- * src/org/eclipse/cdt/debug/core/cdi/ICDIVariableManger.java:
- * src/org/eclipse/cdt/debug/core/cdi/ICDIRegisterManger.java:
- * src/org/eclipse/cdt/debug/core/cdi/ICDISignalManger.java:
- * src/org/eclipse/cdt/debug/core/cdi/ICDISourceManger.java:
- * src/org/eclipse/cdt/debug/core/cdi/ICDISharedLibraryManger.java:
- Extends ICDIManager.
- * src/org/eclipse/cdt/debug/core/cdi/ICDISession.java:
- New method to return the managers.
-
- * src/org/eclipse/cdt/debug/internal/core/model/CDebuTarget.java:
- * src/org/eclipse/cdt/debug/internal/core/model/CFormattedMemoryBlock.java:
- Use the destroyEvent
-
-
-2003-01-21 Alain Magloire
- * src/org/eclipse/cdt/debug/core/cdi/event/ICDIConfiguration.java
- (supportsSharedLibary): New method.
-
-2003-01-21 Alain Magloire
-
- * src/org/eclipse/cdt/debug/core/cdi/event/ICDISuspendedEvent.java:
- Use ICDISignalReceived instead.
- * src/org/eclipse/cdt/debug/core/cdi/model/ICDISignal.java:
- New file, element of the SignalManager.
- * src/org/eclipse/cdt/debug/core/cdi/model/ICDISignalManager.java:
- Return model/ICDISignal.
- * src/org/eclipse/cdt/debug/core/cdi/model/ICDISignalReceived.java:
- New file.
- * src/org/eclipse/cdt/debug/core/internal/core/model/CDebugTarget.java:
- Use ICDISignalReceived.
- * src/org/eclipse/cdt/debug/core/internal/core/model/CThread.java:
- Use ICDISignalReceived.
-
-2003-01-21 Mikhail Khodjaiants
- Retry to set breakpoints if shared library's symbols are loaded.
- * CDebugTarget.java
- * CThread.java
- * CSharedLibraryManager.java
-
-2003-01-20 Mikhail Khodjaiants
- Fix for the 'Show breakpoints supported by selected target' action.
- * CDebugTarget.java
-
-2003-01-20 Alain Maglorei
-
- * src/build.properties: Add schema in soure.cdtdebugcore.jar
- variable.
-
-2003-01-17 Alain Magloire
-
- * src/org/eclipse/cdt/debug/core/cdi/ICDISharedLibraryManager.java
- (loadSymbols): new method takes an array of IShareLibrary
- (loadSymbols): no arguments.
-
-2003-01-16 Mikhail Khodjaiants
- Implementing the Shared Libraries view.
- * ICSharedLibrary.java
- * ICSharedLibraryManager.java
- * CDebugElement.java
- * CDebugTarget.java
- * CSharedLibrary.java
- * CSharedLibraryManager.java
-
-2003-01-16 Mikhail Khodjaiants
- * ICDILoadedEvent.java: Removed.
-
-2003-01-16 Alain Magloire
-
- * src/org/eclipse/cdt/debug/core/cdi/model/ICDIStringValue.java: Removed.
- * src/org/eclipse/cdt/debug/core/cdi/model/ICDIArrayValue.java: Removed.
- * src/org/eclipse/cdt/debug/core/cdi/model/ICDIStructureValue.java: Removed.
-
-2003-01-16 Alain Magloire
-
- * src/org/eclipse/cdt/debug/core/cdi/ICDISession.java (getSharedLibraryManager):
- New method.
- * src/org/eclipse/cdt/debug/core/cdi/model/ICDISharedLibrary.java (areSymbolsLoaded):
- Rename symbolsRead() to areSymbolsLoaded().
-
-2003-01-15 Mikhail Khodjaiants
- Added the 'ICDISharedLibraryManager' interface.
- * ICDISharedLibraryManager.java
-
-2003-01-15 Mikhail Khodjaiants
- Added new methods to the 'ICDISharedLibrary' interface.
- * ICDISharedLibarary.java
-
-2003-01-14 Mikhail Khodjaiants
- Check if thread is already disposed in the CDI event handler because the array of listeners used by EventManager
- in some situations is not up to date.
- * CThread.java
-
-2003-01-14 Alain Magloire
-
- * src/org/eclipse/cdt/debug/core/cdi/ICDIVariableManager.java: New file.
- * src/org/eclipse/cdt/debug/core/cdi/ICDIVariableObject.java: New file.
- * src/org/eclipse/cdt/debug/core/cdi/ICDIArgumentObject.java: New file.
-
-2003-01-13 Mikhail Khodjaiants
- Added the 'IRunToAddress' interface to support the 'Run To Line' action in disassembly.
- * ICDebugTarget.java: extends IRunToAddress
- * IRunToAddress.java: new interface
- * CDebugTarget.java: implementation
-
-2003-01-13 Mikhail Khodjaiants
- Fix in the thread created event handler: do nothing if thread has already created.
- * CDebugTarget.java
-
-2003-01-10 Mikhail Khodjaiants
- Implementation of address breakpoints.
- * ICAddressBreakpoint.java
- * ICDebugTarget.java
- * IDisassemblyStorage.java
- * CDebugModel.java
- * ICBreakpointManager.java
- * CAddressBreakpoint.java
- * CFunctionBreakpoint.java
- * CDebugTarget.java
- * CStackFrame.java
- * DisassemblyManager.java
- * DisassemblyStorage.java
-
-2003-01-06 Alain Magloire
-
- * build.properties: Patch from Judy Green.
-
-2003-01-06 Mikhail Khodjaiants
- Check if project exists when generating the source locations.
- * CSourceLocator.java
-
-2003-01-06 Alain Magloire
-
- * src/org/eclipse/cdt/debug/core/cdi/ICDIBreakpointManager.java (createLocation):
- New method to take an address.
-
-2003-01-02 Mikhail Khodjaiants
- The 'DisassemblyStorage' class implements an adapter for the 'IResource' class and returns the executable file.
- * IExecFileInfo.java: added a new method: 'getExecFile'
- * CDebugTarget.java
- * DisassemblyStorage.java
-
-2003-01-02 Mikhail Khodjaiants
- If breakpoint or watchpoint has been disabled before launching the debugger doesn't disable it.
- * CDebugTarget.java
-
-2002-12-29 Mikhail Khodjaiants
- Implementation of the 'Source Lookup' property page.
- * IDirectorySourceLocation.java: new interface
- * IProjectSourceLocation.java: new interface
- * CDirectorySourceLocation.java
- * CProjectSourceLocation.java
- * CSourceLocator.java
-
-2002-12-29 Mikhail Khodjaiants
- Fix in the 'supportsBreakpoints' method of CDebugTarget
- * CDebugTarget.java: No need to check if the breakpoint file belongs to the source locator.
-
-2002-12-18 Mikhail Khodjaiants
- Implementing the 'Source Lookup' property page.
- * CDirectorySourceLocation.java
- * CProjectSourceLocation.java
-
-2002-12-18 Mikhail Khodjaiants
- Check if CValue has variables before calling 'getCDIVariables'.
- * CValue.java
-
-2002-12-17 Mikhail Khodjaiants
- Formatting 'char' types.
- * CValue.java
- * CModificationVariable.java
-
-2002-12-17 Mikhail Khodjaiants
- The core support of the prompting source locator.
- * ICSourceLocator.java
- * CDebugTarget.java
- * CDirectorySourceLocation.java
- * CSourceLocator.java
- * CSourceManager.java
- * DisassemblyManager.java
-
-2002-12-17 Mikhail Khodjaiants
- The 'getLineNumber' method of CStackFrame should return the line number associated with the stack frame if the current source locator
- does not implement 'ICSourceLocator'.
- * CStackFrame.java
-
-2002-12-17 Mikhail Khodjaiants
- Changed the implementation of the 'refresh' method of CVariable.
- * CVariable.java
-
-2002-12-16 Mikhail Khodjaiants
- Added support of variable formatting.
- * ICValue.java: new type - TYPE_UNKNOWN
- * ICVariable: new interface for object contribution, set/get format and refresh methods
- * CValue.java
- * CVariable.java
-
-2002-12-13 Mikhail Khodjaiants
- Display message when 'getStackDepth' is timed out.
- * CThread.java
-
-2002-12-10 Alain Magloire
-
- * src/org/eclipse/cdt/debug/core/cdi/model/ICDIVariable.java (setFormat):
- New method to change the variable formats(hexa, octal, etc..)
-
-2002-12-10 Mikhail Khodjaiants
- If the given source file path is absolute and the source locator can not find it in the all specified locations return a FileStorage object.
- * CSourceLocator.java
-
-2002-12-09 Mikhail Khodjaiants
- Split the detail message of ICDIErrorInfo into tokens and trancate aech token if it is too long.
- * CDebugTarget.java
-
-2002-12-08 Mikhail Khodjaiants
- Display the error message with details when program is suspended because of ICDIErrorInfo.
- * CDebugTarget.java
-
-2002-12-05 Alain Magloire
-
- Some debuggers like gdb/mi can provide detail information, for example
- gdb/mi dumps errors in mi "log stream" output.
-
- * src/.../cdi/CDIException.java (getDetailMessage): New method to provide
- more information it need be.
- * src/.../cdi/ICDIErrorInfo.java (getDetailMessage: New method.
-
-2002-12-04 Mikhail Khodjaiants
- Added the 'setChanged' method to ICValue. This method should common for CValue and
- CArrayPartitionValue to implement 'setChanged' of CVariable correctly.
- * ICValue.java
- * CArrayPartitionValue.java
- * CVariable.java
-
-2002-12-02 Mikhail Khodjaiants
- Refactoring - files moved from org.eclipse.cdt.debug.core to the new package: org.eclipse.cdt.debug.core.model:
- * ICBreakpoint.java
- * ICDebugTarget.java
- * ICExpressionEvaluator.java
- * ICFunctionBreakpoint.java
- * ICLineBreakpoint.java
- * ICValue.java
- * ICWatchpoint.java
- * IDebuggerProcessSupport.java
- * IDummyStackFrame.java
- * IExecFileInfo.java
- * IFormattedMemoryBlock.java
- * IFormattedMemoryBlockRow.java
- * IGlobalVariable.java
- * IInstructionStep.java
- * IRestart.java
- * IRunToLine.java
- * IStackFrameInfo.java
- * IState.java
- * ISwitchToFrame.java
- * ISwitchToThread.java
- * ICDebugTargetType.java: new interface
- * IFormattedMemoryRetrieval: removed
-
-
-2002-12-02 Mikhail Khodjaiants
- Check if the underlying IFile exists when retrieving the path of global variable.
- * CDebugTarget.java
-
-2002-12-02 Alain Magloire
-
- * src/org/eclipse/cdt/debug/core/cdi/ICDIErrorInfo.java: New file.
-
-2002-11-28 Mikhail Khodjaiants
- 'exec-until' instead of temporary breakpoints for 'run to line'.
- * CDebugTarget.java
- * CThread.java
-
-2002-11-28 Mikhail Khodjaiants
- Live editing of the memory view: removed support of the 'Save Changes' action.
- * IFormattedMemoryBlock.java
- * CFormattedMemoryBlock.java
-
-2002-11-27 Alain Magloire
-
- * src/org/eclipse/cdt/debug/core/cdi/model/ICDITarget.java (runUntil): new method.
- * src/org/eclipse/cdt/debug/core/cdi/model/ICDIThread.java (runUntil): new method.
-
-2002-11-27 Mikhail Khodjaiants
- Typo in plugin.properties.
-
-2002-11-27 Mikhail Khodjaiants
- Fire suspend event for debug target that doesn't have threads.
- * CDebugTarget.java
-
-2002-11-27 Alain Magloire
-
- * src/.../debug/internal/core/model/CDebugTarget.java (isLittleEndian):
- Use CoreModel.getDefault().
- (getGlobals): Use CoreModel.getDefault().
-
-2002-11-24 Mikhail Khodjaiants
- Fix for watchpoints.
- * CSourceLocator.java
-
-2002-11-22 Mikhail Khodjaiants
- Cache source elements to optimize search.
- * CProjectSourceLocator.java
-
-2002-11-22 Mikhail Khodjaiants
- Fix in the source locator's search algorithm.
- * CProjectSourceLocator.java
-
-2002-11-21 Mikhail Khodjaiants
- The memory view does not display values if the address expression is '0xFFFFFFFF'.
- * CFormattedMemoryBlock.java
-
-2002-11-21 Mikhail Khodjaiants
- Added the handler of ICDIDestroyedEvent to 'CFormattedMemoryBlock.
- * CFormattedMemoryBlock.java
-
-2002-11-20 Mikhail Khodjaiants
- Fix for bug 26595.
- The type of the address expression has been changed from String to ICDIExpression to handle
- changes of the start address.
- * CDebugModel.java
- * CFormattedMemoryBlock.java
- * IFormattedMemoryBlock.java: added the 'isStartAddressChanged' method.
-
-2002-11-15 Mikhail Khodjaiants
- Partial fix for bug 25956.
- * DisassemblyManager.java: Filter out the instructions that do not belong to the function.
-
-2002-11-15 Mikhail Khodjaiants
- If the backtrace is very deep the debugger is unable to parse MI output.
- The limited number of stack frames will be displayed.
- * IDummyStackFrame.java
- * CDummyStackFrame.java
- * CStackFrame.java
- * CThread.java
-
-2002-11-14 Alain Magloire
-
- This is needed in post-mortem, application doing a
- very deep recursion and crashing the stack size, for example
- on GNU/Linux it may reach 200000 levels deep. Trying to
- bring in the UI a bactrace tree of 200000 nodes is useless.
- The UI could check the count and do the appropriate action
- by showing ranges etc ..
-
- * src/org/eclipse/cdt/debug/core/cdi/model/ICDIThread.java (getStackFrames):
- New method to provide a range lowFrame and highFrame.
- (getStackFrameCount): New method returns the depth level
- of the stackframes.
-
-2002-11-13 Mikhail Khodjaiants
- Fix for the stepping problem if the selected stack frame is not the topmost one.
- * CStackFrame.java: The 'stepToFrame' method is temporary replaced by corresponding step method.
-
-2002-11-13
- * schema/CDebugger.exsd
- * src/org/eclipse/cdt/debug/core/ICDebugConfiguration.java
- * src/org/eclipse/cdt/debug/internal/core/DebugConfiguration.java
- Added supported CPU to Debugger extension.
-
-2002-11-07 Mikhail Khodjaiants
- When a referenced project is deleted it's location is null. The source locator should
- check this when it returns the path array.
- * CProjectSourceLocation.java
-
-2002-11-05 Mikhail Khodjaiants
- Added support of the 'Add Global Variables' action of the Expressions view.
- * IExecFileInfo.java
- * IGlobalVariable.java
- * CDebugTarget.java
-
-2002-11-03 Mikhail Khodjaiants
- Added support of the formatting actions of the Memory view.
- * IFormattedMemoryBlock.java
- * CFormattedMemoryBlock.java
- * CDebugTarget.java
- * CDebugUtils.java
-
-2002-11-01 Mikhail Khodjaiants
- Added conversion utilities to support decimal format in the Memory View.
- * CDebugUtils.java
-
-2002-11-01 Mikhail Khodjaiants
- Added the 'IExecFileInfo' interface to provide access to the executable file information.
- * IExecFileInfo.java: definition
- * CDebugTarget.java: implementation
-
-2002-10-31 Mikhail Khodjaiants
- Replaced the 'IProject' argument by 'IFile' in the debug target factory methods - second phase.
- * CDebugModel.java: removed unused debug target factory methods.
- * CDebugTarget.java: removed unused constructor.
-
-2002-10-31 Mikhail Khodjaiants
- Replaced the 'IProject' argument by 'IFile' in the debug target factory methods.
- * CDebugModel.java
- * CDebugTarget.java
-
-2002-10-31 Mikhail Khodjaiants
- Fixed the synchronization bug.
- * CFormattedMemoryBlock.java
-
-2002-10-30 Mikhail Khodjaiants
- Implementing the 'Refresh Memory' action.
- * IFormattedMemoryBlock.java: added the 'refresh' method.
- * CFormattedMemoryBlock.java: implementation of the 'refresh' method.
-
-2002-10-30 Mikhail Khodjaiants
- Implementation of the 'SaveMemoryChanges' action.
- * IFormattedMemoryBlock.java: added the 'saveChanges' method.
- * CFormattedMemoryBlock.java: implementation of the 'saveChanges' method.
-
-2002-10-30 Mikhail Khodjaiants
- Fix for bug 25283.
- * CDebugTarget.java: in 'setCurrentThread' method set the 'isCurrent' flag to false for the currently current thread.
-
-2002-10-29 Mikhail Khodjaiants
- Implementing editing features of the memory view.
- * IFormattedMemoryBlockRow.java
- * IFormattedMemoryBlock.java
- * CFormattedMemoryBlock.java
-
-2002-10-28 Mikhail Khodjaiants
- Implementing editing features of the memory view.
- * IFormattedMemoryBlockRow.java
- * CFormattedMemoryBlock.java
-
-2002-10-27 Mikhail Khodjaiants
- * IFormattedMemoryBlock.java: added the 'setItemValue' method.
- * CFormattedMemoryBlock.java: implementation of the 'setItemValue' method.
-
-2002-10-16 Alain Magloire
-
- * src/.../core/cdi/model/ICDIMemoryBlock.java (refresh):
- New method.
-
-2002-10-25 Mikhail Khodjaiants
- * CDebugUtils.java: Added utilities to convert textual presentation of memory to bytes.
-
-2002-10-25 Mikhail Khodjaiants
- * IFormattedMemoryBlock.java: Replaced 'MEMORY_BYTES_PER_ROW_...' constants by 'MEMORY_NUMBER_OF_COLUMNS_...'.
-
-2002-10-25 Mikhail Khodjaiants
- Remove the 'setWordSize' method from 'IFormattedMemoryBlock' and use 'reformat' instead.
- * IFormattedMemoryBlock.java: removed the 'setWordSize' method.
- * CFormattedMemoryBlock.java: removed the implementation of 'setWordSize' method.
-
-2002-10-24 Mikhail Khodjaiants
- Support of the "Memory Unit Size" action.
- * IFormattedMemoryBlock.java: added the 'setWordsize' method.
- * CFormattedMemoryBlock.java: implementation of the 'setWordSize' method.
-
-2002-10-24 Mikhail Khodjaiants
- Moved the memory format constants from IFormattedMemoryRetrieval.java
- to IFormattedMemoryBlock.java.
- * IFormattedMemoryRetrieval.java
- * IFormattedMemoryBlock.java
-
-2002-10-24 David Inglis
- * CDebugTarget.java
- fix exception on shutdown with a connected target, CDI session
- was not terminated.
-
-2002-10-23 Mikhail Khodjaiants
- Support for debugger console.
- * CDebugModel.java: new factory methods for CDebugTarget
- * IDebuggerProcessSupport: new interface that defines the debugger
- process support functionality.
- * CDebugTarget.java: implementation of IDebuggerProcessSupport interface.
-
-2002-10-22 Alain Magloire
-
- * src/.../cdi/ICDISession.java (getSessionProcess):
- New method to let user acess directly the debugger.
-
-2002-10-20 Mikhail Khodjaiants
- Added a functionality needed to process ICDIMemoryChangedEvent.
- * IFormattedMemoryBlock.java
- * CFormattedMemoryBlock.java
-
-2002-10-20 Alain Magloire
-
- * src/.../cdi/model/ICDITarget.java (getMemoryBlock): Remove
- we use the MemoryManager instead.
- (evaluateExpressionToValue): Remove not used.
- * src/.../cdi/model/ICDISourceManager.java (getFile): Remove not use.
- (setFile): Remove not use.
- (reset): Remove not use.
-
-2002-10-19 Alain Magloire
-
- The UI needs to be told when the memory changes
- so it can update the memory view. The responsability
- of this been push to the CDI implementation to generate
- events(ICDIMemoryChangedEvent) for modified memories. The
- getSource() method of the class should return an ICDIMemoryBlock.
- Note that the CDI implementation will only try to generate
- the event for ICDIMemoryBlock that are not frozen(setFrozen()) since this
- is a potentially very time consuming operation.
-
- * src/.../cdi/event/ICDIMemoryChangedEvent.java: New Class.
-
-2002-10-17 Mikhail Khodjaiants
- Implementing the memory view support:
- * CFormattedMemoryBlock.java: implementation of the 'dispose' method added.
-
-2002-10-17 Mikhail Khodjaiants
- Implementing the memory view support:
- * CDebugModel.java
- * ICMemoryManager.java
- * IFormattedMemoryBlock.java
- * CFormattedMemoryBlock.java
- * CDebugUtils.java
- * CMemoryManager.java
-
-2002-10-16 Alain Magloire
-
- In the memory manager a string should be allowed to
- create a block since an expression can be use.
-
- * src/.../debug.core.cdi/ICDIMemoryManager.java (createMemoryBlock):
- New method that takes a string as the first argument.
-
-2002-10-15 Mikhail Khodjaiants
- * CDebugModel.java: Implementing the memory view support.
- * ICMemoryManager: Implementing the memory view support.
- * IFormattedMemoryBlock.java: Implementing the memory view support.
- * CDebugTarget.java: Implementing the memory view support.
- * CFormattedMemoryBlock.java: Implementing the memory view support.
- * CMemoryManager.java: Implementing the memory view support.
-
-2002-10-15 Mikhail Khodjaiants
- * ICDebugConstants.java: New interface that contains the constant definitions for C/C++ debug plug-in.
- * CSourceManager.java: Implementation of the 'Automatically switch to disassembly mode' preference.
-
-2002-10-15 Mikhail Khodjaiants
- * CThread.java: The previous fix should be done only when switching between frames of the same thread.
-
-2002-10-14 Mikhail Khodjaiants
- * CThread.java: Reset the register's change flag before switching to another frame.
-
-2002-10-14 Mikhail Khodjaiants
- * CThread.java: Set the correct detail for 'resume' event to prevent collapsing of the variable's and
- register's trees after stepping.
-
-2002-10-14 Mikhail Khodjaiants
- * ISwitchToThread.java: New method to get the current thread.
- * CDebugTarget.java: Implemented the 'getCurrentThread' method of the 'ISwitchToThread' interface.
- * CDebugTarget.java: Fix in the 'setCurrentThread' method.
-
-2002-10-12 Alain Magloire
-
- * core/cdi/model/ICDIMemoryBlock (supportValueModification):
- Remove the method, it should be part of a ICDIConfiguration.
-
- * core/cdi/ICDIMemoryManager (getBlock): Rename to getMemoryBlock
- (createMemoryBlock): New method to get a memory block.
-
-2002-10-12 Alain Magloire
-
- * core/cdi/ICDILocation (getInstructions): Methods
- removed is now part of SourceManager.
-
-2002-10-11 Mikhail Khodjaiants
- * CDebugTarget.java: Added return for ISourceMode to 'getAdapter'.
- * CSourceManager.java: Set the real mode when setting the source mode.
-
-2002-10-11 Mikhail Khodjaiants
- * DisassemblyStorage.java: Changed the format of the disassembly view's output.
-2002-10-11 Alain Magloire
-
- * ICDISourceManager.java (getMixedInstructions): Three
- new methods to get the src and the intructions.
-
- * ICIDMixedInstruction: New Class that return the mixed
- of source location and assembly instructions.
-
-2002-10-10 Mikhail Khodjaiants
- * CVariable.java: Made the 'fChanged' field protected to access to it from the derived class (CRegister).
- * CRegister.java: Added the 'hasValueChanged' method to 'CRegister'.
-
-2002-10-10 Mikhail Khodjaiants
- * CThread.java: Check if the selected frame is current before calling 'setCurrentStackFrame'.
-
-2002-10-10 Mikhail Khodjaiants
- * CStackFrame.java: Added Getter and Setter for 'fRefreshVariables'.
-
-2002-10-10 Mikhail Khodjaiants
- * DisassemblyManager.java: Replaced 'getInstructions( String fileName, int lineNumber )'
- by 'getInstructions( String fileName, int lineNumber, int maxLineCount )'.
-
-2002-10-10 Mikhail Khodjaiants
- * CDebugTarget.java: Implementing the disassembly mode.
- * CThread.java: Implementing the disassembly mode.
-
-2002-10-10 Mikhail Khodjaiants
- * CSourceManager.java: Implementing the disassembly mode.
- * DisassemblyManager.java: Implementing the disassembly mode.
- * DisassemblyStorage.java: Implementing the disassembly mode.
- * CDebugUtils.java: Added the 'toHexAddressString' method.
-
-2002-10-10 Alain Magloire
-
- * ICDISourceManager.java: Changing the getInstructions()
- method to take long instead of String.
diff --git a/debug/org.eclipse.cdt.debug.core/META-INF/MANIFEST.MF b/debug/org.eclipse.cdt.debug.core/META-INF/MANIFEST.MF
deleted file mode 100644
index 3294c5b1b1a..00000000000
--- a/debug/org.eclipse.cdt.debug.core/META-INF/MANIFEST.MF
+++ /dev/null
@@ -1,24 +0,0 @@
-Manifest-Version: 1.0
-Bundle-ManifestVersion: 2
-Bundle-Name: %pluginName
-Bundle-SymbolicName: org.eclipse.cdt.debug.core; singleton:=true
-Bundle-Version: 4.0.0.qualifier
-Bundle-Activator: org.eclipse.cdt.debug.core.CDebugCorePlugin
-Bundle-Vendor: %providerName
-Bundle-Localization: plugin
-Export-Package: org.eclipse.cdt.debug.core,
- org.eclipse.cdt.debug.core.cdi,
- org.eclipse.cdt.debug.core.cdi.event,
- org.eclipse.cdt.debug.core.cdi.model,
- org.eclipse.cdt.debug.core.cdi.model.type,
- org.eclipse.cdt.debug.core.model,
- org.eclipse.cdt.debug.core.sourcelookup,
- org.eclipse.cdt.debug.internal.core,
- org.eclipse.cdt.debug.internal.core.breakpoints,
- org.eclipse.cdt.debug.internal.core.model,
- org.eclipse.cdt.debug.internal.core.sourcelookup
-Require-Bundle: org.eclipse.core.resources;bundle-version="[3.2.0,4.0.0)",
- org.eclipse.debug.core;bundle-version="[3.2.0,4.0.0)",
- org.eclipse.cdt.core;bundle-version="[4.0.0,5.0.0)",
- org.eclipse.core.runtime;bundle-version="[3.2.0,4.0.0)"
-Eclipse-LazyStart: true
diff --git a/debug/org.eclipse.cdt.debug.core/NEWS b/debug/org.eclipse.cdt.debug.core/NEWS
deleted file mode 100644
index e0a6fd23f12..00000000000
--- a/debug/org.eclipse.cdt.debug.core/NEWS
+++ /dev/null
@@ -1,5 +0,0 @@
-Release CDT-3.0
-
- * Memory View support (bug 73168)
- - removed the classes and interfaces used by the old memory view
- - added support for the Memory view provided by Eclipse 3.1
diff --git a/debug/org.eclipse.cdt.debug.core/about.html b/debug/org.eclipse.cdt.debug.core/about.html
deleted file mode 100644
index 9c7ba0a57bc..00000000000
--- a/debug/org.eclipse.cdt.debug.core/about.html
+++ /dev/null
@@ -1,24 +0,0 @@
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml"><head>
-<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"><title>About</title></head>
-
-<body lang="EN-US">
-<h2>About This Content</h2>
-
-<p>May 2, 2006</p>
-<h3>License</h3>
-
-<p>The Eclipse Foundation makes available all content in this plug-in ("Content"). Unless otherwise
-indicated below, the Content is provided to you under the terms and conditions of the
-Eclipse Public License Version 1.0 ("EPL"). A copy of the EPL is available
-at <a href="http://www.eclipse.org/legal/epl-v10.html">http://www.eclipse.org/legal/epl-v10.html</a>.
-For purposes of the EPL, "Program" will mean the Content.</p>
-
-<p>If you did not receive this Content directly from the Eclipse Foundation, the Content is
-being redistributed by another party ("Redistributor") and different terms and conditions may
-apply to your use of any object code in the Content. Check the Redistributor's license that was
-provided with the Content. If no such license exists, contact the Redistributor. Unless otherwise
-indicated below, the terms and conditions of the EPL still apply to any source code in the Content
-and such source code may be obtained at <a href="http://www.eclipse.org/">http://www.eclipse.org</a>.</p>
-
-</body></html> \ No newline at end of file
diff --git a/debug/org.eclipse.cdt.debug.core/build.properties b/debug/org.eclipse.cdt.debug.core/build.properties
deleted file mode 100644
index d0e94a00d7d..00000000000
--- a/debug/org.eclipse.cdt.debug.core/build.properties
+++ /dev/null
@@ -1,24 +0,0 @@
-###############################################################################
-# Copyright (c) 2003, 2006 QNX Software Systems and others.
-# All rights reserved. This program and the accompanying materials
-# are made available under the terms of the Eclipse Public License v1.0
-# which accompanies this distribution, and is available at
-# http://www.eclipse.org/legal/epl-v10.html
-#
-# Contributors:
-# QNX Software Systems - initial API and implementation
-###############################################################################
-
-bin.includes = plugin.xml,\
- plugin.properties,\
- about.html,\
- .,\
- META-INF/
-javadoc.packages = org.eclipse.cdt.debug.core.*,\
- org.eclipse.cdt.debug.core.cdi.*,\
- org.eclipse.cdt.debug.core.cdi.event.*,\
- org.eclipse.cdt.debug.core.cdi.model.*
-src.includes = schema/
-source.. = src/,\
- cdi/
-
diff --git a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/CDIException.java b/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/CDIException.java
deleted file mode 100644
index bbfbddbe95b..00000000000
--- a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/CDIException.java
+++ /dev/null
@@ -1,56 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.cdt.debug.core.cdi;
-
-/**
- *
- * Represents a failure in the CDI model operations.
- *
- * @since Jul 9, 2002
- */
-public class CDIException extends Exception {
-
- /**
- * All serializable objects should have a stable serialVersionUID
- */
- private static final long serialVersionUID = 1L;
-
- String details = ""; //$NON-NLS-1$
-
- public CDIException() {
- super();
- }
-
- public CDIException(String s) {
- super(s);
- }
-
- public CDIException(String s, String d) {
- super(s);
- details = d;
- }
-
- /**
- * Returns a more details message(if any).
- */
- public String getDetailMessage() {
- return details;
- }
-
- /* (non-Javadoc)
- * @see java.lang.Object#toString()
- */
- public String toString() {
- return super.toString() + '['+ getDetailMessage() + ']';
- }
-
-}
diff --git a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/ICDIAddressLocation.java b/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/ICDIAddressLocation.java
deleted file mode 100644
index 1587bb5c7c0..00000000000
--- a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/ICDIAddressLocation.java
+++ /dev/null
@@ -1,30 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2005 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.cdt.debug.core.cdi;
-
-import java.math.BigInteger;
-
-/**
- *
- * Represents a line location in the debuggable program.
- *
- */
-public interface ICDIAddressLocation extends ICDILocation {
-
- /**
- * Returns the address of this location.
- *
- * @return BigInteger - the address of this location
- */
- BigInteger getAddress();
-
-}
diff --git a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/ICDIBreakpointHit.java b/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/ICDIBreakpointHit.java
deleted file mode 100644
index 64c7a51a74a..00000000000
--- a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/ICDIBreakpointHit.java
+++ /dev/null
@@ -1,30 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.cdt.debug.core.cdi;
-
-import org.eclipse.cdt.debug.core.cdi.model.ICDIBreakpoint;
-
-/**
- *
- * Represents an information provided by the session when the program
- * stopped by a breakpoint.
- *
- * @since Aug 27, 2002
- */
-public interface ICDIBreakpointHit extends ICDISessionObject {
- /**
- * Returns the breakpoint that stopped the program.
- *
- * @return the breakpoint that stopped the program
- */
- ICDIBreakpoint getBreakpoint();
-}
diff --git a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/ICDICondition.java b/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/ICDICondition.java
deleted file mode 100644
index 807ef512425..00000000000
--- a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/ICDICondition.java
+++ /dev/null
@@ -1,43 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.cdt.debug.core.cdi;
-
-/**
- *
- * Represents a break condition.
- *
- * @since Jul 9, 2002
- */
-public interface ICDICondition {
- /**
- * Returns the condition expression.
- *
- * @return the condition expression
- */
- String getExpression();
-
- /**
- * Returns the ignore count of this condition.
- *
- * @return the ignore count of this condition
- */
- int getIgnoreCount();
-
- /**
- * Returns the thread Ids for this condition.
- *
- * @return the thread Ids for this condition.
- */
- String[] getThreadIds();
-
- boolean equals(ICDICondition cond);
-}
diff --git a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/ICDIEndSteppingRange.java b/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/ICDIEndSteppingRange.java
deleted file mode 100644
index c8566353e74..00000000000
--- a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/ICDIEndSteppingRange.java
+++ /dev/null
@@ -1,21 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.core.cdi;
-
-/**
- *
- * Represents an information provided by the session when a step command
- * is completed.
- *
- * @since Jul 10, 2002
- */
-public interface ICDIEndSteppingRange extends ICDISessionObject {
-}
diff --git a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/ICDIErrorInfo.java b/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/ICDIErrorInfo.java
deleted file mode 100644
index b57b03b3d89..00000000000
--- a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/ICDIErrorInfo.java
+++ /dev/null
@@ -1,31 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.core.cdi;
-
-/**
- *
- * Represents an information provided by the session when the program
- * exited.
- *
- * @since Jul 10, 2002
- */
-public interface ICDIErrorInfo extends ICDISessionObject {
-
- /**
- * Returns the error message.
- */
- String getMessage();
-
- /**
- * Returns a more verbatim error message(if any).
- */
- String getDetailMessage();
-}
diff --git a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/ICDIEventManager.java b/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/ICDIEventManager.java
deleted file mode 100644
index f6232f4ce9c..00000000000
--- a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/ICDIEventManager.java
+++ /dev/null
@@ -1,43 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.cdt.debug.core.cdi;
-
-import org.eclipse.cdt.debug.core.cdi.event.ICDIEventListener;
-
-/**
- *
- * Clients interested in the CDI model change notification may
- * register with this object.
- *
- * @since Jul 10, 2002
- */
-public interface ICDIEventManager extends ICDISessionObject {
-
- /**
- * Adds the given listener to the collection of registered
- * event listeners. Has no effect if an identical listener is
- * already registered.
- *
- * @param listener - the listener to add
- */
- void addEventListener( ICDIEventListener listener );
-
- /**
- * Removes the given listener from the collection of registered
- * event listeners. Has no effect if an identical listener is not
- * already registered.
- *
- * @param listener - the listener to remove
- */
- void removeEventListener( ICDIEventListener listener );
-
-}
diff --git a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/ICDIExitInfo.java b/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/ICDIExitInfo.java
deleted file mode 100644
index b5f88e96b0a..00000000000
--- a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/ICDIExitInfo.java
+++ /dev/null
@@ -1,30 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.cdt.debug.core.cdi;
-
-/**
- *
- * Represents an information provided by the session when the program
- * exited.
- *
- * @since Jul 10, 2002
- */
-public interface ICDIExitInfo extends ICDISessionObject {
-
- /**
- * Returns an exit code.
- *
- * @return an exit code
- */
- int getCode();
-
-}
diff --git a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/ICDIFileLocation.java b/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/ICDIFileLocation.java
deleted file mode 100644
index 7232ba7c5b7..00000000000
--- a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/ICDIFileLocation.java
+++ /dev/null
@@ -1,24 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2005 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.cdt.debug.core.cdi;
-
-public interface ICDIFileLocation extends ICDILocation {
-
- /**
- * Returns the source file of this location or <code>null</code>
- * if the source file is unknown.
- *
- * @return the source file of this location
- */
- String getFile();
-
-}
diff --git a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/ICDIFormat.java b/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/ICDIFormat.java
deleted file mode 100644
index 63c0ccd5bf2..00000000000
--- a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/ICDIFormat.java
+++ /dev/null
@@ -1,24 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.core.cdi;
-
-/**
- * Format constants.
- */
-public interface ICDIFormat {
-
- final static int NATURAL = 0;
- final static int DECIMAL = 1;
- final static int BINARY = 2;
- final static int OCTAL = 3;
- final static int HEXADECIMAL = 4;
-
-}
diff --git a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/ICDIFunctionFinished.java b/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/ICDIFunctionFinished.java
deleted file mode 100644
index 0e1d81942c0..00000000000
--- a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/ICDIFunctionFinished.java
+++ /dev/null
@@ -1,35 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2002, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.core.cdi;
-
-import org.eclipse.cdt.debug.core.cdi.model.ICDIValue;
-import org.eclipse.cdt.debug.core.cdi.model.type.ICDIType;
-
-/*
- * ICDIFunctionFinished
- */
-public interface ICDIFunctionFinished extends ICDIEndSteppingRange {
-
- /**
- * Return the type of the return value of
- * the function.
- *
- * @return ICDIType returnType value
- */
- ICDIType getReturnType() throws CDIException;
-
- /**
- * The return value of the function.
- *
- * @return
- */
- ICDIValue getReturnValue() throws CDIException;
-}
diff --git a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/ICDIFunctionLocation.java b/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/ICDIFunctionLocation.java
deleted file mode 100644
index a01da39ec4a..00000000000
--- a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/ICDIFunctionLocation.java
+++ /dev/null
@@ -1,29 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2005 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.cdt.debug.core.cdi;
-
-/**
- *
- * Represents a file:function location in the debuggable program.
- *
- */
-public interface ICDIFunctionLocation extends ICDIFileLocation {
-
- /**
- * Returns the function of this location or <code>null</code>
- * if the function is unknown.
- *
- * @return the function of this location
- */
- String getFunction();
-
-}
diff --git a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/ICDILineLocation.java b/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/ICDILineLocation.java
deleted file mode 100644
index 622db49c462..00000000000
--- a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/ICDILineLocation.java
+++ /dev/null
@@ -1,28 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2005 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.cdt.debug.core.cdi;
-
-/**
- *
- * Represents a file:line location in the debuggable program.
- *
- */
-public interface ICDILineLocation extends ICDIFileLocation {
-
- /**
- * Returns the line number of this location or <code>0</code>
- * if the line number is unknown.
- *
- * @return the line number of this location
- */
- int getLineNumber();
-}
diff --git a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/ICDILocation.java b/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/ICDILocation.java
deleted file mode 100644
index c0936d78230..00000000000
--- a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/ICDILocation.java
+++ /dev/null
@@ -1,25 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2005 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.core.cdi;
-
-/**
- *
- * Represents a location in the debuggable program.
- *
- */
-public interface ICDILocation {
-
- /**
- * Return true if both locations refer to the same place.
- */
- boolean equals(ICDILocation location);
-
-}
diff --git a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/ICDILocator.java b/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/ICDILocator.java
deleted file mode 100644
index 6f8760de0dc..00000000000
--- a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/ICDILocator.java
+++ /dev/null
@@ -1,19 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2005 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.cdt.debug.core.cdi;
-
-/**
- * Locator contains information file:function:line:Address
- */
-public interface ICDILocator extends ICDIFileLocation, ICDILineLocation, ICDIFunctionLocation, ICDIAddressLocation {
-
-}
diff --git a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/ICDISession.java b/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/ICDISession.java
deleted file mode 100644
index 16a7ba9a5f0..00000000000
--- a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/ICDISession.java
+++ /dev/null
@@ -1,75 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.cdt.debug.core.cdi;
-
-import org.eclipse.cdt.debug.core.cdi.model.ICDITarget;
-
-/**
- *
- * Represents a debug session.
- *
- * @since Jun 28, 2002
- */
-public interface ICDISession {
- /**
- * Returns all the debug targets associatd with this sesion,
- * or an empty collection if no debug targets are associated
- * with this session.
- *
- * @return an array of debug targets
- */
- ICDITarget[] getTargets();
-
- /**
- * Sets the value of a debug session attribute.
- *
- * @param key the attribute key
- * @param value the attribute value
- */
- void setAttribute(String key, String value);
-
- /**
- * Returns the value of a debug session attribute.
- *
- * @param key the attribute key
- * @return value the attribute value, or <code>null</code> if undefined
- */
- String getAttribute(String key);
-
- /**
- * Returns the event manager of this debug session.
- *
- * @return the event manager
- */
- ICDIEventManager getEventManager();
-
- /**
- * Returns the configuration description of this debug session.
- *
- * @return the configuration description
- */
- ICDISessionConfiguration getConfiguration();
-
- /**
- * Causes this element to terminate, generating a <code>KIND_TERMINATE</code> event.
- *
- * @exception CDIException on failure. Reasons include:
- */
- void terminate() throws CDIException;
-
- /**
- * Gaves direct access to the underlying debugger process.
- * @return the debugger process.
- */
- Process getSessionProcess() throws CDIException;
-
-}
diff --git a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/ICDISessionConfiguration.java b/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/ICDISessionConfiguration.java
deleted file mode 100644
index 957fcb22b82..00000000000
--- a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/ICDISessionConfiguration.java
+++ /dev/null
@@ -1,27 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.cdt.debug.core.cdi;
-
-/**
- * Describes the configuration of debug session.
- *
- * @since Aug 6, 2002
- */
-public interface ICDISessionConfiguration extends ICDISessionObject {
-
- /**
- * Returns whether the session should be terminated when the inferior exits.
- *
- * @return whether the session be terminated when the inferior exits
- */
- boolean terminateSessionOnExit();
-}
diff --git a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/ICDISessionObject.java b/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/ICDISessionObject.java
deleted file mode 100644
index d8d0a89d288..00000000000
--- a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/ICDISessionObject.java
+++ /dev/null
@@ -1,27 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.core.cdi;
-
-/**
- *
- * Represents an object associated with a debug session.
- *
- * @since Jul 9, 2002
- */
-public interface ICDISessionObject {
-
- /**
- * Returns the debug session this object is associated with.
- *
- * @return the debug session this object is associated with
- */
- ICDISession getSession();
-}
diff --git a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/ICDISharedLibraryEvent.java b/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/ICDISharedLibraryEvent.java
deleted file mode 100644
index f6e46b050c9..00000000000
--- a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/ICDISharedLibraryEvent.java
+++ /dev/null
@@ -1,23 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.cdt.debug.core.cdi;
-
-
-/**
- *
- * Represents an information provided by the session when the program
- * stopped by a shared libary event.
- *
- * @since Aug 18, 2003
- */
-public interface ICDISharedLibraryEvent extends ICDISessionObject {
-}
diff --git a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/ICDISignalExitInfo.java b/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/ICDISignalExitInfo.java
deleted file mode 100644
index 50b4f96be47..00000000000
--- a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/ICDISignalExitInfo.java
+++ /dev/null
@@ -1,31 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.core.cdi;
-
-/**
- * Represents information provided by the session when the program exited.
- *
- */
-public interface ICDISignalExitInfo extends ICDISessionObject {
-
- /**
- * Method getName.
- * @return String
- */
- String getName();
-
- /**
- * Method getDescription.
- * @return String
- */
- String getDescription();
-
-}
diff --git a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/ICDISignalReceived.java b/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/ICDISignalReceived.java
deleted file mode 100644
index c95d864a780..00000000000
--- a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/ICDISignalReceived.java
+++ /dev/null
@@ -1,29 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.cdt.debug.core.cdi;
-
-import org.eclipse.cdt.debug.core.cdi.model.ICDISignal;
-
-/**
- *
- * Represents a signal.
- *
- * @since Jul 10, 2002
- */
-public interface ICDISignalReceived extends ICDISessionObject {
-
- /**
- * Method getSignal.
- * @return ICDISignal
- */
- ICDISignal getSignal();
-}
diff --git a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/ICDITraceManager.java b/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/ICDITraceManager.java
deleted file mode 100644
index 45cb0373fce..00000000000
--- a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/ICDITraceManager.java
+++ /dev/null
@@ -1,161 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.cdt.debug.core.cdi;
-
-import java.math.BigInteger;
-
-import org.eclipse.cdt.debug.core.cdi.model.ICDITracepoint;
-
-/**
- * Manages the collection of registered tracepoints and trace snapshoits
- * in the debug session. Provides methods to control tracing.
- *
- * @since May 15, 2003
- */
-public interface ICDITraceManager extends ICDISessionObject {
- /**
- * Returns a collection of all tracepoints set for this session.
- * Returns an empty array if no tracepoints are set.
- *
- * @return a collection of all tracepoints set for this session
- * @throws CDIException on failure. Reasons include:
- */
- ICDITracepoint[] getTracepoints() throws CDIException;
-
- /**
- * Deletes the given tracepoint.
- *
- * @param tracepoint - a tracepoint to be deleted
- * @throws CDIException on failure. Reasons include:
- */
- void deleteTracepoint( ICDITracepoint tracepoint ) throws CDIException;
-
- /**
- * Deletes the given array of tracepoints.
- *
- * @param tracepoints - the array of tracepoints to be deleted
- * @throws CDIException on failure. Reasons include:
- */
- void deleteTracepoints( ICDITracepoint[] tracepoints ) throws CDIException;
-
- /**
- * Deletes all tracepoints.
- *
- * @throws CDIException on failure. Reasons include:
- */
- void deleteAllTracepoints() throws CDIException;
-
- /**
- * Sets a tracepoint at the given location.
- * The tracepoint is set acording to the choices:
- * <pre>
- * if location.getFile() != null then
- * if location.getFunction() != null then
- * tracepoint = file:function
- * else
- * tracepoint = file:line
- * else if (location.getFuntion() != null) then
- * tracepoint = function
- * else if (location.getLineNumber() != 0 then
- * tracepoint = line
- * else
- * tracepoint = address
- * end
- * </pre>
- *
- * @param location - the location
- * @return a tracepoint
- * @throws CDIException on failure. Reasons include:
- */
- ICDITracepoint setTracepoint( ICDILocation location ) throws CDIException;
-
- /**
- * Allows the manager to interrupt the excution of program
- * when setting a tracepoint.
- */
- void allowProgramInterruption( boolean allow );
-
- /**
- * Starts the tracing and begins collecting data.
- *
- * @throws CDIException on failure. Reasons include:
- */
- void startTracing() throws CDIException;
-
- /**
- * Stops the tracing and ends collecting data.
- *
- * @throws CDIException on failure. Reasons include:
- */
- void stopTracing() throws CDIException;
-
- /**
- * Returns the status of tracing.
- *
- * @return the status of tracing
- * @throws CDIException on failure. Reasons include:
- */
- boolean isTracing() throws CDIException;
-
- /**
- * Enables/disables the snapshot debugging mode.
- *
- * @param enabled <code>true</code> to enable, and <code>false</code>
- * to disable
- * @throws CDIException on failure. Reasons include:
- */
- void enableSnapshotMode( boolean enabled ) throws CDIException;
-
- /**
- * Returns all trace snapshots for this session.
- *
- * @return all trace snapshots for this session
- * @throws CDIException on failure. Reasons include:
- */
- ICDITraceSnapshot[] getSnapshots() throws CDIException;
-
- /**
- * Returns all trace snapshots associated with the given tracepoints.
- *
- * @param tracepoints - an array of tracepoints
- * @return all trace snapshots associated with the given tracepoints
- * @throws CDIException on failure. Reasons include:
- */
- ICDITraceSnapshot[] getSnapshots( ICDITracepoint[] tracepoints ) throws CDIException;
-
- /**
- * Returns all trace snapshots associated with the given locations.
- *
- * @param locations - an array of locations
- * @return all trace snapshots associated with the given locations
- * @throws CDIException on failure. Reasons include:
- */
- ICDITraceSnapshot[] getSnapshots( ICDILocation[] locations ) throws CDIException;
-
- /**
- * Creates an ICDILocation object for given file name and line number or function.
- *
- * @param file - a file name
- * @param function - a function name
- * @param line - a line number
- * @return an ICDILocation object
- */
- ICDILocation createLocation( String file, String function, int line );
-
- /**
- * Creates an ICDILocation object for given address.
- *
- * @param address - an address
- * @return an ICDILocation object
- */
- ICDILocation createLocation( BigInteger address );
-}
diff --git a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/ICDITraceSnapshot.java b/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/ICDITraceSnapshot.java
deleted file mode 100644
index 5ecfbfccd7b..00000000000
--- a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/ICDITraceSnapshot.java
+++ /dev/null
@@ -1,52 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.cdt.debug.core.cdi;
-
-import org.eclipse.cdt.debug.core.cdi.model.ICDIObject;
-import org.eclipse.cdt.debug.core.cdi.model.ICDITracepoint;
-
-/**
- * Represents a trace snapshot in the debug session.
- *
- * @since May 15, 2003
- */
-public interface ICDITraceSnapshot extends ICDISessionObject {
-
- /**
- * Returns the number of this snapshot.
- *
- * @return the number of this snapshot
- */
- int getNumber();
-
- /**
- * Selects this snapshot.
- *
- * @throws CDIException on failure. Reasons include:
- */
- void select() throws CDIException;
-
- /**
- * Returns the data collected at this snapshot.
- *
- * @return the data collected at this snapshot
- * @throws CDIException on failure. Reasons include:
- */
- ICDIObject[] getData() throws CDIException;
-
- /**
- * Returns the array of tracepoints associated with this snapshot.
- *
- * @return array of tracepoints
- */
- ICDITracepoint[] getTracepoints();
-}
diff --git a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/ICDIWatchpointScope.java b/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/ICDIWatchpointScope.java
deleted file mode 100644
index e39db7a2149..00000000000
--- a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/ICDIWatchpointScope.java
+++ /dev/null
@@ -1,29 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.core.cdi;
-
-import org.eclipse.cdt.debug.core.cdi.model.ICDIWatchpoint;
-
-/**
- *
- * Represents an information provided by the session when a watchpoint
- * is going out of scope.
- *
- * @since Aug 27, 2002
- */
-public interface ICDIWatchpointScope extends ICDISessionObject {
- /**
- * Returns the out of scope watchpoint.
- *
- * @return the watchpoint
- */
- ICDIWatchpoint getWatchpoint();
-}
diff --git a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/ICDIWatchpointTrigger.java b/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/ICDIWatchpointTrigger.java
deleted file mode 100644
index 4f53301d94a..00000000000
--- a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/ICDIWatchpointTrigger.java
+++ /dev/null
@@ -1,43 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.core.cdi;
-
-import org.eclipse.cdt.debug.core.cdi.model.ICDIWatchpoint;
-
-/**
- *
- * Represents an information provided by the session when a watchpoint
- * is triggered.
- *
- * @since Aug 27, 2002
- */
-public interface ICDIWatchpointTrigger extends ICDISessionObject {
- /**
- * Returns the triggered watchpoint.
- *
- * @return the triggered watchpoint
- */
- ICDIWatchpoint getWatchpoint();
-
- /**
- * Returns the old value of the watching expression.
- *
- * @return the old value of the watching expression
- */
- String getOldValue();
-
- /**
- * Returns the new value of the watching expression.
- *
- * @return the new value of the watching expression
- */
- String getNewValue();
-}
diff --git a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/event/ICDIBreakpointMovedEvent.java b/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/event/ICDIBreakpointMovedEvent.java
deleted file mode 100644
index 4329e90ad1c..00000000000
--- a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/event/ICDIBreakpointMovedEvent.java
+++ /dev/null
@@ -1,26 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2007 Nokia and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * Nokia - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.core.cdi.event;
-
-import org.eclipse.cdt.debug.core.cdi.ICDILocator;
-
-/**
- *
- * Notifies that a breakpoint has changed location.
- */
-
-public interface ICDIBreakpointMovedEvent extends ICDIEvent {
-
- /** Returns the new location for the breakpoint.
- * @return the breakpoint's new location.
- */
- ICDILocator getNewLocation();
-}
diff --git a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/event/ICDIBreakpointProblemEvent.java b/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/event/ICDIBreakpointProblemEvent.java
deleted file mode 100644
index 827fbd73730..00000000000
--- a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/event/ICDIBreakpointProblemEvent.java
+++ /dev/null
@@ -1,57 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2007 Nokia and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * Nokia - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.core.cdi.event;
-
-import org.eclipse.cdt.debug.core.cdi.model.ICDIBreakpoint;
-
-/**
- *
- * Notifies that a breakpoint problem has occurred.
- */
-public interface ICDIBreakpointProblemEvent {
-
- /** The problem type is a string that identifies specific
- * kinds of breakproblems.
- * @return problem type name
- */
- String getProblemType();
-
- /** The CDI breakpoint that has the problem
- * @return the cdi breakpoint that has the problem
- */
- ICDIBreakpoint getBreakpoint();
-
- /** A description of the problem.
- * This will be presented in the problems view.
- * @return a description of the problem
- */
- String getDescription();
-
- /** The severity code maps to the IMarker.SEVERITY_XXX constants.
- * @return severity code.
- */
- int getSeverity();
-
- /** Indicated that existing problems of this type and at this
- * breakpoint's location will be removed, no new ones will
- * be added.
- * @return only remove existing problems
- */
- boolean removeOnly();
-
- /** Indicated that any existing problems of this type
- * and at this breakpoint's location will be removed
- * before the new problem is added.
- * @return remove any existing markers
- */
- boolean removeExisting();
-
-}
diff --git a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/event/ICDIChangedEvent.java b/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/event/ICDIChangedEvent.java
deleted file mode 100644
index e21a0db19ba..00000000000
--- a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/event/ICDIChangedEvent.java
+++ /dev/null
@@ -1,21 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.core.cdi.event;
-
-/**
- *
- * Notifies that the originator has changed.
- * Can be originated by any CDI model object.
- *
- * @since Jul 10, 2002
- */
-public interface ICDIChangedEvent extends ICDIEvent {
-}
diff --git a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/event/ICDICreatedEvent.java b/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/event/ICDICreatedEvent.java
deleted file mode 100644
index 2ad8f72bede..00000000000
--- a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/event/ICDICreatedEvent.java
+++ /dev/null
@@ -1,26 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.cdt.debug.core.cdi.event;
-
-/**
- *
- * Notifies that the originator has been created.
- * The originators:
- * <ul>
- * <li>target (ICDITarget)
- * <li>thread (ICDIThread)
- * </ul>
- *
- * @since Jul 10, 2002
- */
-public interface ICDICreatedEvent extends ICDIEvent {
-}
diff --git a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/event/ICDIDestroyedEvent.java b/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/event/ICDIDestroyedEvent.java
deleted file mode 100644
index ebd0fb08017..00000000000
--- a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/event/ICDIDestroyedEvent.java
+++ /dev/null
@@ -1,25 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.core.cdi.event;
-
-/**
- *
- * Notifies that the originator has terminated.
- * The originators:
- * <ul>
- * <li>target (ICDITarget)
- * <li>thread (ICDIThread)
- * </ul>
- *
- * @since Jul 10, 2002
- */
-public interface ICDIDestroyedEvent extends ICDIEvent {
-}
diff --git a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/event/ICDIDisconnectedEvent.java b/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/event/ICDIDisconnectedEvent.java
deleted file mode 100644
index f1986b93f79..00000000000
--- a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/event/ICDIDisconnectedEvent.java
+++ /dev/null
@@ -1,25 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.cdt.debug.core.cdi.event;
-
-/**
- *
- * Notifies that the originator has disconnected.
- * The originators:
- * <ul>
- * <li>target (ICDITarget)
- * </ul>
- *
- * @since Jul 10, 2002
- */
-public interface ICDIDisconnectedEvent extends ICDIEvent {
-}
diff --git a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/event/ICDIEvent.java b/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/event/ICDIEvent.java
deleted file mode 100644
index 60f07c331fb..00000000000
--- a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/event/ICDIEvent.java
+++ /dev/null
@@ -1,29 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.cdt.debug.core.cdi.event;
-
-import org.eclipse.cdt.debug.core.cdi.model.ICDIObject;
-
-/**
- *
- * A base interface for all CDI events.
- *
- * @since Jul 18, 2002
- */
-public interface ICDIEvent {
- /**
- * The CDI object on which the event initially occurred.
- *
- * @return the CDI object on which the event initially occurred
- */
- ICDIObject getSource();
-}
diff --git a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/event/ICDIEventListener.java b/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/event/ICDIEventListener.java
deleted file mode 100644
index b2b5c7fe89c..00000000000
--- a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/event/ICDIEventListener.java
+++ /dev/null
@@ -1,28 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.cdt.debug.core.cdi.event;
-
-/**
- *
- * An event listener registers with the event manager to receive event
- * notification from the CDI model objects.
- *
- * @since Jul 10, 2002
- */
-public interface ICDIEventListener {
- /**
- * Notifies this listener of the given event.
- *
- * @param event - the event
- */
- void handleDebugEvents(ICDIEvent[] event);
-}
diff --git a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/event/ICDIExitedEvent.java b/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/event/ICDIExitedEvent.java
deleted file mode 100644
index d4d24ced639..00000000000
--- a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/event/ICDIExitedEvent.java
+++ /dev/null
@@ -1,33 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.core.cdi.event;
-
-import org.eclipse.cdt.debug.core.cdi.ICDISessionObject;
-
-/**
- *
- * Notifies that the program has exited.
- * The originators:
- * <ul>
- * <li>target (ICDITarget)
- * </ul>
- *
- * @since Jul 10, 2002
- */
-public interface ICDIExitedEvent extends ICDIDestroyedEvent {
- /**
- * Returns the information provided by the session when program
- * is exited.
- *
- * @return the exit information
- */
- ICDISessionObject getReason();
-}
diff --git a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/event/ICDIMemoryChangedEvent.java b/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/event/ICDIMemoryChangedEvent.java
deleted file mode 100644
index a0f2609a29b..00000000000
--- a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/event/ICDIMemoryChangedEvent.java
+++ /dev/null
@@ -1,25 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.core.cdi.event;
-
-import java.math.BigInteger;
-
-/**
- *
- * Notifies that the originator has changed.
- *
- */
-public interface ICDIMemoryChangedEvent extends ICDIChangedEvent {
- /**
- * @return the modified addresses.
- */
- BigInteger[] getAddresses();
-}
diff --git a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/event/ICDIRestartedEvent.java b/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/event/ICDIRestartedEvent.java
deleted file mode 100644
index 4e697fd1d89..00000000000
--- a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/event/ICDIRestartedEvent.java
+++ /dev/null
@@ -1,25 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.cdt.debug.core.cdi.event;
-
-/**
- *
- * Notifies that the originator has been restarted.
- * The originators:
- * <ul>
- * <li>target (ICDITarget)
- * </ul>
- *
- * @since Jul 11, 2002
- */
-public interface ICDIRestartedEvent extends ICDIEvent {
-}
diff --git a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/event/ICDIResumedEvent.java b/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/event/ICDIResumedEvent.java
deleted file mode 100644
index 024586bee8b..00000000000
--- a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/event/ICDIResumedEvent.java
+++ /dev/null
@@ -1,38 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.core.cdi.event;
-
-/**
- *
- * Notifies that the originator has been resumed.
- * The originators:
- * <ul>
- * <li>target (ICDITarget)
- * <li>thread (ICDIThread)
- * </ul>
- *
- * @since Jul 10, 2002
- */
-public interface ICDIResumedEvent extends ICDIEvent {
- final static public int CONTINUE = 0;
- final static public int STEP_OVER = 1;
- final static public int STEP_INTO = 2;
- final static public int STEP_OVER_INSTRUCTION = 3;
- final static public int STEP_INTO_INSTRUCTION = 4;
- final static public int STEP_RETURN = 5;
-
- /**
- * Returns the stepping type.
- *
- * @return the stepping type
- */
- int getType();
-}
diff --git a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/event/ICDISuspendedEvent.java b/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/event/ICDISuspendedEvent.java
deleted file mode 100644
index 155d9f4de13..00000000000
--- a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/event/ICDISuspendedEvent.java
+++ /dev/null
@@ -1,43 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.cdt.debug.core.cdi.event;
-
-import org.eclipse.cdt.debug.core.cdi.ICDISessionObject;
-
-/**
- *
- * Notifies that the originator has been suspended.
- * The originators:
- * <ul>
- * <li>target (ICDITarget)
- * <li>thread (ICDIThread)
- * </ul>
- * The reason of the suspension can be one of the following session
- * objects:
- * <ul>
- * <li>breakpoint (ICDIBreakpoint)
- * <li>signal (ICDISignalReceived)
- * <li>end of the stepping range (ICDIEndSteppingRange)
- * </ul>
- *
- * @since Jul 10, 2002
- */
-public interface ICDISuspendedEvent extends ICDIEvent {
-
- /**
- * Returns the session object that caused the suspension.
- *
- * @return ICDIObject
- */
- ICDISessionObject getReason();
-
-}
diff --git a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/ICDIAddressBreakpoint.java b/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/ICDIAddressBreakpoint.java
deleted file mode 100644
index d8b71b6c387..00000000000
--- a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/ICDIAddressBreakpoint.java
+++ /dev/null
@@ -1,21 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2005 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.cdt.debug.core.cdi.model;
-
-/**
- *
- * Represents an address breakpoint.
- *
- */
-public interface ICDIAddressBreakpoint extends ICDILocationBreakpoint {
-
-}
diff --git a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/ICDIAddressFactoryManagement.java b/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/ICDIAddressFactoryManagement.java
deleted file mode 100644
index 44b68a4f14b..00000000000
--- a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/ICDIAddressFactoryManagement.java
+++ /dev/null
@@ -1,24 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2007 Nokia and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * Nokia - Initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.cdt.debug.core.cdi.model;
-
-import org.eclipse.cdt.core.IAddressFactory;
-
-/**
- */
-public interface ICDIAddressFactoryManagement {
- /**
- * Returns an AddressFactory.
- * @return a IAddressFactory.
- */
- IAddressFactory getAddressFactory();
-}
diff --git a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/ICDIArgument.java b/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/ICDIArgument.java
deleted file mode 100644
index befe3bcb58b..00000000000
--- a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/ICDIArgument.java
+++ /dev/null
@@ -1,21 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.cdt.debug.core.cdi.model;
-
-/**
- *
- * Represents an argument in the stack frame.
- *
- * @since Jul 22, 2002
- */
-public interface ICDIArgument extends ICDILocalVariable, ICDIArgumentDescriptor {
-}
diff --git a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/ICDIArgumentDescriptor.java b/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/ICDIArgumentDescriptor.java
deleted file mode 100644
index d284797ddeb..00000000000
--- a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/ICDIArgumentDescriptor.java
+++ /dev/null
@@ -1,17 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.core.cdi.model;
-
-
-/**
- */
-public interface ICDIArgumentDescriptor extends ICDILocalVariableDescriptor {
-}
diff --git a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/ICDIBreakpoint.java b/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/ICDIBreakpoint.java
deleted file mode 100644
index 3b7cde819e8..00000000000
--- a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/ICDIBreakpoint.java
+++ /dev/null
@@ -1,86 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2005 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.cdt.debug.core.cdi.model;
-
-import org.eclipse.cdt.debug.core.cdi.CDIException;
-import org.eclipse.cdt.debug.core.cdi.ICDICondition;
-
-/**
- *
- * A breakpoint is capable of suspending the execution of a program
- * whenever a certain point in the program is reached. Provides a
- * basic functionality for the location breakpoints, watchpoints,
- * and catchpoints.
- *
- * @see ICDILineBreakpoint
- * @see ICDIFunctionBreakpoint
- * @see ICDIAddressBreakpoint
- * @see ICDIWatchpoint
- * @see ICDICatchpoint
- *
- * @since Jul 9, 2002
- */
-public interface ICDIBreakpoint extends ICDIObject {
- final static public int REGULAR = 0x0;
- final static public int TEMPORARY = 0x1;
- final static public int HARDWARE = 0x2;
-
- /**
- * Returns whether this breakpoint is temporary.
- *
- * @return whether this breakpoint is temporary
- */
- boolean isTemporary();
-
- /**
- * Returns whether this breakpoint is hardware-assisted.
- *
- * @return whether this breakpoint is hardware-assisted
- */
- boolean isHardware();
-
- /**
- * Returns whether this breakpoint is enabled.
- *
- * @return whether this breakpoint is enabled
- * @throws CDIException if this method fails. Reasons include:
- */
- boolean isEnabled() throws CDIException;
-
- /**
- * Sets the enabled state of this breakpoint. This has no effect
- * if the current enabled state is the same as specified by
- * the enabled parameter.
- *
- * @param enabled - whether this breakpoint should be enabled
- * @throws CDIException if this method fails. Reasons include:
- */
- void setEnabled(boolean enabled) throws CDIException;
-
- /**
- * Returns the condition of this breakpoint or <code>null</code>
- * if the breakpoint's condition is not set.
- *
- * @return the condition of this breakpoint
- * @throws CDIException if this method fails. Reasons include:
- */
- ICDICondition getCondition() throws CDIException;
-
- /**
- * Sets the condition of this breakpoint.
- *
- * @param the condition to set
- * @throws CDIException if this method fails. Reasons include:
- */
- void setCondition(ICDICondition condition) throws CDIException;
-
-}
diff --git a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/ICDIBreakpointManagement.java b/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/ICDIBreakpointManagement.java
deleted file mode 100644
index cf97564a0ae..00000000000
--- a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/ICDIBreakpointManagement.java
+++ /dev/null
@@ -1,111 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2005 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.cdt.debug.core.cdi.model;
-
-import org.eclipse.cdt.debug.core.cdi.CDIException;
-import org.eclipse.cdt.debug.core.cdi.ICDIAddressLocation;
-import org.eclipse.cdt.debug.core.cdi.ICDICondition;
-import org.eclipse.cdt.debug.core.cdi.ICDIFunctionLocation;
-import org.eclipse.cdt.debug.core.cdi.ICDILineLocation;
-
-/**
- * Breapoints action on the Target.
- */
-public interface ICDIBreakpointManagement {
-
- /**
- * Set a line breakpoint.
- *
- * @param type
- * @param location
- * @param condition
- * @param deferred
- * @return
- * @throws CDIException
- */
- ICDILineBreakpoint setLineBreakpoint(int type, ICDILineLocation location,
- ICDICondition condition, boolean deferred) throws CDIException;
-
- /**
- * Set a function breakpoint.
- *
- * @param type
- * @param location
- * @param condition
- * @param deferred
- * @return
- * @throws CDIException
- */
- ICDIFunctionBreakpoint setFunctionBreakpoint(int type, ICDIFunctionLocation location,
- ICDICondition condition, boolean deferred) throws CDIException;
-
- /**
- * Set an address Breakpoint
- *
- * @param type
- * @param location
- * @param condition
- * @param deferred
- * @return
- * @throws CDIException
- */
- ICDIAddressBreakpoint setAddressBreakpoint(int type, ICDIAddressLocation location,
- ICDICondition condition, boolean deferred) throws CDIException;
-
- /**
- * Set a watchpoint.
- *
- * @param type
- * @param watchType
- * @param expression
- * @param condition
- * @return
- * @throws CDIException
- */
- ICDIWatchpoint setWatchpoint(int type, int watchType, String expression,
- ICDICondition condition) throws CDIException;
-
- /**
- * Set an exception point.
- *
- * @param clazz
- * @param stopOnThrow
- * @param stopOnCatch
- * @return
- * @throws CDIException
- */
- ICDIExceptionpoint setExceptionBreakpoint(String clazz, boolean stopOnThrow, boolean stopOnCatch) throws CDIException;
-
- /**
- * Return all the breakpoints
- *
- * @return
- * @throws CDIException
- */
- ICDIBreakpoint[] getBreakpoints() throws CDIException;
-
- /**
- * Remove the breakpoints
- * @param breakpoints
- * @throws CDIException
- */
- void deleteBreakpoints(ICDIBreakpoint[] breakpoints) throws CDIException;
-
- /**
- * Remove all the breakpoints
- *
- * @throws CDIException
- */
- void deleteAllBreakpoints() throws CDIException;
-
-
-}
diff --git a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/ICDIBreakpointManagement2.java b/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/ICDIBreakpointManagement2.java
deleted file mode 100644
index e12e252f566..00000000000
--- a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/ICDIBreakpointManagement2.java
+++ /dev/null
@@ -1,91 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2007 Nokia and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * Nokia - Initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.cdt.debug.core.cdi.model;
-
-import org.eclipse.cdt.debug.core.cdi.CDIException;
-import org.eclipse.cdt.debug.core.cdi.ICDIAddressLocation;
-import org.eclipse.cdt.debug.core.cdi.ICDICondition;
-import org.eclipse.cdt.debug.core.cdi.ICDIFunctionLocation;
-import org.eclipse.cdt.debug.core.cdi.ICDILineLocation;
-
-public interface ICDIBreakpointManagement2 {
-
- /**
- * Set a line breakpoint.
- *
- * @param type
- * @param location
- * @param condition
- * @param deferred
- * @param enabled
- * @return
- * @throws CDIException
- */
- ICDILineBreakpoint setLineBreakpoint(int type, ICDILineLocation location,
- ICDICondition condition, boolean deferred, boolean enabled) throws CDIException;
-
- /**
- * Set a function breakpoint.
- *
- * @param type
- * @param location
- * @param condition
- * @param deferred
- * @param enabled
- * @return
- * @throws CDIException
- */
- ICDIFunctionBreakpoint setFunctionBreakpoint(int type, ICDIFunctionLocation location,
- ICDICondition condition, boolean deferred, boolean enabled) throws CDIException;
-
- /**
- * Set an address Breakpoint
- *
- * @param type
- * @param location
- * @param condition
- * @param deferred
- * @param enabled
- * @return
- * @throws CDIException
- */
- ICDIAddressBreakpoint setAddressBreakpoint(int type, ICDIAddressLocation location,
- ICDICondition condition, boolean deferred, boolean enabled) throws CDIException;
-
- /**
- * Set a watchpoint.
- *
- * @param type
- * @param watchType
- * @param expression
- * @param condition
- * @param enabled
- * @return
- * @throws CDIException
- */
- ICDIWatchpoint setWatchpoint(int type, int watchType, String expression,
- ICDICondition condition, boolean enabled) throws CDIException;
-
- /**
- * Set an exception point.
- *
- * @param clazz
- * @param stopOnThrow
- * @param stopOnCatch
- * @param enabled
- * @return
- * @throws CDIException
- */
- ICDIExceptionpoint setExceptionBreakpoint(String clazz, boolean stopOnThrow,
- boolean stopOnCatch, boolean enabled) throws CDIException;
-
-}
diff --git a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/ICDIExceptionpoint.java b/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/ICDIExceptionpoint.java
deleted file mode 100644
index 48fbe8a0ba1..00000000000
--- a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/ICDIExceptionpoint.java
+++ /dev/null
@@ -1,22 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2002, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.cdt.debug.core.cdi.model;
-
-/**
- * ICDIExceptionpoint
- */
-public interface ICDIExceptionpoint extends ICDIBreakpoint {
-
- boolean isStopOnThrow();
-
- boolean isStopOnCatch();
-}
diff --git a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/ICDIExecuteResume.java b/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/ICDIExecuteResume.java
deleted file mode 100644
index 7e449eb37e8..00000000000
--- a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/ICDIExecuteResume.java
+++ /dev/null
@@ -1,52 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.cdt.debug.core.cdi.model;
-
-import org.eclipse.cdt.debug.core.cdi.CDIException;
-import org.eclipse.cdt.debug.core.cdi.ICDILocation;
-
-/**
- * Provides the ability to resume a thread or debug target.
- */
-interface ICDIExecuteResume {
-
- /**
- * Causes this target to resume its execution.
- * if passSignal is <code>fase</code> and the target was
- * suspended by a signal when resuming the signal will be discarded
- * Has no effect on a target that is not suspended.
- *
- * @param passSignal whether to discar the signal
- * @throws CDIException if this method fails. Reasons include:
- */
- void resume(boolean passSignal) throws CDIException;
-
- /**
- * Resume execution at location. Note the method does not change stackframe.
- * The result is undefined if it jumps outside of the stacframe.
- * Can only be called when the associated target is suspended.
- *
- * @param location
- * @throws CDIException if this method fails. Reasons include:
- */
- void resume(ICDILocation location) throws CDIException;
-
- /**
- * Resume execution where the program stopped but immediately give the
- * signal.
- *
- * @param signal
- * @throws CDIException
- */
- void resume(ICDISignal signal) throws CDIException;
-
-}
diff --git a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/ICDIExecuteStep.java b/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/ICDIExecuteStep.java
deleted file mode 100644
index 42dd11db557..00000000000
--- a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/ICDIExecuteStep.java
+++ /dev/null
@@ -1,72 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.cdt.debug.core.cdi.model;
-
-import org.eclipse.cdt.debug.core.cdi.CDIException;
-import org.eclipse.cdt.debug.core.cdi.ICDILocation;
-
-/**
- * Provides the ability to step into, over, and until
- * from the current execution location. Implementations
- * must be non-blocking.
- */
-public interface ICDIExecuteStep {
-
- /**
- * Steps over the current source line.
- * if count <= 0 it is a noop.
- * Can only be called when the associated target/thread is suspended.
- *
- * @param count as in `step', but do so count times.
- * @throws CDIException if this method fails. Reasons include:
- */
- void stepOver(int count) throws CDIException;
-
- /**
- * Steps over the current machine instruction. Can only be called
- * when the associated target/thread is suspended.
- * if count <= 0 it is a noop.
- *
- * @param count as in `stepOverInstruction', but do so count times.
- * @throws CDIException if this method fails. Reasons include:
- */
- void stepOverInstruction(int count) throws CDIException;
-
- /**
- * Steps into the current source line. Can only be called
- * when the associated target/thread is suspended.
- * if count <= 0 it is a noop.
- *
- * @param count as in `step', but do so count times.
- * @throws CDIException if this method fails. Reasons include:
- */
- void stepInto(int count) throws CDIException;
-
- /**
- * Steps into the current machine instruction. Can only be called
- * when the associated target/thread is suspended.
- * if count <= 0 it is a noop.
- *
- * @throws CDIException if this method fails. Reasons include:
- */
- void stepIntoInstruction(int count) throws CDIException;
-
- /**
- * Continues running until location is reached.
- * If the program will be suspended if attempt to exit the current frame.
- * Can only be called when the associated target is suspended.
- *
- * @throws CDIException if this method fails. Reasons include:
- */
- void stepUntil(ICDILocation location) throws CDIException;
-
-}
diff --git a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/ICDIExecuteStepReturn.java b/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/ICDIExecuteStepReturn.java
deleted file mode 100644
index efd570f3e4a..00000000000
--- a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/ICDIExecuteStepReturn.java
+++ /dev/null
@@ -1,39 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.cdt.debug.core.cdi.model;
-
-import org.eclipse.cdt.debug.core.cdi.CDIException;
-
-/**
- * Provides the ability to step return from the frame.
- * Implementations must be non-blocking.
- */
-public interface ICDIExecuteStepReturn {
-
- /**
- * Continue execution until the frame return.
- *
- * @throws CDIException if this method fails. Reasons include:
- */
- void stepReturn() throws CDIException;
-
- /**
- * Cancel execution of the frame and return with value.
- * value can be <code>null</code>, if no return value is needed.
- * Can only be called when the associated target/thread is suspended.
- *
- * @param value use as the returning value.
- * @throws CDIException if this method fails. Reasons include:
- */
- void stepReturn(ICDIValue value) throws CDIException;
-
-}
diff --git a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/ICDIExpression.java b/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/ICDIExpression.java
deleted file mode 100644
index 333b1f3dc3f..00000000000
--- a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/ICDIExpression.java
+++ /dev/null
@@ -1,58 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.cdt.debug.core.cdi.model;
-
-import org.eclipse.cdt.debug.core.cdi.CDIException;
-
-/**
- * An expression is a snippet of code that can be evaluated to
- * produce a value.
- *
- * @since Jul 9, 2002
- */
-public interface ICDIExpression extends ICDIObject {
-
-
- /**
- * Returns the expression snippet of code.
- *
- * @return the expression
- */
- String getExpressionText();
-
- /**
- * Returns true if the variable Object are the same,
- * For example event if the name is the same because of
- * casting this may return false;
- * @return true if the same
- */
- boolean equals(ICDIExpression expr);
-
- /**
- * Returns the value of this expression.
- *
- * @param ICDIStackFrame frame context
- * @return the value of this expression
- * @throws CDIException if this method fails. Reasons include:
- */
- ICDIValue getValue(ICDIStackFrame context) throws CDIException;
-
- /**
- * Remove the expression from the manager list.
- *
- * @param var
- * @return ICDIArgument
- * @throws CDIException
- */
- void dispose() throws CDIException;
-
-}
diff --git a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/ICDIExpressionManagement.java b/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/ICDIExpressionManagement.java
deleted file mode 100644
index 52af8a09507..00000000000
--- a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/ICDIExpressionManagement.java
+++ /dev/null
@@ -1,48 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2002, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.cdt.debug.core.cdi.model;
-
-import org.eclipse.cdt.debug.core.cdi.CDIException;
-
-/**
- * ICDIExpressionManagement
- */
-public interface ICDIExpressionManagement {
-
- /**
- * Create an expression for code snippet
- * @param code
- * @return ICDIExpression
- * @throws CDIException
- */
- ICDIExpression createExpression(String code) throws CDIException;
-
- /**
- * Return all expressions for this target
- * @return
- * @throws CDIException
- */
- ICDIExpression[] getExpressions() throws CDIException;
-
- /**
- * Remove expressions for this target
- *
- * @param expressions
- */
- void destroyExpressions(ICDIExpression[] expressions) throws CDIException;
-
- /**
- * Remove all expressions on this target
- *
- */
- void destroyAllExpressions() throws CDIException;
-}
diff --git a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/ICDIFunctionBreakpoint.java b/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/ICDIFunctionBreakpoint.java
deleted file mode 100644
index 640ea3806c4..00000000000
--- a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/ICDIFunctionBreakpoint.java
+++ /dev/null
@@ -1,21 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2005 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.cdt.debug.core.cdi.model;
-
-/**
- *
- * Represents a function breakpoint.
- *
- */
-public interface ICDIFunctionBreakpoint extends ICDILocationBreakpoint {
-
-}
diff --git a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/ICDIGlobalVariable.java b/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/ICDIGlobalVariable.java
deleted file mode 100644
index 00034ecd3f3..00000000000
--- a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/ICDIGlobalVariable.java
+++ /dev/null
@@ -1,19 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2002, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.cdt.debug.core.cdi.model;
-
-/**
- * ICDIGlobalVariable
- */
-public interface ICDIGlobalVariable extends ICDIVariable, ICDIGlobalVariableDescriptor {
-
-}
diff --git a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/ICDIGlobalVariableDescriptor.java b/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/ICDIGlobalVariableDescriptor.java
deleted file mode 100644
index d29aa483107..00000000000
--- a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/ICDIGlobalVariableDescriptor.java
+++ /dev/null
@@ -1,19 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2002, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.cdt.debug.core.cdi.model;
-
-/**
- * ICDIGlobalVariableDescriptor
- */
-public interface ICDIGlobalVariableDescriptor extends ICDIVariableDescriptor {
-
-}
diff --git a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/ICDIInstruction.java b/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/ICDIInstruction.java
deleted file mode 100644
index c9fef552d22..00000000000
--- a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/ICDIInstruction.java
+++ /dev/null
@@ -1,57 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.cdt.debug.core.cdi.model;
-
-import java.math.BigInteger;
-
-
-/**
- *
- * Represents a machine instruction.
- *
- * @since Jul 10, 2002
- */
-public interface ICDIInstruction extends ICDIObject {
- /**
- * Returns the Address.
- * @return the address.
- */
- BigInteger getAdress();
-
- /**
- * @return the function name.
- */
- String getFuntionName();
-
- /**
- * @return the instruction.
- */
- String getInstruction();
-
- /**
- * @return the opcode
- */
- String getOpcode();
-
- /**
- * @return any arguments to the opcode
- */
- String getArgs();
-
- /**
- * @return the offset of this machine instruction
- * Returns the instruction's offset.
- *
- * @return the offset of this machine instruction
- */
- long getOffset();
-}
diff --git a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/ICDILineBreakpoint.java b/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/ICDILineBreakpoint.java
deleted file mode 100644
index 334bf13e64c..00000000000
--- a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/ICDILineBreakpoint.java
+++ /dev/null
@@ -1,20 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2005 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.cdt.debug.core.cdi.model;
-
-/**
- *
- * Represents a line breakpoint.
- *
- */
-public interface ICDILineBreakpoint extends ICDILocationBreakpoint {
-}
diff --git a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/ICDILocalVariable.java b/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/ICDILocalVariable.java
deleted file mode 100644
index 70effa0a9d1..00000000000
--- a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/ICDILocalVariable.java
+++ /dev/null
@@ -1,19 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2002, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.cdt.debug.core.cdi.model;
-
-/**
- * ICDILocalVariable
- */
-public interface ICDILocalVariable extends ICDIVariable, ICDILocalVariableDescriptor {
-
-}
diff --git a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/ICDILocalVariableDescriptor.java b/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/ICDILocalVariableDescriptor.java
deleted file mode 100644
index 4874096c80c..00000000000
--- a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/ICDILocalVariableDescriptor.java
+++ /dev/null
@@ -1,28 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2002, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.cdt.debug.core.cdi.model;
-
-import org.eclipse.cdt.debug.core.cdi.CDIException;
-
-/**
- * ICDILocalVariableDescriptor
- */
-public interface ICDILocalVariableDescriptor extends ICDIVariableDescriptor {
-
- /**
- * Return the stackframe.
- *
- * @return ICDIStackFrame
- * @throws CDIException
- */
- ICDIStackFrame getStackFrame() throws CDIException;
-}
diff --git a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/ICDILocationBreakpoint.java b/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/ICDILocationBreakpoint.java
deleted file mode 100644
index 18b50bc132c..00000000000
--- a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/ICDILocationBreakpoint.java
+++ /dev/null
@@ -1,28 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2005 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.cdt.debug.core.cdi.model;
-
-import org.eclipse.cdt.debug.core.cdi.ICDILocator;
-
-/**
- *
- * Abstract class returning location of breakpoint: file, line, function, address.
- *
- */
-public interface ICDILocationBreakpoint extends ICDIBreakpoint {
-
- /**
- * Returns the location of the breakpoint.
- * @return ICDILocator
- */
- ICDILocator getLocator();
-}
diff --git a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/ICDIMemoryBlock.java b/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/ICDIMemoryBlock.java
deleted file mode 100644
index c46980965f3..00000000000
--- a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/ICDIMemoryBlock.java
+++ /dev/null
@@ -1,125 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2005 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.cdt.debug.core.cdi.model;
-
-import java.math.BigInteger;
-
-import org.eclipse.cdt.debug.core.cdi.CDIException;
-
-/**
- *
- * A contiguous segment of memory in an execution context. A memory
- * block is represented by a starting memory address and a length.
- *
- * @since Jul 18, 2002
- */
-public interface ICDIMemoryBlock extends ICDIObject {
-
- /**
- * Bit mask used to indicate a byte is read-only.
- */
- public static final byte READ_ONLY = 0x01;
-
- /**
- * Bit mask used to indicate a byte is valid.
- */
- public static final byte VALID = 0x02;
-
- /**
- * Returns the start address of this memory block.
- *
- * @return the start address of this memory block
- */
- BigInteger getStartAddress();
-
- /**
- * Returns the length of this memory block in bytes.
- *
- * @return the length of this memory block in bytes
- */
- long getLength();
-
- /**
- * This method is a misnomer. It should be getAddressableSize. This is how
- * CDT finds out from the CDI client the addressable size of the
- * memory--i.e., how many bytes per address. Some embedded systems have
- * memory with addressable sizes >1. Such backends should make sure to
- * ignore the now deprecated wordSize parameter of
- * ICDIMemoryBlockManagement.createMemory block() and not regurgitate that
- * value in the implementation of this method.
- *
- * @return The addressable size of the memory
- */
- int getWordSize();
-
- /**
- * Returns the values of the bytes currently contained
- * in this this memory block.
- * Note: the number maybe greater or lower to what
- * was requested.
- * @return the values of the bytes currently contained
- * in this this memory block
- * @exception CDIException if this method fails. Reasons include:
- * <ul><li>Failure communicating with the debug target. The CDIException's
- * status code contains the underlying exception responsible for
- * the failure.</li>
- * </ul>
- */
- byte[] getBytes() throws CDIException;
-
- /**
- * Returns this memory byte's attribute as a bit mask.
- * The method throw IndexOutOfBoundsException if the offset
- * is out of range of the block.
- *
- * @return this memory byte's attribute as a bit mask
- */
- public byte getFlags(int offset);
-
- /**
- * Sets the value of the bytes in this memory block at the specified
- * offset within this memory block to the spcified bytes.
- * The offset is zero based.
- *
- * @param offset the offset at which to set the new values
- * @param bytes the new values
- * @exception CDIException if this method fails. Reasons include:
- * <ul><li>Failure communicating with the debug target. The CDIException's
- * status code contains the underlying exception responsible for
- * the failure.</li>
- * <li>This memory block does not support value modification</li>
- * <li>The specified offset is greater than or equal to the length
- * of this memory block, or the number of bytes specified goes
- * beyond the end of this memory block (index of out of range)</li>
- * </ul>
- */
- void setValue(long offset, byte[] bytes) throws CDIException;
-
- /**
- * @return true if the block does not update.
- */
- boolean isFrozen();
-
- /**
- * A memoryBlock set frozen means that the block will
- * not update and check for new data.
- * @param frozen the block is frozen by default.
- */
- void setFrozen(boolean frozen);
-
- /**
- * Refresh the data, this may cause events to be trigger
- * if the data values changed.
- */
- void refresh() throws CDIException;
-
-}
diff --git a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/ICDIMemoryBlockManagement.java b/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/ICDIMemoryBlockManagement.java
deleted file mode 100644
index 22d679df4f1..00000000000
--- a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/ICDIMemoryBlockManagement.java
+++ /dev/null
@@ -1,64 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2002, 2005 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.cdt.debug.core.cdi.model;
-
-import org.eclipse.cdt.debug.core.cdi.CDIException;
-
-/**
- * The memory manager manages the collection of memory blocks
- * specified for the debug session.
- *
- * ICDIMemoryBlockManagement
- *
- */
-public interface ICDIMemoryBlockManagement {
-
- /**
- * Returns a memory block specified by given identifier.
- * @param address
- * @param units - number of bytes
- * @param wordSize - this parameter has been deprecated in 4.0
- * and will always be passed as the value 1. If the memory
- * has an addressable size (number of bytes per address)
- * greather than 1, the CDI client should take care not to
- * return the value of wordSize we pass in here, but rather
- * return the actual addressable size for that memory.
- * @return a memory block with the specified identifier
- * @throws CDIException on failure. Reasons include:
- */
- ICDIMemoryBlock createMemoryBlock(String address, int units, int wordSize)
- throws CDIException;
-
- /**
- * Removes the given array of memory blocks from the debug session.
- *
- * @param memoryBlock - the array of memory blocks to be removed
- * @exception CDIException on failure. Reasons include:
- */
- void removeBlocks(ICDIMemoryBlock[] memoryBlocks) throws CDIException;
-
- /**
- * Removes all memory blocks from the debug session.
- *
- * @exception CDIException on failure. Reasons include:
- */
- void removeAllBlocks() throws CDIException;
-
- /**
- * Returns an array of all memory blocks set for this debug session.
- *
- * @return an array of all memory blocks set for this debug session
- * @throws CDIException on failure. Reasons include:
- */
- ICDIMemoryBlock[] getMemoryBlocks() throws CDIException;
-
-}
diff --git a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/ICDIMemoryBlockManagement2.java b/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/ICDIMemoryBlockManagement2.java
deleted file mode 100644
index a35f3d59d25..00000000000
--- a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/ICDIMemoryBlockManagement2.java
+++ /dev/null
@@ -1,36 +0,0 @@
-/*******************************************************************************
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * Freescale Semiconductor - Initial API
- *******************************************************************************/
-
-package org.eclipse.cdt.debug.core.cdi.model;
-
-import java.math.BigInteger;
-
-import org.eclipse.cdt.debug.core.cdi.CDIException;
-
-/**
- * Extension of ICDIMemoryBlockManagement
- *
- * @since May 26, 2006
- */
-public interface ICDIMemoryBlockManagement2 extends ICDIMemoryBlockManagement {
-
- /**
- * Returns a memory block specified by given parameters. Differs
- * from {@link ICDIMemoryBlockManagement#createMemoryBlock(String, int, int)}
- * in that this support memory spaces.
- * @param address
- * @param memorySpaceID - value is meaningful only to the backend
- * @param size - number of bytes
- * @return a memory block with the specified identifier
- * @throws CDIException on failure. Reasons include:
- */
- ICDIMemoryBlock createMemoryBlock(BigInteger address, String memorySpaceID, int size)
- throws CDIException;
-}
diff --git a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/ICDIMemorySpaceManagement.java b/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/ICDIMemorySpaceManagement.java
deleted file mode 100644
index 737dc9a1180..00000000000
--- a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/ICDIMemorySpaceManagement.java
+++ /dev/null
@@ -1,56 +0,0 @@
-/*******************************************************************************
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * Freescale Semiconductor - Initial API
- *******************************************************************************/
-
-package org.eclipse.cdt.debug.core.cdi.model;
-
-import java.math.BigInteger;
-
-import org.eclipse.cdt.debug.core.cdi.CDIException;
-
-/**
- * The memory space manager provides varous memory-space related operations.
- * The backend implementation of ICDITarget should implement this interface
- * as well if the target supports memory spaces.
- */
-public interface ICDIMemorySpaceManagement extends ICDIObject {
-
- /**
- * Optionally provides the string encoding of a memory space qualified address.
- * CDT provides a default encoding of <memory-space-id>:<address(hex)>.
- * If this is adequate, the client can return null from this function.
- *
- * @param address - a numeric address
- * @param memorySpaceID - a string which represents the memory space
- * @return the encoded string representation of the address or null
- */
- String addressToString(BigInteger address, String memorySpaceID);
-
- /**
- * The inverse of addressToString. Optionally decodes a memoryspace/address
- * string to its components. Client must provide decoding if it provides
- * encoding in addressToString. Conversely, it should return null if
- * addressToString returns null.
- *
- * @param str - the encoded string (contains memory space + hex address value)
- * @param memorySpaceID_out the memory space ID
- * @return the BigInteger part of str; client should return null if the default decoding provided
- * by CDT is sufficient (<memory-space-id>:<address(hex)>)
- * @throws CDIException if string is not in the expected format
- */
- BigInteger stringToAddress(String str, StringBuffer memorySpaceID_out) throws CDIException;
-
- /**
- * Provides the memory spaces available.
- *
- * @return an array of memory space identifiers
- */
- String [] getMemorySpaces();
-
-}
diff --git a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/ICDIMixedInstruction.java b/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/ICDIMixedInstruction.java
deleted file mode 100644
index a9715eb2ff8..00000000000
--- a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/ICDIMixedInstruction.java
+++ /dev/null
@@ -1,34 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.core.cdi.model;
-
-/**
- *
- * Represents a machine instruction.
- *
- * @since Jul 10, 2002
- */
-public interface ICDIMixedInstruction extends ICDIObject {
- /**
- * @return the line Number.
- */
- int getLineNumber();
-
- /**
- * @return the file name
- */
- String getFileName();
-
- /**
- * @return the array of instruction.
- */
- ICDIInstruction[] getInstructions();
-}
diff --git a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/ICDIObject.java b/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/ICDIObject.java
deleted file mode 100644
index 096df69d3cb..00000000000
--- a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/ICDIObject.java
+++ /dev/null
@@ -1,27 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.cdt.debug.core.cdi.model;
-
-/**
- *
- * Represents an object in the CDI model.
- *
- * @since Jul 8, 2002
- */
-public interface ICDIObject {
- /**
- * Returns the target this object is contained in.
- *
- * @return the target this object is contained in
- */
- ICDITarget getTarget();
-}
diff --git a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/ICDIRegister.java b/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/ICDIRegister.java
deleted file mode 100644
index b10055ba5a8..00000000000
--- a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/ICDIRegister.java
+++ /dev/null
@@ -1,69 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.cdt.debug.core.cdi.model;
-
-import org.eclipse.cdt.debug.core.cdi.CDIException;
-
-/**
- *
- * A register is a special kind of variable that is contained
- * in a register group. Each register has a name and a value.
- *
- * @since Jul 9, 2002
- */
-public interface ICDIRegister extends ICDIRegisterDescriptor {
- /**
- * Returns true if the value of this variable could be changed.
- *
- * @return true if the value of this variable could be changed
- * @throws CDIException if this method fails. Reasons include:
- */
- boolean isEditable() throws CDIException;
-
- /**
- * Returns the value of this variable.
- *
- * @param context
- * @return the value of this variable
- * @throws CDIException if this method fails. Reasons include:
- */
- ICDIValue getValue(ICDIStackFrame context) throws CDIException;
-
- /**
- * Attempts to set the value of this variable to the value of
- * the given expression.
- *
- * @param expression - an expression to generate a new value
- * @throws CDIException if this method fails. Reasons include:
- */
- void setValue(String expression) throws CDIException;
-
- /**
- * Sets the value of this variable to the given value.
- *
- * @param value - a new value
- * @throws CDIException if this method fails. Reasons include:
- */
- void setValue(ICDIValue value) throws CDIException;
-
- /**
- * Remove the variable from the manager list.
- *
- * @param var
- * @return ICDIArgument
- * @throws CDIException
- */
- void dispose() throws CDIException;
-
- boolean equals(ICDIRegister reg);
-
-}
diff --git a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/ICDIRegisterDescriptor.java b/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/ICDIRegisterDescriptor.java
deleted file mode 100644
index 55e5ee7f4a2..00000000000
--- a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/ICDIRegisterDescriptor.java
+++ /dev/null
@@ -1,21 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.core.cdi.model;
-
-
-/**
- *
- * Represents a break condition.
- *
- * @since Jul 9, 2002
- */
-public interface ICDIRegisterDescriptor extends ICDIVariableDescriptor {
-}
diff --git a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/ICDIRegisterGroup.java b/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/ICDIRegisterGroup.java
deleted file mode 100644
index eaad77dd423..00000000000
--- a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/ICDIRegisterGroup.java
+++ /dev/null
@@ -1,47 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.cdt.debug.core.cdi.model;
-
-import org.eclipse.cdt.debug.core.cdi.CDIException;
-
-/**
- *
- * Represents a group of registers that are assigned to a target.
- *
- * @since Jul 9, 2002
- */
-public interface ICDIRegisterGroup extends ICDIObject {
-
- /**
- * The name of the group.
- *
- * @return String name
- */
- String getName();
-
- /**
- * Returns the register descriptors in this register group.
- *
- * @return ICDIRegisterDescriptor[] in this register group
- * @throws CDIException if this method fails. Reasons include:
- */
- ICDIRegisterDescriptor[] getRegisterDescriptors() throws CDIException;
-
- /**
- * Returns whether this register group currently contains any registers.
- *
- * @return whether this register group currently contains any registers
- * @exception CDIException if this method fails. Reasons include:
- */
- public boolean hasRegisters() throws CDIException;
-
-}
diff --git a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/ICDIRuntimeOptions.java b/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/ICDIRuntimeOptions.java
deleted file mode 100644
index 489af8f64cc..00000000000
--- a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/ICDIRuntimeOptions.java
+++ /dev/null
@@ -1,45 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.cdt.debug.core.cdi.model;
-
-import java.util.Properties;
-
-import org.eclipse.cdt.debug.core.cdi.CDIException;
-
-/**
- * Describes the configuration of debug session.
- *
- * @since Aug 6, 2002
- */
-public interface ICDIRuntimeOptions extends ICDIObject {
-
- /**
- * Program/Inferior arguments.
- *
- * @param args the string representing the arguments.
- */
- void setArguments(String[] args) throws CDIException;
-
- /**
- * Program/Inferior environment settings.
- *
- * @param props the new environment variable to add.
- */
- void setEnvironment(Properties props) throws CDIException;
-
- /**
- * Program/Inferior working directory.
- *
- * @param wd the working directory to start the program.
- */
- void setWorkingDirectory(String wd) throws CDIException;
-}
diff --git a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/ICDISharedLibrary.java b/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/ICDISharedLibrary.java
deleted file mode 100644
index 24eb41c946c..00000000000
--- a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/ICDISharedLibrary.java
+++ /dev/null
@@ -1,59 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.core.cdi.model;
-
-import java.math.BigInteger;
-
-import org.eclipse.cdt.debug.core.cdi.CDIException;
-
-/**
- *
- * Represents a shared library which has been loaded into
- * the debug target.
- *
- * @since Jul 8, 2002
- */
-public interface ICDISharedLibrary extends ICDIObject {
- /**
- * Returns the name of shared library file.
- *
- * @return the name of shared library file
- */
- String getFileName();
-
- /**
- * Returns the start address of this library.
- *
- * @return the start address of this library
- */
- BigInteger getStartAddress();
-
- /**
- * Returns the end address of this library.
- *
- * @return the end address of this library
- */
- BigInteger getEndAddress();
-
- /**
- * Returns whether the symbols of this library are read.
- *
- * @return whether the symbols of this library are read
- */
- boolean areSymbolsLoaded();
-
- /**
- * Loads the library symbols.
- *
- * @throws CDIException if this method fails. Reasons include:
- */
- void loadSymbols() throws CDIException;
-}
diff --git a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/ICDISharedLibraryManagement.java b/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/ICDISharedLibraryManagement.java
deleted file mode 100644
index 566812e079b..00000000000
--- a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/ICDISharedLibraryManagement.java
+++ /dev/null
@@ -1,29 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.cdt.debug.core.cdi.model;
-
-import org.eclipse.cdt.debug.core.cdi.CDIException;
-
-/**
- * Manages the sharedLibraries in the target.
- */
-public interface ICDISharedLibraryManagement {
-
- /**
- * Returns the array of shared libraries for this target.
- *
- * @return ICDISharedLibrary[] array
- * @throws CDIException on failure.
- */
- ICDISharedLibrary[] getSharedLibraries() throws CDIException;
-
-}
diff --git a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/ICDISignal.java b/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/ICDISignal.java
deleted file mode 100644
index 166acbb141d..00000000000
--- a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/ICDISignal.java
+++ /dev/null
@@ -1,69 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.cdt.debug.core.cdi.model;
-
-import org.eclipse.cdt.debug.core.cdi.CDIException;
-
-/**
- *
- * Represents a signal.
- *
- * @since Jul 10, 2002
- */
-public interface ICDISignal extends ICDIObject {
-
- /**
- * Returns the name of this signal.
- *
- * @return the name of this signal
- */
- String getName();
-
- /**
- * Returns the meaning of this signal.
- *
- * @return the meaning of this signal
- */
- String getDescription();
-
- /**
- * if false means program will see the signal.
- * Otherwise program does not know.
- *
- * @return boolean
- */
- boolean isIgnore();
-
- /**
- * Means reenter debugger if this signal happens
- *
- * Method isStopSet.
- * @return boolean
- */
- boolean isStopSet();
-
- /**
- * Continue program giving it this signal.
- *
- * @throws CDIException if this method fails. Reasons include:
- */
- void signal() throws CDIException ;
-
- /**
- * Change the way debugger handles this signal.
- *
- * @param ignore - if true the debugger should not allow your program to see this signal
- * @param stop - if true the debugger should stop your program when this signal happens
- * @throws CDIException if this method fails. Reasons include:
- */
- void handle(boolean ignore, boolean stop) throws CDIException;
-}
diff --git a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/ICDISignalManagement.java b/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/ICDISignalManagement.java
deleted file mode 100644
index 40378ab1e75..00000000000
--- a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/ICDISignalManagement.java
+++ /dev/null
@@ -1,28 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.cdt.debug.core.cdi.model;
-
-import org.eclipse.cdt.debug.core.cdi.CDIException;
-
-/**
- */
-public interface ICDISignalManagement {
-
- /**
- * Returns the array of signals defined for this target.
- *
- * @return the array of signals
- * @throws CDIException on failure. Reasons include:
- */
- ICDISignal[] getSignals() throws CDIException;
-
-}
diff --git a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/ICDISourceManagement.java b/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/ICDISourceManagement.java
deleted file mode 100644
index e0bd5778f4d..00000000000
--- a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/ICDISourceManagement.java
+++ /dev/null
@@ -1,93 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2005 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.cdt.debug.core.cdi.model;
-
-import java.math.BigInteger;
-
-import org.eclipse.cdt.debug.core.cdi.CDIException;
-
-/**
- *
- * Maintains the list of directories to search for source files.
- * Auto update is off by default.
- *
- */
-public interface ICDISourceManagement {
- /**
- * Set the source search paths for the debug session.
- * @param String array of search paths
- */
- void setSourcePaths(String[] srcPaths) throws CDIException;
-
- /**
- * Return the array of source paths
- * @return String array of search paths.
- */
- String[] getSourcePaths() throws CDIException;
-
- /**
- * @param startAddress is the begining address
- * @param endAddress is the end address
- * @throws CDIException on failure.
- */
- ICDIInstruction[] getInstructions(BigInteger startAddress, BigInteger endAddress)
- throws CDIException;
-
- /**
- * @param filename is the name of the file to disassemble
- * @param linenum is the line number to disassemble around
- * @throws CDIException on failure
- */
- ICDIInstruction[] getInstructions(String filename, int linenum)
- throws CDIException;
-
- /**
- * @param filename is the name of the file to disassemble
- * @param linenum is the line number to disassemble around
- * @param lines is the number of disassembly to produced
- * @throws CDIException on failure
- */
- ICDIInstruction[] getInstructions(String filename, int linenum, int lines)
- throws CDIException;
-
- /**
- * @param startAddress is the begining address
- * @param endAddress is the end address
- * @throws CDIException on failure.
- */
- ICDIMixedInstruction[] getMixedInstructions(
- BigInteger startAddress,
- BigInteger endAddress)
- throws CDIException;
-
- /**
- * @param filename is the name of the file to disassemble
- * @param linenum is the line number to disassemble around
- * @param lines is the number of disassembly to produced
- * @throws CDIException on failure
- */
- ICDIMixedInstruction[] getMixedInstructions(String filename, int linenum)
- throws CDIException;
-
- /**
- * @param filename is the name of the file to disassemble
- * @param linenum is the line number to disassemble around
- * @param lines is the number of disassembly to produced
- * @throws CDIException on failure
- */
- ICDIMixedInstruction[] getMixedInstructions(
- String filename,
- int linenum,
- int lines)
- throws CDIException;
-
-}
diff --git a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/ICDIStackFrame.java b/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/ICDIStackFrame.java
deleted file mode 100644
index ddde8e1bcd8..00000000000
--- a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/ICDIStackFrame.java
+++ /dev/null
@@ -1,93 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2005 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.cdt.debug.core.cdi.model;
-
-import org.eclipse.cdt.debug.core.cdi.CDIException;
-import org.eclipse.cdt.debug.core.cdi.ICDILocator;
-
-/**
- *
- * A stack frame in a suspended thread.
- * A stack frame contains variables representing visible locals and
- * arguments at the current execution location.
- *
- * @since Jul 8, 2002
- */
-public interface ICDIStackFrame extends ICDIExecuteStepReturn, ICDIObject {
-
- /**
- * Returns the location of the instruction pointer in this
- * stack frame.
- *
- * @return the location of the instruction pointer
- */
- ICDILocator getLocator();
-
- /**
- * Returns the visible variables in this stack frame. An empty
- * collection is returned if there are no visible variables.
- *
- * @return a collection of visible variables
- * @throws CDIException if this method fails. Reasons include:
- */
- ICDILocalVariableDescriptor[] getLocalVariableDescriptors() throws CDIException;
-
- /**
- * Create a variable from the descriptor for evaluation. A CreatedEvent will be trigger and
- * ChangedEvent will also be trigger when the variable is assign a new value.
- * DestroyedEvent is fired when the variable is out of scope and automatically
- * removed from the manager list.
- * @param varDesc ICDThreadStorageDesc
- * @return
- * @throws CDIException
- */
- ICDIArgument createArgument(ICDIArgumentDescriptor varDesc) throws CDIException;
-
- /**
- * Create a variable from the descriptor for evaluation. A CreatedEvent will be trigger and
- * ChangedEvent will also be trigger when the variable is assign a new value.
- * DestroyedEvent is fired when the variable is out of scope and automatically
- * removed from the manager list.
- * @param varDesc ICDThreadStorageDesc
- * @return
- * @throws CDIException
- */
- ICDILocalVariable createLocalVariable(ICDILocalVariableDescriptor varDesc) throws CDIException;
-
- /**
- * Returns the arguments in this stack frame. An empty collection
- * is returned if there are no arguments.
- *
- * @return a collection of arguments
- * @throws CDIException if this method fails. Reasons include:
- */
- ICDIArgumentDescriptor[] getArgumentDescriptors() throws CDIException;
-
- /**
- * Returns the thread this stackframe is contained in.
- *
- * @return the thread
- */
- ICDIThread getThread();
-
- /**
- * Returns the level of the stack frame, 1 based.
- *
- * @return the level of the stack frame
- */
- int getLevel();
-
- /**
- * Return true if the frames are the same.
- */
- boolean equals(ICDIStackFrame stackframe);
-}
diff --git a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/ICDISuspend.java b/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/ICDISuspend.java
deleted file mode 100644
index 24929f48972..00000000000
--- a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/ICDISuspend.java
+++ /dev/null
@@ -1,35 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.cdt.debug.core.cdi.model;
-
-import org.eclipse.cdt.debug.core.cdi.CDIException;
-
-/**
- * Provides the ability to suspend a thread or debug target.
-*/
-public interface ICDISuspend {
-
- /**
- * Causes this target/thread to suspend its execution.
- * Has no effect on an already suspended thread.
- *
- * @throws CDIException if this method fails. Reasons include:
- */
- void suspend() throws CDIException;
-
- /**
- * Returns whether this target/thread is currently suspended.
- *
- * @return whether this target/thread is currently suspended
- */
- boolean isSuspended();
-}
diff --git a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/ICDITarget.java b/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/ICDITarget.java
deleted file mode 100644
index baf316edd20..00000000000
--- a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/ICDITarget.java
+++ /dev/null
@@ -1,264 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2005 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.cdt.debug.core.cdi.model;
-
-import java.math.BigInteger;
-
-import org.eclipse.cdt.debug.core.cdi.CDIException;
-import org.eclipse.cdt.debug.core.cdi.ICDIAddressLocation;
-import org.eclipse.cdt.debug.core.cdi.ICDICondition;
-import org.eclipse.cdt.debug.core.cdi.ICDIFunctionLocation;
-import org.eclipse.cdt.debug.core.cdi.ICDILineLocation;
-import org.eclipse.cdt.debug.core.cdi.ICDILocation;
-import org.eclipse.cdt.debug.core.cdi.ICDISessionObject;
-
-/**
- *
- * Represents a debuggable process. This is a root object of the CDI
- * model.
- *
- * @since Jul 8, 2002
- */
-public interface ICDITarget extends ICDIThreadGroup, ICDIExpressionManagement,
- ICDISourceManagement, ICDISharedLibraryManagement, ICDIMemoryBlockManagement, ICDISessionObject {
-
- /**
- * Gets the target process.
- *
- * @return the output stream connected to the normal input of the
- * target process.
- */
- Process getProcess();
-
- /**
- * Returns the configuration description of this debug session.
- *
- * @return the configuration description
- */
- ICDITargetConfiguration getConfiguration();
-
- /**
- * Evaluates the expression specified by the given string.
- * Returns the evaluation result as a String.
- *
- * @param - expression string to be evaluated
- * @return the result of the evaluation
- * @throws CDIException if this method fails. Reasons include:
- */
- String evaluateExpressionToString(ICDIStackFrame context, String expressionText)
- throws CDIException;
-
- /**
- * A static/global variable in a particular function or file,
- * filename or/and function is the context for the static ICDIVariableDescriptor.
- * <pre>
- * hello.c:
- * int bar;
- * int main() {
- * static int bar;
- * }
- * file.c:
- * int foo() {
- * static int bar;
- * }
- * getVariableObject(null, null, "bar");
- * getVariableObject(null, "main", "bar");
- * getVariableObject("file.c", "foo", "bar");
- * </pre>
- * @param filename
- * @param function
- * @param name
- * @return ICDIGlobalVariableDescriptor
- * @throws CDIException
- */
- ICDIGlobalVariableDescriptor getGlobalVariableDescriptors(String filename, String function, String name) throws CDIException;
-
- /**
- * Create a variable from the descriptor for evaluation. A CreatedEvent will be trigger and
- * ChangedEvent will also be trigger when the variable is assign a new value.
- * DestroyedEvent is fired when the variable is out of scope and automatically
- * removed from the manager list.
- *
- * @param varDesc ICDIGlobalVariableDescriptor
- * @return ICDIGlobalVariable
- * @throws CDIException
- */
- ICDIGlobalVariable createGlobalVariable(ICDIGlobalVariableDescriptor varDesc) throws CDIException;
-
- /**
- * Return the register groups.
- *
- * @return ICDIRegisterGroup[]
- */
- ICDIRegisterGroup[] getRegisterGroups() throws CDIException;
-
- /**
- * Create a variable from the descriptor for evaluation. A CreatedEvent will be trigger and
- * ChangedEvent will also be trigger when the variable is assign a new value.
- * DestroyedEvent is fired when the variable is out of scope and automatically
- * removed from the manager list.
- * @param varDesc ICDThreadStorageDesc
- * @return
- * @throws CDIException
- */
- ICDIRegister createRegister(ICDIRegisterDescriptor varDesc) throws CDIException;
-
- /**
- * Returns whether this target is terminated.
- *
- * @return whether this target is terminated
- */
- boolean isTerminated();
-
- /**
- * Causes this target to terminate.
- *
- * @throws CDIException if this method fails. Reasons include:
- */
- void terminate() throws CDIException;
-
- /**
- * Returns whether this target is disconnected.
- *
- * @return whether this target is disconnected
- */
- boolean isDisconnected();
-
- /**
- * Disconnects this target from the debuggable process. Generally,
- * disconnecting ends a debug session with this target, but allows
- * the debuggable program to continue running.
- *
- * @throws CDIException if this method fails. Reasons include:
- */
- void disconnect() throws CDIException;
-
- /**
- * Restarts the execution of this target.
- *
- * @throws CDIException if this method fails. Reasons include:
- */
- void restart() throws CDIException;
-
- /**
- * Equivalent to resume(false)
- *
- * @deprecated
- * @throws CDIException if this method fails. Reasons include:
- */
- void resume() throws CDIException;
-
- /**
- * Equivalent to stepOver(1)
- *
- * @deprecated
- * @see #stepOver(int)
- * @throws CDIException if this method fails. Reasons include:
- */
- void stepOver() throws CDIException;
-
- /**
- * Equivalent to stepInto(1)
- *
- * @deprecated
- * @see #stepInto(int)
- * @throws CDIException if this method fails. Reasons include:
- */
- void stepInto() throws CDIException;
-
- /**
- * Equivalent to stepOverInstruction(1)
- *
- * @deprecated
- * @see stepOverInstruction(int)
- * @throws CDIException if this method fails. Reasons include:
- */
- void stepOverInstruction() throws CDIException;
-
- /**
- * Equivalent to stepIntoInstruction(1)
- *
- * @deprecated
- * @see #stepIntoInstruction(int)
- * @throws CDIException if this method fails. Reasons include:
- */
- void stepIntoInstruction() throws CDIException;
-
- /**
- * Equivaltent to stepUntil(location)
- *
- * @deprecated
- * @see #stepUntil(ICDILocation)
- * @throws CDIException if this method fails. Reasons include:
- */
- void runUntil(ICDILocation location) throws CDIException;
-
- /**
- * Equivalent to resume(location
- *
- * @deprecated
- * @see #resume(ICDLocation)
- * @throws CDIException if this method fails. Reasons include:
- */
- void jump(ICDILocation location) throws CDIException;
-
- /**
- * Equivalent to resume(false)
- *
- * @deprecated
- * @throws CDIException
- */
- void signal() throws CDIException;
-
- /**
- * Equivalent to resume(signal)
- *
- * @deprecated
- * @see #resume(ICDISignal)
- * @param signal
- * @throws CDIException
- */
- void signal(ICDISignal signal) throws CDIException;
-
- /**
- * Returns the Runtime options for this target debug session.
- *
- * @return the configuration description
- */
- ICDIRuntimeOptions getRuntimeOptions();
-
- /**
- * Return a ICDICondition
- */
- ICDICondition createCondition(int ignoreCount, String expression);
-
- /**
- * Return a ICDICondition
- */
- ICDICondition createCondition(int ignoreCount, String expression, String[] threadIds);
-
- /**
- * Returns a ICDILineLocation
- */
- ICDILineLocation createLineLocation(String file, int line);
-
- /**
- * Returns a ICDIFunctionLocation
- */
- ICDIFunctionLocation createFunctionLocation(String file, String function);
-
- /**
- * Returns a ICDIAddressLocation
- */
- ICDIAddressLocation createAddressLocation(BigInteger address);
-
-}
diff --git a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/ICDITarget2.java b/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/ICDITarget2.java
deleted file mode 100644
index df1ba61b163..00000000000
--- a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/ICDITarget2.java
+++ /dev/null
@@ -1,24 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2007 Nokia and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * Nokia - Initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.cdt.debug.core.cdi.model;
-
-import org.eclipse.cdt.debug.core.model.IGlobalVariableDescriptor;
-
-public interface ICDITarget2 extends ICDITarget {
-
-
- /** Returns a list of global variables for the targeted process
- * @return list of globals for the targeted process
- */
- IGlobalVariableDescriptor[] getGlobalVariables();
-
-}
diff --git a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/ICDITargetConfiguration.java b/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/ICDITargetConfiguration.java
deleted file mode 100644
index 81e2a7b031a..00000000000
--- a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/ICDITargetConfiguration.java
+++ /dev/null
@@ -1,118 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.cdt.debug.core.cdi.model;
-
-/**
- * Describes the configuration of the target.
- *
- */
-public interface ICDITargetConfiguration extends ICDIObject {
-
- /**
- * Returns whether this target supports termination.
- *
- * @return whether this target supports termination
- */
- boolean supportsTerminate();
-
- /**
- * Returns whether this target supports disconnecting.
- *
- * @return whether this target supports disconnecting
- */
- boolean supportsDisconnect();
-
- /**
- * Returns whether this target supports suspend.
- *
- * @return whether this target supports suspend.
- */
- boolean supportsSuspend();
-
- /**
- * Returns whether this target supports Resume.
- *
- * @return whether this target supports Resume.
- */
- boolean supportsResume();
-
- /**
- * Returns whether this target supports restarting.
- *
- * @return whether this target supports restarting
- */
- boolean supportsRestart();
-
- /**
- * Returns whether this target supports stepping.
- *
- * @return whether this target supports stepping
- */
- boolean supportsStepping();
-
- /**
- * Returns whether this target supports instruction stepping.
- *
- * @return whether this target supports instruction stepping
- */
- boolean supportsInstructionStepping();
-
- /**
- * Returns whether this target supports breakpoints.
- *
- * @return whether this target supports breakpoints
- */
- boolean supportsBreakpoints();
-
- /**
- * Returns whether this target supports registers.
- *
- * @return whether this target supports registers
- */
- boolean supportsRegisters();
-
- /**
- * Returns whether this target supports register modification.
- *
- * @return whether this target supports registers modification
- */
- boolean supportsRegisterModification();
-
- /**
- * Returns whether this target supports shared library.
- *
- * @return whether this target supports registers modification
- */
- boolean supportsSharedLibrary();
-
- /**
- * Returns whether this target supports memory retrieval.
- *
- * @return whether this target supports memory retrieval
- */
- boolean supportsMemoryRetrieval();
-
- /**
- * Returns whether this target supports memory modification.
- *
- * @return whether this target supports memory modification
- */
- boolean supportsMemoryModification();
-
- /**
- * Returns whether this target supports expression evaluation.
- *
- * @return whether this target supports expression evaluation
- */
- boolean supportsExpressionEvaluation();
-
-}
diff --git a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/ICDITargetConfiguration2.java b/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/ICDITargetConfiguration2.java
deleted file mode 100644
index 5ae1cb042b1..00000000000
--- a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/ICDITargetConfiguration2.java
+++ /dev/null
@@ -1,59 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2006 Nokia and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * Nokia - initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.cdt.debug.core.cdi.model;
-
-public interface ICDITargetConfiguration2 extends ICDITargetConfiguration {
-
- /**
- * Returns whether this target supports thread control, namely whether it
- * supports suspending/resuming threads individually.
- *
- * @return whether this target supports thread control, namely whether it
- * supports suspending/resuming threads individually.
- */
- boolean supportsThreadControl();
-
- /**
- * Returns whether this target supports passive variable updating. If so
- * targets will not be actively sending variable value change notification
- * when a thread is suspended but will wait until they are asked to
- * redisplay the value. Passive variable updating lets a CDI plugin avoid
- * maintaining its own variable cache and having to keep it in sync with
- * CDT's. Targets that support this feature will need to be able to detect
- * when a variable value has changed and fire a changedEvent in its
- * implementation of ICDIValue.getValueString().
- *
- * @return whether this target supports passive variable updating.
- */
- boolean supportsPassiveVariableUpdate();
-
- /**
- * Returns whether this target supports runtime type indentification.
- * If so this means the type of a variable may change when its value changes.
- *
- * @return whether this target supports runtime type indentification.
- * If so this means the type of a variable may change when its value changes.
- */
- boolean supportsRuntimeTypeIdentification();
-
- /**
- * Returns whether this target supports having address breakpoints
- * enabled when a debug session starts.
- * If so this means address breaks will not be disabled on startup.
- *
- * @return whether this target supports having address breakpoints
- * enabled when a debug session starts.
- * If so this means address breaks will not be disabled on startup.
- */
- boolean supportsAddressBreaksOnStartup();
-
-}
diff --git a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/ICDITargetConfiguration3.java b/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/ICDITargetConfiguration3.java
deleted file mode 100644
index 8bc524ea2e7..00000000000
--- a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/ICDITargetConfiguration3.java
+++ /dev/null
@@ -1,45 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2007 Freescale Semiconductor and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * Freescale Semiconductor - initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.cdt.debug.core.cdi.model;
-
-import org.eclipse.cdt.debug.core.cdi.event.ICDIEvent;
-
-public interface ICDITargetConfiguration3 extends ICDITargetConfiguration2 {
-
- /**
- * It may be desirable to update all variables when a certain event occurs.
- * For example, some CDI clients may want all variabless updated when memory
- * is changed (when an ICDIMemoryChangedEvent is received) because it's
- * impractical or impossible for those backends to determine what specific
- * variables the memory change affected.
- *
- * CDT will call this method to determine desired behavior for a limited set
- * of event types. The CDI backend should not expect to use this hook as a
- * general control mechanism for when variables are updated.
- *
- * @return Whether the value for all active variables should be invalidated
- * and re-fetched from the CDI backend on the occurence of the given
- * event
- */
- boolean needsVariablesUpdated(ICDIEvent event);
-
- /**
- * Same idea as needsRegistersUpdated() but for registers. Embedded systems
- * often have memory mapped registers; changing bytes in memory might, in
- * effect, change a register value
- *
- * @return Whether the value for all active registers should be invalidated
- * and re-fetched from the CDI backend on the occurence of the given
- * event
- */
- boolean needsRegistersUpdated(ICDIEvent event);
-}
diff --git a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/ICDIThread.java b/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/ICDIThread.java
deleted file mode 100644
index ff33ef026be..00000000000
--- a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/ICDIThread.java
+++ /dev/null
@@ -1,172 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.cdt.debug.core.cdi.model;
-
-import org.eclipse.cdt.debug.core.cdi.CDIException;
-import org.eclipse.cdt.debug.core.cdi.ICDILocation;
-
-/**
- *
- * A thread in a debug target.
- * A thread contains stack frames. Stack frames are only available
- * when the thread is suspended, and are returned in top-down order.
- *
- * @since Jul 8, 2002
- */
-public interface ICDIThread extends ICDIExecuteStep, ICDIExecuteResume, ICDISuspend, ICDIObject {
-
- /**
- * Returns the stack frames contained in this thread. An
- * empty collection is returned if this thread contains
- * no stack frames, or is not currently suspended. Stack frames
- * are returned in top down order.
- *
- * @return a collection of stack frames
- * @throws CDIException if this method fails. Reasons include:
- */
- ICDIStackFrame[] getStackFrames() throws CDIException;
-
- /**
- * Returns the stack frames contained in this thread between the specified
- * <tt>fromIndex</tt>, inclusive, and <tt>toIndex</tt>, exclusive.
- * An empty collection is returned if this thread contains
- * no stack frames, or is not currently suspended. Stack frames
- * are returned in top down order.
- *
- * @return a collection of stack frames
- * @throws CDIException if this method fails. Reasons include:
- * @throws IndexOutOfBoundsException for an illegal endpoint index value
- * (fromIndex &lt; 0 || toIndex &gt; size || fromIndex &gt; toIndex).
-
- */
- ICDIStackFrame[] getStackFrames(int fromIndex, int len) throws CDIException;
-
- /**
- * Returns the depth of the stack frames.
- *
- * @return depth of stack frames
- * @throws CDIException if this method fails. Reasons include:
- */
- int getStackFrameCount() throws CDIException;
-
- /**
- * Return thread local storage variables descriptor.
- *
- * @return
- * @throws CDIException
- */
- ICDIThreadStorageDescriptor[] getThreadStorageDescriptors() throws CDIException;
-
- /**
- * Create a variable from the descriptor for evaluation. A CreatedEvent will be trigger and
- * ChangedEvent will also be trigger when the variable is assign a new value.
- * DestroyedEvent is fired when the variable is out of scope and automatically
- * removed from the manager list.
- * @param varDesc ICDThreadStorageDesc
- * @return
- * @throws CDIException
- */
- ICDIThreadStorage createThreadStorage(ICDIThreadStorageDescriptor varDesc) throws CDIException;
-
- /**
- * Equivalent to resume(false)
- *
- * @deprecated
- * @throws CDIException if this method fails. Reasons include:
- */
- void resume() throws CDIException;
-
- /**
- * Equivalent to stepOver(1)
- *
- * @deprecated
- * @throws CDIException if this method fails. Reasons include:
- */
- void stepOver() throws CDIException;
-
- /**
- * Equivalent to stepInto(1)
- *
- * @deprecated
- * @throws CDIException if this method fails. Reasons include:
- */
- void stepInto() throws CDIException;
-
- /**
- * Equivalent to stepOverInstruction(1)
- *
- * @deprecated
- * @throws CDIException if this method fails. Reasons include:
- */
- void stepOverInstruction() throws CDIException;
-
- /**
- * Equivalent to stepIntoInstruction(1)
- *
- * @deprecated
- * @throws CDIException if this method fails. Reasons include:
- */
- void stepIntoInstruction() throws CDIException;
-
- /**
- * This method is deprecated and will only be available
- * on the stackframe
- *
- * @deprecated
- * @see ICDIStackFrame.stepReturn()
- * @throws CDIException
- */
- void stepReturn() throws CDIException;
-
- /**
- * Equivalent to stepUntil(location)
- *
- * @deprecated
- * @see #stepUntil(ICDILocation)
- * @throws CDIException if this method fails. Reasons include:
- */
- void runUntil(ICDILocation location) throws CDIException;
-
- /**
- * Equivalent to resume(location)
- *
- * @deprecated
- * @see #resume(ICDILocation)
- * @throws CDIException if this method fails. Reasons include:
- */
- void jump(ICDILocation location) throws CDIException;
-
- /**
- * Equivalent to resume(false)
- *
- * @deprecated
- * @see #resume(boolean)
- * @throws CDIException
- */
- void signal() throws CDIException;
-
- /**
- * Equivalent to resume(signal)
- *
- * @deprecated
- * @see #resume(ICDISignal)
- * @param signal
- * @throws CDIException
- */
- void signal(ICDISignal signal) throws CDIException;
-
- /**
- * Returns true if the threads are the same.
- */
- boolean equals(ICDIThread thead);
-
-}
diff --git a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/ICDIThreadGroup.java b/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/ICDIThreadGroup.java
deleted file mode 100644
index caf42d862b8..00000000000
--- a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/ICDIThreadGroup.java
+++ /dev/null
@@ -1,39 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.cdt.debug.core.cdi.model;
-
-import org.eclipse.cdt.debug.core.cdi.CDIException;
-
-/**
- */
-public interface ICDIThreadGroup extends ICDIBreakpointManagement, ICDIExecuteStep, ICDIExecuteResume,
- ICDISuspend, ICDISignalManagement, ICDIObject {
-
- /**
- * Returns the threads contained in this target.
- * An empty collection is returned if this target contains no
- * threads.
- *
- * @return a collection of threads
- * @throws CDIException if this method fails. Reasons include:
- */
- ICDIThread[] getThreads() throws CDIException;
-
- /**
- * Returns the currently selected thread.
- *
- * @return the currently selected thread
- * @throws CDIException if this method fails. Reasons include:
- */
- ICDIThread getCurrentThread() throws CDIException;
-
-}
diff --git a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/ICDIThreadStorage.java b/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/ICDIThreadStorage.java
deleted file mode 100644
index f5840ee8a9f..00000000000
--- a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/ICDIThreadStorage.java
+++ /dev/null
@@ -1,19 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2002, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.cdt.debug.core.cdi.model;
-
-/**
- * ICDIThreadStorage
- */
-public interface ICDIThreadStorage extends ICDIVariable, ICDIThreadStorageDescriptor {
-
-}
diff --git a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/ICDIThreadStorageDescriptor.java b/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/ICDIThreadStorageDescriptor.java
deleted file mode 100644
index df48cf8d3e9..00000000000
--- a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/ICDIThreadStorageDescriptor.java
+++ /dev/null
@@ -1,28 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2002, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.cdt.debug.core.cdi.model;
-
-import org.eclipse.cdt.debug.core.cdi.CDIException;
-
-/**
- * ICDIThreadStorageDescriptor
- */
-public interface ICDIThreadStorageDescriptor extends ICDIVariableDescriptor {
-
- /**
- * Return the thread.
- *
- * @return ICDIThread
- * @throws CDIException
- */
- ICDIThread getThread() throws CDIException;
-}
diff --git a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/ICDITracepoint.java b/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/ICDITracepoint.java
deleted file mode 100644
index bc201adf3d0..00000000000
--- a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/ICDITracepoint.java
+++ /dev/null
@@ -1,103 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.cdt.debug.core.cdi.model;
-
-import org.eclipse.cdt.debug.core.cdi.CDIException;
-import org.eclipse.cdt.debug.core.cdi.ICDILocation;
-
-/**
- * Defines a point in the program execution when the specified data to be collected.
- *
- * @since May 15, 2003
- */
-public interface ICDITracepoint extends ICDIObject {
-
- /**
- * Represents an action to be taken when the tracepoint is hit.
- *
- * @since May 15, 2003
- */
- public interface IAction {
- }
-
- /**
- * Returns the location of this tracepoint.
- *
- * @return the location of this tracepoint
- * @throws CDIException if this method fails. Reasons include:
- */
- ICDILocation getLocation() throws CDIException;
-
- /**
- * Returns whether this tracepoint is enabled.
- *
- * @return whether this tracepoint is enabled
- * @throws CDIException if this method fails. Reasons include:
- */
- boolean isEnabled() throws CDIException;
-
- /**
- * Sets the enabled state of this tracepoint. This has no effect
- * if the current enabled state is the same as specified by
- * the enabled parameter.
- *
- * @param enabled - whether this tracepoint should be enabled
- * @throws CDIException if this method fails. Reasons include:
- */
- void setEnabled( boolean enabled ) throws CDIException;
-
- /**
- * Returns the passcount of this tracepoint.
- *
- * @return the passcount of this tracepoint
- * @throws CDIException if this method fails. Reasons include:
- */
- int getPassCount() throws CDIException;
-
- /**
- * Sets the passcount of this tracepoint.
- *
- * @param the passcount to set
- * @throws CDIException if this method fails. Reasons include:
- */
- void setPassCount( int passCount ) throws CDIException;
-
- /**
- * Adds the given actions to the action list of thie tracepoint.
- *
- * @param actions to add
- * @throws CDIException if this method fails. Reasons include:
- */
- void addActions( ICDITracepoint.IAction[] actions ) throws CDIException;
-
- /**
- * Removes the given actions from the action list of thie tracepoint.
- *
- * @param actions to remove
- * @throws CDIException if this method fails. Reasons include:
- */
- void removeActions( ICDITracepoint.IAction[] actions ) throws CDIException;
-
- /**
- * Clears the action list of thie tracepoint.
- *
- * @throws CDIException if this method fails. Reasons include:
- */
- void clearActions() throws CDIException;
-
- /**
- * Returns the actions assigned to this tracepoint.
- *
- * @return the actions of this tracepoint
- */
- ICDITracepoint.IAction[] getActions();
-}
diff --git a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/ICDIValue.java b/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/ICDIValue.java
deleted file mode 100644
index e674c327519..00000000000
--- a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/ICDIValue.java
+++ /dev/null
@@ -1,69 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.cdt.debug.core.cdi.model;
-
-import org.eclipse.cdt.debug.core.cdi.CDIException;
-import org.eclipse.cdt.debug.core.cdi.model.type.ICDIType;
-
-/**
- *
- * Represents the value of a variable. A value representing
- * a complex data structure contains variables.
- *
- * @since Jul 9, 2002
- */
-public interface ICDIValue extends ICDIObject {
- /**
- * Returns a description of the type of data this value contains.
- *
- * @return the name of this value's data type
- * @throws CDIException if this method fails. Reasons include:
- */
- String getTypeName() throws CDIException;
-
- /**
- * Return the type of this value.
- *
- * @return
- * @throws CDIException
- */
- ICDIType getType() throws CDIException;
-
- /**
- * Returns this value as a <code>String</code>.
- *
- * @return a String representation of this value
- * @throws CDIException if this method fails. Reasons include:
- */
- String getValueString() throws CDIException;
-
- /**
- * Return the number of children.
- * @return int children count
- */
- int getChildrenNumber() throws CDIException;
-
- /**
- * @return true if value is a container like structure.
- */
- boolean hasChildren() throws CDIException;
-
- /**
- * Returns the variables in this value. An empty collection
- * is returned if there are no variables.
- *
- * @return an array of variables
- * @throws CDIException if this method fails. Reasons include:
- */
- ICDIVariable[] getVariables() throws CDIException;
-
-}
diff --git a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/ICDIVariable.java b/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/ICDIVariable.java
deleted file mode 100644
index 19d99a120e5..00000000000
--- a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/ICDIVariable.java
+++ /dev/null
@@ -1,68 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.cdt.debug.core.cdi.model;
-
-import org.eclipse.cdt.debug.core.cdi.CDIException;
-
-/**
- *
- * Represents a data structure in the program. Each variable has
- * a value which may in turn contain more variables.
- *
- * @since Jul 9, 2002
- */
-public interface ICDIVariable extends ICDIVariableDescriptor {
-
- /**
- * Returns true if the value of this variable could be changed.
- *
- * @return true if the value of this variable could be changed
- * @throws CDIException if this method fails. Reasons include:
- */
- boolean isEditable() throws CDIException;
-
- /**
- * Returns the value of this variable.
- *
- * @return the value of this variable
- * @throws CDIException if this method fails. Reasons include:
- */
- ICDIValue getValue() throws CDIException;
-
- /**
- * Attempts to set the value of this variable to the value of
- * the given expression.
- *
- * @param expression - an expression to generate a new value
- * @throws CDIException if this method fails. Reasons include:
- */
- void setValue(String expression) throws CDIException;
-
- /**
- * Sets the value of this variable to the given value.
- *
- * @param value - a new value
- * @throws CDIException if this method fails. Reasons include:
- */
- void setValue(ICDIValue value) throws CDIException;
-
- /**
- * Remove the variable from the manager list.
- *
- * @param var
- * @return ICDIArgument
- * @throws CDIException
- */
- void dispose() throws CDIException;
-
- boolean equals(ICDIVariable variable);
-}
diff --git a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/ICDIVariableDescriptor.java b/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/ICDIVariableDescriptor.java
deleted file mode 100644
index 14e27da64fb..00000000000
--- a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/ICDIVariableDescriptor.java
+++ /dev/null
@@ -1,89 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.cdt.debug.core.cdi.model;
-
-import org.eclipse.cdt.debug.core.cdi.CDIException;
-import org.eclipse.cdt.debug.core.cdi.model.type.ICDIType;
-
-
-/**
- *
- */
-public interface ICDIVariableDescriptor extends ICDIObject {
-
- /**
- * Returns the name of this variable.
- *
- * @return String the name of this variable
- */
- String getName();
-
- /**
- * Returns the type of this variable descriptor.
- *
- * @return the type of data this variable is declared
- * @throws CDIException if this method fails. Reasons include:
- */
- ICDIType getType() throws CDIException;
-
- /**
- * Returns the type name of this variable descriptor.
- *
- * @return the type of data this variable is declared
- * @throws CDIException if this method fails. Reasons include:
- */
- String getTypeName() throws CDIException;
-
- /**
- * Returns the size of this variable descriptor.
- *
- * @return the size of this variable
- * @throws CDIException if this method fails. Reasons include:
- */
- int sizeof() throws CDIException;
-
- /**
- * Returns the qualified name of this variable.
- *
- * @return the qualified name of this variable
- * @throws CDIException if this method fails. Reasons include:
- */
- String getQualifiedName() throws CDIException;
-
- /**
- * Consider the variable object as an Array of type and range[start, start + length - 1]
- * @param stack
- * @param name
- * @return ICDIVariableDescriptor
- * @throws CDIException
- */
- ICDIVariableDescriptor getVariableDescriptorAsArray(int start, int length) throws CDIException;
-
- /**
- * Consider the variable descritor as type.
- *
- * @param stack
- * @param name
- * @return ICDIVariableDescriptor
- * @throws CDIException
- */
- ICDIVariableDescriptor getVariableDescriptorAsType(String type) throws CDIException;
-
- /**
- * Returns true if the variable Object are the same,
- * For example event if the name is the same because of
- * casting this may return false;
- * @return true if the same
- */
- boolean equals(ICDIVariableDescriptor varDesc);
-
-}
diff --git a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/ICDIWatchpoint.java b/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/ICDIWatchpoint.java
deleted file mode 100644
index c974f19b7a1..00000000000
--- a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/ICDIWatchpoint.java
+++ /dev/null
@@ -1,47 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.cdt.debug.core.cdi.model;
-
-import org.eclipse.cdt.debug.core.cdi.CDIException;
-
-/**
- *
- * Represents a watchpoint.
- *
- * @since Jul 9, 2002
- */
-public interface ICDIWatchpoint extends ICDIBreakpoint {
- final static public int WRITE = 0x1;
- final static public int READ = 0x2;
-
- /**
- * Returns whether this watchppoint is a write watchpoint.
- *
- * @return whether this watchppoint is a write watchpoint
- */
- boolean isWriteType();
-
- /**
- * Returns whether this watchppoint is a read watchpoint.
- *
- * @return whether this watchppoint is a read watchpoint
- */
- boolean isReadType();
-
- /**
- * Returns the watchpoint's expression.
- *
- * @return the expression of this watchpoint
- * @throws CDIException if this method fails. Reasons include:
- */
- String getWatchExpression() throws CDIException;
-}
diff --git a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/type/ICDIAggregateType.java b/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/type/ICDIAggregateType.java
deleted file mode 100644
index b1b1342ceb1..00000000000
--- a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/type/ICDIAggregateType.java
+++ /dev/null
@@ -1,24 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.cdt.debug.core.cdi.model.type;
-
-
-
-/**
- *
- * Represents the type of a variable.
- *
- * @since Apr 15, 2003
- */
-public interface ICDIAggregateType extends ICDIType {
-
-}
diff --git a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/type/ICDIAggregateValue.java b/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/type/ICDIAggregateValue.java
deleted file mode 100644
index b9fcceb141d..00000000000
--- a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/type/ICDIAggregateValue.java
+++ /dev/null
@@ -1,26 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.cdt.debug.core.cdi.model.type;
-
-import org.eclipse.cdt.debug.core.cdi.model.ICDIValue;
-
-
-
-/**
- *
- * Represents the type of a variable.
- *
- * @since Apr 15, 2003
- */
-public interface ICDIAggregateValue extends ICDIValue {
-
-}
diff --git a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/type/ICDIArrayType.java b/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/type/ICDIArrayType.java
deleted file mode 100644
index e39f50602a4..00000000000
--- a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/type/ICDIArrayType.java
+++ /dev/null
@@ -1,24 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.cdt.debug.core.cdi.model.type;
-
-
-/**
- *
- * Represents the type of a variable.
- *
- * @since Apr 15, 2003
- */
-public interface ICDIArrayType extends ICDIDerivedType {
-
- int getDimension();
-}
diff --git a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/type/ICDIArrayValue.java b/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/type/ICDIArrayValue.java
deleted file mode 100644
index 285fcdd33f7..00000000000
--- a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/type/ICDIArrayValue.java
+++ /dev/null
@@ -1,25 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.core.cdi.model.type;
-
-import org.eclipse.cdt.debug.core.cdi.CDIException;
-import org.eclipse.cdt.debug.core.cdi.model.ICDIVariable;
-
-
-/**
- *
- * Represents a value of a array type.
- *
- * @since April 15, 2003
- */
-public interface ICDIArrayValue extends ICDIDerivedValue {
- ICDIVariable[] getVariables(int index, int length) throws CDIException;
-}
diff --git a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/type/ICDIBoolType.java b/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/type/ICDIBoolType.java
deleted file mode 100644
index d592c2b326c..00000000000
--- a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/type/ICDIBoolType.java
+++ /dev/null
@@ -1,18 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.cdt.debug.core.cdi.model.type;
-
-/**
- */
-public interface ICDIBoolType extends ICDIIntegralType {
-
-}
diff --git a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/type/ICDIBoolValue.java b/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/type/ICDIBoolValue.java
deleted file mode 100644
index 5eda323adcd..00000000000
--- a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/type/ICDIBoolValue.java
+++ /dev/null
@@ -1,18 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.cdt.debug.core.cdi.model.type;
-
-/**
- */
-public interface ICDIBoolValue extends ICDIIntegralValue {
-
-}
diff --git a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/type/ICDICharType.java b/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/type/ICDICharType.java
deleted file mode 100644
index 4e3433b308d..00000000000
--- a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/type/ICDICharType.java
+++ /dev/null
@@ -1,23 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.cdt.debug.core.cdi.model.type;
-
-
-/**
- *
- * Represents the type of a variable.
- *
- * @since Apr 15, 2003
- */
-public interface ICDICharType extends ICDIIntegralType {
-
-}
diff --git a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/type/ICDICharValue.java b/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/type/ICDICharValue.java
deleted file mode 100644
index ad568721f57..00000000000
--- a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/type/ICDICharValue.java
+++ /dev/null
@@ -1,23 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.cdt.debug.core.cdi.model.type;
-
-
-/**
- *
- * Represents the value of a variable.
- *
- * @since April 15, 2003
- */
-public interface ICDICharValue extends ICDIIntegralValue {
-
-}
diff --git a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/type/ICDIDerivedType.java b/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/type/ICDIDerivedType.java
deleted file mode 100644
index f5c9b48e6d8..00000000000
--- a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/type/ICDIDerivedType.java
+++ /dev/null
@@ -1,25 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.cdt.debug.core.cdi.model.type;
-
-
-
-/**
- *
- * Represents the type of a variable.
- *
- * @since Apr 15, 2003
- */
-public interface ICDIDerivedType extends ICDIType {
-
- ICDIType getComponentType();
-}
diff --git a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/type/ICDIDerivedValue.java b/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/type/ICDIDerivedValue.java
deleted file mode 100644
index 0c92d700326..00000000000
--- a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/type/ICDIDerivedValue.java
+++ /dev/null
@@ -1,26 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.cdt.debug.core.cdi.model.type;
-
-import org.eclipse.cdt.debug.core.cdi.model.ICDIValue;
-
-
-
-/**
- *
- * Represents the type of a variable.
- *
- * @since Apr 15, 2003
- */
-public interface ICDIDerivedValue extends ICDIValue {
-
-}
diff --git a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/type/ICDIDoubleType.java b/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/type/ICDIDoubleType.java
deleted file mode 100644
index b7572232c2e..00000000000
--- a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/type/ICDIDoubleType.java
+++ /dev/null
@@ -1,23 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.cdt.debug.core.cdi.model.type;
-
-
-/**
- *
- * Represents the type of a variable.
- *
- * @since Apr 15, 2003
- */
-public interface ICDIDoubleType extends ICDIFloatingPointType {
-
-}
diff --git a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/type/ICDIDoubleValue.java b/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/type/ICDIDoubleValue.java
deleted file mode 100644
index e29d0376bb0..00000000000
--- a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/type/ICDIDoubleValue.java
+++ /dev/null
@@ -1,23 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.cdt.debug.core.cdi.model.type;
-
-
-/**
- *
- * Represents the value of a variable.
- *
- * @since April 15, 2003
- */
-public interface ICDIDoubleValue extends ICDIFloatingPointValue {
-
-}
diff --git a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/type/ICDIEnumType.java b/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/type/ICDIEnumType.java
deleted file mode 100644
index 35a474025cf..00000000000
--- a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/type/ICDIEnumType.java
+++ /dev/null
@@ -1,18 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.cdt.debug.core.cdi.model.type;
-
-/**
- */
-public interface ICDIEnumType extends ICDIIntegralType {
-
-}
diff --git a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/type/ICDIEnumValue.java b/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/type/ICDIEnumValue.java
deleted file mode 100644
index d2f7dc277a1..00000000000
--- a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/type/ICDIEnumValue.java
+++ /dev/null
@@ -1,18 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.cdt.debug.core.cdi.model.type;
-
-/**
- */
-public interface ICDIEnumValue extends ICDIIntegralValue {
-
-}
diff --git a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/type/ICDIFloatType.java b/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/type/ICDIFloatType.java
deleted file mode 100644
index 2dfae757556..00000000000
--- a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/type/ICDIFloatType.java
+++ /dev/null
@@ -1,23 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.cdt.debug.core.cdi.model.type;
-
-
-/**
- *
- * Represents the type of a variable.
- *
- * @since Apr 15, 2003
- */
-public interface ICDIFloatType extends ICDIFloatingPointType {
-
-}
diff --git a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/type/ICDIFloatValue.java b/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/type/ICDIFloatValue.java
deleted file mode 100644
index f1dd0be8b36..00000000000
--- a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/type/ICDIFloatValue.java
+++ /dev/null
@@ -1,23 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.cdt.debug.core.cdi.model.type;
-
-
-/**
- *
- * Represents the value of a variable.
- *
- * @since April 15, 2003
- */
-public interface ICDIFloatValue extends ICDIFloatingPointValue {
-
-}
diff --git a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/type/ICDIFloatingPointType.java b/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/type/ICDIFloatingPointType.java
deleted file mode 100644
index 9d4d10a03ac..00000000000
--- a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/type/ICDIFloatingPointType.java
+++ /dev/null
@@ -1,28 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.cdt.debug.core.cdi.model.type;
-
-
-/**
- *
- * Represents the type of a variable.
- *
- * @since Apr 15, 2003
- */
-public interface ICDIFloatingPointType extends ICDIType {
-
- boolean isImaginary();
-
- boolean isComplex();
-
- boolean isLong();
-}
diff --git a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/type/ICDIFloatingPointValue.java b/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/type/ICDIFloatingPointValue.java
deleted file mode 100644
index df29a34cf3d..00000000000
--- a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/type/ICDIFloatingPointValue.java
+++ /dev/null
@@ -1,28 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.cdt.debug.core.cdi.model.type;
-
-import org.eclipse.cdt.debug.core.cdi.CDIException;
-import org.eclipse.cdt.debug.core.cdi.model.ICDIValue;
-
-/**
- *
- * Represents the value of a variable.
- *
- * @since April 15, 2003
- */
-public interface ICDIFloatingPointValue extends ICDIValue {
-
- float floatValue() throws CDIException;
-
- double doubleValue() throws CDIException;
-}
diff --git a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/type/ICDIFunctionType.java b/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/type/ICDIFunctionType.java
deleted file mode 100644
index 98f5401042d..00000000000
--- a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/type/ICDIFunctionType.java
+++ /dev/null
@@ -1,24 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.cdt.debug.core.cdi.model.type;
-
-
-
-/**
- *
- * Represents the type of a variable.
- *
- * @since Apr 15, 2003
- */
-public interface ICDIFunctionType extends ICDIDerivedType {
-
-}
diff --git a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/type/ICDIFunctionValue.java b/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/type/ICDIFunctionValue.java
deleted file mode 100644
index a704d0970e0..00000000000
--- a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/type/ICDIFunctionValue.java
+++ /dev/null
@@ -1,24 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.cdt.debug.core.cdi.model.type;
-
-
-
-/**
- *
- * Represents the type of a variable.
- *
- * @since Apr 15, 2003
- */
-public interface ICDIFunctionValue extends ICDIDerivedValue {
-
-}
diff --git a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/type/ICDIIntType.java b/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/type/ICDIIntType.java
deleted file mode 100644
index bd3d8adc710..00000000000
--- a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/type/ICDIIntType.java
+++ /dev/null
@@ -1,23 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.cdt.debug.core.cdi.model.type;
-
-
-/**
- *
- * Represents the type of a variable.
- *
- * @since Apr 15, 2003
- */
-public interface ICDIIntType extends ICDIIntegralType {
-
-}
diff --git a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/type/ICDIIntValue.java b/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/type/ICDIIntValue.java
deleted file mode 100644
index 327e6b76f6b..00000000000
--- a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/type/ICDIIntValue.java
+++ /dev/null
@@ -1,23 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.cdt.debug.core.cdi.model.type;
-
-
-/**
- *
- * Represents the value of a variable.
- *
- * @since April 15, 2003
- */
-public interface ICDIIntValue extends ICDIIntegralValue {
-
-}
diff --git a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/type/ICDIIntegralType.java b/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/type/ICDIIntegralType.java
deleted file mode 100644
index 4125bf84e5f..00000000000
--- a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/type/ICDIIntegralType.java
+++ /dev/null
@@ -1,24 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.cdt.debug.core.cdi.model.type;
-
-
-/**
- *
- * Represents the type of a variable.
- *
- * @since Apr 15, 2003
- */
-public interface ICDIIntegralType extends ICDIType{
-
- boolean isUnsigned();
-}
diff --git a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/type/ICDIIntegralValue.java b/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/type/ICDIIntegralValue.java
deleted file mode 100644
index dea2ddd68bb..00000000000
--- a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/type/ICDIIntegralValue.java
+++ /dev/null
@@ -1,38 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.cdt.debug.core.cdi.model.type;
-
-import java.math.BigInteger;
-
-import org.eclipse.cdt.debug.core.cdi.CDIException;
-import org.eclipse.cdt.debug.core.cdi.model.ICDIValue;
-
-
-/**
- *
- * Represents the value of a variable.
- *
- * @since April 15, 2003
- */
-public interface ICDIIntegralValue extends ICDIValue {
-
- public BigInteger bigIntegerValue() throws CDIException;
-
- public long longValue() throws CDIException;
-
- public int intValue() throws CDIException;
-
- public short shortValue() throws CDIException;
-
- public int byteValue() throws CDIException;
-
-}
diff --git a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/type/ICDILongLongType.java b/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/type/ICDILongLongType.java
deleted file mode 100644
index 06408a8413c..00000000000
--- a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/type/ICDILongLongType.java
+++ /dev/null
@@ -1,23 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.cdt.debug.core.cdi.model.type;
-
-
-/**
- *
- * Represents the type of a variable.
- *
- * @since Apr 15, 2003
- */
-public interface ICDILongLongType extends ICDIIntegralType {
-
-}
diff --git a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/type/ICDILongLongValue.java b/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/type/ICDILongLongValue.java
deleted file mode 100644
index dcaa0ec39c5..00000000000
--- a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/type/ICDILongLongValue.java
+++ /dev/null
@@ -1,23 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.cdt.debug.core.cdi.model.type;
-
-
-/**
- *
- * Represents the value of a variable.
- *
- * @since April 15, 2003
- */
-public interface ICDILongLongValue extends ICDIIntegralValue {
-
-}
diff --git a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/type/ICDILongType.java b/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/type/ICDILongType.java
deleted file mode 100644
index c5a772e261f..00000000000
--- a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/type/ICDILongType.java
+++ /dev/null
@@ -1,23 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.cdt.debug.core.cdi.model.type;
-
-
-/**
- *
- * Represents the type of a variable.
- *
- * @since Apr 15, 2003
- */
-public interface ICDILongType extends ICDIIntegralType {
-
-}
diff --git a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/type/ICDILongValue.java b/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/type/ICDILongValue.java
deleted file mode 100644
index 6837e23851a..00000000000
--- a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/type/ICDILongValue.java
+++ /dev/null
@@ -1,23 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.cdt.debug.core.cdi.model.type;
-
-
-/**
- *
- * Represents the value of a variable.
- *
- * @since April 15, 2003
- */
-public interface ICDILongValue extends ICDIIntegralValue {
-
-}
diff --git a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/type/ICDIPointerType.java b/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/type/ICDIPointerType.java
deleted file mode 100644
index 596f814155f..00000000000
--- a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/type/ICDIPointerType.java
+++ /dev/null
@@ -1,23 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.cdt.debug.core.cdi.model.type;
-
-
-/**
- *
- * Represents the type of a variable.
- *
- * @since Apr 15, 2003
- */
-public interface ICDIPointerType extends ICDIDerivedType {
-
-}
diff --git a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/type/ICDIPointerValue.java b/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/type/ICDIPointerValue.java
deleted file mode 100644
index 9498aa724b7..00000000000
--- a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/type/ICDIPointerValue.java
+++ /dev/null
@@ -1,28 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.cdt.debug.core.cdi.model.type;
-
-import java.math.BigInteger;
-
-import org.eclipse.cdt.debug.core.cdi.CDIException;
-
-
-/**
- *
- * Represents the type of a variable.
- *
- * @since Apr 15, 2003
- */
-public interface ICDIPointerValue extends ICDIDerivedValue {
-
- BigInteger pointerValue() throws CDIException;
-}
diff --git a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/type/ICDIReferenceType.java b/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/type/ICDIReferenceType.java
deleted file mode 100644
index 274af9e2cda..00000000000
--- a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/type/ICDIReferenceType.java
+++ /dev/null
@@ -1,19 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.cdt.debug.core.cdi.model.type;
-
-
-/**
- */
-public interface ICDIReferenceType extends ICDIDerivedType {
-
-}
diff --git a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/type/ICDIReferenceValue.java b/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/type/ICDIReferenceValue.java
deleted file mode 100644
index 912006db06c..00000000000
--- a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/type/ICDIReferenceValue.java
+++ /dev/null
@@ -1,26 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.core.cdi.model.type;
-
-import org.eclipse.cdt.debug.core.cdi.CDIException;
-import org.eclipse.cdt.debug.core.cdi.model.ICDIValue;
-
-/**
- */
-public interface ICDIReferenceValue extends ICDIDerivedValue {
-
- /**
- * Return the reference value.
- * @return ICDIValue
- * @throws CDIException
- */
- ICDIValue referenceValue() throws CDIException;
-}
diff --git a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/type/ICDIShortType.java b/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/type/ICDIShortType.java
deleted file mode 100644
index 52b0e526d37..00000000000
--- a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/type/ICDIShortType.java
+++ /dev/null
@@ -1,23 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.cdt.debug.core.cdi.model.type;
-
-
-/**
- *
- * Represents the type of a variable.
- *
- * @since Apr 15, 2003
- */
-public interface ICDIShortType extends ICDIIntegralType {
-
-}
diff --git a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/type/ICDIShortValue.java b/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/type/ICDIShortValue.java
deleted file mode 100644
index 3d39f2961c5..00000000000
--- a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/type/ICDIShortValue.java
+++ /dev/null
@@ -1,23 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.cdt.debug.core.cdi.model.type;
-
-
-/**
- *
- * Represents the value of a variable.
- *
- * @since April 15, 2003
- */
-public interface ICDIShortValue extends ICDIIntegralValue {
-
-}
diff --git a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/type/ICDIStructType.java b/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/type/ICDIStructType.java
deleted file mode 100644
index 4262059e4bb..00000000000
--- a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/type/ICDIStructType.java
+++ /dev/null
@@ -1,28 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.cdt.debug.core.cdi.model.type;
-
-
-/**
- *
- * Represents the type of a variable.
- *
- * @since Apr 15, 2003
- */
-public interface ICDIStructType extends ICDIAggregateType {
-
- boolean isClass();
-
- boolean isStruct();
-
- boolean isUnion();
-}
diff --git a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/type/ICDIStructValue.java b/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/type/ICDIStructValue.java
deleted file mode 100644
index ccdcf049372..00000000000
--- a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/type/ICDIStructValue.java
+++ /dev/null
@@ -1,23 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.cdt.debug.core.cdi.model.type;
-
-
-/**
- *
- * Represents the type of a variable.
- *
- * @since Apr 15, 2003
- */
-public interface ICDIStructValue extends ICDIAggregateValue {
-
-}
diff --git a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/type/ICDIType.java b/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/type/ICDIType.java
deleted file mode 100644
index ce0802603c3..00000000000
--- a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/type/ICDIType.java
+++ /dev/null
@@ -1,38 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.cdt.debug.core.cdi.model.type;
-
-import org.eclipse.cdt.debug.core.cdi.model.ICDIObject;
-
-
-/**
- *
- * Represents the type of a variable.
- *
- * @since Apr 15, 2003
- */
-public interface ICDIType extends ICDIObject {
-
- /**
- * Returns the name.
- *
- * @return the name of the data type
- * @throws CDIException if this method fails.
- */
- String getTypeName();
-
- /**
- * Returns a more desciptive name.
- * @return
- */
- String getDetailTypeName();
-}
diff --git a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/type/ICDIVoidType.java b/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/type/ICDIVoidType.java
deleted file mode 100644
index b3e49f346ea..00000000000
--- a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/type/ICDIVoidType.java
+++ /dev/null
@@ -1,24 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.cdt.debug.core.cdi.model.type;
-
-
-
-/**
- *
- * Represents the type of a variable.
- *
- * @since Apr 15, 2003
- */
-public interface ICDIVoidType extends ICDIType {
-
-}
diff --git a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/type/ICDIWCharType.java b/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/type/ICDIWCharType.java
deleted file mode 100644
index 4978b543d68..00000000000
--- a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/type/ICDIWCharType.java
+++ /dev/null
@@ -1,18 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.cdt.debug.core.cdi.model.type;
-
-/**
- */
-public interface ICDIWCharType extends ICDIIntegralType {
-
-}
diff --git a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/type/ICDIWCharValue.java b/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/type/ICDIWCharValue.java
deleted file mode 100644
index 7873ce1c8fb..00000000000
--- a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/type/ICDIWCharValue.java
+++ /dev/null
@@ -1,17 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.core.cdi.model.type;
-
-/**
- */
-public interface ICDIWCharValue extends ICDIIntegralValue {
-
-}
diff --git a/debug/org.eclipse.cdt.debug.core/plugin.properties b/debug/org.eclipse.cdt.debug.core/plugin.properties
deleted file mode 100644
index 7c79e03bdd2..00000000000
--- a/debug/org.eclipse.cdt.debug.core/plugin.properties
+++ /dev/null
@@ -1,31 +0,0 @@
-###############################################################################
-# Copyright (c) 2000, 2007 QNX Software Systems and others.
-# All rights reserved. This program and the accompanying materials
-# are made available under the terms of the Eclipse Public License v1.0
-# which accompanies this distribution, and is available at
-# http://www.eclipse.org/legal/epl-v10.html
-#
-# Contributors:
-# QNX Software Systems - Initial API and implementation
-# Ken Ryall (Nokia) - Added support for AbsoluteSourceContainer( 159833 )
-# Ken Ryall (Nokia) - Added support for breakpoint problems( 170027 )
-###############################################################################
-pluginName=C/C++ Development Tools Debug Model
-providerName=Eclipse.org
-
-CDebugger.name=C/C++ Development Tools Core Debugger Extension
-
-cLineBreakpoints.name=C/C++ Line Breakpoints
-cAddressBreakpoints.name=C/C++ Address Breakpoints
-cFunctionBreakpoints.name=C/C++ Function Breakpoints
-cWatchpoints.name=C/C++ Watchpoints
-breakpointProblem.name=C/C++ Breakpoint Problem
-
-containerName.mapping=Path Mapping
-containerDescription.mapping=A path mapping.
-containerName.mapEntry=Path Map Entry
-containerDescription.mapEntry=An entry in a path mapping.
-containerName.directory=File System Directory
-containerDescription.directory=A directory in the local file system.
-containerName.absolutePath=Absolute File Path
-containerDescription.absolutePath=An absolute path to a file in the local file system.
diff --git a/debug/org.eclipse.cdt.debug.core/plugin.xml b/debug/org.eclipse.cdt.debug.core/plugin.xml
deleted file mode 100644
index e8e5214c89e..00000000000
--- a/debug/org.eclipse.cdt.debug.core/plugin.xml
+++ /dev/null
@@ -1,183 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<?eclipse version="3.0"?>
-<plugin>
-
- <extension-point id="CDebugger" name="%CDebugger.name" schema="schema/CDebugger.exsd"/>
-
- <extension
- id="cBreakpointMarker"
- point="org.eclipse.core.resources.markers">
- <super
- type="org.eclipse.debug.core.breakpointMarker">
- </super>
- <persistent
- value="true">
- </persistent>
- <attribute
- name="org.eclipse.cdt.debug.core.condition">
- </attribute>
- <attribute
- name="org.eclipse.cdt.debug.core.ignoreCount">
- </attribute>
- <attribute
- name="org.eclipse.cdt.debug.core.threadId">
- </attribute>
- <attribute
- name="org.eclipse.cdt.debug.core.installCount">
- </attribute>
- <attribute
- name="org.eclipse.cdt.debug.core.sourceHandle">
- </attribute>
- </extension>
- <extension
- id="commonCLineBreakpointMarker"
- point="org.eclipse.core.resources.markers">
- <super
- type="org.eclipse.cdt.debug.core.cBreakpointMarker">
- </super>
- <super
- type="org.eclipse.debug.core.lineBreakpointMarker">
- </super>
- <persistent
- value="true">
- </persistent>
- </extension>
- <extension
- id="cLineBreakpointMarker"
- point="org.eclipse.core.resources.markers">
- <super
- type="org.eclipse.cdt.debug.core.commonCLineBreakpointMarker">
- </super>
- <persistent
- value="true">
- </persistent>
- <attribute
- name="org.eclipse.cdt.debug.core.function">
- </attribute>
- <attribute
- name="org.eclipse.cdt.debug.core.address">
- </attribute>
- </extension>
- <extension
- id="cAddressBreakpointMarker"
- point="org.eclipse.core.resources.markers">
- <super
- type="org.eclipse.cdt.debug.core.commonCLineBreakpointMarker">
- </super>
- <persistent
- value="true">
- </persistent>
- </extension>
- <extension
- id="cFunctionBreakpointMarker"
- point="org.eclipse.core.resources.markers">
- <super
- type="org.eclipse.cdt.debug.core.commonCLineBreakpointMarker">
- </super>
- <persistent
- value="true">
- </persistent>
- </extension>
- <extension
- id="cWatchpointMarker"
- point="org.eclipse.core.resources.markers">
- <super
- type="org.eclipse.cdt.debug.core.cBreakpointMarker">
- </super>
- <persistent
- value="true">
- </persistent>
- <attribute
- name="org.eclipse.cdt.debug.core.expression">
- </attribute>
- <attribute
- name="org.eclipse.cdt.debug.core.write">
- </attribute>
- <attribute
- name="org.eclipse.cdt.debug.core.read">
- </attribute>
- </extension>
- <extension
- id="breakpointproblem"
- name="%breakpointProblem.name"
- point="org.eclipse.core.resources.markers">
- <super
- type="org.eclipse.core.resources.problemmarker">
- </super>
- <super
- type="org.eclipse.core.resources.textmarker">
- </super>
- <persistent
- value="false">
- </persistent>
- <attribute name="externalLocation"/>
- </extension>
- <extension
- point="org.eclipse.debug.core.breakpoints">
- <breakpoint
- class="org.eclipse.cdt.debug.internal.core.breakpoints.CLineBreakpoint"
- name="%cLineBreakpoints.name"
- markerType="org.eclipse.cdt.debug.core.cLineBreakpointMarker"
- id="cLineBreakpoint">
- </breakpoint>
- <breakpoint
- class="org.eclipse.cdt.debug.internal.core.breakpoints.CAddressBreakpoint"
- name="%cAddressBreakpoints.name"
- markerType="org.eclipse.cdt.debug.core.cAddressBreakpointMarker"
- id="cAddressBreakpoint">
- </breakpoint>
- <breakpoint
- class="org.eclipse.cdt.debug.internal.core.breakpoints.CFunctionBreakpoint"
- name="%cFunctionBreakpoints.name"
- markerType="org.eclipse.cdt.debug.core.cFunctionBreakpointMarker"
- id="cFunctionBreakpoint">
- </breakpoint>
- <breakpoint
- class="org.eclipse.cdt.debug.internal.core.breakpoints.CWatchpoint"
- name="%cWatchpoints.name"
- markerType="org.eclipse.cdt.debug.core.cWatchpointMarker"
- id="cWatchpoint">
- </breakpoint>
- </extension>
- <extension
- point="org.eclipse.core.runtime.preferences">
- <initializer class="org.eclipse.cdt.debug.internal.core.CDebugCorePreferenceInitializer"/>
- </extension>
- <extension
- point="org.eclipse.debug.core.sourcePathComputers">
- <sourcePathComputer
- class="org.eclipse.cdt.debug.internal.core.sourcelookup.CSourcePathComputerDelegate"
- id="org.eclipse.cdt.debug.core.sourcePathComputer"/>
- </extension>
- <extension
- point="org.eclipse.debug.core.sourceLocators">
- <sourceLocator
- class="org.eclipse.cdt.debug.internal.core.sourcelookup.CSourceLookupDirector"
- name="C/C++ Source Locator"
- id="org.eclipse.cdt.debug.core.sourceLocator"/>
- </extension>
- <extension
- point="org.eclipse.debug.core.sourceContainerTypes">
- <sourceContainerType
- class="org.eclipse.cdt.debug.internal.core.sourcelookup.MappingSourceContainerType"
- description="%containerDescription.mapping"
- id="org.eclipse.cdt.debug.core.containerType.mapping"
- name="%containerName.mapping"/>
- <sourceContainerType
- class="org.eclipse.cdt.debug.internal.core.sourcelookup.MapEntrySourceContainerType"
- description="%containerDescription.mapEntry"
- id="org.eclipse.cdt.debug.core.containerType.mapEntry"
- name="%containerName.mapEntry"/>
- <sourceContainerType
- class="org.eclipse.cdt.debug.internal.core.sourcelookup.CDirectorySourceContainerType"
- description="%containerDescription.directory"
- id="org.eclipse.cdt.debug.core.containerType.directory"
- name="%containerName.directory"/>
- <sourceContainerType
- class="org.eclipse.cdt.debug.internal.core.sourcelookup.AbsolutePathSourceContainerType"
- description="%containerDescription.absolutePath"
- id="org.eclipse.cdt.debug.core.containerType.absolutePath"
- name="%containerName.absolutePath"/>
- </extension>
-
-</plugin>
diff --git a/debug/org.eclipse.cdt.debug.core/schema/CDebugger.exsd b/debug/org.eclipse.cdt.debug.core/schema/CDebugger.exsd
deleted file mode 100644
index 02384435017..00000000000
--- a/debug/org.eclipse.cdt.debug.core/schema/CDebugger.exsd
+++ /dev/null
@@ -1,139 +0,0 @@
-<?xml version='1.0' encoding='UTF-8'?>
-<!-- Schema file written by PDE -->
-<schema targetNamespace="org.eclipse.cdt.debug.core">
-<annotation>
- <appInfo>
- <meta.schema plugin="org.eclipse.cdt.debug.core" id="CDebugger" name="CDebugger"/>
- </appInfo>
- <documentation>
- [Enter description of this extension point]
- </documentation>
- </annotation>
-
- <element name="extension">
- <complexType>
- <sequence>
- <element ref="debugger" minOccurs="1" maxOccurs="unbounded"/>
- </sequence>
- <attribute name="point" type="string" use="required">
- <annotation>
- <documentation>
- a fully qualified identifier of the target extension point
- </documentation>
- </annotation>
- </attribute>
- <attribute name="id" type="string">
- <annotation>
- <documentation>
- an optional identifier of the extension instance
- </documentation>
- </annotation>
- </attribute>
- <attribute name="name" type="string">
- <annotation>
- <documentation>
- an optional name of the extension instance
- </documentation>
- </annotation>
- </attribute>
- </complexType>
- </element>
-
- <element name="debugger">
- <complexType>
- <attribute name="name" type="string" use="required">
- <annotation>
- <documentation>
- specifies the debugger&apos;s name
- </documentation>
- </annotation>
- </attribute>
- <attribute name="modes" type="string">
- <annotation>
- <documentation>
- specifies the comma separated list of debugging modes (run,core,attach).
- </documentation>
- </annotation>
- </attribute>
- <attribute name="class" type="string" use="required">
- <annotation>
- <documentation>
- specifies a fully qualified name of a Java class that implements &amp;lt;code&amp;gt;ICDIDebugger2&amp;lt;/code&amp;gt;
- </documentation>
- <appInfo>
- <meta.attribute kind="java" basedOn="org.eclipse.cdt.debug.mi.core.command.CommandFactory"/>
- </appInfo>
- </annotation>
- </attribute>
- <attribute name="id" type="string" use="required">
- <annotation>
- <documentation>
- specifies a unique identifier for this debugger.
- </documentation>
- </annotation>
- </attribute>
- <attribute name="platform" type="string">
- <annotation>
- <documentation>
- specifies a comma separated list of supported platforms.
- </documentation>
- </annotation>
- </attribute>
- <attribute name="cpu" type="string">
- <annotation>
- <documentation>
- specifies a comma separated list of supported architectures.
- </documentation>
- </annotation>
- </attribute>
- <attribute name="coreFileFilter" type="string">
- <annotation>
- <documentation>
-
- </documentation>
- </annotation>
- </attribute>
- </complexType>
- </element>
-
- <annotation>
- <appInfo>
- <meta.section type="examples"/>
- </appInfo>
- <documentation>
- [Enter extension point usage example here.]
- </documentation>
- </annotation>
-
- <annotation>
- <appInfo>
- <meta.section type="apiInfo"/>
- </appInfo>
- <documentation>
- [Enter API information here.]
- </documentation>
- </annotation>
-
- <annotation>
- <appInfo>
- <meta.section type="implementation"/>
- </appInfo>
- <documentation>
- [Enter information about supplied implementation of this extension point.]
- </documentation>
- </annotation>
-
- <annotation>
- <appInfo>
- <meta.section type="copyright"/>
- </appInfo>
- <documentation>
- Copyright (c) 2004, 2005 QNX Software Systems and others.
-All rights reserved. This program and the accompanying materials
-are made available under the terms of the Eclipse Public License v1.0
-which accompanies this distribution, and is available at
-http://www.eclipse.org/legal/epl-v10.html
- </documentation>
- </annotation>
-
-</schema>
diff --git a/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/core/CDIDebugModel.java b/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/core/CDIDebugModel.java
deleted file mode 100644
index 60c8113fbf7..00000000000
--- a/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/core/CDIDebugModel.java
+++ /dev/null
@@ -1,548 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.core;
-
-import java.io.IOException;
-import java.util.HashMap;
-import org.eclipse.cdt.core.CCorePlugin;
-import org.eclipse.cdt.core.IAddress;
-import org.eclipse.cdt.core.IBinaryParser;
-import org.eclipse.cdt.core.ICExtensionReference;
-import org.eclipse.cdt.core.IBinaryParser.IBinaryExecutable;
-import org.eclipse.cdt.core.IBinaryParser.IBinaryFile;
-import org.eclipse.cdt.core.IBinaryParser.IBinaryObject;
-import org.eclipse.cdt.debug.core.cdi.model.ICDITarget;
-import org.eclipse.cdt.debug.core.model.ICAddressBreakpoint;
-import org.eclipse.cdt.debug.core.model.ICBreakpoint;
-import org.eclipse.cdt.debug.core.model.ICFunctionBreakpoint;
-import org.eclipse.cdt.debug.core.model.ICLineBreakpoint;
-import org.eclipse.cdt.debug.core.model.ICWatchpoint;
-import org.eclipse.cdt.debug.internal.core.breakpoints.CAddressBreakpoint;
-import org.eclipse.cdt.debug.internal.core.breakpoints.CFunctionBreakpoint;
-import org.eclipse.cdt.debug.internal.core.breakpoints.CLineBreakpoint;
-import org.eclipse.cdt.debug.internal.core.breakpoints.CWatchpoint;
-import org.eclipse.cdt.debug.internal.core.model.CDebugTarget;
-import org.eclipse.core.resources.IFile;
-import org.eclipse.core.resources.IMarker;
-import org.eclipse.core.resources.IProject;
-import org.eclipse.core.resources.IResource;
-import org.eclipse.core.resources.IWorkspaceRunnable;
-import org.eclipse.core.resources.ResourcesPlugin;
-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.Status;
-import org.eclipse.debug.core.DebugException;
-import org.eclipse.debug.core.DebugPlugin;
-import org.eclipse.debug.core.IBreakpointManager;
-import org.eclipse.debug.core.ILaunch;
-import org.eclipse.debug.core.model.IBreakpoint;
-import org.eclipse.debug.core.model.IDebugTarget;
-import org.eclipse.debug.core.model.IProcess;
-
-/**
- * Provides utility methods for creating debug sessions, targets and breakpoints
- * specific to the CDI debug model.
- */
-public class CDIDebugModel {
-
- /**
- * Returns the identifier for the CDI debug model plug-in
- *
- * @return plugin identifier
- */
- public static String getPluginIdentifier() {
- return CDebugCorePlugin.getUniqueIdentifier();
- }
-
- /**
- * Creates and returns a debug target for the given CDI target, with the specified name, and associates it with the given process for console I/O. The debug
- * target is added to the given launch.
- *
- * @param launch the launch the new debug target will be contained in
- * @param project the project to use to persist breakpoints.
- * @param cdiTarget the CDI target to create a debug target for
- * @param name the name to associate with this target, which will be returned from <code>IDebugTarget.getName</code>.
- * @param debuggeeProcess the process to associate with the debug target, which will be returned from <code>IDebugTarget.getProcess</code>
- * @param file the executable to debug.
- * @param allowTerminate allow terminate().
- * @param allowDisconnect allow disconnect().
- * @param stopSymbol place temporary breakpoint at <code>stopSymbol</code>, ignore if <code>null</code> or empty.
- * @param resumeTarget resume target.
- * @return a debug target
- * @throws DebugException
- * @since 3.1
- */
- public static IDebugTarget newDebugTarget( final ILaunch launch, final IProject project, final ICDITarget cdiTarget, final String name, final IProcess debuggeeProcess, final IBinaryObject file, final boolean allowTerminate, final boolean allowDisconnect, final String stopSymbol, final boolean resumeTarget ) throws DebugException {
- final IDebugTarget[] target = new IDebugTarget[1];
- IWorkspaceRunnable r = new IWorkspaceRunnable() {
-
- public void run( IProgressMonitor m ) throws CoreException {
- target[0] = new CDebugTarget( launch, project, cdiTarget, name, debuggeeProcess, file, allowTerminate, allowDisconnect );
- ((CDebugTarget)target[0]).start( stopSymbol, resumeTarget );
- }
- };
- try {
- ResourcesPlugin.getWorkspace().run( r, null );
- }
- catch( CoreException e ) {
- CDebugCorePlugin.log( e );
- throw new DebugException( e.getStatus() );
- }
- return target[0];
- }
-
- /**
- * Creates and returns a debug target for the given CDI target, with the specified name, and associates it with the given process for console I/O. The debug
- * target is added to the given launch.
- *
- * @param launch the launch the new debug target will be contained in
- * @param project the project to use to persist breakpoints.
- * @param cdiTarget the CDI target to create a debug target for
- * @param name the name to associate with this target, which will be returned from <code>IDebugTarget.getName</code>.
- * @param debuggeeProcess the process to associate with the debug target, which will be returned from <code>IDebugTarget.getProcess</code>
- * @param file the executable to debug.
- * @param allowTerminate allow terminate().
- * @param allowDisconnect allow disconnect().
- * @param stopInMain place temporary breakpoint at main()
- * @param resumeTarget resume target.
- * @return a debug target
- * @throws DebugException
- * @deprecated
- */
- public static IDebugTarget newDebugTarget( final ILaunch launch, final IProject project, final ICDITarget cdiTarget, final String name, final IProcess debuggeeProcess, final IBinaryObject file, final boolean allowTerminate, final boolean allowDisconnect, final boolean stopInMain, final boolean resumeTarget ) throws DebugException {
- final IDebugTarget[] target = new IDebugTarget[1];
- IWorkspaceRunnable r = new IWorkspaceRunnable() {
-
- public void run( IProgressMonitor m ) throws CoreException {
- String stopSymbol = null;
- if ( stopInMain )
- stopSymbol = launch.getLaunchConfiguration().getAttribute( ICDTLaunchConfigurationConstants.ATTR_DEBUGGER_STOP_AT_MAIN_SYMBOL, ICDTLaunchConfigurationConstants.DEBUGGER_STOP_AT_MAIN_SYMBOL_DEFAULT );
- target[0] = new CDebugTarget( launch, project, cdiTarget, name, debuggeeProcess, file, allowTerminate, allowDisconnect );
- ((CDebugTarget)target[0]).start( stopSymbol, resumeTarget );
- }
- };
- try {
- ResourcesPlugin.getWorkspace().run( r, null );
- }
- catch( CoreException e ) {
- CDebugCorePlugin.log( e );
- throw new DebugException( e.getStatus() );
- }
- return target[0];
- }
-
- /**
- * Creates and returns a debug target for the given CDI target, with the specified name, and associates it with the given process for console I/O. The debug
- * target is added to the given launch.
- *
- * @param launch the launch the new debug target will be contained in
- * @param project the project to use to persist breakpoints.
- * @param cdiTarget the CDI target to create a debug target for
- * @param name the name to associate with this target, which will be returned from <code>IDebugTarget.getName</code>.
- * @param debuggeeProcess the process to associate with the debug target, which will be returned from <code>IDebugTarget.getProcess</code>
- * @param file the executable to debug.
- * @param allowTerminate allow terminate().
- * @param allowDisconnect allow disconnect().
- * @param resumeTarget resume target.
- * @return a debug target
- * @throws DebugException
- */
- public static IDebugTarget newDebugTarget( ILaunch launch, IProject project, ICDITarget cdiTarget, final String name, IProcess debuggeeProcess, IBinaryObject file, boolean allowTerminate, boolean allowDisconnect, boolean resumeTarget ) throws DebugException {
- return newDebugTarget( launch, project, cdiTarget, name, debuggeeProcess, file, allowTerminate, allowDisconnect, null, resumeTarget );
- }
-
- /**
- * Creates and returns a line breakpoint for the source defined by the given source handle, at the given line number. The marker associated with the
- * breakpoint will be created on the specified resource.
- *
- * @param sourceHandle
- * the handle to the breakpoint source
- * @param resource
- * the resource on which to create the associated breakpoint marker
- * @param lineNumber
- * the line number on which the breakpoint is set - line numbers are 1 based, associated with the source file in which the breakpoint is set
- * @param enabled
- * whether to enable or disable this breakpoint
- * @param ignoreCount
- * the number of times this breakpoint will be ignored
- * @param condition
- * the breakpoint condition
- * @param register
- * whether to add this breakpoint to the breakpoint manager
- * @return a line breakpoint
- * @throws CoreException
- * if this method fails. Reasons include:
- * <ul>
- * <li>Failure creating underlying marker. The exception's status contains the underlying exception responsible for the failure.</li>
- * </ul>
- */
- public static ICLineBreakpoint createLineBreakpoint( String sourceHandle, IResource resource, int lineNumber, boolean enabled, int ignoreCount, String condition, boolean register ) throws CoreException {
- HashMap attributes = new HashMap( 10 );
- attributes.put( IBreakpoint.ID, getPluginIdentifier() );
- attributes.put( IMarker.LINE_NUMBER, new Integer( lineNumber ) );
- attributes.put( IBreakpoint.ENABLED, Boolean.valueOf( enabled ) );
- attributes.put( ICBreakpoint.IGNORE_COUNT, new Integer( ignoreCount ) );
- attributes.put( ICBreakpoint.CONDITION, condition );
- attributes.put( ICBreakpoint.SOURCE_HANDLE, sourceHandle );
- return new CLineBreakpoint( resource, attributes, register );
- }
-
- /**
- * Creates and returns an address breakpoint for the source defined by the
- * given source handle, at the given address. The marker associated with the
- * breakpoint will be created on the specified resource.
- *
- * @param module the module name the breakpoint is set in
- * @param sourceHandle the handle to the breakpoint source
- * @param resource the resource on which to create the associated breakpoint marker
- * @param address the address on which the breakpoint is set
- * @param enabled whether to enable or disable this breakpoint
- * @param ignoreCount the number of times this breakpoint will be ignored
- * @param condition the breakpoint condition
- * @param register whether to add this breakpoint to the breakpoint manager
- * @return an address breakpoint
- * @throws CoreException if this method fails. Reasons include:
- * <ul>
- * <li>Failure creating underlying marker. The exception's
- * status contains the underlying exception responsible for the
- * failure.</li>
- * </ul>
- */
- public static ICAddressBreakpoint createAddressBreakpoint( String module, String sourceHandle, IResource resource, IAddress address, boolean enabled, int ignoreCount, String condition, boolean register ) throws CoreException {
- return createAddressBreakpoint( module, sourceHandle, resource, -1, address, enabled, ignoreCount, condition, register );
- }
-
- /**
- * Creates and returns an address breakpoint for the source defined by the
- * given source handle, at the given address. The marker associated with the
- * breakpoint will be created on the specified resource.
- *
- * @param module the module name the breakpoint is set in
- * @param sourceHandle the handle to the breakpoint source
- * @param resource the resource on which to create the associated breakpoint marker
- * @param lineNumber the line number in the source file
- * @param address the address on which the breakpoint is set
- * @param enabled whether to enable or disable this breakpoint
- * @param ignoreCount the number of times this breakpoint will be ignored
- * @param condition the breakpoint condition
- * @param register whether to add this breakpoint to the breakpoint manager
- * @return an address breakpoint
- * @throws CoreException if this method fails. Reasons include:
- * <ul>
- * <li>Failure creating underlying marker. The exception's
- * status contains the underlying exception responsible for the
- * failure.</li>
- * </ul>
- */
- public static ICAddressBreakpoint createAddressBreakpoint( String module, String sourceHandle, IResource resource, int lineNumber, IAddress address, boolean enabled, int ignoreCount, String condition, boolean register ) throws CoreException {
- HashMap attributes = new HashMap( 10 );
- attributes.put( IBreakpoint.ID, getPluginIdentifier() );
- attributes.put( IMarker.CHAR_START, new Integer( -1 ) );
- attributes.put( IMarker.CHAR_END, new Integer( -1 ) );
- attributes.put( IMarker.LINE_NUMBER, new Integer( lineNumber ) );
- attributes.put( ICLineBreakpoint.ADDRESS, address.toHexAddressString() );
- attributes.put( IBreakpoint.ENABLED, Boolean.valueOf( enabled ) );
- attributes.put( ICBreakpoint.IGNORE_COUNT, new Integer( ignoreCount ) );
- attributes.put( ICBreakpoint.CONDITION, condition );
- attributes.put( ICBreakpoint.SOURCE_HANDLE, sourceHandle );
- attributes.put( ICBreakpoint.MODULE, module );
- return new CAddressBreakpoint( resource, attributes, register );
- }
-
- /**
- * Creates and returns a watchpoint for the source defined by the given
- * source handle, at the given expression. The marker associated with the
- * watchpoint will be created on the specified resource.
- *
- * @param sourceHandle the handle to the watchpoint source
- * @param resource the resource on which to create the associated watchpoint marker
- * @param writeAccess whether this is write watchpoint
- * @param readAccess whether this is read watchpoint
- * @param expression the expression on which the watchpoint is set
- * @param enabled whether to enable or disable this breakpoint
- * @param ignoreCount the number of times this breakpoint will be ignored
- * @param condition the breakpoint condition
- * @param register whether to add this breakpoint to the breakpoint manager
- * @return a watchpoint
- * @throws CoreException if this method fails. Reasons include:
- * <ul>
- * <li>Failure creating underlying marker. The exception's
- * status contains the underlying exception responsible for the
- * failure.</li>
- * </ul>
- */
- public static ICWatchpoint createWatchpoint( String sourceHandle, IResource resource, boolean writeAccess, boolean readAccess, String expression, boolean enabled, int ignoreCount, String condition, boolean register ) throws CoreException {
- HashMap attributes = new HashMap( 10 );
- attributes.put( IBreakpoint.ID, getPluginIdentifier() );
- attributes.put( IBreakpoint.ENABLED, Boolean.valueOf( enabled ) );
- attributes.put( ICBreakpoint.IGNORE_COUNT, new Integer( ignoreCount ) );
- attributes.put( ICBreakpoint.CONDITION, condition );
- attributes.put( ICBreakpoint.SOURCE_HANDLE, sourceHandle );
- attributes.put( ICWatchpoint.EXPRESSION, expression );
- attributes.put( ICWatchpoint.READ, Boolean.valueOf( readAccess ) );
- attributes.put( ICWatchpoint.WRITE, Boolean.valueOf( writeAccess ) );
- return new CWatchpoint( resource, attributes, register );
- }
-
- /**
- * Creates and returns a watchpoint for the source defined by the given
- * source handle, at the given expression. The marker associated with the
- * watchpoint will be created on the specified resource.
- *
- * @param sourceHandle the handle to the watchpoint source
- * @param resource the resource on which to create the associated watchpoint marker
- * @param charStart the first character index associated with the watchpoint, or
- * -1 if unspecified, in the source file in which the watchpoint
- * is set
- * @param charEnd the last character index associated with the watchpoint, or -1
- * if unspecified, in the source file in which the watchpoint is
- * set
- * @param lineNumber the lineNumber on which the watchpoint is set, or -1 if
- * unspecified - line numbers are 1 based, associated with the
- * source file in which the watchpoint is set
- * @param writeAccess whether this is write watchpoint
- * @param readAccess whether this is read watchpoint
- * @param expression the expression on which the watchpoint is set
- * @param enabled whether to enable or disable this breakpoint
- * @param ignoreCount the number of times this breakpoint will be ignored
- * @param condition the breakpoint condition
- * @param register whether to add this breakpoint to the breakpoint manager
- * @return a watchpoint
- * @throws CoreException if this method fails. Reasons include:
- * <ul>
- * <li>Failure creating underlying marker. The exception's
- * status contains the underlying exception responsible for the
- * failure.</li>
- * </ul>
- */
- public static ICWatchpoint createWatchpoint( String sourceHandle, IResource resource, int charStart, int charEnd, int lineNumber, boolean writeAccess, boolean readAccess, String expression, boolean enabled, int ignoreCount, String condition, boolean register ) throws CoreException {
- HashMap attributes = new HashMap( 10 );
- attributes.put( IBreakpoint.ID, getPluginIdentifier() );
- attributes.put( IMarker.CHAR_START, new Integer( charStart ) );
- attributes.put( IMarker.CHAR_END, new Integer( charEnd ) );
- attributes.put( IMarker.LINE_NUMBER, new Integer( lineNumber ) );
- attributes.put( IBreakpoint.ENABLED, Boolean.valueOf( enabled ) );
- attributes.put( ICBreakpoint.IGNORE_COUNT, new Integer( ignoreCount ) );
- attributes.put( ICBreakpoint.CONDITION, condition );
- attributes.put( ICBreakpoint.SOURCE_HANDLE, sourceHandle );
- attributes.put( ICWatchpoint.EXPRESSION, expression );
- attributes.put( ICWatchpoint.READ, Boolean.valueOf( readAccess ) );
- attributes.put( ICWatchpoint.WRITE, Boolean.valueOf( writeAccess ) );
- return new CWatchpoint( resource, attributes, register );
- }
-
- /**
- * Creates and returns a breakpoint for the function defined by the given
- * name. The marker associated with the breakpoint will be created on the
- * specified resource.
- *
- * @param sourceHandle the handle to the breakpoint source
- * @param resource the resource on which to create the associated breakpoint marker
- * @param function the name of the function this breakpoint suspends execution in
- * @param charStart the first character index associated with the breakpoint, or
- * -1 if unspecified, in the source file in which the breakpoint
- * is set
- * @param charEnd the last character index associated with the breakpoint, or -1
- * if unspecified, in the source file in which the breakpoint is
- * set
- * @param lineNumber the lineNumber on which the breakpoint is set, or -1 if
- * unspecified - line numbers are 1 based, associated with the
- * source file in which the breakpoint is set
- * @param enabled whether to enable or disable this breakpoint
- * @param ignoreCount the number of times this breakpoint will be ignored
- * @param condition the breakpoint condition
- * @param register whether to add this breakpoint to the breakpoint manager
- * @return an address breakpoint
- * @throws CoreException if this method fails. Reasons include:
- * <ul>
- * <li>Failure creating underlying marker. The exception's
- * status contains the underlying exception responsible for the
- * failure.</li>
- * </ul>
- */
- public static ICFunctionBreakpoint createFunctionBreakpoint( String sourceHandle, IResource resource, String function, int charStart, int charEnd, int lineNumber, boolean enabled, int ignoreCount, String condition, boolean register ) throws CoreException {
- HashMap attributes = new HashMap( 10 );
- attributes.put( IBreakpoint.ID, getPluginIdentifier() );
- attributes.put( IMarker.CHAR_START, new Integer( charStart ) );
- attributes.put( IMarker.CHAR_END, new Integer( charEnd ) );
- attributes.put( IMarker.LINE_NUMBER, new Integer( lineNumber ) );
- attributes.put( ICLineBreakpoint.FUNCTION, function );
- attributes.put( IBreakpoint.ENABLED, Boolean.valueOf( enabled ) );
- attributes.put( ICBreakpoint.IGNORE_COUNT, new Integer( ignoreCount ) );
- attributes.put( ICBreakpoint.CONDITION, condition );
- attributes.put( ICBreakpoint.SOURCE_HANDLE, sourceHandle );
- return new CFunctionBreakpoint( resource, attributes, register );
- }
-
- /**
- * Returns the line breakpoint that is already registered with the
- * breakpoint manager for a source with the given handle and the given
- * resource at the given line number.
- *
- * @param sourceHandle the source handle
- * @param resource the breakpoint resource
- * @param lineNumber the line number
- * @return the line breakpoint that is already registered with the
- * breakpoint manager or <code>null</code> if no such breakpoint
- * is registered
- * @exception CoreException if unable to retrieve the associated marker attributes (line number).
- */
- public static ICLineBreakpoint lineBreakpointExists( String sourceHandle, IResource resource, int lineNumber ) throws CoreException {
- String modelId = getPluginIdentifier();
- IBreakpointManager manager = DebugPlugin.getDefault().getBreakpointManager();
- IBreakpoint[] breakpoints = manager.getBreakpoints( modelId );
- for( int i = 0; i < breakpoints.length; i++ ) {
- if ( !(breakpoints[i] instanceof ICLineBreakpoint) ) {
- continue;
- }
- ICLineBreakpoint breakpoint = (ICLineBreakpoint)breakpoints[i];
- if ( sameSourceHandle( sourceHandle, breakpoint.getSourceHandle() ) ) {
- if ( breakpoint.getMarker().getResource().equals( resource ) ) {
- if ( breakpoint.getLineNumber() == lineNumber ) {
- return breakpoint;
- }
- }
- }
- }
- return null;
- }
-
- /**
- * Returns the watchpoint that is already registered with the breakpoint
- * manager for a source with the given handle and the given resource at the
- * given expression.
- *
- * @param sourceHandle the source handle
- * @param resource the breakpoint resource
- * @param expression the expression
- * @return the watchpoint that is already registered with the breakpoint
- * manager or <code>null</code> if no such watchpoint is
- * registered
- * @exception CoreException if unable to retrieve the associated marker attributes (line number).
- */
- public static ICWatchpoint watchpointExists( String sourceHandle, IResource resource, String expression ) throws CoreException {
- String modelId = getPluginIdentifier();
- String markerType = CWatchpoint.getMarkerType();
- IBreakpointManager manager = DebugPlugin.getDefault().getBreakpointManager();
- IBreakpoint[] breakpoints = manager.getBreakpoints( modelId );
- for( int i = 0; i < breakpoints.length; i++ ) {
- if ( !(breakpoints[i] instanceof ICWatchpoint) ) {
- continue;
- }
- ICWatchpoint breakpoint = (ICWatchpoint)breakpoints[i];
- if ( breakpoint.getMarker().getType().equals( markerType ) ) {
- if ( sameSourceHandle( sourceHandle, breakpoint.getSourceHandle() ) ) {
- if ( breakpoint.getMarker().getResource().equals( resource ) ) {
- if ( breakpoint.getExpression().equals( expression ) ) {
- return breakpoint;
- }
- }
- }
- }
- }
- return null;
- }
-
- /**
- * Returns the function breakpoint that is already registered with the
- * breakpoint manager for a source with the given handle and the given
- * resource with the given function name.
- *
- * @param sourceHandle the source handle
- * @param resource the breakpoint resource
- * @param function the fully qualified function name
- * @return the breakpoint that is already registered with the breakpoint
- * manager or <code>null</code> if no such breakpoint is
- * registered
- * @exception CoreException if unable to retrieve the associated marker attributes (line number).
- */
- public static ICFunctionBreakpoint functionBreakpointExists( String sourceHandle, IResource resource, String function ) throws CoreException {
- String modelId = getPluginIdentifier();
- String markerType = CFunctionBreakpoint.getMarkerType();
- IBreakpointManager manager = DebugPlugin.getDefault().getBreakpointManager();
- IBreakpoint[] breakpoints = manager.getBreakpoints( modelId );
- for( int i = 0; i < breakpoints.length; i++ ) {
- if ( !(breakpoints[i] instanceof ICFunctionBreakpoint) ) {
- continue;
- }
- ICFunctionBreakpoint breakpoint = (ICFunctionBreakpoint)breakpoints[i];
- if ( breakpoint.getMarker().getType().equals( markerType ) ) {
- if ( sameSourceHandle( sourceHandle, breakpoint.getSourceHandle() ) ) {
- if ( breakpoint.getMarker().getResource().equals( resource ) ) {
- if ( breakpoint.getFunction() != null && breakpoint.getFunction().equals( function ) ) {
- return breakpoint;
- }
- }
- }
- }
- }
- return null;
- }
-
- /**
- * @deprecated
- */
- public static IDebugTarget newDebugTarget( ILaunch launch, ICDITarget target, String name, IProcess iprocess, IProcess debuggerProcess, IFile file, boolean allowTerminate, boolean allowDisconnect, boolean stopInMain ) throws CoreException {
- IBinaryExecutable exeFile = getBinary( file );
- String stopSymbol = null;
- if ( stopInMain )
- stopSymbol = launch.getLaunchConfiguration().getAttribute( ICDTLaunchConfigurationConstants.ATTR_DEBUGGER_STOP_AT_MAIN_SYMBOL, ICDTLaunchConfigurationConstants.DEBUGGER_STOP_AT_MAIN_SYMBOL_DEFAULT );
- return newDebugTarget( launch, file.getProject(), target, name, iprocess, exeFile, allowTerminate, allowDisconnect, stopSymbol, true );
- }
-
- /**
- * @deprecated
- */
- public static IDebugTarget newAttachDebugTarget( ILaunch launch, ICDITarget target, String name, IProcess debuggerProcess, IFile file ) throws CoreException {
- IBinaryExecutable exeFile = getBinary( file );
- return newDebugTarget( launch, file.getProject(), target, name, null, exeFile, true, true, false );
- }
-
- /**
- * @deprecated
- */
- public static IDebugTarget newCoreFileDebugTarget( final ILaunch launch, final ICDITarget target, final String name, final IProcess debuggerProcess, final IFile file ) throws CoreException {
- IBinaryExecutable exeFile = getBinary( file );
- return newDebugTarget( launch, file.getProject(), target, name, null, exeFile, true, false, false );
- }
-
- private static IBinaryExecutable getBinary( IFile file ) throws CoreException {
- IProject project = file.getProject();
- ICExtensionReference[] binaryParsersExt = CCorePlugin.getDefault().getBinaryParserExtensions( project );
- for( int i = 0; i < binaryParsersExt.length; i++ ) {
- IBinaryParser parser = (IBinaryParser)binaryParsersExt[i].createExtension();
- try {
- IBinaryFile exe = parser.getBinary( file.getLocation() );
- if ( exe instanceof IBinaryExecutable ) {
- return (IBinaryExecutable)exe;
- }
- }
- catch( IOException e ) {
- }
- }
- throw new CoreException( new Status( IStatus.ERROR, CDebugCorePlugin.getUniqueIdentifier(), -1, DebugCoreMessages.getString( "CDIDebugModel.0" ), null ) ); //$NON-NLS-1$
- }
-
- private static boolean sameSourceHandle( String handle1, String handle2 ) {
- if ( handle1 == null || handle2 == null )
- return false;
- IPath path1 = new Path( handle1 );
- IPath path2 = new Path( handle2 );
- if ( path1.isValidPath( handle1 ) && path2.isValidPath( handle2 ) ) {
- return path1.equals( path2 );
- }
- // If handles are not file names ????
- return handle1.equals( handle2 );
- }
-}
diff --git a/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/core/CDebugCorePlugin.java b/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/core/CDebugCorePlugin.java
deleted file mode 100644
index d0b6f77acb7..00000000000
--- a/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/core/CDebugCorePlugin.java
+++ /dev/null
@@ -1,396 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.core;
-
-import java.util.ArrayList;
-import java.util.Arrays;
-import java.util.HashMap;
-import java.util.HashSet;
-import java.util.Iterator;
-import java.util.List;
-import org.eclipse.cdt.debug.core.sourcelookup.ICSourceLocation;
-import org.eclipse.cdt.debug.internal.core.DebugConfiguration;
-import org.eclipse.cdt.debug.internal.core.ICDebugInternalConstants;
-import org.eclipse.cdt.debug.internal.core.ListenerList;
-import org.eclipse.cdt.debug.internal.core.SessionManager;
-import org.eclipse.cdt.debug.internal.core.breakpoints.CBreakpoint;
-import org.eclipse.cdt.debug.internal.core.sourcelookup.CSourceLookupDirector;
-import org.eclipse.cdt.debug.internal.core.sourcelookup.CommonSourceLookupDirector;
-import org.eclipse.cdt.debug.internal.core.sourcelookup.SourceUtils;
-import org.eclipse.core.resources.IWorkspace;
-import org.eclipse.core.resources.ResourcesPlugin;
-import org.eclipse.core.runtime.CoreException;
-import org.eclipse.core.runtime.IConfigurationElement;
-import org.eclipse.core.runtime.IExtensionPoint;
-import org.eclipse.core.runtime.IStatus;
-import org.eclipse.core.runtime.Platform;
-import org.eclipse.core.runtime.Plugin;
-import org.eclipse.core.runtime.Status;
-import org.eclipse.debug.core.DebugException;
-import org.eclipse.debug.core.DebugPlugin;
-import org.eclipse.debug.core.IBreakpointManager;
-import org.eclipse.debug.core.model.IBreakpoint;
-import org.osgi.framework.BundleContext;
-
-/**
- * The plugin class for C/C++ debug core.
- */
-public class CDebugCorePlugin extends Plugin {
-
- /**
- * The plug-in identifier (value <code>"org.eclipse.cdt.debug.core"</code>).
- */
- public static final String PLUGIN_ID = "org.eclipse.cdt.debug.core" ; //$NON-NLS-1$
-
- /**
- * Status code indicating an unexpected internal error.
- */
- public static final int INTERNAL_ERROR = 1000;
-
- /**
- * The shared instance.
- */
- private static CDebugCorePlugin plugin;
-
- private HashMap fDebugConfigurations;
-
- private HashSet fActiveDebugConfigurations;
-
- /**
- * Breakpoint listener list.
- */
- private ListenerList fBreakpointListeners;
-
- /**
- * Dummy source lookup director needed to manage common source containers.
- */
- private CommonSourceLookupDirector fCommonSourceLookupDirector;
-
- private SessionManager fSessionManager = null;
-
- /**
- * The constructor.
- */
- public CDebugCorePlugin() {
- super();
- plugin = this;
- }
-
- /**
- * Returns the shared instance.
- *
- * @return the shared instance
- */
- public static CDebugCorePlugin getDefault() {
- return plugin;
- }
-
- /**
- * Returns the workspace instance.
- *
- * @return the workspace instance
- */
- public static IWorkspace getWorkspace() {
- return ResourcesPlugin.getWorkspace();
- }
-
- /**
- * Convenience method which returns the unique identifier of this plugin.
- *
- * @return the unique identifier of this plugin
- */
- public static String getUniqueIdentifier() {
- if ( getDefault() == null ) {
- // If the default instance is not yet initialized,
- // return a static identifier. This identifier must
- // match the plugin id defined in plugin.xml
- return PLUGIN_ID;
- }
- return getDefault().getBundle().getSymbolicName();
- }
-
- /**
- * Logs the specified throwable with this plug-in's log.
- *
- * @param t throwable to log
- */
- public static void log( Throwable t ) {
- Throwable top = t;
- if ( t instanceof DebugException ) {
- DebugException de = (DebugException)t;
- IStatus status = de.getStatus();
- if ( status.getException() != null ) {
- top = status.getException();
- }
- }
- // this message is intentionally not internationalized, as an exception may
- // be due to the resource bundle itself
- log( new Status( IStatus.ERROR, getUniqueIdentifier(), INTERNAL_ERROR, "Internal error logged from CDI Debug: ", top ) ); //$NON-NLS-1$
- }
-
- /**
- * Logs the specified status with this plug-in's log.
- *
- * @param status status to log
- */
- public static void log( IStatus status ) {
- getDefault().getLog().log( status );
- }
-
- /**
- * Logs the specified message with this plug-in's log.
- *
- * @param status status to log
- */
- public static void log( String message ) {
- getDefault().getLog().log( new Status( IStatus.ERROR, CDIDebugModel.getPluginIdentifier(), INTERNAL_ERROR, message, null ) );
- }
-
- private void initializeDebugConfiguration() {
- IExtensionPoint extensionPoint = Platform.getExtensionRegistry().getExtensionPoint( getUniqueIdentifier(), "CDebugger" ); //$NON-NLS-1$
- IConfigurationElement[] infos = extensionPoint.getConfigurationElements();
- fDebugConfigurations = new HashMap( infos.length );
- for( int i = 0; i < infos.length; i++ ) {
- IConfigurationElement configurationElement = infos[i];
- DebugConfiguration configType = new DebugConfiguration( configurationElement );
- fDebugConfigurations.put( configType.getID(), configType );
- }
- }
-
- private void initializeActiveDebugConfigurations() {
- fActiveDebugConfigurations = new HashSet( getDebugConfigurations().length );
- fActiveDebugConfigurations.addAll( fDebugConfigurations.keySet() );
- String[] filteredTypes = CDebugCorePlugin.getDefault().getPluginPreferences().getString( ICDebugConstants.PREF_FILTERED_DEBUGGERS ).split( "\\," ); //$NON-NLS-1$
- fActiveDebugConfigurations.removeAll( Arrays.asList( filteredTypes ) );
- }
-
- public ICDebugConfiguration[] getDebugConfigurations() {
- if ( fDebugConfigurations == null ) {
- initializeDebugConfiguration();
- }
- return (ICDebugConfiguration[])fDebugConfigurations.values().toArray( new ICDebugConfiguration[0] );
- }
-
- public ICDebugConfiguration[] getActiveDebugConfigurations() {
- if ( fDebugConfigurations == null ) {
- initializeDebugConfiguration();
- }
- if ( fActiveDebugConfigurations == null ) {
- initializeActiveDebugConfigurations();
- }
- ArrayList list = new ArrayList( fActiveDebugConfigurations.size() );
- Iterator it = fActiveDebugConfigurations.iterator();
- while( it.hasNext() ) {
- Object o = fDebugConfigurations.get( it.next() );
- if ( o != null )
- list.add( o );
- }
- return (ICDebugConfiguration[])list.toArray( new ICDebugConfiguration[list.size()] );
- }
-
- public ICDebugConfiguration[] getDefaultActiveDebugConfigurations() {
- List filtered = Arrays.asList( CDebugCorePlugin.getDefault().getPluginPreferences().getDefaultString( ICDebugConstants.PREF_FILTERED_DEBUGGERS ).split( "\\," ) ); //$NON-NLS-1$
- HashMap all = (HashMap)fDebugConfigurations.clone();
- all.keySet().removeAll( filtered );
- return (ICDebugConfiguration[])all.values().toArray( new ICDebugConfiguration[all.size()] );
- }
-
- public void saveFilteredDebugConfigurations( ICDebugConfiguration[] configurations ) {
- disposeActiveDebugConfigurations();
- StringBuffer sb = new StringBuffer();
- for ( int i = 0; i < configurations.length; ++i ) {
- sb.append( configurations[i].getID() ).append( ',' );
- }
- CDebugCorePlugin.getDefault().getPluginPreferences().setValue( ICDebugConstants.PREF_FILTERED_DEBUGGERS, sb.toString() );
- CDebugCorePlugin.getDefault().savePluginPreferences();
- }
-
- public void saveDefaultDebugConfiguration( String id ) {
- CDebugCorePlugin.getDefault().getPluginPreferences().setValue( ICDebugConstants.PREF_DEFAULT_DEBUGGER_TYPE, ( id != null ) ? id : "" ); //$NON-NLS-1$
- }
-
- public ICDebugConfiguration getDefaultDebugConfiguration() {
- ICDebugConfiguration result = null;
- try {
- result = getDebugConfiguration( CDebugCorePlugin.getDefault().getPluginPreferences().getString( ICDebugConstants.PREF_DEFAULT_DEBUGGER_TYPE ) );
- }
- catch( CoreException e ) {
- }
- return result;
- }
-
- public ICDebugConfiguration getDefaultDefaultDebugConfiguration() {
- ICDebugConfiguration result = null;
- try {
- result = getDebugConfiguration( CDebugCorePlugin.getDefault().getPluginPreferences().getDefaultString( ICDebugConstants.PREF_DEFAULT_DEBUGGER_TYPE ) );
- }
- catch( CoreException e ) {
- }
- if ( result == null ) {
- }
- return result;
- }
-
- public boolean isDefaultDebugConfiguration( String id ) {
- return id.compareTo( CDebugCorePlugin.getDefault().getPluginPreferences().getString( ICDebugConstants.PREF_DEFAULT_DEBUGGER_TYPE ) ) == 0;
- }
-
- public ICDebugConfiguration getDebugConfiguration( String id ) throws CoreException {
- if ( fDebugConfigurations == null ) {
- initializeDebugConfiguration();
- }
- ICDebugConfiguration dbgCfg = (ICDebugConfiguration)fDebugConfigurations.get( id );
- if ( dbgCfg == null ) {
- IStatus status = new Status( IStatus.ERROR, getUniqueIdentifier(), 100, DebugCoreMessages.getString( "CDebugCorePlugin.0" ), null ); //$NON-NLS-1$
- throw new CoreException( status );
- }
- return dbgCfg;
- }
-
- protected void resetBreakpointsInstallCount() {
- IBreakpointManager bm = DebugPlugin.getDefault().getBreakpointManager();
- IBreakpoint[] breakpoints = bm.getBreakpoints( getUniqueIdentifier() );
- for( int i = 0; i < breakpoints.length; ++i ) {
- if ( breakpoints[i] instanceof CBreakpoint ) {
- try {
- ((CBreakpoint)breakpoints[i]).resetInstallCount();
- }
- catch( CoreException e ) {
- log( e.getStatus() );
- }
- }
- }
- }
-
- protected SessionManager getSessionManager() {
- return fSessionManager;
- }
-
- protected void setSessionManager( SessionManager sm ) {
- if ( fSessionManager != null )
- fSessionManager.dispose();
- fSessionManager = sm;
- }
-
- public void saveCommonSourceLocations( ICSourceLocation[] locations ) {
- CDebugCorePlugin.getDefault().getPluginPreferences().setValue( ICDebugConstants.PREF_SOURCE_LOCATIONS, SourceUtils.getCommonSourceLocationsMemento( locations ) );
- }
-
- public ICSourceLocation[] getCommonSourceLocations() {
- return SourceUtils.getCommonSourceLocationsFromMemento( CDebugCorePlugin.getDefault().getPluginPreferences().getString( ICDebugConstants.PREF_SOURCE_LOCATIONS ) );
- }
-
- /**
- * Adds the given breakpoint listener to the debug model.
- *
- * @param listener breakpoint listener
- */
- public void addCBreakpointListener( ICBreakpointListener listener ) {
- fBreakpointListeners.add( listener );
- }
-
- /**
- * Removes the given breakpoint listener from the debug model.
- *
- * @param listener breakpoint listener
- */
- public void removeCBreakpointListener( ICBreakpointListener listener ) {
- fBreakpointListeners.remove( listener );
- }
-
- /**
- * Returns the list of breakpoint listeners registered with this plugin.
- *
- * @return the list of breakpoint listeners registered with this plugin
- */
- public Object[] getCBreakpointListeners() {
- return fBreakpointListeners.getListeners();
- }
-
- private void createBreakpointListenersList() {
- fBreakpointListeners = new ListenerList( 1 );
- }
-
- private void disposeBreakpointListenersList() {
- fBreakpointListeners.removeAll();
- fBreakpointListeners = null;
- }
-
- /* (non-Javadoc)
- * @see org.osgi.framework.BundleActivator#start(org.osgi.framework.BundleContext)
- */
- public void start( BundleContext context ) throws Exception {
- super.start( context );
- initializeCommonSourceLookupDirector();
- createBreakpointListenersList();
- resetBreakpointsInstallCount();
- setSessionManager( new SessionManager() );
- }
-
- /* (non-Javadoc)
- * @see org.osgi.framework.BundleActivator#stop(org.osgi.framework.BundleContext)
- */
- public void stop( BundleContext context ) throws Exception {
- setSessionManager( null );
- disposeBreakpointListenersList();
- resetBreakpointsInstallCount();
- disposeCommonSourceLookupDirector();
- disposeDebugConfigurations();
- super.stop( context );
- }
-
- private void initializeCommonSourceLookupDirector() {
- if ( fCommonSourceLookupDirector == null ) {
- fCommonSourceLookupDirector = new CommonSourceLookupDirector();
- String newMemento = CDebugCorePlugin.getDefault().getPluginPreferences().getString( ICDebugInternalConstants.PREF_COMMON_SOURCE_CONTAINERS );
- if ( newMemento.length() == 0 ) {
- // Convert source locations to source containers
- convertSourceLocations( fCommonSourceLookupDirector );
- }
- else {
- try {
- fCommonSourceLookupDirector.initializeFromMemento( newMemento );
- }
- catch( CoreException e ) {
- log( e.getStatus() );
- }
- }
- }
- }
-
- private void disposeCommonSourceLookupDirector() {
- if ( fCommonSourceLookupDirector != null )
- fCommonSourceLookupDirector.dispose();
- }
-
- public CSourceLookupDirector getCommonSourceLookupDirector() {
- return fCommonSourceLookupDirector;
- }
-
- private void convertSourceLocations( CommonSourceLookupDirector director ) {
- director.setSourceContainers( SourceUtils.convertSourceLocations( getCommonSourceLocations() ) );
- }
-
- private void disposeActiveDebugConfigurations() {
- if ( fActiveDebugConfigurations != null ) {
- fActiveDebugConfigurations.clear();
- fActiveDebugConfigurations = null;
- }
- }
-
- private void disposeDebugConfigurations() {
- disposeActiveDebugConfigurations();
- if ( fDebugConfigurations != null ) {
- fDebugConfigurations.clear();
- fDebugConfigurations = null;
- }
- }
-}
diff --git a/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/core/CDebugUtils.java b/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/core/CDebugUtils.java
deleted file mode 100644
index 79ad5235177..00000000000
--- a/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/core/CDebugUtils.java
+++ /dev/null
@@ -1,418 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.core;
-
-import java.io.ByteArrayOutputStream;
-import java.io.IOException;
-import java.text.MessageFormat;
-import java.util.ArrayList;
-import java.util.Arrays;
-import java.util.Iterator;
-import java.util.List;
-import javax.xml.transform.OutputKeys;
-import javax.xml.transform.Transformer;
-import javax.xml.transform.TransformerException;
-import javax.xml.transform.TransformerFactory;
-import javax.xml.transform.dom.DOMSource;
-import javax.xml.transform.stream.StreamResult;
-import org.eclipse.cdt.debug.core.cdi.CDIException;
-import org.eclipse.cdt.debug.core.model.ICAddressBreakpoint;
-import org.eclipse.cdt.debug.core.model.ICBreakpoint;
-import org.eclipse.cdt.debug.core.model.ICFunctionBreakpoint;
-import org.eclipse.cdt.debug.core.model.ICLineBreakpoint;
-import org.eclipse.cdt.debug.core.model.ICValue;
-import org.eclipse.cdt.debug.core.model.ICWatchpoint;
-import org.eclipse.cdt.debug.internal.core.model.CFloatingPointValue;
-import org.eclipse.core.resources.IProject;
-import org.eclipse.core.runtime.CoreException;
-import org.eclipse.core.runtime.IPath;
-import org.eclipse.core.runtime.IStatus;
-import org.eclipse.core.runtime.Path;
-import org.eclipse.debug.core.DebugPlugin;
-import org.eclipse.debug.core.IStatusHandler;
-import org.eclipse.debug.core.model.IBreakpoint;
-import org.w3c.dom.Document;
-
-/**
- * Utility methods.
- */
-public class CDebugUtils {
-
- public static boolean question( IStatus status, Object source ) {
- Boolean result = Boolean.FALSE;
- IStatusHandler handler = DebugPlugin.getDefault().getStatusHandler( status );
- if ( handler != null ) {
- try {
- result = (Boolean)handler.handleStatus( status, source );
- }
- catch( CoreException e ) {
- }
- }
- return result.booleanValue();
- }
-
- public static void info( IStatus status, Object source ) {
- IStatusHandler handler = DebugPlugin.getDefault().getStatusHandler( status );
- if ( handler != null ) {
- try {
- handler.handleStatus( status, source );
- }
- catch( CoreException e ) {
- }
- }
- }
-
- public static void error( IStatus status, Object source ) {
- IStatusHandler handler = DebugPlugin.getDefault().getStatusHandler( status );
- if ( handler != null ) {
- try {
- handler.handleStatus( status, source );
- }
- catch( CoreException e ) {
- }
- }
- }
-
- public static char[] getByteText( byte b ) {
- return new char[]{ charFromByte( (byte)((b >>> 4) & 0x0f) ), charFromByte( (byte)(b & 0x0f) ) };
- }
-
- public static byte textToByte( char[] text ) {
- byte result = 0;
- if ( text.length == 2 ) {
- byte[] bytes = { charToByte( text[0] ), charToByte( text[1] ) };
- result = (byte)((bytes[0] << 4) + bytes[1]);
- }
- return result;
- }
-
- public static char charFromByte( byte value ) {
- if ( value >= 0x0 && value <= 0x9 )
- return (char)(value + '0');
- if ( value >= 0xa && value <= 0xf )
- return (char)(value - 0xa + 'a');
- return '0';
- }
-
- public static byte charToByte( char ch ) {
- if ( Character.isDigit( ch ) ) {
- return (byte)(ch - '0');
- }
- if ( ch >= 'a' && ch <= 'f' ) {
- return (byte)(0xa + ch - 'a');
- }
- if ( ch >= 'A' && ch <= 'F' ) {
- return (byte)(0xa + ch - 'A');
- }
- return 0;
- }
-
- public static char bytesToChar( byte[] bytes ) {
- try {
- return (char)Short.parseShort( new String( bytes ), 16 );
- }
- catch( RuntimeException e ) {
- }
- return 0;
- }
-
- public static byte toByte( char[] bytes, boolean le ) {
- if ( bytes.length != 2 )
- return 0;
- return (byte)Long.parseLong( bytesToString( bytes, le, true ), 16 );
- }
-
- public static short toUnsignedByte( char[] bytes, boolean le ) {
- if ( bytes.length != 2 )
- return 0;
- return (short)Long.parseLong( bytesToString( bytes, le, false ), 16 );
- }
-
- public static short toShort( char[] bytes, boolean le ) {
- if ( bytes.length != 4 )
- return 0;
- return (short)Long.parseLong( bytesToString( bytes, le, true ), 16 );
- }
-
- public static int toUnsignedShort( char[] bytes, boolean le ) {
- if ( bytes.length != 4 )
- return 0;
- return (int)Long.parseLong( bytesToString( bytes, le, false ), 16 );
- }
-
- public static int toInt( char[] bytes, boolean le ) {
- if ( bytes.length != 8 )
- return 0;
- return (int)Long.parseLong( bytesToString( bytes, le, true ), 16 );
- }
-
- public static long toUnsignedInt( char[] bytes, boolean le ) {
- if ( bytes.length != 8 )
- return 0;
- return Long.parseLong( bytesToString( bytes, le, false ), 16 );
- }
-
- private static String bytesToString( char[] bytes, boolean le, boolean signed ) {
- char[] copy = new char[bytes.length];
- if ( le ) {
- for( int i = 0; i < bytes.length / 2; ++i ) {
- copy[2 * i] = bytes[bytes.length - 2 * i - 2];
- copy[2 * i + 1] = bytes[bytes.length - 2 * i - 1];
- }
- }
- else {
- System.arraycopy( bytes, 0, copy, 0, copy.length );
- }
- return new String( copy );
- }
-
- public static String prependString( String text, int length, char ch ) {
- StringBuffer sb = new StringBuffer( length );
- if ( text.length() > length ) {
- sb.append( text.substring( 0, length ) );
- }
- else {
- char[] prefix = new char[length - text.length()];
- Arrays.fill( prefix, ch );
- sb.append( prefix );
- sb.append( text );
- }
- return sb.toString();
- }
-
- public static boolean isReferencedProject( IProject parent, IProject project ) {
- if ( parent != null && parent.exists() ) {
- List projects = CDebugUtils.getReferencedProjects( project );
- Iterator it = projects.iterator();
- while( it.hasNext() ) {
- IProject prj = (IProject)it.next();
- if ( prj.exists() && (prj.equals( project )) )
- return true;
- }
- }
- return false;
- }
-
- /**
- * Serializes a XML document into a string - encoded in UTF8 format, with platform line separators.
- *
- * @param doc document to serialize
- * @return the document as a string
- */
- public static String serializeDocument( Document doc ) throws IOException, TransformerException {
- ByteArrayOutputStream s = new ByteArrayOutputStream();
- TransformerFactory factory = TransformerFactory.newInstance();
- Transformer transformer = factory.newTransformer();
- transformer.setOutputProperty( OutputKeys.METHOD, "xml" ); //$NON-NLS-1$
- transformer.setOutputProperty( OutputKeys.INDENT, "yes" ); //$NON-NLS-1$
- DOMSource source = new DOMSource( doc );
- StreamResult outputTarget = new StreamResult( s );
- transformer.transform( source, outputTarget );
- return s.toString( "UTF8" ); //$NON-NLS-1$
- }
-
- public static Number getFloatingPointValue( ICValue value ) {
- if ( value instanceof CFloatingPointValue ) {
- try {
- return ((CFloatingPointValue)value).getFloatingPointValue();
- }
- catch( CDIException e ) {
- }
- }
- return null;
- }
-
- public static boolean isNaN( Number value ) {
- if ( value instanceof Double ) {
- return ((Double)value).isNaN();
- }
- if ( value instanceof Float ) {
- return ((Float)value).isNaN();
- }
- return false;
- }
-
- public static boolean isPositiveInfinity( Number value ) {
- if ( value instanceof Double ) {
- return (((Double)value).isInfinite() && value.doubleValue() == Double.POSITIVE_INFINITY);
- }
- if ( value instanceof Float ) {
- return (((Float)value).isInfinite() && value.floatValue() == Float.POSITIVE_INFINITY);
- }
- return false;
- }
-
- public static boolean isNegativeInfinity( Number value ) {
- if ( value instanceof Double ) {
- return (((Double)value).isInfinite() && value.doubleValue() == Double.NEGATIVE_INFINITY);
- }
- if ( value instanceof Float ) {
- return (((Float)value).isInfinite() && value.floatValue() == Float.NEGATIVE_INFINITY);
- }
- return false;
- }
-
- public static List getReferencedProjects( IProject project ) {
- ArrayList list = new ArrayList( 10 );
- if ( project != null && project.exists() && project.isOpen() ) {
- IProject[] refs = new IProject[0];
- try {
- refs = project.getReferencedProjects();
- }
- catch( CoreException e ) {
- }
- for( int i = 0; i < refs.length; ++i ) {
- if ( !project.equals( refs[i] ) && refs[i] != null && refs[i].exists() && refs[i].isOpen() ) {
- list.add( refs[i] );
- getReferencedProjects( project, refs[i], list );
- }
- }
- }
- return list;
- }
-
- private static void getReferencedProjects( IProject root, IProject project, List list ) {
- if ( project != null && project.exists() && project.isOpen() ) {
- IProject[] refs = new IProject[0];
- try {
- refs = project.getReferencedProjects();
- }
- catch( CoreException e ) {
- }
- for( int i = 0; i < refs.length; ++i ) {
- if ( !list.contains( refs[i] ) && refs[i] != null && !refs[i].equals( root ) && refs[i].exists() && refs[i].isOpen() ) {
- list.add( refs[i] );
- getReferencedProjects( root, refs[i], list );
- }
- }
- }
- }
-
- public static String getBreakpointText( IBreakpoint breakpoint, boolean qualified ) throws CoreException {
- if ( breakpoint instanceof ICAddressBreakpoint ) {
- return getAddressBreakpointText( (ICAddressBreakpoint)breakpoint, qualified );
- }
- if ( breakpoint instanceof ICFunctionBreakpoint ) {
- return getFunctionBreakpointText( (ICFunctionBreakpoint)breakpoint, qualified );
- }
- if ( breakpoint instanceof ICLineBreakpoint ) {
- return getLineBreakpointText( (ICLineBreakpoint)breakpoint, qualified );
- }
- if ( breakpoint instanceof ICWatchpoint ) {
- return getWatchpointText( (ICWatchpoint)breakpoint, qualified );
- }
- return ""; //$NON-NLS-1$
- }
-
- protected static String getLineBreakpointText( ICLineBreakpoint breakpoint, boolean qualified ) throws CoreException {
- StringBuffer label = new StringBuffer();
- appendSourceName( breakpoint, label, qualified );
- appendLineNumber( breakpoint, label );
- appendIgnoreCount( breakpoint, label );
- appendCondition( breakpoint, label );
- return label.toString();
- }
-
- protected static String getWatchpointText( ICWatchpoint watchpoint, boolean qualified ) throws CoreException {
- StringBuffer label = new StringBuffer();
- appendSourceName( watchpoint, label, qualified );
- appendWatchExpression( watchpoint, label );
- appendIgnoreCount( watchpoint, label );
- appendCondition( watchpoint, label );
- return label.toString();
- }
-
- protected static String getAddressBreakpointText( ICAddressBreakpoint breakpoint, boolean qualified ) throws CoreException {
- StringBuffer label = new StringBuffer();
- appendSourceName( breakpoint, label, qualified );
- appendAddress( breakpoint, label );
- appendIgnoreCount( breakpoint, label );
- appendCondition( breakpoint, label );
- return label.toString();
- }
-
- protected static String getFunctionBreakpointText( ICFunctionBreakpoint breakpoint, boolean qualified ) throws CoreException {
- StringBuffer label = new StringBuffer();
- appendSourceName( breakpoint, label, qualified );
- appendFunction( breakpoint, label );
- appendIgnoreCount( breakpoint, label );
- appendCondition( breakpoint, label );
- return label.toString();
- }
-
- protected static StringBuffer appendSourceName( ICBreakpoint breakpoint, StringBuffer label, boolean qualified ) throws CoreException {
- String handle = breakpoint.getSourceHandle();
- if ( !isEmpty( handle ) ) {
- IPath path = new Path( handle );
- if ( path.isValidPath( handle ) ) {
- label.append( qualified ? path.toOSString() : path.lastSegment() );
- }
- }
- return label;
- }
-
- protected static StringBuffer appendLineNumber( ICLineBreakpoint breakpoint, StringBuffer label ) throws CoreException {
- int lineNumber = breakpoint.getLineNumber();
- if ( lineNumber > 0 ) {
- label.append( ' ' );
- label.append( MessageFormat.format( DebugCoreMessages.getString( "CDebugUtils.0" ), new String[]{ Integer.toString( lineNumber ) } ) ); //$NON-NLS-1$
- }
- return label;
- }
-
- protected static StringBuffer appendAddress( ICAddressBreakpoint breakpoint, StringBuffer label ) throws CoreException {
- try {
- label.append( ' ' );
- label.append( MessageFormat.format( DebugCoreMessages.getString( "CDebugUtils.1" ), new String[]{ breakpoint.getAddress() } ) ); //$NON-NLS-1$
- }
- catch( NumberFormatException e ) {
- }
- return label;
- }
-
- protected static StringBuffer appendFunction( ICFunctionBreakpoint breakpoint, StringBuffer label ) throws CoreException {
- String function = breakpoint.getFunction();
- if ( function != null && function.trim().length() > 0 ) {
- label.append( ' ' );
- label.append( MessageFormat.format( DebugCoreMessages.getString( "CDebugUtils.2" ), new String[]{ function.trim() } ) ); //$NON-NLS-1$
- }
- return label;
- }
-
- protected static StringBuffer appendIgnoreCount( ICBreakpoint breakpoint, StringBuffer label ) throws CoreException {
- int ignoreCount = breakpoint.getIgnoreCount();
- if ( ignoreCount > 0 ) {
- label.append( ' ' );
- label.append( MessageFormat.format( DebugCoreMessages.getString( "CDebugUtils.3" ), new String[]{ Integer.toString( ignoreCount ) } ) ); //$NON-NLS-1$
- }
- return label;
- }
-
- protected static void appendCondition( ICBreakpoint breakpoint, StringBuffer buffer ) throws CoreException {
- String condition = breakpoint.getCondition();
- if ( condition != null && condition.length() > 0 ) {
- buffer.append( ' ' );
- buffer.append( MessageFormat.format( DebugCoreMessages.getString( "CDebugUtils.4" ), new String[] { condition } ) ); //$NON-NLS-1$
- }
- }
-
- private static void appendWatchExpression( ICWatchpoint watchpoint, StringBuffer label ) throws CoreException {
- String expression = watchpoint.getExpression();
- if ( expression != null && expression.length() > 0 ) {
- label.append( ' ' );
- label.append( MessageFormat.format( DebugCoreMessages.getString( "CDebugUtils.5" ), new String[] { expression } ) ); //$NON-NLS-1$
- }
- }
-
- private static boolean isEmpty( String string ) {
- return ( string == null || string.trim().length() == 0 );
- }
-}
diff --git a/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/core/DebugCoreMessages.java b/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/core/DebugCoreMessages.java
deleted file mode 100644
index 43c04ad556e..00000000000
--- a/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/core/DebugCoreMessages.java
+++ /dev/null
@@ -1,33 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.core;
-
-import java.util.MissingResourceException;
-import java.util.ResourceBundle;
-
-public class DebugCoreMessages {
-
- private static final String BUNDLE_NAME = "org.eclipse.cdt.debug.core.DebugCoreMessages";//$NON-NLS-1$
-
- private static final ResourceBundle RESOURCE_BUNDLE = ResourceBundle.getBundle( BUNDLE_NAME );
-
- private DebugCoreMessages() {
- }
-
- public static String getString( String key ) {
- try {
- return RESOURCE_BUNDLE.getString( key );
- }
- catch( MissingResourceException e ) {
- return '!' + key + '!';
- }
- }
-}
diff --git a/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/core/DebugCoreMessages.properties b/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/core/DebugCoreMessages.properties
deleted file mode 100644
index b0fcd5e7cb3..00000000000
--- a/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/core/DebugCoreMessages.properties
+++ /dev/null
@@ -1,18 +0,0 @@
-###############################################################################
-# Copyright (c) 2003, 2006 QNX Software Systems and others.
-# All rights reserved. This program and the accompanying materials
-# are made available under the terms of the Eclipse Public License v1.0
-# which accompanies this distribution, and is available at
-# http://www.eclipse.org/legal/epl-v10.html
-#
-# Contributors:
-# QNX Software Systems - initial API and implementation
-###############################################################################
-CDebugCorePlugin.0=No such debugger
-CDebugUtils.0=[line: {0}]
-CDebugUtils.1=[address: {0}]
-CDebugUtils.2=[function: {0}]
-CDebugUtils.3=[ignore count: {0}]
-CDebugUtils.4=[condition: {0}]
-CDebugUtils.5=[expression: ''{0}'']
-CDIDebugModel.0=Unable to parser binary information from file
diff --git a/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/core/ICBreakpointListener.java b/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/core/ICBreakpointListener.java
deleted file mode 100644
index dbabe2ae78e..00000000000
--- a/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/core/ICBreakpointListener.java
+++ /dev/null
@@ -1,68 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2002, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-
-/*
- * Created on Apr 14, 2004
- *
- * To change the template for this generated file go to
- * Window&gt;Preferences&gt;Java&gt;Code Generation&gt;Code and Comments
- */
-package org.eclipse.cdt.debug.core;
-
-import java.util.Map;
-
-import org.eclipse.debug.core.model.IBreakpoint;
-import org.eclipse.debug.core.model.IDebugTarget;
-
-/**
- * Provides event and error notification for C/C++ breakpoints.
- * Listeners register with the <code>CDebugModel</code>.
- */
-public interface ICBreakpointListener
-{
- /**
- * Notification that the given breakpoint is about to be installed in
- * the specified target. Returns whether the installation should proceed.
- * If any registered listener returns <code>false</code> the breakpoint is
- * not installed in the given target.
- *
- * @param target debug target
- * @param breakpoint breakpoint being installed
- * @return whether the the breakpoint should be installed in the given target
- */
- public boolean installingBreakpoint( IDebugTarget target, IBreakpoint breakpoint );
-
- /**
- * Notification that the given breakpoint has been installed in the specified target.
- *
- * @param target debug target
- * @param breakpoint breakpoint being installed
- */
- public void breakpointInstalled( IDebugTarget target, IBreakpoint breakpoint );
-
- /**
- * Notification that the attributes of the given breakpoint have been changed
- * from the specified target.
- *
- * @param target debug target
- * @param breakpoint breakpoint
- * @param attributes a map of changed attributes
- */
- public void breakpointChanged( IDebugTarget target, IBreakpoint breakpoint, Map attributes );
-
- /**
- * Notification that the given breakpoints have been removed from the specified target.
- *
- * @param target debug target
- * @param breakpoints the breakpoints being removed
- */
- public void breakpointsRemoved( IDebugTarget target, IBreakpoint[] breakpoints );
-}
diff --git a/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/core/ICDIDebugger.java b/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/core/ICDIDebugger.java
deleted file mode 100644
index eab67849c5c..00000000000
--- a/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/core/ICDIDebugger.java
+++ /dev/null
@@ -1,29 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.core;
-
-import org.eclipse.cdt.core.IBinaryParser.IBinaryObject;
-import org.eclipse.cdt.debug.core.cdi.ICDISession;
-import org.eclipse.core.runtime.CoreException;
-import org.eclipse.core.runtime.IProgressMonitor;
-import org.eclipse.debug.core.ILaunch;
-
-/**
- * @deprecated use <code>ICDIDebugger2</code>.
- */
-public interface ICDIDebugger {
-
- /**
- * @deprecated use <code>createSession</code> of <code>ICDIDebugger2</code>
- */
- public ICDISession createDebuggerSession(ILaunch launch, IBinaryObject exe, IProgressMonitor monitor) throws CoreException;
-
-}
diff --git a/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/core/ICDIDebugger2.java b/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/core/ICDIDebugger2.java
deleted file mode 100644
index 64db19193c8..00000000000
--- a/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/core/ICDIDebugger2.java
+++ /dev/null
@@ -1,31 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.core;
-
-import java.io.File;
-import org.eclipse.cdt.debug.core.cdi.ICDISession;
-import org.eclipse.core.runtime.CoreException;
-import org.eclipse.core.runtime.IProgressMonitor;
-import org.eclipse.debug.core.ILaunch;
-
-/**
- * Replacement for deprecated <code>ICDIDebugger</code>.
- *
- * @since 3.1 experimental
- */
-public interface ICDIDebugger2 extends ICDIDebugger {
-
- /**
- * <code>null</code> can be passed as <code>executable</code> allowing debuggers to create session without executables,
- * or load executables later during the session.
- */
- public ICDISession createSession(ILaunch launch, File executable, IProgressMonitor monitor) throws CoreException;
-}
diff --git a/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/core/ICDTLaunchConfigurationConstants.java b/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/core/ICDTLaunchConfigurationConstants.java
deleted file mode 100644
index 8f19068c36b..00000000000
--- a/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/core/ICDTLaunchConfigurationConstants.java
+++ /dev/null
@@ -1,278 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - initial API and implementation
- * Ken Ryall (Nokia) - https://bugs.eclipse.org/bugs/show_bug.cgi?id=118894
- *******************************************************************************/
-package org.eclipse.cdt.debug.core;
-
-public interface ICDTLaunchConfigurationConstants {
-
- public static final String CDT_LAUNCH_ID = "org.eclipse.cdt.launch"; //$NON-NLS-1$
-
- /**
- * This is the launch type id.
- */
- public static final String ID_LAUNCH_C_APP = "org.eclipse.cdt.launch.localCLaunch"; //$NON-NLS-1$
-
- /**
- * Identifier for the C/C++ program process type, which is annotated on processes created
- * by the C/C++ application launch delegate.
- *
- * (value <code>"C/C++"</code>).
- */
- public static final String ID_PROGRAM_PROCESS_TYPE = "C/C++"; //$NON-NLS-1$
-
- /**
- * Launch configuration attribute key. The value is a name of a C/C++
- * project associated with a C/C++ launch configuration.
- */
- public static final String ATTR_PROJECT_NAME = CDT_LAUNCH_ID + ".PROJECT_ATTR"; //$NON-NLS-1$
-
- /**
- * Launch configuration attribute key. The value is a string specifying
- * application a C/C++ launch configuration.
- */
- public static final String ATTR_PROGRAM_NAME = CDT_LAUNCH_ID + ".PROGRAM_NAME"; //$NON-NLS-1$
-
- /**
- * Launch configuration attribute key. The value is a string specifying
- * application arguments for a C/C++ launch configuration, as they should
- * appear on the command line.
- */
- public static final String ATTR_PROGRAM_ARGUMENTS = CDT_LAUNCH_ID + ".PROGRAM_ARGUMENTS"; //$NON-NLS-1$
-
- /**
- * Launch configuration attribute key. The value is a string specifying a
- * path to the working directory to use when launching a the application.
- * When unspecified, the working directory is inherited from the current
- * process. When specified as an absolute path, the path represents a path
- * in the local file system. When specified as a full path, the path
- * represents a workspace relative path.
- */
- public static final String ATTR_WORKING_DIRECTORY = CDT_LAUNCH_ID + ".WORKING_DIRECTORY"; //$NON-NLS-1$
-
- /**
- * Launch configuration attribute key. The value is a boolean specifying
- * whether the current enviroment should be inherited when the application
- * is launched.
- * @deprecated - see ILaunchManager.ATTR_APPEND_ENVIRONMENT_VARIABLES
- */
- public static final String ATTR_PROGRAM_ENVIROMENT_INHERIT = CDT_LAUNCH_ID + ".ENVIRONMENT_INHERIT"; //$NON-NLS-1$
-
- /**
- * Launch configuration attribute key. The value is a Map specifying the
- * environment to use when launching a C/C++ application.
- *
- * @deprecated - see ILaunchManager.ATTR_ENVIRONMENT_VARIABLES
- */
- public static final String ATTR_PROGRAM_ENVIROMENT_MAP = CDT_LAUNCH_ID + ".ENVIRONMENT_MAP"; //$NON-NLS-1$
-
- /**
- * Launch configuration attribute key. The value is the platform string of
- * the launch configuration
- */
- public static final String ATTR_PLATFORM = CDT_LAUNCH_ID + ".PLATFFORM"; //$NON-NLS-1$
-
- /**
- * Launch configuration attribute key. The value is a boolean specifiying whether
- * to connect a terminal to the processed stdin/stdout
- */
- public static final String ATTR_USE_TERMINAL = CDT_LAUNCH_ID + ".use_terminal"; //$NON-NLS-1$
-
- public static final boolean USE_TERMINAL_DEFAULT = true;
-
- /**
- * Launch configuration attribute key. The value is the debugger id used
- * when launching a C/C++ application for debug.
- */
- public static final String ATTR_DEBUGGER_ID = CDT_LAUNCH_ID + ".DEBUGGER_ID"; //$NON-NLS-1$
-
- /**
- * Launch configuration attribute key. The value is the platform string of
- * the launch configuration
- */
- public static final String ATTR_DEBUGGER_SPECIFIC_ATTRS_MAP = CDT_LAUNCH_ID + ".DEBUGGER_SPECIFIC_ATTRS_MAP"; //$NON-NLS-1$
-
- /**
- * Launch configuration attribute key. The value is a boolean specifying
- * whether to stop at main().
- */
- public static final String ATTR_DEBUGGER_STOP_AT_MAIN = CDT_LAUNCH_ID + ".DEBUGGER_STOP_AT_MAIN"; //$NON-NLS-1$
-
- /**
- * Launch configuration attribute key. The value is a String specifying
- * the symbol to use for the main breakpoint.
- */
- public static final String ATTR_DEBUGGER_STOP_AT_MAIN_SYMBOL = CDT_LAUNCH_ID + ".DEBUGGER_STOP_AT_MAIN_SYMBOL"; //$NON-NLS-1$
-
- /**
- * Launch configuration attribute key. The value is a String specifying
- * the register groups memento.
- */
- public static final String ATTR_DEBUGGER_REGISTER_GROUPS = CDT_LAUNCH_ID + ".DEBUGGER_REGISTER_GROUPS"; //$NON-NLS-1$
-
- /**
- * Launch configuration attribute key. The value is an int specifying the
- * process id to attach to if the ATTR_DEBUGGER_START_MODE is
- * DEBUGGER_MODE_ATTACH. A non existant value or -1 for this entry indicates
- * that the user should be asked to supply this value by the launch
- * delegate. This value is primarily designed to be used by programatic
- * users of the debug interface.
- */
- public static final String ATTR_ATTACH_PROCESS_ID = CDT_LAUNCH_ID + ".ATTACH_PROCESS_ID"; //$NON-NLS-1$
-
- /**
- * Launch configuration attribute key. The value is a String specifying the
- * corefile path if the ATTR_DEBUGGER_START_MODE is DEBUGGER_MODE_COREFILE.
- * A non existant value or null for this entry indicates that the user
- * should be asked to supply this value by the launch delegate. This value
- * is primarily designed to be used by programatic users of the debug
- * interface.
- */
- public static final String ATTR_COREFILE_PATH = CDT_LAUNCH_ID + ".COREFILE_PATH"; //$NON-NLS-1$
-
- /**
- * Launch configuration attribute key. The value is the startup mode for the
- * debugger.
- */
- public static final String ATTR_DEBUGGER_START_MODE = CDT_LAUNCH_ID + ".DEBUGGER_START_MODE"; //$NON-NLS-1$
-
- /**
- * Launch configuration attribute key. The value is a boolean specifying
- * whether to enable variable bookkeeping.
- */
- public static final String ATTR_DEBUGGER_ENABLE_VARIABLE_BOOKKEEPING = CDT_LAUNCH_ID + ".ENABLE_VARIABLE_BOOKKEEPING"; //$NON-NLS-1$
-
- /**
- * Launch configuration attribute key. The value is a boolean specifying
- * whether to enable register bookkeeping.
- */
- public static final String ATTR_DEBUGGER_ENABLE_REGISTER_BOOKKEEPING = CDT_LAUNCH_ID + ".ENABLE_REGISTER_BOOKKEEPING"; //$NON-NLS-1$
-
- /**
- * launch configuration attribute key. The value is a string specifying the protocol to
- * use. For now only "mi", "mi1", "m2", "mi3" are supported.
- * @deprecated
- */
- public static final String ATTR_DEBUGGER_PROTOCOL = CDT_LAUNCH_ID + ".protocol"; //$NON-NLS-1$
-
- /**
- * Launch configuration attribute key. The value is a global variables'
- * memento.
- */
- public static final String ATTR_DEBUGGER_GLOBAL_VARIABLES = CDT_LAUNCH_ID + ".GLOBAL_VARIABLES"; //$NON-NLS-1$
-
- /**
- * Launch configuration attribute key. The value is a memory blocks' memento.
- */
- public static final String ATTR_DEBUGGER_MEMORY_BLOCKS = CDT_LAUNCH_ID + ".MEMORY_BLOCKS"; //$NON-NLS-1$
-
- /**
- * Launch configuration attribute value. The key is
- * ATTR_DEBUGGER_STOP_AT_MAIN.
- */
- public static boolean DEBUGGER_STOP_AT_MAIN_DEFAULT = true;
-
- /**
- * Launch configuration attribute value. The key is
- * DEBUGGER_STOP_AT_MAIN_SYMBOL.
- */
- public static String DEBUGGER_STOP_AT_MAIN_SYMBOL_DEFAULT = "main"; //$NON-NLS-1$
-
- /**
- * Launch configuration attribute value. The key is
- * ATTR_DEBUGGER_START_MODE. Startup debugger running the program.
- */
- public static String DEBUGGER_MODE_RUN = "run"; //$NON-NLS-1$
-
- /**
- * Launch configuration attribute value. The key is
- * ATTR_DEBUGGER_START_MODE. Startup debugger and attach to running process.
- */
- public static String DEBUGGER_MODE_ATTACH = "attach"; //$NON-NLS-1$
-
- /**
- * Launch configuration attribute value. The key is
- * ATTR_DEBUGGER_START_MODE. Startup debugger to view a core file.
- */
- public static String DEBUGGER_MODE_CORE = "core"; //$NON-NLS-1$
-
- /**
- * Status code indicating that the Eclipse runtime does not support
- * launching a program with a working directory. This feature is only
- * available if Eclipse is run on a 1.3 runtime or higher.
- * <p>
- * A status handler may be registered for this error condition, and should
- * return a Boolean indicating whether the program should be relaunched with
- * the default working directory.
- * </p>
- */
- public static final int ERR_WORKING_DIRECTORY_NOT_SUPPORTED = 100;
-
- /**
- * Status code indicating the specified working directory does not exist.
- */
- public static final int ERR_WORKING_DIRECTORY_DOES_NOT_EXIST = 101;
-
- /**
- * Status code indicating a launch configuration does not specify a project
- * when a project is required.
- */
- public static final int ERR_UNSPECIFIED_PROJECT = 102;
-
- /**
- * Status code indicating a launch configuration does not specify a vaild
- * project.
- */
- public static final int ERR_NOT_A_C_PROJECT = 103;
-
- /**
- * Status code indicating a launch configuration does not specify a vaild
- * program.
- */
- public static final int ERR_PROGRAM_NOT_EXIST = 104;
-
- /**
- * Status code indicating a launch configuration does not specify a program
- * name.
- */
-
- public static final int ERR_UNSPECIFIED_PROGRAM = 105;
-
- /**
- * Status code indicating that the CDT debugger is missing
- * <p>
- * A status handler may be registered for this error condition, and should
- * return a String indicating which debugger to use.
- * </p>
- */
- public static final int ERR_DEBUGGER_NOT_INSTALLED = 106;
-
- /**
- * Status code indicating a launch configuration does not specify a vaild
- * program.
- */
- public static final int ERR_PROGRAM_NOT_BINARY = 107;
-
- /**
- * Status code indicating a the user did not specify a process id
- */
- public static final int ERR_NO_PROCESSID = 107;
-
- /**
- * Status code indicating a the user did not specify a path to a corefile
- */
- public static final int ERR_NO_COREFILE = 108;
-
- /**
- * Status code indicating an unexpected internal error.
- */
- public static final int ERR_INTERNAL_ERROR = 150;
-
-}
diff --git a/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/core/ICDebugConfiguration.java b/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/core/ICDebugConfiguration.java
deleted file mode 100644
index bde7a7a339a..00000000000
--- a/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/core/ICDebugConfiguration.java
+++ /dev/null
@@ -1,34 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.core;
-
-import org.eclipse.core.runtime.CoreException;
-
-public interface ICDebugConfiguration {
- final static String CPU_NATIVE = "native"; //$NON-NLS-1$
-
- /**
- * @return
- * @throws CoreException
- * @deprecated
- */
- ICDebugger getDebugger() throws CoreException;
-
- ICDIDebugger createDebugger() throws CoreException;
- String getName();
- String getID();
- String getPlatform();
- String[] getCPUList();
- String[] getModeList();
- String[] getCoreFileExtensions();
- boolean supportsCPU(String cpu);
- boolean supportsMode(String mode);
-}
diff --git a/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/core/ICDebugConstants.java b/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/core/ICDebugConstants.java
deleted file mode 100644
index 9f6c630bc7c..00000000000
--- a/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/core/ICDebugConstants.java
+++ /dev/null
@@ -1,93 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.core;
-
-
-/**
- * Constant definitions for C/C++ debug plug-in.
- */
-public interface ICDebugConstants {
-
- /**
- * C/C++ debug plug-in identifier (value
- * <code>"org.eclipse.cdt.debug.core"</code>).
- */
- public static final String PLUGIN_ID = CDebugCorePlugin.getUniqueIdentifier();
-
- /**
- * The identifier of the default variable format to use in the variables
- * view
- */
- public static final String PREF_DEFAULT_VARIABLE_FORMAT = PLUGIN_ID + "cDebug.default_variable_format"; //$NON-NLS-1$
-
- /**
- * The identifier of the default register format to use in the registers
- * view
- */
- public static final String PREF_DEFAULT_REGISTER_FORMAT = PLUGIN_ID + "cDebug.default_register_format"; //$NON-NLS-1$
-
- /**
- * The identifier of the default expression format to use in the expressions
- * views
- */
- public static final String PREF_DEFAULT_EXPRESSION_FORMAT = PLUGIN_ID + "cDebug.default_expression_format"; //$NON-NLS-1$
-
- /**
- * The identifier of the maximum number of instructions displayed in
- * disassembly.
- */
- public static final String PREF_MAX_NUMBER_OF_INSTRUCTIONS = PLUGIN_ID + "cDebug.max_number_of_instructions"; //$NON-NLS-1$
-
- /**
- * Boolean preference controlling whether the search for duplicate source
- * files will be performed by debugger.
- */
- public static final String PREF_SEARCH_DUPLICATE_FILES = PLUGIN_ID + "cDebug.Source.search_duplicate_files"; //$NON-NLS-1$
-
- /**
- * The identifier of the common source locations list
- */
- public static final String PREF_SOURCE_LOCATIONS = PLUGIN_ID + "cDebug.Source.source_locations"; //$NON-NLS-1$
-
- /**
- * The default number of instructions displayed in disassembly.
- */
- public static final int DEF_NUMBER_OF_INSTRUCTIONS = 100;
-
- /**
- * The minimal valid number of instructions displayed in disassembly.
- */
- public static final int MIN_NUMBER_OF_INSTRUCTIONS = 1;
-
- /**
- * The maximal valid number of instructions displayed in disassembly.
- */
- public static final int MAX_NUMBER_OF_INSTRUCTIONS = 999;
-
- /**
- * Preference that saves the default debugger type
- * @since 3.1
- */
- public static final String PREF_DEFAULT_DEBUGGER_TYPE = PLUGIN_ID + ".cDebug.defaultDebugger"; //$NON-NLS-1$
-
- /**
- * Preference that saves the deactivated debugger types
- * @since 3.1
- */
- public static final String PREF_FILTERED_DEBUGGERS = PLUGIN_ID + ".cDebug.filteredDebuggers"; //$NON-NLS-1$
-
- /**
- * Boolean preference controlling whether the instruction stepping mode should be activated.
- *
- * Temporary. See bugs 79872 and 80323.
- */
- public static final String PREF_INSTRUCTION_STEP_MODE_ON = PLUGIN_ID + "cDebug.Disassembly.instructionStepOn"; //$NON-NLS-1$
-}
diff --git a/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/core/ICDebugger.java b/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/core/ICDebugger.java
deleted file mode 100644
index ff9a79f1fb1..00000000000
--- a/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/core/ICDebugger.java
+++ /dev/null
@@ -1,27 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.core;
-
-import org.eclipse.cdt.debug.core.cdi.CDIException;
-import org.eclipse.cdt.debug.core.cdi.ICDISession;
-import org.eclipse.core.resources.IFile;
-import org.eclipse.core.runtime.IPath;
-import org.eclipse.debug.core.ILaunchConfiguration;
-
-/**
- *
- * @deprecated - see ICDIDebugger
- */
-public interface ICDebugger {
- public ICDISession createLaunchSession(ILaunchConfiguration config, IFile exe) throws CDIException ;
- public ICDISession createAttachSession(ILaunchConfiguration config, IFile exe, int pid) throws CDIException;
- public ICDISession createCoreSession(ILaunchConfiguration config, IFile exe, IPath corefile) throws CDIException;
-}
diff --git a/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/core/ICGlobalVariableManager.java b/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/core/ICGlobalVariableManager.java
deleted file mode 100644
index fbe4523ccaa..00000000000
--- a/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/core/ICGlobalVariableManager.java
+++ /dev/null
@@ -1,48 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004, 2005 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.core;
-
-import org.eclipse.cdt.debug.core.model.ICGlobalVariable;
-import org.eclipse.cdt.debug.core.model.IGlobalVariableDescriptor;
-import org.eclipse.debug.core.DebugException;
-
-/**
- * Manages the collection of global variables added to a debug target.
- */
-public interface ICGlobalVariableManager {
-
- /**
- * Registers with this manager the global variables specified by given descriptors.
- *
- * @param descriptors the descriptors of global variables to register with this manager
- * @throws DebugException
- */
- public void addGlobals( IGlobalVariableDescriptor[] descriptors ) throws DebugException;
-
- /**
- * Removes specified global variables from this manager.
- *
- * @param globals global variables to remove
- */
- public void removeGlobals( ICGlobalVariable[] globals );
-
- /**
- * Removes all global variables from this manager.
- */
- public void removeAllGlobals();
-
- /**
- * Returns the array of descriptors of global varibales added to this manager.
- *
- * @return the array of descriptors
- */
- public IGlobalVariableDescriptor[] getDescriptors();
-}
diff --git a/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/core/model/CDebugElementState.java b/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/core/model/CDebugElementState.java
deleted file mode 100644
index 8abeaafd85b..00000000000
--- a/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/core/model/CDebugElementState.java
+++ /dev/null
@@ -1,41 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.core.model;
-
-/**
- * The state of a debug element.
- */
-public class CDebugElementState {
-
- private final String fName;
-
- private CDebugElementState( String name ) {
- this.fName = name;
- }
-
- public String toString() {
- return this.fName;
- }
-
- public static final CDebugElementState UNDEFINED = new CDebugElementState( "undefined" ); //$NON-NLS-1$
- public static final CDebugElementState TERMINATING = new CDebugElementState( "terminating" ); //$NON-NLS-1$
- public static final CDebugElementState TERMINATED = new CDebugElementState( "terminated" ); //$NON-NLS-1$
- public static final CDebugElementState DISCONNECTING = new CDebugElementState( "disconnecting" ); //$NON-NLS-1$
- public static final CDebugElementState DISCONNECTED = new CDebugElementState( "disconnected" ); //$NON-NLS-1$
- public static final CDebugElementState RESUMING = new CDebugElementState( "resuming" ); //$NON-NLS-1$
- public static final CDebugElementState RESUMED = new CDebugElementState( "resumed" ); //$NON-NLS-1$
- public static final CDebugElementState STEPPING = new CDebugElementState( "stepping" ); //$NON-NLS-1$
- public static final CDebugElementState STEPPED = new CDebugElementState( "stepped" ); //$NON-NLS-1$
- public static final CDebugElementState SUSPENDING = new CDebugElementState( "suspending" ); //$NON-NLS-1$
- public static final CDebugElementState SUSPENDED = new CDebugElementState( "suspended" ); //$NON-NLS-1$
- public static final CDebugElementState RESTARTING = new CDebugElementState( "restarting" ); //$NON-NLS-1$
- public static final CDebugElementState EXITED = new CDebugElementState( "exited" ); //$NON-NLS-1$
-}
diff --git a/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/core/model/CVariableFormat.java b/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/core/model/CVariableFormat.java
deleted file mode 100644
index 553ea295687..00000000000
--- a/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/core/model/CVariableFormat.java
+++ /dev/null
@@ -1,50 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.core.model;
-
-/**
- * Defines the variable format types.
- */
-public class CVariableFormat {
-
- private final String fName;
-
- private CVariableFormat( String name ) {
- this.fName = name;
- }
-
- public String toString() {
- return this.fName;
- }
-
- public static CVariableFormat getFormat( int code ) {
- switch( code ) {
- case 0:
- return NATURAL;
- case 1:
- return DECIMAL;
- case 2:
- return BINARY;
- case 3:
- return OCTAL;
- case 4:
- return HEXADECIMAL;
- default:
- return NATURAL;
- }
- }
-
- public static final CVariableFormat NATURAL = new CVariableFormat( "natural" ); //$NON-NLS-1$
- public static final CVariableFormat DECIMAL = new CVariableFormat( "decimal" ); //$NON-NLS-1$
- public static final CVariableFormat BINARY = new CVariableFormat( "binary" ); //$NON-NLS-1$
- public static final CVariableFormat OCTAL = new CVariableFormat( "octal" ); //$NON-NLS-1$
- public static final CVariableFormat HEXADECIMAL = new CVariableFormat( "hexadecimal" ); //$NON-NLS-1$
-}
diff --git a/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/core/model/IAsmInstruction.java b/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/core/model/IAsmInstruction.java
deleted file mode 100644
index 63849b667e6..00000000000
--- a/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/core/model/IAsmInstruction.java
+++ /dev/null
@@ -1,62 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.core.model;
-
-import org.eclipse.cdt.core.IAddress;
-
-/**
- * An instruction of disassemby.
- */
-public interface IAsmInstruction {
-
- /**
- * Returns the address of this instruction.
- *
- * @return the address of this instruction
- */
- IAddress getAdress();
-
- /**
- * Returns the function name of this instruction,
- * or empty string if function is not available.
- *
- * @return the function name of this instruction
- */
- String getFunctionName();
-
- /**
- * Returns the instruction's text.
- *
- * @return the instruction's text.
- */
- String getInstructionText();
-
- /**
- * Returns the opcode of this instruction.
- *
- * @return the opcode of this instruction
- */
- String getOpcode();
-
- /**
- * Returns the arguments to the opcode.
- *
- * @return the arguments to the opcode
- */
- String getArguments();
-
- /**
- * Returns the offset of this machine instruction.
- *
- * @return the offset of this machine instruction
- */
- long getOffset();
-}
diff --git a/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/core/model/IAsmSourceLine.java b/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/core/model/IAsmSourceLine.java
deleted file mode 100644
index 63846dcfc66..00000000000
--- a/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/core/model/IAsmSourceLine.java
+++ /dev/null
@@ -1,31 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.core.model;
-
-/**
- * A source line in disassembly.
- */
-public interface IAsmSourceLine {
-
- /**
- * Returns the array of the disassembly instructions associated with this source line.
- *
- * @return the array of the disassembly instructions associated with this source line
- */
- IAsmInstruction[] getInstructions();
-
- /**
- * Returns the number of this line in the source file
- *
- * @return the line number
- */
- int getLineNumber();
-}
diff --git a/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/core/model/ICAddressBreakpoint.java b/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/core/model/ICAddressBreakpoint.java
deleted file mode 100644
index 0d7ab756cd5..00000000000
--- a/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/core/model/ICAddressBreakpoint.java
+++ /dev/null
@@ -1,18 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.core.model;
-
-/**
- * A breakpoint that suspend the execution when a particular address is reached.
- */
-public interface ICAddressBreakpoint extends ICLineBreakpoint {
-
-}
diff --git a/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/core/model/ICBreakpoint.java b/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/core/model/ICBreakpoint.java
deleted file mode 100644
index 8eff3bd567e..00000000000
--- a/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/core/model/ICBreakpoint.java
+++ /dev/null
@@ -1,266 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.core.model;
-
-import org.eclipse.core.runtime.CoreException;
-import org.eclipse.debug.core.model.IBreakpoint;
-
-/**
- * A breakpoint specific to the C/C++ debug model. A C/C++ breakpoint supports:
- * <ul>
- * <li>a condition</li>
- * <li>an ignore count</li>
- * <li>a thread filter to restrict the breakpoint to a specific thread</li>
- * <li>an installed property that indicates a breakpoint was successfully
- * installed in debug target</li>
- * </ul>
- */
-public interface ICBreakpoint extends IBreakpoint {
-
- /**
- * Breakpoint attribute storing the number of debug targets a breakpoint is
- * installed in (value <code>"org.eclipse.cdt.debug.core.installCount"</code>).
- * This attribute is an <code>int</code>.
- */
- public static final String INSTALL_COUNT = "org.eclipse.cdt.debug.core.installCount"; //$NON-NLS-1$
-
- /**
- * Breakpoint attribute storing the conditional expression associated with
- * this breakpoint (value <code>"org.eclipse.cdt.debug.core.condition"</code>).
- * This attribute is a <code>String</code>.
- */
- public static final String CONDITION = "org.eclipse.cdt.debug.core.condition"; //$NON-NLS-1$
-
- /**
- * Breakpoint attribute storing a breakpoint's ignore count value (value
- * <code>"org.eclipse.cdt.debug.core.ignoreCount"</code>). This attribute
- * is an <code>int</code>.
- */
- public static final String IGNORE_COUNT = "org.eclipse.cdt.debug.core.ignoreCount"; //$NON-NLS-1$
-
- /**
- * Breakpoint attribute storing an identifier of the thread this breakpoint
- * is restricted in (value <code>"org.eclipse.cdt.debug.core.threadId"</code>).
- * This attribute is a <code>String</code>.
- */
- public static final String THREAD_ID = "org.eclipse.cdt.debug.core.threadId"; //$NON-NLS-1$
-
- /**
- * Breakpoint attribute storing the source handle of the file this breakpoint
- * is set in (value <code>"org.eclipse.cdt.debug.core.sourceHandle"</code>).
- * This attribute is a <code>String</code>.
- */
- public static final String SOURCE_HANDLE = "org.eclipse.cdt.debug.core.sourceHandle"; //$NON-NLS-1$
-
- /**
- * Breakpoint attribute storing the module name this breakpoint
- * is set in (value <code>"org.eclipse.cdt.debug.core.module"</code>).
- * This attribute is a <code>String</code>.
- *
- * @since 3.0
- */
- public static final String MODULE = "org.eclipse.cdt.debug.core.module"; //$NON-NLS-1$
-
- /**
- * Returns whether this breakpoint is installed in at least one debug
- * target.
- *
- * @return whether this breakpoint is installed
- * @exception CoreException if unable to access the property on this breakpoint's
- * underlying marker
- */
- public boolean isInstalled() throws CoreException;
-
- /**
- * Returns whether this breakpoint is conditional.
- *
- * @return whether this breakpoint is conditional
- * @exception CoreException if unable to access the property on this breakpoint's
- * underlying marker
- */
- public boolean isConditional() throws CoreException;
-
- /**
- * Returns the conditional expression associated with this breakpoint.
- *
- * @return this breakpoint's conditional expression
- * @exception CoreException if unable to access the property on this breakpoint's
- * underlying marker
- */
- public String getCondition() throws CoreException;
-
- /**
- * Sets the condition associated with this breakpoint.
- *
- * @param condition the conditional expression
- * @exception CoreException if unable to access the property on this breakpoint's
- * underlying marker
- */
- public void setCondition( String condition ) throws CoreException;
-
- /**
- * Returns the ignore count used by this breakpoint.
- *
- * @return the ignore count used by this breakpoint
- * @exception CoreException if unable to access the property on this breakpoint's
- * underlying marker
- */
- public int getIgnoreCount() throws CoreException;
-
- /**
- * Sets the ignore count attribute for this breakpoint.
- *
- * @param ignoreCount the new ignore count
- * @exception CoreException if unable to access the property on this breakpoint's
- * underlying marker
- */
- public void setIgnoreCount( int ignoreCount ) throws CoreException;
-
- /**
- * Returns the identifier of the thread this breakpoint is restricted in.
- *
- * @return the thread identifier
- * @exception CoreException if unable to access the property on this breakpoint's
- * underlying marker
- */
- public String getThreadId() throws CoreException;
-
- /**
- * Restricts this breakpoint to suspend only in the given thread when
- * encounterd in the given thread's target.
- *
- * @param threadId the thread identifier
- * @exception CoreException if unable to access the property on this breakpoint's
- * underlying marker
- */
- public void setThreadId( String threadId ) throws CoreException;
-
- /**
- * Returns the module name this breakpoint is set in.
- *
- * @return the module name
- * @exception CoreException if unable to access the property on this breakpoint's
- * underlying marker
- */
- public String getModule() throws CoreException;
-
- /**
- * Sets the module name of this breakpoint.
- *
- * @param module the module name
- * @exception CoreException if unable to access the property on this breakpoint's
- * underlying marker
- */
- public void setModule( String module ) throws CoreException;
-
- /**
- * Returns the source handle this breakpoint is set in.
- *
- * @return the source handle
- * @exception CoreException if unable to access the property on this breakpoint's
- * underlying marker
- */
- public String getSourceHandle() throws CoreException;
-
- /**
- * Sets the source handle of this breakpoint.
- *
- * @param sourceHandle the source handle
- * @exception CoreException if unable to access the property on this breakpoint's
- * underlying marker
- */
- public void setSourceHandle( String sourceHandle ) throws CoreException;
-
- /**
- * Increments the install count of this breakpoint
- *
- * @return the new install count value
- * @throws CoreException if unable to access the property
- * on this breakpoint's underlying marker
- */
- public int incrementInstallCount() throws CoreException;
-
- /**
- * Decrements the install count of this breakpoint.
- *
- * @return the new install caount value
- * @throws CoreException if unable to access the property
- * on this breakpoint's underlying marker
- */
- public int decrementInstallCount() throws CoreException;
-
- /**
- * Resets the install count of this breakpoint
- *
- * @throws CoreException if unable to access the property
- * on this breakpoint's underlying marker
- */
- public void resetInstallCount() throws CoreException;
-
- /**
- * Add the given target to the list of this breakpoint's targets.
- * Target filters are not persisted across workbench invocations.
- *
- * @param target the target to add to the list of this breakpoint's targets.
- * @throws CoreException if unable to set the target filter
- */
- public void setTargetFilter( ICDebugTarget target ) throws CoreException;
-
- /**
- * Removes the given target from the breakpoint's target list.
- * The breakpoint has no effect in the given target.
- *
- * @param target the target filter to be removed
- * @exception CoreException if unable to remove the target filter
- */
- public void removeTargetFilter( ICDebugTarget target ) throws CoreException;
-
- /**
- * Restricts this breakpoint to suspend only in the given threads
- * when encounterd in the given threads' target.
- * All threads must be from the same target.
- * Thread filters are not persisted across workbench invocations.
- *
- * @param threads the thread filters to be set
- * @exception CoreException if unable to set the thread filters
- */
- public void setThreadFilters( ICThread[] threads ) throws CoreException;
-
- /**
- * Returns all target filters set on this breakpoint.
- *
- * @return the targets that this breakpoint is resticted to
- * @exception CoreException if unable to determine this breakpoint's
- * target filters
- */
- public ICDebugTarget[] getTargetFilters() throws CoreException;
-
- /**
- * Removes this breakpoint's thread filters in the given target, if any.
- * Has no effect if this breakpoint does not have filters in the given target.
- * All threads must be from the same target.
- *
- * @param threads the thread filters to be removed
- * @exception CoreException if unable to remove the thread filter
- */
- public void removeThreadFilters( ICThread[] threads ) throws CoreException;
-
- /**
- * Returns the threads in the given target in which this breakpoint
- * is enabled or <code>null</code> if this breakpoint is enabled in
- * all threads in the given target.
- *
- * @return the threads in the given target that this breakpoint is enabled for
- * @exception CoreException if unable to determine this breakpoint's thread
- * filters
- */
- public ICThread[] getThreadFilters( ICDebugTarget target ) throws CoreException;
-}
diff --git a/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/core/model/ICDebugElement.java b/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/core/model/ICDebugElement.java
deleted file mode 100644
index 5fa07cce22e..00000000000
--- a/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/core/model/ICDebugElement.java
+++ /dev/null
@@ -1,34 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.core.model;
-
-import org.eclipse.debug.core.model.IDebugElement;
-
-/**
- * C/C++ specific extension of <code>IDebugElement</code>.
- */
-public interface ICDebugElement extends IDebugElement {
-
- /**
- * Returns the current state of this element.
- *
- * @return the current state
- */
- public CDebugElementState getState();
-
-
- /**
- * Returns the info object associated with the current state.
- *
- * @return the info object associated with the current state
- */
- public Object getCurrentStateInfo();
-}
diff --git a/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/core/model/ICDebugElementStatus.java b/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/core/model/ICDebugElementStatus.java
deleted file mode 100644
index fd785a4aae2..00000000000
--- a/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/core/model/ICDebugElementStatus.java
+++ /dev/null
@@ -1,64 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.core.model;
-
-/**
- * Represents the status of a C/C++ debug model element.
- */
-public interface ICDebugElementStatus {
-
- /**
- * Status severity constant (value 0) indicating this status represents
- * the nominal case.
- */
- public static final int OK = 0;
-
- /**
- * Status severity constant (value 1) indicating indicating this status
- * represents a warning.
- */
- public static final int WARNING = 1;
-
- /**
- * Status severity constant (value 2) indicating indicating this status
- * represents an error.
- */
- public static final int ERROR = 2;
-
- /**
- * Returns whether this status indicates everything is okay
- * (neither warning, nor error).
- *
- * @return <code>true</code> if this status has severity
- * <code>OK</code>, and <code>false</code> otherwise
- */
- boolean isOK();
-
- /**
- * Returns the severity. The severities are as follows (in descending order):
- * <ul>
- * <li><code>ERROR</code> - an error</li>
- * <li><code>WARNING</code> - a warning</li>
- * <li><code>OK</code> - everything is just fine</li>
- * </ul>
- *
- * @return the severity: one of <code>OK</code>, <code>ERROR</code>,
- * or <code>WARNING</code>
- */
- int getSeverity();
-
- /**
- * Returns the message describing the outcome.
- *
- * @return a message
- */
- String getMessage();
-}
diff --git a/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/core/model/ICDebugTarget.java b/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/core/model/ICDebugTarget.java
deleted file mode 100644
index 612711cf98e..00000000000
--- a/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/core/model/ICDebugTarget.java
+++ /dev/null
@@ -1,122 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004, 2005 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.core.model;
-
-import org.eclipse.cdt.core.IAddress;
-import org.eclipse.debug.core.DebugException;
-import org.eclipse.debug.core.model.IDebugTarget;
-import org.eclipse.debug.core.model.IRegisterGroup;
-
-/**
- * C/C++ extension of <code>IDebugTarget</code>.
- */
-public interface ICDebugTarget extends IDebugTarget,
- IExecFileInfo,
- IRestart,
- IResumeWithoutSignal,
- ICDebugElement,
- ISteppingModeTarget,
- IModuleRetrieval,
- ITargetProperties {
-
- /**
- * Returns whether this target is little endian.
- *
- * @return whether this target is little endian
- */
- public boolean isLittleEndian();
-
- /**
- * Returns whether this target supports signals.
- *
- * @return whether this target supports signals
- * @throws DebugException if this method fails.
- */
- public boolean hasSignals() throws DebugException;
-
- /**
- * Returns the list of signals defined for this target.
- *
- * @return the list of signals defined for this target
- * @throws DebugException if this method fails.
- */
- public ICSignal[] getSignals() throws DebugException;
-
- /**
- * Returns the disassembly provider of this debug target.
- *
- * @return the disassembly provider of this debug target
- * @throws DebugException if this method fails.
- */
- public IDisassembly getDisassembly() throws DebugException;
-
- /**
- * Returns whether this target is a post mortem type.
- *
- * @return whether this target is a post mortem type
- */
- public boolean isPostMortem();
-
- /**
- * Returns the list of descriptors of the target registers
- *
- * @return the list register descriptors
- * @throws DebugException if this method fails. Reasons include:
- *
- * @since 3.0
- */
- public IRegisterDescriptor[] getRegisterDescriptors() throws DebugException;
-
- /**
- * Adds a new user-defined register group to this target
- *
- * @param name the group name
- * @param descriptors the list of registers to be grouped
- *
- * @since 3.0
- */
- public void addRegisterGroup( String name, IRegisterDescriptor[] descriptors );
-
- /**
- * Removes the given register group from the target
- *
- * @param group a group to be removed
- *
- * @since 3.0
- */
- public void removeRegisterGroups( IRegisterGroup[] groups );
-
- /**
- * Replace the given group's register descriptors by the specified descriptors.
- *
- * @param group a group to be modified
- * @param descriptors a descriptor array to replace existing descriptors
- *
- * @since 3.0
- */
- public void modifyRegisterGroup( IPersistableRegisterGroup group, IRegisterDescriptor[] descriptors );
-
-
- /**
- * Removes all user-defined register groups and restores the hardware groups.
- *
- * @since 3.0
- */
- public void restoreDefaultRegisterGroups();
-
- /**
- * Returns the target address of the given breakpoint.
- *
- * @return the target address of the given breakpoint
- * @throws DebugException if the address is not available
- */
- public IAddress getBreakpointAddress( ICLineBreakpoint breakpoint ) throws DebugException;
-}
diff --git a/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/core/model/ICDebugTargetGroup.java b/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/core/model/ICDebugTargetGroup.java
deleted file mode 100644
index 32b7278e126..00000000000
--- a/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/core/model/ICDebugTargetGroup.java
+++ /dev/null
@@ -1,20 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.core.model;
-
-import org.eclipse.debug.core.model.IDebugTarget;
-
-/**
- * Represents a group of C/C++ debug targets.
- */
-public interface ICDebugTargetGroup extends IDebugTarget, ICDebugElement {
-
-}
diff --git a/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/core/model/ICFunctionBreakpoint.java b/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/core/model/ICFunctionBreakpoint.java
deleted file mode 100644
index 593bffe77fe..00000000000
--- a/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/core/model/ICFunctionBreakpoint.java
+++ /dev/null
@@ -1,19 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.core.model;
-
-
-/**
- * A breakpoint that suspends the execution when a function is entered.
- */
-public interface ICFunctionBreakpoint extends ICLineBreakpoint {
-
-}
diff --git a/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/core/model/ICGlobalVariable.java b/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/core/model/ICGlobalVariable.java
deleted file mode 100644
index 705d3a86afc..00000000000
--- a/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/core/model/ICGlobalVariable.java
+++ /dev/null
@@ -1,24 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.core.model;
-
-/**
- * Represents a global C/C++ variable.
- */
-public interface ICGlobalVariable extends ICVariable {
-
- /**
- * Returns the descriptor of this variable.
- *
- * @return the descriptor of this variable
- */
- public IGlobalVariableDescriptor getDescriptor();
-}
diff --git a/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/core/model/ICLineBreakpoint.java b/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/core/model/ICLineBreakpoint.java
deleted file mode 100644
index 5f9fd93db9a..00000000000
--- a/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/core/model/ICLineBreakpoint.java
+++ /dev/null
@@ -1,80 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.core.model;
-
-import org.eclipse.core.runtime.CoreException;
-import org.eclipse.debug.core.model.ILineBreakpoint;
-
-/**
- * A breakpoint that suspends the execution when a particular location of code
- * is reached.
- */
-public interface ICLineBreakpoint extends ICBreakpoint, ILineBreakpoint {
-
- /**
- * Breakpoint attribute storing the function this breakpoint suspends
- * execution at (value <code>"org.eclipse.cdt.debug.core.function"</code>).
- * This attribute is a <code>String</code>.
- */
- public static final String FUNCTION = "org.eclipse.cdt.debug.core.function"; //$NON-NLS-1$
-
- /**
- * Breakpoint attribute storing the address this breakpoint suspends
- * execution at (value <code>"org.eclipse.cdt.debug.core.address"</code>).
- * This attribute is a <code>String</code>.
- */
- public static final String ADDRESS = "org.eclipse.cdt.debug.core.address"; //$NON-NLS-1$
-
- /**
- * Returns the address this breakpoint suspends execution at.
- *
- * @return the address this breakpoint suspends execution at
- * @exception CoreException if unable to access the property on this breakpoint's
- * underlying marker
- */
- public String getAddress() throws CoreException;
-
- /**
- * Sets the address this breakpoint suspends execution at.
- *
- * @param address the address this breakpoint suspends execution at
- * @exception CoreException if unable to access the property on this breakpoint's
- * underlying marker
- */
- public void setAddress( String address ) throws CoreException;
-
- /**
- * Returns the function this breakpoint suspends execution in.
- *
- * @return the function this breakpoint suspends execution in
- * @exception CoreException if unable to access the property on this breakpoint's
- * underlying marker
- */
- public String getFunction() throws CoreException;
-
- /**
- * Sets the function this breakpoint suspends execution in.
- *
- * @param function the function this breakpoint suspends execution in
- * @exception CoreException if unable to access the property on this breakpoint's
- * underlying marker
- */
- public void setFunction( String function ) throws CoreException;
-
- /**
- * Returns the source file (if available) of this breakpoint.
- *
- * @return the source file of this breakpoint
- * @throws CoreException if unable to access the property on this breakpoint's
- * underlying marker
- */
- public String getFileName() throws CoreException;
-}
diff --git a/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/core/model/ICModule.java b/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/core/model/ICModule.java
deleted file mode 100644
index e473fc748ea..00000000000
--- a/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/core/model/ICModule.java
+++ /dev/null
@@ -1,138 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004, 2005 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.core.model;
-
-import org.eclipse.cdt.core.IAddress;
-import org.eclipse.cdt.core.IAddressFactory;
-import org.eclipse.core.runtime.IPath;
-import org.eclipse.debug.core.DebugException;
-
-/**
- * Represents a module in the process being debugged.
- *
- * @since 3.0
- */
-public interface ICModule extends ICDebugElement {
-
- /**
- * Type constant which identifies executables.
- */
- public static final int EXECUTABLE = 1;
-
- /**
- * Type constant which identifies shared libraries.
- */
- public static final int SHARED_LIBRARY = 2;
-
- /**
- * Returns the type of this module.
- * The returned value will be one of <code>EXECUTABLE</code>,
- * <code>SHARED_LIBRARY</code>, <code>CORE</code>.
- *
- * @return the type of this module
- */
- public int getType();
-
- /**
- * Returns the name of this module.
- *
- * @return the name of this module
- */
- public String getName();
-
- /**
- * Returns the image name of this module. The name may or may not
- * contain a full path.
- *
- * @return the image name of this module
- */
- public IPath getImageName();
-
- /**
- * Returns the full path of the file from which symbols to be loaded.
- *
- * @return the full path of the file from which symbols to be loaded
- */
- public IPath getSymbolsFileName();
-
- /**
- * Associate the specified file as a symbol provider for this module.
- * If <code>null</code> is passed as a file name the internal symbols
- * search mechanism will be used.
- *
- * @param symbolsFile the symbol provider for this module.
- * @throws DebugException if this method fails. Reasons include:
- */
- public void setSymbolsFileName( IPath symbolsFile ) throws DebugException;
-
- /**
- * Returns the base address of this module.
- *
- * @return the base address of this module
- */
- public IAddress getBaseAddress();
-
- /**
- * Returns the size of this module.
- *
- * @return the size of this module
- */
- public long getSize();
-
- /**
- * Returns whether the symbols of this module are read.
- *
- * @return whether the symbols of this module are read
- */
- public boolean areSymbolsLoaded();
-
- /**
- * Returns whether the module's symbols can be loaded or reloaded.
- *
- * @return whether the module's symbols can be loaded or reloaded
- */
- public boolean canLoadSymbols();
-
- /**
- * Loads the module symbols from the specified file.
- *
- * @throws DebugException if this method fails. Reasons include:
- */
- public void loadSymbols() throws DebugException;
-
- /**
- * Returns the name of the platform.
- *
- * @return the name of the platform
- */
- public String getPlatform();
-
- /**
- * Returns whether this module is little endian.
- *
- * @return whether this module is little endian
- */
- public boolean isLittleEndian();
-
- /**
- * Returns the address factory associated with this module.
- *
- * @return the address factory
- */
- public IAddressFactory getAddressFactory();
-
- /**
- * Returns the CPU identifier.
- *
- * @return the CPU identifier
- */
- public String getCPU();
-}
diff --git a/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/core/model/ICSignal.java b/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/core/model/ICSignal.java
deleted file mode 100644
index 70965db3b3b..00000000000
--- a/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/core/model/ICSignal.java
+++ /dev/null
@@ -1,83 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.core.model;
-
-import org.eclipse.debug.core.DebugException;
-
-/**
- * Represents a signal.
- *
- * @since: Mar 5, 2004
- */
-public interface ICSignal extends ICDebugElement {
-
- /**
- * Returns the name of this signal
- *
- * @return this signal's name
- * @throws DebugException if this method fails.
- */
- public String getName() throws DebugException;
-
- /**
- * Returns the description of this signal.
- *
- * @return this signal's description
- * @throws DebugException if this method fails.
- */
- public String getDescription() throws DebugException;
-
- /**
- * Returns whether "pass" is in effect for this signal.
- *
- * @return whether "pass" is in effect for this signal
- * @throws DebugException if this method fails.
- */
- public boolean isPassEnabled() throws DebugException;
-
- /**
- * Returns whether "stop" is in effect for this signal.
- *
- * @return whether "stop" is in effect for this signal
- * @throws DebugException if this method fails.
- */
- public boolean isStopEnabled() throws DebugException;
-
- /**
- * Enables/disables the "pass" flag of this signal.
- *
- * @param enable the flag value to set
- * @throws DebugException if this method fails.
- */
- public void setPassEnabled( boolean enable ) throws DebugException;
-
- /**
- * Enables/disables the "stop" flag of this signal.
- *
- * @param enable the flag value to set
- * @throws DebugException if this method fails.
- */
- public void setStopEnabled( boolean enable ) throws DebugException;
-
- /**
- * Resumes execution, but immediately gives the target this signal.
- *
- * @throws DebugException if this method fails.
- */
- public void signal() throws DebugException;
-
- /**
- * Returns whether modification is allowed for this signal's parameters.
- *
- * @return whether modification is allowed for this signal's parameters
- */
- public boolean canModify();
-}
diff --git a/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/core/model/ICStackFrame.java b/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/core/model/ICStackFrame.java
deleted file mode 100644
index f2b95cfc1fb..00000000000
--- a/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/core/model/ICStackFrame.java
+++ /dev/null
@@ -1,86 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004, 2005 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.core.model;
-
-import org.eclipse.cdt.core.IAddress;
-import org.eclipse.debug.core.DebugException;
-import org.eclipse.debug.core.model.IStackFrame;
-import org.eclipse.debug.core.model.IValue;
-
-/**
- * C/C++ specific extension of <code>IStackFrame</code>.
- */
-public interface ICStackFrame extends IRunToLine, IRunToAddress, IJumpToLine, IJumpToAddress, IStackFrame, ICDebugElement {
-
- /**
- * Returns the address of this stack frame.
- *
- * @return the address of this stack frame
- */
- public IAddress getAddress();
-
- /**
- * Returns the source file of this stack frame or <code>null</code>
- * if the source file is unknown.
- *
- * @return the source file of this stack frame
- */
- public String getFile();
-
- /**
- * Returns the function of this stack frame or <code>null</code>
- * if the function is unknown.
- *
- * @return the function of this stack frame
- */
- public String getFunction();
-
- /**
- * Returns the line number of this stack frame or <code>0</code>
- * if the line number is unknown.
- *
- * @return the line number of this stack frame
- */
- public int getFrameLineNumber();
-
- /**
- * Returns the level of this stack frame.
- *
- * @return the level of this stack frame
- */
- public int getLevel();
-
- /**
- * Evaluates the given expression in the context of this stack frame.
- *
- * @param expression expression to evaluate
- * @return the evaluation result
- * @throws DebugException if this method fails.
- */
- public IValue evaluateExpression( String expression ) throws DebugException;
-
- /**
- * Evaluates the specified expression in the context of this stack frame
- * and returns the evaluation result as a string.
- *
- * @param expression the expression to evaluate
- * @return the evaluation result
- * @throws DebugException on failure. Reasons include:
- */
- public String evaluateExpressionToString( String expression ) throws DebugException;
-
- /**
- * Returns whether this stack frame can currently evaluate an expression.
- *
- * @return whether this stack frame can currently evaluate an expression
- */
- boolean canEvaluate();
-}
diff --git a/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/core/model/ICThread.java b/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/core/model/ICThread.java
deleted file mode 100644
index e4ea58baae3..00000000000
--- a/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/core/model/ICThread.java
+++ /dev/null
@@ -1,19 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.core.model;
-
-import org.eclipse.debug.core.model.IThread;
-
-/**
- * C/C++ extension of <code>IThread</code>.
- */
-public interface ICThread extends IThread, ICDebugElement {
-}
diff --git a/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/core/model/ICType.java b/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/core/model/ICType.java
deleted file mode 100644
index 1a645cdc8ca..00000000000
--- a/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/core/model/ICType.java
+++ /dev/null
@@ -1,89 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2005 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.core.model;
-
-/**
- * Represents a type of a varibale.
- * Used by the UI responsible components for variable rendering.
- */
-public interface ICType {
-
- /**
- * Returns the name of this type.
- *
- * @return the name of this type
- */
- String getName();
-
- /**
- * Returns whether this is an array type.
- *
- * @return whether this is an array type
- */
- boolean isArray();
-
- /**
- * Returns the array dimensions for array types,
- * otherwise returns an empty array.
- *
- * @return the array dimensions
- */
- int[] getArrayDimensions();
-
- /**
- * Returns whether this is a structure or a class type.
- *
- * @return whether this is a structure or a class type
- */
- boolean isStructure();
-
- /**
- * Returns whether this is a character type.
- *
- * @return whether this is a character type
- */
- boolean isCharacter();
-
- /**
- * Returns whether this is a floating point type.
- *
- * @return whether this is a floating point type
- */
- boolean isFloatingPointType();
-
- /**
- * Returns whether this is a pointer type.
- *
- * @return whether this is a pointer type
- */
- boolean isPointer();
-
- /**
- * Returns whether this is a reference type.
- *
- * @return whether this is a reference type
- */
- boolean isReference();
-
- /**
- * Returns whether this is an unsigned type.
- *
- * @return whether this is an unsigned type
- */
- boolean isUnsigned();
-
- /**
- * Returns whether this is an integral type.
- *
- * @return whether this is an integral type
- */
- boolean isIntegralType();
-}
diff --git a/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/core/model/ICValue.java b/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/core/model/ICValue.java
deleted file mode 100644
index f94a5531569..00000000000
--- a/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/core/model/ICValue.java
+++ /dev/null
@@ -1,24 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.core.model;
-
-import org.eclipse.debug.core.DebugException;
-import org.eclipse.debug.core.model.IValue;
-
-/**
- * Extends the IValue interface by C/C++ specific functionality.
- */
-public interface ICValue extends IValue, ICDebugElement {
-
- ICType getType() throws DebugException;
-
- String evaluateAsExpression( ICStackFrame frame );
-}
diff --git a/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/core/model/ICVariable.java b/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/core/model/ICVariable.java
deleted file mode 100644
index db1e75e843c..00000000000
--- a/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/core/model/ICVariable.java
+++ /dev/null
@@ -1,44 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.core.model;
-
-import org.eclipse.debug.core.DebugException;
-import org.eclipse.debug.core.model.IValueModification;
-import org.eclipse.debug.core.model.IVariable;
-
-/**
- * C/C++ specific extension <code>IVariable</code>.
- */
-public interface ICVariable extends IVariable, ICDebugElement, IFormatSupport, ICastToArray, IValueModification, IEnableDisableTarget {
-
- /**
- * Returns the type of this variable.
- *
- * @return the type of this variable
- * @throws DebugException
- */
- ICType getType() throws DebugException;
-
- /**
- * Returns whether this variable is an argument.
- *
- * @return whether this variable is an argument
- */
- boolean isArgument();
-
- /**
- * Returns the text presentation of this variable as an expression.
- *
- * @return the text presentation of this variable as an expression
- * @throws DebugException
- */
- public String getExpressionString() throws DebugException;
-}
diff --git a/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/core/model/ICWatchpoint.java b/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/core/model/ICWatchpoint.java
deleted file mode 100644
index f2e63b7345f..00000000000
--- a/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/core/model/ICWatchpoint.java
+++ /dev/null
@@ -1,61 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004, 2005 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.core.model;
-
-import org.eclipse.core.runtime.CoreException;
-import org.eclipse.debug.core.model.ILineBreakpoint;
-
-/**
- * A watchpoint specific to the C/C++ debug model.
- */
-public interface ICWatchpoint extends ICBreakpoint, ILineBreakpoint {
-
- /**
- * Watchpoint attribute storing the expression associated with this
- * watchpoint (value <code>"org.eclipse.cdt.debug.core.expression"</code>).
- * This attribute is a <code>String</code>.
- */
- public static final String EXPRESSION = "org.eclipse.cdt.debug.core.expression"; //$NON-NLS-1$
-
- /**
- * Write access watchpoint attribute (value <code>"org.eclipse.cdt.debug.core.write"</code>).
- * This attribute is a <code>boolean</code>.
- */
- public static final String WRITE = "org.eclipse.cdt.debug.core.write"; //$NON-NLS-1$
-
- /**
- * Read access watchpoint attribute (value <code>"org.eclipse.cdt.debug.core.read"</code>).
- * This attribute is a <code>boolean</code>.
- */
- public static final String READ = "org.eclipse.cdt.debug.core.read"; //$NON-NLS-1$
-
- /**
- * Returns whether this watchppoint is a write watchpoint.
- *
- * @return whether this watchppoint is a write watchpoint
- */
- boolean isWriteType() throws CoreException;
-
- /**
- * Returns whether this watchppoint is a read watchpoint.
- *
- * @return whether this watchppoint is a read watchpoint
- */
- boolean isReadType() throws CoreException;
-
- /**
- * Returns the watchpoint's expression.
- *
- * @return the expression of this watchpoint
- * @throws CDIException if this method fails. Reasons include:
- */
- String getExpression() throws CoreException;
-}
diff --git a/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/core/model/ICastToArray.java b/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/core/model/ICastToArray.java
deleted file mode 100644
index 767981593ba..00000000000
--- a/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/core/model/ICastToArray.java
+++ /dev/null
@@ -1,36 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.core.model;
-
-import org.eclipse.debug.core.DebugException;
-
-/**
- * Provides the ability to present a variable as an array of the same type.
- */
-public interface ICastToArray extends ICastToType {
-
- /**
- * Returns whether this element can be currently casted to array.
- *
- * @return whether this element can be currently casted to array
- */
- boolean canCastToArray();
-
- /**
- * Performs the casting. The element is transformed to the array of the same type.
- *
- * @param startIndex the index of the first element of the array. 0 means that
- * the original element is the first member of the array.
- * @param length tha array size
- * @throws DebugException
- */
- void castToArray( int startIndex, int length ) throws DebugException;
-}
diff --git a/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/core/model/ICastToType.java b/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/core/model/ICastToType.java
deleted file mode 100644
index 083705c100c..00000000000
--- a/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/core/model/ICastToType.java
+++ /dev/null
@@ -1,56 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.core.model;
-
-import org.eclipse.core.runtime.IAdaptable;
-import org.eclipse.debug.core.DebugException;
-
-/**
- * Provides the ability to cast a variable to the given type.
- */
-public interface ICastToType extends IAdaptable {
-
- /**
- * Returns whether this element can currently be casted.
- *
- * @return whether this element can currently be casted
- */
- boolean canCast();
-
- /**
- * Returns the string presentation of the current type.
- *
- * @return the string presentation of the current type
- */
- String getCurrentType();
-
- /**
- * Performs the casting to the given type.
- *
- * @param type a type to cast to.
- * @throws DebugException
- */
- void cast( String type ) throws DebugException;
-
- /**
- * Restores the original type.
- *
- * @throws DebugException
- */
- void restoreOriginal() throws DebugException;
-
- /**
- * Returns whether this element is casted.
- *
- * @return whether this element is casted
- */
- boolean isCasted();
-}
diff --git a/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/core/model/IDebuggerProcessSupport.java b/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/core/model/IDebuggerProcessSupport.java
deleted file mode 100644
index 50b2b20ccdb..00000000000
--- a/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/core/model/IDebuggerProcessSupport.java
+++ /dev/null
@@ -1,25 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.core.model;
-
-/**
- * Provides the functionality to support debugger console.
- *
- * @since: Oct 23, 2002
- */
-public interface IDebuggerProcessSupport
-{
- boolean supportsDebuggerProcess();
-
- boolean isDebuggerProcessDefault();
-
- void setDebuggerProcessDefault( boolean value );
-}
diff --git a/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/core/model/IDisassembly.java b/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/core/model/IDisassembly.java
deleted file mode 100644
index 95c9b60ae10..00000000000
--- a/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/core/model/IDisassembly.java
+++ /dev/null
@@ -1,36 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.core.model;
-
-import org.eclipse.cdt.core.IAddressFactory;
-import org.eclipse.debug.core.DebugException;
-
-/**
- * Represents the disassembly of a debug target.
- */
-public interface IDisassembly extends ICDebugElement {
-
- /**
- * Returns the disassembly block for given stack frame.
- *
- * @param frame the stack frame for which the disassembly is required
- * @return the disassembly block for given stack frame
- * @throws DebugException if this method fails.
- */
- IDisassemblyBlock getDisassemblyBlock( ICStackFrame frame ) throws DebugException;
-
- /**
- * Returns the address factory associated with this element.
- *
- * @return the address factory
- */
- IAddressFactory getAddressFactory();
-}
diff --git a/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/core/model/IDisassemblyBlock.java b/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/core/model/IDisassemblyBlock.java
deleted file mode 100644
index 23413b2f10f..00000000000
--- a/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/core/model/IDisassemblyBlock.java
+++ /dev/null
@@ -1,63 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.core.model;
-
-/**
- * Represents a contiguous segment of disassembly in an execution context.
- */
-public interface IDisassemblyBlock {
-
- /**
- * Returns the parent disassembly object.
- *
- * @return the parent disassembly object
- */
- IDisassembly getDisassembly();
-
- /**
- * Returns the platform-dependent path of the executable associated
- * with this segment.
- *
- * @return the platform-dependent path of the executable
- */
- String getModuleFile();
-
-
- /**
- * Returns the source element (<code>IFile</code> or <code>File></code>)
- * of the source file associated with this segment or null if no source file is associated.
- *
- * @return the source element
- */
- Object getSourceElement();
-
- /**
- * Returns whether this block contains given stack frame.
- *
- * @param frame the stack frame
- * @return whether this block contains given stack frame
- */
- boolean contains( ICStackFrame frame );
-
- /**
- * Return the array of source lines associated with this block.
- *
- * @return the array of source lines associated with this block
- */
- IAsmSourceLine[] getSourceLines();
-
- /**
- * Returns whether this block contains mixed source/disassembly information.
- *
- * @return whether this block contains mixed source/disassembly information
- */
- boolean isMixedMode();
-}
diff --git a/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/core/model/IDummyStackFrame.java b/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/core/model/IDummyStackFrame.java
deleted file mode 100644
index acb557a7364..00000000000
--- a/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/core/model/IDummyStackFrame.java
+++ /dev/null
@@ -1,18 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.core.model;
-
-/**
- * Represents a dummy stack frame used to indicate that the stack depth is greater
- * than the number of displayed frames.
- */
-public interface IDummyStackFrame {
-}
diff --git a/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/core/model/IEnableDisableTarget.java b/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/core/model/IEnableDisableTarget.java
deleted file mode 100644
index 32db5365f71..00000000000
--- a/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/core/model/IEnableDisableTarget.java
+++ /dev/null
@@ -1,42 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.core.model;
-
-import org.eclipse.debug.core.DebugException;
-
-/**
- * Provides support for enable/disable actions.
- */
-public interface IEnableDisableTarget {
-
- /**
- * Returns whether this object supports enable/disable operations.
- *
- * @return whether this object supports enable/disable operations
- */
- boolean canEnableDisable();
-
- /**
- * Returns whether this object is enabled.
- *
- * @return <code>true</code> if this obvject is enabled,
- * or <code>false</code> otherwise.
- */
- boolean isEnabled();
-
- /**
- * Enables/disables this object
- *
- * @param enabled enablement flag value
- * @throws DebugException
- */
- void setEnabled( boolean enabled ) throws DebugException;
-}
diff --git a/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/core/model/IExecFileInfo.java b/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/core/model/IExecFileInfo.java
deleted file mode 100644
index 6b68dc0ffb2..00000000000
--- a/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/core/model/IExecFileInfo.java
+++ /dev/null
@@ -1,26 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.core.model;
-
-import org.eclipse.cdt.core.IBinaryParser.IBinaryObject;
-import org.eclipse.debug.core.DebugException;
-
-/**
- * Provides access to executable file information.
- */
-public interface IExecFileInfo {
-
- public IBinaryObject getExecFile();
-
- public boolean isLittleEndian();
-
- public IGlobalVariableDescriptor[] getGlobals() throws DebugException;
-}
diff --git a/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/core/model/IFormatSupport.java b/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/core/model/IFormatSupport.java
deleted file mode 100644
index 290b9e3f857..00000000000
--- a/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/core/model/IFormatSupport.java
+++ /dev/null
@@ -1,41 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.core.model;
-
-import org.eclipse.debug.core.DebugException;
-
-/**
- * Provides the ability to set and get the format of a variable.
- */
-public interface IFormatSupport {
-
- /**
- * Returns whether this variable supports formatting operations.
- *
- * @return whether this variable supports formatting operations
- */
- boolean supportsFormatting();
-
- /**
- * Returns the current format of this variable.
- *
- * @return the current format of this variable
- */
- CVariableFormat getFormat();
-
- /**
- * Sets the current format of this variable to <code>format</code>.
- *
- * @param format the new format type
- * @throws DebugException if this method fails.
- */
- void changeFormat( CVariableFormat format ) throws DebugException;
-}
diff --git a/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/core/model/IGlobalVariableDescriptor.java b/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/core/model/IGlobalVariableDescriptor.java
deleted file mode 100644
index 2364fbd48ab..00000000000
--- a/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/core/model/IGlobalVariableDescriptor.java
+++ /dev/null
@@ -1,34 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.core.model;
-
-import org.eclipse.core.runtime.IPath;
-
-/**
- * Provides the description of a global variable.
- */
-public interface IGlobalVariableDescriptor {
-
- /**
- * Returns the name of the global variable
- *
- * @return the name of the global variable
- */
- public String getName();
-
- /**
- * Returns the path of the source file that contains
- * the definition of the global variable.
- *
- * @return the path of the source file
- */
- public IPath getPath();
-}
diff --git a/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/core/model/IJumpToAddress.java b/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/core/model/IJumpToAddress.java
deleted file mode 100644
index 657b121df5d..00000000000
--- a/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/core/model/IJumpToAddress.java
+++ /dev/null
@@ -1,34 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.core.model;
-
-import org.eclipse.cdt.core.IAddress;
-import org.eclipse.debug.core.DebugException;
-
-/**
- * Provides the ability to resume a debug target at the given address.
- */
-public interface IJumpToAddress {
-
- /**
- * Returns whether this operation is currently available for this element.
- *
- * @return whether this operation is currently available
- */
- public boolean canJumpToAddress( IAddress address );
-
- /**
- * Causes this element to resume the execution at the specified address.
- *
- * @exception DebugException on failure. Reasons include:
- */
- public void jumpToAddress( IAddress address ) throws DebugException;
-}
diff --git a/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/core/model/IJumpToLine.java b/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/core/model/IJumpToLine.java
deleted file mode 100644
index b6bb95d8c83..00000000000
--- a/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/core/model/IJumpToLine.java
+++ /dev/null
@@ -1,49 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.core.model;
-
-import org.eclipse.core.resources.IFile;
-import org.eclipse.debug.core.DebugException;
-
-/**
- * Provides the ability to resume a debug target at the given line.
- */
-public interface IJumpToLine {
-
- /**
- * Returns whether this operation is currently available for this file and line number.
- *
- * @return whether this operation is currently available
- */
- public boolean canJumpToLine( IFile file, int lineNumber );
-
- /**
- * Causes this element to resume the execution at the specified line.
- *
- * @exception DebugException
- * on failure. Reasons include:
- */
- public void jumpToLine( IFile file, int lineNumber ) throws DebugException;
-
- /**
- * Returns whether this operation is currently available for this file and line number.
- *
- * @return whether this operation is currently available
- */
- public boolean canJumpToLine( String fileName, int lineNumber );
-
- /**
- * Causes this element to resume the execution at the specified line.
- *
- * @exception DebugException on failure. Reasons include:
- */
- public void jumpToLine( String fileName, int lineNumber ) throws DebugException;
-}
diff --git a/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/core/model/IModuleRetrieval.java b/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/core/model/IModuleRetrieval.java
deleted file mode 100644
index 5028253074f..00000000000
--- a/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/core/model/IModuleRetrieval.java
+++ /dev/null
@@ -1,43 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.core.model;
-
-import org.eclipse.debug.core.DebugException;
-
-/**
- * Comment for .
- */
-public interface IModuleRetrieval {
-
- /**
- * Returns whether there are modules currently loaded in this debug target.
- *
- * @return whether there are modules currently loaded in this debug target
- *
- * @throws DebugException
- */
- public boolean hasModules() throws DebugException;
-
- /**
- * Returns the array of the currently loaded modules.
- *
- * @return the array of the currently loaded modules
- * @throws DebugException if this method fails. Reasons include:
- */
- public ICModule[] getModules() throws DebugException;
-
- /**
- * Load symbols for all currently loaded modules.
- *
- * @throws DebugException if this method fails. Reasons include:
- */
- public void loadSymbolsForAllModules() throws DebugException;
-}
diff --git a/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/core/model/IPersistableRegisterGroup.java b/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/core/model/IPersistableRegisterGroup.java
deleted file mode 100644
index 9fb999a3be9..00000000000
--- a/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/core/model/IPersistableRegisterGroup.java
+++ /dev/null
@@ -1,53 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004, 2005 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.core.model;
-
-import org.eclipse.core.runtime.CoreException;
-import org.eclipse.debug.core.model.IRegisterGroup;
-
-/**
- * A register group to be persisted and restored.
- * To be used for the user-defined register groups.
- *
- * @since 3.0
- */
-public interface IPersistableRegisterGroup extends IRegisterGroup {
-
- /**
- * Returns a memento that can be used to reconstruct this group
- *
- * @return a memento that can be used to reconstruct this group
- * @exception CoreException if unable to construct a memento
- */
- public String getMemento() throws CoreException;
-
- /**
- * Initializes this group based on the given memento.
- *
- * @param memento a memento to initialize this group
- * @exception CoreException on failure to initialize
- */
- public void initializeFromMemento( String memento ) throws CoreException;
-
- /**
- * Returns the array of group's register descriptors.
- *
- * @return the array of group's register descriptors
- */
- public IRegisterDescriptor[] getRegisterDescriptors();
-
- /**
- * Replaces the group register descriptors by the specified descriptors.
- *
- * @param the array of register descriptors
- */
- public void setRegisterDescriptors( IRegisterDescriptor[] registerDescriptors );
-}
diff --git a/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/core/model/IRegisterDescriptor.java b/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/core/model/IRegisterDescriptor.java
deleted file mode 100644
index f264efa1369..00000000000
--- a/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/core/model/IRegisterDescriptor.java
+++ /dev/null
@@ -1,33 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004, 2005 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.core.model;
-
-/**
- * Describes a register.
- *
- * @since 3.0
- */
-public interface IRegisterDescriptor {
-
- /**
- * Returns the regiser's name
- *
- * @return the register's name
- */
- public String getName();
-
- /**
- * Returns the name of the hardware register group this register belongs to
- *
- * @return the name of the hardware register group
- */
- public String getGroupName();
-}
diff --git a/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/core/model/IRestart.java b/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/core/model/IRestart.java
deleted file mode 100644
index a6b26e8d464..00000000000
--- a/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/core/model/IRestart.java
+++ /dev/null
@@ -1,35 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.cdt.debug.core.model;
-
-import org.eclipse.debug.core.DebugException;
-/**
- * Provides the ability to restart a debug target.
- *
- */
-public interface IRestart
-{
- /**
- * Returns whether this element can currently be restarted.
- *
- * @return whether this element can currently be restarted
- */
- public boolean canRestart();
-
- /**
- * Causes this element to restart its execution.
- *
- * @exception DebugException on failure. Reasons include:
- */
- public void restart() throws DebugException;
-}
-
diff --git a/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/core/model/IResumeWithoutSignal.java b/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/core/model/IResumeWithoutSignal.java
deleted file mode 100644
index 3aea1d58923..00000000000
--- a/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/core/model/IResumeWithoutSignal.java
+++ /dev/null
@@ -1,38 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.core.model;
-
-import org.eclipse.debug.core.DebugException;
-
-/**
- * Provides the ability to resume execution without giving a signal.
- * This is useful when the program stopped on account of a signal and would
- * ordinary see the signal when resumed.
- *
- * @since: Feb 4, 2003
- */
-public interface IResumeWithoutSignal
-{
- /**
- * Causes this element to resume its execution ignoring a signal.
- * Has no effect on an element that is not suspended because of a signal.
- *
- * @exception DebugException on failure. Reasons include:
- */
- public void resumeWithoutSignal() throws DebugException;
-
- /**
- * Returns whether this element can currently be resumed without signal.
- *
- * @return whether this element can currently be resumed without signal
- */
- boolean canResumeWithoutSignal();
-}
diff --git a/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/core/model/IRunToAddress.java b/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/core/model/IRunToAddress.java
deleted file mode 100644
index 78df0097d97..00000000000
--- a/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/core/model/IRunToAddress.java
+++ /dev/null
@@ -1,34 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.core.model;
-
-import org.eclipse.cdt.core.IAddress;
-import org.eclipse.debug.core.DebugException;
-
-/**
- * Provides the ability to run a debug target to the given address.
- */
-public interface IRunToAddress {
-
- /**
- * Returns whether this operation is currently available for this element.
- *
- * @return whether this operation is currently available
- */
- public boolean canRunToAddress( IAddress address );
-
- /**
- * Causes this element to run to specified address.
- *
- * @exception DebugException on failure. Reasons include:
- */
- public void runToAddress( IAddress address, boolean skipBreakpoints ) throws DebugException;
-}
diff --git a/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/core/model/IRunToLine.java b/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/core/model/IRunToLine.java
deleted file mode 100644
index 2a198857e9f..00000000000
--- a/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/core/model/IRunToLine.java
+++ /dev/null
@@ -1,48 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.core.model;
-
-import org.eclipse.core.resources.IFile;
-import org.eclipse.debug.core.DebugException;
-
-/**
- * Provides the ability to run a debug target to the given line.
- */
-public interface IRunToLine {
-
- /**
- * Returns whether this operation is currently available for this file and line number.
- *
- * @return whether this operation is currently available
- */
- public boolean canRunToLine( IFile file, int lineNumber );
-
- /**
- * Causes this element to run to specified location.
- *
- * @exception DebugException on failure. Reasons include:
- */
- public void runToLine( IFile file, int lineNumber, boolean skipBreakpoints ) throws DebugException;
-
- /**
- * Returns whether this operation is currently available for this file and line number.
- *
- * @return whether this operation is currently available
- */
- public boolean canRunToLine( String fileName, int lineNumber );
-
- /**
- * Causes this element to run to specified location.
- *
- * @exception DebugException on failure. Reasons include:
- */
- public void runToLine( String fileName, int lineNumber, boolean skipBreakpoints ) throws DebugException;
-}
diff --git a/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/core/model/ISteppingModeTarget.java b/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/core/model/ISteppingModeTarget.java
deleted file mode 100644
index ca3f2a1cd85..00000000000
--- a/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/core/model/ISteppingModeTarget.java
+++ /dev/null
@@ -1,40 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.core.model;
-
-/**
- * Support for the instruction stepping mode for a debug target.
- */
-public interface ISteppingModeTarget {
-
- /**
- * Returns whether this debug target supports instruction stepping.
- *
- * @return whether this debug target supports instruction stepping
- */
- boolean supportsInstructionStepping();
-
- /**
- * Sets whether the instruction stepping are enabled in this debug target.
- *
- * @param enabled whether the instruction stepping are enabled in this debug target
- */
- void enableInstructionStepping( boolean enabled );
-
- /**
- * Returns whether the instruction stepping are currently enabled in this
- * debug target.
- *
- * @return whether the instruction stepping are currently enabled in this
- * debug target
- */
- boolean isInstructionSteppingEnabled();
-}
diff --git a/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/core/model/ITargetProperties.java b/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/core/model/ITargetProperties.java
deleted file mode 100644
index c5894ce8858..00000000000
--- a/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/core/model/ITargetProperties.java
+++ /dev/null
@@ -1,37 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.core.model;
-
-import org.eclipse.core.runtime.Preferences;
-
-/**
- * Provides access to the properties of a debug target.
- */
-public interface ITargetProperties {
-
- public static final String PREF_INSTRUCTION_STEPPING_MODE = "instruction_stepping_mode"; //$NON-NLS-1$
-
- /**
- * Adds a property change listener to this target.
- * Has no affect if the identical listener is already registered.
- *
- * @param listener a property change listener
- */
- void addPropertyChangeListener( Preferences.IPropertyChangeListener listener );
-
- /**
- * Removes the given listener from this target.
- * Has no affect if the listener is not registered.
- *
- * @param listener a property change listener
- */
- void removePropertyChangeListener( Preferences.IPropertyChangeListener listener );
-}
diff --git a/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/core/sourcelookup/AbsolutePathSourceContainer.java b/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/core/sourcelookup/AbsolutePathSourceContainer.java
deleted file mode 100644
index e9a937890f5..00000000000
--- a/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/core/sourcelookup/AbsolutePathSourceContainer.java
+++ /dev/null
@@ -1,98 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2006 Nokia and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * Nokia - Initial implementation (159833)
- *******************************************************************************/
-
-package org.eclipse.cdt.debug.core.sourcelookup;
-
-import java.io.File;
-import java.io.IOException;
-
-import org.eclipse.cdt.core.model.CoreModel;
-import org.eclipse.cdt.core.model.ICProject;
-import org.eclipse.cdt.debug.core.CDebugCorePlugin;
-import org.eclipse.cdt.debug.core.ICDTLaunchConfigurationConstants;
-import org.eclipse.cdt.internal.core.model.ExternalTranslationUnit;
-import org.eclipse.core.resources.IFile;
-import org.eclipse.core.resources.ResourcesPlugin;
-import org.eclipse.core.runtime.CoreException;
-import org.eclipse.core.runtime.IPath;
-import org.eclipse.core.runtime.Path;
-import org.eclipse.debug.core.sourcelookup.ISourceContainerType;
-import org.eclipse.debug.core.sourcelookup.containers.AbstractSourceContainer;
-import org.eclipse.debug.core.sourcelookup.containers.LocalFileStorage;
-
-public class AbsolutePathSourceContainer extends AbstractSourceContainer {
- /**
- * Unique identifier for the absolute source container type
- * (value <code>org.eclipse.cdt.debug.core.containerType.absolutePath</code>).
- */
- public static final String TYPE_ID = CDebugCorePlugin.getUniqueIdentifier() + ".containerType.absolutePath"; //$NON-NLS-1$
-
- private Object[] findSourceElementByFile(File file) {
- IFile[] wfiles = ResourcesPlugin.getWorkspace().getRoot().findFilesForLocation(new Path(file.getAbsolutePath()));
- if (wfiles.length > 0)
- return wfiles;
-
- try {
- // Check the canonical path as well to support case insensitive file
- // systems like Windows.
- wfiles = ResourcesPlugin.getWorkspace().getRoot().findFilesForLocation(new Path(file.getCanonicalPath()));
- if (wfiles.length > 0)
- return wfiles;
-
- // The file is not already in the workspace so try to create an external translation unit for it.
- String projectName = getDirector().getLaunchConfiguration().getAttribute(ICDTLaunchConfigurationConstants.ATTR_PROJECT_NAME, "");
- ICProject project = CoreModel.getDefault().getCModel().getCProject(projectName);
- if (project != null)
- {
- IPath path = Path.fromOSString(file.getCanonicalPath());
- String id = CoreModel.getRegistedContentTypeId(project.getProject(), path.lastSegment());
- return new ExternalTranslationUnit[] { new ExternalTranslationUnit(project, new Path(file.getCanonicalPath()), id) };
- }
- } catch (IOException e) { // ignore if getCanonicalPath throws
- } catch (CoreException e) {
- }
-
- // If we can't create an ETU then fall back on LocalFileStorage.
- return new LocalFileStorage[] { new LocalFileStorage(file) };
- }
-
- public boolean isValidAbsoluteFilePath( String name )
- {
- return isValidAbsoluteFilePath( new File(name) );
- }
-
- public boolean isValidAbsoluteFilePath( File file )
- {
- return file.isAbsolute() && file.exists() && file.isFile();
- }
-
- public Object[] findSourceElements( String name ) throws CoreException {
- if ( name != null ) {
- File file = new File( name );
- if ( isValidAbsoluteFilePath(file) ) {
- return findSourceElementByFile( file );
- }
- }
- return new Object[0];
- }
-
- public String getName() {
- return SourceLookupMessages.getString( "AbsolutePathSourceContainer.0" );
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.debug.core.sourcelookup.ISourceContainer#getType()
- */
- public ISourceContainerType getType() {
- return getSourceContainerType( TYPE_ID );
- }
-
-}
diff --git a/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/core/sourcelookup/ICSourceLocation.java b/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/core/sourcelookup/ICSourceLocation.java
deleted file mode 100644
index 1b0293e3baf..00000000000
--- a/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/core/sourcelookup/ICSourceLocation.java
+++ /dev/null
@@ -1,77 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.core.sourcelookup;
-
-import org.eclipse.core.runtime.CoreException;
-import org.eclipse.core.runtime.IAdaptable;
-
-/**
- *
- * A source location defines the location of a repository
- * of source code. A source location is capable of retrieving
- * source elements.
- * <p>
- * For example, a source location could be a project, zip/archive
- * file, or a directory in the file system.
- * </p>
- *
- * @since Sep 23, 2002
- */
-public interface ICSourceLocation extends IAdaptable
-{
- /**
- * Returns an object representing the source code
- * for a file with the specified name, or <code>null</code>
- * if none could be found. The source element
- * returned is implementation specific - for example, a
- * resource, a local file, a zip file entry, etc.
- *
- * @param name the name of the object for which source is being searched for
- *
- * @return source element
- * @exception CoreException if an exception occurs while searching for the specified source element
- */
- Object findSourceElement( String name ) throws CoreException;
-
- /**
- * Returns a memento for this source location from which this
- * source location can be reconstructed.
- *
- * @return a memento for this source location
- * @exception CoreException if unable to create a memento
- */
- String getMemento() throws CoreException;
-
- /**
- * Initializes this source location from the given memento.
- *
- * @param memento a memento generated by this source location
- * @exception CoreException if unable to initialize this source
- * location
- */
- void initializeFrom( String memento ) throws CoreException;
-
- /**
- * Returns whether to search for all source elements, or just the first match.
- *
- * @return whether to search for all source elements, or just the first match
- */
- boolean searchForDuplicateFiles();
-
- /**
- * Sets the value of the 'search for duplicate source files' flag.
- *
- * @param search - a value to set
- */
- void setSearchForDuplicateFiles( boolean search );
-
- void dispose();
-}
diff --git a/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/core/sourcelookup/ICSourceLocator.java b/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/core/sourcelookup/ICSourceLocator.java
deleted file mode 100644
index 58a274189ef..00000000000
--- a/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/core/sourcelookup/ICSourceLocator.java
+++ /dev/null
@@ -1,93 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.core.sourcelookup;
-
-import org.eclipse.core.resources.IProject;
-import org.eclipse.core.resources.IResource;
-import org.eclipse.debug.core.model.ISourceLocator;
-import org.eclipse.debug.core.model.IStackFrame;
-
-/**
- *
- * A C/C++ extension of <code>ISourceLocator</code>.
- * Provides constants and methods to manage different source modes.
- *
- * @since Aug 19, 2002
- */
-public interface ICSourceLocator extends ISourceLocator
-{
- /**
- * Returns the project this source locator is associated with or <code>null</code>.
- *
- * @return project this source locator is associated with or <code>null</code>
- */
- IProject getProject();
-
- /**
- * Returns the line number of the instruction pointer in the specified
- * stack frame that corresponds to a line in an associated source element,
- * or -1 if line number information is unavailable.
- *
- * @param frameInfo the frame data
- * @return line number of instruction pointer in this stack frame,
- * or -1 if line number information is unavailable
- */
- int getLineNumber( IStackFrame stackFrame );
-
- /**
- * Returns the source locations of this locator.
- *
- * @return the source locations of this locator
- */
- ICSourceLocation[] getSourceLocations();
-
- /**
- * Sets the source locations of this locator.
- *
- * @param location - an array of source locations
- */
- void setSourceLocations( ICSourceLocation[] locations );
-
- /**
- * Returns whether this locator is able to locate the given resource.
- *
- * @param resource the resource to locate
- * @return whether this locator is able to locate the given resource
- */
- boolean contains( IResource resource );
-
- /**
- * Returns an object representing the source code
- * for a type with the specified name, or <code>null</code>
- * if none could be found. The source element
- * returned is implementation specific - for example, a
- * resource, a local file, a zip file entry, etc.
- *
- * @param name the name of the object for which source is being searched for
- *
- * @return source element
- */
- Object findSourceElement( String fileName );
-
- /**
- * Returns whether to search for all source elements, or just the first match.
- *
- * @return whether to search for all source elements, or just the first match
- */
- boolean searchForDuplicateFiles();
-
- /**
- * Sets the value of the 'search for duplicate source files' flag.
- *
- * @param search - a value to set
- */
- void setSearchForDuplicateFiles( boolean search );
-}
diff --git a/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/core/sourcelookup/IDirectorySourceLocation.java b/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/core/sourcelookup/IDirectorySourceLocation.java
deleted file mode 100644
index dc37fe20590..00000000000
--- a/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/core/sourcelookup/IDirectorySourceLocation.java
+++ /dev/null
@@ -1,28 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.core.sourcelookup;
-
-import org.eclipse.core.runtime.IPath;
-
-/**
- *
- * Enter type comment.
- *
- * @since Dec 24, 2002
- */
-public interface IDirectorySourceLocation extends ICSourceLocation
-{
- IPath getDirectory();
-
- IPath getAssociation();
-
- boolean searchSubfolders();
-}
diff --git a/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/core/sourcelookup/IProjectSourceLocation.java b/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/core/sourcelookup/IProjectSourceLocation.java
deleted file mode 100644
index 81ce37c5677..00000000000
--- a/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/core/sourcelookup/IProjectSourceLocation.java
+++ /dev/null
@@ -1,26 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.core.sourcelookup;
-
-import org.eclipse.core.resources.IProject;
-
-/**
- *
- * Enter type comment.
- *
- * @since Dec 24, 2002
- */
-public interface IProjectSourceLocation extends ICSourceLocation
-{
- IProject getProject();
-
- boolean isGeneric();
-}
diff --git a/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/core/sourcelookup/ISourceLookupChangeListener.java b/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/core/sourcelookup/ISourceLookupChangeListener.java
deleted file mode 100644
index 680d2e56cee..00000000000
--- a/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/core/sourcelookup/ISourceLookupChangeListener.java
+++ /dev/null
@@ -1,24 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004, 2005 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.core.sourcelookup;
-
-import org.eclipse.debug.core.sourcelookup.ISourceLookupDirector;
-
- /**
- * A source lookup change listener is notified of changes in the source lookup path.
- */
-public interface ISourceLookupChangeListener {
-
- /**
- * Notification that the source lookup containers have changed.
- */
- public void sourceContainersChanged( ISourceLookupDirector director );
-}
diff --git a/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/core/sourcelookup/MappingSourceContainer.java b/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/core/sourcelookup/MappingSourceContainer.java
deleted file mode 100644
index a40da73e633..00000000000
--- a/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/core/sourcelookup/MappingSourceContainer.java
+++ /dev/null
@@ -1,203 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004, 2005 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.core.sourcelookup;
-
-import java.util.ArrayList;
-import java.util.Arrays;
-import java.util.Iterator;
-import java.util.List;
-import org.eclipse.cdt.debug.core.CDebugCorePlugin;
-import org.eclipse.cdt.debug.internal.core.sourcelookup.MapEntrySourceContainer;
-import org.eclipse.core.runtime.CoreException;
-import org.eclipse.core.runtime.IPath;
-import org.eclipse.core.runtime.IStatus;
-import org.eclipse.core.runtime.MultiStatus;
-import org.eclipse.core.runtime.Path;
-import org.eclipse.debug.core.DebugPlugin;
-import org.eclipse.debug.core.sourcelookup.ISourceContainer;
-import org.eclipse.debug.core.sourcelookup.ISourceContainerType;
-import org.eclipse.debug.core.sourcelookup.containers.AbstractSourceContainer;
-
-/**
- * The source container for path mappings.
- */
-public class MappingSourceContainer extends AbstractSourceContainer {
-
- /**
- * Unique identifier for the mapping source container type
- * (value <code>org.eclipse.cdt.debug.core.containerType.mapping</code>).
- */
- public static final String TYPE_ID = CDebugCorePlugin.getUniqueIdentifier() + ".containerType.mapping"; //$NON-NLS-1$
-
- private String fName;
- private ArrayList fContainers;
-
- /**
- * Constructor for MappingSourceContainer.
- */
- public MappingSourceContainer( String name ) {
- fName = name;
- fContainers = new ArrayList();
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.debug.core.sourcelookup.ISourceContainer#getName()
- */
- public String getName() {
- return fName;
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.debug.core.sourcelookup.ISourceContainer#getType()
- */
- public ISourceContainerType getType() {
- return getSourceContainerType( TYPE_ID );
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.debug.internal.core.sourcelookup.ISourceContainer#isComposite()
- */
- public boolean isComposite() {
- return !fContainers.isEmpty();
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.debug.internal.core.sourcelookup.ISourceContainer#findSourceElements(java.lang.String)
- */
- public Object[] findSourceElements( String name ) throws CoreException {
- return findSourceElements( name, getSourceContainers() );
- }
-
- protected Object[] findSourceElements( String name, ISourceContainer[] containers ) throws CoreException {
- List results = null;
- CoreException single = null;
- MultiStatus multiStatus = null;
- if ( isFindDuplicates() ) {
- results = new ArrayList();
- }
- for( int i = 0; i < containers.length; i++ ) {
- ISourceContainer container = containers[i];
- try {
- Object[] objects = container.findSourceElements( name );
- if ( objects.length > 0 ) {
- if ( isFindDuplicates() ) {
- for( int j = 0; j < objects.length; j++ ) {
- results.add( objects[j] );
- }
- }
- else {
- if ( objects.length == 1 ) {
- return objects;
- }
- return new Object[]{ objects[0] };
- }
- }
- }
- catch( CoreException e ) {
- if ( single == null ) {
- single = e;
- }
- else if ( multiStatus == null ) {
- multiStatus = new MultiStatus( DebugPlugin.getUniqueIdentifier(), DebugPlugin.INTERNAL_ERROR, new IStatus[]{ single.getStatus() }, SourceLookupMessages.getString( "MappingSourceContainer.0" ), null ); //$NON-NLS-1$
- multiStatus.add( e.getStatus() );
- }
- else {
- multiStatus.add( e.getStatus() );
- }
- }
- }
- if ( results == null ) {
- if ( multiStatus != null ) {
- throw new CoreException( multiStatus );
- }
- else if ( single != null ) {
- throw single;
- }
- return EMPTY;
- }
- return results.toArray();
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.debug.core.sourcelookup.containers.AbstractSourceContainer#getSourceContainers()
- */
- public ISourceContainer[] getSourceContainers() throws CoreException {
- return (MapEntrySourceContainer[])fContainers.toArray( new MapEntrySourceContainer[fContainers.size()] );
- }
-
- public void addMapEntry( MapEntrySourceContainer entry ) {
- fContainers.add( entry );
- }
-
- public void addMapEntries( MapEntrySourceContainer[] entries ) {
- fContainers.addAll( Arrays.asList( entries ) );
- }
-
- public void removeMapEntry( MapEntrySourceContainer entry ) {
- fContainers.remove( entry );
- }
-
- public void removeMapEntries( MapEntrySourceContainer[] entries ) {
- fContainers.removeAll( Arrays.asList( entries ) );
- }
-
- public void clear() {
- Iterator it = fContainers.iterator();
- while( it.hasNext() ) {
- ((ISourceContainer)it.next()).dispose();
- }
- fContainers.clear();
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.debug.internal.core.sourcelookup.ISourceContainer#dispose()
- */
- public void dispose() {
- super.dispose();
- Iterator it = fContainers.iterator();
- while( it.hasNext() ) {
- ((ISourceContainer)it.next()).dispose();
- }
- fContainers.clear();
- }
-
- public MappingSourceContainer copy() {
- MappingSourceContainer copy = new MappingSourceContainer( fName );
- MapEntrySourceContainer[] entries = new MapEntrySourceContainer[fContainers.size()];
- for ( int i = 0; i < entries.length; ++i ) {
- copy.addMapEntry( ((MapEntrySourceContainer)fContainers.get( i )).copy() );
- }
- return copy;
- }
-
- public void setName( String name ) {
- fName = name;
- }
-
- public IPath getCompilationPath( String sourceName ) {
- IPath path = new Path( sourceName );
- IPath result = null;
- try {
- ISourceContainer[] containers = getSourceContainers();
- for ( int i = 0; i < containers.length; ++i ) {
- MapEntrySourceContainer entry = (MapEntrySourceContainer)containers[i];
- IPath local = entry.getLocalPath();
- if ( local.isPrefixOf( path ) ) {
- result = entry.getBackendPath().append( path.removeFirstSegments( local.segmentCount() ) );
- break;
- }
- }
- }
- catch( CoreException e ) {
- }
- return result;
- }
-}
diff --git a/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/core/sourcelookup/SourceLookupFactory.java b/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/core/sourcelookup/SourceLookupFactory.java
deleted file mode 100644
index 5e0161d9188..00000000000
--- a/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/core/sourcelookup/SourceLookupFactory.java
+++ /dev/null
@@ -1,47 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.cdt.debug.core.sourcelookup;
-
-import org.eclipse.cdt.debug.internal.core.sourcelookup.CDirectorySourceLocation;
-import org.eclipse.cdt.debug.internal.core.sourcelookup.CProjectSourceLocation;
-import org.eclipse.cdt.debug.internal.core.sourcelookup.CSourceLocator;
-import org.eclipse.cdt.debug.internal.core.sourcelookup.CSourceManager;
-import org.eclipse.core.resources.IProject;
-import org.eclipse.core.runtime.IPath;
-
-/**
- * Enter type comment.
- *
- * @since Jul 14, 2003
- */
-public class SourceLookupFactory
-{
- public static IProjectSourceLocation createProjectSourceLocation( IProject project )
- {
- return new CProjectSourceLocation( project );
- }
-
- public static IProjectSourceLocation createProjectSourceLocation( IProject project, boolean generated )
- {
- return new CProjectSourceLocation( project, generated );
- }
-
- public static IDirectorySourceLocation createDirectorySourceLocation( IPath directory, IPath association, boolean searchSubfolders )
- {
- return new CDirectorySourceLocation( directory, association, searchSubfolders );
- }
-
- public static ICSourceLocator createSourceLocator( IProject project )
- {
- return new CSourceManager( new CSourceLocator( project ) );
- }
-}
diff --git a/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/core/sourcelookup/SourceLookupMessages.java b/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/core/sourcelookup/SourceLookupMessages.java
deleted file mode 100644
index 6642ac23e17..00000000000
--- a/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/core/sourcelookup/SourceLookupMessages.java
+++ /dev/null
@@ -1,34 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004, 2005 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.core.sourcelookup;
-
-import java.util.MissingResourceException;
-import java.util.ResourceBundle;
-
-public class SourceLookupMessages {
-
- private static final String BUNDLE_NAME = "org.eclipse.cdt.debug.core.sourcelookup.SourceLookupMessages"; //$NON-NLS-1$
-
- private static final ResourceBundle RESOURCE_BUNDLE = ResourceBundle.getBundle( BUNDLE_NAME );
-
- private SourceLookupMessages() {
- }
-
- public static String getString( String key ) {
- // TODO Auto-generated method stub
- try {
- return RESOURCE_BUNDLE.getString( key );
- }
- catch( MissingResourceException e ) {
- return '!' + key + '!';
- }
- }
-}
diff --git a/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/core/sourcelookup/SourceLookupMessages.properties b/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/core/sourcelookup/SourceLookupMessages.properties
deleted file mode 100644
index 2970d38a840..00000000000
--- a/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/core/sourcelookup/SourceLookupMessages.properties
+++ /dev/null
@@ -1,13 +0,0 @@
-###############################################################################
-# Copyright (c) 2005 QNX Software Systems and others.
-# All rights reserved. This program and the accompanying materials
-# are made available under the terms of the Eclipse Public License v1.0
-# which accompanies this distribution, and is available at
-# http://www.eclipse.org/legal/epl-v10.html
-#
-# Contributors:
-# QNX Software Systems - initial API and implementation
-# Nokia - added support for AbsolutePathSourceContainer
-###############################################################################
-MappingSourceContainer.0=Source lookup error
-AbsolutePathSourceContainer.0=Absolute File Path
diff --git a/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/CBreakpointManager.java b/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/CBreakpointManager.java
deleted file mode 100644
index ad71f8e1d50..00000000000
--- a/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/CBreakpointManager.java
+++ /dev/null
@@ -1,1124 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004, 2007 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- * Matthias Spycher (matthias@coware.com) - patch for bug #112008
- * Ken Ryall (Nokia) - bugs 170027, 105196
- *******************************************************************************/
-package org.eclipse.cdt.debug.internal.core;
-
-import java.io.File;
-import java.io.IOException;
-import java.math.BigInteger;
-import java.util.ArrayList;
-import java.util.Arrays;
-import java.util.HashMap;
-import java.util.Iterator;
-import java.util.List;
-import java.util.Map;
-import java.util.Set;
-import org.eclipse.cdt.core.IAddress;
-import org.eclipse.cdt.core.IAddressFactory;
-import org.eclipse.cdt.debug.core.CDIDebugModel;
-import org.eclipse.cdt.debug.core.CDebugUtils;
-import org.eclipse.cdt.debug.core.cdi.CDIException;
-import org.eclipse.cdt.debug.core.cdi.ICDIAddressLocation;
-import org.eclipse.cdt.debug.core.cdi.ICDICondition;
-import org.eclipse.cdt.debug.core.cdi.ICDIFunctionLocation;
-import org.eclipse.cdt.debug.core.cdi.ICDILineLocation;
-import org.eclipse.cdt.debug.core.cdi.ICDILocator;
-import org.eclipse.cdt.debug.core.cdi.event.ICDIBreakpointMovedEvent;
-import org.eclipse.cdt.debug.core.cdi.event.ICDIBreakpointProblemEvent;
-import org.eclipse.cdt.debug.core.cdi.event.ICDIChangedEvent;
-import org.eclipse.cdt.debug.core.cdi.event.ICDICreatedEvent;
-import org.eclipse.cdt.debug.core.cdi.event.ICDIDestroyedEvent;
-import org.eclipse.cdt.debug.core.cdi.event.ICDIEvent;
-import org.eclipse.cdt.debug.core.cdi.event.ICDIEventListener;
-import org.eclipse.cdt.debug.core.cdi.model.ICDIAddressBreakpoint;
-import org.eclipse.cdt.debug.core.cdi.model.ICDIBreakpoint;
-import org.eclipse.cdt.debug.core.cdi.model.ICDIBreakpointManagement2;
-import org.eclipse.cdt.debug.core.cdi.model.ICDIFunctionBreakpoint;
-import org.eclipse.cdt.debug.core.cdi.model.ICDILineBreakpoint;
-import org.eclipse.cdt.debug.core.cdi.model.ICDILocationBreakpoint;
-import org.eclipse.cdt.debug.core.cdi.model.ICDIObject;
-import org.eclipse.cdt.debug.core.cdi.model.ICDITarget;
-import org.eclipse.cdt.debug.core.cdi.model.ICDITargetConfiguration;
-import org.eclipse.cdt.debug.core.cdi.model.ICDITargetConfiguration2;
-import org.eclipse.cdt.debug.core.cdi.model.ICDIWatchpoint;
-import org.eclipse.cdt.debug.core.model.ICAddressBreakpoint;
-import org.eclipse.cdt.debug.core.model.ICBreakpoint;
-import org.eclipse.cdt.debug.core.model.ICDebugTarget;
-import org.eclipse.cdt.debug.core.model.ICFunctionBreakpoint;
-import org.eclipse.cdt.debug.core.model.ICLineBreakpoint;
-import org.eclipse.cdt.debug.core.model.ICThread;
-import org.eclipse.cdt.debug.core.model.ICWatchpoint;
-import org.eclipse.cdt.debug.core.sourcelookup.ICSourceLocator;
-import org.eclipse.cdt.debug.internal.core.breakpoints.BreakpointProblems;
-import org.eclipse.cdt.debug.internal.core.breakpoints.CBreakpoint;
-import org.eclipse.cdt.debug.internal.core.model.CDebugTarget;
-import org.eclipse.cdt.debug.internal.core.sourcelookup.CSourceLookupDirector;
-import org.eclipse.core.resources.IFile;
-import org.eclipse.core.resources.IMarker;
-import org.eclipse.core.resources.IMarkerDelta;
-import org.eclipse.core.resources.IProject;
-import org.eclipse.core.resources.IResource;
-import org.eclipse.core.resources.IStorage;
-import org.eclipse.core.resources.ResourcesPlugin;
-import org.eclipse.core.runtime.CoreException;
-import org.eclipse.core.runtime.IAdaptable;
-import org.eclipse.core.runtime.IPath;
-import org.eclipse.core.runtime.Path;
-import org.eclipse.debug.core.DebugException;
-import org.eclipse.debug.core.DebugPlugin;
-import org.eclipse.debug.core.IBreakpointManager;
-import org.eclipse.debug.core.IBreakpointManagerListener;
-import org.eclipse.debug.core.IBreakpointsListener;
-import org.eclipse.debug.core.model.IBreakpoint;
-import org.eclipse.debug.core.model.IDebugTarget;
-import org.eclipse.debug.core.model.ISourceLocator;
-import org.eclipse.debug.core.sourcelookup.containers.LocalFileStorage;
-
-public class CBreakpointManager implements IBreakpointsListener, IBreakpointManagerListener, ICDIEventListener, IAdaptable {
-
- static class BreakpointInProgess {
-
- private ICDIBreakpoint fCDIBreakpoint;
-
- void setCDIBreakpoint( ICDIBreakpoint b ) {
- fCDIBreakpoint = b;
- }
-
- ICDIBreakpoint getCDIBreakpoint() {
- return fCDIBreakpoint;
- }
- }
-
- class BreakpointMap {
-
- /**
- * Maps CBreakpoints to CDI breakpoints.
- */
- private HashMap fCBreakpoints;
-
- /**
- * Maps CDI breakpoints to CBreakpoints.
- */
- private HashMap fCDIBreakpoints;
-
- protected BreakpointMap() {
- fCBreakpoints = new HashMap( 10 );
- fCDIBreakpoints = new HashMap( 10 );
- }
-
- void register( ICBreakpoint breakpoint ) {
- fCBreakpoints.put( breakpoint, new BreakpointInProgess() );
- }
-
- void put( ICBreakpoint breakpoint, ICDIBreakpoint cdiBreakpoint ) {
- fCBreakpoints.put( breakpoint, cdiBreakpoint );
- fCDIBreakpoints.put( cdiBreakpoint, breakpoint );
- }
-
- Object get( ICBreakpoint breakpoint ) {
- return fCBreakpoints.get( breakpoint );
- }
-
- ICDIBreakpoint getCDIBreakpoint( ICBreakpoint breakpoint ) {
- Object b = fCBreakpoints.get( breakpoint );
- return ( b instanceof ICDIBreakpoint ) ? (ICDIBreakpoint)b : null;
- }
-
- ICBreakpoint getCBreakpoint( ICDIBreakpoint cdiBreakpoint ) {
- ICBreakpoint breakpoint = (ICBreakpoint)fCDIBreakpoints.get( cdiBreakpoint );
- if ( breakpoint == null ) {
- ICBreakpoint[] bip = getBreakpointsInProgress();
- for ( int i = 0; i < bip.length; ++i ) {
- if ( isSameBreakpoint( bip[i], cdiBreakpoint ) ) {
- breakpoint = bip[i];
- break;
- }
- }
- }
- return breakpoint;
- }
-
- void removeCDIBreakpoint( ICDIBreakpoint cdiBreakpoint ) {
- if ( cdiBreakpoint != null ) {
- ICBreakpoint breakpoint = (ICBreakpoint)fCDIBreakpoints.remove( cdiBreakpoint );
- if ( breakpoint != null )
- fCBreakpoints.remove( breakpoint );
- }
- }
-
- boolean isRegistered( ICBreakpoint breakpoint ) {
- return ( fCBreakpoints.get( breakpoint ) != null );
- }
-
- boolean isInProgress( ICBreakpoint breakpoint ) {
- return ( fCBreakpoints.get( breakpoint ) instanceof BreakpointInProgess );
- }
-
- ICBreakpoint[] getAllCBreakpoints() {
- Set set = fCBreakpoints.keySet();
- return (ICBreakpoint[])set.toArray( new ICBreakpoint[set.size()] );
- }
-
- void dispose() {
- fCBreakpoints.clear();
- fCDIBreakpoints.clear();
- }
-
- private ICBreakpoint[] getBreakpointsInProgress() {
- ArrayList list = new ArrayList();
- Set set = fCBreakpoints.entrySet();
- Iterator it = set.iterator();
- while ( it.hasNext() ) {
- Map.Entry entry = (Map.Entry)it.next();
- if ( entry.getValue() instanceof BreakpointInProgess ) {
- list.add( entry.getKey() );
- }
- }
- return (ICBreakpoint[])list.toArray( new ICBreakpoint[list.size()] );
- }
-
- private boolean isSameBreakpoint( ICBreakpoint breakpoint, ICDIBreakpoint cdiBreakpoint ) {
- try {
- if ( breakpoint instanceof ICFunctionBreakpoint && cdiBreakpoint instanceof ICDIFunctionBreakpoint ) {
- return ( ((ICFunctionBreakpoint)breakpoint).getFunction().compareTo( ((ICDIFunctionBreakpoint)cdiBreakpoint).getLocator().getFunction() ) == 0 );
- }
- if ( breakpoint instanceof ICAddressBreakpoint && cdiBreakpoint instanceof ICDIAddressBreakpoint ) {
- IAddressFactory factory = getDebugTarget().getAddressFactory();
- return factory.createAddress( ((ICAddressBreakpoint)breakpoint).getAddress() ).equals( factory.createAddress( ((ICDIAddressBreakpoint)cdiBreakpoint).getLocator().getAddress() ) );
- }
- if ( breakpoint instanceof ICLineBreakpoint && cdiBreakpoint instanceof ICDILineBreakpoint ) {
- ICDILocator location = ((ICDILineBreakpoint)cdiBreakpoint).getLocator();
- String file = location.getFile();
- String sourceHandle = file;
- if ( !isEmpty( file ) ) {
- Object sourceElement = getSourceElement( file );
- if ( sourceElement instanceof IFile ) {
- sourceHandle = ((IFile)sourceElement).getLocation().toOSString();
- }
- else if ( sourceElement instanceof IStorage ) {
- sourceHandle = ((IStorage)sourceElement).getFullPath().toOSString();
- }
- String bpSourceHandle = ((ICLineBreakpoint)breakpoint).getSourceHandle();
- if ( sourceElement instanceof LocalFileStorage ) { // see bug #112008
- try {
- bpSourceHandle = new File( bpSourceHandle ).getCanonicalPath();
- }
- catch( IOException e ) {
- }
- }
- return sourceHandle.equals( bpSourceHandle ) && location.getLineNumber() == ((ICLineBreakpoint)breakpoint).getLineNumber();
- }
- }
- if ( breakpoint instanceof ICWatchpoint && cdiBreakpoint instanceof ICDIWatchpoint ) {
- try {
- ICWatchpoint watchpoint = (ICWatchpoint)breakpoint;
- ICDIWatchpoint cdiWatchpoint = (ICDIWatchpoint)cdiBreakpoint;
- return ( watchpoint.getExpression().compareTo( cdiWatchpoint.getWatchExpression() ) == 0 &&
- watchpoint.isReadType() == cdiWatchpoint.isReadType() &&
- watchpoint.isWriteType() == cdiWatchpoint.isWriteType() );
- }
- catch( CDIException e ) {
- }
- }
- }
- catch( CoreException e ) {
- }
- return false;
- }
- }
-
- private CDebugTarget fDebugTarget;
-
- private BreakpointMap fMap;
-
- private boolean fSkipBreakpoint = false;
-
- private ArrayList fBreakpointProblems = new ArrayList();
-
- public CBreakpointManager( CDebugTarget target ) {
- super();
- fDebugTarget = target;
- fMap = new BreakpointMap();
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.debug.core.IBreakpointsListener#breakpointsAdded(org.eclipse.debug.core.model.IBreakpoint[])
- */
- public void breakpointsAdded( IBreakpoint[] breakpoints ) {
- if ( !isTargetAvailable() )
- return;
- setBreakpointsOnTarget( breakpoints );
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.debug.core.IBreakpointsListener#breakpointsRemoved(org.eclipse.debug.core.model.IBreakpoint[], org.eclipse.core.resources.IMarkerDelta[])
- */
- public void breakpointsRemoved( IBreakpoint[] breakpoints, IMarkerDelta[] deltas ) {
- if ( !isTargetAvailable() )
- return;
- ArrayList list = new ArrayList( breakpoints.length );
- synchronized( getBreakpointMap() ) {
- for ( int i = 0; i < breakpoints.length; ++i ) {
- if ( breakpoints[i] instanceof ICBreakpoint ) {
- Object obj = getBreakpointMap().get( (ICBreakpoint)breakpoints[i] );
- ICDIBreakpoint b = null;
- if ( obj instanceof ICDIBreakpoint ) {
- b = (ICDIBreakpoint)obj;
- }
- else if ( obj instanceof BreakpointInProgess ) {
- b = ((BreakpointInProgess)obj).getCDIBreakpoint();
- }
- if ( b != null ) {
- list.add( b );
- }
- }
- }
- }
- if ( list.isEmpty() )
- return;
- final ICDIBreakpoint[] cdiBreakpoints = (ICDIBreakpoint[])list.toArray( new ICDIBreakpoint[list.size()] );
- final ICDITarget cdiTarget = getCDITarget();
- DebugPlugin.getDefault().asyncExec( new Runnable() {
- public void run() {
- try {
- cdiTarget.deleteBreakpoints( cdiBreakpoints );
- }
- catch( CDIException e ) {
- }
- }
- } );
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.debug.core.IBreakpointsListener#breakpointsChanged(org.eclipse.debug.core.model.IBreakpoint[], org.eclipse.core.resources.IMarkerDelta[])
- */
- public void breakpointsChanged( IBreakpoint[] breakpoints, IMarkerDelta[] deltas ) {
- ArrayList removeList = new ArrayList( breakpoints.length );
- ArrayList installList = new ArrayList( breakpoints.length );
- synchronized ( getBreakpointMap() ) {
- for ( int i = 0; i < breakpoints.length; ++i ) {
- if ( !(breakpoints[i] instanceof ICBreakpoint) || !isTargetAvailable() )
- continue;
- ICBreakpoint b = (ICBreakpoint)breakpoints[i];
- boolean install = false;
- try {
- ICDebugTarget[] tfs = b.getTargetFilters();
- install = Arrays.asList( tfs ).contains( getDebugTarget() );
- }
- catch( CoreException e ) {
- }
- boolean registered = getBreakpointMap().isRegistered( b );
- boolean inProgress = getBreakpointMap().isInProgress( b );
- if ( registered && !inProgress && !install ) {
- removeList.add( b );
- }
- if ( !registered && install ) {
- installList.add( b );
- }
- }
- }
- breakpointsRemoved( (ICBreakpoint[])removeList.toArray( new ICBreakpoint[removeList.size()] ), new IMarkerDelta[0] );
- breakpointsAdded( (ICBreakpoint[])installList.toArray( new ICBreakpoint[removeList.size()] ) );
- for ( int i = 0; i < breakpoints.length; ++i ) {
- if ( breakpoints[i] instanceof ICBreakpoint && isTargetAvailable() )
- changeBreakpointProperties( (ICBreakpoint)breakpoints[i], deltas[i] );
- }
- }
-
- public void breakpointManagerEnablementChanged( boolean enabled ) {
- doSkipBreakpoints( !enabled );
- }
-
- public void handleDebugEvents( ICDIEvent[] events ) {
- for( int i = 0; i < events.length; i++ ) {
- ICDIEvent event = events[i];
- ICDIObject source = event.getSource();
- if ( source != null && source.getTarget().equals( getDebugTarget().getCDITarget() ) ) {
- if ( event instanceof ICDICreatedEvent ) {
- if ( source instanceof ICDIBreakpoint )
- handleBreakpointCreatedEvent( (ICDIBreakpoint)source );
- }
- else if ( event instanceof ICDIDestroyedEvent ) {
- if ( source instanceof ICDIBreakpoint )
- handleBreakpointDestroyedEvent( (ICDIBreakpoint)source );
- }
- else if ( event instanceof ICDIChangedEvent ) {
- if ( source instanceof ICDIBreakpoint )
- handleBreakpointChangedEvent( (ICDIBreakpoint)source );
- }
- else if ( event instanceof ICDIBreakpointMovedEvent ) {
- if ( source instanceof ICDIBreakpoint )
- handleBreakpointMovedEvent( (ICDIBreakpointMovedEvent) event );
- }
- else if ( event instanceof ICDIBreakpointProblemEvent ) {
- if ( source instanceof ICDIBreakpoint )
- handleBreakpointProblemEvent( (ICDIBreakpointProblemEvent) event );
- }
- }
- }
- }
-
- public Object getAdapter( Class adapter ) {
- if ( CBreakpointManager.class.equals( adapter ) )
- return this;
- if ( CDebugTarget.class.equals( adapter ) )
- return getDebugTarget();
- if ( ICDebugTarget.class.equals( adapter ) )
- return getDebugTarget();
- if ( IDebugTarget.class.equals( adapter ) )
- return getDebugTarget();
- return null;
- }
-
- public CDebugTarget getDebugTarget() {
- return fDebugTarget;
- }
-
- public void initialize() {
- DebugPlugin.getDefault().getBreakpointManager().addBreakpointListener( this );
- DebugPlugin.getDefault().getBreakpointManager().addBreakpointManagerListener( this );
- getDebugTarget().getCDISession().getEventManager().addEventListener( this );
- }
-
- public void dispose() {
- getDebugTarget().getCDISession().getEventManager().removeEventListener( this );
- DebugPlugin.getDefault().getBreakpointManager().removeBreakpointListener( this );
- DebugPlugin.getDefault().getBreakpointManager().removeBreakpointManagerListener( this );
- removeAllBreakpoints();
- getBreakpointMap().dispose();
- }
-
- public IAddress getBreakpointAddress( ICLineBreakpoint breakpoint ) {
- BigInteger address = null;
- synchronized ( getBreakpointMap() ) {
- ICDIBreakpoint cdiBreakpoint = getBreakpointMap().getCDIBreakpoint( breakpoint );
- if ( cdiBreakpoint instanceof ICDILocationBreakpoint ) {
- ICDILocator locator = ((ICDILocationBreakpoint)cdiBreakpoint).getLocator();
- if ( locator != null ) {
- address = locator.getAddress();
- }
- }
- }
- return ( address != null ) ? getDebugTarget().getAddressFactory().createAddress( address ) : null;
- }
-
- public IBreakpoint getBreakpoint( ICDIBreakpoint cdiBreakpoint ) {
- Object b = null;
- synchronized ( getBreakpointMap() ) {
- b = getBreakpointMap().getCBreakpoint( cdiBreakpoint );
- }
- return ( b instanceof IBreakpoint ) ? (IBreakpoint)b : null;
- }
-
- private void handleBreakpointCreatedEvent( ICDIBreakpoint cdiBreakpoint ) {
- if ( cdiBreakpoint instanceof ICDIWatchpoint )
- doHandleWatchpointCreatedEvent( (ICDIWatchpoint)cdiBreakpoint );
- else if ( cdiBreakpoint instanceof ICDILocationBreakpoint )
- doHandleLocationBreakpointCreatedEvent( (ICDILocationBreakpoint)cdiBreakpoint );
- if ( !cdiBreakpoint.isTemporary() && !DebugPlugin.getDefault().getBreakpointManager().isEnabled() ) {
- changeBreakpointPropertiesOnTarget(cdiBreakpoint, new Boolean(false), null);
- }
- }
-
- private void doHandleLocationBreakpointCreatedEvent( ICDILocationBreakpoint cdiBreakpoint ) {
- if ( cdiBreakpoint.isTemporary() )
- return;
- ICBreakpoint breakpoint = null;
- synchronized( getBreakpointMap() ) {
- breakpoint = getBreakpointMap().getCBreakpoint( cdiBreakpoint );
- if ( breakpoint == null ) {
- breakpoint = createLocationBreakpoint( cdiBreakpoint );
- }
- if ( breakpoint != null )
- getBreakpointMap().put( breakpoint, cdiBreakpoint );
- }
-
- if ( breakpoint != null ) {
-// try {
-// if ( breakpoint instanceof ICLineBreakpoint ) {
-// ICDILocator locator = cdiBreakpoint.getLocator();
-// if ( locator != null ) {
-// IAddress address = getDebugTarget().getAddressFactory().createAddress( locator.getAddress() );
-// if ( address != null ) {
-// ((ICLineBreakpoint)breakpoint).setAddress( address.toHexAddressString() );
-// }
-// }
-// }
-// }
-// catch( CoreException e1 ) {
-// }
-
- try {
- BreakpointProblems.removeProblemsForResolvedBreakpoint(breakpoint, getDebugTarget().getInternalID());
- breakpoint.setTargetFilter( getDebugTarget() );
- ((CBreakpoint)breakpoint).register( true );
- }
- catch( CoreException e ) {
- }
- getBreakpointNotifier().breakpointInstalled( getDebugTarget(), breakpoint );
- changeBreakpointProperties( breakpoint, cdiBreakpoint );
- }
- }
-
- private void doHandleWatchpointCreatedEvent( ICDIWatchpoint cdiWatchpoint ) {
- ICBreakpoint breakpoint = null;
- synchronized( getBreakpointMap() ) {
- breakpoint = getBreakpointMap().getCBreakpoint( cdiWatchpoint );
- if ( breakpoint == null ) {
- try {
- breakpoint = createWatchpoint( cdiWatchpoint );
- }
- catch( CDIException e ) {
- }
- catch( CoreException e ) {
- }
- }
- if ( breakpoint != null )
- getBreakpointMap().put( breakpoint, cdiWatchpoint );
- }
-
- if ( breakpoint != null ) {
- try {
- breakpoint.setTargetFilter( getDebugTarget() );
- ((CBreakpoint)breakpoint).register( true );
- }
- catch( CoreException e ) {
- }
- getBreakpointNotifier().breakpointInstalled( getDebugTarget(), breakpoint );
- changeBreakpointProperties( breakpoint, cdiWatchpoint );
- }
- }
-
- private void handleBreakpointMovedEvent( ICDIBreakpointMovedEvent movedEvent )
- {
- ICBreakpoint breakpoint = getBreakpointMap().getCBreakpoint( (ICDIBreakpoint) movedEvent.getSource() );
- if (breakpoint != null)
- {
- try {
- int newLineNumber = movedEvent.getNewLocation().getLineNumber();
- int currLineNumber = breakpoint.getMarker().getAttribute(IMarker.LINE_NUMBER, newLineNumber);
- breakpoint.getMarker().setAttribute(IMarker.LINE_NUMBER, newLineNumber);
- fBreakpointProblems.add(BreakpointProblems.reportBreakpointMoved(
- breakpoint, currLineNumber, newLineNumber, getDebugTarget().getName(), getDebugTarget().getInternalID()));
- } catch (CoreException e) {}
- }
-
- }
-
- private void handleBreakpointProblemEvent( ICDIBreakpointProblemEvent problemEvent )
- {
- ICBreakpoint breakpoint = getBreakpointMap().getCBreakpoint( problemEvent.getBreakpoint() );
- if (breakpoint != null)
- {
- try {
- IMarker marker;
- marker = BreakpointProblems.reportBreakpointProblem(breakpoint, problemEvent.getDescription(),
- problemEvent.getSeverity(), problemEvent.getProblemType(), problemEvent.removeExisting(),
- problemEvent.removeOnly(), getDebugTarget().getName(), getDebugTarget().getInternalID());
- if (marker != null)
- fBreakpointProblems.add(marker);
- } catch (DebugException e) {}
- }
-
- }
-
- private void handleBreakpointChangedEvent( ICDIBreakpoint cdiBreakpoint ) {
- ICBreakpoint breakpoint = getBreakpointMap().getCBreakpoint( cdiBreakpoint );
- if ( breakpoint != null ) {
- Map map = new HashMap( 3 );
- try {
- if ( !fSkipBreakpoint && DebugPlugin.getDefault().getBreakpointManager().isEnabled() ) {
- map.put( IBreakpoint.ENABLED, Boolean.valueOf( cdiBreakpoint.isEnabled() ) );
- }
- else {
- map.put( IBreakpoint.ENABLED, Boolean.valueOf( breakpoint.isEnabled() ) );
- }
- }
- catch( CDIException e ) {
- }
- catch( CoreException e ) {
- }
- try {
- map.put( ICBreakpoint.IGNORE_COUNT, new Integer( cdiBreakpoint.getCondition().getIgnoreCount() ) );
- }
- catch( CDIException e ) {
- }
- try {
- map.put( ICBreakpoint.CONDITION, cdiBreakpoint.getCondition().getExpression() );
- }
- catch( CDIException e ) {
- }
- getBreakpointNotifier().breakpointChanged( getDebugTarget(), breakpoint, map );
- }
- }
-
- private void handleBreakpointDestroyedEvent( ICDIBreakpoint cdiBreakpoint ) {
- ICBreakpoint breakpoint = null;
- synchronized( getBreakpointMap() ) {
- breakpoint = getBreakpointMap().getCBreakpoint( cdiBreakpoint );
- getBreakpointMap().removeCDIBreakpoint( cdiBreakpoint );
- }
- if ( breakpoint != null ) {
- if ( isFilteredByTarget( breakpoint, getDebugTarget() ) ) {
- try {
- breakpoint.removeTargetFilter( getDebugTarget() );
- }
- catch( CoreException e ) {
- }
- }
- try {
- BreakpointProblems.removeProblemsForBreakpoint(breakpoint);
- } catch (CoreException e) {}
- getBreakpointNotifier().breakpointsRemoved( getDebugTarget(), new IBreakpoint[] { breakpoint } );
- }
- }
-
- private BreakpointMap getBreakpointMap() {
- return fMap;
- }
-
- private void removeAllBreakpoints() {
- // Remove all breakpoint problem markers
- for (Iterator iter = fBreakpointProblems.iterator(); iter.hasNext();) {
- IMarker marker = (IMarker) iter.next();
- try {
- marker.delete();
- } catch (CoreException e) {}
- }
- ArrayList list = new ArrayList();
- ICBreakpoint[] breakpoints = new ICBreakpoint[0];
- synchronized( getBreakpointMap() ) {
- breakpoints = getBreakpointMap().getAllCBreakpoints();
- for ( int i = 0; i < breakpoints.length; ++i ) {
- if ( !getBreakpointMap().isInProgress( breakpoints[i] ) )
- list.add( getBreakpointMap().getCDIBreakpoint( breakpoints[i] ) );
- }
- }
- if ( list.isEmpty() )
- return;
- final ICDIBreakpoint[] cdiBreakpoints = (ICDIBreakpoint[])list.toArray( new ICDIBreakpoint[list.size()] );
- final ICDITarget cdiTarget = getCDITarget();
- DebugPlugin.getDefault().asyncExec( new Runnable() {
- public void run() {
- try {
- cdiTarget.deleteBreakpoints( cdiBreakpoints );
- }
- catch( CDIException e ) {
- }
- }
- } );
- getBreakpointNotifier().breakpointsRemoved( getDebugTarget(), breakpoints );
- }
-
- private ICBreakpoint[] register( IBreakpoint[] breakpoints ) {
- ArrayList list = new ArrayList( breakpoints.length );
- synchronized ( getBreakpointMap() ) {
- for ( int i = 0; i < breakpoints.length; ++i ) {
- if ( breakpoints[i] instanceof ICBreakpoint && isTargetBreakpoint( (ICBreakpoint)breakpoints[i] ) && !(getBreakpointMap().isRegistered( (ICBreakpoint)breakpoints[i] )) ) {
- getBreakpointMap().register( (ICBreakpoint)breakpoints[i] );
- list.add( breakpoints[i] );
- }
- }
- }
- return (ICBreakpoint[])list.toArray( new ICBreakpoint[list.size()] );
- }
-
- private void setBreakpointsOnTarget( IBreakpoint[] breakpoints ) {
- final ICBreakpoint[] bkpts = register( breakpoints );
- if ( bkpts.length > 0 ) {
- DebugPlugin.getDefault().asyncExec( new Runnable() {
- public void run() {
- setBreakpointsOnTarget0( bkpts );
- }
- } );
- }
- }
-
- protected void setBreakpointsOnTarget0( ICBreakpoint[] breakpoints ) {
- ICDITarget cdiTarget = getCDITarget();
- ICDIBreakpointManagement2 bpManager2 = null;
- if (cdiTarget instanceof ICDIBreakpointManagement2)
- bpManager2 = (ICDIBreakpointManagement2) cdiTarget;
- for ( int i = 0; i < breakpoints.length; ++i ) {
- try {
- ICDIBreakpoint b = null;
- if ( breakpoints[i] instanceof ICFunctionBreakpoint ) {
- ICFunctionBreakpoint breakpoint = (ICFunctionBreakpoint)breakpoints[i];
- String function = breakpoint.getFunction();
- String fileName = breakpoint.getFileName();
- ICDIFunctionLocation location = cdiTarget.createFunctionLocation( fileName, function );
- ICDICondition condition = createCondition( breakpoint );
- fBreakpointProblems.add(BreakpointProblems.reportUnresolvedBreakpoint(breakpoint, getDebugTarget().getName(), getDebugTarget().getInternalID()));
- if (bpManager2 != null)
- bpManager2.setFunctionBreakpoint( ICDIBreakpoint.REGULAR, location, condition, true, breakpoints[i].isEnabled() );
- else
- b = cdiTarget.setFunctionBreakpoint( ICDIBreakpoint.REGULAR, location, condition, true );
- } else if ( breakpoints[i] instanceof ICAddressBreakpoint ) {
- ICAddressBreakpoint breakpoint = (ICAddressBreakpoint)breakpoints[i];
- String address = breakpoint.getAddress();
- ICDIAddressLocation location = cdiTarget.createAddressLocation( new BigInteger ( ( address.startsWith( "0x" ) ) ? address.substring( 2 ) : address, 16 ) ); //$NON-NLS-1$
- ICDICondition condition = createCondition( breakpoint );
- if (bpManager2 != null)
- bpManager2.setAddressBreakpoint( ICDIBreakpoint.REGULAR, location, condition, true, breakpoints[i].isEnabled() );
- else
- b = cdiTarget.setAddressBreakpoint( ICDIBreakpoint.REGULAR, location, condition, true );
- } else if ( breakpoints[i] instanceof ICLineBreakpoint ) {
- ICLineBreakpoint breakpoint = (ICLineBreakpoint)breakpoints[i];
- String handle = breakpoint.getSourceHandle();
- IPath path = convertPath( handle );
- ICDILineLocation location = cdiTarget.createLineLocation( path.toPortableString(), breakpoint.getLineNumber() );
- ICDICondition condition = createCondition( breakpoint );
- fBreakpointProblems.add(BreakpointProblems.reportUnresolvedBreakpoint(breakpoint, getDebugTarget().getName(), getDebugTarget().getInternalID()));
- if (bpManager2 != null)
- bpManager2.setLineBreakpoint( ICDIBreakpoint.REGULAR, location, condition, true, breakpoints[i].isEnabled() );
- else
- b = cdiTarget.setLineBreakpoint( ICDIBreakpoint.REGULAR, location, condition, true );
- } else if ( breakpoints[i] instanceof ICWatchpoint ) {
- ICWatchpoint watchpoint = (ICWatchpoint)breakpoints[i];
- int accessType = 0;
- accessType |= (watchpoint.isWriteType()) ? ICDIWatchpoint.WRITE : 0;
- accessType |= (watchpoint.isReadType()) ? ICDIWatchpoint.READ : 0;
- String expression = watchpoint.getExpression();
- ICDICondition condition = createCondition( watchpoint );
- if (bpManager2 != null)
- bpManager2.setWatchpoint( ICDIBreakpoint.REGULAR, accessType, expression, condition, breakpoints[i].isEnabled() );
- else
- b = cdiTarget.setWatchpoint( ICDIBreakpoint.REGULAR, accessType, expression, condition );
- }
- if ( b != null ) {
- Object obj = getBreakpointMap().get( breakpoints[i] );
- if ( obj instanceof BreakpointInProgess ) {
- ((BreakpointInProgess)obj).setCDIBreakpoint( b );
- }
- }
- // Hack: see bug 105196: [CDI]: Add "enabled" flag to the "set...Breakpoint" methods
- if (bpManager2 == null && b != null && b.isEnabled() != breakpoints[i].isEnabled() ) {
- b.setEnabled( breakpoints[i].isEnabled() );
- }
- }
- catch( CoreException e ) {
- }
- catch( NumberFormatException e ) {
- }
- catch( CDIException e ) {
- }
- }
- }
-
- protected ICDITarget getCDITarget() {
- return getDebugTarget().getCDITarget();
- }
-
- private ICDICondition createCondition( ICBreakpoint breakpoint ) throws CoreException, CDIException {
- return getCDITarget().createCondition( breakpoint.getIgnoreCount(), breakpoint.getCondition(), getThreadNames( breakpoint ) );
- }
-
- private String[] getThreadNames( ICBreakpoint breakpoint ) {
- try {
- ICThread[] threads = breakpoint.getThreadFilters( getDebugTarget() );
- if ( threads == null )
- return new String[0];
- String[] names = new String[threads.length];
- for ( int i = 0; i < threads.length; ++i ) {
- names[i] = threads[i].getName();
- }
- return names;
- }
- catch( DebugException e ) {
- }
- catch( CoreException e ) {
- }
- return new String[0];
- }
-
- private ICLineBreakpoint createLocationBreakpoint( ICDILocationBreakpoint cdiBreakpoint ) {
- ICLineBreakpoint breakpoint = null;
- try {
- ICDILocator location = cdiBreakpoint.getLocator();
- String file = location.getFile();
- if ( !isEmpty( file ) ) {
- Object sourceElement = getSourceElement( file );
- String sourceHandle = file;
- IResource resource = getProject();
- if ( sourceElement instanceof IFile ) {
- sourceHandle = ((IFile)sourceElement).getLocation().toOSString();
- resource = (IResource)sourceElement;
- }
- else if ( sourceElement instanceof IStorage ) {
- sourceHandle = ((IStorage)sourceElement).getFullPath().toOSString();
- resource = ResourcesPlugin.getWorkspace().getRoot();
- }
- breakpoint = createLineBreakpoint( sourceHandle, resource, cdiBreakpoint );
-// else if ( !isEmpty( cdiBreakpoint.getLocation().getFunction() ) ) {
-// breakpoint = createFunctionBreakpoint( cdiBreakpoint );
-// }
-// else if ( ! cdiBreakpoint.getLocation().getAddress().equals( BigInteger.ZERO ) ) {
-// breakpoint = createAddressBreakpoint( cdiBreakpoint );
-// }
- }
- else if ( !isEmpty( location.getFunction() ) ) {
- breakpoint = createFunctionBreakpoint( cdiBreakpoint );
- }
- else if ( !location.getAddress().equals( BigInteger.ZERO ) ) {
- breakpoint = createAddressBreakpoint( cdiBreakpoint );
- }
- }
- catch( CDIException e ) {
- }
- catch( CoreException e ) {
- }
- return breakpoint;
- }
-
- private ICLineBreakpoint createLineBreakpoint( String sourceHandle, IResource resource, ICDILocationBreakpoint cdiBreakpoint ) throws CDIException, CoreException {
- ICLineBreakpoint breakpoint = CDIDebugModel.createLineBreakpoint( sourceHandle,
- resource,
- cdiBreakpoint.getLocator().getLineNumber(),
- cdiBreakpoint.isEnabled(),
- cdiBreakpoint.getCondition().getIgnoreCount(),
- cdiBreakpoint.getCondition().getExpression(),
- false );
-// ICDILocator locator = cdiBreakpoint.getLocator();
-// if ( locator != null ) {
-// BigInteger address = locator.getAddress();
-// if ( address != null ) {
-// breakpoint.setAddress( address.toString() );
-// }
-// }
- return breakpoint;
- }
-
- private ICFunctionBreakpoint createFunctionBreakpoint( ICDILocationBreakpoint cdiBreakpoint ) throws CDIException, CoreException {
- IPath execFile = getExecFilePath();
- String sourceHandle = execFile.toOSString();
- ICFunctionBreakpoint breakpoint = CDIDebugModel.createFunctionBreakpoint( sourceHandle,
- getProject(),
- cdiBreakpoint.getLocator().getFunction(),
- -1,
- -1,
- -1,
- cdiBreakpoint.isEnabled(),
- cdiBreakpoint.getCondition().getIgnoreCount(),
- cdiBreakpoint.getCondition().getExpression(),
- false );
- return breakpoint;
- }
-
- private ICAddressBreakpoint createAddressBreakpoint( ICDILocationBreakpoint cdiBreakpoint ) throws CDIException, CoreException {
- IPath execFile = getExecFilePath();
- String sourceHandle = execFile.toOSString();
- IAddress address = getDebugTarget().getAddressFactory().createAddress( cdiBreakpoint.getLocator().getAddress() );
- ICAddressBreakpoint breakpoint = CDIDebugModel.createAddressBreakpoint( sourceHandle,
- sourceHandle,
- ResourcesPlugin.getWorkspace().getRoot(),
- address,
- cdiBreakpoint.isEnabled(),
- cdiBreakpoint.getCondition().getIgnoreCount(),
- cdiBreakpoint.getCondition().getExpression(),
- false );
- return breakpoint;
- }
-
- private ICWatchpoint createWatchpoint( ICDIWatchpoint cdiWatchpoint ) throws CDIException, CoreException {
- IPath execFile = getExecFilePath();
- String sourceHandle = execFile.toOSString();
- ICWatchpoint watchpoint = CDIDebugModel.createWatchpoint( sourceHandle,
- getProject(),
- cdiWatchpoint.isWriteType(),
- cdiWatchpoint.isReadType(),
- cdiWatchpoint.getWatchExpression(),
- cdiWatchpoint.isEnabled(),
- cdiWatchpoint.getCondition().getIgnoreCount(),
- cdiWatchpoint.getCondition().getExpression(),
- false );
- return watchpoint;
- }
-
- private void changeBreakpointProperties( ICBreakpoint breakpoint, IMarkerDelta delta ) {
- ICDIBreakpoint cdiBreakpoint = null;
- synchronized( getBreakpointMap() ) {
- if ( !getBreakpointMap().isInProgress( breakpoint ) )
- cdiBreakpoint = getBreakpointMap().getCDIBreakpoint( breakpoint );
- }
- if ( cdiBreakpoint == null )
- return;
- ICDITarget cdiTarget = getCDITarget();
- try {
- boolean enabled = breakpoint.isEnabled();
- boolean oldEnabled = ( delta != null ) ? delta.getAttribute( IBreakpoint.ENABLED, true ) : enabled;
- int ignoreCount = breakpoint.getIgnoreCount();
- int oldIgnoreCount = ( delta != null ) ? delta.getAttribute( ICBreakpoint.IGNORE_COUNT, 0 ) : ignoreCount;
- String condition = breakpoint.getCondition();
- String oldCondition = ( delta != null ) ? delta.getAttribute( ICBreakpoint.CONDITION, "" ) : condition; //$NON-NLS-1$
- String[] newThreadIs = getThreadNames( breakpoint );
- Boolean enabled0 = null;
- ICDICondition condition0 = null;
- if ( enabled != oldEnabled && enabled != cdiBreakpoint.isEnabled() ) {
- enabled0 = Boolean.valueOf( enabled );
- }
- if ( ignoreCount != oldIgnoreCount || condition.compareTo( oldCondition ) != 0 || areThreadFiltersChanged( newThreadIs, cdiBreakpoint ) ) {
- ICDICondition cdiCondition = cdiTarget.createCondition( ignoreCount, condition, newThreadIs );
- if ( !cdiCondition.equals( cdiBreakpoint.getCondition() ) ) {
- condition0 = cdiCondition;
- }
- }
- if ( enabled0 != null || condition0 != null ) {
- changeBreakpointPropertiesOnTarget( cdiBreakpoint, enabled0, condition0 );
- }
- }
- catch( CoreException e ) {
- }
- catch( CDIException e ) {
- }
- }
-
- private void changeBreakpointProperties( ICBreakpoint breakpoint, ICDIBreakpoint cdiBreakpoint ) {
- Boolean enabled = null;
- try {
- if ( cdiBreakpoint.isEnabled() != breakpoint.isEnabled() )
- enabled = Boolean.valueOf( breakpoint.isEnabled() );
- }
- catch( CDIException e ) {
- }
- catch( CoreException e ) {
- }
- ICDICondition condition = null;
- try {
- ICDICondition c = createCondition( breakpoint );
- if ( !cdiBreakpoint.getCondition().equals( c ) )
- condition = c;
- }
- catch( CDIException e ) {
- }
- catch( CoreException e ) {
- }
- if ( enabled != null || condition != null )
- changeBreakpointPropertiesOnTarget( cdiBreakpoint, enabled, condition );
- }
-
- private void changeBreakpointPropertiesOnTarget( final ICDIBreakpoint breakpoint, final Boolean enabled, final ICDICondition condition ) {
- DebugPlugin.getDefault().asyncExec( new Runnable() {
- public void run() {
- if ( enabled != null ) {
- try {
- breakpoint.setEnabled( enabled.booleanValue() );
- }
- catch( CDIException e ) {
- }
- }
- if ( condition != null ) {
- try {
- breakpoint.setCondition( condition );
- }
- catch( CDIException e ) {
- }
- }
- }
- } );
- }
-
- public void setInitialBreakpoints() {
- IBreakpointManager manager = DebugPlugin.getDefault().getBreakpointManager();
- IBreakpoint[] bps = manager.getBreakpoints( CDIDebugModel.getPluginIdentifier() );
-
- ICDITargetConfiguration config = getDebugTarget().getCDITarget().getConfiguration();
-
- if (!(config instanceof ICDITargetConfiguration2) || !((ICDITargetConfiguration2)config).supportsAddressBreaksOnStartup())
- { // Disable address breaks of the target does not support setting them on startup
- for( int i = 0; i < bps.length; i++ ) {
- if ( bps[i] instanceof ICBreakpoint && isTargetBreakpoint( (ICBreakpoint)bps[i] ) && !getBreakpointMap().isRegistered( (ICBreakpoint)bps[i] ) ) {
- if ( bps[i] instanceof ICAddressBreakpoint ) {
- // disable address breakpoints to prevent the debugger to insert them prematurely
- try {
- bps[i].setEnabled( false );
- }
- catch( CoreException e ) {
- }
- }
- }
- }
- }
-
- ICBreakpoint[] breakpoints = register( bps );
- setBreakpointsOnTarget0( breakpoints );
- }
-
- private boolean isTargetBreakpoint( ICBreakpoint breakpoint ) {
- IResource resource = breakpoint.getMarker().getResource();
- if ( breakpoint instanceof ICAddressBreakpoint )
- return supportsAddressBreakpoint( (ICAddressBreakpoint)breakpoint );
- if ( breakpoint instanceof ICLineBreakpoint ) {
- try {
- String handle = breakpoint.getSourceHandle();
- ISourceLocator sl = getSourceLocator();
- if ( sl instanceof ICSourceLocator )
- return ( ((ICSourceLocator)sl).findSourceElement( handle ) != null );
- else if ( sl instanceof CSourceLookupDirector ) {
- return ( ((CSourceLookupDirector)sl).contains( breakpoint ) );
- }
- }
- catch( CoreException e ) {
- return false;
- }
- }
- else {
- IProject project = resource.getProject();
- if ( project != null && project.exists() ) {
- ISourceLocator sl = getSourceLocator();
- if ( sl instanceof ICSourceLocator )
- return ((ICSourceLocator)sl).contains( project );
- else if ( sl instanceof CSourceLookupDirector )
- return ((CSourceLookupDirector)sl).contains( project );
- if ( project.equals( getProject() ) )
- return true;
- return CDebugUtils.isReferencedProject( getProject(), project );
- }
- }
- return true;
- }
-
- public boolean supportsBreakpoint( ICBreakpoint breakpoint ) {
- boolean s = false;
- synchronized( getBreakpointMap() ) {
- s = getBreakpointMap().isRegistered( breakpoint );
- }
- return s;
- }
-
- public boolean supportsAddressBreakpoint( ICAddressBreakpoint breakpoint ) {
- String module = null;
- try {
- module = breakpoint.getModule();
- }
- catch( CoreException e ) {
- }
- if ( module != null )
- return getExecFilePath().toOSString().equals( module );
- // supporting old breakpoints (> 3.0)
- try {
- return getExecFilePath().toOSString().equals( breakpoint.getSourceHandle() );
- }
- catch( CoreException e ) {
- }
- return false;
- }
-
- public void skipBreakpoints( boolean enabled ) {
- if ( fSkipBreakpoint != enabled && (DebugPlugin.getDefault().getBreakpointManager().isEnabled() || !enabled) ) {
- fSkipBreakpoint = enabled;
- doSkipBreakpoints( enabled );
- }
- }
-
- public void watchpointOutOfScope( ICDIWatchpoint cdiWatchpoint ) {
- handleBreakpointDestroyedEvent( cdiWatchpoint );
- }
-
- private void doSkipBreakpoints( boolean enabled ) {
- ICBreakpoint[] cBreakpoints = getBreakpointMap().getAllCBreakpoints();
- for ( int i = 0; i < cBreakpoints.length; ++i ) {
- try {
- if ( cBreakpoints[i].isEnabled() ) {
- ICDIBreakpoint cdiBreakpoint = getBreakpointMap().getCDIBreakpoint( cBreakpoints[i] );
- if ( cdiBreakpoint != null ) {
- cdiBreakpoint.setEnabled( !enabled );
- }
- }
- }
- catch( CoreException e ) {
- // ignore
- }
- catch( CDIException e ) {
- // ignore
- }
- }
- }
-
- private IPath convertPath( String sourceHandle ) {
- IPath path = null;
- if ( Path.EMPTY.isValidPath( sourceHandle ) ) {
- ISourceLocator sl = getSourceLocator();
- if ( sl instanceof CSourceLookupDirector ) {
- path = ((CSourceLookupDirector)sl).getCompilationPath( sourceHandle );
- }
- if ( path == null ) {
- path = new Path( sourceHandle );
- }
- }
- return path;
- }
-
- private IProject getProject() {
- return getDebugTarget().getProject();
- }
-
- private IPath getExecFilePath() {
- return getDebugTarget().getExecFile().getPath();
- }
-
- private ISourceLocator getSourceLocator() {
- return getDebugTarget().getLaunch().getSourceLocator();
- }
-
- protected Object getSourceElement( String file ) {
- Object sourceElement = null;
- ISourceLocator locator = getSourceLocator();
- if ( locator instanceof ICSourceLocator || locator instanceof CSourceLookupDirector ) {
- if ( locator instanceof ICSourceLocator )
- sourceElement = ((ICSourceLocator)locator).findSourceElement( file );
- else
- sourceElement = ((CSourceLookupDirector)locator).getSourceElement( file );
- }
- return sourceElement;
- }
-
- protected boolean isEmpty( String str ) {
- return !( str != null && str.trim().length() > 0 );
- }
-
- private boolean isTargetAvailable() {
- return getDebugTarget().getCDITarget().getConfiguration().supportsBreakpoints() && getDebugTarget().isAvailable();
- }
-
- private CBreakpointNotifier getBreakpointNotifier() {
- return CBreakpointNotifier.getInstance();
- }
-
- private boolean isFilteredByTarget( ICBreakpoint breakpoint, ICDebugTarget target ) {
- boolean result = false;
- try {
- ICDebugTarget[] tfs = breakpoint.getTargetFilters();
- result = Arrays.asList( tfs ).contains( target );
- }
- catch( CoreException e ) {
- // ignore
- }
- return result;
- }
-
- private boolean areThreadFiltersChanged( String[] newIds, ICDIBreakpoint cdiBreakpoint ) {
- try {
- String[] oldIds = cdiBreakpoint.getCondition().getThreadIds();
- if ( oldIds.length != newIds.length )
- return true;
- List list = Arrays.asList( oldIds );
- for ( int i = 0; i < newIds.length; ++i ) {
- if ( !list.contains( newIds[i] ) ) {
- return true;
- }
- }
- }
- catch( CDIException e ) {
- }
- return false;
- }
-}
diff --git a/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/CBreakpointNotifier.java b/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/CBreakpointNotifier.java
deleted file mode 100644
index 5f6b90cd17f..00000000000
--- a/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/CBreakpointNotifier.java
+++ /dev/null
@@ -1,81 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.internal.core;
-
-import java.util.Map;
-import org.eclipse.cdt.debug.core.CDebugCorePlugin;
-import org.eclipse.cdt.debug.core.ICBreakpointListener;
-import org.eclipse.debug.core.model.IBreakpoint;
-import org.eclipse.debug.core.model.IDebugTarget;
-
-public class CBreakpointNotifier implements ICBreakpointListener {
-
- private static CBreakpointNotifier fInstance;
-
- public static CBreakpointNotifier getInstance() {
- if ( fInstance == null ) {
- fInstance = new CBreakpointNotifier();
- }
- return fInstance;
- }
-
- /*
- * (non-Javadoc)
- *
- * @see org.eclipse.cdt.debug.core.ICBreakpointListener#installingBreakpoint(org.eclipse.debug.core.model.IDebugTarget,
- * org.eclipse.debug.core.model.IBreakpoint)
- */
- public boolean installingBreakpoint( IDebugTarget target, IBreakpoint breakpoint ) {
- boolean result = true;
- Object[] listeners = CDebugCorePlugin.getDefault().getCBreakpointListeners();
- for( int i = 0; i < listeners.length; ++i ) {
- if ( !((ICBreakpointListener)listeners[i]).installingBreakpoint( target, breakpoint ) )
- result = false;
- }
- return result;
- }
-
- /*
- * (non-Javadoc)
- *
- * @see org.eclipse.cdt.debug.core.ICBreakpointListener#breakpointInstalled(org.eclipse.debug.core.model.IDebugTarget,
- * org.eclipse.debug.core.model.IBreakpoint)
- */
- public void breakpointInstalled( IDebugTarget target, IBreakpoint breakpoint ) {
- Object[] listeners = CDebugCorePlugin.getDefault().getCBreakpointListeners();
- for( int i = 0; i < listeners.length; ++i )
- ((ICBreakpointListener)listeners[i]).breakpointInstalled( target, breakpoint );
- }
-
- /*
- * (non-Javadoc)
- *
- * @see org.eclipse.cdt.debug.core.ICBreakpointListener#breakpointChanged(org.eclipse.debug.core.model.IDebugTarget,
- * org.eclipse.debug.core.model.IBreakpoint)
- */
- public void breakpointChanged( IDebugTarget target, IBreakpoint breakpoint, Map attributes ) {
- Object[] listeners = CDebugCorePlugin.getDefault().getCBreakpointListeners();
- for( int i = 0; i < listeners.length; ++i )
- ((ICBreakpointListener)listeners[i]).breakpointChanged( target, breakpoint, attributes );
- }
-
- /*
- * (non-Javadoc)
- *
- * @see org.eclipse.cdt.debug.core.ICBreakpointListener#breakpointsRemoved(org.eclipse.debug.core.model.IDebugTarget,
- * org.eclipse.debug.core.model.IBreakpoint[])
- */
- public void breakpointsRemoved( IDebugTarget target, IBreakpoint[] breakpoints ) {
- Object[] listeners = CDebugCorePlugin.getDefault().getCBreakpointListeners();
- for( int i = 0; i < listeners.length; ++i )
- ((ICBreakpointListener)listeners[i]).breakpointsRemoved( target, breakpoints );
- }
-}
diff --git a/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/CDebugAdapter.java b/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/CDebugAdapter.java
deleted file mode 100644
index 258cae377c6..00000000000
--- a/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/CDebugAdapter.java
+++ /dev/null
@@ -1,136 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004, 2005 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.internal.core;
-
-import java.text.DateFormat;
-import java.text.MessageFormat;
-import java.util.Date;
-
-import org.eclipse.cdt.core.CCorePlugin;
-import org.eclipse.cdt.core.IBinaryParser.IBinaryObject;
-import org.eclipse.cdt.core.model.ICProject;
-import org.eclipse.cdt.debug.core.CDebugCorePlugin;
-import org.eclipse.cdt.debug.core.ICDIDebugger;
-import org.eclipse.cdt.debug.core.ICDTLaunchConfigurationConstants;
-import org.eclipse.cdt.debug.core.ICDebugger;
-import org.eclipse.cdt.debug.core.cdi.CDIException;
-import org.eclipse.cdt.debug.core.cdi.ICDISession;
-import org.eclipse.core.resources.IFile;
-import org.eclipse.core.resources.IProject;
-import org.eclipse.core.resources.ResourcesPlugin;
-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.MultiStatus;
-import org.eclipse.core.runtime.Path;
-import org.eclipse.core.runtime.Status;
-import org.eclipse.debug.core.DebugPlugin;
-import org.eclipse.debug.core.ILaunch;
-import org.eclipse.debug.core.ILaunchConfiguration;
-import org.eclipse.debug.core.model.IProcess;
-
-public class CDebugAdapter implements ICDIDebugger {
-
- final ICDebugger fDebugger;
- /**
- * @param debugger
- */
- public CDebugAdapter(ICDebugger debugger) {
- fDebugger = debugger;
- }
-
- /*
- * (non-Javadoc)
- *
- * @see org.eclipse.cdt.debug.core.ICDIDebugger#createDebuggerSession(org.eclipse.debug.core.ILaunch,
- * org.eclipse.cdt.core.IBinaryParser.IBinaryExecutable,
- * org.eclipse.core.runtime.IProgressMonitor)
- */
- public ICDISession createDebuggerSession(ILaunch launch, IBinaryObject exe, IProgressMonitor monitor) throws CoreException {
- ILaunchConfiguration config = launch.getLaunchConfiguration();
- if (exe == null) {
- abort(InternalDebugCoreMessages.getString("CDebugAdapter.Program_file_not_specified"), null, //$NON-NLS-1$
- ICDTLaunchConfigurationConstants.ERR_UNSPECIFIED_PROGRAM);
- }
- IFile[] exeFile = ResourcesPlugin.getWorkspace().getRoot().findFilesForLocation(exe.getPath());
- if (exeFile.length == 0) {
- abort(InternalDebugCoreMessages.getString("CDebugAdapter.0"), null, -1); //$NON-NLS-1$
- }
- int pid = config.getAttribute(ICDTLaunchConfigurationConstants.ATTR_ATTACH_PROCESS_ID, -1);
- String coreFile = config.getAttribute(ICDTLaunchConfigurationConstants.ATTR_COREFILE_PATH, (String)null);
- ICDISession session;
- try {
- if (pid == -1 && coreFile == null) {
- session = fDebugger.createLaunchSession(config, exeFile[0]);
- } else if (pid != -1) {
- session = fDebugger.createAttachSession(config, exeFile[0], pid);
- } else {
- session = fDebugger.createCoreSession(config, exeFile[0], new Path(coreFile));
- }
- Process debugger = session.getSessionProcess();
- if (debugger != null) {
- IProcess debuggerProcess = DebugPlugin.newProcess(launch, debugger, renderDebuggerProcessLabel());
- launch.addProcess(debuggerProcess);
- }
- return session;
- } catch (CDIException e) {
- abort(e.getLocalizedMessage(), e, -1);
- }
- throw new IllegalStateException(); // should never happen
- }
-
- protected String renderDebuggerProcessLabel() {
- String format = "{0} ({1})"; //$NON-NLS-1$
- String timestamp = DateFormat.getInstance().format(new Date(System.currentTimeMillis()));
- String message = InternalDebugCoreMessages.getString("CDebugAdapter.1"); //$NON-NLS-1$
- return MessageFormat.format(format, new String[]{message, timestamp}); //$NON-NLS-1$
- }
-
- protected void abort(String message, Throwable exception, int code) throws CoreException {
- MultiStatus status = new MultiStatus(CDebugCorePlugin.getUniqueIdentifier(), code, message, exception);
- status.add(new Status(IStatus.ERROR, CDebugCorePlugin.getUniqueIdentifier(), code, exception == null ? "" : exception.getLocalizedMessage(), //$NON-NLS-1$
- exception));
- throw new CoreException(status);
- }
-
- public static ICProject getCProject(ILaunchConfiguration configuration) throws CoreException {
- String projectName = getProjectName(configuration);
- if (projectName != null) {
- projectName = projectName.trim();
- if (projectName.length() > 0) {
- IProject project = ResourcesPlugin.getWorkspace().getRoot().getProject(projectName);
- ICProject cProject = CCorePlugin.getDefault().getCoreModel().create(project);
- if (cProject != null && cProject.exists()) {
- return cProject;
- }
- }
- }
- return null;
- }
-
- public static String getProjectName(ILaunchConfiguration configuration) throws CoreException {
- return configuration.getAttribute(ICDTLaunchConfigurationConstants.ATTR_PROJECT_NAME, (String)null);
- }
-
- public static String getProgramName(ILaunchConfiguration configuration) throws CoreException {
- return configuration.getAttribute(ICDTLaunchConfigurationConstants.ATTR_PROGRAM_NAME, (String)null);
- }
-
- public static IPath getProgramPath(ILaunchConfiguration configuration) throws CoreException {
- String path = getProgramName(configuration);
- if (path == null) {
- return null;
- }
- return new Path(path);
- }
-
-}
diff --git a/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/CDebugCorePreferenceInitializer.java b/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/CDebugCorePreferenceInitializer.java
deleted file mode 100644
index 4996aba13db..00000000000
--- a/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/CDebugCorePreferenceInitializer.java
+++ /dev/null
@@ -1,40 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004, 2005 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.internal.core;
-
-import org.eclipse.cdt.debug.core.CDebugCorePlugin;
-import org.eclipse.cdt.debug.core.ICDebugConstants;
-import org.eclipse.cdt.debug.core.cdi.ICDIFormat;
-import org.eclipse.core.runtime.preferences.AbstractPreferenceInitializer;
-
-/**
- * Default preference value initializer for <code>CDebugCorePlugin</code>.
- */
-public class CDebugCorePreferenceInitializer extends AbstractPreferenceInitializer {
-
- /**
- * Constructor for CDebugCorePreferenceInitializer.
- */
- public CDebugCorePreferenceInitializer() {
- super();
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.core.runtime.preferences.AbstractPreferenceInitializer#initializeDefaultPreferences()
- */
- public void initializeDefaultPreferences() {
- CDebugCorePlugin.getDefault().getPluginPreferences().setDefault( ICDebugConstants.PREF_MAX_NUMBER_OF_INSTRUCTIONS, ICDebugConstants.DEF_NUMBER_OF_INSTRUCTIONS );
- CDebugCorePlugin.getDefault().getPluginPreferences().setDefault( ICDebugConstants.PREF_DEFAULT_VARIABLE_FORMAT, ICDIFormat.NATURAL );
- CDebugCorePlugin.getDefault().getPluginPreferences().setDefault( ICDebugConstants.PREF_DEFAULT_EXPRESSION_FORMAT, ICDIFormat.NATURAL );
- CDebugCorePlugin.getDefault().getPluginPreferences().setDefault( ICDebugConstants.PREF_DEFAULT_REGISTER_FORMAT, ICDIFormat.NATURAL );
- CDebugCorePlugin.getDefault().getPluginPreferences().setDefault( ICDebugConstants.PREF_INSTRUCTION_STEP_MODE_ON, false );
- }
-}
diff --git a/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/CGlobalVariableManager.java b/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/CGlobalVariableManager.java
deleted file mode 100644
index 0008922469f..00000000000
--- a/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/CGlobalVariableManager.java
+++ /dev/null
@@ -1,286 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004, 2005 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.internal.core;
-
-import java.io.IOException;
-import java.io.StringReader;
-import java.util.ArrayList;
-import java.util.Arrays;
-import java.util.Iterator;
-import java.util.List;
-import javax.xml.parsers.DocumentBuilder;
-import javax.xml.parsers.DocumentBuilderFactory;
-import javax.xml.parsers.ParserConfigurationException;
-import javax.xml.transform.TransformerException;
-import org.eclipse.cdt.debug.core.CDebugCorePlugin;
-import org.eclipse.cdt.debug.core.CDebugUtils;
-import org.eclipse.cdt.debug.core.ICDTLaunchConfigurationConstants;
-import org.eclipse.cdt.debug.core.ICGlobalVariableManager;
-import org.eclipse.cdt.debug.core.model.ICGlobalVariable;
-import org.eclipse.cdt.debug.core.model.IGlobalVariableDescriptor;
-import org.eclipse.cdt.debug.internal.core.model.CDebugTarget;
-import org.eclipse.cdt.debug.internal.core.model.CVariable;
-import org.eclipse.cdt.debug.internal.core.model.CVariableFactory;
-import org.eclipse.core.runtime.CoreException;
-import org.eclipse.core.runtime.IPath;
-import org.eclipse.core.runtime.IStatus;
-import org.eclipse.core.runtime.MultiStatus;
-import org.eclipse.core.runtime.Path;
-import org.eclipse.core.runtime.Status;
-import org.eclipse.debug.core.DebugEvent;
-import org.eclipse.debug.core.DebugException;
-import org.eclipse.debug.core.DebugPlugin;
-import org.eclipse.debug.core.ILaunchConfiguration;
-import org.eclipse.debug.core.ILaunchConfigurationWorkingCopy;
-import org.w3c.dom.Document;
-import org.w3c.dom.Element;
-import org.w3c.dom.Node;
-import org.w3c.dom.NodeList;
-import org.xml.sax.InputSource;
-import org.xml.sax.SAXException;
-
-/**
- * Manages all global variables registered with a debug target.
- */
-public class CGlobalVariableManager implements ICGlobalVariableManager {
-
- private static final String GLOBAL_VARIABLE_LIST = "globalVariableList"; //$NON-NLS-1$
- private static final String GLOBAL_VARIABLE = "globalVariable"; //$NON-NLS-1$
- private static final String ATTR_GLOBAL_VARIABLE_PATH = "path"; //$NON-NLS-1$
- private static final String ATTR_GLOBAL_VARIABLE_NAME = "name"; //$NON-NLS-1$
-
- private CDebugTarget fDebugTarget;
-
- private IGlobalVariableDescriptor[] fInitialDescriptors = new IGlobalVariableDescriptor[0];
-
- private ArrayList fGlobals;
-
- /**
- * Constructor for CGlobalVariableManager.
- */
- public CGlobalVariableManager( CDebugTarget target ) {
- super();
- setDebugTarget( target );
- initialize();
- }
-
- protected CDebugTarget getDebugTarget() {
- return fDebugTarget;
- }
-
- private void setDebugTarget( CDebugTarget debugTarget ) {
- fDebugTarget = debugTarget;
- }
-
- public ICGlobalVariable[] getGlobals() {
- if ( fGlobals == null ) {
- try {
- addGlobals( getInitialDescriptors() );
- }
- catch( DebugException e ) {
- DebugPlugin.log( e );
- }
- }
- return (ICGlobalVariable[])fGlobals.toArray( new ICGlobalVariable[fGlobals.size()] );
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.cdt.debug.core.ICGlobalVariableManager#addGlobals(IGlobalVariableDescriptor[])
- */
- public void addGlobals( IGlobalVariableDescriptor[] descriptors ) throws DebugException {
- fGlobals = new ArrayList( 10 );
- MultiStatus ms = new MultiStatus( CDebugCorePlugin.getUniqueIdentifier(), 0, "", null ); //$NON-NLS-1$
- ArrayList globals = new ArrayList( descriptors.length );
- for ( int i = 0; i < descriptors.length; ++i ) {
- try {
- globals.add( getDebugTarget().createGlobalVariable( descriptors[i] ) );
- }
- catch( DebugException e ) {
- ms.add( e.getStatus() );
- }
- }
- if ( globals.size() > 0 ) {
- synchronized( fGlobals ) {
- fGlobals.addAll( globals );
- }
- getDebugTarget().fireChangeEvent( DebugEvent.CONTENT );
- }
- if ( !ms.isOK() ) {
- throw new DebugException( ms );
- }
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.cdt.debug.core.ICGlobalVariableManager#removeGlobals(ICGlobalVariable[])
- */
- public void removeGlobals( ICGlobalVariable[] globals ) {
- synchronized( fGlobals ) {
- fGlobals.removeAll( Arrays.asList( globals ) );
- }
- for ( int i = 0; i < globals.length; ++i ) {
- if ( globals[i] instanceof CVariable )
- ((CVariable)globals[i]).dispose();
- }
- getDebugTarget().fireChangeEvent( DebugEvent.CONTENT );
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.cdt.debug.core.ICGlobalVariableManager#removeAllGlobals()
- */
- public void removeAllGlobals() {
- if (fGlobals == null ) {
- return;
- }
-
- ICGlobalVariable[] globals = new ICGlobalVariable[0];
- synchronized( fGlobals ) {
- globals = (ICGlobalVariable[])fGlobals.toArray( new ICGlobalVariable[fGlobals.size()] );
- fGlobals.clear();
- }
- for ( int i = 0; i < globals.length; ++i ) {
- if ( globals[i] instanceof CVariable )
- ((CVariable)globals[i]).dispose();
- }
- getDebugTarget().fireChangeEvent( DebugEvent.CONTENT );
- }
-
- public void dispose() {
- if ( fGlobals != null ) {
- Iterator it = fGlobals.iterator();
- while( it.hasNext() ) {
- ((CVariable)it.next()).dispose();
- }
- fGlobals.clear();
- fGlobals = null;
- }
- }
-
- public String getMemento() {
- Document document = null;
- try {
- document = DocumentBuilderFactory.newInstance().newDocumentBuilder().newDocument();
- Element node = document.createElement( GLOBAL_VARIABLE_LIST );
- document.appendChild( node );
- ICGlobalVariable[] globals = getGlobals();
- for ( int i = 0; i < globals.length; ++i ) {
- IGlobalVariableDescriptor descriptor = globals[i].getDescriptor();
- Element child = document.createElement( GLOBAL_VARIABLE );
- child.setAttribute( ATTR_GLOBAL_VARIABLE_NAME, descriptor.getName() );
- child.setAttribute( ATTR_GLOBAL_VARIABLE_PATH, descriptor.getPath().toOSString() );
- node.appendChild( child );
- }
- return CDebugUtils.serializeDocument( document );
- }
- catch( ParserConfigurationException e ) {
- DebugPlugin.log( e );
- }
- catch( IOException e ) {
- DebugPlugin.log( e );
- }
- catch( TransformerException e ) {
- DebugPlugin.log( e );
- }
- return null;
- }
-
- private void initializeFromMemento( String memento ) throws CoreException {
- Exception ex = null;
- try {
- Element root = null;
- DocumentBuilder parser = DocumentBuilderFactory.newInstance().newDocumentBuilder();
- StringReader reader = new StringReader( memento );
- InputSource source = new InputSource( reader );
- root = parser.parse( source ).getDocumentElement();
- if ( root.getNodeName().equalsIgnoreCase( GLOBAL_VARIABLE_LIST ) ) {
- List descriptors = new ArrayList();
- NodeList list = root.getChildNodes();
- int length = list.getLength();
- for( int i = 0; i < length; ++i ) {
- Node node = list.item( i );
- short type = node.getNodeType();
- if ( type == Node.ELEMENT_NODE ) {
- Element entry = (Element)node;
- if ( entry.getNodeName().equalsIgnoreCase( GLOBAL_VARIABLE ) ) {
- String name = entry.getAttribute( ATTR_GLOBAL_VARIABLE_NAME );
- String pathString = entry.getAttribute( ATTR_GLOBAL_VARIABLE_PATH );
- IPath path = new Path( pathString );
- if ( path.isValidPath( pathString ) ) {
- descriptors.add( CVariableFactory.createGlobalVariableDescriptor( name, path ) );
- }
- }
- }
- }
- fInitialDescriptors = (IGlobalVariableDescriptor[])descriptors.toArray( new IGlobalVariableDescriptor[descriptors.size()] );
- return;
- }
- }
- catch( ParserConfigurationException e ) {
- ex = e;
- }
- catch( SAXException e ) {
- ex = e;
- }
- catch( IOException e ) {
- ex = e;
- }
- abort( InternalDebugCoreMessages.getString( "CGlobalVariableManager.0" ), ex ); //$NON-NLS-1$
- }
-
- private void initialize() {
- ILaunchConfiguration config = getDebugTarget().getLaunch().getLaunchConfiguration();
- try {
- String memento = config.getAttribute( ICDTLaunchConfigurationConstants.ATTR_DEBUGGER_GLOBAL_VARIABLES, "" ); //$NON-NLS-1$
- if ( memento != null && memento.trim().length() != 0 )
- initializeFromMemento( memento );
- }
- catch( CoreException e ) {
- DebugPlugin.log( e );
- }
- }
-
- /**
- * Throws an internal error exception
- */
- private void abort( String message, Throwable e ) throws CoreException {
- IStatus s = new Status( IStatus.ERROR, CDebugCorePlugin.getUniqueIdentifier(), CDebugCorePlugin.INTERNAL_ERROR, message, e );
- throw new CoreException( s );
- }
-
- private IGlobalVariableDescriptor[] getInitialDescriptors() {
- return fInitialDescriptors;
- }
-
- public void save() {
- ILaunchConfiguration config = getDebugTarget().getLaunch().getLaunchConfiguration();
- try {
- ILaunchConfigurationWorkingCopy wc = config.getWorkingCopy();
- wc.setAttribute( ICDTLaunchConfigurationConstants.ATTR_DEBUGGER_GLOBAL_VARIABLES, getMemento() );
- wc.doSave();
- }
- catch( CoreException e ) {
- DebugPlugin.log( e );
- }
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.cdt.debug.core.ICGlobalVariableManager#getDescriptors()
- */
- public IGlobalVariableDescriptor[] getDescriptors() {
- if ( fGlobals == null )
- return getInitialDescriptors();
- IGlobalVariableDescriptor[] result = new IGlobalVariableDescriptor[fGlobals.size()];
- Iterator it = fGlobals.iterator();
- for ( int i = 0; it.hasNext(); ++i ) {
- result[i] = ((ICGlobalVariable)it.next()).getDescriptor();
- }
- return result;
- }
-}
diff --git a/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/CMemoryBlockRetrievalExtension.java b/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/CMemoryBlockRetrievalExtension.java
deleted file mode 100644
index 57ef5b53d08..00000000000
--- a/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/CMemoryBlockRetrievalExtension.java
+++ /dev/null
@@ -1,406 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004, 2005 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.internal.core;
-
-import java.math.BigInteger;
-import java.text.MessageFormat;
-import java.util.ArrayList;
-import java.util.List;
-import org.eclipse.cdt.core.IAddress;
-import org.eclipse.cdt.core.IAddressFactory;
-import org.eclipse.cdt.debug.core.CDebugCorePlugin;
-import org.eclipse.cdt.debug.core.ICDTLaunchConfigurationConstants;
-import org.eclipse.cdt.debug.core.cdi.CDIException;
-import org.eclipse.cdt.debug.core.cdi.model.ICDIExpression;
-import org.eclipse.cdt.debug.core.cdi.model.ICDIMemorySpaceManagement;
-import org.eclipse.cdt.debug.core.cdi.model.ICDITarget;
-import org.eclipse.cdt.debug.core.model.ICType;
-import org.eclipse.cdt.debug.core.model.ICValue;
-import org.eclipse.cdt.debug.internal.core.model.CDebugTarget;
-import org.eclipse.cdt.debug.internal.core.model.CExpression;
-import org.eclipse.cdt.debug.internal.core.model.CMemoryBlockExtension;
-import org.eclipse.cdt.debug.internal.core.model.CStackFrame;
-import org.eclipse.cdt.debug.internal.core.model.CThread;
-import org.eclipse.core.runtime.CoreException;
-import org.eclipse.core.runtime.IStatus;
-import org.eclipse.core.runtime.PlatformObject;
-import org.eclipse.core.runtime.Status;
-import org.eclipse.debug.core.DebugException;
-import org.eclipse.debug.core.DebugPlugin;
-import org.eclipse.debug.core.ILaunchConfiguration;
-import org.eclipse.debug.core.ILaunchConfigurationWorkingCopy;
-import org.eclipse.debug.core.model.IDebugElement;
-import org.eclipse.debug.core.model.IDebugTarget;
-import org.eclipse.debug.core.model.IMemoryBlock;
-import org.eclipse.debug.core.model.IMemoryBlockExtension;
-import org.eclipse.debug.core.model.IMemoryBlockRetrievalExtension;
-import org.eclipse.debug.core.model.IStackFrame;
-import org.eclipse.debug.core.model.IValue;
-import org.w3c.dom.Document;
-import org.w3c.dom.Element;
-import org.w3c.dom.Node;
-import org.w3c.dom.NodeList;
-
-/**
- * Implements the memory retrieval features based on the CDI model.
- */
-public class CMemoryBlockRetrievalExtension extends PlatformObject implements IMemoryBlockRetrievalExtension {
-
- private static final String MEMORY_BLOCK_EXPRESSION_LIST = "memoryBlockExpressionList"; //$NON-NLS-1$
- private static final String MEMORY_BLOCK_EXPRESSION_ITEM = "memoryBlockExpressionItem"; //$NON-NLS-1$
- private static final String MEMORY_BLOCK_EXPRESSION = "expression"; //$NON-NLS-1$
- private static final String MEMORY_BLOCK_MEMSPACEID = "memorySpaceID"; //$NON-NLS-1$
- private static final String ATTR_MEMORY_BLOCK_MEMSPACEID_TEXT = "text"; //$NON-NLS-1$
- private static final String ATTR_MEMORY_BLOCK_EXPRESSION_TEXT = "text"; //$NON-NLS-1$
-
- CDebugTarget fDebugTarget;
-
- /**
- * Constructor for CMemoryBlockRetrievalExtension.
- */
- public CMemoryBlockRetrievalExtension( CDebugTarget debugTarget ) {
- fDebugTarget = debugTarget;
- }
-
- protected CDebugTarget getDebugTarget() {
- return fDebugTarget;
- }
-
- public void initialize() {
- ILaunchConfiguration config = getDebugTarget().getLaunch().getLaunchConfiguration();
- try {
- String memento = config.getAttribute( ICDTLaunchConfigurationConstants.ATTR_DEBUGGER_MEMORY_BLOCKS, "" ); //$NON-NLS-1$
- if ( memento != null && memento.trim().length() != 0 )
- initializeFromMemento( memento );
- }
- catch( CoreException e ) {
- CDebugCorePlugin.log( e );
- }
- }
-
- private void parseMementoExprItem(Element element, List expressions, List memorySpaceIDs) {
- NodeList list = element.getChildNodes();
- int length = list.getLength();
- String exp = null;
- String memorySpaceID = null;
- for( int i = 0; i < length; ++i ) {
- Node node = list.item( i );
- if ( node.getNodeType() == Node.ELEMENT_NODE ) {
- Element entry = (Element)node;
- if ( entry.getNodeName().equalsIgnoreCase( MEMORY_BLOCK_EXPRESSION ) ) {
- exp = entry.getAttribute( ATTR_MEMORY_BLOCK_EXPRESSION_TEXT );
- } else if ( entry.getNodeName().equalsIgnoreCase( MEMORY_BLOCK_MEMSPACEID ) ) {
- memorySpaceID = entry.getAttribute( ATTR_MEMORY_BLOCK_MEMSPACEID_TEXT );
- }
- }
- }
- if (exp != null) {
- expressions.add( exp );
- memorySpaceIDs.add( memorySpaceID );
- }
- }
-
-
- private void initializeFromMemento( String memento ) throws CoreException {
- Element root = DebugPlugin.parseDocument( memento );
- if ( root.getNodeName().equalsIgnoreCase( MEMORY_BLOCK_EXPRESSION_LIST ) ) {
- List expressions = new ArrayList();
- List memorySpaceIDs = new ArrayList();
- NodeList list = root.getChildNodes();
- int length = list.getLength();
- for( int i = 0; i < length; ++i ) {
- Node node = list.item( i );
- if ( node.getNodeType() == Node.ELEMENT_NODE ) {
- Element entry = (Element)node;
- if ( entry.getNodeName().equalsIgnoreCase( MEMORY_BLOCK_EXPRESSION_ITEM ) ) {
- parseMementoExprItem(entry, expressions, memorySpaceIDs);
- }
- }
- }
- createMemoryBlocks( (String[])expressions.toArray( new String[expressions.size()]) ,
- (String[])memorySpaceIDs.toArray( new String[memorySpaceIDs.size()]));
-
- return;
- }
- abort( InternalDebugCoreMessages.getString( "CMemoryBlockRetrievalExtension.3" ), null ); //$NON-NLS-1$
- }
-
- private void createMemoryBlocks( String[] expressions, String[] memorySpaceIDs ) {
- ArrayList list = new ArrayList( expressions.length );
- for ( int i = 0; i < expressions.length; ++i ) {
- IAddress address = getDebugTarget().getAddressFactory().createAddress( expressions[i] );
- if ( address != null ) {
- if (memorySpaceIDs[i] == null) {
- list.add( new CMemoryBlockExtension( getDebugTarget(), address.toHexAddressString(), address.getValue() ) );
- } else {
- list.add( new CMemoryBlockExtension( getDebugTarget(), address.getValue(), memorySpaceIDs[i] ) );
- }
- }
- }
- DebugPlugin.getDefault().getMemoryBlockManager().addMemoryBlocks( (IMemoryBlock[])list.toArray( new IMemoryBlock[list.size()] ) );
- }
-
- public String getMemento() throws CoreException {
- IMemoryBlock[] blocks = DebugPlugin.getDefault().getMemoryBlockManager().getMemoryBlocks( getDebugTarget() );
- Document document = DebugPlugin.newDocument();
- Element exprList = document.createElement( MEMORY_BLOCK_EXPRESSION_LIST );
- for ( int i = 0; i < blocks.length; ++i ) {
- if ( blocks[i] instanceof IMemoryBlockExtension ) {
- IMemoryBlockExtension memBlockExt = (IMemoryBlockExtension)blocks[i];
- Element exprItem = document.createElement( MEMORY_BLOCK_EXPRESSION_ITEM );
- exprList.appendChild(exprItem);
-
- BigInteger addrBigInt = null;
- String memorySpaceID = null;
- if (hasMemorySpaces()) {
- // Can't tell if block was created with a memory-space/address or with an expression.
- // Assume the former and let an exception in the decoding tell us otherwise
- ICDITarget cdiTarget = fDebugTarget.getCDITarget();
- try {
- StringBuffer sbuf = new StringBuffer();
- addrBigInt = ((ICDIMemorySpaceManagement)cdiTarget).stringToAddress(memBlockExt.getExpression(), sbuf);
- if (addrBigInt == null) {
- // Client wants our default decoding; minimum is "<space>:0x?"
- addrBigInt = stringToAddress(memBlockExt.getExpression(), sbuf);
- }
- memorySpaceID = sbuf.toString();
- }
- catch( CDIException e ) { // thrown by CDI client decoding method
- addrBigInt = null;
- }
- catch (CoreException e) {
- addrBigInt = null; // thrown by our decoding method
- }
- }
-
- Element child = document.createElement( MEMORY_BLOCK_EXPRESSION );
- try {
- if (addrBigInt != null && memorySpaceID != null) {
- child.setAttribute( ATTR_MEMORY_BLOCK_EXPRESSION_TEXT, addrBigInt.toString() );
- }
- else {
- child.setAttribute( ATTR_MEMORY_BLOCK_EXPRESSION_TEXT, memBlockExt.getBigBaseAddress().toString() );
- }
- exprItem.appendChild( child );
- }
- catch( DebugException e ) {
- CDebugCorePlugin.log( e.getStatus() );
- }
-
- if (memorySpaceID != null) {
- child = document.createElement( MEMORY_BLOCK_MEMSPACEID );
- child.setAttribute( ATTR_MEMORY_BLOCK_MEMSPACEID_TEXT, memorySpaceID);
- exprItem.appendChild( child );
- }
- }
- }
- document.appendChild( exprList );
- return DebugPlugin.serializeDocument( document );
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.debug.core.model.IMemoryBlockExtensionRetrieval#getExtendedMemoryBlock(java.lang.String, org.eclipse.debug.core.model.IDebugElement)
- */
- public IMemoryBlockExtension getExtendedMemoryBlock( String expression, Object selected ) throws DebugException {
- String address = null;
- CExpression exp = null;
- String msg = null;
- try {
- if (selected instanceof IDebugElement) {
- IDebugElement debugElement = (IDebugElement)selected;
- IDebugTarget target = debugElement.getDebugTarget();
- if (!(target instanceof CDebugTarget)) {
- throw new DebugException( new Status( IStatus.ERROR, CDebugCorePlugin.getUniqueIdentifier(), DebugException.REQUEST_FAILED, msg, null ) );
- }
-
- // See if the expression is a simple numeric value; if it is, we can avoid some costly
- // processing (calling the backend to resolve the expression)
- try {
- IAddressFactory addrFactory = ((CDebugTarget)target).getAddressFactory();
- String hexstr = addrFactory.createAddress(expression).toString(16);
- return new CMemoryBlockExtension((CDebugTarget)target, expression, new BigInteger(hexstr, 16));
- } catch (NumberFormatException nfexc) {
- // OK, expression is not a simple, absolute numeric value; keep trucking and try to resolve as expression
- }
-
- CStackFrame frame = getStackFrame( debugElement );
- if ( frame != null ) {
- // We need to provide a better way for retrieving the address of expression
- ICDIExpression cdiExpression = frame.getCDITarget().createExpression( expression );
- exp = new CExpression( frame, cdiExpression, null );
- IValue value = exp.getValue();
- if ( value instanceof ICValue ) {
- ICType type = ((ICValue)value).getType();
- if ( type != null && (type.isPointer() || type.isIntegralType()) ) {
- address = value.getValueString();
- exp.dispose();
- if ( address != null ) {
- // ???
- BigInteger a = ( address.startsWith( "0x" ) ) ? new BigInteger( address.substring( 2 ), 16 ) : new BigInteger( address ); //$NON-NLS-1$
- return new CMemoryBlockExtension( (CDebugTarget)target, expression, a );
- }
- }
- else {
- msg = MessageFormat.format( InternalDebugCoreMessages.getString( "CMemoryBlockRetrievalExtension.1" ), new String[] { expression } ); //$NON-NLS-1$
- }
- }
- else {
- msg = MessageFormat.format( InternalDebugCoreMessages.getString( "CMemoryBlockRetrievalExtension.2" ), new String[] { expression } ); //$NON-NLS-1$
- }
- }
- }
- }
- catch( CDIException e ) {
- msg = e.getMessage();
- }
- catch( NumberFormatException e ) {
- msg = MessageFormat.format( InternalDebugCoreMessages.getString( "CMemoryBlockRetrievalExtension.0" ), new String[] { expression, address } ); //$NON-NLS-1$
- }
- throw new DebugException( new Status( IStatus.ERROR, CDebugCorePlugin.getUniqueIdentifier(), DebugException.REQUEST_FAILED, msg, null ) );
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.debug.core.model.IMemoryBlockRetrieval#supportsStorageRetrieval()
- */
- public boolean supportsStorageRetrieval() {
- return true;
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.debug.core.model.IMemoryBlockRetrieval#getMemoryBlock(long, long)
- */
- public IMemoryBlock getMemoryBlock( long startAddress, long length ) throws DebugException {
- String expression = Long.toHexString(startAddress);
- BigInteger address = new BigInteger(expression, 16);
- expression = "0x" + expression; //$NON-NLS-1$
- return new CMemoryBlockExtension( getDebugTarget(), expression, address );
- }
-
- /**
- * Variant of getExtendedMemoryBlock that takes a memory space ID. Note that unlike that one,
- * this method is not part of IMemoryBlockRetrievalExtension; it is not exercised by the
- * platform. We invoke it internally in CDT from our hook into the platform's "add memory
- * monitor" action.
- *
- * @param address - a numric address value, hex or decimal. An expression
- * (even something simple like 10000 +1) is not allowed.
- * @param memorySpaceID - identifies the memory space; cannot be null.
- * @param selected - the object selected in the Debug view
- * @return
- * @throws DebugException
- */
- public IMemoryBlockExtension getMemoryBlockWithMemorySpaceID( String address, String memorySpaceID, Object selected ) throws DebugException {
- String msg = null;
- try {
- if (selected instanceof IDebugElement) {
- IDebugElement debugElement = (IDebugElement)selected;
- IDebugTarget target = debugElement.getDebugTarget();
- if ( target instanceof CDebugTarget ) {
- if ( address != null ) {
- BigInteger addr = ( address.startsWith( "0x" ) ) ? new BigInteger( address.substring( 2 ), 16 ) : new BigInteger( address ); //$NON-NLS-1$
- return new CMemoryBlockExtension( (CDebugTarget)target, addr, memorySpaceID );
- }
- }
- }
- }
- catch( NumberFormatException e ) {
- msg = MessageFormat.format( InternalDebugCoreMessages.getString( "CMemoryBlockRetrievalExtension.4" ), new String[] { address } ); //$NON-NLS-1$
- }
- throw new DebugException( new Status( IStatus.ERROR, CDebugCorePlugin.getUniqueIdentifier(), DebugException.REQUEST_FAILED, msg, null ) );
- }
-
- private CStackFrame getStackFrame( IDebugElement selected ) throws DebugException {
- if ( selected instanceof CStackFrame ) {
- return (CStackFrame)selected;
- }
- if ( selected instanceof CThread ) {
- IStackFrame frame = ((CThread)selected).getTopStackFrame();
- if ( frame instanceof CStackFrame )
- return (CStackFrame)frame;
- }
- return null;
- }
-
- public void save() {
- ILaunchConfiguration config = getDebugTarget().getLaunch().getLaunchConfiguration();
- try {
- ILaunchConfigurationWorkingCopy wc = config.getWorkingCopy();
- wc.setAttribute( ICDTLaunchConfigurationConstants.ATTR_DEBUGGER_MEMORY_BLOCKS, getMemento() );
- wc.doSave();
- }
- catch( CoreException e ) {
- CDebugCorePlugin.log( e.getStatus() );
- }
- }
-
- /**
- * Throws an internal error exception
- */
- private void abort( String message, Throwable e ) throws CoreException {
- IStatus s = new Status( IStatus.ERROR, CDebugCorePlugin.getUniqueIdentifier(), CDebugCorePlugin.INTERNAL_ERROR, message, e );
- throw new CoreException( s );
- }
-
- public void dispose() {
- }
-
- /**
- * Checks the CDI backend to see is memory spaces are supported and actually
- * available for the target process.
- *
- * @return true if the backend supports memory spaces
- */
- public boolean hasMemorySpaces() {
- return getMemorySpaces().length > 0;
- }
-
- /**
- * Get the list of available memory spaces from the CDI backend
- *
- * @return an array of memory space identifiers
- */
- public String [] getMemorySpaces() {
- ICDITarget cdiTarget = fDebugTarget.getCDITarget();
- if (cdiTarget instanceof ICDIMemorySpaceManagement)
- return ((ICDIMemorySpaceManagement)cdiTarget).getMemorySpaces();
-
- return new String[0];
- }
-
- /*
- * static implementation of
- * @see org.eclipse.cdt.debug.core.cdi.model.ICDIMemorySpaceManagement#addressToString(java.math.BigInteger, java.lang.String)
- * client may choose not to provide the encoding/decoding and instead use our built-in handling.
- *
- */
- public static String addressToString(BigInteger address, String memorySpaceID) {
- return memorySpaceID + ":0x" + address.toString(16);
- }
-
- /*
- * static implementation of
- * @see org.eclipse.cdt.debug.core.cdi.model.ICDIMemorySpaceManagement#stringToAddr(java.lang.String, java.math.BigInteger, java.lang.StringBuffer)
- * client may choose not to provide the encoding/decoding and instead use our built-in handling.
- */
- public static BigInteger stringToAddress(String str, StringBuffer memorySpaceID_out) throws CoreException {
- int index = str.lastIndexOf(':');
-
- // minimum is "<space>:0x?"
- if (index == -1 || str.length() <= index + 3 || str.charAt(index+1) != '0' || str.charAt(index+2) != 'x') {
- IStatus s = new Status( IStatus.ERROR, CDebugCorePlugin.getUniqueIdentifier(), CDebugCorePlugin.INTERNAL_ERROR, InternalDebugCoreMessages.getString( "CMemoryBlockRetrievalExtension.5" ), null );
- throw new CoreException( s );
- }
-
- memorySpaceID_out.setLength(0);
- memorySpaceID_out.append(str.substring(0, index));
- return new BigInteger(str.substring(index+3), 16);
- }
-}
diff --git a/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/CRegisterManager.java b/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/CRegisterManager.java
deleted file mode 100644
index 6116e505173..00000000000
--- a/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/CRegisterManager.java
+++ /dev/null
@@ -1,348 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2005 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.internal.core;
-
-import java.util.ArrayList;
-import java.util.Arrays;
-import java.util.Collections;
-import java.util.Iterator;
-import java.util.List;
-import org.eclipse.cdt.debug.core.CDebugCorePlugin;
-import org.eclipse.cdt.debug.core.ICDTLaunchConfigurationConstants;
-import org.eclipse.cdt.debug.core.cdi.CDIException;
-import org.eclipse.cdt.debug.core.cdi.model.ICDIRegisterDescriptor;
-import org.eclipse.cdt.debug.core.cdi.model.ICDIRegisterGroup;
-import org.eclipse.cdt.debug.core.model.IPersistableRegisterGroup;
-import org.eclipse.cdt.debug.core.model.IRegisterDescriptor;
-import org.eclipse.cdt.debug.internal.core.model.CDebugTarget;
-import org.eclipse.cdt.debug.internal.core.model.CRegisterDescriptor;
-import org.eclipse.cdt.debug.internal.core.model.CRegisterGroup;
-import org.eclipse.cdt.debug.internal.core.model.CStackFrame;
-import org.eclipse.core.runtime.CoreException;
-import org.eclipse.core.runtime.IStatus;
-import org.eclipse.core.runtime.Status;
-import org.eclipse.debug.core.DebugEvent;
-import org.eclipse.debug.core.DebugException;
-import org.eclipse.debug.core.DebugPlugin;
-import org.eclipse.debug.core.ILaunchConfiguration;
-import org.eclipse.debug.core.ILaunchConfigurationWorkingCopy;
-import org.eclipse.debug.core.model.IRegisterGroup;
-import org.w3c.dom.Document;
-import org.w3c.dom.Element;
-import org.w3c.dom.Node;
-
-/**
- * Manages all register groups in a debug target.
- */
-public class CRegisterManager {
-
- private static final String ELEMENT_REGISTER_GROUP_LIST = "registerGroups"; //$NON-NLS-1$
- private static final String ELEMENT_REGISTER_GROUP = "group"; //$NON-NLS-1$
- private static final String ATTR_REGISTER_GROUP_MEMENTO = "memento"; //$NON-NLS-1$
-
- /**
- * The debug target associated with this manager.
- */
- private CDebugTarget fDebugTarget;
-
- /**
- * Collection of register groups added to this target. Values are of type <code>CRegisterGroup</code>.
- */
- protected List fRegisterGroups;
-
- /**
- * The list of all register descriptors.
- */
- private IRegisterDescriptor[] fRegisterDescriptors;
-
- private boolean fUseDefaultRegisterGroups = true;
-
- private CStackFrame fCurrentFrame;
-
- /**
- * Constructor for CRegisterManager.
- */
- public CRegisterManager( CDebugTarget target ) {
- fDebugTarget = target;
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.core.runtime.IAdaptable#getAdapter(java.lang.Class)
- */
- public Object getAdapter( Class adapter ) {
- if ( CRegisterManager.class.equals( adapter ) )
- return this;
- return null;
- }
-
- public void dispose() {
- DebugPlugin.getDefault().asyncExec(
- new Runnable() {
- public void run() {
- synchronized( fRegisterGroups ) {
- Iterator it = fRegisterGroups.iterator();
- while( it.hasNext() ) {
- ((CRegisterGroup)it.next()).dispose();
- }
- fRegisterGroups.clear();
- }
- }
- } );
- }
-
- public IRegisterDescriptor[] getAllRegisterDescriptors() throws DebugException {
- return fRegisterDescriptors;
- }
-
- public IRegisterGroup[] getRegisterGroups( CStackFrame frame ) throws DebugException {
- IRegisterGroup[] groups = (IRegisterGroup[])fRegisterGroups.toArray( new IRegisterGroup[fRegisterGroups.size()] );
- if ( getCurrentFrame() != frame ) {
- for ( int i = 0; i < groups.length; ++i ) {
- ((CRegisterGroup)groups[i]).resetRegisterValues();
- }
- setCurrentFrame( frame );
- }
- return groups;
- }
-
- public void initialize() {
- ICDIRegisterGroup[] groups = new ICDIRegisterGroup[0];
- try {
- groups = getDebugTarget().getCDITarget().getRegisterGroups();
- }
- catch( CDIException e ) {
- CDebugCorePlugin.log( e );
- }
- List list = new ArrayList();
- for( int i = 0; i < groups.length; ++i ) {
- try {
- ICDIRegisterDescriptor[] cdiDescriptors = groups[i].getRegisterDescriptors();
- for ( int j = 0; j < cdiDescriptors.length; ++j ) {
- list.add( new CRegisterDescriptor( groups[i], cdiDescriptors[j] ) );
- }
- }
- catch( CDIException e ) {
- CDebugCorePlugin.log( e );
- }
- }
- fRegisterDescriptors = (IRegisterDescriptor[])list.toArray( new IRegisterDescriptor[list.size()] );
- createRegisterGroups();
- }
-
- public void addRegisterGroup( final String name, final IRegisterDescriptor[] descriptors ) {
- DebugPlugin.getDefault().asyncExec(
- new Runnable() {
- public void run() {
- fRegisterGroups.add( new CRegisterGroup( getDebugTarget(), name, descriptors ) );
- setUseDefaultRegisterGroups( false );
- getDebugTarget().fireChangeEvent( DebugEvent.CONTENT );
- }
- } );
- }
-
- public void removeAllRegisterGroups() {
- DebugPlugin.getDefault().asyncExec(
- new Runnable() {
- public void run() {
- synchronized( fRegisterGroups ) {
- Iterator it = fRegisterGroups.iterator();
- while( it.hasNext() ) {
- ((CRegisterGroup)it.next()).dispose();
- }
- fRegisterGroups.clear();
- }
- setUseDefaultRegisterGroups( false );
- getDebugTarget().fireChangeEvent( DebugEvent.CONTENT );
- }
- } );
- }
-
- public void removeRegisterGroups( final IRegisterGroup[] groups ) {
- DebugPlugin.getDefault().asyncExec(
- new Runnable() {
- public void run() {
- for ( int i = 0; i < groups.length; ++i ) {
- ((CRegisterGroup)groups[i]).dispose();
- }
- fRegisterGroups.removeAll( Arrays.asList( groups ) );
- setUseDefaultRegisterGroups( false );
- getDebugTarget().fireChangeEvent( DebugEvent.CONTENT );
- }
- } );
- }
-
- public void restoreDefaults() {
- DebugPlugin.getDefault().asyncExec(
- new Runnable() {
- public void run() {
- synchronized( fRegisterGroups ) {
- Iterator it = fRegisterGroups.iterator();
- while( it.hasNext() ) {
- ((CRegisterGroup)it.next()).dispose();
- }
- fRegisterGroups.clear();
- initializeDefaults();
- }
- getDebugTarget().fireChangeEvent( DebugEvent.CONTENT );
- }
- } );
- }
-
- private void createRegisterGroups() {
- fRegisterGroups = Collections.synchronizedList( new ArrayList( 20 ) );
- ILaunchConfiguration config = getDebugTarget().getLaunch().getLaunchConfiguration();
- try {
- String memento = config.getAttribute( ICDTLaunchConfigurationConstants.ATTR_DEBUGGER_REGISTER_GROUPS, "" ); //$NON-NLS-1$
- if ( memento != null && memento.length() > 0 ) {
- initializeFromMemento( memento );
- return;
- }
- }
- catch( CoreException e ) {
- }
- initializeDefaults();
- }
-
- public void targetSuspended() {
- Iterator it = fRegisterGroups.iterator();
- while( it.hasNext() ) {
- ((CRegisterGroup)it.next()).targetSuspended();
- }
- }
-
- protected CDebugTarget getDebugTarget() {
- return fDebugTarget;
- }
-
- private void initializeFromMemento( String memento ) throws CoreException {
- Node node = DebugPlugin.parseDocument( memento );
- if ( node.getNodeType() != Node.ELEMENT_NODE ) {
- abort( InternalDebugCoreMessages.getString( "CRegisterManager.0" ), null ); //$NON-NLS-1$
- }
- Element element = (Element)node;
- if ( !ELEMENT_REGISTER_GROUP_LIST.equals( element.getNodeName() ) ) {
- abort( InternalDebugCoreMessages.getString( "CRegisterManager.1" ), null ); //$NON-NLS-1$
- }
- Node childNode = element.getFirstChild();
- while( childNode != null ) {
- if ( childNode.getNodeType() == Node.ELEMENT_NODE ) {
- Element child = (Element)childNode;
- if ( ELEMENT_REGISTER_GROUP.equals( child.getNodeName() ) ) {
- String groupMemento = child.getAttribute( ATTR_REGISTER_GROUP_MEMENTO );
- CRegisterGroup group = new CRegisterGroup( getDebugTarget() );
- try {
- group.initializeFromMemento( groupMemento );
- doAddRegisterGroup( group );
- }
- catch( CoreException e ) {
- // skip this group
- }
- }
- }
- childNode = childNode.getNextSibling();
- }
- setUseDefaultRegisterGroups( false );
- }
-
- protected void initializeDefaults() {
- setUseDefaultRegisterGroups( true );
- String current = null;
- int startIndex = 0;
- for ( int i = 0; i < fRegisterDescriptors.length; ++i ) {
- CRegisterDescriptor d = (CRegisterDescriptor)fRegisterDescriptors[i];
- if ( current != null && d.getGroupName().compareTo( current ) != 0 ) {
- IRegisterDescriptor[] descriptors = new IRegisterDescriptor[i - startIndex];
- System.arraycopy( fRegisterDescriptors, startIndex, descriptors, 0, descriptors.length );
- fRegisterGroups.add( new CRegisterGroup( getDebugTarget(), current, descriptors ) );
- startIndex = i;
- }
- current = d.getGroupName();
- }
- if ( startIndex < fRegisterDescriptors.length ) {
- IRegisterDescriptor[] descriptors = new IRegisterDescriptor[fRegisterDescriptors.length - startIndex];
- System.arraycopy( fRegisterDescriptors, startIndex, descriptors, 0, descriptors.length );
- fRegisterGroups.add( new CRegisterGroup( getDebugTarget(), current, descriptors ) );
- }
- }
-
- protected synchronized void doAddRegisterGroup( IRegisterGroup group ) {
- fRegisterGroups.add( group );
- }
-
- public void save() {
- ILaunchConfiguration config = getDebugTarget().getLaunch().getLaunchConfiguration();
- try {
- ILaunchConfigurationWorkingCopy wc = config.getWorkingCopy();
- wc.setAttribute( ICDTLaunchConfigurationConstants.ATTR_DEBUGGER_REGISTER_GROUPS, getMemento() );
- wc.doSave();
- }
- catch( CoreException e ) {
- CDebugCorePlugin.log( e );
- }
- }
-
- private String getMemento() throws CoreException {
- if ( useDefaultRegisterGroups() || fRegisterGroups == null )
- return ""; //$NON-NLS-1$
- Document document = DebugPlugin.newDocument();
- Element element = document.createElement( ELEMENT_REGISTER_GROUP_LIST );
- Iterator it = fRegisterGroups.iterator();
- while( it.hasNext() ) {
- CRegisterGroup group = (CRegisterGroup)it.next();
- Element child = document.createElement( ELEMENT_REGISTER_GROUP );
- child.setAttribute( ATTR_REGISTER_GROUP_MEMENTO, group.getMemento() );
- element.appendChild( child );
- }
- document.appendChild( element );
- return DebugPlugin.serializeDocument( document );
- }
-
- private void abort( String message, Throwable exception ) throws CoreException {
- IStatus status = new Status( IStatus.ERROR, CDebugCorePlugin.getUniqueIdentifier(), CDebugCorePlugin.INTERNAL_ERROR, message, exception );
- throw new CoreException( status );
- }
-
- public IRegisterDescriptor findDescriptor( String groupName, String name ) {
- for ( int i = 0; i < fRegisterDescriptors.length; ++i ) {
- IRegisterDescriptor d = fRegisterDescriptors[i];
- if ( groupName.equals( d.getGroupName() ) && name.equals( d.getName() ) )
- return d;
- }
- return null;
- }
-
- public void modifyRegisterGroup( final IPersistableRegisterGroup group, final IRegisterDescriptor[] descriptors ) {
- DebugPlugin.getDefault().asyncExec(
- new Runnable() {
- public void run() {
- group.setRegisterDescriptors( descriptors );
- ((CRegisterGroup)group).fireChangeEvent( DebugEvent.CONTENT );
- }
- } );
-
- }
-
- protected boolean useDefaultRegisterGroups() {
- return fUseDefaultRegisterGroups;
- }
-
- protected void setUseDefaultRegisterGroups( boolean useDefaultRegisterGroups ) {
- fUseDefaultRegisterGroups = useDefaultRegisterGroups;
- }
-
- public CStackFrame getCurrentFrame() {
- return fCurrentFrame;
- }
-
- private void setCurrentFrame( CStackFrame currentFrame ) {
- fCurrentFrame = currentFrame;
- }
-}
diff --git a/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/CSignalManager.java b/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/CSignalManager.java
deleted file mode 100644
index 73d3a563f5c..00000000000
--- a/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/CSignalManager.java
+++ /dev/null
@@ -1,131 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2005 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.internal.core;
-
-import java.util.ArrayList;
-import org.eclipse.cdt.debug.core.CDIDebugModel;
-import org.eclipse.cdt.debug.core.cdi.CDIException;
-import org.eclipse.cdt.debug.core.cdi.model.ICDISignal;
-import org.eclipse.cdt.debug.core.model.ICSignal;
-import org.eclipse.cdt.debug.internal.core.model.CDebugTarget;
-import org.eclipse.cdt.debug.internal.core.model.CSignal;
-import org.eclipse.core.runtime.IAdaptable;
-import org.eclipse.core.runtime.IStatus;
-import org.eclipse.core.runtime.Status;
-import org.eclipse.debug.core.DebugEvent;
-import org.eclipse.debug.core.DebugException;
-
-/**
- * Manages the collection of signals on a debug target.
- */
-public class CSignalManager implements IAdaptable {
-
- /**
- * The debug target associated with this manager.
- */
- private CDebugTarget fDebugTarget;
-
- /**
- * The list of signals.
- */
- private ICSignal[] fSignals = null;
-
- /**
- * The dispose flag.
- */
- private boolean fIsDisposed = false;
-
- /**
- * Constructor for CSignalManager.
- */
- public CSignalManager( CDebugTarget target ) {
- fDebugTarget = target;
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.cdt.debug.core.ICSignalManager#getSignals()
- */
- public ICSignal[] getSignals() throws DebugException {
- if ( !isDisposed() && fSignals == null ) {
- try {
- ICDISignal[] cdiSignals = getDebugTarget().getCDITarget().getSignals();
- ArrayList list = new ArrayList( cdiSignals.length );
- for( int i = 0; i < cdiSignals.length; ++i ) {
- list.add( new CSignal( getDebugTarget(), cdiSignals[i] ) );
- }
- fSignals = (ICSignal[])list.toArray( new ICSignal[list.size()] );
- }
- catch( CDIException e ) {
- throwDebugException( e.getMessage(), DebugException.TARGET_REQUEST_FAILED, e );
- }
- }
- return (fSignals != null) ? fSignals : new ICSignal[0];
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.cdt.debug.internal.core.CUpdateManager#dispose()
- */
- public void dispose() {
- if ( fSignals != null )
- for( int i = 0; i < fSignals.length; ++i ) {
- ((CSignal)fSignals[i]).dispose();
- }
- fSignals = null;
- fIsDisposed = true;
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.core.runtime.IAdaptable#getAdapter(java.lang.Class)
- */
- public Object getAdapter( Class adapter ) {
- if ( adapter.equals( CSignalManager.class ) ) {
- return this;
- }
- if ( adapter.equals( CDebugTarget.class ) ) {
- return getDebugTarget();
- }
- return null;
- }
-
- public void signalChanged( ICDISignal cdiSignal ) {
- CSignal signal = find( cdiSignal );
- if ( signal != null ) {
- signal.fireChangeEvent( DebugEvent.STATE );
- }
- }
-
- private CSignal find( ICDISignal cdiSignal ) {
- try {
- ICSignal[] signals = getSignals();
- for( int i = 0; i < signals.length; ++i )
- if ( signals[i].getName().equals( cdiSignal.getName() ) )
- return (CSignal)signals[i];
- }
- catch( DebugException e ) {
- }
- return null;
- }
-
- protected boolean isDisposed() {
- return fIsDisposed;
- }
-
- /**
- * Throws a debug exception with the given message, error code, and underlying exception.
- */
- protected void throwDebugException( String message, int code, Throwable exception ) throws DebugException {
- throw new DebugException( new Status( IStatus.ERROR, CDIDebugModel.getPluginIdentifier(), code, message, exception ) );
- }
-
- protected CDebugTarget getDebugTarget() {
- return fDebugTarget;
- }
-}
diff --git a/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/DebugConfiguration.java b/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/DebugConfiguration.java
deleted file mode 100644
index 7d824c69eb6..00000000000
--- a/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/DebugConfiguration.java
+++ /dev/null
@@ -1,165 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.internal.core;
-
-import java.util.ArrayList;
-import java.util.HashSet;
-import java.util.List;
-import java.util.Set;
-import java.util.StringTokenizer;
-
-import org.eclipse.cdt.debug.core.CDebugCorePlugin;
-import org.eclipse.cdt.debug.core.ICDIDebugger;
-import org.eclipse.cdt.debug.core.ICDebugConfiguration;
-import org.eclipse.cdt.debug.core.ICDebugger;
-import org.eclipse.cdt.utils.Platform;
-import org.eclipse.core.runtime.CoreException;
-import org.eclipse.core.runtime.IConfigurationElement;
-import org.eclipse.core.runtime.IStatus;
-import org.eclipse.core.runtime.Status;
-
-
-
-public class DebugConfiguration implements ICDebugConfiguration {
- /**
- * The configuration element of the extension.
- */
- private IConfigurationElement fElement;
- private HashSet fModes;
- private HashSet fCPUs;
- private String[] fCoreExt;
-
- public DebugConfiguration(IConfigurationElement element) {
- fElement = element;
- }
-
- private IConfigurationElement getConfigurationElement() {
- return fElement;
- }
-
- public ICDebugger getDebugger() throws CoreException {
- Object debugger = getConfigurationElement().createExecutableExtension("class"); //$NON-NLS-1$
- if (debugger instanceof ICDebugger) {
- return (ICDebugger)debugger;
- }
- throw new CoreException(new Status(IStatus.ERROR, CDebugCorePlugin.getUniqueIdentifier(), -1, InternalDebugCoreMessages.getString("DebugConfiguration.0"), null)); //$NON-NLS-1$
- }
-
- public ICDIDebugger createDebugger() throws CoreException {
- Object debugger = getConfigurationElement().createExecutableExtension("class"); //$NON-NLS-1$
- if (debugger instanceof ICDIDebugger) {
- return (ICDIDebugger)debugger;
- }
- return new CDebugAdapter((ICDebugger)debugger);
- }
-
- public String getName() {
- String name = getConfigurationElement().getAttribute("name"); //$NON-NLS-1$
- return name != null ? name : ""; //$NON-NLS-1$
- }
-
- public String getID() {
- return getConfigurationElement().getAttribute("id"); //$NON-NLS-1$
- }
-
- public String getPlatform() {
- String platform = getConfigurationElement().getAttribute("platform"); //$NON-NLS-1$
- if (platform == null) {
- return "*"; //$NON-NLS-1$
- }
- return platform;
- }
-
- public String[] getCPUList() {
- return (String[]) getCPUs().toArray(new String[0]);
- }
-
- public String[] getModeList() {
- return (String[]) getModes().toArray(new String[0]);
- }
-
- public boolean supportsMode(String mode) {
- return getModes().contains(mode);
- }
-
- public boolean supportsCPU(String cpu) {
- String nativeCPU = Platform.getOSArch();
- boolean ret = false;
- if ( nativeCPU.startsWith(cpu) ||
- nativeCPU.equalsIgnoreCase("powerpc") && cpu.equalsIgnoreCase("ppc")) {
- ret = getCPUs().contains(CPU_NATIVE);
- }
- return ret || getCPUs().contains(cpu) || getCPUs().contains("*"); //$NON-NLS-1$
- }
- /**
- * Returns the set of modes specified in the configuration data.
- *
- * @return the set of modes specified in the configuration data
- */
- protected Set getModes() {
- if (fModes == null) {
- String modes = getConfigurationElement().getAttribute("modes"); //$NON-NLS-1$
- if (modes == null) {
- return new HashSet(0);
- }
- StringTokenizer tokenizer = new StringTokenizer(modes, ","); //$NON-NLS-1$
- fModes = new HashSet(tokenizer.countTokens());
- while (tokenizer.hasMoreTokens()) {
- fModes.add(tokenizer.nextToken().trim());
- }
- }
- return fModes;
- }
-
- protected Set getCPUs() {
- if (fCPUs == null) {
- String cpus = getConfigurationElement().getAttribute("cpu"); //$NON-NLS-1$
- if (cpus == null) {
- fCPUs = new HashSet(1);
- fCPUs.add(CPU_NATIVE);
- }
- else {
- String nativeCPU = Platform.getOSArch();
- StringTokenizer tokenizer = new StringTokenizer(cpus, ","); //$NON-NLS-1$
- fCPUs = new HashSet(tokenizer.countTokens());
- while (tokenizer.hasMoreTokens()) {
- String cpu = tokenizer.nextToken().trim();
- fCPUs.add(cpu);
- if (nativeCPU.startsWith(cpu)) { // os arch be cpu{le/be}
- fCPUs.add(CPU_NATIVE);
- }
- }
- }
- }
- return fCPUs;
- }
-
-
- /* (non-Javadoc)
- * @see org.eclipse.cdt.debug.core.ICDebugConfiguration#getCoreFileExtensions()
- */
- public String[] getCoreFileExtensions() {
- if (fCoreExt == null) {
- List exts = new ArrayList();
- String cexts = getConfigurationElement().getAttribute("coreFileFilter"); //$NON-NLS-1$
- if (cexts != null) {
- StringTokenizer tokenizer = new StringTokenizer(cexts, ","); //$NON-NLS-1$
- while (tokenizer.hasMoreTokens()) {
- String ext = tokenizer.nextToken().trim();
- exts.add(ext);
- }
- }
- exts.add("*.*"); //$NON-NLS-1$
- fCoreExt = (String[])exts.toArray(new String[exts.size()]);
- }
- return fCoreExt;
- }
-}
diff --git a/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/ICDebugInternalConstants.java b/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/ICDebugInternalConstants.java
deleted file mode 100644
index 1b8cb974f9d..00000000000
--- a/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/ICDebugInternalConstants.java
+++ /dev/null
@@ -1,31 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2005 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.internal.core;
-
-import org.eclipse.cdt.debug.core.CDebugCorePlugin;
-
-/**
- * Definitions of the internal constants for C/C++ Debug plug-in.
- */
-public class ICDebugInternalConstants {
-
- /**
- * Status handler codes.
- */
- public static final int STATUS_CODE_QUESTION = 10000;
- public static final int STATUS_CODE_INFO = 10001;
- public static final int STATUS_CODE_ERROR = 10002;
-
- /**
- * String preference for the common source containers.
- */
- public static final String PREF_COMMON_SOURCE_CONTAINERS = CDebugCorePlugin.getUniqueIdentifier() + ".cDebug.common_source_containers"; //$NON-NLS-1$
-}
diff --git a/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/InternalDebugCoreMessages.java b/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/InternalDebugCoreMessages.java
deleted file mode 100644
index b5af135026f..00000000000
--- a/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/InternalDebugCoreMessages.java
+++ /dev/null
@@ -1,33 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.internal.core;
-
-import java.util.MissingResourceException;
-import java.util.ResourceBundle;
-
-public class InternalDebugCoreMessages {
-
- private static final String BUNDLE_NAME = "org.eclipse.cdt.debug.internal.core.InternalDebugCoreMessages";//$NON-NLS-1$
-
- private static final ResourceBundle RESOURCE_BUNDLE = ResourceBundle.getBundle( BUNDLE_NAME );
-
- private InternalDebugCoreMessages() {
- }
-
- public static String getString( String key ) {
- try {
- return RESOURCE_BUNDLE.getString( key );
- }
- catch( MissingResourceException e ) {
- return '!' + key + '!';
- }
- }
-}
diff --git a/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/InternalDebugCoreMessages.properties b/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/InternalDebugCoreMessages.properties
deleted file mode 100644
index c2e781c165f..00000000000
--- a/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/InternalDebugCoreMessages.properties
+++ /dev/null
@@ -1,22 +0,0 @@
-###############################################################################
-# Copyright (c) 2003, 2005 QNX Software Systems and others.
-# All rights reserved. This program and the accompanying materials
-# are made available under the terms of the Eclipse Public License v1.0
-# which accompanies this distribution, and is available at
-# http://www.eclipse.org/legal/epl-v10.html
-#
-# Contributors:
-# QNX Software Systems - initial API and implementation
-###############################################################################
-CGlobalVariableManager.0=Invalid global variables data.
-CMemoryBlockRetrievalExtension.0=Expression ''{0}'' evaluated to invalid address value: {1}.
-CMemoryBlockRetrievalExtension.1=Invalid expression type: ''{0}''
-CMemoryBlockRetrievalExtension.2=Invalid expression: ''{0}''
-CMemoryBlockRetrievalExtension.3=Memory initialization: invalid memento.
-CMemoryBlockRetrievalExtension.4=Invalid address: ''{0}''
-DebugConfiguration.0=This debugger no longer supports this operation
-CDebugAdapter.0=This debugger does not support debugging external files
-CDebugAdapter.1=Debugger Process
-CDebugAdapter.Program_file_not_specified=Program file not specified
-CRegisterManager.0=Unable to restore register groups - invalid memento.
-CRegisterManager.1=Unable to restore register groups - expecting register group list element.
diff --git a/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/ListenerList.java b/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/ListenerList.java
deleted file mode 100644
index caa6d24ae89..00000000000
--- a/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/ListenerList.java
+++ /dev/null
@@ -1,136 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.internal.core;
-
-/**
- * Local version of org.eclipse.jface.util.ListenerList (modified)s
- */
-public class ListenerList {
- /**
- * The current number of listeners.
- * Maintains invariant: 0 <= fSize <= listeners.length.
- */
- private int fSize;
-
- /**
- * The list of listeners. Initially <code>null</code> but initialized
- * to an array of size capacity the first time a listener is added.
- * Maintains invariant: listeners != null if and only if fSize != 0
- */
- private Object[] fListeners= null;
-
- /**
- * The empty array singleton instance, returned by getListeners()
- * when size == 0.
- */
- private static final Object[] EmptyArray= new Object[0];
-
- /**
- * Creates a listener list with the given initial capacity.
- *
- * @param capacity the number of listeners which this list can initially accept
- * without growing its internal representation; must be at least 1
- */
- public ListenerList(int capacity) {
- if (capacity < 1) {
- throw new IllegalArgumentException();
- }
- fListeners= new Object[capacity];
- fSize= 0;
- }
-
- /**
- * Adds a listener to the list.
- * Has no effect if an identical listener is already registered.
- *
- * @param listener a listener
- */
- public synchronized void add(Object listener) {
- if (listener == null) {
- throw new IllegalArgumentException();
- }
- // check for duplicates using identity
- for (int i= 0; i < fSize; ++i) {
- if (fListeners[i] == listener) {
- return;
- }
- }
- // grow array if necessary
- if (fSize == fListeners.length) {
- Object[] temp= new Object[(fSize * 2) + 1];
- System.arraycopy(fListeners, 0, temp, 0, fSize);
- fListeners= temp;
- }
- fListeners[fSize++]= listener;
- }
-
- /**
- * Returns an array containing all the registered listeners.
- * The resulting array is unaffected by subsequent adds or removes.
- * If there are no listeners registered, the result is an empty array
- * singleton instance (no garbage is created).
- * Use this method when notifying listeners, so that any modifications
- * to the listener list during the notification will have no effect on the
- * notification itself.
- */
- public synchronized Object[] getListeners() {
- if (fSize == 0) {
- return EmptyArray;
- }
- Object[] result= new Object[fSize];
- System.arraycopy(fListeners, 0, result, 0, fSize);
- return result;
- }
-
- /**
- * Removes a listener from the list.
- * Has no effect if an identical listener was not already registered.
- *
- * @param listener a listener
- */
- public synchronized void remove(Object listener) {
- if (listener == null) {
- throw new IllegalArgumentException();
- }
-
- for (int i= 0; i < fSize; ++i) {
- if (fListeners[i] == listener) {
- if (--fSize == 0) {
- fListeners= new Object[1];
- } else {
- if (i < fSize) {
- fListeners[i]= fListeners[fSize];
- }
- fListeners[fSize]= null;
- }
- return;
- }
- }
- }
-
- /**
- * Removes all the listeners from the list.
- */
- public void removeAll() {
- fListeners= new Object[0];
- fSize= 0;
- }
-
- /**
- * Returns the number of registered listeners
- *
- * @return the number of registered listeners
- */
- public int size() {
- return fSize;
- }
-}
-
diff --git a/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/SessionManager.java b/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/SessionManager.java
deleted file mode 100644
index 62671eed259..00000000000
--- a/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/SessionManager.java
+++ /dev/null
@@ -1,80 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2005 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.internal.core;
-
-import org.eclipse.cdt.debug.core.CDebugCorePlugin;
-import org.eclipse.cdt.debug.core.cdi.CDIException;
-import org.eclipse.cdt.debug.core.cdi.ICDISession;
-import org.eclipse.cdt.debug.core.cdi.model.ICDITarget;
-import org.eclipse.debug.core.DebugEvent;
-import org.eclipse.debug.core.DebugPlugin;
-import org.eclipse.debug.core.IDebugEventSetListener;
-import org.eclipse.debug.core.ILaunch;
-import org.eclipse.debug.core.model.IDebugTarget;
-
-/**
- * Default implementation of the session manager. Terminates the session when the last target is terminated;
- */
-public class SessionManager implements IDebugEventSetListener {
-
- public SessionManager() {
- DebugPlugin.getDefault().addDebugEventListener( this );
- }
-
- /*
- * (non-Javadoc)
- *
- * @see org.eclipse.core.runtime.IAdaptable#getAdapter(java.lang.Class)
- */
- public Object getAdapter( Class adapter ) {
- if ( SessionManager.class.equals( adapter ) )
- return this;
- return null;
- }
-
- public void dispose() {
- DebugPlugin.getDefault().removeDebugEventListener( this );
- }
-
- /*
- * (non-Javadoc)
- *
- * @see org.eclipse.debug.core.IDebugEventSetListener#handleDebugEvents(org.eclipse.debug.core.DebugEvent[])
- */
- public void handleDebugEvents( DebugEvent[] events ) {
- for( int i = 0; i < events.length; i++ ) {
- DebugEvent event = events[i];
- if ( event.getKind() == DebugEvent.TERMINATE ) {
- Object element = event.getSource();
- if ( element instanceof IDebugTarget && ((IDebugTarget)element).getAdapter( ICDITarget.class ) != null ) {
- handleTerminateEvent( ((IDebugTarget)element).getLaunch(), ((ICDITarget)((IDebugTarget)element).getAdapter( ICDITarget.class )).getSession() );
- }
- }
- }
- }
-
- private void handleTerminateEvent( ILaunch launch, ICDISession session ) {
- IDebugTarget[] targets = launch.getDebugTargets();
- boolean terminate = true;
- for( int i = 0; i < targets.length; ++i ) {
- if ( targets[i].getAdapter( ICDITarget.class ) != null && session.equals( ((ICDITarget)targets[i].getAdapter( ICDITarget.class )).getSession() ) && !targets[i].isTerminated() && !targets[i].isDisconnected() )
- terminate = false;
- }
- if ( terminate ) {
- try {
- session.terminate();
- }
- catch( CDIException e ) {
- CDebugCorePlugin.log( e );
- }
- }
- }
-}
diff --git a/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/breakpoints/AbstractLineBreakpoint.java b/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/breakpoints/AbstractLineBreakpoint.java
deleted file mode 100644
index 7d0bd0878b4..00000000000
--- a/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/breakpoints/AbstractLineBreakpoint.java
+++ /dev/null
@@ -1,105 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.internal.core.breakpoints;
-
-import java.util.Map;
-
-import org.eclipse.cdt.debug.core.model.ICBreakpoint;
-import org.eclipse.cdt.debug.core.model.ICLineBreakpoint;
-import org.eclipse.core.resources.IMarker;
-import org.eclipse.core.resources.IResource;
-import org.eclipse.core.runtime.CoreException;
-import org.eclipse.core.runtime.IPath;
-import org.eclipse.core.runtime.Path;
-
-/**
- * Base class for different types of location breakponts.
- */
-public abstract class AbstractLineBreakpoint extends CBreakpoint implements ICLineBreakpoint {
-
- /**
- * Constructor for AbstractLineBreakpoint.
- */
- public AbstractLineBreakpoint() {
- super();
- }
-
- /**
- * Constructor for AbstractLineBreakpoint.
- *
- * @param resource
- * @param markerType
- * @param attributes
- * @param add
- * @throws CoreException
- */
- public AbstractLineBreakpoint( IResource resource, String markerType, Map attributes, boolean add ) throws CoreException {
- super( resource, markerType, attributes, add );
- }
-
- /*(non-Javadoc)
- * @see org.eclipse.debug.core.model.ILineBreakpoint#getLineNumber()
- */
- public int getLineNumber() throws CoreException {
- return ensureMarker().getAttribute( IMarker.LINE_NUMBER, -1 );
- }
-
- /*(non-Javadoc)
- * @see org.eclipse.debug.core.model.ILineBreakpoint#getCharStart()
- */
- public int getCharStart() throws CoreException {
- return ensureMarker().getAttribute( IMarker.CHAR_START, -1 );
- }
-
- /*(non-Javadoc)
- * @see org.eclipse.debug.core.model.ILineBreakpoint#getCharEnd()
- */
- public int getCharEnd() throws CoreException {
- return ensureMarker().getAttribute( IMarker.CHAR_END, -1 );
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.cdt.debug.core.model.ICLineBreakpoint#getAddress()
- */
- public String getAddress() throws CoreException {
- return ensureMarker().getAttribute( ICLineBreakpoint.ADDRESS, "" ); //$NON-NLS-1$
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.cdt.debug.core.model.ICLineBreakpoint#getFileName()
- */
- public String getFileName() throws CoreException {
- String fileName = ensureMarker().getAttribute( ICBreakpoint.SOURCE_HANDLE, "" ); //$NON-NLS-1$
- IPath path = new Path( fileName );
- return ( path.isValidPath( fileName ) ) ? path.lastSegment() : null;
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.cdt.debug.core.model.ICLineBreakpoint#getFunction()
- */
- public String getFunction() throws CoreException {
- return ensureMarker().getAttribute( ICLineBreakpoint.FUNCTION, "" ); //$NON-NLS-1$
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.cdt.debug.core.model.ICLineBreakpoint#setAddress(java.lang.String)
- */
- public void setAddress( String address ) throws CoreException {
- setAttribute( ICLineBreakpoint.ADDRESS, address );
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.cdt.debug.core.model.ICLineBreakpoint#setFunction(java.lang.String)
- */
- public void setFunction( String function ) throws CoreException {
- setAttribute( ICLineBreakpoint.FUNCTION, function );
- }
-}
diff --git a/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/breakpoints/BreakpointMessages.java b/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/breakpoints/BreakpointMessages.java
deleted file mode 100644
index e8d28dedb9e..00000000000
--- a/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/breakpoints/BreakpointMessages.java
+++ /dev/null
@@ -1,33 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.internal.core.breakpoints;
-
-import java.util.MissingResourceException;
-import java.util.ResourceBundle;
-
-public class BreakpointMessages {
-
- private static final String BUNDLE_NAME = "org.eclipse.cdt.debug.internal.core.breakpoints.BreakpointMessages";//$NON-NLS-1$
-
- private static final ResourceBundle RESOURCE_BUNDLE = ResourceBundle.getBundle( BUNDLE_NAME );
-
- private BreakpointMessages() {
- }
-
- public static String getString( String key ) {
- try {
- return RESOURCE_BUNDLE.getString( key );
- }
- catch( MissingResourceException e ) {
- return '!' + key + '!';
- }
- }
-}
diff --git a/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/breakpoints/BreakpointMessages.properties b/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/breakpoints/BreakpointMessages.properties
deleted file mode 100644
index 4dc9b94fd1f..00000000000
--- a/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/breakpoints/BreakpointMessages.properties
+++ /dev/null
@@ -1,36 +0,0 @@
-###############################################################################
-# Copyright (c) 2003, 2006 QNX Software Systems and others.
-# All rights reserved. This program and the accompanying materials
-# are made available under the terms of the Eclipse Public License v1.0
-# which accompanies this distribution, and is available at
-# http://www.eclipse.org/legal/epl-v10.html
-#
-# Contributors:
-# QNX Software Systems - initial API and implementation
-###############################################################################
-
-# The marker message of an address breakpoint.
-CAddressBreakpoint.0=Address breakpoint: {0}
-
-CBreakpoint.1=\ [ignore count: {0}]
-CBreakpoint.2=\ if {0}
-
-# The marker message of a function breakpoint.
-CFunctionBreakpoint.0=Function breakpoint: {0}
-
-# The marker message of a line breakpoint.
-CLineBreakpoint.0=Line breakpoint: {0}
-
-# The marker message of a write watchpoint.
-CWatchpoint.0=Write watchpoint: {0}
-
-# The marker message of a read watchpoint.
-CWatchpoint.1=Read watchpoint: {0}
-
-# The marker message of an access watchpoint.
-CWatchpoint.2=Access watchpoint: {0}
-
-# The marker message of a watchpoint.
-CWatchpoint.3=Watchpoint: {0}
-BreakpointProblems_Moved=Breakpoint could not be set at line {0}, moved to line {1}
-BreakpointProblems_Unresolved=Unresolved breakpoint
diff --git a/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/breakpoints/BreakpointProblems.java b/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/breakpoints/BreakpointProblems.java
deleted file mode 100644
index 3a502d0fe59..00000000000
--- a/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/breakpoints/BreakpointProblems.java
+++ /dev/null
@@ -1,181 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2007 Nokia and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * Nokia - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.internal.core.breakpoints;
-
-import java.text.MessageFormat;
-
-import org.eclipse.cdt.core.ProblemMarkerInfo;
-import org.eclipse.cdt.core.model.ICModelMarker;
-import org.eclipse.cdt.debug.core.CDebugCorePlugin;
-import org.eclipse.cdt.debug.core.model.ICBreakpoint;
-import org.eclipse.cdt.debug.core.model.ICLineBreakpoint;
-import org.eclipse.core.resources.IMarker;
-import org.eclipse.core.resources.IResource;
-import org.eclipse.core.runtime.CoreException;
-
-public class BreakpointProblems {
-
- /**
- * The identifier for breakpoint problem markers.
- */
- public static final String BREAKPOINT_PROBLEM_MARKER_ID = CDebugCorePlugin.PLUGIN_ID + ".breakpointproblem" ; //$NON-NLS-1$
- /**
- * Breakpoint problem marker types.
- */
- public static final String BREAKPOINT_PROBLEM_TYPE = "bp_problem_type"; //$NON-NLS-1$
- public static final String UNRESOLVED = "unresolved"; //$NON-NLS-1$
- public static final String BAD_CONDITION = "bad_condition"; //$NON-NLS-1$
- public static final String MOVED = "moved"; //$NON-NLS-1$
- public static final String BREAKPOINT_CONTEXT_NAME = "bp_context_name"; //$NON-NLS-1$
- public static final String BREAKPOINT_CONTEXT_ID = "bp_context_id"; //$NON-NLS-1$
-
- public static IMarker reportBreakpointMoved(ICBreakpoint breakpoint, int oldLineNumber, int newLineNumber, String contextName, String contextID) throws CoreException {
- String message = MessageFormat.format(BreakpointMessages.getString("BreakpointProblems_Moved"), new Object[] { new Integer(oldLineNumber), new Integer(newLineNumber) }); //$NON-NLS-1$
- IMarker marker = BreakpointProblems.reportBreakpointProblem(breakpoint, message, IMarker.SEVERITY_INFO, MOVED, true, false, contextName, contextID);
- return marker;
- }
-
- public static IMarker reportUnresolvedBreakpoint(ICBreakpoint breakpoint, String contextName, String contextID) throws CoreException {
- IMarker marker = BreakpointProblems.reportBreakpointProblem(breakpoint, BreakpointMessages.getString("BreakpointProblems_Unresolved"), IMarker.SEVERITY_WARNING, UNRESOLVED, true, false, contextName, contextID); //$NON-NLS-1$
- return marker;
- }
-
- public static void removeProblemsForBreakpoint(ICBreakpoint breakpoint) throws CoreException {
- IMarker marker = breakpoint.getMarker();
- if (marker != null)
- {
- int lineNumber = marker.getAttribute(IMarker.LINE_NUMBER, 0);
- IResource bpResource = marker.getResource();
- if (bpResource != null)
- {
- IMarker[] bpProblems = bpResource.findMarkers(BREAKPOINT_PROBLEM_MARKER_ID, true, IResource.DEPTH_INFINITE);
- for (int i = 0; i < bpProblems.length; i++) {
- if (bpProblems[i].getAttribute(IMarker.LINE_NUMBER, 0) == lineNumber)
- {
- bpProblems[i].delete();
- }
- }
- }
- }
-
- }
-
- public static void removeProblemsForResolvedBreakpoint(ICBreakpoint breakpoint, String contextID) throws CoreException {
- IMarker marker = breakpoint.getMarker();
- if (marker != null)
- {
- int lineNumber = marker.getAttribute(IMarker.LINE_NUMBER, 0);
- IResource bpResource = marker.getResource();
- if (bpResource != null)
- {
- IMarker[] bpProblems = bpResource.findMarkers(BREAKPOINT_PROBLEM_MARKER_ID, true, IResource.DEPTH_INFINITE);
- for (int i = 0; i < bpProblems.length; i++) {
- if (bpProblems[i].getAttribute(BREAKPOINT_PROBLEM_TYPE, "").equalsIgnoreCase(UNRESOLVED) && //$NON-NLS-1$
- bpProblems[i].getAttribute(IMarker.LINE_NUMBER, 0) == lineNumber &&
- bpProblems[i].getAttribute(BREAKPOINT_CONTEXT_ID, "").equals(contextID)) //$NON-NLS-1$
- {
- bpProblems[i].delete();
- }
- }
- }
- }
-
- }
-
- public static IMarker reportBreakpointProblem(ICBreakpoint breakpoint,
- String description, int severity, String problemType, boolean removePrevious, boolean removeOnly, String contextName, String contextID) {
- try {
- if (breakpoint instanceof ICLineBreakpoint) {
- ICLineBreakpoint lineBreakpoint = (ICLineBreakpoint) breakpoint;
- IMarker marker = null;
-
- if (removePrevious)
- {
- IMarker existingMarker = lineBreakpoint.getMarker();
- if (existingMarker != null)
- {
- IResource bpResource = existingMarker.getResource();
- if (bpResource != null)
- {
- int lineNumber = existingMarker.getAttribute(IMarker.LINE_NUMBER, 0);
- IMarker[] bpProblems = bpResource.findMarkers(BREAKPOINT_PROBLEM_MARKER_ID, true, IResource.DEPTH_INFINITE);
- for (int i = 0; i < bpProblems.length; i++) {
- if (bpProblems[i].getAttribute(BREAKPOINT_PROBLEM_TYPE, "").equalsIgnoreCase(problemType) && //$NON-NLS-1$
- bpProblems[i].getAttribute(IMarker.LINE_NUMBER, 0) == lineNumber)
- {
- bpProblems[i].delete();
- }
- }
- }
- }
- }
-
- if (!removeOnly)
- {
- marker = reportBreakpointProblem(new ProblemMarkerInfo(
- lineBreakpoint.getMarker().getResource(),
- lineBreakpoint.getLineNumber(), description, severity,
- "")); //$NON-NLS-1$
- marker.setAttribute(BREAKPOINT_PROBLEM_TYPE, problemType);
- marker.setAttribute(BREAKPOINT_CONTEXT_NAME, contextName);
- marker.setAttribute(BREAKPOINT_CONTEXT_ID, contextID);
- }
- return marker;
- }
- } catch (CoreException e) {
- }
- return null;
- }
-
- public static IMarker reportBreakpointProblem(ProblemMarkerInfo problemMarkerInfo)
- {
- IResource markerResource = problemMarkerInfo.file ;
- if (markerResource==null) {
- return null;
- }
- try {
- IMarker[] cur = markerResource.findMarkers(BREAKPOINT_PROBLEM_MARKER_ID, true, IResource.DEPTH_ONE);
-
- /*
- * Try to find matching markers and don't put in duplicates
- */
- if ((cur != null) && (cur.length > 0)) {
- for (int i = 0; i < cur.length; i++) {
- int line = ((Integer) cur[i].getAttribute(IMarker.LOCATION)).intValue();
- int sev = ((Integer) cur[i].getAttribute(IMarker.SEVERITY)).intValue();
- String mesg = (String) cur[i].getAttribute(IMarker.MESSAGE);
- if (line == problemMarkerInfo.lineNumber && sev == problemMarkerInfo.severity && mesg.equals(problemMarkerInfo.description)) {
- return cur[i];
- }
- }
- }
-
- IMarker marker = markerResource.createMarker(BREAKPOINT_PROBLEM_MARKER_ID);
- marker.setAttribute(IMarker.LOCATION, problemMarkerInfo.lineNumber);
- marker.setAttribute(IMarker.MESSAGE, problemMarkerInfo.description);
- marker.setAttribute(IMarker.SEVERITY, problemMarkerInfo.severity);
- marker.setAttribute(IMarker.LINE_NUMBER, problemMarkerInfo.lineNumber);
- marker.setAttribute(IMarker.CHAR_START, -1);
- marker.setAttribute(IMarker.CHAR_END, -1);
- if (problemMarkerInfo.variableName != null) {
- marker.setAttribute(ICModelMarker.C_MODEL_MARKER_VARIABLE, problemMarkerInfo.variableName);
- }
- if (problemMarkerInfo.externalPath != null) {
- marker.setAttribute(ICModelMarker.C_MODEL_MARKER_EXTERNAL_LOCATION, problemMarkerInfo.externalPath.toOSString());
- }
-
- return marker;
-
- } catch (CoreException e) {}
- return null;
- }
-
-}
diff --git a/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/breakpoints/CAddressBreakpoint.java b/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/breakpoints/CAddressBreakpoint.java
deleted file mode 100644
index e24cef222b8..00000000000
--- a/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/breakpoints/CAddressBreakpoint.java
+++ /dev/null
@@ -1,56 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.internal.core.breakpoints;
-
-import java.util.Map;
-
-import org.eclipse.cdt.debug.core.CDebugUtils;
-import org.eclipse.cdt.debug.core.model.ICAddressBreakpoint;
-import org.eclipse.core.resources.IResource;
-import org.eclipse.core.runtime.CoreException;
-import java.text.MessageFormat;
-
-/**
- * A breakpoint that suspend the execution when a particular address is reached.
- */
-public class CAddressBreakpoint extends AbstractLineBreakpoint implements ICAddressBreakpoint {
-
- private static final String C_ADDRESS_BREAKPOINT = "org.eclipse.cdt.debug.core.cAddressBreakpointMarker"; //$NON-NLS-1$
-
- /**
- * Constructor for CAddressBreakpoint.
- */
- public CAddressBreakpoint() {
- }
-
- /**
- * Constructor for CAddressBreakpoint.
- */
- public CAddressBreakpoint( IResource resource, Map attributes, boolean add ) throws CoreException {
- super( resource, getMarkerType(), attributes, add );
- }
-
- /**
- * Returns the type of marker associated with this type of breakpoints
- */
- public static String getMarkerType() {
- return C_ADDRESS_BREAKPOINT;
- }
-
- /*
- * (non-Javadoc)
- *
- * @see org.eclipse.cdt.debug.internal.core.breakpoints.CBreakpoint#getMarkerMessage()
- */
- protected String getMarkerMessage() throws CoreException {
- return MessageFormat.format( BreakpointMessages.getString( "CAddressBreakpoint.0" ), new String[] { CDebugUtils.getBreakpointText( this, false ) } ); //$NON-NLS-1$
- }
-}
diff --git a/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/breakpoints/CBreakpoint.java b/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/breakpoints/CBreakpoint.java
deleted file mode 100644
index d51cbe5d786..00000000000
--- a/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/breakpoints/CBreakpoint.java
+++ /dev/null
@@ -1,368 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.internal.core.breakpoints;
-
-import java.text.MessageFormat;
-import java.util.Arrays;
-import java.util.HashMap;
-import java.util.HashSet;
-import java.util.Map;
-import java.util.Set;
-import org.eclipse.cdt.debug.core.CDIDebugModel;
-import org.eclipse.cdt.debug.core.model.ICBreakpoint;
-import org.eclipse.cdt.debug.core.model.ICDebugTarget;
-import org.eclipse.cdt.debug.core.model.ICThread;
-import org.eclipse.core.resources.IMarker;
-import org.eclipse.core.resources.IResource;
-import org.eclipse.core.resources.IWorkspaceRunnable;
-import org.eclipse.core.resources.ResourcesPlugin;
-import org.eclipse.core.runtime.CoreException;
-import org.eclipse.core.runtime.IProgressMonitor;
-import org.eclipse.debug.core.DebugEvent;
-import org.eclipse.debug.core.DebugException;
-import org.eclipse.debug.core.DebugPlugin;
-import org.eclipse.debug.core.IDebugEventSetListener;
-import org.eclipse.debug.core.model.Breakpoint;
-import org.eclipse.debug.core.model.IDebugTarget;
-
-/**
- * The base class for all C/C++ specific breakpoints.
- */
-public abstract class CBreakpoint extends Breakpoint implements ICBreakpoint, IDebugEventSetListener {
-
- private Map fFilteredThreadsByTarget;
-
- /**
- * Constructor for CBreakpoint.
- */
- public CBreakpoint() {
- fFilteredThreadsByTarget = new HashMap( 10 );
- }
-
- /**
- * Constructor for CBreakpoint.
- */
- public CBreakpoint( final IResource resource, final String markerType, final Map attributes, final boolean add ) throws CoreException {
- this();
- IWorkspaceRunnable wr = new IWorkspaceRunnable() {
-
- public void run( IProgressMonitor monitor ) throws CoreException {
- // create the marker
- setMarker( resource.createMarker( markerType ) );
- // set attributes
- ensureMarker().setAttributes( attributes );
- //set the marker message
- setAttribute( IMarker.MESSAGE, getMarkerMessage() );
- // add to breakpoint manager if requested
- register( add );
- }
- };
- run( wr );
- }
-
- public void createMarker( final IResource resource, final String markerType, final Map attributes, final boolean add ) throws DebugException {
- IWorkspaceRunnable wr = new IWorkspaceRunnable() {
- public void run( IProgressMonitor monitor ) throws CoreException {
- // create the marker
- setMarker( resource.createMarker( markerType ) );
- // set attributes
- ensureMarker().setAttributes( attributes );
- //set the marker message
- setAttribute( IMarker.MESSAGE, getMarkerMessage() );
- // add to breakpoint manager if requested
- register( add );
- }
- };
- run( wr );
- }
-
- /*
- * (non-Javadoc)
- *
- * @see org.eclipse.debug.core.model.IBreakpoint#getModelIdentifier()
- */
- public String getModelIdentifier() {
- return CDIDebugModel.getPluginIdentifier();
- }
-
- /*
- * (non-Javadoc)
- *
- * @see org.eclipse.cdt.debug.core.ICBreakpoint#isInstalled()
- */
- public boolean isInstalled() throws CoreException {
- return ensureMarker().getAttribute( INSTALL_COUNT, 0 ) > 0;
- }
-
- /*
- * (non-Javadoc)
- *
- * @see org.eclipse.cdt.debug.core.ICBreakpoint#getCondition()
- */
- public String getCondition() throws CoreException {
- return ensureMarker().getAttribute( CONDITION, "" ); //$NON-NLS-1$
- }
-
- /*
- * (non-Javadoc)
- *
- * @see org.eclipse.cdt.debug.core.ICBreakpoint#setCondition(String)
- */
- public void setCondition( String condition ) throws CoreException {
- setAttribute( CONDITION, condition );
- setAttribute( IMarker.MESSAGE, getMarkerMessage() );
- }
-
- /*
- * (non-Javadoc)
- *
- * @see org.eclipse.cdt.debug.core.ICBreakpoint#getIgnoreCount()
- */
- public int getIgnoreCount() throws CoreException {
- return ensureMarker().getAttribute( IGNORE_COUNT, 0 );
- }
-
- /*
- * (non-Javadoc)
- *
- * @see org.eclipse.cdt.debug.core.ICBreakpoint#setIgnoreCount(int)
- */
- public void setIgnoreCount( int ignoreCount ) throws CoreException {
- setAttribute( IGNORE_COUNT, ignoreCount );
- setAttribute( IMarker.MESSAGE, getMarkerMessage() );
- }
-
- /*
- * (non-Javadoc)
- *
- * @see org.eclipse.cdt.debug.core.ICBreakpoint#getThreadId()
- */
- public String getThreadId() throws CoreException {
- return ensureMarker().getAttribute( THREAD_ID, null );
- }
-
- /*
- * (non-Javadoc)
- *
- * @see org.eclipse.cdt.debug.core.ICBreakpoint#setThreadId(String)
- */
- public void setThreadId( String threadId ) throws CoreException {
- setAttribute( THREAD_ID, threadId );
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.cdt.debug.core.model.ICBreakpoint#getSourceHandle()
- */
- public String getSourceHandle() throws CoreException {
- return ensureMarker().getAttribute( SOURCE_HANDLE, null );
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.cdt.debug.core.model.ICBreakpoint#setSourceHandle(java.lang.String)
- */
- public void setSourceHandle( String sourceHandle ) throws CoreException {
- setAttribute( SOURCE_HANDLE, sourceHandle );
- }
-
- /*
- * (non-Javadoc)
- *
- * @see org.eclipse.debug.core.IDebugEventSetListener#handleDebugEvents(DebugEvent[])
- */
- public void handleDebugEvents( DebugEvent[] events ) {
- }
-
- /**
- * Execute the given workspace runnable
- */
- protected void run( IWorkspaceRunnable wr ) throws DebugException {
- try {
- ResourcesPlugin.getWorkspace().run( wr, null );
- }
- catch( CoreException e ) {
- throw new DebugException( e.getStatus() );
- }
- }
-
- /**
- * Add this breakpoint to the breakpoint manager, or sets it as
- * unregistered.
- */
- public void register( boolean register ) throws CoreException {
- if ( register ) {
- DebugPlugin.getDefault().getBreakpointManager().addBreakpoint( this );
- }
- /*
- * else { setRegistered( false ); }
- */
- }
-
- abstract protected String getMarkerMessage() throws CoreException;
-
- /* (non-Javadoc)
- * @see org.eclipse.cdt.debug.core.model.ICBreakpoint#resetInstallCount()
- */
- public synchronized void resetInstallCount() throws CoreException {
- setAttribute( INSTALL_COUNT, 0 );
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.cdt.debug.core.model.ICBreakpoint#incrementInstallCount()
- */
- public synchronized int incrementInstallCount() throws CoreException {
- int count = getInstallCount();
- setAttribute( INSTALL_COUNT, ++count );
- return count;
- }
-
- /**
- * Returns the <code>INSTALL_COUNT</code> attribute of this breakpoint or
- * 0 if the attribute is not set.
- */
- public int getInstallCount() throws CoreException {
- return ensureMarker().getAttribute( INSTALL_COUNT, 0 );
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.cdt.debug.core.model.ICBreakpoint#decrementInstallCount()
- */
- public synchronized int decrementInstallCount() throws CoreException {
- int count = getInstallCount();
- if ( count > 0 ) {
- setAttribute( INSTALL_COUNT, --count );
- }
- return count;
- }
-
- /*
- * (non-Javadoc)
- *
- * @see org.eclipse.debug.core.model.Breakpoint#ensureMarker()
- */
- protected IMarker ensureMarker() throws DebugException {
- return super.ensureMarker();
- }
-
- /*
- * (non-Javadoc)
- *
- * @see org.eclipse.debug.core.model.Breakpoint#setAttribute(String, Object)
- */
- protected void setAttribute( String attributeName, Object value ) throws CoreException {
- super.setAttribute( attributeName, value );
- }
-
- /*
- * (non-Javadoc)
- *
- * @see org.eclipse.cdt.debug.core.model.ICBreakpoint#isConditional()
- */
- public boolean isConditional() throws CoreException {
- return ((getCondition() != null && getCondition().trim().length() > 0) || getIgnoreCount() > 0);
- }
-
- protected String getConditionText() throws CoreException {
- StringBuffer sb = new StringBuffer();
- int ignoreCount = getIgnoreCount();
- if ( ignoreCount > 0 ) {
- sb.append( MessageFormat.format( BreakpointMessages.getString( "CBreakpoint.1" ), new Integer[] { new Integer( ignoreCount ) } ) ); //$NON-NLS-1$
- }
- String condition = getCondition();
- if ( condition != null && condition.length() > 0 ) {
- sb.append( MessageFormat.format( BreakpointMessages.getString( "CBreakpoint.2" ), new String[] { condition } ) ); //$NON-NLS-1$
- }
- return sb.toString();
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.cdt.debug.core.model.ICBreakpoint#getTargetFilters()
- */
- public ICDebugTarget[] getTargetFilters() throws CoreException {
- Set set = fFilteredThreadsByTarget.keySet();
- return (ICDebugTarget[])set.toArray( new ICDebugTarget[set.size()] );
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.cdt.debug.core.model.ICBreakpoint#getThreadFilters(org.eclipse.cdt.debug.core.model.ICDebugTarget)
- */
- public ICThread[] getThreadFilters( ICDebugTarget target ) throws CoreException {
- Set set = (Set)fFilteredThreadsByTarget.get( target );
- return ( set != null ) ? (ICThread[])set.toArray( new ICThread[set.size()] ) : null;
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.cdt.debug.core.model.ICBreakpoint#removeTargetFilter(org.eclipse.cdt.debug.core.model.ICDebugTarget)
- */
- public void removeTargetFilter( ICDebugTarget target ) throws CoreException {
- if ( fFilteredThreadsByTarget.containsKey( target ) ) {
- fFilteredThreadsByTarget.remove( target );
- }
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.cdt.debug.core.model.ICBreakpoint#removeThreadFilters(org.eclipse.cdt.debug.core.model.ICThread[])
- */
- public void removeThreadFilters( ICThread[] threads ) throws CoreException {
- if ( threads != null && threads.length > 0 ) {
- IDebugTarget target = threads[0].getDebugTarget();
- if ( fFilteredThreadsByTarget.containsKey( target ) ) {
- Set set = (Set)fFilteredThreadsByTarget.get( target );
- if ( set != null ) {
- set.removeAll( Arrays.asList( threads ) );
- if ( set.isEmpty() ) {
- fFilteredThreadsByTarget.remove( target );
- }
- }
- }
- }
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.cdt.debug.core.model.ICBreakpoint#setTargetFilter(org.eclipse.cdt.debug.core.model.ICDebugTarget)
- */
- public void setTargetFilter( ICDebugTarget target ) throws CoreException {
- fFilteredThreadsByTarget.put( target, null );
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.cdt.debug.core.model.ICBreakpoint#setThreadFilters(org.eclipse.cdt.debug.core.model.ICThread[])
- */
- public void setThreadFilters( ICThread[] threads ) throws CoreException {
- if ( threads != null && threads.length > 0 ) {
- fFilteredThreadsByTarget.put( threads[0].getDebugTarget(), new HashSet( Arrays.asList( threads ) ) );
- }
- }
-
- /**
- * Change notification when there are no marker changes. If the marker
- * does not exist, do not fire a change notificaiton (the marker may not
- * exist if the associated project was closed).
- */
- public void fireChanged() {
- if ( markerExists() ) {
- DebugPlugin.getDefault().getBreakpointManager().fireBreakpointChanged( this );
- }
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.cdt.debug.core.model.ICBreakpoint#getModule()
- */
- public String getModule() throws CoreException {
- return ensureMarker().getAttribute( MODULE, null );
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.cdt.debug.core.model.ICBreakpoint#setModule(java.lang.String)
- */
- public void setModule( String module ) throws CoreException {
- setAttribute( MODULE, module );
- }
-}
diff --git a/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/breakpoints/CFunctionBreakpoint.java b/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/breakpoints/CFunctionBreakpoint.java
deleted file mode 100644
index 5b9b75134aa..00000000000
--- a/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/breakpoints/CFunctionBreakpoint.java
+++ /dev/null
@@ -1,54 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.internal.core.breakpoints;
-
-import java.text.MessageFormat;
-import java.util.Map;
-
-import org.eclipse.cdt.debug.core.CDebugUtils;
-import org.eclipse.cdt.debug.core.model.ICFunctionBreakpoint;
-import org.eclipse.core.resources.IResource;
-import org.eclipse.core.runtime.CoreException;
-
-/**
- * A breakpoint that suspends the execution when a function is entered.
- */
-public class CFunctionBreakpoint extends AbstractLineBreakpoint implements ICFunctionBreakpoint {
-
- private static final String C_FUNCTION_BREAKPOINT = "org.eclipse.cdt.debug.core.cFunctionBreakpointMarker"; //$NON-NLS-1$
-
- /**
- * Constructor for CFunctionBreakpoint.
- */
- public CFunctionBreakpoint() {
- }
-
- /**
- * Constructor for CFunctionBreakpoint.
- */
- public CFunctionBreakpoint( IResource resource, Map attributes, boolean add ) throws CoreException {
- super( resource, getMarkerType(), attributes, add );
- }
-
- /**
- * Returns the type of marker associated with this type of breakpoints
- */
- public static String getMarkerType() {
- return C_FUNCTION_BREAKPOINT;
- }
-
- /*(non-Javadoc)
- * @see org.eclipse.cdt.debug.internal.core.breakpoints.CBreakpoint#getMarkerMessage()
- */
- protected String getMarkerMessage() throws CoreException {
- return MessageFormat.format( BreakpointMessages.getString( "CFunctionBreakpoint.0" ), new String[] { CDebugUtils.getBreakpointText( this, false ) } ); //$NON-NLS-1$
- }
-}
diff --git a/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/breakpoints/CLineBreakpoint.java b/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/breakpoints/CLineBreakpoint.java
deleted file mode 100644
index 51068db4567..00000000000
--- a/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/breakpoints/CLineBreakpoint.java
+++ /dev/null
@@ -1,54 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.internal.core.breakpoints;
-
-import java.text.MessageFormat;
-import java.util.Map;
-
-import org.eclipse.cdt.debug.core.CDebugUtils;
-import org.eclipse.core.resources.IResource;
-import org.eclipse.core.runtime.CoreException;
-
-/**
- * A breakpoint that suspends the execution when a particular line of code is
- * reached.
- */
-public class CLineBreakpoint extends AbstractLineBreakpoint {
-
- private static final String C_LINE_BREAKPOINT = "org.eclipse.cdt.debug.core.cLineBreakpointMarker"; //$NON-NLS-1$
-
- /**
- * Constructor for CLineBreakpoint.
- */
- public CLineBreakpoint() {
- }
-
- /**
- * Constructor for CLineBreakpoint.
- */
- public CLineBreakpoint( IResource resource, Map attributes, boolean add ) throws CoreException {
- super( resource, getMarkerType(), attributes, add );
- }
-
- /**
- * Returns the type of marker associated with this type of breakpoints
- */
- public static String getMarkerType() {
- return C_LINE_BREAKPOINT;
- }
-
- /*(non-Javadoc)
- * @see org.eclipse.cdt.debug.internal.core.breakpoints.CBreakpoint#getMarkerMessage()
- */
- protected String getMarkerMessage() throws CoreException {
- return MessageFormat.format( BreakpointMessages.getString( "CLineBreakpoint.0" ), new String[] { CDebugUtils.getBreakpointText( this, false ) } ); //$NON-NLS-1$
- }
-}
diff --git a/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/breakpoints/CWatchpoint.java b/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/breakpoints/CWatchpoint.java
deleted file mode 100644
index 1ea608de837..00000000000
--- a/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/breakpoints/CWatchpoint.java
+++ /dev/null
@@ -1,103 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.internal.core.breakpoints;
-
-import java.text.MessageFormat;
-import java.util.Map;
-import org.eclipse.cdt.debug.core.CDebugUtils;
-import org.eclipse.cdt.debug.core.model.ICWatchpoint;
-import org.eclipse.core.resources.IMarker;
-import org.eclipse.core.resources.IResource;
-import org.eclipse.core.runtime.CoreException;
-
-/**
- * A watchpoint specific to the C/C++ debug model.
- */
-public class CWatchpoint extends CBreakpoint implements ICWatchpoint {
-
- private static final String C_WATCHPOINT = "org.eclipse.cdt.debug.core.cWatchpointMarker"; //$NON-NLS-1$
-
- /**
- * Constructor for CWatchpoint.
- */
- public CWatchpoint() {
- }
-
- /**
- * Constructor for CWatchpoint.
- */
- public CWatchpoint( IResource resource, Map attributes, boolean add ) throws CoreException {
- super( resource, getMarkerType(), attributes, add );
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.cdt.debug.core.model.ICWatchpoint#isWriteType()
- */
- public boolean isWriteType() throws CoreException {
- return ensureMarker().getAttribute( WRITE, true );
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.cdt.debug.core.model.ICWatchpoint#isReadType()
- */
- public boolean isReadType() throws CoreException {
- return ensureMarker().getAttribute( READ, false );
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.cdt.debug.core.model.ICWatchpoint#getExpression()
- */
- public String getExpression() throws CoreException {
- return ensureMarker().getAttribute( EXPRESSION, "" ); //$NON-NLS-1$
- }
-
- /**
- * Returns the type of marker associated with this type of breakpoints
- */
- public static String getMarkerType() {
- return C_WATCHPOINT;
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.cdt.debug.internal.core.breakpoints.CBreakpoint#getMarkerMessage()
- */
- protected String getMarkerMessage() throws CoreException {
- String format = BreakpointMessages.getString( "CWatchpoint.3" ); //$NON-NLS-1$
- if ( isWriteType() && !isReadType() )
- format = BreakpointMessages.getString( "CWatchpoint.0" ); //$NON-NLS-1$
- else if ( !isWriteType() && isReadType() )
- format = BreakpointMessages.getString( "CWatchpoint.1" ); //$NON-NLS-1$
- else if ( isWriteType() && isReadType() )
- format = BreakpointMessages.getString( "CWatchpoint.2" ); //$NON-NLS-1$
- return MessageFormat.format( format, new String[] { CDebugUtils.getBreakpointText( this, false ) } );
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.debug.core.model.ILineBreakpoint#getLineNumber()
- */
- public int getLineNumber() throws CoreException {
- return ensureMarker().getAttribute( IMarker.LINE_NUMBER, -1 );
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.debug.core.model.ILineBreakpoint#getCharStart()
- */
- public int getCharStart() throws CoreException {
- return ensureMarker().getAttribute( IMarker.CHAR_START, -1 );
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.debug.core.model.ILineBreakpoint#getCharEnd()
- */
- public int getCharEnd() throws CoreException {
- return ensureMarker().getAttribute( IMarker.CHAR_END, -1 );
- }
-}
diff --git a/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/model/AbstractCValue.java b/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/model/AbstractCValue.java
deleted file mode 100644
index 362809f2184..00000000000
--- a/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/model/AbstractCValue.java
+++ /dev/null
@@ -1,65 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.internal.core.model;
-
-import org.eclipse.cdt.debug.core.model.ICStackFrame;
-import org.eclipse.cdt.debug.core.model.ICValue;
-import org.eclipse.debug.core.DebugException;
-
-/**
- * The abstract super class for the C/C++ value types.
- */
-public abstract class AbstractCValue extends CDebugElement implements ICValue {
-
- /**
- * Parent variable.
- */
- private AbstractCVariable fParent = null;
-
- /**
- * Constructor for AbstractCValue.
- */
- public AbstractCValue( AbstractCVariable parent ) {
- super( (CDebugTarget)parent.getDebugTarget() );
- fParent = parent;
- }
-
- public AbstractCVariable getParentVariable() {
- return fParent;
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.cdt.debug.core.model.ICValue#evaluateAsExpression(org.eclipse.cdt.debug.core.model.ICStackFrame)
- */
- public String evaluateAsExpression( ICStackFrame frame ) {
- String valueString = ""; //$NON-NLS-1$
- AbstractCVariable parent = getParentVariable();
- if ( parent != null ) {
- if ( frame != null && frame.canEvaluate() ) {
- try {
- valueString = frame.evaluateExpressionToString( parent.getExpressionString() );
- }
- catch( DebugException e ) {
- valueString = e.getMessage();
- }
- }
- }
- return valueString;
- }
-
- abstract protected void setChanged( boolean changed );
-
- abstract public void dispose();
-
- abstract protected void reset();
-
- abstract protected void preserve();
-}
diff --git a/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/model/AbstractCVariable.java b/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/model/AbstractCVariable.java
deleted file mode 100644
index 62bbc718ba6..00000000000
--- a/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/model/AbstractCVariable.java
+++ /dev/null
@@ -1,72 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.internal.core.model;
-
-import org.eclipse.cdt.debug.core.model.ICStackFrame;
-import org.eclipse.cdt.debug.core.model.ICVariable;
-import org.eclipse.cdt.debug.core.model.IEnableDisableTarget;
-import org.eclipse.debug.core.DebugException;
-
-/**
- * The super class for all variable types.
- */
-public abstract class AbstractCVariable extends CDebugElement implements ICVariable {
-
- /**
- * The parent object this variable is contained in.
- */
- private CDebugElement fParent;
-
- /**
- * Constructor for AbstractCVariable.
- */
- public AbstractCVariable( CDebugElement parent ) {
- super( (CDebugTarget)parent.getDebugTarget() );
- setParent( parent );
- }
-
- protected CDebugElement getParent() {
- return fParent;
- }
-
- private void setParent( CDebugElement parent ) {
- fParent = parent;
- }
-
- protected ICStackFrame getStackFrame() {
- CDebugElement parent = getParent();
- if ( parent instanceof AbstractCValue ) {
- AbstractCVariable pv = ((AbstractCValue)parent).getParentVariable();
- if ( pv != null )
- return pv.getStackFrame();
- }
- if ( parent instanceof CStackFrame )
- return (CStackFrame)parent;
- return null;
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.core.runtime.IAdaptable#getAdapter(java.lang.Class)
- */
- public Object getAdapter( Class adapter ) {
- if ( IEnableDisableTarget.class.equals( adapter ) )
- return this;
- return super.getAdapter( adapter );
- }
-
- public abstract void dispose();
-
- protected abstract void resetValue();
-
- protected abstract void setChanged( boolean changed );
-
- protected abstract void preserve();
-}
diff --git a/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/model/AsmInstruction.java b/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/model/AsmInstruction.java
deleted file mode 100644
index 6db8f1c2da0..00000000000
--- a/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/model/AsmInstruction.java
+++ /dev/null
@@ -1,76 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.internal.core.model;
-
-import org.eclipse.cdt.core.IAddress;
-import org.eclipse.cdt.core.IAddressFactory;
-import org.eclipse.cdt.debug.core.cdi.model.ICDIInstruction;
-import org.eclipse.cdt.debug.core.model.IAsmInstruction;
-
-/**
- * Adapter for ICDIInstruction.
- */
-public class AsmInstruction implements IAsmInstruction {
-
- private ICDIInstruction fCDIInstruction;
-
- private IAddress fAddress;
-
- /**
- * Constructor for AsmInstruction.
- */
- public AsmInstruction( IAddressFactory factory, ICDIInstruction cdiInstruction ) {
- fCDIInstruction = cdiInstruction;
- fAddress = factory.createAddress( cdiInstruction.getAdress() );
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.cdt.debug.core.model.IAsmInstruction#getAdress()
- */
- public IAddress getAdress() {
- return fAddress;
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.cdt.debug.core.model.IAsmInstruction#getFunctionName()
- */
- public String getFunctionName() {
- return fCDIInstruction.getFuntionName();
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.cdt.debug.core.model.IAsmInstruction#getInstructionText()
- */
- public String getInstructionText() {
- return fCDIInstruction.getInstruction();
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.cdt.debug.core.model.IAsmInstruction#getOpcode()
- */
- public String getOpcode() {
- return fCDIInstruction.getOpcode();
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.cdt.debug.core.model.IAsmInstruction#getArguments()
- */
- public String getArguments() {
- return fCDIInstruction.getArgs();
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.cdt.debug.core.model.IAsmInstruction#getOffset()
- */
- public long getOffset() {
- return fCDIInstruction.getOffset();
- }
-}
diff --git a/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/model/AsmSourceLine.java b/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/model/AsmSourceLine.java
deleted file mode 100644
index 5df38eb2498..00000000000
--- a/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/model/AsmSourceLine.java
+++ /dev/null
@@ -1,65 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.internal.core.model;
-
-import org.eclipse.cdt.core.IAddressFactory;
-import org.eclipse.cdt.debug.core.cdi.model.ICDIInstruction;
-import org.eclipse.cdt.debug.core.model.IAsmInstruction;
-import org.eclipse.cdt.debug.core.model.IAsmSourceLine;
-
-/**
- * Adapter for ICDIMixedInstruction.
- */
-public class AsmSourceLine implements IAsmSourceLine {
-
- private String fText;
-
- private IAsmInstruction[] fInstructions = null;
-
- private int fLineNumber;
-
- /**
- * Constructor for AsmSourceLine.
- */
- public AsmSourceLine( IAddressFactory factory, String text, ICDIInstruction[] cdiInstructions ) {
- this( factory, text, -1, cdiInstructions );
- }
-
- /**
- * Constructor for AsmSourceLine.
- */
- public AsmSourceLine( IAddressFactory factory, String text, int lineNumber, ICDIInstruction[] cdiInstructions ) {
- fText = text;
- fLineNumber = lineNumber;
- fInstructions = new IAsmInstruction[cdiInstructions.length];
- for ( int i = 0; i < fInstructions.length; ++i ) {
- fInstructions[i] = new AsmInstruction( factory, cdiInstructions[i] );
- }
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.cdt.debug.core.model.IAsmSourceLine#getLineNumber()
- */
- public int getLineNumber() {
- return fLineNumber;
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.cdt.debug.core.model.IAsmSourceLine#getInstructions()
- */
- public IAsmInstruction[] getInstructions() {
- return fInstructions;
- }
-
- public String toString() {
- return fText;
- }
-}
diff --git a/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/model/CCoreFileDebugTarget.java b/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/model/CCoreFileDebugTarget.java
deleted file mode 100644
index ea1752d16b2..00000000000
--- a/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/model/CCoreFileDebugTarget.java
+++ /dev/null
@@ -1,48 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.internal.core.model;
-
-import org.eclipse.cdt.core.IBinaryParser.IBinaryExecutable;
-import org.eclipse.cdt.debug.core.cdi.model.ICDITarget;
-import org.eclipse.cdt.debug.core.model.CDebugElementState;
-import org.eclipse.core.resources.IProject;
-import org.eclipse.debug.core.ILaunch;
-import org.eclipse.debug.core.model.IProcess;
-
-/**
- * A debug target for the postmortem debugging.
- * @deprecated
- */
-public class CCoreFileDebugTarget extends CDebugTarget {
-
-
- /**
- * @param launch
- * @param project
- * @param cdiTarget
- * @param name
- * @param debuggeeProcess
- * @param file
- * @param allowsTerminate
- * @param allowsDisconnect
- */
- public CCoreFileDebugTarget(ILaunch launch, IProject project, ICDITarget cdiTarget, String name, IProcess debuggeeProcess, IBinaryExecutable file) {
- super(launch, project, cdiTarget, name, debuggeeProcess, file, false, false);
- setState(CDebugElementState.TERMINATED);
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.cdt.debug.core.model.ICDebugTarget#isPostMortem()
- */
- public boolean isPostMortem() {
- return true;
- }
-}
diff --git a/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/model/CDebugElement.java b/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/model/CDebugElement.java
deleted file mode 100644
index 24ce8776a7b..00000000000
--- a/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/model/CDebugElement.java
+++ /dev/null
@@ -1,377 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.internal.core.model;
-
-import java.text.MessageFormat;
-import org.eclipse.cdt.debug.core.CDIDebugModel;
-import org.eclipse.cdt.debug.core.CDebugCorePlugin;
-import org.eclipse.cdt.debug.core.CDebugUtils;
-import org.eclipse.cdt.debug.core.cdi.CDIException;
-import org.eclipse.cdt.debug.core.cdi.ICDISession;
-import org.eclipse.cdt.debug.core.cdi.model.ICDITarget;
-import org.eclipse.cdt.debug.core.model.CDebugElementState;
-import org.eclipse.cdt.debug.core.model.ICDebugElement;
-import org.eclipse.cdt.debug.core.model.ICDebugElementStatus;
-import org.eclipse.cdt.debug.core.model.ICDebugTarget;
-import org.eclipse.cdt.debug.core.model.IModuleRetrieval;
-import org.eclipse.cdt.debug.internal.core.ICDebugInternalConstants;
-import org.eclipse.core.runtime.IStatus;
-import org.eclipse.core.runtime.PlatformObject;
-import org.eclipse.core.runtime.Status;
-import org.eclipse.debug.core.DebugEvent;
-import org.eclipse.debug.core.DebugException;
-import org.eclipse.debug.core.DebugPlugin;
-import org.eclipse.debug.core.ILaunch;
-import org.eclipse.debug.core.model.IDebugElement;
-import org.eclipse.debug.core.model.IDebugTarget;
-import org.eclipse.debug.core.model.IMemoryBlockRetrieval;
-
-/**
- * The super class of all C/C++ debug model elements.
- */
-abstract public class CDebugElement extends PlatformObject implements ICDebugElement, ICDebugElementStatus {
-
- /**
- * Debug target associated with this element
- */
- private CDebugTarget fDebugTarget;
-
- /**
- * The severity code of this element's status
- */
- private int fSeverity = ICDebugElementStatus.OK;
-
- /**
- * The message of this element's status
- */
- private String fMessage = null;
-
- /**
- * The current state of this element.
- */
- private CDebugElementState fState = CDebugElementState.UNDEFINED;
-
- /**
- * The previous state of this element.
- */
- private CDebugElementState fOldState = CDebugElementState.UNDEFINED;
-
- /**
- * The current state info.
- */
- private Object fCurrentStateInfo = null;
-
- /**
- * Constructor for CDebugElement.
- */
- public CDebugElement( CDebugTarget target ) {
- setDebugTarget( target );
- }
-
- /*
- * (non-Javadoc)
- *
- * @see org.eclipse.debug.core.model.IDebugElement#getModelIdentifier()
- */
- public String getModelIdentifier() {
- return CDIDebugModel.getPluginIdentifier();
- }
-
- /*
- * (non-Javadoc)
- *
- * @see org.eclipse.debug.core.model.IDebugElement#getDebugTarget()
- */
- public IDebugTarget getDebugTarget() {
- return fDebugTarget;
- }
-
- /*
- * (non-Javadoc)
- *
- * @see org.eclipse.debug.core.model.IDebugElement#getLaunch()
- */
- public ILaunch getLaunch() {
- return getDebugTarget().getLaunch();
- }
-
- protected void setDebugTarget( CDebugTarget target ) {
- fDebugTarget = target;
- }
-
- /**
- * Convenience method to log errors
- */
- protected void logError( Exception e ) {
- DebugPlugin.log( e );
- }
-
- /**
- * Convenience method to log errors
- *
- */
- protected void logError( String message ) {
- DebugPlugin.logMessage( message, null );
- }
-
- /**
- * Fires a debug event
- *
- * @param event The debug event to be fired to the listeners
- * @see org.eclipse.debug.core.DebugEvent
- */
- protected void fireEvent( DebugEvent event ) {
- DebugPlugin.getDefault().fireDebugEventSet( new DebugEvent[]{ event } );
- }
-
- protected void fireEventSet( DebugEvent[] events ) {
- DebugPlugin.getDefault().fireDebugEventSet( events );
- }
-
- /**
- * Fires a debug event marking the creation of this element.
- */
- public void fireCreationEvent() {
- fireEvent( new DebugEvent( this, DebugEvent.CREATE ) );
- }
-
- public DebugEvent createCreateEvent() {
- return new DebugEvent( this, DebugEvent.CREATE );
- }
-
- /**
- * Fires a debug event marking the RESUME of this element with the associated detail.
- *
- * @param detail The int detail of the event
- * @see org.eclipse.debug.core.DebugEvent
- */
- public void fireResumeEvent( int detail ) {
- fireEvent( new DebugEvent( this, DebugEvent.RESUME, detail ) );
- }
-
- public DebugEvent createResumeEvent( int detail ) {
- return new DebugEvent( this, DebugEvent.RESUME, detail );
- }
-
- /**
- * Fires a debug event marking the SUSPEND of this element with the associated detail.
- *
- * @param detail The int detail of the event
- * @see org.eclipse.debug.core.DebugEvent
- */
- public void fireSuspendEvent( int detail ) {
- fireEvent( new DebugEvent( this, DebugEvent.SUSPEND, detail ) );
- }
-
- public DebugEvent createSuspendEvent( int detail ) {
- return new DebugEvent( this, DebugEvent.SUSPEND, detail );
- }
-
- /**
- * Fires a debug event marking the termination of this element.
- */
- public void fireTerminateEvent() {
- fireEvent( new DebugEvent( this, DebugEvent.TERMINATE ) );
- }
-
- public DebugEvent createTerminateEvent() {
- return new DebugEvent( this, DebugEvent.TERMINATE );
- }
-
- /**
- * Fires a debug event marking the CHANGE of this element with the specifed detail code.
- *
- * @param detail
- * one of <code>STATE</code> or <code>CONTENT</code>
- */
- public void fireChangeEvent( int detail ) {
- fireEvent( new DebugEvent( this, DebugEvent.CHANGE, detail ) );
- }
-
- public DebugEvent createChangeEvent( int detail ) {
- return new DebugEvent( this, DebugEvent.CHANGE, detail );
- }
-
- /**
- * Returns the CDI session associated with this element.
- *
- * @return the CDI session
- */
- public ICDISession getCDISession() {
- return getCDITarget().getSession();
- }
-
- /**
- * Returns the underlying CDI target associated with this element.
- *
- * @return the underlying CDI target
- */
- public ICDITarget getCDITarget() {
- return (ICDITarget)getDebugTarget().getAdapter( ICDITarget.class );
- }
-
- /**
- * Throws a new debug exception with a status code of <code>REQUEST_FAILED</code>.
- *
- * @param message Failure message
- * @param e Exception that has occurred (<code>can be null</code>)
- * @throws DebugException The exception with a status code of <code>REQUEST_FAILED</code>
- */
- public static void requestFailed( String message, Exception e ) throws DebugException {
- requestFailed( message, e, DebugException.REQUEST_FAILED );
- }
-
- /**
- * Throws a new debug exception with a status code of <code>TARGET_REQUEST_FAILED</code> with the given underlying exception.
- *
- * @param message Failure message
- * @param e underlying exception that has occurred
- * @throws DebugException The exception with a status code of <code>TARGET_REQUEST_FAILED</code>
- */
- public static void targetRequestFailed( String message, CDIException e ) throws DebugException {
- requestFailed( MessageFormat.format( "Target request failed: {0}.", new String[]{ message } ), e, DebugException.TARGET_REQUEST_FAILED ); //$NON-NLS-1$
- }
-
- /**
- * Throws a new debug exception with the given status code.
- *
- * @param message Failure message
- * @param e Exception that has occurred (<code>can be null</code>)
- * @param code status code
- * @throws DebugException a new exception with given status code
- */
- public static void requestFailed( String message, Throwable e, int code ) throws DebugException {
- throwDebugException( message, code, e );
- }
-
- /**
- * Throws a new debug exception with a status code of <code>TARGET_REQUEST_FAILED</code>.
- *
- * @param message Failure message
- * @param e Throwable that has occurred
- * @throws DebugException The exception with a status code of <code>TARGET_REQUEST_FAILED</code>
- */
- public static void targetRequestFailed( String message, Throwable e ) throws DebugException {
- throwDebugException( MessageFormat.format( "Target request failed: {0}.", new String[]{ message } ), DebugException.TARGET_REQUEST_FAILED, e ); //$NON-NLS-1$
- }
-
- /**
- * Throws a new debug exception with a status code of <code>NOT_SUPPORTED</code>.
- *
- * @param message Failure message
- * @throws DebugException The exception with a status code of <code>NOT_SUPPORTED</code>.
- */
- public static void notSupported( String message ) throws DebugException {
- throwDebugException( message, DebugException.NOT_SUPPORTED, null );
- }
-
- /**
- * Throws a debug exception with the given message, error code, and underlying exception.
- */
- protected static void throwDebugException( String message, int code, Throwable exception ) throws DebugException {
- throw new DebugException( new Status( IStatus.ERROR, CDIDebugModel.getPluginIdentifier(), code, message, exception ) );
- }
-
- protected void infoMessage( Throwable e ) {
- IStatus newStatus = new Status( IStatus.INFO, CDebugCorePlugin.getUniqueIdentifier(), ICDebugInternalConstants.STATUS_CODE_INFO, e.getMessage(), null );
- CDebugUtils.info( newStatus, getDebugTarget() );
- }
-
- /*
- * (non-Javadoc)
- *
- * @see org.eclipse.core.runtime.IAdaptable#getAdapter(Class)
- */
- public Object getAdapter( Class adapter ) {
- if ( adapter.equals( IDebugElement.class ) )
- return this;
- if ( adapter.equals( ICDebugElement.class ) )
- return this;
- if ( adapter.equals( CDebugElement.class ) )
- return this;
- if ( adapter.equals( ICDebugElementStatus.class ) )
- return this;
- if ( adapter.equals( ICDISession.class ) )
- return getCDISession();
- if ( adapter.equals( ICDebugTarget.class ) )
- return getDebugTarget();
- if ( adapter.equals( IDebugTarget.class ) )
- return getDebugTarget();
- // See bug #100261
- if ( adapter.equals( IMemoryBlockRetrieval.class ) )
- return getDebugTarget().getAdapter( adapter );
- if ( adapter.equals( IModuleRetrieval.class ) )
- return getDebugTarget().getAdapter( adapter );
- if ( adapter.equals( ILaunch.class ) )
- return getDebugTarget().getLaunch();
- return super.getAdapter( adapter );
- }
-
- protected void setStatus( int severity, String message ) {
- fSeverity = severity;
- fMessage = message;
- if ( fMessage != null )
- fMessage.trim();
- }
-
- protected void resetStatus() {
- fSeverity = ICDebugElementStatus.OK;
- fMessage = null;
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.cdt.debug.core.model.ICDebugElementStatus#isOK()
- */
- public boolean isOK() {
- return (fSeverity == ICDebugElementStatus.OK);
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.cdt.debug.core.model.ICDebugElementStatus#getSeverity()
- */
- public int getSeverity() {
- return fSeverity;
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.cdt.debug.core.model.ICDebugElementStatus#getMessage()
- */
- public String getMessage() {
- return fMessage;
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.cdt.debug.core.model.ICDebugElement#getState()
- */
- public CDebugElementState getState() {
- return fState;
- }
-
- protected synchronized void setState( CDebugElementState state ) throws IllegalArgumentException {
- fOldState = fState;
- fState = state;
- }
-
- protected synchronized void restoreState() {
- fState = fOldState;
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.cdt.debug.core.model.ICDebugElement#getCurrentStateInfo()
- */
- public Object getCurrentStateInfo() {
- return fCurrentStateInfo;
- }
-
- protected void setCurrentStateInfo( Object currentStateInfo ) {
- fCurrentStateInfo = currentStateInfo;
- }
-}
diff --git a/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/model/CDebugTarget.java b/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/model/CDebugTarget.java
deleted file mode 100644
index 0a74700d57c..00000000000
--- a/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/model/CDebugTarget.java
+++ /dev/null
@@ -1,1844 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2007 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- * Ken Ryall (Nokia) - bugs 118894, 170027, 91771
- *******************************************************************************/
-package org.eclipse.cdt.debug.internal.core.model;
-
-import java.io.File;
-import java.text.MessageFormat;
-import java.util.ArrayList;
-import java.util.Iterator;
-import java.util.List;
-import java.util.StringTokenizer;
-
-import org.eclipse.cdt.core.CCorePlugin;
-import org.eclipse.cdt.core.IAddress;
-import org.eclipse.cdt.core.IAddressFactory;
-import org.eclipse.cdt.core.IBinaryParser.IBinaryObject;
-import org.eclipse.cdt.core.IBinaryParser.ISymbol;
-import org.eclipse.cdt.debug.core.CDIDebugModel;
-import org.eclipse.cdt.debug.core.CDebugCorePlugin;
-import org.eclipse.cdt.debug.core.CDebugUtils;
-import org.eclipse.cdt.debug.core.ICDTLaunchConfigurationConstants;
-import org.eclipse.cdt.debug.core.ICDebugConstants;
-import org.eclipse.cdt.debug.core.ICGlobalVariableManager;
-import org.eclipse.cdt.debug.core.cdi.CDIException;
-import org.eclipse.cdt.debug.core.cdi.ICDIAddressLocation;
-import org.eclipse.cdt.debug.core.cdi.ICDIBreakpointHit;
-import org.eclipse.cdt.debug.core.cdi.ICDIEndSteppingRange;
-import org.eclipse.cdt.debug.core.cdi.ICDIErrorInfo;
-import org.eclipse.cdt.debug.core.cdi.ICDIFunctionLocation;
-import org.eclipse.cdt.debug.core.cdi.ICDILineLocation;
-import org.eclipse.cdt.debug.core.cdi.ICDILocation;
-import org.eclipse.cdt.debug.core.cdi.ICDISession;
-import org.eclipse.cdt.debug.core.cdi.ICDISessionConfiguration;
-import org.eclipse.cdt.debug.core.cdi.ICDISessionObject;
-import org.eclipse.cdt.debug.core.cdi.ICDISharedLibraryEvent;
-import org.eclipse.cdt.debug.core.cdi.ICDISignalReceived;
-import org.eclipse.cdt.debug.core.cdi.ICDIWatchpointScope;
-import org.eclipse.cdt.debug.core.cdi.ICDIWatchpointTrigger;
-import org.eclipse.cdt.debug.core.cdi.event.ICDIChangedEvent;
-import org.eclipse.cdt.debug.core.cdi.event.ICDICreatedEvent;
-import org.eclipse.cdt.debug.core.cdi.event.ICDIDestroyedEvent;
-import org.eclipse.cdt.debug.core.cdi.event.ICDIDisconnectedEvent;
-import org.eclipse.cdt.debug.core.cdi.event.ICDIEvent;
-import org.eclipse.cdt.debug.core.cdi.event.ICDIEventListener;
-import org.eclipse.cdt.debug.core.cdi.event.ICDIExitedEvent;
-import org.eclipse.cdt.debug.core.cdi.event.ICDIRestartedEvent;
-import org.eclipse.cdt.debug.core.cdi.event.ICDIResumedEvent;
-import org.eclipse.cdt.debug.core.cdi.event.ICDISuspendedEvent;
-import org.eclipse.cdt.debug.core.cdi.model.ICDIAddressFactoryManagement;
-import org.eclipse.cdt.debug.core.cdi.model.ICDIBreakpoint;
-import org.eclipse.cdt.debug.core.cdi.model.ICDIObject;
-import org.eclipse.cdt.debug.core.cdi.model.ICDISharedLibrary;
-import org.eclipse.cdt.debug.core.cdi.model.ICDISignal;
-import org.eclipse.cdt.debug.core.cdi.model.ICDITarget;
-import org.eclipse.cdt.debug.core.cdi.model.ICDITarget2;
-import org.eclipse.cdt.debug.core.cdi.model.ICDITargetConfiguration;
-import org.eclipse.cdt.debug.core.cdi.model.ICDITargetConfiguration2;
-import org.eclipse.cdt.debug.core.cdi.model.ICDIThread;
-import org.eclipse.cdt.debug.core.cdi.model.ICDIVariableDescriptor;
-import org.eclipse.cdt.debug.core.model.CDebugElementState;
-import org.eclipse.cdt.debug.core.model.ICBreakpoint;
-import org.eclipse.cdt.debug.core.model.ICDebugElement;
-import org.eclipse.cdt.debug.core.model.ICDebugElementStatus;
-import org.eclipse.cdt.debug.core.model.ICDebugTarget;
-import org.eclipse.cdt.debug.core.model.ICGlobalVariable;
-import org.eclipse.cdt.debug.core.model.ICLineBreakpoint;
-import org.eclipse.cdt.debug.core.model.ICModule;
-import org.eclipse.cdt.debug.core.model.ICSignal;
-import org.eclipse.cdt.debug.core.model.IDebuggerProcessSupport;
-import org.eclipse.cdt.debug.core.model.IDisassembly;
-import org.eclipse.cdt.debug.core.model.IExecFileInfo;
-import org.eclipse.cdt.debug.core.model.IGlobalVariableDescriptor;
-import org.eclipse.cdt.debug.core.model.IModuleRetrieval;
-import org.eclipse.cdt.debug.core.model.IPersistableRegisterGroup;
-import org.eclipse.cdt.debug.core.model.IRegisterDescriptor;
-import org.eclipse.cdt.debug.core.sourcelookup.ICSourceLocator;
-import org.eclipse.cdt.debug.core.sourcelookup.ISourceLookupChangeListener;
-import org.eclipse.cdt.debug.internal.core.CBreakpointManager;
-import org.eclipse.cdt.debug.internal.core.CGlobalVariableManager;
-import org.eclipse.cdt.debug.internal.core.CMemoryBlockRetrievalExtension;
-import org.eclipse.cdt.debug.internal.core.CRegisterManager;
-import org.eclipse.cdt.debug.internal.core.CSignalManager;
-import org.eclipse.cdt.debug.internal.core.ICDebugInternalConstants;
-import org.eclipse.cdt.debug.internal.core.sourcelookup.CSourceLookupParticipant;
-import org.eclipse.cdt.debug.internal.core.sourcelookup.CSourceManager;
-import org.eclipse.core.resources.IContainer;
-import org.eclipse.core.resources.IMarkerDelta;
-import org.eclipse.core.resources.IProject;
-import org.eclipse.core.resources.IResourceChangeListener;
-import org.eclipse.core.runtime.CoreException;
-import org.eclipse.core.runtime.IAdaptable;
-import org.eclipse.core.runtime.IPath;
-import org.eclipse.core.runtime.IStatus;
-import org.eclipse.core.runtime.MultiStatus;
-import org.eclipse.core.runtime.Path;
-import org.eclipse.core.runtime.Preferences;
-import org.eclipse.core.runtime.Status;
-import org.eclipse.core.runtime.Preferences.IPropertyChangeListener;
-import org.eclipse.debug.core.DebugEvent;
-import org.eclipse.debug.core.DebugException;
-import org.eclipse.debug.core.DebugPlugin;
-import org.eclipse.debug.core.IExpressionListener;
-import org.eclipse.debug.core.IExpressionManager;
-import org.eclipse.debug.core.ILaunch;
-import org.eclipse.debug.core.ILaunchConfiguration;
-import org.eclipse.debug.core.ILaunchListener;
-import org.eclipse.debug.core.model.IBreakpoint;
-import org.eclipse.debug.core.model.IDebugTarget;
-import org.eclipse.debug.core.model.IExpression;
-import org.eclipse.debug.core.model.IMemoryBlock;
-import org.eclipse.debug.core.model.IMemoryBlockRetrieval;
-import org.eclipse.debug.core.model.IMemoryBlockRetrievalExtension;
-import org.eclipse.debug.core.model.IProcess;
-import org.eclipse.debug.core.model.IRegisterGroup;
-import org.eclipse.debug.core.model.ISourceLocator;
-import org.eclipse.debug.core.model.IThread;
-import org.eclipse.debug.core.sourcelookup.ISourceContainer;
-import org.eclipse.debug.core.sourcelookup.ISourceLookupDirector;
-import org.eclipse.debug.core.sourcelookup.ISourceLookupParticipant;
-import org.eclipse.debug.core.sourcelookup.containers.DirectorySourceContainer;
-import org.eclipse.debug.core.sourcelookup.containers.FolderSourceContainer;
-import org.eclipse.debug.core.sourcelookup.containers.ProjectSourceContainer;
-
-/**
- * Debug target for C/C++ debug model.
- */
-public class CDebugTarget extends CDebugElement implements ICDebugTarget, ICDIEventListener, ILaunchListener, IExpressionListener, ISourceLookupChangeListener {
-
- /**
- * Threads contained in this debug target.
- * When a thread starts it is added to the list.
- * When a thread ends it is removed from the list.
- */
- private ArrayList fThreads;
-
- /**
- * Associated inferrior process, or <code>null</code> if not available.
- */
- private IProcess fDebuggeeProcess = null;
-
- /**
- * The underlying CDI target.
- */
- private ICDITarget fCDITarget;
-
- /**
- * The name of this target.
- */
- private String fName;
-
- /**
- * The launch this target is contained in
- */
- private ILaunch fLaunch;
-
- /**
- * The debug configuration of this session
- */
- private ICDITargetConfiguration fConfig;
-
- /**
- * The disassembly manager for this target.
- */
- private Disassembly fDisassembly;
-
- /**
- * The module manager for this target.
- */
- private CModuleManager fModuleManager;
-
- /**
- * The signal manager for this target.
- */
- private CSignalManager fSignalManager;
-
- /**
- * The register manager for this target.
- */
- private CRegisterManager fRegisterManager;
-
- /**
- * A breakpoint manager for this target.
- */
- private CBreakpointManager fBreakpointManager;
-
- /**
- * The global variable manager for this target.
- */
- private CGlobalVariableManager fGlobalVariableManager;
-
- /**
- * The executable binary file associated with this target.
- */
- private IBinaryObject fBinaryFile;
-
- /**
- * The project associated with this target.
- */
- private IProject fProject;
-
- /**
- * Whether the target is little endian.
- */
- private Boolean fIsLittleEndian = null;
-
- /**
- * The target's preference set.
- */
- private Preferences fPreferences = null;
-
- /**
- * The address factory of this target.
- */
- private IAddressFactory fAddressFactory;
-
- /**
- * Support for the memory retrival on this target.
- */
- private CMemoryBlockRetrievalExtension fMemoryBlockRetrieval;
-
- /**
- * Internal ID that uniquely identifies this CDebugTarget.
- */
- private String internalD = Integer.toString(lastInternalID++);
-
- private static int lastInternalID = 1;
-
- /**
- * Constructor for CDebugTarget.
- */
- public CDebugTarget( ILaunch launch, IProject project, ICDITarget cdiTarget, String name, IProcess debuggeeProcess, IBinaryObject file, boolean allowsTerminate, boolean allowsDisconnect) {
- super( null );
- setLaunch( launch );
- setDebugTarget( this );
- setName( name );
- setProcess( debuggeeProcess );
- setProject(project);
- setExecFile( file );
- setCDITarget( cdiTarget );
- setState( CDebugElementState.SUSPENDED );
- initializePreferences();
- setConfiguration( cdiTarget.getConfiguration() );
- setThreadList( new ArrayList( 5 ) );
- createDisassembly();
- setModuleManager( new CModuleManager( this ) );
- setSignalManager( new CSignalManager( this ) );
- setRegisterManager( new CRegisterManager( this ) );
- setBreakpointManager( new CBreakpointManager( this ) );
- setGlobalVariableManager( new CGlobalVariableManager( this ) );
- setMemoryBlockRetrieval( new CMemoryBlockRetrievalExtension( this ) );
- initialize();
- DebugPlugin.getDefault().getLaunchManager().addLaunchListener( this );
- DebugPlugin.getDefault().getExpressionManager().addExpressionListener( this );
- getCDISession().getEventManager().addEventListener( this );
- }
-
- protected void initialize() {
- initializeSourceLookupPath();
- ArrayList debugEvents = new ArrayList( 1 );
- debugEvents.add( createCreateEvent() );
- initializeThreads( debugEvents );
- initializeBreakpoints();
- initializeRegisters();
- initializeSourceManager();
- initializeModuleManager();
- initializeMemoryBlocks();
- getLaunch().addDebugTarget( this );
- fireEventSet( (DebugEvent[])debugEvents.toArray( new DebugEvent[debugEvents.size()] ) );
- }
-
- private void initializeBreakpoints() {
- getBreakpointManager().initialize();
- }
-
- public void start( String stopSymbol, boolean resume ) throws DebugException {
- ICDITargetConfiguration config = getConfiguration();
- if ( config.supportsBreakpoints() ) {
- getBreakpointManager().setInitialBreakpoints();
-
- if ( stopSymbol != null && stopSymbol.length() != 0 ) {
- // See if the expression is a numeric address
- try {
- IAddress address = getAddressFactory().createAddress(stopSymbol);
- stopAtAddress(address);
- } catch (NumberFormatException nfexc) {
- // OK, expression is not a simple, absolute numeric value; keep trucking and try to resolve as expression
- stopAtSymbol( stopSymbol );
- }
- }
- }
- if ( config.supportsResume() && resume ) {
- resume();
- }
- }
-
- /**
- * Adds all of the pre-existing threads to this debug target.
- */
- protected void initializeThreads( List debugEvents ) {
- ICDIThread[] cdiThreads = new ICDIThread[0];
- try {
- cdiThreads = getCDITarget().getThreads();
- }
- catch( CDIException e ) {
- // ignore
- }
- DebugEvent suspendEvent = null;
- for( int i = 0; i < cdiThreads.length; ++i ) {
- CThread thread = createThread( cdiThreads[i] );
- debugEvents.add( thread.createCreateEvent() );
- try {
- if ( cdiThreads[i].equals( getCDITarget().getCurrentThread() ) && thread.isSuspended() ) {
- // Use BREAKPOINT as a detail to force perspective switch
- suspendEvent = thread.createSuspendEvent( DebugEvent.BREAKPOINT );
- }
- }
- catch( CDIException e ) {
- // ignore
- }
- }
- if ( suspendEvent != null ) {
- debugEvents.add( suspendEvent );
- }
- }
-
- protected void initializeRegisters() {
- getRegisterManager().initialize();
- }
-
- protected void initializeSourceManager() {
- ISourceLocator locator = getLaunch().getSourceLocator();
- if ( locator instanceof IAdaptable ) {
- ICSourceLocator clocator = (ICSourceLocator)((IAdaptable)locator).getAdapter( ICSourceLocator.class );
- if ( clocator instanceof IAdaptable ) {
- CSourceManager sm = (CSourceManager)((IAdaptable)clocator).getAdapter( CSourceManager.class );
- if ( sm != null )
- sm.setDebugTarget( this );
- }
- IResourceChangeListener listener = (IResourceChangeListener)((IAdaptable)locator).getAdapter( IResourceChangeListener.class );
- if ( listener != null )
- CCorePlugin.getWorkspace().addResourceChangeListener( listener );
- }
- }
-
- protected void initializeSourceLookupPath() {
- ISourceLocator locator = getLaunch().getSourceLocator();
- if ( locator instanceof ISourceLookupDirector ) {
- ISourceLookupParticipant[] participants = ((ISourceLookupDirector)locator).getParticipants();
- for ( int i = 0; i < participants.length; ++i ) {
- if ( participants[i] instanceof CSourceLookupParticipant ) {
- ((CSourceLookupParticipant)participants[i]).addSourceLookupChangeListener( this );
- }
- }
- setSourceLookupPath( ((ISourceLookupDirector)locator).getSourceContainers() );
- }
- }
-
- protected void initializeModuleManager() {
- ICDISharedLibrary[] slibs = new ICDISharedLibrary[0];
- try {
- slibs = getCDITarget().getSharedLibraries();
- }
- catch( CDIException e ) {
- DebugPlugin.log( e );
- }
- ICModule[] modules = null;
- if (getExecFile() != null) {
- modules = new ICModule[slibs.length + 1];
- modules[0] = CModule.createExecutable( this, getExecFile().getPath() );
- }
- else
- modules = new ICModule[slibs.length];
- for ( int i = 0; i < slibs.length; ++i ) {
- modules[i + 1] = CModule.createSharedLibrary( this, slibs[i] );
- }
- getModuleManager().addModules( modules );
- }
-
- protected void initializeMemoryBlocks() {
- getMemoryBlockRetrieval().initialize();
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.debug.core.model.IDebugTarget#getProcess()
- */
- public IProcess getProcess() {
- return fDebuggeeProcess;
- }
-
- /**
- * Sets the process associated with this debug target, possibly <code>null</code>. Set on creation.
- *
- * @param process the system process associated with the underlying CDI target,
- * or <code>null</code> if no process is associated with this debug target
- * (for a core dump debugging).
- */
- protected void setProcess( IProcess debuggeeProcess ) {
- fDebuggeeProcess = debuggeeProcess;
- }
-
- /*
- * (non-Javadoc)
- *
- * @see org.eclipse.debug.core.model.IDebugTarget#getThreads()
- */
- public IThread[] getThreads() {
- List threads = getThreadList();
- return (IThread[])threads.toArray( new IThread[threads.size()] );
- }
-
- /*
- * (non-Javadoc)
- *
- * @see org.eclipse.debug.core.model.IDebugTarget#hasThreads()
- */
- public boolean hasThreads() throws DebugException {
- return getThreadList().size() > 0;
- }
-
- /*
- * (non-Javadoc)
- *
- * @see org.eclipse.debug.core.model.IDebugTarget#getName()
- */
- public String getName() throws DebugException {
- return fName;
- }
-
- /**
- * Sets the name of this debug target.
- *
- * @param name the name of this debug target
- */
- public void setName( String name ) {
- fName = name;
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.debug.core.model.IDebugTarget#supportsBreakpoint(org.eclipse.debug.core.model.IBreakpoint)
- */
- public boolean supportsBreakpoint( IBreakpoint breakpoint ) {
- if ( !getConfiguration().supportsBreakpoints() )
- return false;
- return (breakpoint instanceof ICBreakpoint && getBreakpointManager().supportsBreakpoint( (ICBreakpoint)breakpoint ));
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.debug.core.ILaunchListener#launchRemoved(org.eclipse.debug.core.ILaunch)
- */
- public void launchRemoved( ILaunch launch ) {
- if ( !isAvailable() ) {
- return;
- }
- if ( launch.equals( getLaunch() ) ) {
- // This target has been deregistered, but it hasn't been successfully terminated.
- // Update internal state to reflect that it is disconnected
- disconnected();
- }
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.debug.core.ILaunchListener#launchAdded(org.eclipse.debug.core.ILaunch)
- */
- public void launchAdded( ILaunch launch ) {
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.debug.core.ILaunchListener#launchChanged(org.eclipse.debug.core.ILaunch)
- */
- public void launchChanged( ILaunch launch ) {
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.debug.core.model.ITerminate#canTerminate()
- */
- public boolean canTerminate() {
- return supportsTerminate() && isAvailable();
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.debug.core.model.ITerminate#isTerminated()
- */
- public boolean isTerminated() {
- return ( getState().equals( CDebugElementState.TERMINATED ) );
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.debug.core.model.ITerminate#terminate()
- */
- public void terminate() throws DebugException {
- if ( !canTerminate() ) {
- return;
- }
- final CDebugElementState newState = CDebugElementState.TERMINATING;
- changeState( newState );
- try {
- getCDITarget().terminate();
- }
- catch( CDIException e ) {
- if ( getState() == newState ) {
- restoreOldState();
- }
- targetRequestFailed( e.getMessage(), null );
- }
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.debug.core.model.ISuspendResume#canResume()
- */
- public boolean canResume() {
- return getConfiguration().supportsResume() && isSuspended();
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.debug.core.model.ISuspendResume#canSuspend()
- */
- public boolean canSuspend() {
- if ( !getConfiguration().supportsSuspend() )
- return false;
- if ( getState().equals( CDebugElementState.RESUMED ) ) {
- // only allow suspend if no threads are currently suspended
- IThread[] threads = getThreads();
- for( int i = 0; i < threads.length; i++ ) {
- if ( threads[i].isSuspended() ) {
- return false;
- }
- }
- return true;
- }
- return false;
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.debug.core.model.ISuspendResume#isSuspended()
- */
- public boolean isSuspended() {
- return ( getState().equals( CDebugElementState.SUSPENDED ) );
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.debug.core.model.ISuspendResume#resume()
- */
- public void resume() throws DebugException {
- if ( !canResume() )
- return;
- final CDebugElementState newState = CDebugElementState.RESUMING;
- changeState( newState );
- try {
- getCDITarget().resume( false );
- }
- catch( CDIException e ) {
- if ( getState() == newState ) {
- restoreOldState();
- }
- targetRequestFailed( e.getMessage(), null );
- }
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.debug.core.model.ISuspendResume#suspend()
- */
- public void suspend() throws DebugException {
- if ( !canSuspend() )
- return;
- final CDebugElementState newState = CDebugElementState.SUSPENDING;
- changeState( newState );
- try {
- getCDITarget().suspend();
- }
- catch( CDIException e ) {
- if ( getState() == newState ) {
- restoreOldState();
- }
- targetRequestFailed( e.getMessage(), null );
- }
- }
-
- protected boolean isSuspending() {
- return ( getState().equals( CDebugElementState.SUSPENDING ) );
- }
-
- /**
- * Notifies threads that the target has been suspended.
- */
- protected void suspendThreads( ICDISuspendedEvent event ) {
- Iterator it = getThreadList().iterator();
- while( it.hasNext() ) {
- CThread thread = (CThread)it.next();
- ICDIThread suspensionThread = null;
- try {
- suspensionThread = getCDITarget().getCurrentThread();
- }
- catch( CDIException e ) {
- // ignore
- }
- thread.suspendByTarget( event.getReason(), suspensionThread );
- }
- }
-
- /**
- * Refreshes the thread list.
- */
- protected synchronized List refreshThreads() {
- ArrayList newThreads = new ArrayList( 5 );
- ArrayList list = new ArrayList( 5 );
- ArrayList debugEvents = new ArrayList( 5 );
- List oldList = (List)getThreadList().clone();
- ICDIThread[] cdiThreads = new ICDIThread[0];
- ICDIThread currentCDIThread = null;
- try {
- cdiThreads = getCDITarget().getThreads();
- currentCDIThread = getCDITarget().getCurrentThread();
- }
- catch( CDIException e ) {
- }
- for( int i = 0; i < cdiThreads.length; ++i ) {
- CThread thread = findThread( oldList, cdiThreads[i] );
- if ( thread == null ) {
- thread = new CThread( this, cdiThreads[i] );
- newThreads.add( thread );
- }
- else {
- oldList.remove( thread );
- }
- thread.setCurrent( cdiThreads[i].equals( currentCDIThread ) );
- list.add( thread );
- }
- Iterator it = oldList.iterator();
- while( it.hasNext() ) {
- CThread thread = (CThread)it.next();
- thread.terminated();
- debugEvents.add( thread.createTerminateEvent() );
- }
- setThreadList( list );
- it = newThreads.iterator();
- while( it.hasNext() ) {
- debugEvents.add( ((CThread)it.next()).createCreateEvent() );
- }
- if ( debugEvents.size() > 0 )
- fireEventSet( (DebugEvent[])debugEvents.toArray( new DebugEvent[debugEvents.size()] ) );
- return newThreads;
- }
-
- /**
- * Notifies threads that the target has been resumed.
- */
- protected synchronized void resumeThreads( List debugEvents, int detail ) {
- Iterator it = getThreadList().iterator();
- while( it.hasNext() ) {
- ((CThread)it.next()).resumedByTarget( detail, debugEvents );
- }
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.debug.core.IBreakpointListener#breakpointAdded(org.eclipse.debug.core.model.IBreakpoint)
- */
- public void breakpointAdded( IBreakpoint breakpoint ) {
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.debug.core.IBreakpointListener#breakpointRemoved(org.eclipse.debug.core.model.IBreakpoint, org.eclipse.core.resources.IMarkerDelta)
- */
- public void breakpointRemoved( IBreakpoint breakpoint, IMarkerDelta delta ) {
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.debug.core.IBreakpointListener#breakpointChanged(org.eclipse.debug.core.model.IBreakpoint, org.eclipse.core.resources.IMarkerDelta)
- */
- public void breakpointChanged( IBreakpoint breakpoint, IMarkerDelta delta ) {
- }
-
- /**
- * Returns whether this debug target supports disconnecting.
- *
- * @return whether this debug target supports disconnecting
- */
- protected boolean supportsDisconnect() {
- return getConfiguration().supportsDisconnect();
- }
-
- /**
- * Returns whether this debug target supports termination.
- *
- * @return whether this debug target supports termination
- */
- protected boolean supportsTerminate() {
- return getConfiguration().supportsTerminate();
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.debug.core.model.IDisconnect#canDisconnect()
- */
- public boolean canDisconnect() {
- return supportsDisconnect() && isAvailable();
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.debug.core.model.IDisconnect#disconnect()
- */
- public void disconnect() throws DebugException {
- if ( isDisconnecting() ) {
- return;
- }
- final CDebugElementState newState = CDebugElementState.DISCONNECTING;
- changeState( newState );
- try {
- getCDITarget().disconnect();
- }
- catch( CDIException e ) {
- if ( getState() == newState ) {
- restoreOldState();
- }
- targetRequestFailed( e.getMessage(), null );
- }
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.debug.core.model.IDisconnect#isDisconnected()
- */
- public boolean isDisconnected() {
- return ( getState().equals( CDebugElementState.DISCONNECTED ) );
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.debug.core.model.IMemoryBlockRetrieval#supportsStorageRetrieval()
- */
- public boolean supportsStorageRetrieval() {
- return false;
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.debug.core.model.IMemoryBlockRetrieval#getMemoryBlock(long, long)
- */
- public IMemoryBlock getMemoryBlock( long startAddress, long length ) throws DebugException {
- return null;
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.debug.core.model.IDebugElement#getLaunch()
- */
- public ILaunch getLaunch() {
- return fLaunch;
- }
-
- /**
- * Sets the launch this target is contained in
- *
- * @param launch the launch this target is contained in
- */
- private void setLaunch( ILaunch launch ) {
- fLaunch = launch;
- }
-
- /**
- * Returns the list of threads contained in this debug target.
- *
- * @return list of threads
- */
- protected ArrayList getThreadList() {
- return fThreads;
- }
-
- /**
- * Sets the list of threads contained in this debug target. Set to an empty collection on creation. Threads are added and removed as they start and end. On
- * termination this collection is set to the immutable singleton empty list.
- *
- * @param threads empty list
- */
- private void setThreadList( ArrayList threads ) {
- fThreads = threads;
- }
-
- private void setCDITarget( ICDITarget cdiTarget ) {
- fCDITarget = cdiTarget;
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.core.runtime.IAdaptable#getAdapter(java.lang.Class)
- */
- public Object getAdapter( Class adapter ) {
- if ( adapter.equals( ICDebugElement.class ) )
- return this;
- if ( adapter.equals( CDebugElement.class ) )
- return this;
- if ( adapter.equals( IDebugTarget.class ) )
- return this;
- if ( adapter.equals( ICDebugTarget.class ) )
- return this;
- if ( adapter.equals( CDebugTarget.class ) )
- return this;
- if ( adapter.equals( ICDITarget.class ) )
- return fCDITarget;
- if ( adapter.equals( IDebuggerProcessSupport.class ) )
- return this;
- if ( adapter.equals( IExecFileInfo.class ) )
- return this;
- if ( adapter.equals( CBreakpointManager.class ) )
- return getBreakpointManager();
- if ( adapter.equals( CSignalManager.class ) )
- return getSignalManager();
- if ( adapter.equals( CRegisterManager.class ) )
- return getRegisterManager();
- if ( adapter.equals( ICGlobalVariableManager.class ) )
- return getGlobalVariableManager();
- if ( adapter.equals( ICDISession.class ) )
- return getCDISession();
- if ( adapter.equals( IMemoryBlockRetrievalExtension.class ) )
- return getMemoryBlockRetrieval();
- if ( adapter.equals( IMemoryBlockRetrieval.class ) )
- return getMemoryBlockRetrieval();
- if ( adapter.equals( IModuleRetrieval.class ) )
- return getModuleManager();
- return super.getAdapter( adapter );
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.cdt.debug.core.cdi.event.ICDIEventListener#handleDebugEvents(org.eclipse.cdt.debug.core.cdi.event.ICDIEvent[])
- */
- public void handleDebugEvents( ICDIEvent[] events ) {
- for( int i = 0; i < events.length; i++ ) {
- ICDIEvent event = events[i];
- ICDIObject source = event.getSource();
- if ( source == null && event instanceof ICDIDestroyedEvent ) {
- handleTerminatedEvent( (ICDIDestroyedEvent)event );
- }
- else if ( source != null && source.getTarget().equals( getCDITarget() ) ) {
- if ( event instanceof ICDICreatedEvent ) {
- if ( source instanceof ICDIThread ) {
- handleThreadCreatedEvent( (ICDICreatedEvent)event );
- }
- if ( source instanceof ICDISharedLibrary ) {
- getModuleManager().sharedLibraryLoaded( (ICDISharedLibrary)source );
- }
- }
- else if ( event instanceof ICDISuspendedEvent ) {
- if ( source instanceof ICDITarget ) {
- handleSuspendedEvent( (ICDISuspendedEvent)event );
- }
- }
- else if ( event instanceof ICDIResumedEvent ) {
- if ( source instanceof ICDITarget ) {
- handleResumedEvent( (ICDIResumedEvent)event );
- }
- }
- else if ( event instanceof ICDIExitedEvent ) {
- if ( source instanceof ICDITarget ) {
- handleExitedEvent( (ICDIExitedEvent)event );
- }
- }
- else if ( event instanceof ICDIDestroyedEvent ) {
- if ( source instanceof ICDIThread ) {
- handleThreadTerminatedEvent( (ICDIDestroyedEvent)event );
- }
- if ( source instanceof ICDISharedLibrary ) {
- getModuleManager().sharedLibraryUnloaded( (ICDISharedLibrary)source );
- }
- }
- else if ( event instanceof ICDIDisconnectedEvent ) {
- if ( source instanceof ICDITarget ) {
- handleDisconnectedEvent( (ICDIDisconnectedEvent)event );
- }
- }
- else if ( event instanceof ICDIChangedEvent ) {
- if ( source instanceof ICDITarget ) {
- handleChangedEvent( (ICDIChangedEvent)event );
- }
- if ( source instanceof ICDISharedLibrary ) {
- handleSymbolsLoaded( (ICDISharedLibrary)source );
- }
- if ( source instanceof ICDISignal ) {
- getSignalManager().signalChanged( (ICDISignal)source );
- }
- }
- else if ( event instanceof ICDIRestartedEvent ) {
- if ( source instanceof ICDITarget ) {
- handleRestartedEvent( (ICDIRestartedEvent)event );
- }
- }
- }
- }
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.cdt.debug.core.model.IRestart#canRestart()
- */
- public boolean canRestart() {
- return getConfiguration().supportsRestart() && isSuspended();
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.cdt.debug.core.model.IRestart#restart()
- */
- public void restart() throws DebugException {
- if ( !canRestart() ) {
- return;
- }
- try {
- ILaunchConfiguration launchConfig = getLaunch().getLaunchConfiguration();
- if ( launchConfig.getAttribute( ICDTLaunchConfigurationConstants.ATTR_DEBUGGER_STOP_AT_MAIN, ICDTLaunchConfigurationConstants.DEBUGGER_STOP_AT_MAIN_DEFAULT ) ) {
- String mainSymbol = launchConfig.getAttribute( ICDTLaunchConfigurationConstants.ATTR_DEBUGGER_STOP_AT_MAIN_SYMBOL, ICDTLaunchConfigurationConstants.DEBUGGER_STOP_AT_MAIN_SYMBOL_DEFAULT );
- ICDILocation location = getCDITarget().createFunctionLocation( "", mainSymbol ); //$NON-NLS-1$
- setInternalTemporaryBreakpoint( location );
- }
- }
- catch( CoreException e ) {
- requestFailed( e.getMessage(), e );
- }
-
- final CDebugElementState newState = CDebugElementState.RESTARTING;
- changeState( newState );
- try {
- getCDITarget().restart();
- }
- catch( CDIException e ) {
- if ( getState() == newState ) {
- restoreOldState();
- }
- targetRequestFailed( e.getMessage(), e );
- }
- }
-
- /**
- * Returns whether this target is available to handle client requests.
- *
- * @return whether this target is available to handle client requests
- */
- public boolean isAvailable() {
- return !(isTerminated() || isTerminating() || isDisconnected() || isDisconnecting());
- }
-
- /**
- * Returns whether this target is in the process of terminating.
- *
- * @return whether this target is terminating
- */
- protected boolean isTerminating() {
- return ( getState().equals( CDebugElementState.TERMINATING ) );
- }
-
- /**
- * Updates the state of this target to be terminated, if not already terminated.
- */
- protected void terminated() {
- if ( !isTerminated() ) {
- if ( !isDisconnected() ) {
- setState( CDebugElementState.TERMINATED );
- }
- cleanup();
- fireTerminateEvent();
- }
- }
-
- /**
- * Returns whether this target is in the process of terminating.
- *
- * @return whether this target is terminating
- */
- protected boolean isDisconnecting() {
- return ( getState().equals( CDebugElementState.DISCONNECTING ) );
- }
-
- /**
- * Updates the state of this target for disconnection.
- */
- protected void disconnected() {
- if ( !isDisconnected() ) {
- setState( CDebugElementState.DISCONNECTED );
- cleanup();
- fireTerminateEvent();
- }
- }
-
- /**
- * Cleans up the internal state of this debug target as a result of a session ending.
- */
- protected void cleanup() {
- resetStatus();
- removeAllThreads();
- getCDISession().getEventManager().removeEventListener( this );
- DebugPlugin.getDefault().getExpressionManager().removeExpressionListener( this );
- DebugPlugin.getDefault().getLaunchManager().removeLaunchListener( this );
- saveGlobalVariables();
- disposeGlobalVariableManager();
- disposeModuleManager();
- disposeSignalManager();
- saveRegisterGroups();
- disposeRegisterManager();
- saveMemoryBlocks();
- disposeMemoryBlockRetrieval();
- disposeDisassembly();
- disposeSourceManager();
- disposeSourceLookupPath();
- disposeBreakpointManager();
- removeAllExpressions();
- disposePreferences();
- }
-
- /**
- * Removes all threads from this target's collection of threads, firing a terminate event for each.
- */
- protected void removeAllThreads() {
- List threads = getThreadList();
- setThreadList( new ArrayList( 0 ) );
- ArrayList debugEvents = new ArrayList( threads.size() );
- Iterator it = threads.iterator();
- while( it.hasNext() ) {
- CThread thread = (CThread)it.next();
- thread.terminated();
- debugEvents.add( thread.createTerminateEvent() );
- }
- fireEventSet( (DebugEvent[])debugEvents.toArray( new DebugEvent[debugEvents.size()] ) );
- }
-
- /**
- * Removes all expressions from this target.
- */
- protected void removeAllExpressions() {
- IExpressionManager em = DebugPlugin.getDefault().getExpressionManager();
- IExpression[] expressions = em.getExpressions();
- for( int i = 0; i < expressions.length; ++i ) {
- if ( expressions[i] instanceof CExpression && expressions[i].getDebugTarget().equals( this ) ) {
- em.removeExpression( expressions[i] );
- }
- }
- }
-
- /**
- * Creates, adds and returns a thread for the given underlying CDI thread. A creation event is fired for the thread. Returns <code>null</code> if during
- * the creation of the thread this target is set to the disconnected state.
- *
- * @param thread the underlying CDI thread
- * @return model thread
- */
- protected CThread createThread( ICDIThread cdiThread ) {
- CThread thread = new CThread( this, cdiThread );
- getThreadList().add( thread );
- return thread;
- }
-
- private void handleSuspendedEvent( ICDISuspendedEvent event ) {
- setState( CDebugElementState.SUSPENDED );
- ICDISessionObject reason = event.getReason();
- setCurrentStateInfo( reason );
- // Reset the registers that have errors.
- getRegisterManager().targetSuspended();
- getBreakpointManager().skipBreakpoints( false );
- List newThreads = refreshThreads();
- if (event.getSource() instanceof ICDITarget) {
- if (!(this.getConfiguration() instanceof ICDITargetConfiguration2) || !((ICDITargetConfiguration2)this.getConfiguration()).supportsThreadControl())
- suspendThreads(event);
- }
- // We need this for debuggers that don't have notifications
- // for newly created threads.
- else if ( event.getSource() instanceof ICDIThread ) {
- CThread thread = findThread( (ICDIThread)event.getSource() );
- if ( thread != null && newThreads.contains( thread ) ) {
- ICDIEvent[] evts = new ICDIEvent[]{ event };
- thread.handleDebugEvents( evts );
- }
- }
- if ( reason instanceof ICDIEndSteppingRange ) {
- handleEndSteppingRange( (ICDIEndSteppingRange)reason );
- }
- else if ( reason instanceof ICDIBreakpointHit ) {
- handleBreakpointHit( (ICDIBreakpointHit)reason );
- }
- else if ( reason instanceof ICDISignalReceived ) {
- handleSuspendedBySignal( (ICDISignalReceived)reason );
- }
- else if ( reason instanceof ICDIWatchpointTrigger ) {
- handleWatchpointTrigger( (ICDIWatchpointTrigger)reason );
- }
- else if ( reason instanceof ICDIWatchpointScope ) {
- handleWatchpointScope( (ICDIWatchpointScope)reason );
- }
- else if ( reason instanceof ICDIErrorInfo ) {
- handleErrorInfo( (ICDIErrorInfo)reason );
- }
- else if ( reason instanceof ICDISharedLibraryEvent ) {
- handleSuspendedBySolibEvent( (ICDISharedLibraryEvent)reason );
- }
- else { // reason is not specified
- fireSuspendEvent( DebugEvent.UNSPECIFIED );
- }
- }
-
- private void handleResumedEvent( ICDIResumedEvent event ) {
- setState( CDebugElementState.RESUMED );
- setCurrentStateInfo( null );
- resetStatus();
- ArrayList debugEvents = new ArrayList( 10 );
- int detail = DebugEvent.UNSPECIFIED;
- switch( event.getType() ) {
- case ICDIResumedEvent.CONTINUE:
- detail = DebugEvent.CLIENT_REQUEST;
- break;
- case ICDIResumedEvent.STEP_INTO:
- case ICDIResumedEvent.STEP_INTO_INSTRUCTION:
- detail = DebugEvent.STEP_INTO;
- break;
- case ICDIResumedEvent.STEP_OVER:
- case ICDIResumedEvent.STEP_OVER_INSTRUCTION:
- detail = DebugEvent.STEP_OVER;
- break;
- case ICDIResumedEvent.STEP_RETURN:
- detail = DebugEvent.STEP_RETURN;
- break;
- }
- debugEvents.add( createResumeEvent( detail ) );
-
- if (!(this.getConfiguration() instanceof ICDITargetConfiguration2) || !((ICDITargetConfiguration2)this.getConfiguration()).supportsThreadControl())
- resumeThreads( debugEvents, detail );
-
- fireEventSet( (DebugEvent[])debugEvents.toArray( new DebugEvent[debugEvents.size()] ) );
- }
-
- private void handleEndSteppingRange( ICDIEndSteppingRange endSteppingRange ) {
- fireSuspendEvent( DebugEvent.UNSPECIFIED );
- }
-
- private void handleBreakpointHit( ICDIBreakpointHit breakpointHit ) {
- fireSuspendEvent( DebugEvent.BREAKPOINT );
- }
-
- private void handleWatchpointTrigger( ICDIWatchpointTrigger wt ) {
- fireSuspendEvent( DebugEvent.BREAKPOINT );
- }
-
- private void handleWatchpointScope( ICDIWatchpointScope ws ) {
- getBreakpointManager().watchpointOutOfScope( ws.getWatchpoint() );
- fireSuspendEvent( DebugEvent.BREAKPOINT );
- }
-
- private void handleSuspendedBySignal( ICDISignalReceived signal ) {
- fireSuspendEvent( DebugEvent.CLIENT_REQUEST );
- }
-
- private void handleErrorInfo( ICDIErrorInfo info ) {
- setStatus( ICDebugElementStatus.ERROR, (info != null) ? info.getMessage() : null );
- if ( info != null ) {
- MultiStatus status = new MultiStatus( CDebugCorePlugin.getUniqueIdentifier(), ICDebugInternalConstants.STATUS_CODE_ERROR, CoreModelMessages.getString( "CDebugTarget.1" ), //$NON-NLS-1$
- null );
- StringTokenizer st = new StringTokenizer( info.getDetailMessage(), "\n\r" ); //$NON-NLS-1$
- while( st.hasMoreTokens() ) {
- String token = st.nextToken();
- if ( token.length() > 200 ) {
- token = token.substring( 0, 200 );
- }
- status.add( new Status( IStatus.ERROR, status.getPlugin(), ICDebugInternalConstants.STATUS_CODE_ERROR, token, null ) );
- }
- CDebugUtils.error( status, this );
- }
- fireSuspendEvent( DebugEvent.UNSPECIFIED );
- }
-
- private void handleSuspendedBySolibEvent( ICDISharedLibraryEvent solibEvent ) {
- fireSuspendEvent( DebugEvent.UNSPECIFIED );
- }
-
- private void handleExitedEvent( ICDIExitedEvent event ) {
- removeAllThreads();
- setState( CDebugElementState.EXITED );
- setCurrentStateInfo( event.getReason() );
- fireChangeEvent( DebugEvent.CONTENT );
- ICDISessionConfiguration sessionConfig = getCDISession().getConfiguration();
- if ( sessionConfig != null && sessionConfig.terminateSessionOnExit() )
- terminated();
- }
-
- private void handleTerminatedEvent( ICDIDestroyedEvent event ) {
- terminated();
- }
-
- private void handleDisconnectedEvent( ICDIDisconnectedEvent event ) {
- disconnected();
- }
-
- private void handleChangedEvent( ICDIChangedEvent event ) {
- }
-
- private void handleRestartedEvent( ICDIRestartedEvent event ) {
- }
-
- private void handleThreadCreatedEvent( ICDICreatedEvent event ) {
- ICDIThread cdiThread = (ICDIThread)event.getSource();
- CThread thread = findThread( cdiThread );
- if ( thread == null ) {
- thread = createThread( cdiThread );
- thread.fireCreationEvent();
- }
- }
-
- private void handleThreadTerminatedEvent( ICDIDestroyedEvent event ) {
- ICDIThread cdiThread = (ICDIThread)event.getSource();
- CThread thread = findThread( cdiThread );
- if ( thread != null ) {
- getThreadList().remove( thread );
- thread.terminated();
- thread.fireTerminateEvent();
- }
- }
-
- /**
- * Finds and returns the model thread for the associated CDI thread, or <code>null</code> if not found.
- *
- * @param the underlying CDI thread
- * @return the associated model thread
- */
- public CThread findThread( ICDIThread cdiThread ) {
- List threads = getThreadList();
- for( int i = 0; i < threads.size(); i++ ) {
- CThread t = (CThread)threads.get( i );
- if ( t.getCDIThread().equals( cdiThread ) )
- return t;
- }
- return null;
- }
-
- public CThread findThread( List threads, ICDIThread cdiThread ) {
- for( int i = 0; i < threads.size(); i++ ) {
- CThread t = (CThread)threads.get( i );
- if ( t.getCDIThread().equals( cdiThread ) )
- return t;
- }
- return null;
- }
-
- /**
- * Returns the debug configuration of this target.
- *
- * @return the debug configuration of this target
- */
- protected ICDITargetConfiguration getConfiguration() {
- return fConfig;
- }
-
- /**
- * Sets the debug configuration of this target.
- *
- * @param config the debug configuration to set
- */
- private void setConfiguration( ICDITargetConfiguration config ) {
- fConfig = config;
- }
-
- protected boolean supportsExpressionEvaluation() {
- return getConfiguration().supportsExpressionEvaluation();
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.debug.core.IExpressionListener#expressionAdded(org.eclipse.debug.core.model.IExpression)
- */
- public void expressionAdded( IExpression expression ) {
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.debug.core.IExpressionListener#expressionChanged(org.eclipse.debug.core.model.IExpression)
- */
- public void expressionChanged( IExpression expression ) {
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.debug.core.IExpressionListener#expressionRemoved(org.eclipse.debug.core.model.IExpression)
- */
- public void expressionRemoved( IExpression expression ) {
- if ( expression instanceof CExpression && expression.getDebugTarget().equals( this ) ) {
- ((CExpression)expression).dispose();
- }
- }
-
- public void setInternalTemporaryBreakpoint( ICDILocation location ) throws DebugException {
- try {
- if (location instanceof ICDIFunctionLocation) {
- getCDITarget().setFunctionBreakpoint( ICDIBreakpoint.TEMPORARY, (ICDIFunctionLocation)location, null, false );
- } else if (location instanceof ICDILineLocation) {
- getCDITarget().setLineBreakpoint( ICDIBreakpoint.TEMPORARY, (ICDILineLocation)location, null, false );
- } else if (location instanceof ICDIAddressLocation) {
- getCDITarget().setAddressBreakpoint( ICDIBreakpoint.TEMPORARY, (ICDIAddressLocation)location, null, false );
- } else {
- // ???
- targetRequestFailed("not_a_location", null); //$NON-NLS-1$
- }
- }
- catch( CDIException e ) {
- targetRequestFailed( e.getMessage(), null );
- }
- }
-
- protected IThread getCurrentThread() throws DebugException {
- IThread[] threads = getThreads();
- for( int i = 0; i < threads.length; ++i ) {
- if ( ((CThread)threads[i]).isCurrent() )
- return threads[i];
- }
- return null;
- }
-
- protected ISourceLocator getSourceLocator() {
- return getLaunch().getSourceLocator();
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.cdt.debug.core.model.IExecFileInfo#isLittleEndian()
- */
- public boolean isLittleEndian() {
- if ( fIsLittleEndian == null ) {
- fIsLittleEndian = Boolean.TRUE;
- IBinaryObject file;
- file = getBinaryFile();
- if ( file != null ) {
- fIsLittleEndian = Boolean.valueOf( file.isLittleEndian() );
- }
- }
- return fIsLittleEndian.booleanValue();
- }
-
-
- /* (non-Javadoc)
- * @see org.eclipse.cdt.debug.core.model.IExecFileInfo#getExecFile()
- */
- public IBinaryObject getExecFile() {
- return getBinaryFile();
- }
-
- public IBinaryObject getBinaryFile() {
- return fBinaryFile;
- }
-
- private void setExecFile( IBinaryObject file ) {
- fBinaryFile = file;
- }
-
- private void setProject(IProject project) {
- fProject = project;
- }
-
- public IProject getProject() {
- return fProject;
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.cdt.debug.core.model.IExecFileInfo#getGlobals()
- */
- public IGlobalVariableDescriptor[] getGlobals() throws DebugException {
- ICDITarget cdiTarget = getCDITarget();
- IGlobalVariableDescriptor[] globals = new IGlobalVariableDescriptor[0];
- // If the backend can give us the globals...
- if (cdiTarget instanceof ICDITarget2)
- globals = ((ICDITarget2) cdiTarget).getGlobalVariables();
- // otherwise ask the binary
- if (globals.length == 0)
- {
- ArrayList list = new ArrayList();
- IBinaryObject file = getBinaryFile();
- if (file != null) {
- list.addAll( getCFileGlobals( file ) );
- }
- globals = (IGlobalVariableDescriptor[])list.toArray( new IGlobalVariableDescriptor[list.size()] );
- }
- return globals;
- }
-
- private List getCFileGlobals( IBinaryObject file ) throws DebugException {
- ArrayList list = new ArrayList();
- ISymbol[] symbols = file.getSymbols();
- for( int i = 0; i < symbols.length; ++i ) {
- if (symbols[i].getType() == ISymbol.VARIABLE) {
- list.add( CVariableFactory.createGlobalVariableDescriptor( symbols[i] ) );
- }
- }
- return list;
- }
-
- protected void setModuleManager( CModuleManager mm ) {
- fModuleManager = mm;
- }
-
- protected CModuleManager getModuleManager() {
- return fModuleManager;
- }
-
- protected void disposeModuleManager() {
- fModuleManager.dispose();
- fModuleManager = null;
- }
-
- protected void setSignalManager( CSignalManager sm ) {
- fSignalManager = sm;
- }
-
- protected CSignalManager getSignalManager() {
- return fSignalManager;
- }
-
- protected void disposeSignalManager() {
- fSignalManager.dispose();
- }
-
- protected void saveRegisterGroups() {
- fRegisterManager.save();
- }
-
- protected void disposeRegisterManager() {
- fRegisterManager.dispose();
- }
-
- protected void saveGlobalVariables() {
- fGlobalVariableManager.save();
- }
-
- protected void disposeGlobalVariableManager() {
- fGlobalVariableManager.dispose();
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.cdt.debug.core.model.IResumeWithoutSignal#canResumeWithoutSignal()
- */
- public boolean canResumeWithoutSignal() {
- // Check if the configuration supports this!!!
- return ( canResume() && getCurrentStateInfo() instanceof ICDISignalReceived );
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.cdt.debug.core.model.IResumeWithoutSignal#resumeWithoutSignal()
- */
- public void resumeWithoutSignal() throws DebugException {
- if ( !canResume() )
- return;
- final CDebugElementState newState = CDebugElementState.RESUMING;
- changeState( newState );
- try {
- getCDITarget().resume( false );
- }
- catch( CDIException e ) {
- if ( getState() == newState ) {
- restoreOldState();
- }
- targetRequestFailed( e.getMessage(), e );
- }
- }
-
- public CRegisterManager getRegisterManager() {
- return fRegisterManager;
- }
-
- protected void setRegisterManager( CRegisterManager registerManager ) {
- fRegisterManager = registerManager;
- }
-
- public IRegisterGroup[] getRegisterGroups( CStackFrame frame ) throws DebugException {
- return getRegisterManager().getRegisterGroups( frame );
- }
-
- protected void disposeSourceManager() {
- ISourceLocator locator = getSourceLocator();
- if ( locator instanceof IAdaptable ) {
- IResourceChangeListener listener = (IResourceChangeListener)((IAdaptable)locator).getAdapter( IResourceChangeListener.class );
- if ( listener != null )
- CCorePlugin.getWorkspace().removeResourceChangeListener( listener );
- }
- }
-
- protected void disposeSourceLookupPath() {
- ISourceLocator locator = getLaunch().getSourceLocator();
- if ( locator instanceof ISourceLookupDirector ) {
- ISourceLookupParticipant[] participants = ((ISourceLookupDirector)locator).getParticipants();
- for ( int i = 0; i < participants.length; ++i ) {
- if ( participants[i] instanceof CSourceLookupParticipant ) {
- ((CSourceLookupParticipant)participants[i]).removeSourceLookupChangeListener( this );
- }
- }
- }
- }
-
- protected void saveMemoryBlocks() {
- getMemoryBlockRetrieval().save();
- }
-
- protected void disposeMemoryBlockRetrieval() {
- getMemoryBlockRetrieval().dispose();
- }
-
- protected CBreakpointManager getBreakpointManager() {
- return fBreakpointManager;
- }
-
- protected void setBreakpointManager( CBreakpointManager manager ) {
- fBreakpointManager = manager;
- }
-
- protected void disposeBreakpointManager() {
- if ( getBreakpointManager() != null )
- getBreakpointManager().dispose();
- }
-
- /* (non-Javadoc)
- * @see java.lang.Object#toString()
- */
- public String toString() {
- String result = ""; //$NON-NLS-1$
- try {
- result = getName();
- }
- catch( DebugException e ) {
- }
- return result;
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.cdt.debug.core.model.ICDebugTarget#getDisassembly()
- */
- public IDisassembly getDisassembly() throws DebugException {
- return fDisassembly;
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.cdt.debug.core.model.ICDebugTarget#getSignals()
- */
- public ICSignal[] getSignals() throws DebugException {
- CSignalManager sm = getSignalManager();
- if ( sm != null ) {
- return sm.getSignals();
- }
- return new ICSignal[0];
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.cdt.debug.core.model.ICDebugTarget#hasSignals()
- */
- public boolean hasSignals() throws DebugException {
- CSignalManager sm = getSignalManager();
- if ( sm != null ) {
- return (sm.getSignals().length > 0);
- }
- return false;
- }
-
- private void createDisassembly() {
- this.fDisassembly = new Disassembly( this );
- }
-
- private void disposeDisassembly() {
- if ( fDisassembly != null )
- fDisassembly.dispose();
- fDisassembly = null;
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.cdt.debug.core.model.IBreakpointTarget#getBreakpointAddress(org.eclipse.cdt.debug.core.model.ICLineBreakpoint)
- */
- public IAddress getBreakpointAddress( ICLineBreakpoint breakpoint ) throws DebugException {
- return (getBreakpointManager() != null) ? getBreakpointManager().getBreakpointAddress( breakpoint ) : getAddressFactory().getZero();
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.cdt.debug.core.model.ISteppingModeTarget#enableInstructionStepping(boolean)
- */
- public void enableInstructionStepping( boolean enabled ) {
- fPreferences.setValue( PREF_INSTRUCTION_STEPPING_MODE, enabled );
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.cdt.debug.core.model.ISteppingModeTarget#isInstructionSteppingEnabled()
- */
- public boolean isInstructionSteppingEnabled() {
- return fPreferences.getBoolean( PREF_INSTRUCTION_STEPPING_MODE ) ||
- CDebugCorePlugin.getDefault().getPluginPreferences().getBoolean( ICDebugConstants.PREF_INSTRUCTION_STEP_MODE_ON );
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.cdt.debug.core.model.ISteppingModeTarget#supportsInstructionStepping()
- */
- public boolean supportsInstructionStepping() {
- return getConfiguration().supportsInstructionStepping();
- }
-
- private void initializePreferences() {
- fPreferences = new Preferences();
- fPreferences.setDefault( PREF_INSTRUCTION_STEPPING_MODE, false );
- }
-
- private void disposePreferences() {
- fPreferences = null;
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.cdt.debug.core.model.ITargetProperties#addPropertyChangeListener(org.eclipse.core.runtime.Preferences.IPropertyChangeListener)
- */
- public void addPropertyChangeListener( IPropertyChangeListener listener ) {
- if ( fPreferences != null )
- fPreferences.addPropertyChangeListener( listener );
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.cdt.debug.core.model.ITargetProperties#removePropertyChangeListener(org.eclipse.core.runtime.Preferences.IPropertyChangeListener)
- */
- public void removePropertyChangeListener( IPropertyChangeListener listener ) {
- if ( fPreferences != null )
- fPreferences.removePropertyChangeListener( listener );
- }
-
- protected CGlobalVariableManager getGlobalVariableManager() {
- return fGlobalVariableManager;
- }
-
- private void setGlobalVariableManager( CGlobalVariableManager globalVariableManager ) {
- fGlobalVariableManager = globalVariableManager;
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.cdt.debug.core.model.ICDebugTarget#isPostMortem()
- */
- public boolean isPostMortem() {
- return false;
- }
-
- public IAddressFactory getAddressFactory() {
- if ( fAddressFactory == null ) {
- if ( getExecFile() != null && getProject() != null ) {
- IBinaryObject file;
- file = getBinaryFile();
- if (file != null) {
- fAddressFactory = file.getAddressFactory();
- }
- }
- else {
- // No binary file, possible when we do pure assembly level debug
- // Without any binary file involved, ask CDI plugin for default
- // AddressFactory, if any.
- if (fCDITarget instanceof ICDIAddressFactoryManagement) {
- fAddressFactory = ((ICDIAddressFactoryManagement) fCDITarget).getAddressFactory();
- }
- }
- }
- return fAddressFactory;
- }
-
- private CMemoryBlockRetrievalExtension getMemoryBlockRetrieval() {
- return fMemoryBlockRetrieval;
- }
-
- private void setMemoryBlockRetrieval( CMemoryBlockRetrievalExtension memoryBlockRetrieval ) {
- fMemoryBlockRetrieval = memoryBlockRetrieval;
- }
-
- private void changeState( CDebugElementState state ) {
- setState( state );
- Iterator it = getThreadList().iterator();
- while( it.hasNext() ) {
- ((CThread)it.next()).setState( state );
- }
- }
-
- protected void restoreOldState() {
- restoreState();
- Iterator it = getThreadList().iterator();
- while( it.hasNext() ) {
- ((CThread)it.next()).restoreState();
- }
- }
-
- private void handleSymbolsLoaded( ICDISharedLibrary library ) {
- getModuleManager().symbolsLoaded( library );
- }
-
- public ICGlobalVariable createGlobalVariable( IGlobalVariableDescriptor info ) throws DebugException {
- ICDIVariableDescriptor vo = null;
- try {
- vo = getCDITarget().getGlobalVariableDescriptors( info.getPath().lastSegment(), null, info.getName() );
- }
- catch( CDIException e ) {
- throw new DebugException( new Status( IStatus.ERROR, CDIDebugModel.getPluginIdentifier(), DebugException.TARGET_REQUEST_FAILED, (vo != null) ? vo.getName() + ": " + e.getMessage() : e.getMessage(), null ) ); //$NON-NLS-1$
- }
- return CVariableFactory.createGlobalVariable( this, info, vo );
- }
-
- public void sourceContainersChanged( ISourceLookupDirector director ) {
- setSourceLookupPath( director.getSourceContainers() );
- }
-
- private void setSourceLookupPath( ISourceContainer[] containers ) {
- ArrayList list = new ArrayList( containers.length );
- getSourceLookupPath( list, containers );
- try {
- getCDITarget().setSourcePaths( (String[])list.toArray( new String[list.size()] ) );
- }
- catch( CDIException e ) {
- CDebugCorePlugin.log( e );
- }
- }
-
- private void getSourceLookupPath( List list, ISourceContainer[] containers ) {
- for ( int i = 0; i < containers.length; ++i ) {
- if ( containers[i] instanceof ProjectSourceContainer ) {
- IProject project = ((ProjectSourceContainer)containers[i]).getProject();
- if ( project != null && project.exists() )
- list.add( project.getLocation().toPortableString() );
- }
- if ( containers[i] instanceof FolderSourceContainer ) {
- IContainer container = ((FolderSourceContainer)containers[i]).getContainer();
- if ( container != null && container.exists() )
- list.add( container.getLocation().toPortableString() );
- }
- if ( containers[i] instanceof DirectorySourceContainer ) {
- File dir = ((DirectorySourceContainer)containers[i]).getDirectory();
- if ( dir != null && dir.exists() ) {
- IPath path = new Path( dir.getAbsolutePath() );
- list.add( path.toPortableString() );
- }
- }
- if ( containers[i].isComposite() ) {
- try {
- getSourceLookupPath( list, containers[i].getSourceContainers() );
- }
- catch( CoreException e ) {
- CDebugCorePlugin.log( e.getStatus() );
- }
- }
- }
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.cdt.debug.core.model.ICDebugTarget#getRegisterDescriptors()
- */
- public IRegisterDescriptor[] getRegisterDescriptors() throws DebugException {
- return getRegisterManager().getAllRegisterDescriptors();
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.cdt.debug.core.model.ICDebugTarget#addUserDefinedRegisterGroup(java.lang.String, org.eclipse.cdt.debug.core.model.IRegisterDescriptor[])
- */
- public void addRegisterGroup( String name, IRegisterDescriptor[] descriptors ) {
- getRegisterManager().addRegisterGroup( name, descriptors );
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.cdt.debug.core.model.ICDebugTarget#removeRegisterGroups(org.eclipse.debug.core.model.IRegisterGroup[])
- */
- public void removeRegisterGroups( IRegisterGroup[] groups ) {
- getRegisterManager().removeRegisterGroups( groups );
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.cdt.debug.core.model.ICDebugTarget#modifyRegisterGroup(org.eclipse.cdt.debug.core.model.IPersistableRegisterGroup, org.eclipse.cdt.debug.core.model.IRegisterDescriptor[])
- */
- public void modifyRegisterGroup( IPersistableRegisterGroup group, IRegisterDescriptor[] descriptors ) {
- getRegisterManager().modifyRegisterGroup( group, descriptors );
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.cdt.debug.core.model.ICDebugTarget#restoreDefaultRegisterGroups()
- */
- public void restoreDefaultRegisterGroups() {
- getRegisterManager().restoreDefaults();
- }
-
- protected void skipBreakpoints( boolean enabled ) {
- getBreakpointManager().skipBreakpoints( enabled );
- }
-
- /**
- * 'stopExpression' is used solely for the error message if the request
- * fails. Where to stop is dictated entirely by 'location'
- * @param symbol
- */
- private void stopAtLocation(ICDILocation location, String stopExpression ) throws DebugException {
- try {
- setInternalTemporaryBreakpoint( location );
- }
- catch( CoreException e ) {
- boolean isTerminated = getCDITarget().isTerminated();
- if ( isTerminated ) {
- String message = MessageFormat.format( CoreModelMessages.getString( "CDebugTarget.0" ), new String[]{ stopExpression } ); //$NON-NLS-1$
- MultiStatus status = new MultiStatus( CDebugCorePlugin.getUniqueIdentifier(), IStatus.OK, message, null );
- status.add( e.getStatus() );
- throw new DebugException( status );
- }
- String message = MessageFormat.format( CoreModelMessages.getString( "CDebugTarget.2" ), new String[]{ stopExpression, e.getStatus().getMessage() } ); //$NON-NLS-1$
- IStatus newStatus = new Status( IStatus.WARNING, e.getStatus().getPlugin(), ICDebugInternalConstants.STATUS_CODE_QUESTION, message, null );
- if ( !CDebugUtils.question( newStatus, this ) ) {
- throw new DebugException( new Status( IStatus.OK, e.getStatus().getPlugin(), e.getStatus().getCode(), e.getStatus().getMessage(), null ) );
- }
- }
- }
-
- protected void stopAtSymbol( String stopSymbol ) throws DebugException {
- ICDILocation location = getCDITarget().createFunctionLocation( "", stopSymbol ); //$NON-NLS-1$
- stopAtLocation(location, stopSymbol);
- }
-
- protected void stopAtAddress( IAddress address ) throws DebugException {
- ICDIAddressLocation location = getCDITarget().createAddressLocation(address.getValue());
- stopAtLocation(location, address.toHexAddressString());
- }
-
- protected void stopInMain() throws DebugException {
- String mainSymbol = new String( ICDTLaunchConfigurationConstants.DEBUGGER_STOP_AT_MAIN_SYMBOL_DEFAULT );
- try {
- mainSymbol = getLaunch().getLaunchConfiguration().getAttribute( ICDTLaunchConfigurationConstants.ATTR_DEBUGGER_STOP_AT_MAIN_SYMBOL, ICDTLaunchConfigurationConstants.DEBUGGER_STOP_AT_MAIN_SYMBOL_DEFAULT );
- ICDILocation location = getCDITarget().createFunctionLocation( "", mainSymbol ); //$NON-NLS-1$
- setInternalTemporaryBreakpoint( location );
- }
- catch( CoreException e ) {
- String message = MessageFormat.format( CoreModelMessages.getString( "CDebugTarget.2" ), new String[]{ mainSymbol, e.getStatus().getMessage() } ); //$NON-NLS-1$
- IStatus newStatus = new Status( IStatus.WARNING, e.getStatus().getPlugin(), ICDebugInternalConstants.STATUS_CODE_QUESTION, message, null );
- if ( !CDebugUtils.question( newStatus, this ) ) {
- terminate();
- throw new DebugException( new Status( IStatus.OK, e.getStatus().getPlugin(), e.getStatus().getCode(), e.getStatus().getMessage(), null ) );
- }
- }
- }
-
- public boolean hasModules() throws DebugException {
- CModuleManager mm = getModuleManager();
- if ( mm != null )
- return mm.hasModules();
- return false;
- }
-
- public ICModule[] getModules() throws DebugException {
- CModuleManager mm = getModuleManager();
- if ( mm != null )
- return mm.getModules();
- return new ICModule[0];
- }
-
- public void loadSymbolsForAllModules() throws DebugException {
- CModuleManager mm = getModuleManager();
- if ( mm != null )
- mm.loadSymbolsForAllModules();
- }
-
- public String getInternalID() {
- return internalD;
- }
-} \ No newline at end of file
diff --git a/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/model/CDummyStackFrame.java b/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/model/CDummyStackFrame.java
deleted file mode 100644
index 3efaf397e6c..00000000000
--- a/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/model/CDummyStackFrame.java
+++ /dev/null
@@ -1,271 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.internal.core.model;
-
-import org.eclipse.cdt.debug.core.model.IDummyStackFrame;
-import org.eclipse.debug.core.DebugException;
-import org.eclipse.debug.core.model.IRegisterGroup;
-import org.eclipse.debug.core.model.IStackFrame;
-import org.eclipse.debug.core.model.IThread;
-import org.eclipse.debug.core.model.IVariable;
-
-/**
- * Implementation of the dummy stack frame.
- */
-public class CDummyStackFrame extends CDebugElement implements IStackFrame, IDummyStackFrame {
-
- /**
- * Containing thread.
- */
- private CThread fThread;
-
- /**
- * Constructor for CDummyStackFrame.
- *
- * @param target
- */
- public CDummyStackFrame( CThread thread ) {
- super( (CDebugTarget)thread.getDebugTarget() );
- setThread( thread );
- }
-
- /*
- * (non-Javadoc)
- *
- * @see org.eclipse.debug.core.model.IStackFrame#getThread()
- */
- public IThread getThread() {
- return fThread;
- }
-
- /*
- * (non-Javadoc)
- *
- * @see org.eclipse.debug.core.model.IStackFrame#getVariables()
- */
- public IVariable[] getVariables() throws DebugException {
- return new IVariable[0];
- }
-
- /*
- * (non-Javadoc)
- *
- * @see org.eclipse.debug.core.model.IStackFrame#hasVariables()
- */
- public boolean hasVariables() throws DebugException {
- return false;
- }
-
- /*
- * (non-Javadoc)
- *
- * @see org.eclipse.debug.core.model.IStackFrame#getLineNumber()
- */
- public int getLineNumber() throws DebugException {
- return 0;
- }
-
- /*
- * (non-Javadoc)
- *
- * @see org.eclipse.debug.core.model.IStackFrame#getCharStart()
- */
- public int getCharStart() throws DebugException {
- return 0;
- }
-
- /*
- * (non-Javadoc)
- *
- * @see org.eclipse.debug.core.model.IStackFrame#getCharEnd()
- */
- public int getCharEnd() throws DebugException {
- return 0;
- }
-
- /*
- * (non-Javadoc)
- *
- * @see org.eclipse.debug.core.model.IStackFrame#getName()
- */
- public String getName() throws DebugException {
- return "..."; //$NON-NLS-1$
- }
-
- /*
- * (non-Javadoc)
- *
- * @see org.eclipse.debug.core.model.IStackFrame#getRegisterGroups()
- */
- public IRegisterGroup[] getRegisterGroups() throws DebugException {
- return new IRegisterGroup[0];
- }
-
- /*
- * (non-Javadoc)
- *
- * @see org.eclipse.debug.core.model.IStackFrame#hasRegisterGroups()
- */
- public boolean hasRegisterGroups() throws DebugException {
- return false;
- }
-
- /*
- * (non-Javadoc)
- *
- * @see org.eclipse.debug.core.model.IStep#canStepInto()
- */
- public boolean canStepInto() {
- return false;
- }
-
- /*
- * (non-Javadoc)
- *
- * @see org.eclipse.debug.core.model.IStep#canStepOver()
- */
- public boolean canStepOver() {
- return false;
- }
-
- /*
- * (non-Javadoc)
- *
- * @see org.eclipse.debug.core.model.IStep#canStepReturn()
- */
- public boolean canStepReturn() {
- return false;
- }
-
- /*
- * (non-Javadoc)
- *
- * @see org.eclipse.debug.core.model.IStep#isStepping()
- */
- public boolean isStepping() {
- return false;
- }
-
- /*
- * (non-Javadoc)
- *
- * @see org.eclipse.debug.core.model.IStep#stepInto()
- */
- public void stepInto() throws DebugException {
- }
-
- /*
- * (non-Javadoc)
- *
- * @see org.eclipse.debug.core.model.IStep#stepOver()
- */
- public void stepOver() throws DebugException {
- }
-
- /*
- * (non-Javadoc)
- *
- * @see org.eclipse.debug.core.model.IStep#stepReturn()
- */
- public void stepReturn() throws DebugException {
- }
-
- /*
- * (non-Javadoc)
- *
- * @see org.eclipse.debug.core.model.ISuspendResume#canResume()
- */
- public boolean canResume() {
- return false;
- }
-
- /*
- * (non-Javadoc)
- *
- * @see org.eclipse.debug.core.model.ISuspendResume#canSuspend()
- */
- public boolean canSuspend() {
- return false;
- }
-
- /*
- * (non-Javadoc)
- *
- * @see org.eclipse.debug.core.model.ISuspendResume#isSuspended()
- */
- public boolean isSuspended() {
- return false;
- }
-
- /*
- * (non-Javadoc)
- *
- * @see org.eclipse.debug.core.model.ISuspendResume#resume()
- */
- public void resume() throws DebugException {
- }
-
- /*
- * (non-Javadoc)
- *
- * @see org.eclipse.debug.core.model.ISuspendResume#suspend()
- */
- public void suspend() throws DebugException {
- }
-
- /*
- * (non-Javadoc)
- *
- * @see org.eclipse.debug.core.model.ITerminate#canTerminate()
- */
- public boolean canTerminate() {
- return false;
- }
-
- /*
- * (non-Javadoc)
- *
- * @see org.eclipse.debug.core.model.ITerminate#isTerminated()
- */
- public boolean isTerminated() {
- return false;
- }
-
- /*
- * (non-Javadoc)
- *
- * @see org.eclipse.debug.core.model.ITerminate#terminate()
- */
- public void terminate() throws DebugException {
- }
-
- /**
- * Sets the containing thread.
- *
- * @param thread the containing thread
- */
- protected void setThread( CThread thread ) {
- fThread = thread;
- }
-
- /*
- * (non-Javadoc)
- *
- * @see org.eclipse.core.runtime.IAdaptable#getAdapter(Class)
- */
- public Object getAdapter( Class adapter ) {
- if ( adapter.equals( IDummyStackFrame.class ) )
- return this;
- if ( adapter.equals( IStackFrame.class ) )
- return this;
- return super.getAdapter( adapter );
- }
-}
diff --git a/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/model/CExpression.java b/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/model/CExpression.java
deleted file mode 100644
index b9a8d81f1b5..00000000000
--- a/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/model/CExpression.java
+++ /dev/null
@@ -1,212 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.internal.core.model;
-
-import org.eclipse.cdt.debug.core.CDebugCorePlugin;
-import org.eclipse.cdt.debug.core.ICDebugConstants;
-import org.eclipse.cdt.debug.core.cdi.CDIException;
-import org.eclipse.cdt.debug.core.cdi.event.ICDIEvent;
-import org.eclipse.cdt.debug.core.cdi.event.ICDIResumedEvent;
-import org.eclipse.cdt.debug.core.cdi.model.ICDIExpression;
-import org.eclipse.cdt.debug.core.cdi.model.ICDIObject;
-import org.eclipse.cdt.debug.core.cdi.model.ICDITarget;
-import org.eclipse.cdt.debug.core.cdi.model.ICDIValue;
-import org.eclipse.cdt.debug.core.cdi.model.ICDIVariableDescriptor;
-import org.eclipse.cdt.debug.core.cdi.model.type.ICDIArrayValue;
-import org.eclipse.cdt.debug.core.model.CVariableFormat;
-import org.eclipse.cdt.debug.core.model.ICStackFrame;
-import org.eclipse.cdt.debug.core.model.ICType;
-import org.eclipse.debug.core.DebugException;
-import org.eclipse.debug.core.model.IExpression;
-import org.eclipse.debug.core.model.IValue;
-
-/**
- * Represents an expression in the CDI model.
- */
-public class CExpression extends CLocalVariable implements IExpression {
-
- private String fText;
-
- private ICDIExpression fCDIExpression;
-
- private CStackFrame fStackFrame;
-
- private IValue fValue = CValueFactory.NULL_VALUE;
-
- private ICType fType;
-
- /**
- * Constructor for CExpression.
- */
- public CExpression( CStackFrame frame, ICDIExpression cdiExpression, ICDIVariableDescriptor varObject ) {
- super( frame, varObject );
- setFormat( CVariableFormat.getFormat( CDebugCorePlugin.getDefault().getPluginPreferences().getInt( ICDebugConstants.PREF_DEFAULT_EXPRESSION_FORMAT ) ) );
- fText = cdiExpression.getExpressionText();
- fCDIExpression = cdiExpression;
- fStackFrame = frame;
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.debug.core.model.IExpression#getExpressionText()
- */
- public String getExpressionText() {
- return fText;
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.cdt.debug.core.cdi.event.ICDIEventListener#handleDebugEvents(org.eclipse.cdt.debug.core.cdi.event.ICDIEvent[])
- */
- public void handleDebugEvents( ICDIEvent[] events ) {
- for( int i = 0; i < events.length; i++ ) {
- ICDIEvent event = events[i];
- if ( event instanceof ICDIResumedEvent ) {
- ICDIObject source = event.getSource();
- if ( source != null ) {
- ICDITarget cdiTarget = source.getTarget();
- if ( getCDITarget().equals( cdiTarget ) ) {
- setChanged( false );
- resetValue();
- }
- }
- }
- }
- super.handleDebugEvents( events );
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.cdt.debug.core.model.ICVariable#isEnabled()
- */
- public boolean isEnabled() {
- return true;
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.cdt.debug.core.model.ICVariable#canEnableDisable()
- */
- public boolean canEnableDisable() {
- return true;
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.cdt.debug.internal.core.model.CVariable#isBookkeepingEnabled()
- */
- protected boolean isBookkeepingEnabled() {
- return false;
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.debug.core.model.IExpression#getValue()
- */
- public IValue getValue() {
- CStackFrame frame = (CStackFrame)getStackFrame();
- try {
- return getValue( frame );
- }
- catch( DebugException e ) {
- }
- return null;
- }
-
- protected synchronized IValue getValue( CStackFrame context ) throws DebugException {
- if ( fValue.equals( CValueFactory.NULL_VALUE ) ) {
- if ( context.isSuspended() ) {
- try {
- ICDIValue value = fCDIExpression.getValue( context.getCDIStackFrame() );
- if ( value != null ) {
- if ( value instanceof ICDIArrayValue ) {
- ICType type = null;
- try {
- type = new CType( value.getType() );
- }
- catch( CDIException e ) {
- // ignore and use default type
- }
- if ( type != null && type.isArray() ) {
- int[] dims = type.getArrayDimensions();
- if ( dims.length > 0 && dims[0] > 0 )
- fValue = CValueFactory.createIndexedValue( this, (ICDIArrayValue)value, 0, dims[0] );
- }
- }
- else {
- fValue = CValueFactory.createValue( this, value );
- }
- }
- }
- catch( CDIException e ) {
- targetRequestFailed( e.getMessage(), null );
- }
- }
- }
- return fValue;
- }
-
- protected ICStackFrame getStackFrame() {
- return fStackFrame;
- }
-
- protected void resetValue() {
- if ( fValue instanceof AbstractCValue ) {
- ((AbstractCValue)fValue).reset();
- }
- fValue = CValueFactory.NULL_VALUE;
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.cdt.debug.internal.core.model.AbstractCVariable#getExpressionString()
- */
- public String getExpressionString() throws DebugException {
- return getExpressionText();
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.cdt.debug.internal.core.model.AbstractCVariable#dispose()
- */
- public void dispose() {
- if ( fCDIExpression != null ) {
- try {
- fCDIExpression.dispose();
- fCDIExpression = null;
- }
- catch( CDIException e ) {
- }
- }
- if ( fValue instanceof AbstractCValue ) {
- ((AbstractCValue)fValue).dispose();
- fValue = CValueFactory.NULL_VALUE;
- }
- internalDispose( true );
- setDisposed( true );
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.cdt.debug.core.model.ICVariable#getType()
- */
- public ICType getType() throws DebugException {
- if ( isDisposed() )
- return null;
- if ( fType == null ) {
- synchronized( this ) {
- if ( fType == null ) {
- fType = ((AbstractCValue)fValue).getType();
- }
- }
- }
- return fType;
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.debug.core.model.IVariable#getReferenceTypeName()
- */
- public String getReferenceTypeName() throws DebugException {
- ICType type = getType();
- return ( type != null ) ? type.getName() : ""; //$NON-NLS-1$
- }
-}
diff --git a/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/model/CFloatingPointValue.java b/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/model/CFloatingPointValue.java
deleted file mode 100644
index 83ffacbf0d8..00000000000
--- a/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/model/CFloatingPointValue.java
+++ /dev/null
@@ -1,44 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.internal.core.model;
-
-import org.eclipse.cdt.debug.core.cdi.CDIException;
-import org.eclipse.cdt.debug.core.cdi.model.ICDIValue;
-import org.eclipse.cdt.debug.core.cdi.model.type.ICDIDoubleValue;
-import org.eclipse.cdt.debug.core.cdi.model.type.ICDIFloatValue;
-
-/**
- * Represents a value of a float or double variable type.
- */
-public class CFloatingPointValue extends CValue {
-
- private Number fFloatingPointValue;
-
- /**
- * Constructor for CFloatingPointValue.
- */
- public CFloatingPointValue( CVariable parent, ICDIValue cdiValue ) {
- super( parent, cdiValue );
- }
-
- public Number getFloatingPointValue() throws CDIException {
- if ( fFloatingPointValue == null ) {
- ICDIValue cdiValue = getUnderlyingValue();
- if ( cdiValue instanceof ICDIDoubleValue ) {
- fFloatingPointValue = new Double( ((ICDIDoubleValue)cdiValue).doubleValue() );
- }
- else if ( cdiValue instanceof ICDIFloatValue ) {
- fFloatingPointValue = new Float( ((ICDIFloatValue)cdiValue).floatValue() );
- }
- }
- return fFloatingPointValue;
- }
-}
diff --git a/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/model/CGlobalValue.java b/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/model/CGlobalValue.java
deleted file mode 100644
index 27625a08829..00000000000
--- a/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/model/CGlobalValue.java
+++ /dev/null
@@ -1,42 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.internal.core.model;
-
-import org.eclipse.cdt.debug.core.cdi.model.ICDIValue;
-import org.eclipse.debug.core.DebugException;
-
-public class CGlobalValue extends CValue
-{
- private Boolean fHasChildren = null;
-
-
- /**
- * Constructor for CGlobalValue.
- * @param parent
- * @param cdiValue
- */
- public CGlobalValue( CVariable parent, ICDIValue cdiValue )
- {
- super( parent, cdiValue );
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.debug.core.model.IValue#hasVariables()
- */
- public boolean hasVariables() throws DebugException
- {
- if ( fHasChildren == null )
- {
- fHasChildren = Boolean.valueOf( super.hasVariables() );
- }
- return fHasChildren.booleanValue();
- }
-}
diff --git a/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/model/CGlobalVariable.java b/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/model/CGlobalVariable.java
deleted file mode 100644
index 4fe13cfedb9..00000000000
--- a/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/model/CGlobalVariable.java
+++ /dev/null
@@ -1,383 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2002, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.internal.core.model;
-
-import org.eclipse.cdt.debug.core.cdi.CDIException;
-import org.eclipse.cdt.debug.core.cdi.event.ICDIEvent;
-import org.eclipse.cdt.debug.core.cdi.event.ICDIResumedEvent;
-import org.eclipse.cdt.debug.core.cdi.model.ICDIArgumentDescriptor;
-import org.eclipse.cdt.debug.core.cdi.model.ICDIGlobalVariableDescriptor;
-import org.eclipse.cdt.debug.core.cdi.model.ICDIObject;
-import org.eclipse.cdt.debug.core.cdi.model.ICDITarget;
-import org.eclipse.cdt.debug.core.cdi.model.ICDITargetConfiguration2;
-import org.eclipse.cdt.debug.core.cdi.model.ICDIValue;
-import org.eclipse.cdt.debug.core.cdi.model.ICDIVariable;
-import org.eclipse.cdt.debug.core.cdi.model.ICDIVariableDescriptor;
-import org.eclipse.cdt.debug.core.cdi.model.type.ICDIArrayValue;
-import org.eclipse.cdt.debug.core.cdi.model.type.ICDIType;
-import org.eclipse.cdt.debug.core.model.ICGlobalVariable;
-import org.eclipse.cdt.debug.core.model.ICType;
-import org.eclipse.cdt.debug.core.model.ICValue;
-import org.eclipse.cdt.debug.core.model.IGlobalVariableDescriptor;
-import org.eclipse.debug.core.DebugException;
-
-/**
- * Represents a global variable.
- */
-public class CGlobalVariable extends CVariable implements ICGlobalVariable {
-
- private class InternalVariable implements IInternalVariable {
-
- /**
- * The enclosing <code>CVariable</code> instance.
- */
- private CVariable fVariable;
-
- /**
- * The CDI variable object this variable is based on.
- */
- private ICDIVariableDescriptor fCDIVariableObject;
-
- /**
- * The underlying CDI variable.
- */
- private ICDIVariable fCDIVariable;
-
- /**
- * The type of this variable.
- */
- private CType fType;
-
- /**
- * The expression used to eveluate the value of this variable.
- */
- private String fQualifiedName;
-
- /**
- * The cache of the current value.
- */
- private ICValue fValue = CValueFactory.NULL_VALUE;
-
- /**
- * The change flag.
- */
- private boolean fChanged = false;
-
- /**
- * Constructor for InternalVariable.
- */
- InternalVariable( CVariable var, ICDIVariableDescriptor varObject ) {
- setVariable( var );
- setCDIVariableObject( varObject );
- setCDIVariable( (varObject instanceof ICDIVariable) ? (ICDIVariable)varObject : null );
- }
-
- public IInternalVariable createShadow( int start, int length ) throws DebugException {
- IInternalVariable iv = null;
- try {
- iv = new InternalVariable( getVariable(), getCDIVariableObject().getVariableDescriptorAsArray( start, length ) );
- }
- catch( CDIException e ) {
- requestFailed( e.getMessage(), null );
- }
- return iv;
- }
-
- public IInternalVariable createShadow( String type ) throws DebugException {
- IInternalVariable iv = null;
- try {
- iv = new InternalVariable( getVariable(), getCDIVariableObject().getVariableDescriptorAsType( type ) );
- }
- catch( CDIException e ) {
- requestFailed( e.getMessage(), null );
- }
- return iv;
- }
-
- private synchronized ICDIVariable getCDIVariable() throws DebugException {
- if ( fCDIVariable == null ) {
- try {
- fCDIVariable = getCDITarget().createGlobalVariable( (ICDIGlobalVariableDescriptor)getCDIVariableObject() );
- }
- catch( CDIException e ) {
- requestFailed( e.getMessage(), null );
- }
- }
- return fCDIVariable;
- }
-
- private void setCDIVariable( ICDIVariable variable ) {
- fCDIVariable = variable;
- }
-
- private ICDIVariableDescriptor getCDIVariableObject() {
- if ( fCDIVariable != null ) {
- return fCDIVariable;
- }
- return fCDIVariableObject;
- }
-
- private void setCDIVariableObject( ICDIVariableDescriptor variableObject ) {
- fCDIVariableObject = variableObject;
- }
-
- public String getQualifiedName() throws DebugException {
- if ( fQualifiedName == null ) {
- try {
- fQualifiedName = (fCDIVariableObject != null) ? fCDIVariableObject.getQualifiedName() : null;
- }
- catch( CDIException e ) {
- requestFailed( e.getMessage(), null );
- }
- }
- return fQualifiedName;
- }
-
- public CType getType() throws DebugException {
- if ( fType == null ) {
- ICDIVariableDescriptor varObject = getCDIVariableObject();
- if ( varObject != null ) {
- synchronized( this ) {
- if ( fType == null ) {
- try {
- fType = new CType( varObject.getType() );
- }
- catch( CDIException e ) {
- requestFailed( e.getMessage(), null );
- }
- }
- }
- }
- }
- return fType;
- }
-
- private synchronized void invalidate( boolean destroy ) {
- try {
- if ( destroy && fCDIVariable != null )
- fCDIVariable.dispose();
- }
- catch( CDIException e ) {
- logError( e.getMessage() );
- }
- invalidateValue();
- setCDIVariable( null );
- if ( fType != null )
- fType.dispose();
- fType = null;
- }
-
- public void dispose( boolean destroy ) {
- invalidate( destroy );
- }
-
- public boolean isSameVariable( ICDIVariable cdiVar ) {
- return ( fCDIVariable != null ) ? fCDIVariable.equals( cdiVar ) : false;
- }
-
- public int sizeof() {
- if ( getCDIVariableObject() != null ) {
- try {
- return getCDIVariableObject().sizeof();
- }
- catch( CDIException e ) {
- }
- }
- return 0;
- }
-
- public boolean isArgument() {
- return ( getCDIVariableObject() instanceof ICDIArgumentDescriptor );
- }
-
- public void setValue( String expression ) throws DebugException {
- ICDIVariable cdiVariable = null;
- try {
- cdiVariable = getCDIVariable();
- if ( cdiVariable != null )
- cdiVariable.setValue( expression );
- else
- requestFailed( CoreModelMessages.getString( "CModificationVariable.0" ), null ); //$NON-NLS-1$
- }
- catch( CDIException e ) {
- targetRequestFailed( e.getMessage(), null );
- }
- }
-
- public synchronized ICValue getValue() throws DebugException {
- if ( fValue.equals( CValueFactory.NULL_VALUE ) ) {
- ICDIVariable var = getCDIVariable();
- if ( var != null ) {
- try {
- ICDIValue cdiValue = var.getValue();
- if ( cdiValue != null ) {
- ICDIType cdiType = cdiValue.getType();
- if ( cdiValue instanceof ICDIArrayValue && cdiType != null ) {
- ICType type = new CType( cdiType );
- if ( type.isArray() ) {
- int[] dims = type.getArrayDimensions();
- if ( dims.length > 0 && dims[0] > 0 )
- fValue = CValueFactory.createIndexedValue( getVariable(), (ICDIArrayValue)cdiValue, 0, dims[0] );
- }
- }
- else {
- fValue = CValueFactory.createValue( getVariable(), cdiValue );
- }
- }
- if (getCDITarget().getConfiguration() instanceof ICDITargetConfiguration2 &&
- ((ICDITargetConfiguration2)getCDITarget().getConfiguration()).supportsRuntimeTypeIdentification())
- fType = null; // When the debugger supports RTTI getting a new value may also mean a new type.
- }
- catch( CDIException e ) {
- requestFailed( e.getMessage(), e );
- }
- }
- }
- return fValue;
- }
-
- public void invalidateValue() {
- if ( fValue instanceof AbstractCValue ) {
- ((AbstractCValue)fValue).dispose();
- fValue = CValueFactory.NULL_VALUE;
- }
- }
-
- public boolean isChanged() {
- return fChanged;
- }
-
- public synchronized void setChanged( boolean changed ) {
- if ( changed ) {
- invalidateValue();
- }
- if ( fValue instanceof AbstractCValue ) {
- ((AbstractCValue)fValue).setChanged( changed );
- }
- fChanged = changed;
- }
-
- public synchronized void preserve() {
- setChanged( false );
- if ( fValue instanceof AbstractCValue ) {
- ((AbstractCValue)fValue).preserve();
- }
- }
-
- CVariable getVariable() {
- return fVariable;
- }
-
- private void setVariable( CVariable variable ) {
- fVariable = variable;
- }
-
- public void resetValue() {
- if ( fValue instanceof AbstractCValue ) {
- ((AbstractCValue)fValue).reset();
- }
- }
-
- public boolean isEditable() throws DebugException {
- ICDIVariable var = getCDIVariable();
- if ( var != null ) {
- try {
- return var.isEditable();
- }
- catch( CDIException e ) {
- }
- }
- return false;
- }
-
- /**
- * Compares the underlying variable objects.
- * @see java.lang.Object#equals(java.lang.Object)
- */
- public boolean equals( Object obj ) {
- if ( obj instanceof InternalVariable ) {
- return getCDIVariableObject().equals( ((InternalVariable)obj).getCDIVariableObject() );
- }
- return false;
- }
-
- public boolean isSameDescriptor( ICDIVariableDescriptor desc ) {
- return getCDIVariableObject().equals( desc );
- }
- }
-
- private IGlobalVariableDescriptor fDescriptor;
-
- /**
- * Constructor for CGlobalVariable.
- */
- protected CGlobalVariable( CDebugElement parent, IGlobalVariableDescriptor descriptor, ICDIVariableDescriptor cdiVariableObject ) {
- super( parent, cdiVariableObject );
- fDescriptor = descriptor;
- }
-
- /**
- * Constructor for CGlobalVariable.
- */
- protected CGlobalVariable( CDebugElement parent, IGlobalVariableDescriptor descriptor, ICDIVariableDescriptor cdiVariableObject, String message ) {
- super( parent, cdiVariableObject, message );
- fDescriptor = descriptor;
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.cdt.debug.core.model.ICVariable#canEnableDisable()
- */
- public boolean canEnableDisable() {
- return true;
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.cdt.debug.core.cdi.event.ICDIEventListener#handleDebugEvents(org.eclipse.cdt.debug.core.cdi.event.ICDIEvent[])
- */
- public void handleDebugEvents( ICDIEvent[] events ) {
- for( int i = 0; i < events.length; i++ ) {
- ICDIEvent event = events[i];
- if ( event instanceof ICDIResumedEvent ) {
- ICDIObject source = event.getSource();
- if ( source != null ) {
- ICDITarget cdiTarget = source.getTarget();
- if ( getCDITarget().equals( cdiTarget ) ) {
- setChanged( false );
- resetValue(); // Reset the value cache so the display value will be updated.
- }
- }
- }
- }
- super.handleDebugEvents( events );
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.cdt.debug.core.model.ICGlobalVariable#getDescriptor()
- */
- public IGlobalVariableDescriptor getDescriptor() {
- return fDescriptor;
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.cdt.debug.internal.core.model.AbstractCVariable#dispose()
- */
- public void dispose() {
- internalDispose( true );
- setDisposed( true );
- }
-
- protected void createOriginal( ICDIVariableDescriptor vo ) {
- if ( vo != null ) {
- setName( vo.getName() );
- setOriginal( new InternalVariable( this, vo ) );
- }
- }
-}
diff --git a/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/model/CIndexedValue.java b/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/model/CIndexedValue.java
deleted file mode 100644
index bfe47b63e52..00000000000
--- a/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/model/CIndexedValue.java
+++ /dev/null
@@ -1,259 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004, 2005 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.internal.core.model;
-
-import org.eclipse.cdt.debug.core.cdi.CDIException;
-import org.eclipse.cdt.debug.core.cdi.model.ICDIVariable;
-import org.eclipse.cdt.debug.core.cdi.model.type.ICDIArrayValue;
-import org.eclipse.cdt.debug.core.cdi.model.type.ICDIType;
-import org.eclipse.cdt.debug.core.model.ICType;
-import org.eclipse.debug.core.DebugException;
-import org.eclipse.debug.core.model.IIndexedValue;
-import org.eclipse.debug.core.model.IVariable;
-
-/**
- * A value containing an array of variables.
- */
-public class CIndexedValue extends AbstractCValue implements IIndexedValue {
-
- /**
- * The underlying CDI value.
- */
- private ICDIArrayValue fCDIValue;
-
- /**
- * List of child variables.
- */
- private IVariable[] fVariables;
-
- /**
- * The index of the first variable contained in this value.
- */
- private int fOffset;
-
- /**
- * The number of entries in this indexed collection.
- */
- private int fSize;
-
- /**
- * The type of this value.
- */
- private ICType fType;
-
- /**
- * Constructor for CIndexedValue.
- */
- public CIndexedValue( AbstractCVariable parent, ICDIArrayValue cdiValue, int offset, int size ) {
- super( parent );
- fVariables = new IVariable[ size ];
- fCDIValue = cdiValue;
- fOffset = offset;
- fSize = size;
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.cdt.debug.internal.core.model.AbstractCValue#setChanged(boolean)
- */
- protected void setChanged( boolean changed ) {
- for ( int i = 0; i < fVariables.length; ++i ) {
- if ( fVariables[i] != null ) {
- ((AbstractCVariable)fVariables[i]).setChanged( changed );
- }
- }
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.cdt.debug.internal.core.model.AbstractCValue#dispose()
- */
- public void dispose() {
- for ( int i = 0; i < fVariables.length; ++i ) {
- if ( fVariables[i] != null ) {
- ((AbstractCVariable)fVariables[i]).dispose();
- }
- }
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.cdt.debug.internal.core.model.AbstractCValue#reset()
- */
- protected void reset() {
- for ( int i = 0; i < fVariables.length; ++i ) {
- if ( fVariables[i] != null ) {
- ((AbstractCVariable)fVariables[i]).resetValue();
- }
- }
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.cdt.debug.internal.core.model.AbstractCValue#preserve()
- */
- protected void preserve() {
- resetStatus();
- for ( int i = 0; i < fVariables.length; ++i ) {
- if ( fVariables[i] != null ) {
- ((AbstractCVariable)fVariables[i]).preserve();
- }
- }
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.cdt.debug.core.model.ICValue#getType()
- */
- public ICType getType() throws DebugException {
- if ( fType == null ) {
- synchronized( this ) {
- if ( fType == null ) {
- try {
- ICDIType cdiType = getCDIValue().getType();
- if ( cdiType != null )
- fType = new CType( cdiType );
- }
- catch( CDIException e ) {
- targetRequestFailed( e.getMessage(), null );
- }
- }
- }
- }
- return fType;
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.debug.core.model.IValue#getReferenceTypeName()
- */
- public String getReferenceTypeName() throws DebugException {
- ICType type = getType();
- return ( type != null ) ? type.getName() : ""; //$NON-NLS-1$
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.debug.core.model.IValue#getValueString()
- */
- public String getValueString() throws DebugException {
- return ""; //$NON-NLS-1$
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.debug.core.model.IValue#isAllocated()
- */
- public boolean isAllocated() throws DebugException {
- return true;
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.debug.core.model.IValue#getVariables()
- */
- public IVariable[] getVariables() throws DebugException {
- return getVariables0( getInitialOffset(), getSize() );
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.debug.core.model.IValue#hasVariables()
- */
- public boolean hasVariables() throws DebugException {
- return getSize() > 0;
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.debug.core.model.IIndexedValue#getVariable(int)
- */
- public IVariable getVariable( int offset ) throws DebugException {
- if ( offset >= getSize() ) {
- requestFailed( CoreModelMessages.getString( "CIndexedValue.0" ), null ); //$NON-NLS-1$
- }
- return getVariables0( offset, 1 )[0];
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.debug.core.model.IIndexedValue#getVariables(int, int)
- */
- public IVariable[] getVariables( int offset, int length ) throws DebugException {
- if ( offset >= getSize() ) {
- requestFailed( CoreModelMessages.getString( "CIndexedValue.1" ), null ); //$NON-NLS-1$
- }
- if ( (offset + length - 1) >= getSize() ) {
- requestFailed( CoreModelMessages.getString( "CIndexedValue.2" ), null ); //$NON-NLS-1$
- }
- return getVariables0( offset, length );
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.debug.core.model.IIndexedValue#getSize()
- */
- public int getSize() throws DebugException {
- return getSize0();
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.debug.core.model.IIndexedValue#getInitialOffset()
- */
- public int getInitialOffset() {
- return fOffset;
- }
-
- protected ICDIArrayValue getCDIValue() {
- return fCDIValue;
- }
-
- private int getPartitionSize( int index ) {
- int psize = getPreferredPartitionSize();
- int size = getSize0();
- int pcount = size/psize + 1;
- if ( pcount - 1 < index )
- return 0;
- return ( pcount - 1 == index ) ? size % psize : psize;
- }
-
- private int getPartitionIndex( int offset ) {
- return offset / getPreferredPartitionSize();
- }
-
- private int getPreferredPartitionSize() {
- return 100;
- }
-
- private IVariable[] getVariables0( int offset, int length ) throws DebugException {
- IVariable[] result = new IVariable[length];
- int firstIndex = getPartitionIndex( offset );
- int lastIndex = getPartitionIndex( offset + Math.max( length - 1, 0 ) );
- for ( int i = firstIndex; i <= lastIndex; ++i ) {
- synchronized( this ) {
- if ( !isPartitionLoaded( i ) ) {
- loadPartition( i );
- }
- }
- }
- System.arraycopy( fVariables, offset, result, 0, length );
- return result;
- }
-
- private boolean isPartitionLoaded( int index ) {
- return fVariables[index * getPreferredPartitionSize()] != null;
- }
-
- private void loadPartition( int index ) throws DebugException {
- int prefSize = getPreferredPartitionSize();
- int psize = getPartitionSize( index );
- ICDIVariable[] cdiVars = new ICDIVariable[0];
- try {
- cdiVars = getCDIValue().getVariables( index * prefSize, psize );
- }
- catch( CDIException e ) {
- requestFailed( e.getMessage(), null );
- }
- for( int i = 0; i < cdiVars.length; ++i )
- fVariables[i + index * prefSize] = CVariableFactory.createLocalVariable( this, cdiVars[i] );
- }
-
- private int getSize0() {
- return fSize;
- }
-}
diff --git a/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/model/CLocalVariable.java b/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/model/CLocalVariable.java
deleted file mode 100644
index ea5971c46e9..00000000000
--- a/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/model/CLocalVariable.java
+++ /dev/null
@@ -1,329 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.internal.core.model;
-
-import org.eclipse.cdt.debug.core.cdi.CDIException;
-import org.eclipse.cdt.debug.core.cdi.model.ICDIArgumentDescriptor;
-import org.eclipse.cdt.debug.core.cdi.model.ICDILocalVariableDescriptor;
-import org.eclipse.cdt.debug.core.cdi.model.ICDITargetConfiguration2;
-import org.eclipse.cdt.debug.core.cdi.model.ICDIValue;
-import org.eclipse.cdt.debug.core.cdi.model.ICDIVariable;
-import org.eclipse.cdt.debug.core.cdi.model.ICDIVariableDescriptor;
-import org.eclipse.cdt.debug.core.cdi.model.type.ICDIArrayValue;
-import org.eclipse.cdt.debug.core.cdi.model.type.ICDIType;
-import org.eclipse.cdt.debug.core.model.ICType;
-import org.eclipse.cdt.debug.core.model.ICValue;
-import org.eclipse.debug.core.DebugException;
-
-
-public class CLocalVariable extends CVariable {
-
- private class InternalVariable implements IInternalVariable {
-
- /**
- * The enclosing <code>CVariable</code> instance.
- */
- private CVariable fVariable;
-
- /**
- * The CDI variable object this variable is based on.
- */
- private ICDIVariableDescriptor fCDIVariableObject;
-
- /**
- * The underlying CDI variable.
- */
- private ICDIVariable fCDIVariable;
-
- /**
- * The type of this variable.
- */
- private CType fType;
-
- /**
- * The expression used to eveluate the value of this variable.
- */
- private String fQualifiedName;
-
- /**
- * The cache of the current value.
- */
- private ICValue fValue = CValueFactory.NULL_VALUE;
-
- /**
- * The change flag.
- */
- private boolean fChanged = false;
-
- /**
- * Constructor for InternalVariable.
- */
- InternalVariable( CVariable var, ICDIVariableDescriptor varObject ) {
- setVariable( var );
- setCDIVariableObject( varObject );
- setCDIVariable( (varObject instanceof ICDIVariable) ? (ICDIVariable)varObject : null );
- }
-
- public IInternalVariable createShadow( int start, int length ) throws DebugException {
- IInternalVariable iv = null;
- try {
- iv = new InternalVariable( getVariable(), getCDIVariableObject().getVariableDescriptorAsArray( start, length ) );
- }
- catch( CDIException e ) {
- requestFailed( e.getMessage(), null );
- }
- return iv;
- }
-
- public IInternalVariable createShadow( String type ) throws DebugException {
- IInternalVariable iv = null;
- try {
- iv = new InternalVariable( getVariable(), getCDIVariableObject().getVariableDescriptorAsType( type ) );
- }
- catch( CDIException e ) {
- requestFailed( e.getMessage(), null );
- }
- return iv;
- }
-
- private synchronized ICDIVariable getCDIVariable() throws DebugException {
- if ( fCDIVariable == null ) {
- try {
- fCDIVariable = ((CStackFrame)getStackFrame()).getCDIStackFrame().createLocalVariable( (ICDILocalVariableDescriptor)getCDIVariableObject() );
- }
- catch( CDIException e ) {
- requestFailed( e.getMessage(), null );
- }
- }
- return fCDIVariable;
- }
-
- private void setCDIVariable( ICDIVariable variable ) {
- fCDIVariable = variable;
- }
-
- private ICDIVariableDescriptor getCDIVariableObject() {
- if ( fCDIVariable != null ) {
- return fCDIVariable;
- }
- return fCDIVariableObject;
- }
-
- private void setCDIVariableObject( ICDIVariableDescriptor variableObject ) {
- fCDIVariableObject = variableObject;
- }
-
- public String getQualifiedName() throws DebugException {
- if ( fQualifiedName == null ) {
- try {
- fQualifiedName = (fCDIVariableObject != null) ? fCDIVariableObject.getQualifiedName() : null;
- }
- catch( CDIException e ) {
- requestFailed( e.getMessage(), null );
- }
- }
- return fQualifiedName;
- }
-
- public CType getType() throws DebugException {
- if ( fType == null ) {
- ICDIVariableDescriptor varObject = getCDIVariableObject();
- if ( varObject != null ) {
- synchronized( this ) {
- if ( fType == null ) {
- try {
- fType = new CType( varObject.getType() );
- }
- catch( CDIException e ) {
- requestFailed( e.getMessage(), null );
- }
- }
- }
- }
- }
- return fType;
- }
-
- private synchronized void invalidate( boolean destroy ) {
- try {
- if ( destroy && fCDIVariable != null )
- fCDIVariable.dispose();
- }
- catch( CDIException e ) {
- logError( e.getMessage() );
- }
- invalidateValue();
- setCDIVariable( null );
- if ( fType != null )
- fType.dispose();
- fType = null;
- }
-
- public void dispose( boolean destroy ) {
- invalidate( destroy );
- }
-
- public boolean isSameVariable( ICDIVariable cdiVar ) {
- return ( fCDIVariable != null ) ? fCDIVariable.equals( cdiVar ) : false;
- }
-
- public int sizeof() {
- if ( getCDIVariableObject() != null ) {
- try {
- return getCDIVariableObject().sizeof();
- }
- catch( CDIException e ) {
- }
- }
- return 0;
- }
-
- public boolean isArgument() {
- return ( getCDIVariableObject() instanceof ICDIArgumentDescriptor );
- }
-
- public void setValue( String expression ) throws DebugException {
- ICDIVariable cdiVariable = null;
- try {
- cdiVariable = getCDIVariable();
- if ( cdiVariable != null )
- cdiVariable.setValue( expression );
- else
- requestFailed( CoreModelMessages.getString( "CModificationVariable.0" ), null ); //$NON-NLS-1$
- }
- catch( CDIException e ) {
- targetRequestFailed( e.getMessage(), null );
- }
- }
-
- public synchronized ICValue getValue() throws DebugException {
- if ( fValue.equals( CValueFactory.NULL_VALUE ) ) {
- ICDIVariable var = getCDIVariable();
- if ( var != null ) {
- try {
- ICDIValue cdiValue = var.getValue();
- if ( cdiValue != null ) {
- ICDIType cdiType = cdiValue.getType();
- if ( cdiValue instanceof ICDIArrayValue && cdiType != null ) {
- ICType type = new CType( cdiType );
- if ( type.isArray() ) {
- int[] dims = type.getArrayDimensions();
- if ( dims.length > 0 && dims[0] > 0 )
- fValue = CValueFactory.createIndexedValue( getVariable(), (ICDIArrayValue)cdiValue, 0, dims[0] );
- }
- }
- else {
- fValue = CValueFactory.createValue( getVariable(), cdiValue );
- }
- }
- if (getCDITarget().getConfiguration() instanceof ICDITargetConfiguration2 &&
- ((ICDITargetConfiguration2)getCDITarget().getConfiguration()).supportsRuntimeTypeIdentification())
- fType = null; // When the debugger supports RTTI getting a new value may also mean a new type.
- }
- catch( CDIException e ) {
- requestFailed( e.getMessage(), e );
- }
- }
- }
- return fValue;
- }
-
- public void invalidateValue() {
- if ( fValue instanceof AbstractCValue ) {
- ((AbstractCValue)fValue).dispose();
- fValue = CValueFactory.NULL_VALUE;
- }
- }
-
- public boolean isChanged() {
- return fChanged;
- }
-
- public synchronized void setChanged( boolean changed ) {
- if ( changed ) {
- invalidateValue();
- }
- if ( fValue instanceof AbstractCValue ) {
- ((AbstractCValue)fValue).setChanged( changed );
- }
- fChanged = changed;
- }
-
- public synchronized void preserve() {
- setChanged( false );
- if ( fValue instanceof AbstractCValue ) {
- ((AbstractCValue)fValue).preserve();
- }
- }
-
- CVariable getVariable() {
- return fVariable;
- }
-
- private void setVariable( CVariable variable ) {
- fVariable = variable;
- }
-
- public void resetValue() {
- if ( fValue instanceof AbstractCValue ) {
- ((AbstractCValue)fValue).reset();
- }
- }
-
- public boolean isEditable() throws DebugException {
- ICDIVariable var = getCDIVariable();
- if ( var != null ) {
- try {
- return var.isEditable();
- }
- catch( CDIException e ) {
- }
- }
- return false;
- }
-
- /**
- * Compares the underlying variable objects.
- * @see java.lang.Object#equals(java.lang.Object)
- */
- public boolean equals( Object obj ) {
- if ( obj instanceof InternalVariable ) {
- return getCDIVariableObject().equals( ((InternalVariable)obj).getCDIVariableObject() );
- }
- return false;
- }
-
- public boolean isSameDescriptor( ICDIVariableDescriptor desc ) {
- return getCDIVariableObject().equals( desc );
- }
- }
-
- /**
- * Constructor for CLocalVariable.
- */
- public CLocalVariable( CDebugElement parent, ICDIVariableDescriptor cdiVariableObject, String errorMessage ) {
- super( parent, cdiVariableObject, errorMessage );
- }
-
- /**
- * Constructor for CLocalVariable.
- */
- public CLocalVariable( CDebugElement parent, ICDIVariableDescriptor cdiVariableObject ) {
- super( parent, cdiVariableObject );
- }
-
- protected void createOriginal( ICDIVariableDescriptor vo ) {
- if ( vo != null ) {
- setName( vo.getName() );
- setOriginal( new InternalVariable( this, vo ) );
- }
- }
-}
diff --git a/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/model/CMemoryBlockExtension.java b/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/model/CMemoryBlockExtension.java
deleted file mode 100644
index 834be102123..00000000000
--- a/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/model/CMemoryBlockExtension.java
+++ /dev/null
@@ -1,522 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004, 2005 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.internal.core.model;
-
-import java.math.BigInteger;
-import java.util.Arrays;
-import java.util.HashSet;
-import org.eclipse.cdt.debug.core.CDebugCorePlugin;
-import org.eclipse.cdt.debug.core.cdi.CDIException;
-import org.eclipse.cdt.debug.core.cdi.event.ICDIEvent;
-import org.eclipse.cdt.debug.core.cdi.event.ICDIEventListener;
-import org.eclipse.cdt.debug.core.cdi.event.ICDIMemoryChangedEvent;
-import org.eclipse.cdt.debug.core.cdi.event.ICDIRestartedEvent;
-import org.eclipse.cdt.debug.core.cdi.event.ICDIResumedEvent;
-import org.eclipse.cdt.debug.core.cdi.model.ICDIMemoryBlock;
-import org.eclipse.cdt.debug.core.cdi.model.ICDIMemoryBlockManagement2;
-import org.eclipse.cdt.debug.core.cdi.model.ICDIMemorySpaceManagement;
-import org.eclipse.cdt.debug.core.cdi.model.ICDIObject;
-import org.eclipse.cdt.debug.core.cdi.model.ICDITarget;
-import org.eclipse.cdt.debug.core.model.IExecFileInfo;
-import org.eclipse.cdt.debug.internal.core.CMemoryBlockRetrievalExtension;
-import org.eclipse.debug.core.DebugEvent;
-import org.eclipse.debug.core.DebugException;
-import org.eclipse.debug.core.DebugPlugin;
-import org.eclipse.debug.core.model.IMemoryBlockExtension;
-import org.eclipse.debug.core.model.IMemoryBlockRetrieval;
-import org.eclipse.debug.core.model.MemoryByte;
-
-/**
- * Represents a memory block in the CDI model.
- */
-public class CMemoryBlockExtension extends CDebugElement implements IMemoryBlockExtension, ICDIEventListener {
-
- /**
- * The address expression this memory block is based on.
- */
- private String fExpression;
-
- /**
- * The base address of this memory block.
- */
- private BigInteger fBaseAddress;
-
- /**
- * The memory space identifier; will be null for backends that
- * don't require memory space support
- */
- private String fMemorySpaceID;
-
- /**
- * The underlying CDI memory block.
- */
- private ICDIMemoryBlock fCDIBlock;
-
- /**
- * The memory bytes values.
- */
- private MemoryByte[] fBytes = null;
-
- private HashSet fChanges = new HashSet();
-
-
- /**
- * Constructor for CMemoryBlockExtension.
- */
- public CMemoryBlockExtension( CDebugTarget target, String expression, BigInteger baseAddress ) {
- super( target );
-
- fExpression = expression;
- fBaseAddress = baseAddress;
- }
-
- /**
- * Constructor for CMemoryBlockExtension.
- */
- public CMemoryBlockExtension( CDebugTarget target, String expression, BigInteger baseAddress, int wordSize ) {
- super( target );
- fExpression = expression;
- fBaseAddress = baseAddress;
- }
-
- /**
- * Constructor for CMemoryBlockExtension that supports memory spaces
- *
- */
- public CMemoryBlockExtension( CDebugTarget target, BigInteger baseAddress, String memorySpaceID ) {
- super( target );
- fBaseAddress = baseAddress;
- fMemorySpaceID = memorySpaceID;
- if (target.getCDITarget() instanceof ICDIMemorySpaceManagement)
- fExpression = ((ICDIMemorySpaceManagement)target.getCDITarget()).addressToString(baseAddress, memorySpaceID);
-
- if (fExpression == null)
- // If the backend supports memory spaces, it should implement ICDIMemorySpaceManagement
- // Even if it does, it may choose to use our built-in encoding/decoding
- fExpression = CMemoryBlockRetrievalExtension.addressToString(baseAddress, memorySpaceID);
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.debug.core.model.IMemoryBlockExtension#getExpression()
- */
- public String getExpression() {
- return fExpression;
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.debug.core.model.IMemoryBlockExtension#getBigBaseAddress()
- */
- public BigInteger getBigBaseAddress() {
- return fBaseAddress;
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.debug.core.model.IMemoryBlockExtension#getAddressSize()
- */
- public int getAddressSize() {
- return ((CDebugTarget)getDebugTarget()).getAddressFactory().createAddress( getBigBaseAddress() ).getSize();
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.debug.core.model.IMemoryBlockExtension#getAddressableSize()
- */
- public int getAddressableSize() throws DebugException {
- if (getCDIBlock() == null) {
- try {
- // create a CDI block of an arbitrary size so we can call into
- // the backed to determine the memory's addressable size
- setCDIBlock( createCDIBlock( fBaseAddress, 100 ));
- }
- catch( CDIException e ) {
- targetRequestFailed( e.getMessage(), null );
- }
- }
- return getCDIBlock().getWordSize();
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.debug.core.model.IMemoryBlockExtension#supportBaseAddressModification()
- */
- public boolean supportBaseAddressModification() {
- return true;
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.debug.core.model.IMemoryBlockExtension#setBaseAddress(java.math.BigInteger)
- */
- public void setBaseAddress( BigInteger address ) throws DebugException {
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.debug.core.model.IMemoryBlockExtension#getBytesFromOffset(java.math.BigInteger, long)
- */
- public MemoryByte[] getBytesFromOffset( BigInteger unitOffset, long addressableUnits ) throws DebugException {
- // TODO Auto-generated method stub
- return null;
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.debug.core.model.IMemoryBlockExtension#getBytesFromAddress(java.math.BigInteger, long)
- */
- public MemoryByte[] getBytesFromAddress( BigInteger address, long length ) throws DebugException {
- ICDIMemoryBlock cdiBlock = getCDIBlock();
- if ( cdiBlock == null ||
- cdiBlock.getStartAddress().compareTo( address ) > 0 ||
- cdiBlock.getStartAddress().add( BigInteger.valueOf( cdiBlock.getLength()/cdiBlock.getWordSize() ) ).compareTo( address.add( BigInteger.valueOf( length ) ) ) < 0 ) {
- synchronized( this ) {
- byte[] bytes = null;
- try {
- cdiBlock = getCDIBlock();
- if ( cdiBlock == null ||
- cdiBlock.getStartAddress().compareTo( address ) > 0 ||
- cdiBlock.getStartAddress().add( BigInteger.valueOf( cdiBlock.getLength()/cdiBlock.getWordSize() ) ).compareTo( address.add( BigInteger.valueOf( length ) ) ) < 0 ) {
- if ( cdiBlock != null ) {
- disposeCDIBlock();
- fBytes = null;
- }
- setCDIBlock( cdiBlock = createCDIBlock( address, length ) );
- }
- bytes = getCDIBlock().getBytes();
- }
- catch( CDIException e ) {
- targetRequestFailed( e.getMessage(), null );
- }
- fBytes = new MemoryByte[bytes.length];
- for ( int i = 0; i < bytes.length; ++i ) {
- fBytes[i] = createMemoryByte( bytes[i], getCDIBlock().getFlags( i ), hasChanged( getRealBlockAddress().add( BigInteger.valueOf( i ) ) ) );
- }
- }
- }
- MemoryByte[] result = new MemoryByte[0];
- if ( fBytes != null ) {
- int offset = address.subtract( getRealBlockAddress() ).intValue();
- int offsetInBytes = offset * cdiBlock.getWordSize();
- long lengthInBytes = length * cdiBlock.getWordSize();
- if ( offset >= 0 ) {
- int size = ( fBytes.length - offsetInBytes >= lengthInBytes ) ? (int)lengthInBytes : fBytes.length - offsetInBytes;
- if ( size > 0 ) {
- result = new MemoryByte[size];
- System.arraycopy( fBytes, offsetInBytes, result, 0, size );
- }
- }
- }
- return result;
- }
-
- private boolean isBigEndian() {
- IExecFileInfo info = (IExecFileInfo)getDebugTarget().getAdapter( IExecFileInfo.class );
- if ( info != null ) {
- return !info.isLittleEndian();
- }
- return false;
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.debug.core.model.IMemoryBlockExtension#getMemoryBlockRetrieval()
- */
- public IMemoryBlockRetrieval getMemoryBlockRetrieval() {
- return (IMemoryBlockRetrieval)getDebugTarget().getAdapter( IMemoryBlockRetrieval.class );
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.cdt.debug.core.cdi.event.ICDIEventListener#handleDebugEvents(org.eclipse.cdt.debug.core.cdi.event.ICDIEvent[])
- */
- public void handleDebugEvents( ICDIEvent[] events ) {
- for( int i = 0; i < events.length; i++ ) {
- ICDIEvent event = events[i];
- ICDIObject source = event.getSource();
- if ( source == null )
- continue;
- if ( source.getTarget().equals( getCDITarget() ) ) {
- if ( event instanceof ICDIResumedEvent || event instanceof ICDIRestartedEvent ) {
- resetChanges();
- }
- else if ( event instanceof ICDIMemoryChangedEvent ) {
- if ( source instanceof ICDIMemoryBlock && source.equals( getCDIBlock() ) ) {
- handleChangedEvent( (ICDIMemoryChangedEvent)event );
- }
- }
- }
- }
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.debug.core.model.IMemoryBlock#getStartAddress()
- */
- public long getStartAddress() {
- return 0;
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.debug.core.model.IMemoryBlock#getLength()
- */
- public long getLength() {
- return 0;
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.debug.core.model.IMemoryBlock#getBytes()
- */
- public byte[] getBytes() throws DebugException {
- return null;
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.debug.core.model.IMemoryBlock#supportsValueModification()
- */
- public boolean supportsValueModification() {
- return true;
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.debug.core.model.IMemoryBlock#setValue(long, byte[])
- */
- public void setValue( long offset, byte[] bytes ) throws DebugException {
- setValue( BigInteger.valueOf( offset ), bytes );
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.debug.core.model.IMemoryBlockExtension#setValue(java.math.BigInteger, byte[])
- */
- public void setValue( BigInteger offset, byte[] bytes ) throws DebugException {
- ICDIMemoryBlock block = getCDIBlock();
- if ( block != null ) {
- BigInteger base = getBigBaseAddress();
- BigInteger real = getRealBlockAddress();
- long realOffset = base.add( offset ).subtract( real ).longValue();
- try {
- block.setValue( realOffset, bytes );
- }
- catch( CDIException e ) {
- targetRequestFailed( e.getDetailMessage(), null );
- }
- }
- }
-
- private ICDIMemoryBlock createCDIBlock( BigInteger address, long length) throws CDIException {
- ICDIMemoryBlock block = null;
- CDebugTarget target = (CDebugTarget)getDebugTarget();
- ICDITarget cdiTarget = target.getCDITarget();
- if ((fMemorySpaceID != null) && (cdiTarget instanceof ICDIMemoryBlockManagement2)) {
- block = ((ICDIMemoryBlockManagement2)cdiTarget).createMemoryBlock(address, fMemorySpaceID, (int)length);
- } else {
- // Note that CDI clients should ignore the word size
- // parameter. It has been deprecated in 4.0. We continue to
- // pass in 1 as has always been the case to maintain backwards
- // compatibility.
- block = cdiTarget.createMemoryBlock( address.toString(), (int)length, 1);
- }
- block.setFrozen( false );
- getCDISession().getEventManager().addEventListener( this );
- return block;
- }
-
- private void disposeCDIBlock() {
- ICDIMemoryBlock block = getCDIBlock();
- if ( block != null ) {
- try {
- ((CDebugTarget)getDebugTarget()).getCDITarget().removeBlocks( new ICDIMemoryBlock[]{ block });
- }
- catch( CDIException e ) {
- DebugPlugin.log( e );
- }
- setCDIBlock( null );
- getCDISession().getEventManager().removeEventListener( this );
- }
- }
-
- private ICDIMemoryBlock getCDIBlock() {
- return fCDIBlock;
- }
-
- private void setCDIBlock( ICDIMemoryBlock cdiBlock ) {
- fCDIBlock = cdiBlock;
- }
-
- private BigInteger getRealBlockAddress() {
- ICDIMemoryBlock block = getCDIBlock();
- return ( block != null ) ? block.getStartAddress() : BigInteger.ZERO;
- }
-
- private long getBlockSize() {
- ICDIMemoryBlock block = getCDIBlock();
- return ( block != null ) ? block.getLength() : 0;
- }
-
- private void handleChangedEvent( ICDIMemoryChangedEvent event ) {
- ICDIMemoryBlock block = getCDIBlock();
- if ( block != null && fBytes != null ) {
- MemoryByte[] memBytes = (MemoryByte[])fBytes.clone();
- try {
- BigInteger start = getRealBlockAddress();
- long length = block.getLength();
- byte[] newBytes = block.getBytes();
- BigInteger[] addresses = event.getAddresses();
- saveChanges( addresses );
- for ( int i = 0; i < addresses.length; ++i ) {
- fChanges.add( addresses[i] );
- if ( addresses[i].compareTo( start ) >= 0 && addresses[i].compareTo( start.add( BigInteger.valueOf( length ) ) ) < 0 ) {
- int index = addresses[i].subtract( start ).intValue();
- if ( index >= 0 && index < memBytes.length && index < newBytes.length ) {
- memBytes[index].setChanged( true );
- memBytes[index].setValue( newBytes[index] );
- }
- }
- }
- fBytes = memBytes;
- fireChangeEvent( DebugEvent.CONTENT );
- }
- catch( CDIException e ) {
- DebugPlugin.log( e );
- }
- }
- }
-
- private void saveChanges( BigInteger[] addresses ) {
- fChanges.addAll( Arrays.asList( addresses ) );
- }
-
- private boolean hasChanged( BigInteger address ) {
- return fChanges.contains( address );
- }
-
- private void resetChanges() {
- if ( fBytes != null ) {
- BigInteger[] changes = (BigInteger[])fChanges.toArray( new BigInteger[fChanges.size()] );
- for ( int i = 0; i < changes.length; ++i ) {
- BigInteger real = getRealBlockAddress();
- if ( real.compareTo( changes[i] ) <= 0 && real.add( BigInteger.valueOf( getBlockSize() ) ).compareTo( changes[i] ) > 0 ) {
- int index = changes[i].subtract( real ).intValue();
- if ( index >= 0 && index < fBytes.length ) {
- fBytes[index].setChanged( false );
- }
- }
- }
- }
- fChanges.clear();
- fireChangeEvent( DebugEvent.CONTENT );
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.debug.core.model.IMemoryBlockExtension#supportsChangeManagement()
- */
- public boolean supportsChangeManagement() {
- return true;
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.debug.core.model.IMemoryBlockExtension#connect(java.lang.Object)
- */
- public void connect( Object object ) {
- // TODO Auto-generated method stub
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.debug.core.model.IMemoryBlockExtension#disconnect(java.lang.Object)
- */
- public void disconnect( Object object ) {
- // TODO Auto-generated method stub
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.debug.core.model.IMemoryBlockExtension#getConnections()
- */
- public Object[] getConnections() {
- // TODO Auto-generated method stub
- return new Object[0];
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.debug.core.model.IMemoryBlockExtension#dispose()
- */
- public void dispose() {
- fChanges.clear();
- ICDIMemoryBlock cdiBlock = getCDIBlock();
- if ( cdiBlock != null ) {
- try {
- ((CDebugTarget)getDebugTarget()).getCDITarget().removeBlocks( new ICDIMemoryBlock[] {cdiBlock} );
- }
- catch( CDIException e ) {
- CDebugCorePlugin.log( e );
- }
- fCDIBlock = null;
- }
- getCDISession().getEventManager().removeEventListener( this );
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.core.runtime.IAdaptable#getAdapter(java.lang.Class)
- */
- public Object getAdapter( Class adapter ) {
- if ( IMemoryBlockRetrieval.class.equals( adapter ) )
- return getMemoryBlockRetrieval();
- return super.getAdapter( adapter );
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.debug.core.model.IMemoryBlockExtension#getMemoryBlockStartAddress()
- */
- public BigInteger getMemoryBlockStartAddress() throws DebugException {
- return null; // return null to mean not bounded ... according to the spec
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.debug.core.model.IMemoryBlockExtension#getMemoryBlockEndAddress()
- */
- public BigInteger getMemoryBlockEndAddress() throws DebugException {
- return null;// return null to mean not bounded ... according to the spec
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.debug.core.model.IMemoryBlockExtension#getBigLength()
- */
- public BigInteger getBigLength() throws DebugException {
- ICDIMemoryBlock block = getCDIBlock();
- if ( block != null ) {
- BigInteger length = new BigInteger( Long.toHexString( block.getLength() ), 16 );
- return length;
- }
- return BigInteger.ZERO;
- }
-
- private MemoryByte createMemoryByte( byte value, byte cdiFlags, boolean changed ) {
- byte flags = 0;
- if ( (cdiFlags & ICDIMemoryBlock.VALID) != 0 ) {
- flags |= MemoryByte.HISTORY_KNOWN | MemoryByte.ENDIANESS_KNOWN;
- if ( (cdiFlags & ICDIMemoryBlock.READ_ONLY) != 0 ) {
- flags |= MemoryByte.READABLE;
- }
- else {
- flags |= MemoryByte.READABLE | MemoryByte.WRITABLE;
- }
- if ( isBigEndian() ) {
- flags |= MemoryByte.BIG_ENDIAN;
- }
- if ( changed )
- flags |= MemoryByte.CHANGED;
- }
- return new MemoryByte( value, flags );
- }
-
-
- /**
- * Provides the memory space associated with this block if and only if the
- * block was created with an address value + memory space qualifier. If the
- * block was created from an expression, this method should return null--
- * even if the target CDI backend supports memory spaces.
- *
- * @return a memory space ID or null
- * expression
- */
- public String getMemorySpaceID() {
- return fMemorySpaceID;
- }
-}
diff --git a/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/model/CModule.java b/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/model/CModule.java
deleted file mode 100644
index 9089002e834..00000000000
--- a/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/model/CModule.java
+++ /dev/null
@@ -1,228 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004, 2005 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.internal.core.model;
-
-import java.math.BigInteger;
-import org.eclipse.cdt.core.IAddress;
-import org.eclipse.cdt.core.IAddressFactory;
-import org.eclipse.cdt.core.model.CoreModel;
-import org.eclipse.cdt.core.model.IBinary;
-import org.eclipse.cdt.core.model.ICElement;
-import org.eclipse.cdt.debug.core.cdi.CDIException;
-import org.eclipse.cdt.debug.core.cdi.model.ICDIObject;
-import org.eclipse.cdt.debug.core.cdi.model.ICDISharedLibrary;
-import org.eclipse.cdt.debug.core.model.ICModule;
-import org.eclipse.core.runtime.IPath;
-import org.eclipse.core.runtime.Path;
-import org.eclipse.debug.core.DebugException;
-
-/**
- * The CDI based implementation of <code>ICModule</code>.
- *
- * This implementation is experimental and needs to be changed when
- * the CDI level support is available.
- */
-public class CModule extends CDebugElement implements ICModule {
-
- private int fType = 0;
-
- private ICElement fCElement;
-
- private ICDIObject fCDIObject;
-
- private IPath fImageName;
-
- private IPath fSymbolsFileName;
-
- public static CModule createExecutable( CDebugTarget target, IPath path ) {
- // TODO Add support for executables to CDI.
- return new CModule( EXECUTABLE, target, path );
- }
-
- public static CModule createSharedLibrary( CDebugTarget target, ICDISharedLibrary lib ) {
- return new CModule( SHARED_LIBRARY, target, lib );
- }
-
- /**
- * Constructor for CModule.
- */
- private CModule( int type, CDebugTarget target, IPath path ) {
- super( target );
- fType = type;
- fCElement = CoreModel.getDefault().create( path );
- fCDIObject = null;
- fImageName = path;
- fSymbolsFileName = path;
- }
-
- /**
- * Constructor for CModule.
- */
- private CModule( int type, CDebugTarget target, ICDIObject cdiObject ) {
- super( target );
- fType = type;
- if ( cdiObject instanceof ICDISharedLibrary ) {
- fCElement = CoreModel.getDefault().create( new Path( ((ICDISharedLibrary)cdiObject).getFileName() ) );
- }
- fCDIObject = cdiObject;
- fImageName = ( ( cdiObject instanceof ICDISharedLibrary ) ) ? new Path( ((ICDISharedLibrary)cdiObject).getFileName() ) : new Path( CoreModelMessages.getString( "CModule.0" ) ); //$NON-NLS-1$
- fSymbolsFileName = fImageName;
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.cdt.debug.core.model.ICModule#getType()
- */
- public int getType() {
- return fType;
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.cdt.debug.core.model.ICModule#getName()
- */
- public String getName() {
- return fImageName.lastSegment().toString();
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.cdt.debug.core.model.ICModule#getImageName()
- */
- public IPath getImageName() {
- return fImageName;
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.cdt.debug.core.model.ICModule#getSymbolsFileName()
- */
- public IPath getSymbolsFileName() {
- return fSymbolsFileName;
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.cdt.debug.core.model.ICModule#setSymbolsFileName(org.eclipse.core.runtime.IPath)
- */
- public void setSymbolsFileName( IPath symbolsFile ) throws DebugException {
- loadSymbolsFromFile( symbolsFile );
- fSymbolsFileName = symbolsFile;
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.cdt.debug.core.model.ICModule#getBaseAddress()
- */
- public IAddress getBaseAddress() {
- return ( fCDIObject instanceof ICDISharedLibrary ) ? getAddressFactory().createAddress( ((ICDISharedLibrary)fCDIObject).getStartAddress() ) : getAddressFactory().getZero();
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.cdt.debug.core.model.ICModule#getSize()
- */
- public long getSize() {
- long result = 0;
- if ( fCDIObject instanceof ICDISharedLibrary ) {
- BigInteger start = ((ICDISharedLibrary)fCDIObject).getStartAddress();
- BigInteger end = ((ICDISharedLibrary)fCDIObject).getEndAddress();
- if ( end.compareTo( start ) > 0 )
- result = end.subtract( start ).longValue();
- }
- return result;
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.cdt.debug.core.model.ICModule#areSymbolsLoaded()
- */
- public boolean areSymbolsLoaded() {
- return ( fCElement instanceof IBinary ) ? ((IBinary)fCElement).hasDebug() :
- ( ( fCDIObject instanceof ICDISharedLibrary ) ? ((ICDISharedLibrary)fCDIObject).areSymbolsLoaded() : false );
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.cdt.debug.core.model.ICModule#canLoadSymbols()
- */
- public boolean canLoadSymbols() {
- return ( getDebugTarget().isSuspended() && !areSymbolsLoaded() );
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.cdt.debug.core.model.ICModule#loadSymbols()
- */
- public void loadSymbols() throws DebugException {
- loadSymbolsFromFile( getSymbolsFileName() );
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.cdt.debug.core.model.ICModule#getPlatform()
- */
- public String getPlatform() {
- return ( fCElement instanceof IBinary ) ? ((IBinary)fCElement).getCPU() : CoreModelMessages.getString( "CModule.1" ); //$NON-NLS-1$
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.cdt.debug.core.model.ICModule#isLittleEndian()
- */
- public boolean isLittleEndian() {
- return ( fCElement instanceof IBinary ) ? ((IBinary)fCElement).isLittleEndian() : ((CDebugTarget)getDebugTarget()).isLittleEndian();
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.cdt.debug.core.model.ICModule#getAddressFactory()
- */
- public IAddressFactory getAddressFactory() {
- return ((CDebugTarget)getDebugTarget()).getAddressFactory();
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.cdt.debug.core.model.ICModule#getCPU()
- */
- public String getCPU() {
- return ( fCElement instanceof IBinary ) ? ((IBinary)fCElement).getCPU() : null;
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.core.runtime.IAdaptable#getAdapter(java.lang.Class)
- */
- public Object getAdapter( Class adapter ) {
- if ( ICElement.class.equals( adapter ) ) {
- return getCElement();
- }
- if ( IBinary.class.equals( adapter ) && getCElement() instanceof IBinary ) {
- return getCElement();
- }
- return super.getAdapter( adapter );
- }
-
- public void dispose() {
-
- }
-
- public boolean equals( ICDIObject cdiObject ) {
- return ( fCDIObject != null ) ? fCDIObject.equals( cdiObject ) : false;
- }
-
- protected ICElement getCElement() {
- return fCElement;
- }
-
- private void loadSymbolsFromFile( IPath path ) throws DebugException {
- if ( path == null || path.isEmpty() ) {
- requestFailed( CoreModelMessages.getString( "CModule.2" ), null ); //$NON-NLS-1$
- }
- String message = CoreModelMessages.getString( "CModule.4" ); //$NON-NLS-1$
- if ( fCDIObject instanceof ICDISharedLibrary && path.equals( getSymbolsFileName() )) {
- try {
- ((ICDISharedLibrary)fCDIObject).loadSymbols();
- return;
- }
- catch( CDIException e ) {
- message = e.getMessage();
- }
- }
- targetRequestFailed( message, null );
- }
-}
diff --git a/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/model/CModuleManager.java b/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/model/CModuleManager.java
deleted file mode 100644
index 4b584249145..00000000000
--- a/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/model/CModuleManager.java
+++ /dev/null
@@ -1,165 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.internal.core.model;
-
-import java.util.ArrayList;
-import java.util.Arrays;
-import java.util.Iterator;
-
-import org.eclipse.cdt.debug.core.CDIDebugModel;
-import org.eclipse.cdt.debug.core.cdi.model.ICDIObject;
-import org.eclipse.cdt.debug.core.cdi.model.ICDISharedLibrary;
-import org.eclipse.cdt.debug.core.model.ICDebugTarget;
-import org.eclipse.cdt.debug.core.model.ICModule;
-import org.eclipse.cdt.debug.core.model.IModuleRetrieval;
-import org.eclipse.cdt.debug.internal.core.ICDebugInternalConstants;
-import org.eclipse.core.runtime.IStatus;
-import org.eclipse.core.runtime.MultiStatus;
-import org.eclipse.core.runtime.PlatformObject;
-import org.eclipse.core.runtime.Status;
-import org.eclipse.debug.core.DebugEvent;
-import org.eclipse.debug.core.DebugException;
-
-/**
- * Manages the modules loaded on this debug target.
- */
-public class CModuleManager extends PlatformObject implements IModuleRetrieval {
-
- /**
- * The debug target associated with this manager.
- */
- private CDebugTarget fDebugTarget;
-
- /**
- * The collection of the shared libraries loaded on this target.
- */
- private ArrayList fModules;
-
- /**
- * Constructor for CModuleManager.
- */
- public CModuleManager( CDebugTarget target ) {
- fDebugTarget = target;
- fModules = new ArrayList( 5 );
- }
-
- public boolean hasModules() throws DebugException {
- return !fModules.isEmpty();
- }
-
- public ICModule[] getModules() throws DebugException {
- return (ICModule[])fModules.toArray( new ICModule[fModules.size()] );
- }
-
- public void loadSymbolsForAllModules() throws DebugException {
- MultiStatus ms = new MultiStatus( CDIDebugModel.getPluginIdentifier(), ICDebugInternalConstants.STATUS_CODE_ERROR, CoreModelMessages.getString( "CModuleManager.0" ), null ); //$NON-NLS-1$
- Iterator it = fModules.iterator();
- while( it.hasNext() ) {
- ICModule module = (ICModule)it.next();
- try {
- module.loadSymbols();
- }
- catch( DebugException e ) {
- ms.add( new Status( IStatus.ERROR, CDIDebugModel.getPluginIdentifier(), ICDebugInternalConstants.STATUS_CODE_ERROR, e.getMessage(), e ) );
- }
- }
- if ( !ms.isOK() ) {
- throw new DebugException( ms );
- }
- }
-
- public void loadSymbols( ICModule[] modules ) throws DebugException {
- MultiStatus ms = new MultiStatus( CDIDebugModel.getPluginIdentifier(), ICDebugInternalConstants.STATUS_CODE_ERROR, CoreModelMessages.getString( "CModuleManager.1" ), null ); //$NON-NLS-1$
- for ( int i = 0; i < modules.length; ++i ) {
- try {
- modules[i].loadSymbols();
- }
- catch( DebugException e ) {
- ms.add( new Status( IStatus.ERROR, CDIDebugModel.getPluginIdentifier(), ICDebugInternalConstants.STATUS_CODE_ERROR, e.getMessage(), e ) );
- }
- }
- if ( !ms.isOK() ) {
- throw new DebugException( ms );
- }
- }
-
- public void dispose() {
- Iterator it = fModules.iterator();
- while( it.hasNext() ) {
- ((CModule)it.next()).dispose();
- }
- fModules.clear();
- }
-
- protected CDebugTarget getDebugTarget() {
- return fDebugTarget;
- }
-
- protected void addModules( ICModule[] modules ) {
- fModules.addAll( Arrays.asList( modules ) );
- }
-
- protected void removeModules( ICModule[] modules ) {
- fModules.removeAll( Arrays.asList( modules ) );
- }
-
- public void sharedLibraryLoaded( ICDISharedLibrary cdiLibrary ) {
- CModule library = null;
- synchronized( fModules ) {
- if ( find( cdiLibrary ) == null ) {
- library = CModule.createSharedLibrary( getDebugTarget(), cdiLibrary );
- fModules.add( library );
- }
- }
- if ( library != null )
- library.fireCreationEvent();
- }
-
- public void sharedLibraryUnloaded( ICDISharedLibrary cdiLibrary ) {
- CModule library = null;
- synchronized( fModules ) {
- library = find( cdiLibrary );
- if ( library != null ) {
- fModules.remove( library );
- }
- }
- if ( library != null ) {
- library.dispose();
- library.fireTerminateEvent();
- }
- }
-
- public void symbolsLoaded( ICDIObject cdiObject ) {
- CModule module = find( cdiObject );
- if ( module != null ) {
- module.fireChangeEvent( DebugEvent.STATE );
- }
- }
-
- private CModule find( ICDIObject cdiObject ) {
- Iterator it = fModules.iterator();
- while( it.hasNext() ) {
- CModule module = (CModule)it.next();
- if ( module.equals( cdiObject ) )
- return module;
- }
- return null;
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.core.runtime.PlatformObject#getAdapter(java.lang.Class)
- */
- public Object getAdapter( Class adapter ) {
- if ( adapter.equals( ICDebugTarget.class ) )
- return getDebugTarget();
- return super.getAdapter( adapter );
- }
-}
diff --git a/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/model/CRegister.java b/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/model/CRegister.java
deleted file mode 100644
index ec7393f75a6..00000000000
--- a/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/model/CRegister.java
+++ /dev/null
@@ -1,415 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.internal.core.model;
-
-import org.eclipse.cdt.debug.core.CDebugCorePlugin;
-import org.eclipse.cdt.debug.core.ICDTLaunchConfigurationConstants;
-import org.eclipse.cdt.debug.core.ICDebugConstants;
-import org.eclipse.cdt.debug.core.cdi.CDIException;
-import org.eclipse.cdt.debug.core.cdi.event.ICDIEvent;
-import org.eclipse.cdt.debug.core.cdi.event.ICDIMemoryChangedEvent;
-import org.eclipse.cdt.debug.core.cdi.event.ICDIResumedEvent;
-import org.eclipse.cdt.debug.core.cdi.model.ICDIArgumentDescriptor;
-import org.eclipse.cdt.debug.core.cdi.model.ICDIObject;
-import org.eclipse.cdt.debug.core.cdi.model.ICDIRegister;
-import org.eclipse.cdt.debug.core.cdi.model.ICDIRegisterDescriptor;
-import org.eclipse.cdt.debug.core.cdi.model.ICDITarget;
-import org.eclipse.cdt.debug.core.cdi.model.ICDITargetConfiguration3;
-import org.eclipse.cdt.debug.core.cdi.model.ICDIValue;
-import org.eclipse.cdt.debug.core.cdi.model.ICDIVariable;
-import org.eclipse.cdt.debug.core.cdi.model.ICDIVariableDescriptor;
-import org.eclipse.cdt.debug.core.cdi.model.type.ICDIArrayValue;
-import org.eclipse.cdt.debug.core.cdi.model.type.ICDIType;
-import org.eclipse.cdt.debug.core.model.CVariableFormat;
-import org.eclipse.cdt.debug.core.model.ICStackFrame;
-import org.eclipse.cdt.debug.core.model.ICType;
-import org.eclipse.cdt.debug.core.model.ICValue;
-import org.eclipse.cdt.debug.core.model.IRegisterDescriptor;
-import org.eclipse.core.runtime.CoreException;
-import org.eclipse.debug.core.DebugException;
-import org.eclipse.debug.core.model.IRegister;
-import org.eclipse.debug.core.model.IRegisterGroup;
-
-/**
- * Represents a register in the CDI model.
- */
-public class CRegister extends CVariable implements IRegister {
-
- private class InternalVariable implements IInternalVariable {
-
- /**
- * The enclosing <code>CVariable</code> instance.
- */
- private CVariable fVariable;
-
- /**
- * The CDI variable object this variable is based on.
- */
- private ICDIVariableDescriptor fCDIVariableObject;
-
- /**
- * The underlying CDI register.
- */
- private ICDIRegister fCDIRegister;
-
- /**
- * The type of this variable.
- */
- private CType fType;
-
- /**
- * The expression used to eveluate the value of this variable.
- */
- private String fQualifiedName;
-
- /**
- * The cache of the current value.
- */
- private ICValue fValue = CValueFactory.NULL_VALUE;
-
- /**
- * The change flag.
- */
- private boolean fChanged = false;
-
- /**
- * Constructor for InternalVariable.
- */
- InternalVariable( CVariable var, ICDIVariableDescriptor varObject ) {
- setVariable( var );
- setCDIVariableObject( varObject );
- setCDIRegister( (varObject instanceof ICDIRegister) ? (ICDIRegister)varObject : null );
- }
-
- public IInternalVariable createShadow( int start, int length ) throws DebugException {
- IInternalVariable iv = null;
- try {
- iv = new InternalVariable( getVariable(), getCDIVariableObject().getVariableDescriptorAsArray( start, length ) );
- }
- catch( CDIException e ) {
- requestFailed( e.getMessage(), null );
- }
- return iv;
- }
-
- public IInternalVariable createShadow( String type ) throws DebugException {
- IInternalVariable iv = null;
- try {
- iv = new InternalVariable( getVariable(), getCDIVariableObject().getVariableDescriptorAsType( type ) );
- }
- catch( CDIException e ) {
- requestFailed( e.getMessage(), null );
- }
- return iv;
- }
-
- private synchronized ICDIRegister getCDIRegister() throws DebugException {
- if ( fCDIRegister == null ) {
- try {
- fCDIRegister = getCDITarget().createRegister( (ICDIRegisterDescriptor)getCDIVariableObject() );
- }
- catch( CDIException e ) {
- requestFailed( e.getMessage(), null );
- }
- }
- return fCDIRegister;
- }
-
- private void setCDIRegister( ICDIRegister register ) {
- fCDIRegister = register;
- }
-
- private ICDIVariableDescriptor getCDIVariableObject() {
- if ( fCDIRegister != null ) {
- return fCDIRegister;
- }
- return fCDIVariableObject;
- }
-
- private void setCDIVariableObject( ICDIVariableDescriptor variableObject ) {
- fCDIVariableObject = variableObject;
- }
-
- public String getQualifiedName() throws DebugException {
- if ( fQualifiedName == null ) {
- try {
- fQualifiedName = (fCDIVariableObject != null) ? fCDIVariableObject.getQualifiedName() : null;
- }
- catch( CDIException e ) {
- requestFailed( e.getMessage(), null );
- }
- }
- return fQualifiedName;
- }
-
- public CType getType() throws DebugException {
- if ( fType == null ) {
- ICDIVariableDescriptor varObject = getCDIVariableObject();
- if ( varObject != null ) {
- synchronized( this ) {
- if ( fType == null ) {
- try {
- fType = new CType( varObject.getType() );
- }
- catch( CDIException e ) {
- requestFailed( e.getMessage(), null );
- }
- }
- }
- }
- }
- return fType;
- }
-
- private synchronized void invalidate( boolean destroy ) {
- try {
- if ( destroy && fCDIRegister != null )
- fCDIRegister.dispose();
- }
- catch( CDIException e ) {
- logError( e.getMessage() );
- }
- invalidateValue();
- setCDIRegister( null );
- if ( fType != null )
- fType.dispose();
- fType = null;
- }
-
- public void dispose( boolean destroy ) {
- invalidate( destroy );
- }
-
- public boolean isSameVariable( ICDIVariable cdiVar ) {
- return ( fCDIRegister != null ) ? fCDIRegister.equals( cdiVar ) : false;
- }
-
- public int sizeof() {
- if ( getCDIVariableObject() != null ) {
- try {
- return getCDIVariableObject().sizeof();
- }
- catch( CDIException e ) {
- }
- }
- return 0;
- }
-
- public boolean isArgument() {
- return ( getCDIVariableObject() instanceof ICDIArgumentDescriptor );
- }
-
- public void setValue( String expression ) throws DebugException {
- ICDIRegister cdiRegister = null;
- try {
- cdiRegister = getCDIRegister();
- if ( cdiRegister != null )
- cdiRegister.setValue( expression );
- else
- requestFailed( CoreModelMessages.getString( "CModificationVariable.0" ), null ); //$NON-NLS-1$
- }
- catch( CDIException e ) {
- targetRequestFailed( e.getMessage(), null );
- }
- }
-
- public synchronized ICValue getValue() throws DebugException {
- if ( fValue.equals( CValueFactory.NULL_VALUE ) ) {
- ICDIRegister reg = getCDIRegister();
- if ( reg != null ) {
- try {
- ICDIValue cdiValue = reg.getValue( getCurrentStackFrame().getCDIStackFrame() );
- if ( cdiValue != null ) {
- ICDIType cdiType = cdiValue.getType();
- if ( cdiValue instanceof ICDIArrayValue && cdiType != null ) {
- ICType type = new CType( cdiType );
- if ( type.isArray() ) {
- int[] dims = type.getArrayDimensions();
- if ( dims.length > 0 && dims[0] > 0 )
- fValue = CValueFactory.createIndexedValue( getVariable(), (ICDIArrayValue)cdiValue, 0, dims[0] );
- }
- }
- else {
- fValue = CValueFactory.createValue( getVariable(), cdiValue );
- }
- }
- }
- catch( CDIException e ) {
- requestFailed( e.getMessage(), e );
- }
- }
- }
- return fValue;
- }
-
- public void invalidateValue() {
- if ( fValue instanceof AbstractCValue ) {
- ((AbstractCValue)fValue).dispose();
- fValue = CValueFactory.NULL_VALUE;
- }
- }
-
- public boolean isChanged() {
- return fChanged;
- }
-
- public synchronized void setChanged( boolean changed ) {
- if ( changed ) {
- invalidateValue();
- }
- if ( fValue instanceof AbstractCValue ) {
- ((AbstractCValue)fValue).setChanged( changed );
- }
- fChanged = changed;
- }
-
- public synchronized void preserve() {
- setChanged( false );
- if ( fValue instanceof AbstractCValue ) {
- ((AbstractCValue)fValue).preserve();
- }
- }
-
- CVariable getVariable() {
- return fVariable;
- }
-
- private void setVariable( CVariable variable ) {
- fVariable = variable;
- }
-
- public void resetValue() {
- if ( fValue instanceof AbstractCValue ) {
- ((AbstractCValue)fValue).reset();
- }
- }
-
- public boolean isEditable() throws DebugException {
- ICDIRegister reg = getCDIRegister();
- if ( reg != null && reg.getTarget().getConfiguration().supportsRegisterModification() ) {
- try {
- return reg.isEditable();
- }
- catch( CDIException e ) {
- }
- }
- return false;
- }
- /**
- * Compares the underlying variable objects.
- * @see java.lang.Object#equals(java.lang.Object)
- */
- public boolean equals( Object obj ) {
- if ( obj instanceof InternalVariable ) {
- return getCDIVariableObject().equals( ((InternalVariable)obj).getCDIVariableObject() );
- }
- return false;
- }
-
- public boolean isSameDescriptor( ICDIVariableDescriptor desc ) {
- return getCDIVariableObject().equals( desc );
- }
- }
-
- /**
- * Constructor for CRegister.
- */
- protected CRegister( CRegisterGroup parent, IRegisterDescriptor descriptor ) {
- super( parent, ((CRegisterDescriptor)descriptor).getCDIDescriptor() );
- setFormat( CVariableFormat.getFormat( CDebugCorePlugin.getDefault().getPluginPreferences().getInt( ICDebugConstants.PREF_DEFAULT_REGISTER_FORMAT ) ) );
- }
-
- /**
- * Constructor for CRegister.
- */
- protected CRegister( CRegisterGroup parent, IRegisterDescriptor descriptor, String message ) {
- super( parent, ((CRegisterDescriptor)descriptor).getCDIDescriptor(), message );
- setFormat( CVariableFormat.getFormat( CDebugCorePlugin.getDefault().getPluginPreferences().getInt( ICDebugConstants.PREF_DEFAULT_REGISTER_FORMAT ) ) );
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.debug.core.model.IRegister#getRegisterGroup()
- */
- public IRegisterGroup getRegisterGroup() throws DebugException {
- return (IRegisterGroup)getParent();
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.cdt.debug.internal.core.model.CVariable#isBookkeepingEnabled()
- */
- protected boolean isBookkeepingEnabled() {
- boolean result = false;
- try {
- result = getLaunch().getLaunchConfiguration().getAttribute( ICDTLaunchConfigurationConstants.ATTR_DEBUGGER_ENABLE_REGISTER_BOOKKEEPING, false );
- }
- catch( CoreException e ) {
- }
- return result;
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.cdt.debug.core.model.ICVariable#canEnableDisable()
- */
- public boolean canEnableDisable() {
- return true;
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.cdt.debug.core.cdi.event.ICDIEventListener#handleDebugEvents(org.eclipse.cdt.debug.core.cdi.event.ICDIEvent[])
- */
- public void handleDebugEvents( ICDIEvent[] events ) {
- for( int i = 0; i < events.length; i++ ) {
- ICDIEvent event = events[i];
- ICDIObject source = event.getSource();
- if (source != null) {
- ICDITarget cdiTarget = source.getTarget();
- if ( event instanceof ICDIResumedEvent ) {
- if ( getCDITarget().equals( cdiTarget ) ) {
- setChanged( false );
- }
- }
- else if ( event instanceof ICDIMemoryChangedEvent &&
- cdiTarget.getConfiguration() instanceof ICDITargetConfiguration3 &&
- ((ICDITargetConfiguration3)cdiTarget.getConfiguration()).needsRegistersUpdated(event)) {
- resetValue();
- return; // avoid similar but logic inappropriate for us in CVariable
- }
- }
- }
- super.handleDebugEvents( events );
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.cdt.debug.internal.core.model.AbstractCVariable#dispose()
- */
- public void dispose() {
- internalDispose( true );
- setDisposed( true );
- }
-
- protected ICStackFrame getStackFrame() {
- ICStackFrame frame = super.getStackFrame();
- if (frame == null)
- frame = getCurrentStackFrame();
- return frame;
- }
-
- protected CStackFrame getCurrentStackFrame() {
- return ((CDebugTarget)getDebugTarget()).getRegisterManager().getCurrentFrame();
- }
-
- protected void createOriginal( ICDIVariableDescriptor vo ) {
- if ( vo != null ) {
- setName( vo.getName() );
- setOriginal( new InternalVariable( this, vo ) );
- }
- }
-}
diff --git a/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/model/CRegisterDescriptor.java b/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/model/CRegisterDescriptor.java
deleted file mode 100644
index 445b9c1a34f..00000000000
--- a/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/model/CRegisterDescriptor.java
+++ /dev/null
@@ -1,64 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004, 2005 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.internal.core.model;
-
-import org.eclipse.cdt.debug.core.cdi.model.ICDIRegisterDescriptor;
-import org.eclipse.cdt.debug.core.cdi.model.ICDIRegisterGroup;
-import org.eclipse.cdt.debug.core.model.IRegisterDescriptor;
-
-/**
- * A register descriptor. Temporary, need to change the related CDI interfaces.
- */
-public class CRegisterDescriptor implements IRegisterDescriptor {
-
- private String fName;
- private String fGroupName;
- private ICDIRegisterDescriptor fCDIDescriptor = null;
-
- /**
- * Constructor for CRegisterDescriptor.
- */
- public CRegisterDescriptor( String name, String groupName ) {
- fName = name;
- fGroupName = groupName;
- }
-
- /**
- * Constructor for CRegisterDescriptor.
- */
- public CRegisterDescriptor( ICDIRegisterGroup group, ICDIRegisterDescriptor desc ) {
- fName = desc.getName();
- fGroupName = group.getName();
- fCDIDescriptor = desc;
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.cdt.debug.core.model.IRegisterDescriptor#getName()
- */
- public String getName() {
- return fName;
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.cdt.debug.core.model.IRegisterDescriptor#getGroupName()
- */
- public String getGroupName() {
- return fGroupName;
- }
-
- public ICDIRegisterDescriptor getCDIDescriptor() {
- return fCDIDescriptor;
- }
-
- public void setCDIDescriptor( ICDIRegisterDescriptor descriptor ) {
- fCDIDescriptor = descriptor;
- }
-}
diff --git a/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/model/CRegisterGroup.java b/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/model/CRegisterGroup.java
deleted file mode 100644
index a8a1cbc97ac..00000000000
--- a/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/model/CRegisterGroup.java
+++ /dev/null
@@ -1,268 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004, 2005 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.internal.core.model;
-
-import java.util.ArrayList;
-import org.eclipse.cdt.debug.core.CDebugCorePlugin;
-import org.eclipse.cdt.debug.core.model.IEnableDisableTarget;
-import org.eclipse.cdt.debug.core.model.IPersistableRegisterGroup;
-import org.eclipse.cdt.debug.core.model.IRegisterDescriptor;
-import org.eclipse.cdt.debug.internal.core.CRegisterManager;
-import org.eclipse.core.runtime.CoreException;
-import org.eclipse.core.runtime.IStatus;
-import org.eclipse.core.runtime.Status;
-import org.eclipse.debug.core.DebugEvent;
-import org.eclipse.debug.core.DebugException;
-import org.eclipse.debug.core.DebugPlugin;
-import org.eclipse.debug.core.model.IRegister;
-import org.w3c.dom.Document;
-import org.w3c.dom.Element;
-import org.w3c.dom.Node;
-
-/**
- * Represents a group of registers.
- */
-public class CRegisterGroup extends CDebugElement implements IPersistableRegisterGroup, IEnableDisableTarget {
-
- private static final String ELEMENT_REGISTER_GROUP = "registerGroup"; //$NON-NLS-1$
- private static final String ATTR_REGISTER_GROUP_NAME = "name"; //$NON-NLS-1$
- private static final String ATTR_REGISTER_GROUP_ENABLED = "enabled"; //$NON-NLS-1$
-
- private static final String ELEMENT_REGISTER = "register"; //$NON-NLS-1$
- private static final String ATTR_REGISTER_NAME = "name"; //$NON-NLS-1$
- private static final String ATTR_REGISTER_ORIGINAL_GROUP_NAME = "originalGroupName"; //$NON-NLS-1$
-
- private String fName;
-
- private IRegisterDescriptor[] fRegisterDescriptors;
-
- private IRegister[] fRegisters;
-
- private boolean fIsEnabled = true;
-
- private boolean fDisposed = false;
-
- /**
- * Constructor for CRegisterGroup.
- */
- public CRegisterGroup( CDebugTarget target ) {
- super( target );
- }
-
- /**
- * Constructor for CRegisterGroup.
- */
- public CRegisterGroup( CDebugTarget target, String name, IRegisterDescriptor[] descriptors ) {
- super( target );
- fName = name;
- fRegisterDescriptors = descriptors;
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.debug.core.model.IRegisterGroup#getName()
- */
- public String getName() throws DebugException {
- return fName;
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.debug.core.model.IRegisterGroup#getRegisters()
- */
- public IRegister[] getRegisters() throws DebugException {
- if ( fDisposed )
- return new IRegister[0];
- if ( fRegisters == null ) {
- synchronized( this ) {
- if ( fRegisters == null ) {
- fRegisters = new IRegister[fRegisterDescriptors.length];
- for( int i = 0; i < fRegisters.length; ++i ) {
- fRegisters[i] = new CRegister( this, fRegisterDescriptors[i] );
- }
- }
- }
- }
- return fRegisters;
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.debug.core.model.IRegisterGroup#hasRegisters()
- */
- public boolean hasRegisters() throws DebugException {
- return ( fRegisterDescriptors.length > 0 );
- }
-
- public void dispose() {
- fDisposed = true;
- invalidate();
- }
-
- public void targetSuspended() {
- if ( fRegisters == null ) {
- return;
- }
- for ( int i = 0; i < fRegisters.length; ++i ) {
- if ( fRegisters[i] != null && ((CRegister)fRegisters[i]).hasErrors() ) {
- ((CRegister)fRegisters[i]).resetStatus();
- }
- }
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.core.runtime.IAdaptable#getAdapter(java.lang.Class)
- */
- public Object getAdapter( Class adapter ) {
- if ( IEnableDisableTarget.class.equals( adapter ) )
- return this;
- return super.getAdapter( adapter );
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.cdt.debug.core.model.IEnableDisableTarget#canEnableDisable()
- */
- public boolean canEnableDisable() {
- return true;
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.cdt.debug.core.model.IEnableDisableTarget#isEnabled()
- */
- public boolean isEnabled() {
- return fIsEnabled;
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.cdt.debug.core.model.IEnableDisableTarget#setEnabled(boolean)
- */
- public void setEnabled( boolean enabled ) throws DebugException {
- if ( fRegisters != null ) {
- synchronized( fRegisters ) {
- if ( fRegisters != null ) {
- for ( int i = 0; i < fRegisters.length; ++i ) {
- if ( fRegisters[i] instanceof CRegister ) {
- ((CRegister)fRegisters[i]).setEnabled( enabled );
- }
- }
- }
- }
- }
- fIsEnabled = enabled;
- fireChangeEvent( DebugEvent.CONTENT );
- }
-
- public String getMemento() throws CoreException {
- Document document = DebugPlugin.newDocument();
- Element element = document.createElement( ELEMENT_REGISTER_GROUP );
- element.setAttribute( ATTR_REGISTER_GROUP_NAME, getName() );
- element.setAttribute( ATTR_REGISTER_GROUP_ENABLED, Boolean.valueOf( isEnabled() ).toString() );
- for ( int i = 0; i < fRegisterDescriptors.length; ++i ) {
- Element child = document.createElement( ELEMENT_REGISTER );
- child.setAttribute( ATTR_REGISTER_NAME, fRegisterDescriptors[i].getName() );
- child.setAttribute( ATTR_REGISTER_ORIGINAL_GROUP_NAME, fRegisterDescriptors[i].getGroupName() );
- element.appendChild( child );
- }
- document.appendChild( element );
- return DebugPlugin.serializeDocument( document );
- }
-
- public void initializeFromMemento( String memento ) throws CoreException {
- Node node = DebugPlugin.parseDocument( memento );
- if ( node.getNodeType() != Node.ELEMENT_NODE ) {
- abort( CoreModelMessages.getString( "CRegisterGroup.0" ), null ); //$NON-NLS-1$
- }
- Element element = (Element)node;
- if ( !ELEMENT_REGISTER_GROUP.equals( element.getNodeName() ) ) {
- abort( CoreModelMessages.getString( "CRegisterGroup.1" ), null ); //$NON-NLS-1$
- }
- String groupName = element.getAttribute( ATTR_REGISTER_GROUP_NAME );
- if ( groupName == null || groupName.length() == 0 ) {
- abort( CoreModelMessages.getString( "CRegisterGroup.2" ), null ); //$NON-NLS-1$
- }
- String e = element.getAttribute( ATTR_REGISTER_GROUP_ENABLED );
- boolean enabled = Boolean.valueOf( e ).booleanValue();
- CRegisterManager rm = getRegisterManager();
- ArrayList list = new ArrayList();
- Node childNode = element.getFirstChild();
- while( childNode != null ) {
- if ( childNode.getNodeType() == Node.ELEMENT_NODE ) {
- Element child = (Element)childNode;
- if ( ELEMENT_REGISTER.equals( child.getNodeName() ) ) {
- String name = child.getAttribute( ATTR_REGISTER_NAME );
- String originalGroupName = child.getAttribute( ATTR_REGISTER_ORIGINAL_GROUP_NAME );
- if ( name == null || name.length() == 0 || originalGroupName == null || originalGroupName.length() == 0 ) {
- abort( CoreModelMessages.getString( "CRegisterGroup.3" ), null ); //$NON-NLS-1$
- }
- else {
- IRegisterDescriptor d = rm.findDescriptor( originalGroupName, name );
- if ( d != null )
- list.add( d );
- else
- CDebugCorePlugin.log( CoreModelMessages.getString( "CRegisterGroup.4" ) ); //$NON-NLS-1$
- }
- }
- }
- childNode = childNode.getNextSibling();
- }
- setName( groupName );
- fRegisterDescriptors = (IRegisterDescriptor[])list.toArray( new IRegisterDescriptor[list.size()] );
- setEnabled( enabled );
- }
-
- private void abort( String message, Throwable exception ) throws CoreException {
- IStatus status = new Status( IStatus.ERROR, CDebugCorePlugin.getUniqueIdentifier(), CDebugCorePlugin.INTERNAL_ERROR, message, exception );
- throw new CoreException( status );
- }
-
- private void setName( String name ) {
- fName = name;
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.cdt.debug.core.model.IPersistableRegisterGroup#setRegisterDescriptors(org.eclipse.cdt.debug.core.model.IRegisterDescriptor[])
- */
- public void setRegisterDescriptors( IRegisterDescriptor[] registerDescriptors ) {
- invalidate();
- fRegisterDescriptors = registerDescriptors;
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.cdt.debug.core.model.IPersistableRegisterGroup#getRegisterDescriptors()
- */
- public IRegisterDescriptor[] getRegisterDescriptors() {
- return fRegisterDescriptors;
- }
-
- private CRegisterManager getRegisterManager() {
- return (CRegisterManager)getDebugTarget().getAdapter( CRegisterManager.class );
- }
-
- private void invalidate() {
- if ( fRegisters == null ) {
- return;
- }
- for ( int i = 0; i < fRegisters.length; ++i ) {
- if ( fRegisters[i] != null ) {
- ((CRegister)fRegisters[i]).dispose();
- }
- }
- fRegisters = null;
- }
-
- public void resetRegisterValues() {
- if ( fRegisters == null ) {
- return;
- }
- for ( int i = 0; i < fRegisters.length; ++i ) {
- if ( fRegisters[i] != null ) {
- ((CRegister)fRegisters[i]).invalidateValue();
- }
- }
- }
-}
diff --git a/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/model/CSignal.java b/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/model/CSignal.java
deleted file mode 100644
index 3285db587e4..00000000000
--- a/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/model/CSignal.java
+++ /dev/null
@@ -1,139 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.internal.core.model;
-
-import org.eclipse.cdt.debug.core.cdi.CDIException;
-import org.eclipse.cdt.debug.core.cdi.event.ICDIEvent;
-import org.eclipse.cdt.debug.core.cdi.event.ICDIEventListener;
-import org.eclipse.cdt.debug.core.cdi.model.ICDISignal;
-import org.eclipse.cdt.debug.core.model.ICSignal;
-import org.eclipse.debug.core.DebugException;
-
-/**
- * Enter type comment.
- *
- * @since: Jan 31, 2003
- */
-public class CSignal extends CDebugElement implements ICSignal, ICDIEventListener
-{
- private ICDISignal fCDISignal;
-
- /**
- * Constructor for CSignal.
- * @param target
- */
- public CSignal( CDebugTarget target, ICDISignal cdiSignal )
- {
- super( target );
- fCDISignal = cdiSignal;
- getCDISession().getEventManager().addEventListener( this );
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.cdt.debug.core.model.ICSignal#getDescription()
- */
- public String getDescription() throws DebugException
- {
- return getCDISignal().getDescription();
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.cdt.debug.core.model.ICSignal#getName()
- */
- public String getName() throws DebugException
- {
- return getCDISignal().getName();
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.cdt.debug.core.model.ICSignal#isPassEnabled()
- */
- public boolean isPassEnabled() throws DebugException
- {
- return !getCDISignal().isIgnore();
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.cdt.debug.core.model.ICSignal#isStopEnabled()
- */
- public boolean isStopEnabled() throws DebugException
- {
- return getCDISignal().isStopSet();
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.cdt.debug.core.model.ICSignal#setPassEnabled(boolean)
- */
- public void setPassEnabled( boolean enable ) throws DebugException
- {
- handle( enable, isStopEnabled() );
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.cdt.debug.core.model.ICSignal#setStopEnabled(boolean)
- */
- public void setStopEnabled( boolean enable ) throws DebugException
- {
- handle( isPassEnabled(), enable );
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.cdt.debug.core.cdi.event.ICDIEventListener#handleDebugEvents(ICDIEvent)
- */
- public void handleDebugEvents( ICDIEvent[] events )
- {
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.cdt.debug.core.model.ICSignal#dispose()
- */
- public void dispose()
- {
- getCDISession().getEventManager().removeEventListener( this );
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.cdt.debug.core.model.ICSignal#signal()
- */
- public void signal() throws DebugException
- {
- try
- {
- getCDITarget().resume( getCDISignal() );
- }
- catch( CDIException e )
- {
- targetRequestFailed( e.getMessage(), null );
- }
- }
-
- protected ICDISignal getCDISignal()
- {
- return fCDISignal;
- }
-
- private void handle( boolean pass, boolean stop ) throws DebugException
- {
- try
- {
- getCDISignal().handle( !pass, stop );
- }
- catch( CDIException e )
- {
- targetRequestFailed( e.getMessage(), null );
- }
- }
-
- public boolean canModify() {
- // TODO add canModify method to ICDISignal
- return true;
- }
-}
diff --git a/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/model/CStackFrame.java b/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/model/CStackFrame.java
deleted file mode 100644
index cd89f71de52..00000000000
--- a/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/model/CStackFrame.java
+++ /dev/null
@@ -1,916 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004, 2005 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.internal.core.model;
-
-import java.math.BigInteger;
-import java.text.MessageFormat;
-import java.text.NumberFormat;
-import java.util.ArrayList;
-import java.util.Arrays;
-import java.util.Collections;
-import java.util.Iterator;
-import java.util.List;
-import org.eclipse.cdt.core.IAddress;
-import org.eclipse.cdt.core.IAddressFactory;
-import org.eclipse.cdt.debug.core.cdi.CDIException;
-import org.eclipse.cdt.debug.core.cdi.ICDILocation;
-import org.eclipse.cdt.debug.core.cdi.ICDILocator;
-import org.eclipse.cdt.debug.core.cdi.event.ICDIEvent;
-import org.eclipse.cdt.debug.core.cdi.event.ICDIEventListener;
-import org.eclipse.cdt.debug.core.cdi.model.ICDIExpression;
-import org.eclipse.cdt.debug.core.cdi.model.ICDIStackFrame;
-import org.eclipse.cdt.debug.core.cdi.model.ICDIThread;
-import org.eclipse.cdt.debug.core.cdi.model.ICDIVariableDescriptor;
-import org.eclipse.cdt.debug.core.model.ICGlobalVariable;
-import org.eclipse.cdt.debug.core.model.ICStackFrame;
-import org.eclipse.cdt.debug.core.model.IJumpToAddress;
-import org.eclipse.cdt.debug.core.model.IJumpToLine;
-import org.eclipse.cdt.debug.core.model.IRestart;
-import org.eclipse.cdt.debug.core.model.IResumeWithoutSignal;
-import org.eclipse.cdt.debug.core.model.IRunToAddress;
-import org.eclipse.cdt.debug.core.model.IRunToLine;
-import org.eclipse.cdt.debug.core.sourcelookup.ICSourceLocator;
-import org.eclipse.cdt.debug.internal.core.CGlobalVariableManager;
-import org.eclipse.core.resources.IFile;
-import org.eclipse.core.runtime.IAdaptable;
-import org.eclipse.debug.core.DebugException;
-import org.eclipse.debug.core.model.IMemoryBlockRetrieval;
-import org.eclipse.debug.core.model.IRegisterGroup;
-import org.eclipse.debug.core.model.ISourceLocator;
-import org.eclipse.debug.core.model.IStackFrame;
-import org.eclipse.debug.core.model.IThread;
-import org.eclipse.debug.core.model.IValue;
-import org.eclipse.debug.core.model.IVariable;
-
-/**
- * Proxy to a stack frame on the target.
- */
-public class CStackFrame extends CDebugElement implements ICStackFrame, IRestart, IResumeWithoutSignal, ICDIEventListener {
-
- /**
- * Underlying CDI stack frame.
- */
- private ICDIStackFrame fCDIStackFrame;
-
- /**
- * The last (previous) CDI stack frame.
- */
- private ICDIStackFrame fLastCDIStackFrame;
-
- /**
- * Containing thread.
- */
- private CThread fThread;
-
- /**
- * List of visible variable (includes arguments).
- */
- private List fVariables;
-
- /**
- * Whether the variables need refreshing
- */
- private boolean fRefreshVariables = true;
-
- /**
- * List of watch expressions evaluating in the context of this frame.
- */
- private List fExpressions;
-
- /**
- * Need this flag to prevent evaluations on disposed frames.
- */
- private boolean fIsDisposed = false;
-
- /**
- * Constructor for CStackFrame.
- */
- public CStackFrame( CThread thread, ICDIStackFrame cdiFrame ) {
- super( (CDebugTarget)thread.getDebugTarget() );
- setCDIStackFrame( cdiFrame );
- setThread( thread );
- getCDISession().getEventManager().addEventListener( this );
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.debug.core.model.IStackFrame#getThread()
- */
- public IThread getThread() {
- return fThread;
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.debug.core.model.IStackFrame#getVariables()
- */
- public IVariable[] getVariables() throws DebugException {
- if ( isDisposed() ) {
- return new IVariable[0];
- }
- ICGlobalVariable[] globals = getGlobals();
- List vars = getVariables0();
- List all = new ArrayList( globals.length + vars.size() );
- all.addAll( Arrays.asList( globals ) );
- all.addAll( vars );
- return (IVariable[])all.toArray( new IVariable[all.size()] );
- }
-
- protected synchronized List getVariables0() throws DebugException {
- if ( isDisposed() ) {
- return Collections.EMPTY_LIST;
- }
- CThread thread = (CThread)getThread();
- if ( thread.isSuspended() ) {
- if ( fVariables == null ) {
- List vars = getAllCDIVariableObjects();
- fVariables = new ArrayList( vars.size() );
- Iterator it = vars.iterator();
- while( it.hasNext() ) {
- fVariables.add( CVariableFactory.createLocalVariable( this, (ICDIVariableDescriptor)it.next() ) );
- }
- }
- else if ( refreshVariables() ) {
- updateVariables();
- }
- setRefreshVariables( false );
- }
- return ( fVariables != null ) ? fVariables : Collections.EMPTY_LIST;
- }
-
- /**
- * Incrementally updates this stack frame's variables.
- */
- protected void updateVariables() throws DebugException {
- List locals = getAllCDIVariableObjects();
- int index = 0;
- while( index < fVariables.size() ) {
- ICDIVariableDescriptor varObject = findVariable( locals, (CVariable)fVariables.get( index ) );
- if ( varObject != null ) {
- locals.remove( varObject );
- index++;
- }
- else {
- // remove variable
- fVariables.remove( index );
- }
- }
- // add any new locals
- Iterator newOnes = locals.iterator();
- while( newOnes.hasNext() ) {
- fVariables.add( CVariableFactory.createLocalVariable( this, (ICDIVariableDescriptor)newOnes.next() ) );
- }
- }
-
- /**
- * Sets the containing thread.
- *
- * @param thread the containing thread
- */
- protected void setThread( CThread thread ) {
- fThread = thread;
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.debug.core.model.IStackFrame#hasVariables()
- */
- public boolean hasVariables() throws DebugException {
- return ( isDisposed() ) ? false : (getVariables0().size() > 0 || getGlobals().length > 0);
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.debug.core.model.IStackFrame#getLineNumber()
- */
- public int getLineNumber() throws DebugException {
- if ( isSuspended() ) {
- ISourceLocator locator = ((CDebugTarget)getDebugTarget()).getSourceLocator();
- if ( locator != null && locator instanceof IAdaptable && ((IAdaptable)locator).getAdapter( ICSourceLocator.class ) != null )
- return ((ICSourceLocator)((IAdaptable)locator).getAdapter( ICSourceLocator.class )).getLineNumber( this );
- if ( getCDIStackFrame() != null && getCDIStackFrame().getLocator() != null )
- return getCDIStackFrame().getLocator().getLineNumber();
- }
- return -1;
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.debug.core.model.IStackFrame#getCharStart()
- */
- public int getCharStart() throws DebugException {
- return -1;
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.debug.core.model.IStackFrame#getCharEnd()
- */
- public int getCharEnd() throws DebugException {
- return -1;
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.debug.core.model.IStackFrame#getName()
- */
- public String getName() throws DebugException {
- ICDILocator locator = getCDIStackFrame().getLocator();
- String func = ""; //$NON-NLS-1$
- String file = ""; //$NON-NLS-1$
- String line = ""; //$NON-NLS-1$
- if ( locator.getFunction() != null && locator.getFunction().trim().length() > 0 )
- func += locator.getFunction() + "() "; //$NON-NLS-1$
- if ( locator.getFile() != null && locator.getFile().trim().length() > 0 ) {
- file = locator.getFile();
- if ( locator.getLineNumber() != 0 ) {
- line = NumberFormat.getInstance().format( new Integer( locator.getLineNumber() ) );
- }
- }
- else {
- return func;
- }
- return MessageFormat.format( CoreModelMessages.getString( "CStackFrame.0" ), new String[]{ func, file, line } ); //$NON-NLS-1$
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.debug.core.model.IStackFrame#getRegisterGroups()
- */
- public IRegisterGroup[] getRegisterGroups() throws DebugException {
- return ( isDisposed() ) ? new IRegisterGroup[0] : ((CDebugTarget)getDebugTarget()).getRegisterGroups( this );
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.debug.core.model.IStackFrame#hasRegisterGroups()
- */
- public boolean hasRegisterGroups() throws DebugException {
- return ( isDisposed() ) ? false : ((CDebugTarget)getDebugTarget()).getRegisterGroups( this ).length > 0;
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.cdt.debug.core.cdi.event.ICDIEventListener#handleDebugEvents(org.eclipse.cdt.debug.core.cdi.event.ICDIEvent[])
- */
- public void handleDebugEvents( ICDIEvent[] events ) {
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.debug.core.model.IStep#canStepInto()
- */
- public boolean canStepInto() {
- try {
- return exists() /*&& isTopStackFrame()*/ && getThread().canStepInto();
- }
- catch( DebugException e ) {
- logError( e );
- return false;
- }
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.debug.core.model.IStep#canStepOver()
- */
- public boolean canStepOver() {
- try {
- return exists() && getThread().canStepOver();
- }
- catch( DebugException e ) {
- logError( e );
- }
- return false;
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.debug.core.model.IStep#canStepReturn()
- */
- public boolean canStepReturn() {
- try {
- if ( !exists() ) {
- return false;
- }
- List frames = ((CThread)getThread()).computeStackFrames();
- if ( frames != null && !frames.isEmpty() ) {
- boolean bottomFrame = this.equals( frames.get( frames.size() - 1 ) );
- return !bottomFrame && getThread().canStepReturn();
- }
- }
- catch( DebugException e ) {
- logError( e );
- }
- return false;
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.debug.core.model.IStep#isStepping()
- */
- public boolean isStepping() {
- return getThread().isStepping();
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.debug.core.model.IStep#stepInto()
- */
- public void stepInto() throws DebugException {
- if ( canStepInto() ) {
- getThread().stepInto();
- }
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.debug.core.model.IStep#stepOver()
- */
- public void stepOver() throws DebugException {
- if ( canStepOver() ) {
- getThread().stepOver();
- }
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.debug.core.model.IStep#stepReturn()
- */
- public void stepReturn() throws DebugException {
- if ( canStepReturn() ) {
- getThread().stepReturn();
- }
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.debug.core.model.ISuspendResume#canResume()
- */
- public boolean canResume() {
- return getThread().canResume();
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.debug.core.model.ISuspendResume#canSuspend()
- */
- public boolean canSuspend() {
- return getThread().canSuspend();
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.debug.core.model.ISuspendResume#isSuspended()
- */
- public boolean isSuspended() {
- return getThread().isSuspended();
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.debug.core.model.ISuspendResume#resume()
- */
- public void resume() throws DebugException {
- getThread().resume();
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.debug.core.model.ISuspendResume#suspend()
- */
- public void suspend() throws DebugException {
- getThread().suspend();
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.debug.core.model.ITerminate#canTerminate()
- */
- public boolean canTerminate() {
- boolean exists = false;
- try {
- exists = exists();
- }
- catch( DebugException e ) {
- logError( e );
- }
- return exists && getThread().canTerminate() || getDebugTarget().canTerminate();
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.debug.core.model.ITerminate#isTerminated()
- */
- public boolean isTerminated() {
- return getThread().isTerminated();
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.debug.core.model.ITerminate#terminate()
- */
- public void terminate() throws DebugException {
- if ( getThread().canTerminate() ) {
- getThread().terminate();
- }
- else {
- getDebugTarget().terminate();
- }
- }
-
- /**
- * Returns the underlying CDI stack frame that this model object is a proxy to.
- *
- * @return the underlying CDI stack frame
- */
- protected ICDIStackFrame getCDIStackFrame() {
- return fCDIStackFrame;
- }
-
- /**
- * Sets the underlying CDI stack frame. Called by a thread when incrementally updating after a step has completed.
- *
- * @param frame the underlying stack frame
- */
- protected void setCDIStackFrame( ICDIStackFrame frame ) {
- if ( frame != null ) {
- fLastCDIStackFrame = frame;
- }
- else {
- fLastCDIStackFrame = fCDIStackFrame;
- }
- fCDIStackFrame = frame;
- setRefreshVariables( true );
- }
-
- /**
- * The underlying stack frame that existed before the current underlying stack frame. Used only so that equality can be checked on stack frame after the new
- * one has been set.
- */
- protected ICDIStackFrame getLastCDIStackFrame() {
- return fLastCDIStackFrame;
- }
-
- /**
- * Helper method for computeStackFrames(). For the purposes of detecting if an underlying stack frame needs to be disposed, stack frames are equal if the
- * frames are equal and the locations are equal.
- */
- protected static boolean equalFrame( ICDIStackFrame frameOne, ICDIStackFrame frameTwo ) {
- if ( frameOne == null || frameTwo == null )
- return false;
- ICDILocator loc1 = frameOne.getLocator();
- ICDILocator loc2 = frameTwo.getLocator();
- if ( loc1 == null || loc2 == null )
- return false;
- if ( loc1.getFile() != null && loc1.getFile().length() > 0 && loc2.getFile() != null && loc2.getFile().length() > 0 && loc1.getFile().equals( loc2.getFile() ) ) {
- if ( loc1.getFunction() != null && loc1.getFunction().length() > 0 && loc2.getFunction() != null && loc2.getFunction().length() > 0 && loc1.getFunction().equals( loc2.getFunction() ) )
- return true;
- }
- if ( (loc1.getFile() == null || loc1.getFile().length() < 1) && (loc2.getFile() == null || loc2.getFile().length() < 1) ) {
- if ( loc1.getFunction() != null && loc1.getFunction().length() > 0 && loc2.getFunction() != null && loc2.getFunction().length() > 0 && loc1.getFunction().equals( loc2.getFunction() ) )
- return true;
- }
- if ( (loc1.getFile() == null || loc1.getFile().length() < 1) && (loc2.getFile() == null || loc2.getFile().length() < 1) && (loc1.getFunction() == null || loc1.getFunction().length() < 1) && (loc2.getFunction() == null || loc2.getFunction().length() < 1) ) {
- if ( loc1.getAddress() == loc2.getAddress() )
- return true;
- }
- return false;
- }
-
- protected boolean exists() throws DebugException {
- return ((CThread)getThread()).computeStackFrames().indexOf( this ) != -1;
- }
-
- /**
- * @see IAdaptable#getAdapter(Class)
- */
- public Object getAdapter( Class adapter ) {
- if ( adapter == IRunToLine.class ) {
- return this;
- }
- if ( adapter == IRunToAddress.class ) {
- return this;
- }
- if ( adapter == IJumpToLine.class ) {
- return this;
- }
- if ( adapter == IJumpToAddress.class ) {
- return this;
- }
- if ( adapter == CStackFrame.class ) {
- return this;
- }
- if ( adapter == ICStackFrame.class ) {
- return this;
- }
- if ( adapter == IStackFrame.class ) {
- return this;
- }
- if ( adapter == ICDIStackFrame.class ) {
- return getCDIStackFrame();
- }
- if ( adapter == IMemoryBlockRetrieval.class ) {
- return getDebugTarget().getAdapter( adapter );
- }
- return super.getAdapter( adapter );
- }
-
- protected void dispose() {
- setDisposed( true );
- getCDISession().getEventManager().removeEventListener( this );
- disposeAllVariables();
- disposeExpressions();
- }
-
- /**
- * Retrieves local variables in this stack frame. Returns an empty list if there are no local variables.
- *
- */
- protected List getCDILocalVariableObjects() throws DebugException {
- List list = new ArrayList();
- try {
- list.addAll( Arrays.asList( getCDIStackFrame().getLocalVariableDescriptors( ) ) );
- }
- catch( CDIException e ) {
- targetRequestFailed( e.getMessage(), null );
- }
- return list;
- }
-
- /**
- * Retrieves arguments in this stack frame. Returns an empty list if there are no arguments.
- *
- */
- protected List getCDIArgumentObjects() throws DebugException {
- List list = new ArrayList();
- try {
- list.addAll( Arrays.asList( getCDIStackFrame().getArgumentDescriptors() ) );
- }
- catch( CDIException e ) {
- targetRequestFailed( e.getMessage(), null );
- }
- return list;
- }
-
- protected List getAllCDIVariableObjects() throws DebugException {
- List list = new ArrayList();
- list.addAll( getCDIArgumentObjects() );
- list.addAll( getCDILocalVariableObjects() );
- return list;
- }
-
- protected boolean isTopStackFrame() throws DebugException {
- IStackFrame tos = getThread().getTopStackFrame();
- return tos != null && tos.equals( this );
- }
-
- protected void disposeAllVariables() {
- if ( fVariables == null )
- return;
- Iterator it = fVariables.iterator();
- while( it.hasNext() ) {
- ((CVariable)it.next()).dispose();
- }
- fVariables.clear();
- fVariables = null;
- }
-
- protected void disposeExpressions() {
- if ( fExpressions != null ) {
- Iterator it = fExpressions.iterator();
- while( it.hasNext() ) {
- ((CExpression)it.next()).dispose();
- }
- fExpressions.clear();
- }
- fExpressions = null;
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.cdt.debug.core.model.ICStackFrame#getAddress()
- */
- public IAddress getAddress() {
- IAddressFactory factory = ((CDebugTarget)getDebugTarget()).getAddressFactory();
- return factory.createAddress( getCDIStackFrame().getLocator().getAddress() );
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.cdt.debug.core.model.ICStackFrame#getFile()
- */
- public String getFile() {
- return getCDIStackFrame().getLocator().getFile();
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.cdt.debug.core.model.ICStackFrame#getFunction()
- */
- public String getFunction() {
- return getCDIStackFrame().getLocator().getFunction();
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.cdt.debug.core.model.ICStackFrame#getLevel()
- */
- public int getLevel() {
- return getCDIStackFrame().getLevel();
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.cdt.debug.core.model.ICStackFrame#getFrameLineNumber()
- */
- public int getFrameLineNumber() {
- return getCDIStackFrame().getLocator().getLineNumber();
- }
-
- protected synchronized void preserve() {
- preserveVariables();
- preserveExpressions();
- }
-
- private void preserveVariables() {
- if ( fVariables == null )
- return;
- Iterator it = fVariables.iterator();
- while( it.hasNext() ) {
- AbstractCVariable av = (AbstractCVariable)it.next();
- av.preserve();
- }
- }
-
- private void preserveExpressions() {
- if ( fExpressions == null )
- return;
- Iterator it = fExpressions.iterator();
- while( it.hasNext() ) {
- CExpression exp = (CExpression)it.next();
- exp.preserve();
- }
- }
-
- protected ICDIVariableDescriptor findVariable( List list, CVariable var ) {
- Iterator it = list.iterator();
- while( it.hasNext() ) {
- ICDIVariableDescriptor newVarObject = (ICDIVariableDescriptor)it.next();
- if ( var.sameVariable( newVarObject ) )
- return newVarObject;
- }
- return null;
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.cdt.debug.core.model.IRestart#canRestart()
- */
- public boolean canRestart() {
- return getDebugTarget() instanceof IRestart && ((IRestart)getDebugTarget()).canRestart();
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.cdt.debug.core.model.IRestart#restart()
- */
- public void restart() throws DebugException {
- if ( canRestart() ) {
- ((IRestart)getDebugTarget()).restart();
- }
- }
-
- private void setRefreshVariables( boolean refresh ) {
- fRefreshVariables = refresh;
- }
-
- private boolean refreshVariables() {
- return fRefreshVariables;
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.cdt.debug.core.model.IResumeWithoutSignal#canResumeWithoutSignal()
- */
- public boolean canResumeWithoutSignal() {
- return (getDebugTarget() instanceof IResumeWithoutSignal && ((IResumeWithoutSignal)getDebugTarget()).canResumeWithoutSignal());
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.cdt.debug.core.model.IResumeWithoutSignal#resumeWithoutSignal()
- */
- public void resumeWithoutSignal() throws DebugException {
- if ( canResumeWithoutSignal() ) {
- ((IResumeWithoutSignal)getDebugTarget()).resumeWithoutSignal();
- }
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.cdt.debug.core.model.ICStackFrame#evaluateExpression(java.lang.String)
- */
- public IValue evaluateExpression( String expressionText ) throws DebugException {
- if ( !isDisposed() ) {
- CExpression expression = getExpression( expressionText );
- if ( expression != null ) {
- return expression.getValue( this );
- }
- }
- return null;
- }
-
- private ICGlobalVariable[] getGlobals() {
- CGlobalVariableManager gvm = ((CDebugTarget)getDebugTarget()).getGlobalVariableManager();
- if ( gvm != null ) {
- return gvm.getGlobals();
- }
- return new ICGlobalVariable[0];
- }
-
- /* (non-Javadoc)
- * @see java.lang.Object#toString()
- */
- public String toString() {
- try {
- return getName();
- }
- catch( DebugException e ) {
- return e.getLocalizedMessage();
- }
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.cdt.debug.core.model.ICStackFrame#evaluateExpressionToString(java.lang.String)
- */
- public String evaluateExpressionToString( String expression ) throws DebugException {
- try {
- return getCDITarget().evaluateExpressionToString( getCDIStackFrame(), expression );
- }
- catch( CDIException e ) {
- targetRequestFailed( e.getMessage(), null );
- }
- return null;
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.cdt.debug.core.model.ICStackFrame#canEvaluate()
- */
- public boolean canEvaluate() {
- CDebugTarget target = ((CDebugTarget)getDebugTarget());
- return target.supportsExpressionEvaluation() && isSuspended();
- }
-
- protected void doStepReturn() throws DebugException {
- try {
- getCDIStackFrame().stepReturn();
- }
- catch( CDIException e ) {
- targetRequestFailed( e.getMessage(), null );
- }
- }
-
- private synchronized CExpression getExpression( String expressionText ) throws DebugException {
- if ( isDisposed() ) {
- return null;
- }
- if ( fExpressions == null ) {
- fExpressions = new ArrayList( 5 );
- }
- CExpression expression = null;
- Iterator it = fExpressions.iterator();
- while( it.hasNext() ) {
- expression = (CExpression)it.next();
- if ( expression.getExpressionText().compareTo( expressionText ) == 0 ) {
- return expression;
- }
- }
- try {
- ICDIExpression cdiExpression = ((CDebugTarget)getDebugTarget()).getCDITarget().createExpression( expressionText );
- expression = new CExpression( this, cdiExpression, null );
- fExpressions.add( expression );
- }
- catch( CDIException e ) {
- targetRequestFailed( e.getMessage(), null );
- }
- return expression;
- }
-
- protected boolean isDisposed() {
- return fIsDisposed;
- }
-
- private synchronized void setDisposed( boolean isDisposed ) {
- fIsDisposed = isDisposed;
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.cdt.debug.core.model.IRunToLine#canRunToLine(org.eclipse.core.resources.IFile, int)
- */
- public boolean canRunToLine( IFile file, int lineNumber ) {
- return getThread().canResume();
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.cdt.debug.core.model.IRunToLine#runToLine(org.eclipse.core.resources.IFile, int, boolean)
- */
- public void runToLine( IFile file, int lineNumber, boolean skipBreakpoints ) throws DebugException {
- if ( !canRunToLine( file, lineNumber ) )
- return;
- runToLine( file.getLocation().lastSegment(), lineNumber, skipBreakpoints );
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.cdt.debug.core.model.IRunToLine#canRunToLine(java.lang.String, int)
- */
- public boolean canRunToLine( String fileName, int lineNumber ) {
- return getThread().canResume();
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.cdt.debug.core.model.IRunToLine#runToLine(java.lang.String, int, boolean)
- */
- public void runToLine( String fileName, int lineNumber, boolean skipBreakpoints ) throws DebugException {
- if ( !canRunToLine( fileName, lineNumber ) )
- return;
- if ( skipBreakpoints ) {
- ((CDebugTarget)getDebugTarget()).skipBreakpoints( true );
- }
- ICDILocation location = getCDITarget().createLineLocation( fileName, lineNumber );
- try {
- getCDIThread().stepUntil( location );
- }
- catch( CDIException e ) {
- if ( skipBreakpoints ) {
- ((CDebugTarget)getDebugTarget()).skipBreakpoints( false );
- }
- targetRequestFailed( e.getMessage(), e );
- }
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.cdt.debug.core.model.IRunToAddress#canRunToAddress(org.eclipse.cdt.core.IAddress)
- */
- public boolean canRunToAddress( IAddress address ) {
- return getThread().canResume();
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.cdt.debug.core.model.IRunToAddress#runToAddress(org.eclipse.cdt.core.IAddress, boolean)
- */
- public void runToAddress( IAddress address, boolean skipBreakpoints ) throws DebugException {
- if ( !canRunToAddress( address ) )
- return;
- if ( skipBreakpoints ) {
- ((CDebugTarget)getDebugTarget()).skipBreakpoints( true );
- }
- ICDILocation location = getCDITarget().createAddressLocation( new BigInteger( address.toString() ) );
- try {
- getCDIThread().stepUntil( location );
- }
- catch( CDIException e ) {
- if ( skipBreakpoints ) {
- ((CDebugTarget)getDebugTarget()).skipBreakpoints( false );
- }
- targetRequestFailed( e.getMessage(), e );
- }
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.cdt.debug.core.model.IJumpToLine#canJumpToLine(org.eclipse.core.resources.IFile, int)
- */
- public boolean canJumpToLine( IFile file, int lineNumber ) {
- return getThread().canResume();
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.cdt.debug.core.model.IJumpToLine#jumpToLine(org.eclipse.core.resources.IFile, int)
- */
- public void jumpToLine( IFile file, int lineNumber ) throws DebugException {
- if ( !canJumpToLine( file, lineNumber ) )
- return;
- jumpToLine( file.getLocation().lastSegment(), lineNumber );
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.cdt.debug.core.model.IJumpToLine#canJumpToLine(java.lang.String, int)
- */
- public boolean canJumpToLine( String fileName, int lineNumber ) {
- return getThread().canResume();
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.cdt.debug.core.model.IJumpToLine#jumpToLine(java.lang.String, int)
- */
- public void jumpToLine( String fileName, int lineNumber ) throws DebugException {
- if ( !canJumpToLine( fileName, lineNumber ) )
- return;
- ICDILocation location = getCDITarget().createLineLocation( fileName, lineNumber );
- try {
- getCDIThread().resume( location );
- }
- catch( CDIException e ) {
- targetRequestFailed( e.getMessage(), e );
- }
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.cdt.debug.core.model.IJumpToAddress#canJumpToAddress(org.eclipse.cdt.core.IAddress)
- */
- public boolean canJumpToAddress( IAddress address ) {
- return getThread().canResume();
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.cdt.debug.core.model.IJumpToAddress#jumpToAddress(org.eclipse.cdt.core.IAddress)
- */
- public void jumpToAddress( IAddress address ) throws DebugException {
- if ( !canJumpToAddress( address ) )
- return;
- ICDILocation location = getCDITarget().createAddressLocation( new BigInteger( address.toString() ) );
- try {
- getCDIThread().resume( location );
- }
- catch( CDIException e ) {
- targetRequestFailed( e.getMessage(), e );
- }
- }
-
- private ICDIThread getCDIThread() {
- return ((CThread)getThread()).getCDIThread();
- }
-}
diff --git a/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/model/CThread.java b/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/model/CThread.java
deleted file mode 100644
index f95a5bc4216..00000000000
--- a/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/model/CThread.java
+++ /dev/null
@@ -1,951 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- * Stefan Bylund (Enea, steby@enea.se) - patch for bug 155464
- *******************************************************************************/
-package org.eclipse.cdt.debug.internal.core.model;
-
-import java.text.MessageFormat;
-import java.util.ArrayList;
-import java.util.Collections;
-import java.util.Iterator;
-import java.util.List;
-import org.eclipse.cdt.debug.core.cdi.CDIException;
-import org.eclipse.cdt.debug.core.cdi.ICDIBreakpointHit;
-import org.eclipse.cdt.debug.core.cdi.ICDIEndSteppingRange;
-import org.eclipse.cdt.debug.core.cdi.ICDISessionObject;
-import org.eclipse.cdt.debug.core.cdi.ICDISignalReceived;
-import org.eclipse.cdt.debug.core.cdi.ICDIWatchpointTrigger;
-import org.eclipse.cdt.debug.core.cdi.event.ICDIChangedEvent;
-import org.eclipse.cdt.debug.core.cdi.event.ICDIDestroyedEvent;
-import org.eclipse.cdt.debug.core.cdi.event.ICDIDisconnectedEvent;
-import org.eclipse.cdt.debug.core.cdi.event.ICDIEvent;
-import org.eclipse.cdt.debug.core.cdi.event.ICDIEventListener;
-import org.eclipse.cdt.debug.core.cdi.event.ICDIResumedEvent;
-import org.eclipse.cdt.debug.core.cdi.event.ICDISuspendedEvent;
-import org.eclipse.cdt.debug.core.cdi.model.ICDIBreakpoint;
-import org.eclipse.cdt.debug.core.cdi.model.ICDIObject;
-import org.eclipse.cdt.debug.core.cdi.model.ICDIStackFrame;
-import org.eclipse.cdt.debug.core.cdi.model.ICDITargetConfiguration;
-import org.eclipse.cdt.debug.core.cdi.model.ICDITargetConfiguration2;
-import org.eclipse.cdt.debug.core.cdi.model.ICDIThread;
-import org.eclipse.cdt.debug.core.model.CDebugElementState;
-import org.eclipse.cdt.debug.core.model.ICDebugElementStatus;
-import org.eclipse.cdt.debug.core.model.ICStackFrame;
-import org.eclipse.cdt.debug.core.model.ICThread;
-import org.eclipse.cdt.debug.core.model.IDummyStackFrame;
-import org.eclipse.cdt.debug.core.model.IJumpToAddress;
-import org.eclipse.cdt.debug.core.model.IJumpToLine;
-import org.eclipse.cdt.debug.core.model.IRestart;
-import org.eclipse.cdt.debug.core.model.IResumeWithoutSignal;
-import org.eclipse.cdt.debug.core.model.IRunToAddress;
-import org.eclipse.cdt.debug.core.model.IRunToLine;
-import org.eclipse.core.runtime.IAdaptable;
-import org.eclipse.debug.core.DebugEvent;
-import org.eclipse.debug.core.DebugException;
-import org.eclipse.debug.core.model.IBreakpoint;
-import org.eclipse.debug.core.model.IMemoryBlockRetrieval;
-import org.eclipse.debug.core.model.IStackFrame;
-
-/**
- * A thread in a C/C++ debug model.
- */
-public class CThread extends CDebugElement implements ICThread, IRestart, IResumeWithoutSignal, ICDIEventListener {
-
- private final static int MAX_STACK_DEPTH = 100;
-
- /**
- * Underlying CDI thread.
- */
- private ICDIThread fCDIThread;
-
- /**
- * Collection of stack frames
- */
- private ArrayList fStackFrames;
-
- /**
- * Whether children need to be refreshed. Set to <code>true</code> when stack frames are re-used on the next suspend.
- */
- private boolean fRefreshChildren = true;
-
- /**
- * The debug configuration of this session.
- */
- private ICDITargetConfiguration fConfig;
-
- /**
- * Whether this thread is current.
- */
- private boolean fIsCurrent = false;
-
- /**
- * The depth of the current stack.
- */
- private int fLastStackDepth = 0;
-
- /**
- * Whether this thread is disposed.
- */
- private boolean fDisposed = false;
-
- /**
- * Constructor for CThread.
- */
- public CThread( CDebugTarget target, ICDIThread cdiThread ) {
- super( target );
- setState( cdiThread.isSuspended() ? CDebugElementState.SUSPENDED : CDebugElementState.RESUMED );
- setCDIThread( cdiThread );
- fConfig = getCDITarget().getConfiguration();
- initialize();
- getCDISession().getEventManager().addEventListener( this );
- }
-
- protected void initialize() {
- fStackFrames = new ArrayList();
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.debug.core.model.IThread#getStackFrames()
- */
- public IStackFrame[] getStackFrames() throws DebugException {
- List list = Collections.EMPTY_LIST;
- try {
- list = computeStackFrames();
- }
- catch( DebugException e ) {
- setStatus( ICDebugElementStatus.ERROR, e.getStatus().getMessage() );
- throw e;
- }
- return (IStackFrame[])list.toArray( new IStackFrame[list.size()] );
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.debug.core.model.IThread#hasStackFrames()
- */
- public boolean hasStackFrames() throws DebugException {
- // Always return true to postpone the stack frames request
- return true;
- }
-
- /**
- * @see computeStackFrames()
- *
- * @param refreshChildren whether or not this method should request new stack frames from the target
- */
- protected synchronized List computeStackFrames( boolean refreshChildren ) throws DebugException {
- if ( isSuspended() ) {
- if ( isTerminated() ) {
- fStackFrames = new ArrayList();
- }
- else if ( refreshChildren ) {
- // Remove dummy frame
- if ( fStackFrames.size() > 0 ) {
- Object frame = fStackFrames.get( fStackFrames.size() - 1 );
- if ( frame instanceof IDummyStackFrame ) {
- fStackFrames.remove( frame );
- }
- }
- // Retrieve stack frames from the backend
- int depth = getStackDepth();
- if ( depth >= getMaxStackDepth() )
- depth = getMaxStackDepth() - 1;
- ICDIStackFrame[] frames = ( depth != 0 ) ? getCDIStackFrames( 0, depth - 1 ) : new ICDIStackFrame[0];
-
- if ( fStackFrames.isEmpty() ) {
- if ( frames.length > 0 ) {
- addStackFrames( frames, 0, frames.length, false );
- }
- }
- else {
- int diff = depth - getLastStackDepth();
- int offset = ( diff > 0 ) ? frames.length - diff : 0;
- int length = ( diff > 0 ) ? diff : -diff;
- if ( !compareStackFrames( frames, fStackFrames, offset, length ) ) {
- // replace all frames
- disposeStackFrames( 0, fStackFrames.size() );
- addStackFrames( frames, 0, frames.length, false );
- }
- if ( diff < 0 ) {
- // stepping out of the last frame
- disposeStackFrames( 0, getLastStackDepth() - depth );
- if ( frames.length > 0 ) {
- updateStackFrames( frames, 0, fStackFrames, fStackFrames.size() );
- if ( fStackFrames.size() < frames.length ) {
- addStackFrames( frames, fStackFrames.size(), frames.length - fStackFrames.size(), true );
- }
- }
- }
- else if ( diff > 0 ) {
- // stepping into a new frame
- disposeStackFrames( frames.length - depth + getLastStackDepth(), depth - getLastStackDepth() );
- addStackFrames( frames, 0, depth - getLastStackDepth(), false );
- updateStackFrames( frames, depth - getLastStackDepth(), fStackFrames, frames.length - depth + getLastStackDepth() );
- }
- else { // diff == 0
- if ( depth != 0 ) {
- // we are in the same frame
- updateStackFrames( frames, 0, fStackFrames, frames.length );
- }
- }
- }
- if ( depth > getMaxStackDepth() ) {
- fStackFrames.add( new CDummyStackFrame( this ) );
- }
- setLastStackDepth( depth );
- setRefreshChildren( false );
- }
- }
- return fStackFrames;
- }
-
- /**
- * Compares the lists of the old and new frames.
- *
- * @param newFrames the array of the new frames
- * @param oldFrames the list of the old frames
- * @param offset the offset in the new frames array
- * @param length the number of frames to compare
- *
- * @return <code>true</code> if all frames are same
- */
- private boolean compareStackFrames( ICDIStackFrame[] newFrames, List oldFrames, int offset, int length ) {
- int index = offset;
- Iterator it = oldFrames.iterator();
- while( it.hasNext() && index < newFrames.length ) {
- CStackFrame frame = (CStackFrame)it.next();
- if ( !frame.getCDIStackFrame().equals( newFrames[index++] ) )
- return false;
- }
- return true;
- }
-
- /**
- * Retrieves and returns all underlying stack frames
- *
- * @return list of <code>StackFrame</code>
- * @exception DebugException if this method fails. Reasons include:
- * <ul>
- * </ul>
- */
- protected ICDIStackFrame[] getCDIStackFrames() throws DebugException {
- return new ICDIStackFrame[0];
- }
-
- /**
- * Retrieves and returns underlying stack frames between <code>lowFrame<code/>
- * and <code>highFrame<code/>.
- *
- * @return list of <code>StackFrame</code>
- * @exception DebugException if this method fails. Reasons include:
- * <ul>
- * </ul>
- */
- protected ICDIStackFrame[] getCDIStackFrames( int lowFrame, int highFrame ) throws DebugException {
- try {
- return getCDIThread().getStackFrames( lowFrame, highFrame );
- }
- catch( CDIException e ) {
- setStatus( ICDebugElementStatus.WARNING, MessageFormat.format( CoreModelMessages.getString( "CThread.0" ), new String[]{ e.getMessage() } ) ); //$NON-NLS-1$
- targetRequestFailed( e.getMessage(), null );
- }
- return new ICDIStackFrame[0];
- }
-
- /**
- * Replaces the underlying stack frame objects in the preserved frames list with the current underlying stack frames.
- *
- * @param newFrames list of current underlying <code>ICDIStackFrame</code>s. Frames from this list are assigned to the underlying frames in the
- * <code>oldFrames</code> list.
- * @param offset the offset in the lists at which to start replacing the old underlying frames
- * @param oldFrames list of preserved frames, of type <code>CStackFrame</code>
- * @param length the number of frames to replace
- */
- protected void updateStackFrames( ICDIStackFrame[] newFrames, int offset, List oldFrames, int length ) throws DebugException {
- for( int i = 0; i < length; i++ ) {
- CStackFrame frame = (CStackFrame)oldFrames.get( offset );
- frame.setCDIStackFrame( newFrames[offset] );
- offset++;
- }
- }
-
- protected void addStackFrames( ICDIStackFrame[] newFrames, int startIndex, int length, boolean append ) {
- if ( newFrames.length >= startIndex + length ) {
- for( int i = 0; i < length; ++i ) {
- if ( append )
- fStackFrames.add( new CStackFrame( this, newFrames[startIndex + i] ) );
- else
- fStackFrames.add( i, new CStackFrame( this, newFrames[startIndex + i] ) );
- }
- }
- }
-
- /**
- * Returns this thread's current stack frames as a list, computing them if required. Returns an empty collection if this thread is not currently suspended,
- * or this thread is terminated. This method should be used internally to get the current stack frames, instead of calling <code>#getStackFrames()</code>,
- * which makes a copy of the current list.
- * <p>
- * Before a thread is resumed a call must be made to one of:
- * <ul>
- * <li><code>preserveStackFrames()</code></li>
- * <li><code>disposeStackFrames()</code></li>
- * </ul>
- * If stack frames are disposed before a thread is resumed, stack frames are completely re-computed on the next call to this method. If stack frames are to
- * be preserved, this method will attempt to re-use any stack frame objects which represent the same stack frame as on the previous suspend. Stack frames
- * are cached until a subsequent call to preserve or dispose stack frames.
- * </p>
- *
- * @return list of <code>IStackFrame</code>
- * @exception DebugException if this method fails. Reasons include:
- * <ul>
- * </ul>
- */
- public List computeStackFrames() throws DebugException {
- return computeStackFrames( refreshChildren() );
- }
-
- /**
- * @see CThread#computeStackFrames()
- *
- * This method differs from computeStackFrames() in that it always requests new stack frames from the target. As this is an expensive operation, this method
- * should only be used by clients who know for certain that the stack frames on the target have changed.
- */
- public List computeNewStackFrames() throws DebugException {
- return computeStackFrames( true );
- }
-
- /**
- * Helper method for <code>#computeStackFrames()</code> to create all underlying stack frames.
- *
- * @exception DebugException if this method fails. Reasons include:
- * <ul>
- * </ul>
- */
- protected List createAllStackFrames( int depth, ICDIStackFrame[] frames ) throws DebugException {
- List list = new ArrayList( frames.length );
- for( int i = 0; i < frames.length; ++i ) {
- list.add( new CStackFrame( this, frames[i] ) );
- }
- if ( depth > frames.length ) {
- list.add( new CDummyStackFrame( this ) );
- }
- return list;
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.debug.core.model.IThread#getPriority()
- */
- public int getPriority() throws DebugException {
- return 0;
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.debug.core.model.IThread#getTopStackFrame()
- */
- public IStackFrame getTopStackFrame() throws DebugException {
- List c = computeStackFrames();
- return (c.isEmpty()) ? null : (IStackFrame)c.get( 0 );
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.debug.core.model.IThread#getName()
- */
- public String getName() throws DebugException {
- return getCDIThread().toString();
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.debug.core.model.IThread#getBreakpoints()
- */
- public IBreakpoint[] getBreakpoints() {
- List list = new ArrayList( 1 );
- if ( isSuspended() ) {
- IBreakpoint bkpt = null;
- if ( getCurrentStateInfo() instanceof ICDIBreakpointHit )
- bkpt = ((CDebugTarget)getDebugTarget()).getBreakpointManager().getBreakpoint( ((ICDIBreakpointHit)getCurrentStateInfo()).getBreakpoint() );
- else if ( getCurrentStateInfo() instanceof ICDIWatchpointTrigger )
- bkpt = ((CDebugTarget)getDebugTarget()).getBreakpointManager().getBreakpoint( ((ICDIWatchpointTrigger)getCurrentStateInfo()).getWatchpoint() );
- if ( bkpt != null )
- list.add( bkpt );
- }
- return (IBreakpoint[])list.toArray( new IBreakpoint[list.size()] );
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.cdt.debug.core.cdi.event.ICDIEventListener#handleDebugEvents(org.eclipse.cdt.debug.core.cdi.event.ICDIEvent[])
- */
- public void handleDebugEvents( ICDIEvent[] events ) {
- if ( isDisposed() )
- return;
- for( int i = 0; i < events.length; i++ ) {
- ICDIEvent event = events[i];
- ICDIObject source = event.getSource();
- if ( source instanceof ICDIThread && source.equals( getCDIThread() ) ) {
- if ( event instanceof ICDISuspendedEvent ) {
- handleSuspendedEvent( (ICDISuspendedEvent)event );
- }
- else if ( event instanceof ICDIResumedEvent ) {
- handleResumedEvent( (ICDIResumedEvent)event );
- }
- else if ( event instanceof ICDIDestroyedEvent ) {
- handleTerminatedEvent( (ICDIDestroyedEvent)event );
- }
- else if ( event instanceof ICDIDisconnectedEvent ) {
- handleDisconnectedEvent( (ICDIDisconnectedEvent)event );
- }
- else if ( event instanceof ICDIChangedEvent ) {
- handleChangedEvent( (ICDIChangedEvent)event );
- }
- }
- }
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.debug.core.model.ISuspendResume#canResume()
- */
- public boolean canResume() {
- return ( fConfig.supportsResume() && isSuspended() );
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.debug.core.model.ISuspendResume#canSuspend()
- */
- public boolean canSuspend() {
- CDebugElementState state = getState();
- return ( fConfig.supportsSuspend() && (state.equals( CDebugElementState.RESUMED ) || state.equals( CDebugElementState.STEPPED )) );
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.debug.core.model.ISuspendResume#isSuspended()
- */
- public boolean isSuspended() {
- return getState().equals( CDebugElementState.SUSPENDED );
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.debug.core.model.ISuspendResume#resume()
- */
- public void resume() throws DebugException {
- if ( !canResume() )
- return;
- CDebugElementState oldState = getState();
- setState( CDebugElementState.RESUMING );
- try {
- getCDIThread().resume( false );
- }
- catch( CDIException e ) {
- setState( oldState );
- targetRequestFailed( e.getMessage(), null );
- }
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.debug.core.model.ISuspendResume#suspend()
- */
- public void suspend() throws DebugException {
- if ( !canSuspend() )
- return;
- CDebugElementState oldState = getState();
- setState( CDebugElementState.SUSPENDING );
- try {
- getCDIThread().suspend();
- }
- catch( CDIException e ) {
- setState( oldState );
- targetRequestFailed( e.getMessage(), null );
- }
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.debug.core.model.IStep#canStepInto()
- */
- public boolean canStepInto() {
- return canStep();
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.debug.core.model.IStep#canStepOver()
- */
- public boolean canStepOver() {
- return canStep();
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.debug.core.model.IStep#canStepReturn()
- */
- public boolean canStepReturn() {
- if ( !fConfig.supportsStepping() || !canResume() ) {
- return false;
- }
- return ( fStackFrames.size() > 1 );
- }
-
- /**
- * Returns whether this thread is in a valid state to step.
- *
- * @return whether this thread is in a valid state to step
- */
- protected boolean canStep() {
- if ( !fConfig.supportsStepping() || !isSuspended() ) {
- return false;
- }
- return !fStackFrames.isEmpty();
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.debug.core.model.IStep#isStepping()
- */
- public boolean isStepping() {
- return ( getState().equals( CDebugElementState.STEPPING ) ) || ( getState().equals( CDebugElementState.STEPPED ) );
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.debug.core.model.IStep#stepInto()
- */
- public void stepInto() throws DebugException {
- if ( !canStepInto() )
- return;
- CDebugElementState oldState = getState();
- setState( CDebugElementState.STEPPING );
- try {
- if ( !isInstructionsteppingEnabled() ) {
- getCDIThread().stepInto( 1 );
- }
- else {
- getCDIThread().stepIntoInstruction( 1 );
- }
- }
- catch( CDIException e ) {
- setState( oldState );
- targetRequestFailed( e.getMessage(), null );
- }
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.debug.core.model.IStep#stepOver()
- */
- public void stepOver() throws DebugException {
- if ( !canStepOver() )
- return;
- CDebugElementState oldState = getState();
- setState( CDebugElementState.STEPPING );
- try {
- if ( !isInstructionsteppingEnabled() ) {
- getCDIThread().stepOver( 1 );
- }
- else {
- getCDIThread().stepOverInstruction( 1 );
- }
- }
- catch( CDIException e ) {
- setState( oldState );
- targetRequestFailed( e.getMessage(), null );
- }
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.debug.core.model.IStep#stepReturn()
- */
- public void stepReturn() throws DebugException {
- if ( !canStepReturn() )
- return;
- IStackFrame[] frames = getStackFrames();
- if ( frames.length == 0 )
- return;
- CStackFrame f = (CStackFrame)frames[0];
- CDebugElementState oldState = getState();
- setState( CDebugElementState.STEPPING );
- try {
- f.doStepReturn();
- }
- catch( DebugException e ) {
- setState( oldState );
- throw e;
- }
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.debug.core.model.ITerminate#canTerminate()
- */
- public boolean canTerminate() {
- return getDebugTarget().canTerminate();
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.debug.core.model.ITerminate#isTerminated()
- */
- public boolean isTerminated() {
- return getDebugTarget().isTerminated();
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.debug.core.model.ITerminate#terminate()
- */
- public void terminate() throws DebugException {
- getDebugTarget().terminate();
- }
-
- /**
- * Sets the underlying CDI thread that this model object is a proxy to.
- *
- * @param thread the underlying CDI thread
- */
- protected void setCDIThread( ICDIThread cdiThread ) {
- fCDIThread = cdiThread;
- }
-
- /**
- * Returns the underlying CDI thread that this model object is a proxy to.
- *
- * @return the underlying CDI thread
- */
- protected ICDIThread getCDIThread() {
- return fCDIThread;
- }
-
- /**
- * Preserves stack frames to be used on the next suspend event. Iterates through all current stack frames, setting their state as invalid. This method
- * should be called before this thread is resumed, when stack frames are to be re-used when it later suspends.
- *
- * @see computeStackFrames()
- */
- protected synchronized void preserveStackFrames() {
- Iterator it = fStackFrames.iterator();
- while( it.hasNext() ) {
- CStackFrame frame = (CStackFrame)(((IAdaptable)it.next()).getAdapter( CStackFrame.class ));
- if ( frame != null ) {
- frame.preserve();
- }
- }
- setRefreshChildren( true );
- }
-
- /**
- * Disposes stack frames, to be completely re-computed on the next suspend event. This method should be called before this thread is resumed when stack
- * frames are not to be re-used on the next suspend.
- */
- protected synchronized void disposeStackFrames() {
- Iterator it = fStackFrames.iterator();
- while( it.hasNext() ) {
- Object obj = it.next();
- if ( obj instanceof CStackFrame ) {
- ((CStackFrame)obj).dispose();
- }
- }
- fStackFrames.clear();
- setLastStackDepth( 0 );
- resetStatus();
- setRefreshChildren( true );
- }
-
- protected void disposeStackFrames( int index, int length ) {
- List removeList = new ArrayList( length );
- Iterator it = fStackFrames.iterator();
- int counter = 0;
- while( it.hasNext() ) {
- CStackFrame frame = (CStackFrame)(((IAdaptable)it.next()).getAdapter( CStackFrame.class ));
- if ( frame != null && counter >= index && counter < index + length ) {
- frame.dispose();
- removeList.add( frame );
- }
- ++counter;
- }
- fStackFrames.removeAll( removeList );
- }
-
- /**
- * Notification this thread has terminated - update state and fire a terminate event.
- */
- protected void terminated() {
- setState( CDebugElementState.TERMINATED );
- dispose();
- }
-
- private void handleSuspendedEvent( ICDISuspendedEvent event ) {
- if ( !(getState().equals( CDebugElementState.RESUMED ) ||
- getState().equals( CDebugElementState.STEPPED ) ||
- getState().equals( CDebugElementState.SUSPENDING )) )
- return;
- setState( CDebugElementState.SUSPENDED );
- ICDISessionObject reason = event.getReason();
- setCurrentStateInfo( reason );
- if ( reason instanceof ICDIEndSteppingRange ) {
- handleEndSteppingRange( (ICDIEndSteppingRange)reason );
- }
- else if ( reason instanceof ICDIBreakpoint ) {
- handleBreakpointHit( (ICDIBreakpoint)reason );
- }
- else if ( reason instanceof ICDISignalReceived ) {
- handleSuspendedBySignal( (ICDISignalReceived)reason );
- }
- else {
- // fireSuspendEvent( DebugEvent.CLIENT_REQUEST );
- // Temporary fix for bug 56520
- fireSuspendEvent( DebugEvent.BREAKPOINT );
- }
- }
-
- private void handleResumedEvent( ICDIResumedEvent event ) {
- CDebugElementState state = CDebugElementState.RESUMED;
- int detail = DebugEvent.RESUME;
- syncWithBackend();
- if ( isCurrent() && event.getType() != ICDIResumedEvent.CONTINUE ) {
- preserveStackFrames();
- switch( event.getType() ) {
- case ICDIResumedEvent.STEP_INTO:
- case ICDIResumedEvent.STEP_INTO_INSTRUCTION:
- detail = DebugEvent.STEP_INTO;
- break;
- case ICDIResumedEvent.STEP_OVER:
- case ICDIResumedEvent.STEP_OVER_INSTRUCTION:
- detail = DebugEvent.STEP_OVER;
- break;
- case ICDIResumedEvent.STEP_RETURN:
- detail = DebugEvent.STEP_RETURN;
- break;
- }
- state = CDebugElementState.STEPPED;
- }
- else {
- disposeStackFrames();
- fireChangeEvent( DebugEvent.CONTENT );
- }
- setCurrent( false );
- setState( state );
- setCurrentStateInfo( null );
- fireResumeEvent( detail );
- }
-
- private void handleEndSteppingRange( ICDIEndSteppingRange endSteppingRange ) {
- fireSuspendEvent( DebugEvent.STEP_END );
- }
-
- private void handleBreakpointHit( ICDIBreakpoint breakpoint ) {
- fireSuspendEvent( DebugEvent.BREAKPOINT );
- }
-
- private void handleSuspendedBySignal( ICDISignalReceived signal ) {
- fireSuspendEvent( DebugEvent.CLIENT_REQUEST );
- }
-
- private void handleTerminatedEvent( ICDIDestroyedEvent event ) {
- setState( CDebugElementState.TERMINATED );
- setCurrentStateInfo( null );
- terminated();
- }
-
- private void handleDisconnectedEvent( ICDIDisconnectedEvent event ) {
- setState( CDebugElementState.TERMINATED );
- setCurrentStateInfo( null );
- terminated();
- }
-
- private void handleChangedEvent( ICDIChangedEvent event ) {
- }
-
- /**
- * Cleans up the internal state of this thread.
- */
- protected void cleanup() {
- getCDISession().getEventManager().removeEventListener( this );
- disposeStackFrames();
- }
-
- private void setRefreshChildren( boolean refresh ) {
- fRefreshChildren = refresh;
- }
-
- private boolean refreshChildren() {
- return fRefreshChildren;
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.cdt.debug.core.model.IRestart#canRestart()
- */
- public boolean canRestart() {
- return getDebugTarget() instanceof IRestart && ((IRestart)getDebugTarget()).canRestart();
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.cdt.debug.core.model.IRestart#restart()
- */
- public void restart() throws DebugException {
- if ( canRestart() ) {
- ((IRestart)getDebugTarget()).restart();
- }
- }
-
- protected boolean isCurrent() {
- return fIsCurrent;
- }
-
- protected void setCurrent( boolean current ) {
- if (!current)
- {
- if (getCDITarget().getConfiguration() instanceof ICDITargetConfiguration2 && ((ICDITargetConfiguration2)getCDITarget().getConfiguration()).supportsThreadControl())
- current = true; // When the debugger can control individual threads treat every thread is "current"
- }
- fIsCurrent = current;
- }
-
- protected int getStackDepth() throws DebugException {
- int depth = 0;
- try {
- depth = getCDIThread().getStackFrameCount();
- }
- catch( CDIException e ) {
- setStatus( ICDebugElementStatus.WARNING, MessageFormat.format( CoreModelMessages.getString( "CThread.1" ), new String[]{ e.getMessage() } ) ); //$NON-NLS-1$
- }
- return depth;
- }
-
- protected int getMaxStackDepth() {
- return MAX_STACK_DEPTH;
- }
-
- private void setLastStackDepth( int depth ) {
- fLastStackDepth = depth;
- }
-
- protected int getLastStackDepth() {
- return fLastStackDepth;
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.core.runtime.IAdaptable#getAdapter(java.lang.Class)
- */
- public Object getAdapter( Class adapter ) {
- if ( adapter.equals( IRunToLine.class ) ||
- adapter.equals( IRunToAddress.class ) ||
- adapter.equals( IJumpToLine.class ) ||
- adapter.equals( IJumpToAddress.class ) ) {
- try {
- // Alain: Put a proper fix later.
- Object obj = getTopStackFrame();
- if (obj instanceof ICStackFrame) {
- return obj;
- }
- }
- catch( DebugException e ) {
- // do nothing
- }
- }
- if ( adapter.equals( CDebugElementState.class ) )
- return this;
- if ( adapter == ICStackFrame.class ) {
- try {
- // Alain: Put a proper fix later.
- Object obj = getTopStackFrame();
- if (obj instanceof ICStackFrame) {
- return obj;
- }
- }
- catch( DebugException e ) {
- // do nothing
- }
- }
- if ( adapter == IMemoryBlockRetrieval.class ) {
- return getDebugTarget().getAdapter( adapter );
- }
- return super.getAdapter( adapter );
- }
-
- protected void dispose() {
- fDisposed = true;
- cleanup();
- }
-
- protected boolean isDisposed() {
- return fDisposed;
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.cdt.debug.core.model.IResumeWithoutSignal#canResumeWithoutSignal()
- */
- public boolean canResumeWithoutSignal() {
- return (getDebugTarget() instanceof IResumeWithoutSignal && ((IResumeWithoutSignal)getDebugTarget()).canResumeWithoutSignal());
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.cdt.debug.core.model.IResumeWithoutSignal#resumeWithoutSignal()
- */
- public void resumeWithoutSignal() throws DebugException {
- if ( canResumeWithoutSignal() ) {
- ((IResumeWithoutSignal)getDebugTarget()).resumeWithoutSignal();
- }
- }
-
- /* (non-Javadoc)
- * @see java.lang.Object#toString()
- */
- public String toString() {
- String result = ""; //$NON-NLS-1$
- try {
- result = getName();
- }
- catch( DebugException e ) {
- }
- return result;
- }
-
- protected void resumedByTarget( int detail, List events ) {
- syncWithBackend();
- if ( isCurrent() && detail != DebugEvent.CLIENT_REQUEST && detail != DebugEvent.UNSPECIFIED ) {
- setState( CDebugElementState.STEPPED );
- preserveStackFrames();
- events.add( createResumeEvent( detail ) );
- }
- else {
- setState( CDebugElementState.RESUMED );
- disposeStackFrames();
- events.add( createResumeEvent( DebugEvent.CLIENT_REQUEST ) );
- }
- setCurrent( false );
- setCurrentStateInfo( null );
- }
-
- protected boolean isInstructionsteppingEnabled() {
- return ((CDebugTarget)getDebugTarget()).isInstructionSteppingEnabled();
- }
-
- protected void suspendByTarget( ICDISessionObject reason, ICDIThread suspensionThread ) {
- setState( CDebugElementState.SUSPENDED );
- setCurrentStateInfo( null );
- if ( getCDIThread().equals( suspensionThread ) ) {
- setCurrent( true );
- setCurrentStateInfo( reason );
- if ( reason instanceof ICDIEndSteppingRange ) {
- handleEndSteppingRange( (ICDIEndSteppingRange)reason );
- }
- else if ( reason instanceof ICDIBreakpoint ) {
- handleBreakpointHit( (ICDIBreakpoint)reason );
- }
- else if ( reason instanceof ICDISignalReceived ) {
- handleSuspendedBySignal( (ICDISignalReceived)reason );
- }
- else {
- // fireSuspendEvent( DebugEvent.CLIENT_REQUEST );
- // Temporary fix for bug 56520
- fireSuspendEvent( DebugEvent.BREAKPOINT );
- }
- }
- }
-
- private void syncWithBackend() {
- ICDIThread cdiThread = getCDIThread();
- ICDIThread currentThread = null;
- try {
- currentThread = cdiThread.getTarget().getCurrentThread();
- }
- catch( CDIException e ) {
- // ignore
- }
- setCurrent( cdiThread.equals( currentThread ) );
- }
-}
diff --git a/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/model/CType.java b/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/model/CType.java
deleted file mode 100644
index f9cb362f08d..00000000000
--- a/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/model/CType.java
+++ /dev/null
@@ -1,138 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2005 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.internal.core.model;
-
-import org.eclipse.cdt.debug.core.cdi.model.type.ICDIArrayType;
-import org.eclipse.cdt.debug.core.cdi.model.type.ICDICharType;
-import org.eclipse.cdt.debug.core.cdi.model.type.ICDIDerivedType;
-import org.eclipse.cdt.debug.core.cdi.model.type.ICDIFloatingPointType;
-import org.eclipse.cdt.debug.core.cdi.model.type.ICDIIntegralType;
-import org.eclipse.cdt.debug.core.cdi.model.type.ICDIPointerType;
-import org.eclipse.cdt.debug.core.cdi.model.type.ICDIReferenceType;
-import org.eclipse.cdt.debug.core.cdi.model.type.ICDIStructType;
-import org.eclipse.cdt.debug.core.cdi.model.type.ICDIType;
-import org.eclipse.cdt.debug.core.model.ICType;
-
-/**
- * The CDI-based implementation of <code>ICType</code>.
- */
-public class CType implements ICType {
-
- /**
- * The underlying CDI type.
- */
- private ICDIType fCDIType;
-
- /**
- * Constructor for CType.
- */
- public CType( ICDIType cdiType ) {
- setCDIType( cdiType );
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.cdt.debug.core.model.ICType#getName()
- */
- public String getName() {
- return ( fCDIType != null ) ? fCDIType.getTypeName() : null;
- }
-
- public void dispose() {
- fCDIType = null;
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.cdt.debug.core.model.ICType#getArrayDimensions()
- */
- public int[] getArrayDimensions() {
- int length = 0;
- ICDIType type = getCDIType();
- while( type instanceof ICDIArrayType ) {
- ++length;
- type = ( type instanceof ICDIDerivedType ) ? ((ICDIDerivedType)type).getComponentType() : null;
- }
- int[] dims = new int[length];
- type = getCDIType();
- for (int i = 0; i < length; i++) {
- dims[i] = ((ICDIArrayType)type).getDimension();
- type = ((ICDIDerivedType)type).getComponentType();
- }
- return dims;
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.cdt.debug.core.model.ICType#isArray()
- */
- public boolean isArray() {
- return ( getCDIType() instanceof ICDIArrayType );
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.cdt.debug.core.model.ICType#isCharacter()
- */
- public boolean isCharacter() {
- return ( getCDIType() instanceof ICDICharType );
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.cdt.debug.core.model.ICType#isFloatingPointType()
- */
- public boolean isFloatingPointType() {
- return ( getCDIType() instanceof ICDIFloatingPointType );
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.cdt.debug.core.model.ICType#isPointer()
- */
- public boolean isPointer() {
- return ( getCDIType() instanceof ICDIPointerType );
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.cdt.debug.core.model.ICType#isReference()
- */
- public boolean isReference() {
- return ( getCDIType() instanceof ICDIReferenceType );
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.cdt.debug.core.model.ICType#isStructure()
- */
- public boolean isStructure() {
- return ( getCDIType() instanceof ICDIStructType );
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.cdt.debug.core.model.ICType#isUnsigned()
- */
- public boolean isUnsigned() {
- return ( isIntegralType() ) ? ((ICDIIntegralType)getCDIType()).isUnsigned() : false;
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.cdt.debug.core.model.ICType#isIntegralType()
- */
- public boolean isIntegralType() {
- return ( getCDIType() instanceof ICDIIntegralType );
- }
-
- protected ICDIType getCDIType() {
- return fCDIType;
- }
-
- protected void setCDIType( ICDIType type ) {
- fCDIType = type;
- }
-
- protected boolean isAggregate() {
- return ( isArray() || isStructure() || isPointer() || isReference() );
- }
-}
diff --git a/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/model/CValue.java b/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/model/CValue.java
deleted file mode 100644
index a7b6495c5f0..00000000000
--- a/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/model/CValue.java
+++ /dev/null
@@ -1,545 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- * Mark Mitchell, CodeSourcery - Bug 136896: View variables in binary format
- *******************************************************************************/
-package org.eclipse.cdt.debug.internal.core.model;
-
-import java.math.BigInteger;
-import java.util.ArrayList;
-import java.util.Arrays;
-import java.util.Collections;
-import java.util.Iterator;
-import java.util.List;
-import org.eclipse.cdt.core.IAddress;
-import org.eclipse.cdt.core.IAddressFactory;
-import org.eclipse.cdt.debug.core.cdi.CDIException;
-import org.eclipse.cdt.debug.core.cdi.model.ICDITargetConfiguration2;
-import org.eclipse.cdt.debug.core.cdi.model.ICDIValue;
-import org.eclipse.cdt.debug.core.cdi.model.ICDIVariable;
-import org.eclipse.cdt.debug.core.cdi.model.type.ICDICharValue;
-import org.eclipse.cdt.debug.core.cdi.model.type.ICDIDoubleValue;
-import org.eclipse.cdt.debug.core.cdi.model.type.ICDIFloatValue;
-import org.eclipse.cdt.debug.core.cdi.model.type.ICDIIntValue;
-import org.eclipse.cdt.debug.core.cdi.model.type.ICDILongLongValue;
-import org.eclipse.cdt.debug.core.cdi.model.type.ICDILongValue;
-import org.eclipse.cdt.debug.core.cdi.model.type.ICDIPointerValue;
-import org.eclipse.cdt.debug.core.cdi.model.type.ICDIReferenceValue;
-import org.eclipse.cdt.debug.core.cdi.model.type.ICDIShortValue;
-import org.eclipse.cdt.debug.core.cdi.model.type.ICDIWCharValue;
-import org.eclipse.cdt.debug.core.model.CVariableFormat;
-import org.eclipse.cdt.debug.core.model.ICDebugElementStatus;
-import org.eclipse.cdt.debug.core.model.ICStackFrame;
-import org.eclipse.cdt.debug.core.model.ICType;
-import org.eclipse.debug.core.DebugException;
-import org.eclipse.debug.core.model.IVariable;
-
-/**
- * Represents the value of a variable in the CDI model.
- */
-public class CValue extends AbstractCValue {
- /**
- * Cached value.
- */
- private String fValueString = null;
-
- /**
- * Underlying CDI value.
- */
- private ICDIValue fCDIValue;
-
- /**
- * List of child variables.
- */
- private List fVariables = Collections.EMPTY_LIST;
-
- private CType fType;
-
- /**
- * Constructor for CValue.
- */
- protected CValue( CVariable parent, ICDIValue cdiValue ) {
- super( parent );
- fCDIValue = cdiValue;
- }
-
- /**
- * Constructor for CValue.
- */
- protected CValue( CVariable parent, String message ) {
- super( parent );
- setStatus( ICDebugElementStatus.ERROR, message );
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.debug.core.model.IValue#getReferenceTypeName()
- */
- public String getReferenceTypeName() throws DebugException {
- return ( getParentVariable() != null ) ? getParentVariable().getReferenceTypeName() : null;
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.debug.core.model.IValue#getValueString()
- */
- public String getValueString() throws DebugException {
- if ( fValueString == null && getUnderlyingValue() != null ) {
- resetStatus();
- ICStackFrame cframe = getParentVariable().getStackFrame();
- boolean isSuspended = (cframe == null) ? getCDITarget().isSuspended() : cframe.isSuspended();
- if ( isSuspended ) {
- try {
- fValueString = processUnderlyingValue( getUnderlyingValue() );
- }
- catch( CDIException e ) {
- setStatus( ICDebugElementStatus.ERROR, e.getMessage() );
- }
- }
- }
- return fValueString;
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.debug.core.model.IValue#isAllocated()
- */
- public boolean isAllocated() throws DebugException {
- return true;
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.debug.core.model.IValue#getVariables()
- */
- public IVariable[] getVariables() throws DebugException {
- List list = getVariables0();
- return (IVariable[])list.toArray( new IVariable[list.size()] );
- }
-
- protected synchronized List getVariables0() throws DebugException {
- if ( !isAllocated() || !hasVariables() )
- return Collections.EMPTY_LIST;
- if ( fVariables.size() == 0 ) {
- try {
- List vars = getCDIVariables();
- fVariables = new ArrayList( vars.size() );
- Iterator it = vars.iterator();
- while( it.hasNext() ) {
- fVariables.add( CVariableFactory.createLocalVariable( this, (ICDIVariable)it.next() ) );
- }
- resetStatus();
- }
- catch( DebugException e ) {
- setStatus( ICDebugElementStatus.ERROR, e.getMessage() );
- }
- }
- return fVariables;
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.debug.core.model.IValue#hasVariables()
- */
- public boolean hasVariables() throws DebugException {
- try {
- ICDIValue value = getUnderlyingValue();
- if ( value != null )
- return value.getChildrenNumber() > 0;
- }
- catch( CDIException e ) {
- targetRequestFailed( e.getMessage(), null );
- }
- return false;
- }
-
- public ICDIValue getUnderlyingValue() {
- return fCDIValue;
- }
-
- protected List getCDIVariables() throws DebugException {
- ICDIVariable[] vars = null;
- try {
- ICDIValue value = getUnderlyingValue();
- if ( value != null ) {
- vars = value.getVariables();
- // Quick fix.
- // getVariables should return an empty array instead of null.
- if ( vars == null ) {
- vars = new ICDIVariable[0];
- }
- }
- }
- catch( CDIException e ) {
- requestFailed( e.getMessage(), e );
- }
- return Arrays.asList( vars );
- }
-
- protected synchronized void setChanged( boolean changed ) {
- if ( changed ) {
- fValueString = null;
- resetStatus();
- }
- else {
- if (getCDITarget().getConfiguration() instanceof ICDITargetConfiguration2 &&
- ((ICDITargetConfiguration2)getCDITarget().getConfiguration()).supportsPassiveVariableUpdate())
- fValueString = null;
- }
-
- Iterator it = fVariables.iterator();
- while( it.hasNext() ) {
- ((AbstractCVariable)it.next()).setChanged( changed );
- }
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.cdt.debug.internal.core.model.AbstractCValue#dispose()
- */
- public void dispose() {
- Iterator it = fVariables.iterator();
- while( it.hasNext() ) {
- ((AbstractCVariable)it.next()).dispose();
- }
- }
-
- private String processUnderlyingValue( ICDIValue cdiValue ) throws CDIException {
- if ( cdiValue != null ) {
- if ( cdiValue instanceof ICDICharValue )
- return getCharValueString( (ICDICharValue)cdiValue );
- else if ( cdiValue instanceof ICDIShortValue )
- return getShortValueString( (ICDIShortValue)cdiValue );
- else if ( cdiValue instanceof ICDIIntValue )
- return getIntValueString( (ICDIIntValue)cdiValue );
- else if ( cdiValue instanceof ICDILongValue )
- return getLongValueString( (ICDILongValue)cdiValue );
- else if ( cdiValue instanceof ICDILongLongValue )
- return getLongLongValueString( (ICDILongLongValue)cdiValue );
- else if ( cdiValue instanceof ICDIFloatValue )
- return getFloatValueString( (ICDIFloatValue)cdiValue );
- else if ( cdiValue instanceof ICDIDoubleValue )
- return getDoubleValueString( (ICDIDoubleValue)cdiValue );
- else if ( cdiValue instanceof ICDIPointerValue )
- return getPointerValueString( (ICDIPointerValue)cdiValue );
- else if ( cdiValue instanceof ICDIReferenceValue )
- return processUnderlyingValue(((ICDIReferenceValue)cdiValue).referenceValue());
- else if ( cdiValue instanceof ICDIWCharValue )
- return getWCharValueString( (ICDIWCharValue)cdiValue );
- else
- return cdiValue.getValueString();
- }
- return null;
- }
-
- private String getCharValueString( ICDICharValue value ) throws CDIException {
- CVariableFormat format = getParentVariable().getFormat();
- if ( CVariableFormat.NATURAL.equals( format ) ) {
- byte byteValue = (byte)value.byteValue();
- return ((Character.isISOControl( (char)byteValue ) && byteValue != '\b' && byteValue != '\t' && byteValue != '\n' && byteValue != '\f' && byteValue != '\r') || byteValue < 0) ? "" : new String( new byte[]{ '\'', byteValue, '\'' } ); //$NON-NLS-1$
- }
- else if ( CVariableFormat.DECIMAL.equals( format ) ) {
- return (isUnsigned()) ? Integer.toString( value.shortValue() ) : Integer.toString( (byte)value.byteValue() );
- }
- else if ( CVariableFormat.HEXADECIMAL.equals( format ) ) {
- StringBuffer sb = new StringBuffer( "0x" ); //$NON-NLS-1$
- String stringValue = (isUnsigned()) ? Integer.toHexString( value.shortValue() ) : Integer.toHexString( (byte)value.byteValue() );
- sb.append( (stringValue.length() > 2) ? stringValue.substring( stringValue.length() - 2 ) : stringValue );
- return sb.toString();
- }
- else if ( CVariableFormat.BINARY.equals( format ) ) {
- StringBuffer sb = new StringBuffer( "0b" ); //$NON-NLS-1$
- String stringValue = (isUnsigned()) ? Integer.toBinaryString( value.shortValue() ) : Integer.toBinaryString( (byte)value.byteValue() );
- sb.append( (stringValue.length() > 8) ? stringValue.substring( stringValue.length() - 8 ) : stringValue );
- return sb.toString();
- }
- return null;
- }
-
- private String getShortValueString( ICDIShortValue value ) throws CDIException {
- CVariableFormat format = getParentVariable().getFormat();
- if ( CVariableFormat.NATURAL.equals( format ) || CVariableFormat.DECIMAL.equals( format ) ) {
- return (isUnsigned()) ? Integer.toString( value.intValue() ) : Short.toString( value.shortValue() );
- }
- else if ( CVariableFormat.HEXADECIMAL.equals( format ) ) {
- StringBuffer sb = new StringBuffer( "0x" ); //$NON-NLS-1$
- String stringValue = Integer.toHexString( (isUnsigned()) ? value.intValue() : value.shortValue() );
- sb.append( (stringValue.length() > 4) ? stringValue.substring( stringValue.length() - 4 ) : stringValue );
- return sb.toString();
- }
- else if ( CVariableFormat.BINARY.equals( format ) ) {
- StringBuffer sb = new StringBuffer( "0b" ); //$NON-NLS-1$
- String stringValue = Integer.toBinaryString( (isUnsigned()) ? value.intValue() : value.shortValue() );
- sb.append( (stringValue.length() > 16) ? stringValue.substring( stringValue.length() - 16 ) : stringValue );
- return sb.toString();
- }
- return null;
- }
-
- private String getIntValueString( ICDIIntValue value ) throws CDIException {
- CVariableFormat format = getParentVariable().getFormat();
- if ( CVariableFormat.NATURAL.equals( format ) || CVariableFormat.DECIMAL.equals( format ) ) {
- return (isUnsigned()) ? Long.toString( value.longValue() ) : Integer.toString( value.intValue() );
- }
- else if ( CVariableFormat.HEXADECIMAL.equals( format ) ) {
- StringBuffer sb = new StringBuffer( "0x" ); //$NON-NLS-1$
- String stringValue = (isUnsigned()) ? Long.toHexString( value.longValue() ) : Integer.toHexString( value.intValue() );
- sb.append( (stringValue.length() > 8) ? stringValue.substring( stringValue.length() - 8 ) : stringValue );
- return sb.toString();
- }
- else if ( CVariableFormat.BINARY.equals( format ) ) {
- StringBuffer sb = new StringBuffer( "0b" ); //$NON-NLS-1$
- String stringValue = (isUnsigned()) ? Long.toBinaryString( value.longValue() ) : Integer.toBinaryString( value.intValue() );
- sb.append( (stringValue.length() > 32) ? stringValue.substring( stringValue.length() - 32 ) : stringValue );
- return sb.toString();
- }
- return null;
- }
-
- private String getLongValueString( ICDILongValue value ) throws CDIException {
- try {
- CVariableFormat format = getParentVariable().getFormat();
- if ( CVariableFormat.NATURAL.equals( format ) || CVariableFormat.DECIMAL.equals( format ) ) {
- if ( isUnsigned() ) {
- BigInteger bigValue = new BigInteger( value.getValueString() );
- return bigValue.toString();
- }
- return Long.toString( value.longValue() );
- }
- else if ( CVariableFormat.HEXADECIMAL.equals( format ) ) {
- StringBuffer sb = new StringBuffer( "0x" ); //$NON-NLS-1$
- if ( isUnsigned() ) {
- BigInteger bigValue = new BigInteger( value.getValueString() );
- sb.append( bigValue.toString( 16 ) );
- }
- else
- sb.append( Long.toHexString( value.longValue() ) );
- return sb.toString();
- }
- else if ( CVariableFormat.BINARY.equals( format ) ) {
- StringBuffer sb = new StringBuffer( "0b" ); //$NON-NLS-1$
- if ( isUnsigned() ) {
- BigInteger bigValue = new BigInteger( value.getValueString() );
- sb.append( bigValue.toString( 2 ) );
- }
- else
- sb.append( Long.toBinaryString( value.longValue() ) );
- return sb.toString();
- }
- }
- catch( NumberFormatException e ) {
- }
- return null;
- }
-
- private String getLongLongValueString( ICDILongLongValue value ) throws CDIException {
- try {
- CVariableFormat format = getParentVariable().getFormat();
- if ( CVariableFormat.NATURAL.equals( format ) || CVariableFormat.DECIMAL.equals( format ) ) {
- if ( isUnsigned() ) {
- BigInteger bigValue = new BigInteger( value.getValueString() );
- return bigValue.toString();
- }
- return Long.toString( value.longValue() );
- }
- else if ( CVariableFormat.HEXADECIMAL.equals( format ) ) {
- StringBuffer sb = new StringBuffer( "0x" ); //$NON-NLS-1$
- if ( isUnsigned() ) {
- BigInteger bigValue = new BigInteger( value.getValueString() );
- sb.append( bigValue.toString( 16 ) );
- }
- else
- sb.append( Long.toHexString( value.longValue() ) );
- return sb.toString();
- }
- else if ( CVariableFormat.BINARY.equals( format ) ) {
- StringBuffer sb = new StringBuffer( "0b" ); //$NON-NLS-1$
- if ( isUnsigned() ) {
- BigInteger bigValue = new BigInteger( value.getValueString() );
- sb.append( bigValue.toString( 2 ) );
- }
- else
- sb.append( Long.toBinaryString( value.longValue() ) );
- return sb.toString();
- }
- }
- catch( NumberFormatException e ) {
- }
- return null;
- }
-
- private String getFloatValueString( ICDIFloatValue value ) throws CDIException {
- float floatValue = value.floatValue();
- Float flt = new Float( floatValue );
- if ( flt.isNaN() || flt.isInfinite() )
- return ""; //$NON-NLS-1$
- long longValue = flt.longValue();
- CVariableFormat format = getParentVariable().getFormat();
- if ( CVariableFormat.NATURAL.equals( format ) ) {
- return Float.toString( floatValue );
- }
- else if ( CVariableFormat.DECIMAL.equals( format ) ) {
- return Long.toString( longValue );
- }
- else if ( CVariableFormat.HEXADECIMAL.equals( format ) ) {
- StringBuffer sb = new StringBuffer( "0x" ); //$NON-NLS-1$
- String stringValue = Long.toHexString( longValue );
- sb.append( (stringValue.length() > 8) ? stringValue.substring( stringValue.length() - 8 ) : stringValue );
- return sb.toString();
- }
- else if ( CVariableFormat.BINARY.equals( format ) ) {
- StringBuffer sb = new StringBuffer( "0b" ); //$NON-NLS-1$
- String stringValue = Long.toBinaryString( longValue );
- sb.append( (stringValue.length() > 32) ? stringValue.substring( stringValue.length() - 32 ) : stringValue );
- return sb.toString();
- }
- return null;
- }
-
- private String getDoubleValueString( ICDIDoubleValue value ) throws CDIException {
- double doubleValue = value.doubleValue();
- Double dbl = new Double( doubleValue );
- if ( dbl.isNaN() || dbl.isInfinite() )
- return ""; //$NON-NLS-1$
- long longValue = dbl.longValue();
- CVariableFormat format = getParentVariable().getFormat();
- if ( CVariableFormat.NATURAL.equals( format ) ) {
- return dbl.toString();
- }
- else if ( CVariableFormat.DECIMAL.equals( format ) ) {
- return Long.toString( longValue );
- }
- else if ( CVariableFormat.HEXADECIMAL.equals( format ) ) {
- StringBuffer sb = new StringBuffer( "0x" ); //$NON-NLS-1$
- String stringValue = Long.toHexString( longValue );
- sb.append( (stringValue.length() > 16) ? stringValue.substring( stringValue.length() - 16 ) : stringValue );
- return sb.toString();
- }
- else if ( CVariableFormat.BINARY.equals( format ) ) {
- StringBuffer sb = new StringBuffer( "0b" ); //$NON-NLS-1$
- String stringValue = Long.toHexString( longValue );
- sb.append( (stringValue.length() > 64) ? stringValue.substring( stringValue.length() - 64 ) : stringValue );
- return sb.toString();
- }
- return null;
- }
-
- private String getPointerValueString( ICDIPointerValue value ) throws CDIException {
- //TODO:IPF_TODO Workaround to solve incorrect handling of structures referenced by pointers or references
- IAddressFactory factory = ((CDebugTarget)getDebugTarget()).getAddressFactory();
- BigInteger pv = value.pointerValue();
- if ( pv == null )
- return ""; //$NON-NLS-1$
- IAddress address = factory.createAddress( pv );
- if ( address == null )
- return ""; //$NON-NLS-1$
- CVariableFormat format = getParentVariable().getFormat();
- if ( CVariableFormat.NATURAL.equals( format ) || CVariableFormat.HEXADECIMAL.equals( format ) )
- return address.toHexAddressString();
- if ( CVariableFormat.DECIMAL.equals( format ) )
- return address.toString();
- if ( CVariableFormat.BINARY.equals( format ) )
- return address.toBinaryAddressString();
- return null;
- }
-
- private String getWCharValueString( ICDIWCharValue value ) throws CDIException {
- if ( getParentVariable() instanceof CVariable ) {
- int size = ((CVariable)getParentVariable()).sizeof();
- if ( size == 2 ) {
- CVariableFormat format = getParentVariable().getFormat();
- if ( CVariableFormat.NATURAL.equals( format ) || CVariableFormat.DECIMAL.equals( format ) ) {
- return (isUnsigned()) ? Integer.toString( value.intValue() ) : Short.toString( value.shortValue() );
- }
- else if ( CVariableFormat.HEXADECIMAL.equals( format ) ) {
- StringBuffer sb = new StringBuffer( "0x" ); //$NON-NLS-1$
- String stringValue = Integer.toHexString( (isUnsigned()) ? value.intValue() : value.shortValue() );
- sb.append( (stringValue.length() > 4) ? stringValue.substring( stringValue.length() - 4 ) : stringValue );
- return sb.toString();
- }
- else if ( CVariableFormat.BINARY.equals( format ) ) {
- StringBuffer sb = new StringBuffer( "0b" ); //$NON-NLS-1$
- String stringValue = Integer.toBinaryString( (isUnsigned()) ? value.intValue() : value.shortValue() );
- sb.append( (stringValue.length() > 16) ? stringValue.substring( stringValue.length() - 16 ) : stringValue );
- return sb.toString();
- }
- }
- if ( size == 4 ) {
- CVariableFormat format = getParentVariable().getFormat();
- if ( CVariableFormat.NATURAL.equals( format ) || CVariableFormat.DECIMAL.equals( format ) ) {
- return (isUnsigned()) ? Long.toString( value.longValue() ) : Integer.toString( value.intValue() );
- }
- else if ( CVariableFormat.HEXADECIMAL.equals( format ) ) {
- StringBuffer sb = new StringBuffer( "0x" ); //$NON-NLS-1$
- String stringValue = (isUnsigned()) ? Long.toHexString( value.longValue() ) : Integer.toHexString( value.intValue() );
- sb.append( (stringValue.length() > 8) ? stringValue.substring( stringValue.length() - 8 ) : stringValue );
- return sb.toString();
- }
- else if ( CVariableFormat.BINARY.equals( format ) ) {
- StringBuffer sb = new StringBuffer( "0b" ); //$NON-NLS-1$
- String stringValue = (isUnsigned()) ? Long.toBinaryString( value.longValue() ) : Integer.toHexString( value.intValue() );
- sb.append( (stringValue.length() > 32) ? stringValue.substring( stringValue.length() - 32 ) : stringValue );
- return sb.toString();
- }
- }
- }
- return value.getValueString();
- }
-
- private boolean isUnsigned() {
- boolean result = false;
- try {
- ICType type = getParentVariable().getType();
- if ( type != null )
- result = type.isUnsigned();
- }
- catch( DebugException e ) {
- }
- return result;
- }
-
- /**
- * Invalidates the string cache.
- */
- protected void reset() {
- resetStatus();
- fValueString = null;
- Iterator it = fVariables.iterator();
- while( it.hasNext() ) {
- ((AbstractCVariable)it.next()).resetValue();
- }
- }
-
- public ICType getType() throws DebugException {
- ICDIValue cdiValue = getUnderlyingValue();
- if ( fType == null ) {
- if ( cdiValue != null ) {
- synchronized( this ) {
- if ( fType == null ) {
- try {
- fType = new CType( cdiValue.getType() );
- }
- catch( CDIException e ) {
- requestFailed( e.getMessage(), null );
- }
- }
- }
- }
- }
- return fType;
-// AbstractCVariable var = getParentVariable();
-// return ( var instanceof CVariable ) ? ((CVariable)var).getType() : null;
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.cdt.debug.internal.core.model.AbstractCValue#preserve()
- */
- protected void preserve() {
- setChanged( false );
- resetStatus();
- Iterator it = fVariables.iterator();
- while( it.hasNext() ) {
- ((AbstractCVariable)it.next()).preserve();
- }
- }
-}
diff --git a/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/model/CValueFactory.java b/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/model/CValueFactory.java
deleted file mode 100644
index b2bce6a16b1..00000000000
--- a/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/model/CValueFactory.java
+++ /dev/null
@@ -1,105 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.internal.core.model;
-
-import org.eclipse.cdt.debug.core.CDebugCorePlugin;
-import org.eclipse.cdt.debug.core.cdi.model.ICDIValue;
-import org.eclipse.cdt.debug.core.cdi.model.type.ICDIArrayValue;
-import org.eclipse.cdt.debug.core.cdi.model.type.ICDIFloatingPointValue;
-import org.eclipse.cdt.debug.core.model.CDebugElementState;
-import org.eclipse.cdt.debug.core.model.ICStackFrame;
-import org.eclipse.cdt.debug.core.model.ICType;
-import org.eclipse.cdt.debug.core.model.ICValue;
-import org.eclipse.debug.core.DebugException;
-import org.eclipse.debug.core.ILaunch;
-import org.eclipse.debug.core.model.IDebugTarget;
-import org.eclipse.debug.core.model.IVariable;
-
-/**
- * The value factory for variable and expressions.
- */
-public class CValueFactory {
-
- static public final ICValue NULL_VALUE = new ICValue() {
-
- public String getReferenceTypeName() throws DebugException {
- return ""; //$NON-NLS-1$
- }
-
- public String getValueString() throws DebugException {
- return ""; //$NON-NLS-1$
- }
-
- public boolean isAllocated() throws DebugException {
- return true;
- }
-
- public IVariable[] getVariables() throws DebugException {
- return new IVariable[0];
- }
-
- public boolean hasVariables() throws DebugException {
- return false;
- }
-
- public String getModelIdentifier() {
- return CDebugCorePlugin.getUniqueIdentifier();
- }
-
- public IDebugTarget getDebugTarget() {
- return null;
- }
-
- public ILaunch getLaunch() {
- return null;
- }
-
- public Object getAdapter( Class adapter ) {
- return null;
- }
-
- public ICType getType() throws DebugException {
- return null;
- }
-
- public String evaluateAsExpression( ICStackFrame frame ) {
- return ""; //$NON-NLS-1$
- }
-
- public CDebugElementState getState() {
- return CDebugElementState.UNDEFINED;
- }
-
- public Object getCurrentStateInfo() {
- return null;
- }
-
- };
-
- static public CValue createValue( CVariable parent, ICDIValue cdiValue ) {
- if ( cdiValue instanceof ICDIFloatingPointValue ) {
- return new CFloatingPointValue( parent, cdiValue );
- }
- return new CValue( parent, cdiValue );
- }
-
- static public CIndexedValue createIndexedValue( AbstractCVariable parent, ICDIArrayValue cdiValue, int start, int length ) {
- return new CIndexedValue( parent, cdiValue, start, length );
- }
-
- static public CValue createGlobalValue( CVariable parent, ICDIValue cdiValue ) {
- return new CGlobalValue( parent, cdiValue );
- }
-
- static public ICValue createValueWithError( CVariable parent, String message ) {
- return new CValue( parent, message );
- }
-}
diff --git a/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/model/CVariable.java b/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/model/CVariable.java
deleted file mode 100644
index cc18c0ae06e..00000000000
--- a/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/model/CVariable.java
+++ /dev/null
@@ -1,609 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004, 2005 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.internal.core.model;
-
-import java.text.MessageFormat;
-import org.eclipse.cdt.debug.core.CDebugCorePlugin;
-import org.eclipse.cdt.debug.core.ICDTLaunchConfigurationConstants;
-import org.eclipse.cdt.debug.core.ICDebugConstants;
-import org.eclipse.cdt.debug.core.cdi.event.ICDIChangedEvent;
-import org.eclipse.cdt.debug.core.cdi.event.ICDIEvent;
-import org.eclipse.cdt.debug.core.cdi.event.ICDIEventListener;
-import org.eclipse.cdt.debug.core.cdi.event.ICDIMemoryChangedEvent;
-import org.eclipse.cdt.debug.core.cdi.event.ICDIResumedEvent;
-import org.eclipse.cdt.debug.core.cdi.model.ICDIObject;
-import org.eclipse.cdt.debug.core.cdi.model.ICDITarget;
-import org.eclipse.cdt.debug.core.cdi.model.ICDITargetConfiguration3;
-import org.eclipse.cdt.debug.core.cdi.model.ICDIVariable;
-import org.eclipse.cdt.debug.core.cdi.model.ICDIVariableDescriptor;
-import org.eclipse.cdt.debug.core.model.CVariableFormat;
-import org.eclipse.cdt.debug.core.model.ICDebugElementStatus;
-import org.eclipse.cdt.debug.core.model.ICType;
-import org.eclipse.cdt.debug.core.model.ICValue;
-import org.eclipse.core.runtime.CoreException;
-import org.eclipse.debug.core.DebugEvent;
-import org.eclipse.debug.core.DebugException;
-import org.eclipse.debug.core.model.IValue;
-
-/**
- * Represents a variable in the CDI model.
- */
-public abstract class CVariable extends AbstractCVariable implements ICDIEventListener {
-
- interface IInternalVariable {
- IInternalVariable createShadow( int start, int length ) throws DebugException;
- IInternalVariable createShadow( String type ) throws DebugException;
- CType getType() throws DebugException;
- String getQualifiedName() throws DebugException;
- ICValue getValue() throws DebugException;
- void setValue( String expression ) throws DebugException;
- boolean isChanged();
- void setChanged( boolean changed );
- void dispose( boolean destroy );
- boolean isSameDescriptor( ICDIVariableDescriptor desc );
- boolean isSameVariable( ICDIVariable cdiVar );
- void resetValue();
- boolean isEditable() throws DebugException;
- boolean isArgument();
- int sizeof();
- void invalidateValue();
- void preserve();
- }
-
- /**
- * Whether this variable is currently enabled.
- */
- private boolean fIsEnabled = true;
-
- /**
- * The original internal variable.
- */
- private IInternalVariable fOriginal;
-
- /**
- * The shadow internal variable used for casting.
- */
- private IInternalVariable fShadow;
-
- /**
- * The name of this variable.
- */
- private String fName;
-
- /**
- * The current format of this variable.
- */
- private CVariableFormat fFormat = CVariableFormat.getFormat( CDebugCorePlugin.getDefault().getPluginPreferences().getInt( ICDebugConstants.PREF_DEFAULT_VARIABLE_FORMAT ) );
-
- /**
- * Whether this variable has been disposed.
- */
- private boolean fIsDisposed = false;
-
- /**
- * Constructor for CVariable.
- */
- protected CVariable( CDebugElement parent, ICDIVariableDescriptor cdiVariableObject ) {
- super( parent );
- if ( cdiVariableObject != null ) {
- setName( cdiVariableObject.getName() );
- createOriginal( cdiVariableObject );
- }
- fIsEnabled = ( parent instanceof AbstractCValue ) ? ((AbstractCValue)parent).getParentVariable().isEnabled() : !isBookkeepingEnabled();
- getCDISession().getEventManager().addEventListener( this );
- }
-
- /**
- * Constructor for CVariable.
- */
- protected CVariable( CDebugElement parent, ICDIVariableDescriptor cdiVariableObject, String errorMessage ) {
- super( parent );
- if ( cdiVariableObject != null ) {
- setName( cdiVariableObject.getName() );
- createOriginal( cdiVariableObject );
- }
- fIsEnabled = !isBookkeepingEnabled();
- setStatus( ICDebugElementStatus.ERROR, MessageFormat.format( CoreModelMessages.getString( "CVariable.1" ), new String[]{ errorMessage } ) ); //$NON-NLS-1$
- getCDISession().getEventManager().addEventListener( this );
- }
-
- /*
- * (non-Javadoc)
- *
- * @see org.eclipse.cdt.debug.core.model.ICVariable#getType()
- */
- public ICType getType() throws DebugException {
- if ( isDisposed() )
- return null;
- IInternalVariable iv = getCurrentInternalVariable();
- return ( iv != null ) ? iv.getType() : null;
- }
-
- /*
- * (non-Javadoc)
- *
- * @see org.eclipse.cdt.debug.core.model.ICVariable#isEnabled()
- */
- public boolean isEnabled() {
- return fIsEnabled;
- }
-
- /*
- * (non-Javadoc)
- *
- * @see org.eclipse.cdt.debug.core.model.ICVariable#setEnabled(boolean)
- */
- public void setEnabled( boolean enabled ) throws DebugException {
- IInternalVariable iv = getOriginal();
- if ( iv != null )
- iv.dispose( true );
- iv = getShadow();
- if ( iv != null )
- iv.dispose( true );
- fIsEnabled = enabled;
- fireChangeEvent( DebugEvent.STATE );
- }
-
- /*
- * (non-Javadoc)
- *
- * @see org.eclipse.cdt.debug.core.model.ICVariable#canEnableDisable()
- */
- public boolean canEnableDisable() {
- return !( getParent() instanceof IValue );
- }
-
- /*
- * (non-Javadoc)
- *
- * @see org.eclipse.cdt.debug.core.model.ICVariable#isArgument()
- */
- public boolean isArgument() {
- IInternalVariable iv = getOriginal();
- return ( iv != null ) ? iv.isArgument() : false;
- }
-
- /*
- * (non-Javadoc)
- *
- * @see org.eclipse.debug.core.model.IVariable#getValue()
- */
- public IValue getValue() throws DebugException {
- if ( !isDisposed() && isEnabled() ) {
- IInternalVariable iv = getCurrentInternalVariable();
- if ( iv != null ) {
- try {
- return iv.getValue();
- }
- catch( DebugException e ) {
- setStatus( ICDebugElementStatus.ERROR, e.getMessage() );
- }
- }
- }
- return CValueFactory.NULL_VALUE;
- }
-
- /*
- * (non-Javadoc)
- *
- * @see org.eclipse.debug.core.model.IVariable#getName()
- */
- public String getName() throws DebugException {
- return fName;
- }
-
- /*
- * (non-Javadoc)
- *
- * @see org.eclipse.debug.core.model.IVariable#getReferenceTypeName()
- */
- public String getReferenceTypeName() throws DebugException {
- ICType type = getType();
- return ( type != null ) ? type.getName() : ""; //$NON-NLS-1$
- }
-
- /*
- * (non-Javadoc)
- *
- * @see org.eclipse.debug.core.model.IVariable#hasValueChanged()
- */
- public boolean hasValueChanged() throws DebugException {
- if ( isDisposed() )
- return false;
- IInternalVariable iv = getCurrentInternalVariable();
- return ( iv != null ) ? iv.isChanged() : false;
- }
-
- /*
- * (non-Javadoc)
- *
- * @see org.eclipse.cdt.debug.core.model.IFormatSupport#supportsFormatting()
- */
- public boolean supportsFormatting() {
- return true;
- }
-
- /*
- * (non-Javadoc)
- *
- * @see org.eclipse.cdt.debug.core.model.IFormatSupport#getFormat()
- */
- public CVariableFormat getFormat() {
- return fFormat;
- }
-
- /*
- * (non-Javadoc)
- *
- * @see org.eclipse.cdt.debug.core.model.IFormatSupport#changeFormat(org.eclipse.cdt.debug.core.model.CVariableFormat)
- */
- public void changeFormat( CVariableFormat format ) throws DebugException {
- setFormat( format );
- resetValue();
- }
-
- /*
- * (non-Javadoc)
- * Allow this operation only for the pointer types (???).
- *
- * @see org.eclipse.cdt.debug.core.model.ICastToArray#canCastToArray()
- */
- public boolean canCastToArray() {
- ICType type;
- try {
- type = getType();
- return ( getOriginal() != null && isEnabled() && type.isPointer() );
- }
- catch( DebugException e ) {
- }
- return false;
- }
-
- /*
- * (non-Javadoc)
- *
- * @see org.eclipse.cdt.debug.core.model.ICastToArray#castToArray(int, int)
- */
- public void castToArray( int startIndex, int length ) throws DebugException {
- IInternalVariable current = getCurrentInternalVariable();
- if ( current != null ) {
- IInternalVariable newVar = current.createShadow( startIndex, length );
- if ( getShadow() != null )
- getShadow().dispose( true );
- setShadow( newVar );
- // If casting of variable to a type or array causes an error, the status
- // of the variable is set to "error" and it can't be reset by subsequent castings.
- resetValue();
- }
- }
-
- /*
- * (non-Javadoc)
- *
- * @see org.eclipse.debug.core.model.IValueModification#setValue(java.lang.String)
- */
- public void setValue( String expression ) throws DebugException {
- IInternalVariable iv = getCurrentInternalVariable();
- if ( iv != null ) {
- String newExpression = processExpression( expression );
- iv.setValue( newExpression );
- }
- }
-
- /*
- * (non-Javadoc)
- *
- * @see org.eclipse.debug.core.model.IValueModification#setValue(org.eclipse.debug.core.model.IValue)
- */
- public void setValue( IValue value ) throws DebugException {
- notSupported( CoreModelMessages.getString( "CVariable.3" ) ); //$NON-NLS-1$
- }
-
- /*
- * (non-Javadoc)
- *
- * @see org.eclipse.debug.core.model.IValueModification#supportsValueModification()
- */
- public boolean supportsValueModification() {
- try {
- return getCurrentInternalVariable().isEditable();
- }
- catch( DebugException e ) {
- }
- return false;
- }
-
- /*
- * (non-Javadoc)
- *
- * @see org.eclipse.debug.core.model.IValueModification#verifyValue(java.lang.String)
- */
- public boolean verifyValue( String expression ) throws DebugException {
- return true;
- }
-
- /*
- * (non-Javadoc)
- *
- * @see org.eclipse.debug.core.model.IValueModification#verifyValue(org.eclipse.debug.core.model.IValue)
- */
- public boolean verifyValue( IValue value ) throws DebugException {
- return value.getDebugTarget().equals( getDebugTarget() );
- }
-
- /*
- * (non-Javadoc)
- *
- * @see org.eclipse.cdt.debug.core.model.ICastToType#canCast()
- */
- public boolean canCast() {
- return ( getOriginal() != null && isEnabled() );
- }
-
- /*
- * (non-Javadoc)
- *
- * @see org.eclipse.cdt.debug.core.model.ICastToType#getCurrentType()
- */
- public String getCurrentType() {
- String typeName = ""; //$NON-NLS-1$
- try {
- typeName = getReferenceTypeName();
- }
- catch( DebugException e ) {
- }
- return typeName;
- }
-
- /*
- * (non-Javadoc)
- *
- * @see org.eclipse.cdt.debug.core.model.ICastToType#cast(java.lang.String)
- */
- public void cast( String type ) throws DebugException {
- IInternalVariable current = getCurrentInternalVariable();
- if ( current != null ) {
- IInternalVariable newVar = current.createShadow( type );
- if ( getShadow() != null )
- getShadow().dispose( true );
- setShadow( newVar );
- // If casting of variable to a type or array causes an error, the status
- // of the variable is set to "error" and it can't be reset by subsequent castings.
- resetValue();
- }
- }
-
- /*
- * (non-Javadoc)
- *
- * @see org.eclipse.cdt.debug.core.model.ICastToType#restoreOriginal()
- */
- public void restoreOriginal() throws DebugException {
- IInternalVariable oldVar = getShadow();
- setShadow( null );
- if ( oldVar != null )
- oldVar.dispose( true );
- IInternalVariable iv = getOriginal();
- if ( iv != null )
- iv.invalidateValue();
- // If casting of variable to a type or array causes an error, the status
- // of the variable is set to "error" and it can't be reset by subsequent castings.
- resetValue();
- }
-
- /*
- * (non-Javadoc)
- *
- * @see org.eclipse.cdt.debug.core.model.ICastToType#isCasted()
- */
- public boolean isCasted() {
- return ( getShadow() != null );
- }
-
- /*
- * (non-Javadoc)
- *
- * @see org.eclipse.cdt.debug.core.cdi.event.ICDIEventListener#handleDebugEvents(org.eclipse.cdt.debug.core.cdi.event.ICDIEvent[])
- */
- public void handleDebugEvents( ICDIEvent[] events ) {
- IInternalVariable iv = getCurrentInternalVariable();
- if ( iv == null )
- return;
- for( int i = 0; i < events.length; i++ ) {
- ICDIEvent event = events[i];
- ICDIObject source = event.getSource();
- if ( source == null )
- continue;
- ICDITarget target = source.getTarget();
- if ( target.equals( getCDITarget() ) ) {
- if ( event instanceof ICDIMemoryChangedEvent &&
- target.getConfiguration() instanceof ICDITargetConfiguration3 &&
- ((ICDITargetConfiguration3)target.getConfiguration()).needsVariablesUpdated(event)) {
- resetValue();
- }
- else if ( event instanceof ICDIChangedEvent ) {
- if ( source instanceof ICDIVariable && iv.isSameVariable( (ICDIVariable)source ) ) {
- handleChangedEvent( (ICDIChangedEvent)event );
- }
- }
- else if ( event instanceof ICDIResumedEvent ) {
- handleResumedEvent( (ICDIResumedEvent)event );
- }
- }
- }
- }
-
- private void handleResumedEvent( ICDIResumedEvent event ) {
- boolean changed = false;
- if ( hasErrors() ) {
- resetStatus();
- changed = true;
- IInternalVariable iv = getCurrentInternalVariable();
- if ( iv != null )
- iv.invalidateValue();
- }
- if ( changed )
- fireChangeEvent( DebugEvent.STATE );
- }
-
- private void handleChangedEvent( ICDIChangedEvent event ) {
- IInternalVariable iv = getCurrentInternalVariable();
- if ( iv != null ) {
- iv.setChanged( true );
- fireChangeEvent( DebugEvent.STATE );
- }
- }
-
- private IInternalVariable getCurrentInternalVariable() {
- if ( getShadow() != null )
- return getShadow();
- return getOriginal();
- }
-
- private IInternalVariable getOriginal() {
- return fOriginal;
- }
-
- protected void setOriginal( IInternalVariable original ) {
- fOriginal = original;
- }
-
- private IInternalVariable getShadow() {
- return fShadow;
- }
-
- private void setShadow( IInternalVariable shadow ) {
- fShadow = shadow;
- }
-
- protected boolean isBookkeepingEnabled() {
- boolean result = false;
- try {
- result = getLaunch().getLaunchConfiguration().getAttribute( ICDTLaunchConfigurationConstants.ATTR_DEBUGGER_ENABLE_VARIABLE_BOOKKEEPING, false );
- }
- catch( CoreException e ) {
- }
- return result;
- }
-
- abstract protected void createOriginal( ICDIVariableDescriptor vo );
-
- protected boolean hasErrors() {
- return !isOK();
- }
-
- protected void setChanged( boolean changed ) {
- IInternalVariable iv = getCurrentInternalVariable();
- if ( iv != null ) {
- iv.setChanged( changed );
- }
- }
-
- protected void resetValue() {
- IInternalVariable iv = getCurrentInternalVariable();
- if ( iv != null ) {
- resetStatus();
- iv.resetValue();
- fireChangeEvent( DebugEvent.STATE );
- }
- }
-
- private String processExpression( String oldExpression ) throws DebugException {
- return oldExpression;
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.cdt.debug.internal.core.model.AbstractCVariable#dispose()
- */
- public void dispose() {
- // Hack: do not destroy local variables
- internalDispose( false );
- setDisposed( true );
- }
-
- protected int sizeof() {
- IInternalVariable iv = getCurrentInternalVariable();
- return ( iv != null ) ? iv.sizeof() : -1;
- }
-
- /**
- * Compares the original internal variables.
- * @see java.lang.Object#equals(java.lang.Object)
- */
- public boolean equals( Object obj ) {
- if ( obj instanceof CVariable ) {
- // A disposed copy can be stored in the viewer.
- // false should be returned to force the viewer to
- // replace it by a new variable. See bug #115385
- if ( isDisposed() != ((CVariable)obj).isDisposed() )
- return false;
- IInternalVariable iv = getOriginal();
- return ( iv != null ) ? iv.equals( ((CVariable)obj).getOriginal() ) : false;
- }
- return false;
- }
-
- protected boolean sameVariable( ICDIVariableDescriptor vo ) {
- IInternalVariable iv = getOriginal();
- return ( iv != null && iv.isSameDescriptor( vo ) );
- }
-
- protected void setFormat( CVariableFormat format ) {
- fFormat = format;
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.cdt.debug.core.model.ICVariable#getExpressionString()
- */
- public String getExpressionString() throws DebugException {
- IInternalVariable iv = getCurrentInternalVariable();
- return ( iv != null ) ? iv.getQualifiedName() : null;
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.cdt.debug.internal.core.model.AbstractCVariable#preserve()
- */
- protected void preserve() {
- resetStatus();
- IInternalVariable iv = getCurrentInternalVariable();
- if ( iv != null )
- iv.preserve();
- }
-
- protected void internalDispose( boolean destroy ) {
- getCDISession().getEventManager().removeEventListener( this );
- IInternalVariable iv = getOriginal();
- if ( iv != null )
- iv.dispose( destroy );
- iv = getShadow();
- if ( iv != null )
- iv.dispose( destroy );
- }
-
- protected boolean isDisposed() {
- return fIsDisposed;
- }
-
- protected void setDisposed( boolean isDisposed ) {
- fIsDisposed = isDisposed;
- }
-
- protected void invalidateValue() {
- resetStatus();
- IInternalVariable iv = getCurrentInternalVariable();
- if ( iv != null )
- iv.invalidateValue();
- }
-
- protected void setName( String name ) {
- fName = name;
- }
-}
diff --git a/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/model/CVariableFactory.java b/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/model/CVariableFactory.java
deleted file mode 100644
index fc59eb021b8..00000000000
--- a/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/model/CVariableFactory.java
+++ /dev/null
@@ -1,77 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004, 2005 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.internal.core.model;
-
-import java.text.MessageFormat;
-
-import org.eclipse.cdt.core.IBinaryParser.ISymbol;
-import org.eclipse.cdt.core.model.IBinaryModule;
-import org.eclipse.cdt.core.model.ICElement;
-import org.eclipse.cdt.debug.core.cdi.model.ICDIVariableDescriptor;
-import org.eclipse.cdt.debug.core.model.IGlobalVariableDescriptor;
-import org.eclipse.core.runtime.IPath;
-import org.eclipse.core.runtime.Path;
-
-/**
- * Provides factory methods for the variable types.
- */
-public class CVariableFactory {
-
- public static CLocalVariable createLocalVariable( CDebugElement parent, ICDIVariableDescriptor cdiVariableObject ) {
- return new CLocalVariable( parent, cdiVariableObject );
- }
-
- public static CLocalVariable createLocalVariableWithError( CDebugElement parent, ICDIVariableDescriptor cdiVariableObject, String message ) {
- return new CLocalVariable( parent, cdiVariableObject, message );
- }
-
- public static IGlobalVariableDescriptor createGlobalVariableDescriptor( final String name, final IPath path ) {
-
- return new IGlobalVariableDescriptor() {
-
- public String getName() {
- return name;
- }
-
- public IPath getPath() {
- return ( path != null ) ? path : new Path( "" ); //$NON-NLS-1$
- }
-
- public String toString() {
- return MessageFormat.format( "{0}::{1}", new String[] { getPath().toOSString(), getName() } ); //$NON-NLS-1$
- }
-
- public boolean equals( Object obj ) {
- if ( !(obj instanceof IGlobalVariableDescriptor) )
- return false;
- IGlobalVariableDescriptor d = (IGlobalVariableDescriptor)obj;
- return ( getName().compareTo( d.getName() ) == 0 && getPath().equals( d.getPath() ) );
- }
- };
- }
-
- public static IGlobalVariableDescriptor createGlobalVariableDescriptor( final org.eclipse.cdt.core.model.IVariable var ) {
- IPath path = new Path( "" ); //$NON-NLS-1$
- ICElement parent = var.getParent();
- if ( parent instanceof IBinaryModule ) {
- path = ((IBinaryModule)parent).getPath();
- }
- return createGlobalVariableDescriptor( var.getElementName(), path );
- }
-
- public static IGlobalVariableDescriptor createGlobalVariableDescriptor( ISymbol symbol ) {
- return createGlobalVariableDescriptor( symbol.getName(), symbol.getFilename() );
- }
-
- public static CGlobalVariable createGlobalVariable( CDebugElement parent, IGlobalVariableDescriptor descriptor, ICDIVariableDescriptor cdiVariableObject ) {
- return new CGlobalVariable( parent, descriptor, cdiVariableObject );
- }
-}
diff --git a/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/model/CoreModelMessages.java b/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/model/CoreModelMessages.java
deleted file mode 100644
index 201a4eabb45..00000000000
--- a/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/model/CoreModelMessages.java
+++ /dev/null
@@ -1,33 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.internal.core.model;
-
-import java.util.MissingResourceException;
-import java.util.ResourceBundle;
-
-public class CoreModelMessages {
-
- private static final String BUNDLE_NAME = "org.eclipse.cdt.debug.internal.core.model.CoreModelMessages"; //$NON-NLS-1$
-
- private static final ResourceBundle RESOURCE_BUNDLE = ResourceBundle.getBundle( BUNDLE_NAME );
-
- private CoreModelMessages() {
- }
-
- public static String getString( String key ) {
- try {
- return RESOURCE_BUNDLE.getString( key );
- }
- catch( MissingResourceException e ) {
- return '!' + key + '!';
- }
- }
-}
diff --git a/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/model/CoreModelMessages.properties b/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/model/CoreModelMessages.properties
deleted file mode 100644
index d8620123400..00000000000
--- a/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/model/CoreModelMessages.properties
+++ /dev/null
@@ -1,42 +0,0 @@
-###############################################################################
-# Copyright (c) 2003, 2006 QNX Software Systems and others.
-# All rights reserved. This program and the accompanying materials
-# are made available under the terms of the Eclipse Public License v1.0
-# which accompanies this distribution, and is available at
-# http://www.eclipse.org/legal/epl-v10.html
-#
-# Contributors:
-# QNX Software Systems - initial API and implementation
-###############################################################################
-CDebugTarget.Unable_to_get_globals_1=Unable to get globals. Reason:
-CArrayPartition.0=Type is not available.
-CArrayPartition.1=Qualified name is not available.
-CDebugTarget.1=Execution is suspended because of error.
-CDebugTarget.0=Error stopping at {0}.
-CDebugTarget.2=Error stopping at {0}.\nReason: {1}\nContinue?
-CModificationVariable.0=Unable to set value.
-CModificationVariable.1=Unable to set value.
-CStackFrame.0={0} at {1}: {2}
-CThread.0=Stack is not available: {0}.
-CThread.1=Stack is not available: {0}.
-CValue.0=not available: {0}
-CVariable.0=not available: {0}
-CVariable.1=not available: {0}
-CVariable.2=Variable does not support value modification.
-CVariable.3=Variable does not support value modification.
-CVariable.4=Qualified name is not available.
-CVariable.5=Type is not available.
-CIndexedValue.0=Index out of bounds.
-CIndexedValue.1=Index out of bounds.
-CIndexedValue.2=Specified range out of bounds.
-CModule.0=Unknown
-CModule.1=Unknown
-CModule.2=Invalid symbols file.
-CModule.4=Not supported
-CModuleManager.0=Error loading symbols.
-CModuleManager.1=Error loading symbols.
-CRegisterGroup.0=Unable to restore register group - invalid memento.
-CRegisterGroup.1=Unable to restore register group - expecting register group element.
-CRegisterGroup.2=Unable to restore register group - missing name attribute.
-CRegisterGroup.3=Unable to restore register - missing attributes.
-CRegisterGroup.4=Register doesn't exist on this target.
diff --git a/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/model/Disassembly.java b/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/model/Disassembly.java
deleted file mode 100644
index b1ac60822c1..00000000000
--- a/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/model/Disassembly.java
+++ /dev/null
@@ -1,151 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.internal.core.model;
-
-import java.math.BigInteger;
-import java.util.ArrayList;
-import org.eclipse.cdt.core.IAddress;
-import org.eclipse.cdt.core.IAddressFactory;
-import org.eclipse.cdt.debug.core.CDebugCorePlugin;
-import org.eclipse.cdt.debug.core.ICDebugConstants;
-import org.eclipse.cdt.debug.core.cdi.CDIException;
-import org.eclipse.cdt.debug.core.cdi.model.ICDIInstruction;
-import org.eclipse.cdt.debug.core.cdi.model.ICDIMixedInstruction;
-import org.eclipse.cdt.debug.core.cdi.model.ICDITarget;
-import org.eclipse.cdt.debug.core.model.ICStackFrame;
-import org.eclipse.cdt.debug.core.model.IDisassembly;
-import org.eclipse.cdt.debug.core.model.IDisassemblyBlock;
-import org.eclipse.cdt.debug.core.model.IExecFileInfo;
-import org.eclipse.debug.core.DebugEvent;
-import org.eclipse.debug.core.DebugException;
-
-/**
- * CDI implementation of IDisassembly
- */
-public class Disassembly extends CDebugElement implements IDisassembly {
-
- final static private int DISASSEMBLY_BLOCK_SIZE = 100;
-
- private DisassemblyBlock[] fBlocks = new DisassemblyBlock[1];
-
- /**
- * Constructor for Disassembly.
- *
- * @param target
- */
- public Disassembly( CDebugTarget target ) {
- super( target );
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.cdt.debug.core.model.IDisassembly#getDisassemblyBlock(org.eclipse.cdt.debug.core.model.ICStackFrame)
- */
- public IDisassemblyBlock getDisassemblyBlock( ICStackFrame frame ) throws DebugException {
- if ( fBlocks[0] == null || !fBlocks[0].contains( frame ) ) {
- fBlocks[0] = createBlock( frame );
- }
- return fBlocks[0];
- }
-
- private DisassemblyBlock createBlock( ICStackFrame frame ) throws DebugException {
- ICDITarget target = (ICDITarget)getDebugTarget().getAdapter( ICDITarget.class );
- if ( target != null ) {
- String fileName = frame.getFile();
- int lineNumber = frame.getLineNumber();
- ICDIMixedInstruction[] mixedInstrs = new ICDIMixedInstruction[0];
- IAddress address = frame.getAddress();
- if ( fileName != null && fileName.length() > 0 ) {
- try {
- mixedInstrs = target.getMixedInstructions( fileName,
- lineNumber,
- CDebugCorePlugin.getDefault().getPluginPreferences().getInt( ICDebugConstants.PREF_MAX_NUMBER_OF_INSTRUCTIONS ) );
- }
- catch( CDIException e ) {
- // ignore and try to get disassembly without source
- }
- }
- // Double check if debugger returns correct address range.
- if ( mixedInstrs.length == 0 ||
- !containsAddress( mixedInstrs, address ) ) {
- try {
- BigInteger addr = new BigInteger( address.toString() );
- ICDIInstruction[] instructions = getFunctionInstructions( target.getInstructions( addr, addr.add( BigInteger.valueOf( DISASSEMBLY_BLOCK_SIZE ) ) ) );
- return DisassemblyBlock.create( this, instructions );
- }
- catch( CDIException e ) {
- targetRequestFailed( e.getMessage(), e );
- }
- }
- else {
- return DisassemblyBlock.create( this, mixedInstrs );
- }
- }
- return null;
- }
-
- private boolean containsAddress( ICDIMixedInstruction[] mi, IAddress address ) {
- for( int i = 0; i < mi.length; ++i ) {
- ICDIInstruction[] instructions = mi[i].getInstructions();
- for ( int j = 0; j < instructions.length; ++j ) {
- if ( address.getValue().equals( instructions[j].getAdress() ) )
- return true;
- }
- }
- return false;
- }
-
- private ICDIInstruction[] getFunctionInstructions( ICDIInstruction[] rawInstructions ) {
- if ( rawInstructions.length > 0 && rawInstructions[0].getFuntionName() != null && rawInstructions[0].getFuntionName().length() > 0 ) {
- ArrayList list = new ArrayList( rawInstructions.length );
- list.add( rawInstructions[0] );
- for( int i = 1; i < rawInstructions.length; ++i ) {
- if ( rawInstructions[0].getFuntionName().equals( rawInstructions[i].getFuntionName() ) ) {
- list.add( rawInstructions[i] );
- }
- }
- return (ICDIInstruction[])list.toArray( new ICDIInstruction[list.size()] );
- }
- return rawInstructions;
- }
-
- public void dispose() {
- for ( int i = 0; i < fBlocks.length; ++i )
- if ( fBlocks[i] != null ) {
- fBlocks[i].dispose();
- fBlocks[i] = null;
- }
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.core.runtime.IAdaptable#getAdapter(java.lang.Class)
- */
- public Object getAdapter( Class adapter ) {
- if ( IExecFileInfo.class.equals( adapter ) )
- return getDebugTarget().getAdapter( adapter );
- return super.getAdapter( adapter );
- }
-
- public void reset() {
- for ( int i = 0; i < fBlocks.length; ++i )
- if ( fBlocks[i] != null ) {
- fBlocks[i].dispose();
- fBlocks[i] = null;
- }
- fireChangeEvent( DebugEvent.CONTENT );
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.cdt.debug.core.model.IDisassembly#getAddressFactory()
- */
- public IAddressFactory getAddressFactory() {
- return ((CDebugTarget)getDebugTarget()).getAddressFactory();
- }
-}
diff --git a/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/model/DisassemblyBlock.java b/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/model/DisassemblyBlock.java
deleted file mode 100644
index a80c3ecac75..00000000000
--- a/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/model/DisassemblyBlock.java
+++ /dev/null
@@ -1,228 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.internal.core.model;
-
-import java.io.File;
-import java.io.FileNotFoundException;
-import java.io.FileReader;
-import java.io.IOException;
-import java.io.LineNumberReader;
-
-import org.eclipse.cdt.core.IAddress;
-import org.eclipse.cdt.core.IAddressFactory;
-import org.eclipse.cdt.debug.core.cdi.model.ICDIInstruction;
-import org.eclipse.cdt.debug.core.cdi.model.ICDIMixedInstruction;
-import org.eclipse.cdt.debug.core.model.IAsmInstruction;
-import org.eclipse.cdt.debug.core.model.IAsmSourceLine;
-import org.eclipse.cdt.debug.core.model.ICStackFrame;
-import org.eclipse.cdt.debug.core.model.IDisassembly;
-import org.eclipse.cdt.debug.core.model.IDisassemblyBlock;
-import org.eclipse.cdt.debug.core.model.IExecFileInfo;
-import org.eclipse.cdt.debug.core.sourcelookup.ICSourceLocator;
-import org.eclipse.core.resources.IFile;
-import org.eclipse.core.resources.IStorage;
-import org.eclipse.core.runtime.IAdaptable;
-import org.eclipse.debug.core.model.ISourceLocator;
-import org.eclipse.debug.core.sourcelookup.ISourceLookupDirector;
-
-/**
- * CDI-based implementation of <code>IDisassemblyBlock</code>.
- */
-public class DisassemblyBlock implements IDisassemblyBlock, IAdaptable {
-
- private IDisassembly fDisassembly;
-
- private Object fSourceElement;
-
- private IAsmSourceLine[] fSourceLines;
-
- private IAddress fStartAddress = null;
-
- private IAddress fEndAddress = null;
-
- private boolean fMixedMode = false;
-
- /**
- * Constructor for DisassemblyBlock.
- */
- private DisassemblyBlock( IDisassembly disassembly ) {
- fDisassembly = disassembly;
- }
-
- public static DisassemblyBlock create( IDisassembly disassembly, ICDIMixedInstruction[] instructions ) {
- DisassemblyBlock block = new DisassemblyBlock( disassembly );
- ISourceLocator locator = disassembly.getDebugTarget().getLaunch().getSourceLocator();
- IAddressFactory factory = ((CDebugTarget)disassembly.getDebugTarget()).getAddressFactory();
- block.initialize( factory, locator, instructions );
- return block;
- }
-
- public static DisassemblyBlock create( IDisassembly disassembly, ICDIInstruction[] instructions ) {
- DisassemblyBlock block = new DisassemblyBlock( disassembly );
- IAddressFactory factory = ((CDebugTarget)disassembly.getDebugTarget()).getAddressFactory();
- block.initialize( factory, instructions );
- return block;
- }
-
- private void initialize( IAddressFactory factory, ICDIInstruction[] instructions ) {
- setMixedMode( false );
- createSourceLines( factory, instructions );
- initializeAddresses();
- }
-
- private void initialize( IAddressFactory factory, ISourceLocator locator, ICDIMixedInstruction[] mi ) {
- setMixedMode( true );
- createSourceLines( factory, locator, mi );
- initializeAddresses();
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.cdt.debug.core.model.IDisassemblyBlock#getDisassembly()
- */
- public IDisassembly getDisassembly() {
- return fDisassembly;
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.cdt.debug.core.model.IDisassemblyBlock#getModuleFile()
- */
- public String getModuleFile() {
- IDisassembly d = getDisassembly();
- if ( d != null ) {
- IExecFileInfo info = (IExecFileInfo)d.getAdapter( IExecFileInfo.class );
- if ( info != null && info.getExecFile() != null ) {
- return info.getExecFile().getPath().toOSString();
- }
- }
- return ""; //$NON-NLS-1$
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.cdt.debug.core.model.IDisassemblyBlock#getSourceElement()
- */
- public Object getSourceElement() {
- return fSourceElement;
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.cdt.debug.core.model.IDisassemblyBlock#contains(org.eclipse.cdt.debug.core.model.ICStackFrame)
- */
- public boolean contains( ICStackFrame frame ) {
- if ( !getDisassembly().getDebugTarget().equals( frame.getDebugTarget() ) )
- return false;
- if ( fStartAddress == null || fEndAddress == null )
- return false;
- IAddress address = frame.getAddress();
- return (address.compareTo( fStartAddress ) >= 0 && address.compareTo( fEndAddress ) <= 0);
- }
-
- /*
- * (non-Javadoc)
- *
- * @see org.eclipse.cdt.debug.core.model.IDisassemblyBlock#getSourceLines()
- */
- public IAsmSourceLine[] getSourceLines() {
- return fSourceLines;
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.core.runtime.IAdaptable#getAdapter(java.lang.Class)
- */
- public Object getAdapter( Class adapter ) {
- return null;
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.cdt.debug.core.model.IDisassemblyBlock#isMixedMode()
- */
- public boolean isMixedMode() {
- return fMixedMode;
- }
-
- public void dispose() {
- }
-
- private void createSourceLines( IAddressFactory factory, ISourceLocator locator, ICDIMixedInstruction[] mi ) {
- IAsmSourceLine[] result = new IAsmSourceLine[mi.length];
- LineNumberReader reader = null;
- if ( result.length > 0 && locator != null ) {
- String fileName = mi[0].getFileName();
- Object element = null;
- if ( locator instanceof ISourceLookupDirector ) {
- element = ((ISourceLookupDirector)locator).getSourceElement( fileName );
- }
- if ( locator instanceof ICSourceLocator ) {
- element = ((ICSourceLocator)locator).findSourceElement( fileName );
- }
- fSourceElement = element;
- File file = null;
- if ( element instanceof IFile ) {
- file = ((IFile)element).getLocation().toFile();
- }
- else if ( element instanceof IStorage ) {
- file = ((IStorage)element).getFullPath().toFile();
- }
- if ( file != null ) {
- try {
- reader = new LineNumberReader( new FileReader( file ) );
- }
- catch( FileNotFoundException e ) {
- }
- }
- }
- for ( int i = 0; i < result.length; ++i ) {
- String text = null;
- boolean failed = false;
- int lineNumber = mi[i].getLineNumber();
- if ( reader != null ) {
- while( reader.getLineNumber() + 1 < lineNumber ) {
- try {
- if ( reader.readLine() == null ) {
- // break if the end of file is reached (see bug #123745)
- failed = true;
- break;
- }
- }
- catch( IOException e ) {
- }
- }
- if ( !failed && reader.getLineNumber() + 1 == lineNumber ) {
- try {
- text = reader.readLine() + '\n';
- }
- catch( IOException e ) {
- }
- }
- }
- result[i] = new AsmSourceLine( factory, text, lineNumber, mi[i].getInstructions() );
- }
- fSourceLines = result;
- }
-
- private void createSourceLines( IAddressFactory factory, ICDIInstruction[] instructions ) {
- fSourceLines = new IAsmSourceLine[] { new AsmSourceLine( factory, "", instructions ) }; //$NON-NLS-1$
- }
-
- private void initializeAddresses() {
- for ( int i = 0; i < fSourceLines.length; ++i ) {
- IAsmInstruction[] instr = fSourceLines[i].getInstructions();
- if ( instr.length > 0 ) {
- if ( fStartAddress == null )
- fStartAddress = instr[0].getAdress();
- fEndAddress = instr[instr.length - 1].getAdress();
- }
- }
- }
-
- private void setMixedMode( boolean mixedMode ) {
- this.fMixedMode = mixedMode;
- }
-}
diff --git a/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/sourcelookup/AbsolutePathSourceContainerType.java b/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/sourcelookup/AbsolutePathSourceContainerType.java
deleted file mode 100644
index 74c2115c8ec..00000000000
--- a/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/sourcelookup/AbsolutePathSourceContainerType.java
+++ /dev/null
@@ -1,29 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2006 Nokia and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * Nokia - Initial implementation (159833)
- *******************************************************************************/
-
-package org.eclipse.cdt.debug.internal.core.sourcelookup;
-
-import org.eclipse.cdt.debug.core.sourcelookup.AbsolutePathSourceContainer;
-import org.eclipse.core.runtime.CoreException;
-import org.eclipse.debug.core.sourcelookup.ISourceContainer;
-import org.eclipse.debug.core.sourcelookup.containers.AbstractSourceContainerTypeDelegate;
-
-public class AbsolutePathSourceContainerType extends AbstractSourceContainerTypeDelegate {
-
- public ISourceContainer createSourceContainer(String memento) throws CoreException {
- return new AbsolutePathSourceContainer();
- }
-
- public String getMemento(ISourceContainer container) throws CoreException {
- return "";
- }
-
-}
diff --git a/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/sourcelookup/CDirectorySourceContainerType.java b/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/sourcelookup/CDirectorySourceContainerType.java
deleted file mode 100644
index c6220305424..00000000000
--- a/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/sourcelookup/CDirectorySourceContainerType.java
+++ /dev/null
@@ -1,65 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.internal.core.sourcelookup;
-
-import org.eclipse.core.runtime.CoreException;
-import org.eclipse.core.runtime.Path;
-import org.eclipse.debug.core.sourcelookup.ISourceContainer;
-import org.eclipse.debug.core.sourcelookup.containers.AbstractSourceContainerTypeDelegate;
-import org.eclipse.debug.core.sourcelookup.containers.DirectorySourceContainer;
-import org.w3c.dom.Document;
-import org.w3c.dom.Element;
-import org.w3c.dom.Node;
-
-/**
- * See <code>CDirectorySourceContainer</code>.
- */
-public class CDirectorySourceContainerType extends AbstractSourceContainerTypeDelegate {
-
- /* (non-Javadoc)
- * @see org.eclipse.debug.internal.core.sourcelookup.ISourceContainerType#createSourceContainer(java.lang.String)
- */
- public ISourceContainer createSourceContainer( String memento ) throws CoreException {
- Node node = parseDocument( memento );
- if ( node.getNodeType() == Node.ELEMENT_NODE ) {
- Element element = (Element)node;
- if ( "directory".equals( element.getNodeName() ) ) { //$NON-NLS-1$
- String string = element.getAttribute( "path" ); //$NON-NLS-1$
- if ( string == null || string.length() == 0 ) {
- abort( InternalSourceLookupMessages.getString( "CDirectorySourceContainerType.0" ), null ); //$NON-NLS-1$
- }
- String nest = element.getAttribute( "nest" ); //$NON-NLS-1$
- boolean nested = "true".equals( nest ); //$NON-NLS-1$
- return new DirectorySourceContainer( new Path( string ), nested );
- }
- abort( InternalSourceLookupMessages.getString( "CDirectorySourceContainerType.1" ), null ); //$NON-NLS-1$
- }
- abort( InternalSourceLookupMessages.getString( "CDirectorySourceContainerType.2" ), null ); //$NON-NLS-1$
- return null;
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.debug.internal.core.sourcelookup.ISourceContainerType#getMemento(org.eclipse.debug.internal.core.sourcelookup.ISourceContainer)
- */
- public String getMemento( ISourceContainer container ) throws CoreException {
- DirectorySourceContainer folder = (DirectorySourceContainer)container;
- Document document = newDocument();
- Element element = document.createElement( "directory" ); //$NON-NLS-1$
- element.setAttribute( "path", folder.getDirectory().getAbsolutePath() ); //$NON-NLS-1$
- String nest = "false"; //$NON-NLS-1$
- if ( folder.isComposite() ) {
- nest = "true"; //$NON-NLS-1$
- }
- element.setAttribute( "nest", nest ); //$NON-NLS-1$
- document.appendChild( element );
- return serializeDocument( document );
- }
-}
diff --git a/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/sourcelookup/CDirectorySourceLocation.java b/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/sourcelookup/CDirectorySourceLocation.java
deleted file mode 100644
index 13889604976..00000000000
--- a/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/sourcelookup/CDirectorySourceLocation.java
+++ /dev/null
@@ -1,535 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.internal.core.sourcelookup;
-
-import java.io.File;
-import java.io.FileFilter;
-import java.io.IOException;
-import java.io.StringReader;
-import java.text.MessageFormat;
-import java.util.ArrayList;
-import java.util.Arrays;
-import java.util.LinkedList;
-import java.util.List;
-
-import javax.xml.parsers.DocumentBuilder;
-import javax.xml.parsers.DocumentBuilderFactory;
-import javax.xml.parsers.ParserConfigurationException;
-import javax.xml.transform.TransformerException;
-
-import org.eclipse.cdt.core.resources.FileStorage;
-import org.eclipse.cdt.debug.core.CDebugCorePlugin;
-import org.eclipse.cdt.debug.core.CDebugUtils;
-import org.eclipse.cdt.debug.core.sourcelookup.ICSourceLocation;
-import org.eclipse.cdt.debug.core.sourcelookup.IDirectorySourceLocation;
-import org.eclipse.core.resources.IFile;
-import org.eclipse.core.resources.IStorage;
-import org.eclipse.core.resources.ResourcesPlugin;
-import org.eclipse.core.runtime.CoreException;
-import org.eclipse.core.runtime.IPath;
-import org.eclipse.core.runtime.IStatus;
-import org.eclipse.core.runtime.Path;
-import org.eclipse.core.runtime.Status;
-import org.w3c.dom.Document;
-import org.w3c.dom.Element;
-import org.xml.sax.InputSource;
-import org.xml.sax.SAXException;
-
-/**
- *
- * Locates source elements in a directory in the local
- * file system. Returns instances of <code>FileStorage</code>.
- *
- * @since Sep 23, 2002
- */
-public class CDirectorySourceLocation implements IDirectorySourceLocation
-{
- private static final String ELEMENT_NAME = "cDirectorySourceLocation"; //$NON-NLS-1$
- private static final String ATTR_DIRECTORY = "directory"; //$NON-NLS-1$
- private static final String ATTR_ASSOCIATION = "association"; //$NON-NLS-1$
- private static final String ATTR_SEARCH_SUBFOLDERS = "searchSubfolders"; //$NON-NLS-1$
-
- /**
- * The root directory of this source location
- */
- private IPath fDirectory;
-
- /**
- * The associted path of this source location.
- */
- private IPath fAssociation = null;
-
- private boolean fSearchForDuplicateFiles = false;
-
- private boolean fSearchSubfolders = false;
-
- private File[] fFolders = null;
-
- /**
- * Constructor for CDirectorySourceLocation.
- */
- public CDirectorySourceLocation()
- {
- }
-
- /**
- * Constructor for CDirectorySourceLocation.
- */
- public CDirectorySourceLocation( IPath directory, IPath association, boolean searchSubfolders )
- {
- setDirectory( directory );
- setAssociation( association );
- setSearchSubfolders( searchSubfolders );
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.cdt.debug.core.sourcelookup.ICSourceLocation#findSourceElement(String)
- */
- public Object findSourceElement( String name ) throws CoreException
- {
- Object result = null;
- if ( !isEmpty( name ) && getDirectory() != null )
- {
- File file = new File( name );
- if ( file.isAbsolute() )
- result = findFileByAbsolutePath( name );
- else
- result = findFileByRelativePath( name );
- if ( result == null && getAssociation() != null )
- {
- IPath path = new Path( name );
- if ( path.segmentCount() > 1 && getAssociation().isPrefixOf( path ) )
- {
- path = getDirectory().append( path.removeFirstSegments( getAssociation().segmentCount() ) );
- result = findFileByAbsolutePath( path.toOSString() );
- }
- }
- }
- return result;
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.core.runtime.IAdaptable#getAdapter(Class)
- */
- public Object getAdapter( Class adapter )
- {
- if ( adapter.equals( ICSourceLocation.class ) )
- return this;
- if ( adapter.equals( CDirectorySourceLocation.class ) )
- return this;
- if ( adapter.equals( IPath.class ) )
- return getDirectory();
- return null;
- }
-
- /**
- * Sets the directory in which source elements will be searched for.
- *
- * @param directory a directory
- */
- private void setDirectory( IPath directory )
- {
- fDirectory = directory;
- }
-
- /**
- * Returns the root directory of this source location.
- *
- * @return directory
- */
- public IPath getDirectory()
- {
- return fDirectory;
- }
-
- public void getDirectory( IPath path )
- {
- fDirectory = path;
- }
-
- public void setAssociation( IPath association )
- {
- fAssociation = association;
- }
-
- public IPath getAssociation()
- {
- return fAssociation;
- }
-
- private Object findFileByAbsolutePath( String name )
- {
- File file = new File( name );
- if ( !file.isAbsolute() )
- return null;
- File[] folders = getFolders();
- if ( folders != null )
- {
- LinkedList list = new LinkedList();
- for ( int i = 0; i < folders.length; ++i )
- {
- Object result = findFileByAbsolutePath( folders[i], name );
- if ( result instanceof List )
- {
- if ( searchForDuplicateFiles() )
- list.addAll( (List)result );
- else
- return list.getFirst();
- }
- else if ( result != null )
- {
- if ( searchForDuplicateFiles() )
- list.add( result );
- else
- return result;
- }
- }
- if ( list.size() > 0 )
- return ( list.size() == 1 ) ? list.getFirst() : list;
- }
- return null;
- }
-
- private Object findFileByAbsolutePath( File folder, String name )
- {
- File file = new File( name );
- if ( !file.isAbsolute() )
- return null;
- IPath filePath = new Path( name );
- IPath path = new Path( folder.getAbsolutePath() );
- IPath association = getAssociation();
- if ( !isPrefix( path, filePath ) || path.segmentCount() + 1 != filePath.segmentCount() )
- {
- if ( association != null && isPrefix( association, filePath ) && association.segmentCount() + 1 == filePath.segmentCount() )
- filePath = path.append( filePath.removeFirstSegments( association.segmentCount() ) );
- else
- return null;
- }
-
- // Try for a file in another workspace project
- IFile[] wsFiles = ResourcesPlugin.getWorkspace().getRoot().findFilesForLocation( filePath );
- LinkedList list = new LinkedList();
- for ( int j = 0; j < wsFiles.length; ++j )
- if ( wsFiles[j].exists() )
- {
- if ( !searchForDuplicateFiles() )
- return wsFiles[j];
- list.add( wsFiles[j] );
- }
- if ( list.size() > 0 )
- return ( list.size() == 1 ) ? list.getFirst() : list;
-
- file = filePath.toFile();
- if ( file.exists() && file.isFile() )
- {
- return createExternalFileStorage( filePath );
- }
- return null;
- }
-
- private Object findFileByRelativePath( String fileName )
- {
- File[] folders = getFolders();
- if ( folders != null )
- {
- LinkedList list = new LinkedList();
- for ( int i = 0; i < folders.length; ++i )
- {
- Object result = findFileByRelativePath( folders[i], fileName );
- if ( result instanceof List )
- {
- if ( searchForDuplicateFiles() )
- list.addAll( (List)result );
- else
- return list.getFirst();
- }
- else if ( result != null )
- {
- if ( searchForDuplicateFiles() )
- list.add( result );
- else
- return result;
- }
- }
- if ( list.size() > 0 )
- return ( list.size() == 1 ) ? list.getFirst() : list;
- }
- return null;
- }
-
- private Object findFileByRelativePath( File folder, String fileName )
- {
- IPath path = new Path( folder.getAbsolutePath() );
- path = path.append( fileName );
- File file = path.toFile();
- if ( file.exists() && file.isFile() )
- {
- path = new Path( file.getAbsolutePath() );
- IFile[] wsFiles = ResourcesPlugin.getWorkspace().getRoot().findFilesForLocation( path );
- LinkedList list = new LinkedList();
- for ( int j = 0; j < wsFiles.length; ++j )
- if ( wsFiles[j].exists() )
- {
- if ( !searchForDuplicateFiles() )
- return wsFiles[j];
- list.add( wsFiles[j] );
- }
- if ( list.size() > 0 )
- return ( list.size() == 1 ) ? list.getFirst() : list;
- return createExternalFileStorage( path );
- }
- return null;
- }
-
- private IStorage createExternalFileStorage( IPath path )
- {
- return new FileStorage( path );
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.cdt.debug.core.sourcelookup.ICSourceLocation#getMemento()
- */
- public String getMemento() throws CoreException
- {
- Document document = null;
- Throwable ex = null;
- try
- {
- document = DocumentBuilderFactory.newInstance().newDocumentBuilder().newDocument();
- Element node = document.createElement( ELEMENT_NAME );
- document.appendChild( node );
- node.setAttribute( ATTR_DIRECTORY, getDirectory().toOSString() );
- if ( getAssociation() != null )
- node.setAttribute( ATTR_ASSOCIATION, getAssociation().toOSString() );
- node.setAttribute( ATTR_SEARCH_SUBFOLDERS, Boolean.valueOf( searchSubfolders() ).toString() );
- return CDebugUtils.serializeDocument( document );
- }
- catch( ParserConfigurationException e )
- {
- ex = e;
- }
- catch( IOException e )
- {
- ex = e;
- }
- catch( TransformerException e )
- {
- ex = e;
- }
- abort( MessageFormat.format( InternalSourceLookupMessages.getString( "CDirectorySourceLocation.0" ), new String[] { getDirectory().toOSString() } ), ex ); //$NON-NLS-1$
- // execution will not reach here
- return null;
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.cdt.debug.core.sourcelookup.ICSourceLocation#initializeFrom(java.lang.String)
- */
- public void initializeFrom( String memento ) throws CoreException
- {
- Exception ex = null;
- try
- {
- Element root = null;
- DocumentBuilder parser = DocumentBuilderFactory.newInstance().newDocumentBuilder();
- StringReader reader = new StringReader( memento );
- InputSource source = new InputSource( reader );
- root = parser.parse( source ).getDocumentElement();
-
- String dir = root.getAttribute( ATTR_DIRECTORY );
- if ( isEmpty( dir ) )
- {
- abort( InternalSourceLookupMessages.getString( "CDirectorySourceLocation.1" ), null ); //$NON-NLS-1$
- }
- else
- {
- IPath path = new Path( dir );
- if ( path.isValidPath( dir ) && path.toFile().isDirectory() && path.toFile().exists() )
- {
- setDirectory( path );
- }
- else
- {
- abort( MessageFormat.format( InternalSourceLookupMessages.getString( "CDirectorySourceLocation.2" ), new String[] { dir } ), null ); //$NON-NLS-1$
- }
- }
- dir = root.getAttribute( ATTR_ASSOCIATION );
- if ( isEmpty( dir ) )
- {
- setAssociation( null );
- }
- else
- {
- IPath path = new Path( dir );
- if ( path.isValidPath( dir ) )
- {
- setAssociation( path );
- }
- else
- {
- setAssociation( null );
- }
- }
- setSearchSubfolders( Boolean.valueOf( root.getAttribute( ATTR_SEARCH_SUBFOLDERS ) ).booleanValue() );
- return;
- }
- catch( ParserConfigurationException e )
- {
- ex = e;
- }
- catch( SAXException e )
- {
- ex = e;
- }
- catch( IOException e )
- {
- ex = e;
- }
- abort( InternalSourceLookupMessages.getString( "CDirectorySourceLocation.3" ), ex ); //$NON-NLS-1$
- }
-
- /**
- * Throws an internal error exception
- */
- private void abort( String message, Throwable e ) throws CoreException
- {
- IStatus s = new Status( IStatus.ERROR,
- CDebugCorePlugin.getUniqueIdentifier(),
- CDebugCorePlugin.INTERNAL_ERROR,
- message,
- e );
- throw new CoreException( s );
- }
-
- private boolean isEmpty( String string )
- {
- return string == null || string.length() == 0;
- }
-
- /* (non-Javadoc)
- * @see java.lang.Object#equals(java.lang.Object)
- */
- public boolean equals( Object obj )
- {
- if ( obj instanceof IDirectorySourceLocation )
- {
- IPath dir = ((IDirectorySourceLocation)obj).getDirectory();
- IPath association = ((IDirectorySourceLocation)obj).getAssociation();
- if ( dir == null )
- return false;
- boolean result = dir.equals( getDirectory() );
- if ( result )
- {
- if ( association == null && getAssociation() == null )
- return true;
- if ( association != null )
- return association.equals( getAssociation() );
- }
- }
- return false;
- }
-
- private boolean isPrefix( IPath prefix, IPath path )
- {
- int segCount = prefix.segmentCount();
- if ( segCount >= path.segmentCount() )
- return false;
- String prefixString = prefix.toOSString();
- String pathString = path.removeLastSegments( path.segmentCount() - segCount ).toOSString();
- return prefixString.equalsIgnoreCase( pathString );
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.cdt.debug.core.sourcelookup.ICSourceLocation#setSearchForDuplicateFiles(boolean)
- */
- public void setSearchForDuplicateFiles( boolean search )
- {
- fSearchForDuplicateFiles = search;
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.cdt.debug.core.sourcelookup.ICSourceLocation#searchForDuplicateFiles()
- */
- public boolean searchForDuplicateFiles()
- {
- return fSearchForDuplicateFiles;
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.cdt.debug.core.sourcelookup.IDirectorySourceLocation#searchSubfolders()
- */
- public boolean searchSubfolders()
- {
- return fSearchSubfolders;
- }
-
- public void setSearchSubfolders( boolean search )
- {
- resetFolders();
- fSearchSubfolders = search;
- }
-
- protected File[] getFolders()
- {
- if ( fFolders == null )
- initializeFolders();
- return fFolders;
- }
-
- protected void resetFolders()
- {
- fFolders = null;
- }
-
- private void initializeFolders()
- {
- if ( getDirectory() != null )
- {
- ArrayList list = new ArrayList();
- File root = getDirectory().toFile();
- list.add( root );
- if ( searchSubfolders() )
- list.addAll( getFileFolders( root ) );
- fFolders = (File[])list.toArray( new File[list.size()] );
- }
- }
-
- private List getFileFolders( File file )
- {
- ArrayList list = new ArrayList();
- File[] folders = file.listFiles(
- new FileFilter()
- {
- public boolean accept( File pathname )
- {
- return pathname.isDirectory();
- }
- } );
- list.addAll( Arrays.asList( folders ) );
- for ( int i = 0; i < folders.length; ++i )
- list.addAll( getFileFolders( folders[i] ) );
- return list;
- }
-
- /* (non-Javadoc)
- * @see java.lang.Object#toString()
- */
- public String toString()
- {
- return ( getDirectory() != null ) ? getDirectory().toOSString() : ""; //$NON-NLS-1$
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.cdt.debug.core.sourcelookup.ICSourceLocation#dispose()
- */
- public void dispose()
- {
- }
-}
diff --git a/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/sourcelookup/CProjectSourceLocation.java b/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/sourcelookup/CProjectSourceLocation.java
deleted file mode 100644
index b67dbaa5664..00000000000
--- a/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/sourcelookup/CProjectSourceLocation.java
+++ /dev/null
@@ -1,423 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2005 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.internal.core.sourcelookup;
-
-import java.io.File;
-import java.io.IOException;
-import java.io.StringReader;
-import java.text.MessageFormat;
-import java.util.HashMap;
-import java.util.HashSet;
-import java.util.LinkedList;
-
-import javax.xml.parsers.DocumentBuilder;
-import javax.xml.parsers.DocumentBuilderFactory;
-import javax.xml.parsers.ParserConfigurationException;
-import javax.xml.transform.TransformerException;
-
-import org.eclipse.cdt.debug.core.CDebugCorePlugin;
-import org.eclipse.cdt.debug.core.CDebugUtils;
-import org.eclipse.cdt.debug.core.sourcelookup.ICSourceLocation;
-import org.eclipse.cdt.debug.core.sourcelookup.IProjectSourceLocation;
-import org.eclipse.core.resources.IFile;
-import org.eclipse.core.resources.IProject;
-import org.eclipse.core.resources.IResource;
-import org.eclipse.core.resources.IResourceProxy;
-import org.eclipse.core.resources.IResourceProxyVisitor;
-import org.eclipse.core.resources.ResourcesPlugin;
-import org.eclipse.core.runtime.CoreException;
-import org.eclipse.core.runtime.IPath;
-import org.eclipse.core.runtime.IStatus;
-import org.eclipse.core.runtime.Path;
-import org.eclipse.core.runtime.Status;
-import org.w3c.dom.Document;
-import org.w3c.dom.Element;
-import org.xml.sax.InputSource;
-import org.xml.sax.SAXException;
-
-/**
- *
- * Locates source elements in a Java project. Returns instances of <code>IFile</code>.
- *
- * @since Sep 23, 2002
- */
-public class CProjectSourceLocation implements IProjectSourceLocation
-{
- private static final String ELEMENT_NAME = "cProjectSourceLocation"; //$NON-NLS-1$
- private static final String ATTR_PROJECT = "project"; //$NON-NLS-1$
- private static final String ATTR_GENERIC = "generic"; //$NON-NLS-1$
-
- /**
- * The project associated with this source location
- */
- private IProject fProject;
-
- private IResource[] fFolders;
-
- private HashMap fCache = new HashMap( 20 );
-
- private HashSet fNotFoundCache = new HashSet( 20 );
-
- private boolean fGenerated = true;
-
- private boolean fSearchForDuplicateFiles = false;
-
- /**
- * Constructor for CProjectSourceLocation.
- */
- public CProjectSourceLocation()
- {
- }
-
- /**
- * Constructor for CProjectSourceLocation.
- */
- public CProjectSourceLocation( IProject project )
- {
- setProject( project );
- fGenerated = true;
- }
-
- /**
- * Constructor for CProjectSourceLocation.
- */
- public CProjectSourceLocation( IProject project, boolean generated )
- {
- setProject( project );
- fGenerated = generated;
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.cdt.debug.core.sourcelookup.ICSourceLocation#findSourceElement(String)
- */
- public Object findSourceElement( String name ) throws CoreException
- {
- Object result = null;
- if ( !isEmpty( name ) && getProject() != null && !notFoundCacheLookup( name ) )
- {
- result = cacheLookup( name );
- if ( result == null )
- {
- result = doFindSourceElement( name );
- if ( result != null )
- {
- cacheSourceElement( name, result );
- }
- }
- if ( result == null )
- {
- cacheNotFound( name );
- }
- }
- return result;
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.core.runtime.IAdaptable#getAdapter(Class)
- */
- public Object getAdapter( Class adapter )
- {
- if ( adapter.equals( ICSourceLocation.class ) )
- return this;
- if ( adapter.equals( CProjectSourceLocation.class ) )
- return this;
- if ( adapter.equals( IProject.class ) )
- return getProject();
- return null;
- }
-
- /**
- * Sets the project in which source elements will be searched for.
- *
- * @param project the project
- */
- private void setProject( IProject project )
- {
- fProject = project;
- }
-
- /**
- * Returns the project associated with this source location.
- *
- * @return project
- */
- public IProject getProject()
- {
- return fProject;
- }
-
- private Object doFindSourceElement( String name )
- {
- File file = new File( name );
- return ( file.isAbsolute() ) ? findFileByAbsolutePath( file ) : findFileByRelativePath( name );
- }
-
- private Object findFileByAbsolutePath( File file )
- {
- LinkedList list = new LinkedList();
- if ( file.exists() )
- {
- IPath path = new Path( file.getAbsolutePath() );
- IFile[] wsFiles = CDebugCorePlugin.getWorkspace().getRoot().findFilesForLocation( path );
- for ( int i = 0; i < wsFiles.length; ++i )
- if ( wsFiles[i].getProject().equals( getProject() ) && wsFiles[i].exists() )
- {
- if ( !searchForDuplicateFiles() )
- return wsFiles[i];
- list.add( wsFiles[i] );
- }
- }
- return ( list.size() > 0 ) ? ( ( list.size() == 1 ) ? list.getFirst() : list ) : null;
- }
-
- private Object findFileByRelativePath( String fileName )
- {
- IResource[] folders = getFolders();
- LinkedList list = new LinkedList();
- for ( int i = 0; i < folders.length; ++i )
- {
- if ( list.size() > 0 && !searchForDuplicateFiles() )
- break;
- IPath path = folders[i].getLocation();
- if ( path != null ) {
- path = path.append( fileName );
- File file = new File( path.toOSString() );
- if ( file.exists() )
- {
- IFile[] wsFiles = CDebugCorePlugin.getWorkspace().getRoot().findFilesForLocation( path );
- for ( int j = 0; j < wsFiles.length; ++j )
- if ( wsFiles[j].exists() )
- {
- if ( !searchForDuplicateFiles() )
- return wsFiles[j];
- list.add( wsFiles[j] );
- }
- }
- }
- }
- return ( list.size() > 0 ) ? ( ( list.size() == 1 ) ? list.getFirst() : list ) : null;
- }
-
- private Object cacheLookup( String name )
- {
- return fCache.get( name );
- }
-
- private boolean notFoundCacheLookup( String name )
- {
- return fNotFoundCache.contains( name );
- }
-
- private void cacheSourceElement( String name, Object element )
- {
- fCache.put( name, element );
- }
-
- private void cacheNotFound( String name )
- {
- fNotFoundCache.add( name );
- }
-
- public void dispose()
- {
- fCache.clear();
- fNotFoundCache.clear();
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.cdt.debug.core.sourcelookup.ICSourceLocation#getMemento()
- */
- public String getMemento() throws CoreException
- {
- Document document = null;
- Throwable ex = null;
- try
- {
- document = DocumentBuilderFactory.newInstance().newDocumentBuilder().newDocument();
- Element node = document.createElement( ELEMENT_NAME );
- document.appendChild( node );
- node.setAttribute( ATTR_PROJECT, getProject().getName() );
- node.setAttribute( ATTR_GENERIC, Boolean.valueOf( isGeneric() ).toString() );
- return CDebugUtils.serializeDocument( document );
- }
- catch( ParserConfigurationException e )
- {
- ex = e;
- }
- catch( IOException e )
- {
- ex = e;
- }
- catch( TransformerException e )
- {
- ex = e;
- }
- abort( MessageFormat.format( InternalSourceLookupMessages.getString( "CProjectSourceLocation.0" ), new String[] { getProject().getName() } ), ex ); //$NON-NLS-1$
- // execution will not reach here
- return null;
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.cdt.debug.core.sourcelookup.ICSourceLocation#initializeFrom(java.lang.String)
- */
- public void initializeFrom( String memento ) throws CoreException
- {
- Exception ex = null;
- try
- {
- Element root = null;
- DocumentBuilder parser = DocumentBuilderFactory.newInstance().newDocumentBuilder();
- StringReader reader = new StringReader( memento );
- InputSource source = new InputSource( reader );
- root = parser.parse( source ).getDocumentElement();
-
- String name = root.getAttribute( ATTR_PROJECT );
- if ( isEmpty( name ) )
- {
- abort( InternalSourceLookupMessages.getString( "CProjectSourceLocation.1" ), null ); //$NON-NLS-1$
- }
- else
- {
- IProject project = ResourcesPlugin.getWorkspace().getRoot().getProject( name );
- setProject( project );
- }
- String isGeneric = root.getAttribute( ATTR_GENERIC );
- if ( isGeneric == null || isGeneric.trim().length() == 0 )
- isGeneric = Boolean.FALSE.toString();
- setGenerated( isGeneric.equals( Boolean.TRUE.toString() ) );
- return;
- }
- catch( ParserConfigurationException e )
- {
- ex = e;
- }
- catch( SAXException e )
- {
- ex = e;
- }
- catch( IOException e )
- {
- ex = e;
- }
- abort( InternalSourceLookupMessages.getString( "CProjectSourceLocation.2" ), ex ); //$NON-NLS-1$
- }
-
- /**
- * Throws an internal error exception
- */
- private void abort( String message, Throwable e ) throws CoreException
- {
- IStatus s = new Status( IStatus.ERROR,
- CDebugCorePlugin.getUniqueIdentifier(),
- CDebugCorePlugin.INTERNAL_ERROR,
- message,
- e );
- throw new CoreException( s );
- }
-
- private boolean isEmpty( String string )
- {
- return string == null || string.length() == 0;
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.cdt.debug.core.sourcelookup.IProjectSourceLocation#isGenerated()
- */
- public boolean isGeneric()
- {
- return fGenerated;
- }
-
- public void setGenerated( boolean b )
- {
- fGenerated = b;
- }
-
- /* (non-Javadoc)
- * @see java.lang.Object#equals(java.lang.Object)
- */
- public boolean equals( Object obj )
- {
- if ( obj instanceof IProjectSourceLocation && getProject() != null )
- return getProject().equals( ((IProjectSourceLocation)obj).getProject() );
- return false;
- }
-
- private void initializeFolders()
- {
- final LinkedList list = new LinkedList();
- if ( getProject() != null && getProject().exists() )
- {
- list.add( getProject() );
- try
- {
- getProject().accept(
- new IResourceProxyVisitor()
- {
- public boolean visit( IResourceProxy proxy ) throws CoreException
- {
- switch( proxy.getType() )
- {
- case IResource.FILE:
- return false;
- case IResource.FOLDER:
- list.addLast( proxy.requestResource() );
- return true;
- }
- return true;
- }
-
- },
- IResource.NONE );
- }
- catch( CoreException e )
- {
- }
- }
- synchronized( this )
- {
- if ( fFolders == null )
- {
- fFolders = (IResource[])list.toArray( new IResource[list.size()] );
- }
- }
- }
-
- protected IResource[] getFolders()
- {
- if ( fFolders == null )
- initializeFolders();
- return fFolders;
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.cdt.debug.core.sourcelookup.ICSourceLocation#searchForDuplicateFiles()
- */
- public boolean searchForDuplicateFiles()
- {
- return fSearchForDuplicateFiles;
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.cdt.debug.core.sourcelookup.ICSourceLocation#setSearchForDuplicateFiles(boolean)
- */
- public void setSearchForDuplicateFiles( boolean search )
- {
- fCache.clear();
- fNotFoundCache.clear();
- fSearchForDuplicateFiles = search;
- }
-
- public String toString()
- {
- return ( getProject() != null ) ? fProject.toString() : ""; //$NON-NLS-1$
- }
-}
diff --git a/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/sourcelookup/CSourceLocator.java b/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/sourcelookup/CSourceLocator.java
deleted file mode 100644
index e22e4180ce2..00000000000
--- a/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/sourcelookup/CSourceLocator.java
+++ /dev/null
@@ -1,646 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.internal.core.sourcelookup;
-
-import java.io.IOException;
-import java.io.StringReader;
-import java.text.MessageFormat;
-import java.util.ArrayList;
-import java.util.Arrays;
-import java.util.HashSet;
-import java.util.Iterator;
-import java.util.LinkedList;
-import java.util.List;
-import javax.xml.parsers.DocumentBuilder;
-import javax.xml.parsers.DocumentBuilderFactory;
-import javax.xml.parsers.ParserConfigurationException;
-import javax.xml.transform.TransformerException;
-import org.eclipse.cdt.debug.core.CDebugCorePlugin;
-import org.eclipse.cdt.debug.core.CDebugUtils;
-import org.eclipse.cdt.debug.core.model.ICStackFrame;
-import org.eclipse.cdt.debug.core.sourcelookup.ICSourceLocation;
-import org.eclipse.cdt.debug.core.sourcelookup.ICSourceLocator;
-import org.eclipse.cdt.debug.core.sourcelookup.IProjectSourceLocation;
-import org.eclipse.cdt.debug.core.sourcelookup.SourceLookupFactory;
-import org.eclipse.core.resources.IFile;
-import org.eclipse.core.resources.IProject;
-import org.eclipse.core.resources.IResource;
-import org.eclipse.core.resources.IResourceChangeEvent;
-import org.eclipse.core.resources.IResourceChangeListener;
-import org.eclipse.core.resources.IResourceDelta;
-import org.eclipse.core.resources.IWorkspace;
-import org.eclipse.core.runtime.CoreException;
-import org.eclipse.core.runtime.IStatus;
-import org.eclipse.core.runtime.MultiStatus;
-import org.eclipse.core.runtime.Status;
-import org.eclipse.debug.core.ILaunchConfiguration;
-import org.eclipse.debug.core.model.IPersistableSourceLocator;
-import org.eclipse.debug.core.model.IStackFrame;
-import org.osgi.framework.Bundle;
-import org.w3c.dom.Document;
-import org.w3c.dom.Element;
-import org.w3c.dom.Node;
-import org.w3c.dom.NodeList;
-import org.xml.sax.InputSource;
-import org.xml.sax.SAXException;
-
-/**
- * Default source locator.
- */
-public class CSourceLocator implements ICSourceLocator, IPersistableSourceLocator, IResourceChangeListener {
-
- private static final String SOURCE_LOCATOR_NAME = "cSourceLocator"; //$NON-NLS-1$
-
- private static final String DISABLED_GENERIC_PROJECT_NAME = "disabledGenericProject"; //$NON-NLS-1$
-
- private static final String ADDITIONAL_SOURCE_LOCATION_NAME = "additionalSourceLocation"; //$NON-NLS-1$
-
- private static final String SOURCE_LOCATION_NAME = "cSourceLocation"; //$NON-NLS-1$
-
- private static final String ATTR_CLASS = "class"; //$NON-NLS-1$
-
- private static final String ATTR_MEMENTO = "memento"; //$NON-NLS-1$
-
- private static final String ATTR_PROJECT_NAME = "projectName"; //$NON-NLS-1$
-
- private static final String ATTR_DUPLICATE_FILES = "duplicateFiles"; //$NON-NLS-1$
-
- /**
- * The project associated with this locator.
- */
- private IProject fProject = null;
-
- /**
- * The array of source locations associated with this locator.
- */
- private ICSourceLocation[] fSourceLocations;
-
- /**
- * The array of projects referenced by main project.
- */
- private List fReferencedProjects = new ArrayList( 10 );
-
- /**
- * The flag specifies whether to search for all source elements, or just the first match.
- */
- private boolean fDuplicateFiles = false;
-
- /**
- * Constructor for CSourceLocator.
- */
- public CSourceLocator( IProject project ) {
- setProject( project );
- setReferencedProjects();
- setSourceLocations( getDefaultSourceLocations() );
- }
-
- /*
- * (non-Javadoc)
- *
- * @see org.eclipse.debug.core.model.ISourceLocator#getSourceElement(IStackFrame)
- */
- public Object getSourceElement( IStackFrame stackFrame ) {
- return getInput( stackFrame );
- }
-
- /*
- * (non-Javadoc)
- *
- * @see org.eclipse.cdt.debug.core.ICSourceLocator#getLineNumber(IStackFrameInfo)
- */
- public int getLineNumber( IStackFrame frame ) {
- return (frame instanceof ICStackFrame) ? ((ICStackFrame)frame).getFrameLineNumber() : 0;
- }
-
- protected Object getInput( IStackFrame f ) {
- if ( f instanceof ICStackFrame ) {
- ICStackFrame frame = (ICStackFrame)f;
- LinkedList list = new LinkedList();
- if ( frame != null ) {
- Object result = null;
- String fileName = frame.getFile();
- if ( fileName != null && fileName.length() > 0 ) {
- ICSourceLocation[] locations = getSourceLocations();
- for( int i = 0; i < locations.length; ++i ) {
- try {
- result = locations[i].findSourceElement( fileName );
- }
- catch( CoreException e ) {
- // do nothing
- }
- if ( result != null ) {
- if ( result instanceof List )
- list.addAll( (List)result );
- else
- list.add( result );
- if ( !searchForDuplicateFiles() )
- break;
- }
- }
- }
- }
- return (list.size() > 0) ? ((list.size() == 1) ? list.getFirst() : list) : null;
- }
- return null;
- }
-
- /*
- * (non-Javadoc)
- *
- * @see org.eclipse.cdt.debug.core.ICSourceLocator#contains(IResource)
- */
- public boolean contains( IResource resource ) {
- ICSourceLocation[] locations = getSourceLocations();
- for( int i = 0; i < locations.length; ++i ) {
- if ( resource instanceof IProject ) {
- if ( locations[i] instanceof CProjectSourceLocation && ((CProjectSourceLocation)locations[i]).getProject().equals( resource ) ) {
- return true;
- }
- }
- if ( resource instanceof IFile ) {
- try {
- Object result = locations[i].findSourceElement( resource.getLocation().toOSString() );
- if ( result instanceof IFile && ((IFile)result).equals( resource ) )
- return true;
- if ( result instanceof List && ((List)result).contains( resource ) )
- return true;
- }
- catch( CoreException e ) {
- }
- }
- }
- return false;
- }
-
- /*
- * (non-Javadoc)
- *
- * @see org.eclipse.cdt.debug.core.sourcelookup.ICSourceLocator#getSourceLocations()
- */
- public ICSourceLocation[] getSourceLocations() {
- return fSourceLocations;
- }
-
- /*
- * (non-Javadoc)
- *
- * @see org.eclipse.cdt.debug.core.sourcelookup.ICSourceLocator#setSourceLocations(ICSourceLocation[])
- */
- public void setSourceLocations( ICSourceLocation[] locations ) {
- fSourceLocations = locations;
- }
-
- /**
- * Returns a default collection of source locations for the given project. Default source locations consist of the given project and all of its referenced
- * projects.
- *
- * @param project
- * a project
- * @return a collection of source locations for all required projects
- * @exception CoreException
- */
- public static ICSourceLocation[] getDefaultSourceLocations( IProject project ) {
- ArrayList list = new ArrayList();
- if ( project != null && project.exists() ) {
- list.add( SourceLookupFactory.createProjectSourceLocation( project ) );
- addReferencedSourceLocations( list, project );
- }
- return (ICSourceLocation[])list.toArray( new ICSourceLocation[list.size()] );
- }
-
- private static void addReferencedSourceLocations( List list, IProject project ) {
- if ( project != null ) {
- try {
- IProject[] projects = project.getReferencedProjects();
- for( int i = 0; i < projects.length; i++ ) {
- if ( projects[i].exists() && !containsProject( list, projects[i] ) ) {
- list.add( SourceLookupFactory.createProjectSourceLocation( projects[i] ) );
- addReferencedSourceLocations( list, projects[i] );
- }
- }
- }
- catch( CoreException e ) {
- // do nothing
- }
- }
- }
-
- private static boolean containsProject( List list, IProject project ) {
- Iterator it = list.iterator();
- while( it.hasNext() ) {
- CProjectSourceLocation location = (CProjectSourceLocation)it.next();
- if ( project.equals( location.getProject() ) )
- return true;
- }
- return false;
- }
-
- /*
- * (non-Javadoc)
- *
- * @see org.eclipse.cdt.debug.core.sourcelookup.ICSourceLocator#findSourceElement(String)
- */
- public Object findSourceElement( String fileName ) {
- Object result = null;
- if ( fileName != null && fileName.length() > 0 ) {
- ICSourceLocation[] locations = getSourceLocations();
- for( int i = 0; i < locations.length; ++i ) {
- try {
- result = locations[i].findSourceElement( fileName );
- }
- catch( CoreException e ) {
- // do nothing
- }
- if ( result != null )
- break;
- }
- }
- return result;
- }
-
- /*
- * (non-Javadoc)
- *
- * @see org.eclipse.debug.core.model.IPersistableSourceLocator#getMemento()
- */
- public String getMemento() throws CoreException {
- Document document = null;
- Throwable ex = null;
- try {
- document = DocumentBuilderFactory.newInstance().newDocumentBuilder().newDocument();
- Element node = document.createElement( SOURCE_LOCATOR_NAME );
- document.appendChild( node );
- ICSourceLocation[] locations = getSourceLocations();
- saveDisabledGenericSourceLocations( locations, document, node );
- saveAdditionalSourceLocations( locations, document, node );
- node.setAttribute( ATTR_DUPLICATE_FILES, Boolean.valueOf( searchForDuplicateFiles() ).toString() );
- return CDebugUtils.serializeDocument( document );
- }
- catch( ParserConfigurationException e ) {
- ex = e;
- }
- catch( IOException e ) {
- ex = e;
- }
- catch( TransformerException e ) {
- ex = e;
- }
- abort( InternalSourceLookupMessages.getString( "CSourceLocator.0" ), ex ); //$NON-NLS-1$
- // execution will not reach here
- return null;
- }
-
- /*
- * (non-Javadoc)
- *
- * @see org.eclipse.debug.core.model.IPersistableSourceLocator#initializeDefaults(org.eclipse.debug.core.ILaunchConfiguration)
- */
- public void initializeDefaults( ILaunchConfiguration configuration ) throws CoreException {
- setSourceLocations( getDefaultSourceLocations() );
- }
-
- /*
- * (non-Javadoc)
- *
- * @see org.eclipse.debug.core.model.IPersistableSourceLocator#initializeFromMemento(java.lang.String)
- */
- public void initializeFromMemento( String memento ) throws CoreException {
- Exception ex = null;
- try {
- Element root = null;
- DocumentBuilder parser = DocumentBuilderFactory.newInstance().newDocumentBuilder();
- StringReader reader = new StringReader( memento );
- InputSource source = new InputSource( reader );
- root = parser.parse( source ).getDocumentElement();
- if ( !root.getNodeName().equalsIgnoreCase( SOURCE_LOCATOR_NAME ) ) {
- abort( InternalSourceLookupMessages.getString( "CSourceLocator.1" ) , null ); //$NON-NLS-1$
- }
- List sourceLocations = new ArrayList();
- // Add locations based on referenced projects
- IProject project = getProject();
- if ( project != null && project.exists() && project.isOpen() )
- sourceLocations.addAll( Arrays.asList( getDefaultSourceLocations() ) );
- removeDisabledLocations( root, sourceLocations );
- addAdditionalLocations( root, sourceLocations );
- // To support old launch configuration
- addOldLocations( root, sourceLocations );
- setSourceLocations( (ICSourceLocation[])sourceLocations.toArray( new ICSourceLocation[sourceLocations.size()] ) );
- setSearchForDuplicateFiles( Boolean.valueOf( root.getAttribute( ATTR_DUPLICATE_FILES ) ).booleanValue() );
- return;
- }
- catch( ParserConfigurationException e ) {
- ex = e;
- }
- catch( SAXException e ) {
- ex = e;
- }
- catch( IOException e ) {
- ex = e;
- }
- abort( InternalSourceLookupMessages.getString( "CSourceLocator.2" ), ex ); //$NON-NLS-1$
- }
-
- private void removeDisabledLocations( Element root, List sourceLocations ) {
- NodeList list = root.getChildNodes();
- int length = list.getLength();
- HashSet disabledProjects = new HashSet( length );
- for( int i = 0; i < length; ++i ) {
- Node node = list.item( i );
- short type = node.getNodeType();
- if ( type == Node.ELEMENT_NODE ) {
- Element entry = (Element)node;
- if ( entry.getNodeName().equalsIgnoreCase( DISABLED_GENERIC_PROJECT_NAME ) ) {
- String projectName = entry.getAttribute( ATTR_PROJECT_NAME );
- if ( isEmpty( projectName ) ) {
- CDebugCorePlugin.log( "Unable to restore C/C++ source locator - invalid format." ); //$NON-NLS-1$
- }
- disabledProjects.add( projectName.trim() );
- }
- }
- }
- Iterator it = sourceLocations.iterator();
- while( it.hasNext() ) {
- ICSourceLocation location = (ICSourceLocation)it.next();
- if ( location instanceof IProjectSourceLocation && disabledProjects.contains( ((IProjectSourceLocation)location).getProject().getName() ) )
- it.remove();
- }
- }
-
- private void addAdditionalLocations( Element root, List sourceLocations ) throws CoreException {
- Bundle bundle = CDebugCorePlugin.getDefault().getBundle();
- MultiStatus status = new MultiStatus( CDebugCorePlugin.getUniqueIdentifier(), CDebugCorePlugin.INTERNAL_ERROR, InternalSourceLookupMessages.getString( "CSourceLocator.3" ), null ); //$NON-NLS-1$
- NodeList list = root.getChildNodes();
- int length = list.getLength();
- for( int i = 0; i < length; ++i ) {
- Node node = list.item( i );
- short type = node.getNodeType();
- if ( type == Node.ELEMENT_NODE ) {
- Element entry = (Element)node;
- if ( entry.getNodeName().equalsIgnoreCase( ADDITIONAL_SOURCE_LOCATION_NAME ) ) {
- String className = entry.getAttribute( ATTR_CLASS );
- String data = entry.getAttribute( ATTR_MEMENTO );
- if ( isEmpty( className ) ) {
- CDebugCorePlugin.log( "Unable to restore C/C++ source locator - invalid format." ); //$NON-NLS-1$
- continue;
- }
- Class clazz = null;
- try {
- clazz = bundle.loadClass( className );
- }
- catch( ClassNotFoundException e ) {
- CDebugCorePlugin.log( MessageFormat.format( "Unable to restore source location - class not found {0}", new String[]{ className } ) ); //$NON-NLS-1$
- continue;
- }
- ICSourceLocation location = null;
- try {
- location = (ICSourceLocation)clazz.newInstance();
- }
- catch( IllegalAccessException e ) {
- CDebugCorePlugin.log( "Unable to restore source location." ); //$NON-NLS-1$
- continue;
- }
- catch( InstantiationException e ) {
- CDebugCorePlugin.log( "Unable to restore source location." ); //$NON-NLS-1$
- continue;
- }
- try {
- location.initializeFrom( data );
- sourceLocations.add( location );
- }
- catch( CoreException e ) {
- status.addAll( e.getStatus() );
- }
- }
- }
- }
- if ( status.getSeverity() > IStatus.OK )
- throw new CoreException( status );
- }
-
- private void addOldLocations( Element root, List sourceLocations ) throws CoreException {
- Bundle bundle = CDebugCorePlugin.getDefault().getBundle();
- NodeList list = root.getChildNodes();
- int length = list.getLength();
- for( int i = 0; i < length; ++i ) {
- Node node = list.item( i );
- short type = node.getNodeType();
- if ( type == Node.ELEMENT_NODE ) {
- Element entry = (Element)node;
- if ( entry.getNodeName().equalsIgnoreCase( SOURCE_LOCATION_NAME ) ) {
- String className = entry.getAttribute( ATTR_CLASS );
- String data = entry.getAttribute( ATTR_MEMENTO );
- if ( isEmpty( className ) ) {
- CDebugCorePlugin.log( "Unable to restore C/C++ source locator - invalid format." ); //$NON-NLS-1$
- continue;
- }
- Class clazz = null;
- try {
- clazz = bundle.loadClass( className );
- }
- catch( ClassNotFoundException e ) {
- CDebugCorePlugin.log( MessageFormat.format( "Unable to restore source location - class not found {0}", new String[]{ className } ) ); //$NON-NLS-1$
- continue;
- }
- ICSourceLocation location = null;
- try {
- location = (ICSourceLocation)clazz.newInstance();
- }
- catch( IllegalAccessException e ) {
- CDebugCorePlugin.log( "Unable to restore source location." ); //$NON-NLS-1$
- continue;
- }
- catch( InstantiationException e ) {
- CDebugCorePlugin.log( "Unable to restore source location." ); //$NON-NLS-1$
- continue;
- }
- location.initializeFrom( data );
- if ( !sourceLocations.contains( location ) ) {
- if ( location instanceof CProjectSourceLocation )
- ((CProjectSourceLocation)location).setGenerated( isReferencedProject( ((CProjectSourceLocation)location).getProject() ) );
- sourceLocations.add( location );
- }
- }
- }
- }
- }
-
- /**
- * Throws an internal error exception
- */
- private void abort( String message, Throwable e ) throws CoreException {
- IStatus s = new Status( IStatus.ERROR, CDebugCorePlugin.getUniqueIdentifier(), CDebugCorePlugin.INTERNAL_ERROR, message, e );
- throw new CoreException( s );
- }
-
- private boolean isEmpty( String string ) {
- return string == null || string.trim().length() == 0;
- }
-
- public void resourceChanged( IResourceChangeEvent event ) {
- if ( event.getSource() instanceof IWorkspace && event.getDelta() != null ) {
- IResourceDelta[] deltas = event.getDelta().getAffectedChildren();
- if ( deltas != null ) {
- ArrayList list = new ArrayList( deltas.length );
- for( int i = 0; i < deltas.length; ++i )
- if ( deltas[i].getResource() instanceof IProject )
- list.add( deltas[i].getResource() );
- resetSourceLocations( list );
- }
- }
- }
-
- private void saveDisabledGenericSourceLocations( ICSourceLocation[] locations, Document doc, Element node ) {
- IProject project = getProject();
- if ( project != null && project.exists() && project.isOpen() ) {
- List list = CDebugUtils.getReferencedProjects( project );
- HashSet names = new HashSet( list.size() + 1 );
- names.add( project.getName() );
- Iterator it = list.iterator();
- while( it.hasNext() ) {
- names.add( ((IProject)it.next()).getName() );
- }
- for( int i = 0; i < locations.length; ++i )
- if ( locations[i] instanceof IProjectSourceLocation && ((IProjectSourceLocation)locations[i]).isGeneric() )
- names.remove( ((IProjectSourceLocation)locations[i]).getProject().getName() );
- it = names.iterator();
- while( it.hasNext() ) {
- Element child = doc.createElement( DISABLED_GENERIC_PROJECT_NAME );
- child.setAttribute( ATTR_PROJECT_NAME, (String)it.next() );
- node.appendChild( child );
- }
- }
- }
-
- private void saveAdditionalSourceLocations( ICSourceLocation[] locations, Document doc, Element node ) {
- for( int i = 0; i < locations.length; i++ ) {
- if ( locations[i] instanceof IProjectSourceLocation && ((IProjectSourceLocation)locations[i]).isGeneric() )
- continue;
- Element child = doc.createElement( ADDITIONAL_SOURCE_LOCATION_NAME );
- child.setAttribute( ATTR_CLASS, locations[i].getClass().getName() );
- try {
- child.setAttribute( ATTR_MEMENTO, locations[i].getMemento() );
- }
- catch( CoreException e ) {
- CDebugCorePlugin.log( e );
- continue;
- }
- node.appendChild( child );
- }
- }
-
- /*
- * (non-Javadoc)
- *
- * @see org.eclipse.cdt.debug.core.sourcelookup.ICSourceLocator#getProject()
- */
- public IProject getProject() {
- return fProject;
- }
-
- protected void setProject( IProject project ) {
- fProject = project;
- }
-
- private boolean isReferencedProject( IProject ref ) {
- if ( getProject() != null ) {
- try {
- return Arrays.asList( getProject().getReferencedProjects() ).contains( ref );
- }
- catch( CoreException e ) {
- CDebugCorePlugin.log( e );
- }
- }
- return false;
- }
-
- private void setReferencedProjects() {
- fReferencedProjects.clear();
- fReferencedProjects = CDebugUtils.getReferencedProjects( getProject() );
- }
-
- protected ICSourceLocation[] getDefaultSourceLocations() {
- Iterator it = fReferencedProjects.iterator();
- ArrayList list = new ArrayList( fReferencedProjects.size() );
- if ( getProject() != null && getProject().exists() && getProject().isOpen() )
- list.add( SourceLookupFactory.createProjectSourceLocation( getProject() ) );
- while( it.hasNext() ) {
- IProject project = (IProject)it.next();
- if ( project != null && project.exists() && project.isOpen() )
- list.add( SourceLookupFactory.createProjectSourceLocation( project ) );
- }
- return (ICSourceLocation[])list.toArray( new ICSourceLocation[list.size()] );
- }
-
- private void resetSourceLocations( List affectedProjects ) {
- if ( affectedProjects.size() != 0 && getProject() != null ) {
- if ( !getProject().exists() || !getProject().isOpen() ) {
- removeGenericSourceLocations();
- }
- else {
- updateGenericSourceLocations( affectedProjects );
- }
- }
- }
-
- private void removeGenericSourceLocations() {
- fReferencedProjects.clear();
- ICSourceLocation[] locations = getSourceLocations();
- ArrayList newLocations = new ArrayList( locations.length );
- for( int i = 0; i < locations.length; ++i )
- if ( !(locations[i] instanceof IProjectSourceLocation) || !((IProjectSourceLocation)locations[i]).isGeneric() )
- newLocations.add( locations[i] );
- setSourceLocations( (ICSourceLocation[])newLocations.toArray( new ICSourceLocation[newLocations.size()] ) );
- }
-
- private void updateGenericSourceLocations( List affectedProjects ) {
- List newRefs = CDebugUtils.getReferencedProjects( getProject() );
- ICSourceLocation[] locations = getSourceLocations();
- ArrayList newLocations = new ArrayList( locations.length );
- for( int i = 0; i < locations.length; ++i ) {
- if ( !(locations[i] instanceof IProjectSourceLocation) || !((IProjectSourceLocation)locations[i]).isGeneric() ) {
- newLocations.add( locations[i] );
- }
- else {
- IProject project = ((IProjectSourceLocation)locations[i]).getProject();
- if ( project.exists() && project.isOpen() ) {
- if ( newRefs.contains( project ) || project.equals( getProject() ) ) {
- newLocations.add( locations[i] );
- newRefs.remove( project );
- }
- }
- }
- }
- Iterator it = newRefs.iterator();
- while( it.hasNext() ) {
- IProject project = (IProject)it.next();
- if ( !fReferencedProjects.contains( project ) )
- newLocations.add( SourceLookupFactory.createProjectSourceLocation( project ) );
- }
- fReferencedProjects = newRefs;
- setSourceLocations( (ICSourceLocation[])newLocations.toArray( new ICSourceLocation[newLocations.size()] ) );
- }
-
- /*
- * (non-Javadoc)
- *
- * @see org.eclipse.cdt.debug.core.sourcelookup.ICSourceLocator#searchForDuplicateFiles()
- */
- public boolean searchForDuplicateFiles() {
- return fDuplicateFiles;
- }
-
- public void setSearchForDuplicateFiles( boolean search ) {
- fDuplicateFiles = search;
- ICSourceLocation[] locations = getSourceLocations();
- for( int i = 0; i < locations.length; ++i )
- locations[i].setSearchForDuplicateFiles( search );
- }
-}
diff --git a/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/sourcelookup/CSourceLookupDirector.java b/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/sourcelookup/CSourceLookupDirector.java
deleted file mode 100644
index 87b58649e9d..00000000000
--- a/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/sourcelookup/CSourceLookupDirector.java
+++ /dev/null
@@ -1,205 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- * Nokia - Added support for AbsoluteSourceContainer( 159833 )
-*******************************************************************************/
-package org.eclipse.cdt.debug.internal.core.sourcelookup;
-
-import java.io.File;
-import java.util.HashSet;
-import java.util.Set;
-import org.eclipse.cdt.debug.core.model.ICBreakpoint;
-import org.eclipse.cdt.debug.core.sourcelookup.AbsolutePathSourceContainer;
-import org.eclipse.cdt.debug.core.sourcelookup.MappingSourceContainer;
-import org.eclipse.core.resources.IContainer;
-import org.eclipse.core.resources.IFile;
-import org.eclipse.core.resources.IMarker;
-import org.eclipse.core.resources.IProject;
-import org.eclipse.core.resources.IResource;
-import org.eclipse.core.runtime.CoreException;
-import org.eclipse.core.runtime.IPath;
-import org.eclipse.core.runtime.Path;
-import org.eclipse.debug.core.sourcelookup.AbstractSourceLookupDirector;
-import org.eclipse.debug.core.sourcelookup.ISourceContainer;
-import org.eclipse.debug.core.sourcelookup.ISourceContainerType;
-import org.eclipse.debug.core.sourcelookup.ISourceLookupParticipant;
-import org.eclipse.debug.core.sourcelookup.containers.DirectorySourceContainer;
-import org.eclipse.debug.core.sourcelookup.containers.FolderSourceContainer;
-import org.eclipse.debug.core.sourcelookup.containers.ProjectSourceContainer;
-import org.eclipse.debug.core.sourcelookup.containers.WorkspaceSourceContainer;
-
-/**
- * C/C++ source lookup director.
- */
-public class CSourceLookupDirector extends AbstractSourceLookupDirector {
-
- private static Set fSupportedTypes;
-
- static {
- fSupportedTypes = new HashSet();
- fSupportedTypes.add( WorkspaceSourceContainer.TYPE_ID );
- fSupportedTypes.add( ProjectSourceContainer.TYPE_ID );
- fSupportedTypes.add( FolderSourceContainer.TYPE_ID );
- fSupportedTypes.add( DirectorySourceContainer.TYPE_ID );
- fSupportedTypes.add( MappingSourceContainer.TYPE_ID );
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.debug.core.sourcelookup.ISourceLookupDirector#initializeParticipants()
- */
- public void initializeParticipants() {
- addParticipants( new ISourceLookupParticipant[]{ new CSourceLookupParticipant() } );
- }
- /* (non-Javadoc)
- * @see org.eclipse.debug.core.sourcelookup.ISourceLookupDirector#supportsSourceContainerType(org.eclipse.debug.core.sourcelookup.ISourceContainerType)
- */
- public boolean supportsSourceContainerType( ISourceContainerType type ) {
- return fSupportedTypes.contains( type.getId() );
- }
-
- public boolean contains( String source ) {
- ISourceContainer[] containers = getSourceContainers();
- for ( int i = 0; i < containers.length; ++i ) {
- if ( contains( containers[i], source ) )
- return true;
- }
-
- return false;
- }
-
- public boolean contains( ICBreakpoint breakpoint ) {
- try {
- String handle = breakpoint.getSourceHandle();
- // Check if the breakpoint's resource is a link - we have to handle
- // this case differently.
- // See https://bugs.eclipse.org/bugs/show_bug.cgi?id=125603
- IMarker marker = breakpoint.getMarker();
- if ( marker != null ) {
- IResource resource = marker.getResource();
- if ( resource.isLinked() && resource.getLocation().toOSString().equals( handle ) ) {
- return contains( resource.getProject() );
- }
- }
- ISourceContainer[] containers = getSourceContainers();
- for ( int i = 0; i < containers.length; ++i ) {
- if ( contains( containers[i], handle ) )
- return true;
- }
- }
- catch( CoreException e ) {
- }
- return false;
- }
-
- public boolean contains( IProject project ) {
- ISourceContainer[] containers = getSourceContainers();
- for ( int i = 0; i < containers.length; ++i ) {
- if ( contains( containers[i], project ) )
- return true;
- }
- return false;
- }
-
- private boolean contains( ISourceContainer container, IProject project ) {
- if ( container instanceof ProjectSourceContainer && ((ProjectSourceContainer)container).getProject().equals( project ) ) {
- return true;
- }
- try {
- ISourceContainer[] containers;
- containers = container.getSourceContainers();
- for ( int i = 0; i < containers.length; ++i ) {
- if ( contains( containers[i], project ) )
- return true;
- }
- }
- catch( CoreException e ) {
- }
- return false;
- }
-
- private boolean contains( ISourceContainer container, String sourceName ) {
- IPath path = new Path( sourceName );
- if ( !path.isValidPath( sourceName ) )
- return false;
- if ( container instanceof ProjectSourceContainer ) {
- IProject project = ((ProjectSourceContainer)container).getProject();
- IPath projPath = project.getLocation();
- if ( projPath != null && projPath.isPrefixOf( path ) ) {
- IFile file = ((ProjectSourceContainer)container).getProject().getFile( path.removeFirstSegments( projPath.segmentCount() ) );
- return ( file != null && file.exists() );
- }
- }
- if ( container instanceof FolderSourceContainer ) {
- IContainer folder = ((FolderSourceContainer)container).getContainer();
- IPath folderPath = folder.getLocation();
- if ( folderPath != null && folderPath.isPrefixOf( path ) ) {
- IFile file = ((FolderSourceContainer)container).getContainer().getFile( path.removeFirstSegments( folderPath.segmentCount() ) );
- return ( file != null && file.exists() );
- }
- }
- if ( container instanceof DirectorySourceContainer ) {
- File dir = ((DirectorySourceContainer)container).getDirectory();
- boolean searchSubfolders = ((DirectorySourceContainer)container).isComposite();
- IPath dirPath = new Path( dir.getAbsolutePath() );
- if ( searchSubfolders || dirPath.segmentCount() + 1 == path.segmentCount() )
- return dirPath.isPrefixOf( path );
- }
- if ( container instanceof MappingSourceContainer ) {
- return ( ((MappingSourceContainer)container).getCompilationPath( sourceName ) != null );
- }
- if ( container instanceof AbsolutePathSourceContainer ) {
- return ( ((AbsolutePathSourceContainer)container).isValidAbsoluteFilePath( sourceName ) );
- }
- try {
- ISourceContainer[] containers;
- containers = container.getSourceContainers();
- for ( int i = 0; i < containers.length; ++i ) {
- if ( contains( containers[i], sourceName ) )
- return true;
- }
- }
- catch( CoreException e ) {
- }
- return false;
- }
-
- public IPath getCompilationPath( String sourceName ) {
- IPath path = null;
- ISourceContainer[] containers = getSourceContainers();
- for ( int i = 0; i < containers.length; ++i ) {
- IPath cp = getCompilationPath( containers[i], sourceName );
- if ( cp != null ) {
- path = cp;
- break;
- }
- }
- return path;
- }
-
- private IPath getCompilationPath( ISourceContainer container, String sourceName ) {
- IPath path = null;
- if ( container instanceof MappingSourceContainer ) {
- path = ((MappingSourceContainer)container).getCompilationPath( sourceName );
- }
- else {
- try {
- ISourceContainer[] containers;
- containers = container.getSourceContainers();
- for ( int i = 0; i < containers.length; ++i ) {
- path = getCompilationPath( containers[i], sourceName );
- if ( path != null )
- break;
- }
- }
- catch( CoreException e ) {
- }
- }
- return path;
- }
-}
diff --git a/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/sourcelookup/CSourceLookupParticipant.java b/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/sourcelookup/CSourceLookupParticipant.java
deleted file mode 100644
index dbf4e0e07e2..00000000000
--- a/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/sourcelookup/CSourceLookupParticipant.java
+++ /dev/null
@@ -1,109 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- * Nokia - Added support for AbsoluteSourceContainer( 159833 )
- * Nokia - Added support for CSourceNotFoundElement ( 167305 )
-*******************************************************************************/
-package org.eclipse.cdt.debug.internal.core.sourcelookup;
-
-import org.eclipse.cdt.debug.core.model.ICStackFrame;
-import org.eclipse.cdt.debug.core.sourcelookup.ISourceLookupChangeListener;
-import org.eclipse.cdt.debug.internal.core.ListenerList;
-import org.eclipse.core.runtime.CoreException;
-import org.eclipse.core.runtime.IAdaptable;
-import org.eclipse.debug.core.model.IDebugElement;
-import org.eclipse.debug.core.sourcelookup.AbstractSourceLookupParticipant;
-import org.eclipse.debug.core.sourcelookup.ISourceLookupDirector;
-
-/**
- * A source lookup participant that searches for C/C++ source code.
- */
-public class CSourceLookupParticipant extends AbstractSourceLookupParticipant {
-
- static class NoSourceElement {
- }
-
- private static final NoSourceElement gfNoSource = new NoSourceElement();
-
- private ListenerList fListeners;
-
- /**
- * Constructor for CSourceLookupParticipant.
- */
- public CSourceLookupParticipant() {
- super();
- fListeners = new ListenerList( 1 );
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.debug.core.sourcelookup.ISourceLookupParticipant#getSourceName(java.lang.Object)
- */
- public String getSourceName( Object object ) throws CoreException {
- if ( object instanceof String ) {
- return (String)object;
- }
- if ( object instanceof IAdaptable ) {
- ICStackFrame frame = (ICStackFrame)((IAdaptable)object).getAdapter( ICStackFrame.class );
- if ( frame != null ) {
- String name = frame.getFile();
- return ( name != null && name.trim().length() > 0 ) ? name : null;
- }
- }
- return null;
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.debug.core.sourcelookup.AbstractSourceLookupParticipant#findSourceElements(java.lang.Object)
- */
- public Object[] findSourceElements( Object object ) throws CoreException {
- // Workaround for cases when the stack frame doesn't contain the source file name
- String name = null;
- if ( object instanceof IAdaptable ) {
- ICStackFrame frame = (ICStackFrame)((IAdaptable)object).getAdapter( ICStackFrame.class );
- if ( frame != null ) {
- name = frame.getFile().trim();
- if ( name == null || name.length() == 0 )
- return new Object[] { gfNoSource };
- }
- }
- else if ( object instanceof String ) {
- name = (String)object;
- }
- Object[] foundElements = super.findSourceElements( object );
- if (foundElements.length == 0 && (object instanceof IDebugElement))
- foundElements = new Object[] { new CSourceNotFoundElement( (IDebugElement) object ) };
- return foundElements;
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.debug.core.sourcelookup.AbstractSourceLookupParticipant#dispose()
- */
- public void dispose() {
- fListeners.removeAll();
- super.dispose();
- }
-
- public void addSourceLookupChangeListener( ISourceLookupChangeListener listener ) {
- fListeners.add( listener );
- }
-
- public void removeSourceLookupChangeListener( ISourceLookupChangeListener listener ) {
- fListeners.remove( listener );
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.debug.core.sourcelookup.AbstractSourceLookupParticipant#sourceContainersChanged(org.eclipse.debug.core.sourcelookup.ISourceLookupDirector)
- */
- public void sourceContainersChanged( ISourceLookupDirector director ) {
- Object[] listeners = fListeners.getListeners();
- for ( int i = 0; i < listeners.length; ++i )
- ((ISourceLookupChangeListener)listeners[i]).sourceContainersChanged( director );
- super.sourceContainersChanged( director );
- }
-}
diff --git a/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/sourcelookup/CSourceManager.java b/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/sourcelookup/CSourceManager.java
deleted file mode 100644
index 92d4e62019f..00000000000
--- a/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/sourcelookup/CSourceManager.java
+++ /dev/null
@@ -1,235 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.internal.core.sourcelookup;
-
-import org.eclipse.cdt.debug.core.model.ICStackFrame;
-import org.eclipse.cdt.debug.core.sourcelookup.ICSourceLocation;
-import org.eclipse.cdt.debug.core.sourcelookup.ICSourceLocator;
-import org.eclipse.cdt.debug.internal.core.model.CDebugTarget;
-import org.eclipse.cdt.debug.internal.core.model.Disassembly;
-import org.eclipse.core.resources.IProject;
-import org.eclipse.core.resources.IResource;
-import org.eclipse.core.resources.IResourceChangeListener;
-import org.eclipse.core.runtime.CoreException;
-import org.eclipse.core.runtime.IAdaptable;
-import org.eclipse.debug.core.DebugException;
-import org.eclipse.debug.core.ILaunch;
-import org.eclipse.debug.core.ILaunchConfiguration;
-import org.eclipse.debug.core.model.IPersistableSourceLocator;
-import org.eclipse.debug.core.model.ISourceLocator;
-import org.eclipse.debug.core.model.IStackFrame;
-
-/**
- * Locates sources for a C/C++ debug session.
- */
-public class CSourceManager implements ICSourceLocator, IPersistableSourceLocator, IAdaptable {
-
- private ISourceLocator fSourceLocator = null;
-
- private ILaunch fLaunch = null;
-
- private CDebugTarget fDebugTarget = null;
-
- /**
- * Constructor for CSourceManager.
- */
- public CSourceManager( ISourceLocator sourceLocator ) {
- setSourceLocator( sourceLocator );
- }
-
- /*
- * (non-Javadoc)
- *
- * @see org.eclipse.cdt.debug.core.sourcelookup.ICSourceLocator#getLineNumber(IStackFrameInfo)
- */
- public int getLineNumber( IStackFrame frame ) {
- if ( getCSourceLocator() != null ) {
- return getCSourceLocator().getLineNumber( frame );
- }
- if ( frame instanceof ICStackFrame ) {
- return ((ICStackFrame)frame).getFrameLineNumber();
- }
- return 0;
- }
-
- /*
- * (non-Javadoc)
- *
- * @see org.eclipse.cdt.debug.core.sourcelookup.ICSourceLocator#getSourceLocations()
- */
- public ICSourceLocation[] getSourceLocations() {
- return (getCSourceLocator() != null) ? getCSourceLocator().getSourceLocations() : new ICSourceLocation[0];
- }
-
- /*
- * (non-Javadoc)
- *
- * @see org.eclipse.cdt.debug.core.sourcelookup.ICSourceLocator#setSourceLocations(ICSourceLocation[])
- */
- public void setSourceLocations( ICSourceLocation[] locations ) {
- if ( getCSourceLocator() != null ) {
- getCSourceLocator().setSourceLocations( locations );
- CDebugTarget target = getDebugTarget();
- if ( target != null ) {
- Disassembly d = null;
- try {
- d = (Disassembly)target.getDisassembly();
- }
- catch( DebugException e ) {
- }
- if ( d != null ) {
- d.reset();
- }
- }
- }
- }
-
- /*
- * (non-Javadoc)
- *
- * @see org.eclipse.cdt.debug.core.sourcelookup.ICSourceLocator#contains(IResource)
- */
- public boolean contains( IResource resource ) {
- return (getCSourceLocator() != null) ? getCSourceLocator().contains( resource ) : false;
- }
-
- /*
- * (non-Javadoc)
- *
- * @see org.eclipse.core.runtime.IAdaptable#getAdapter(Class)
- */
- public Object getAdapter( Class adapter ) {
- if ( adapter.equals( CSourceManager.class ) )
- return this;
- if ( adapter.equals( ICSourceLocator.class ) )
- return this;
- if ( adapter.equals( IPersistableSourceLocator.class ) )
- return this;
- if ( adapter.equals( IResourceChangeListener.class ) && fSourceLocator instanceof IResourceChangeListener )
- return fSourceLocator;
- return null;
- }
-
- /*
- * (non-Javadoc)
- *
- * @see org.eclipse.debug.core.model.ISourceLocator#getSourceElement(IStackFrame)
- */
- public Object getSourceElement( IStackFrame stackFrame ) {
- Object result = null;
- if ( getSourceLocator() != null )
- result = getSourceLocator().getSourceElement( stackFrame );
- return result;
- }
-
- protected ICSourceLocator getCSourceLocator() {
- if ( getSourceLocator() instanceof ICSourceLocator )
- return (ICSourceLocator)getSourceLocator();
- return null;
- }
-
- protected ISourceLocator getSourceLocator() {
- if ( fSourceLocator != null )
- return fSourceLocator;
- else if ( fLaunch != null )
- return fLaunch.getSourceLocator();
- return null;
- }
-
- private void setSourceLocator( ISourceLocator sl ) {
- fSourceLocator = sl;
- }
-
- /*
- * (non-Javadoc)
- *
- * @see org.eclipse.cdt.debug.core.sourcelookup.ICSourceLocator#findSourceElement(String)
- */
- public Object findSourceElement( String fileName ) {
- if ( getCSourceLocator() != null ) {
- return getCSourceLocator().findSourceElement( fileName );
- }
- return null;
- }
-
- /*
- * (non-Javadoc)
- *
- * @see org.eclipse.debug.core.model.IPersistableSourceLocator#getMemento()
- */
- public String getMemento() throws CoreException {
- if ( getPersistableSourceLocator() != null )
- return getPersistableSourceLocator().getMemento();
- return null;
- }
-
- /*
- * (non-Javadoc)
- *
- * @see org.eclipse.debug.core.model.IPersistableSourceLocator#initializeDefaults(org.eclipse.debug.core.ILaunchConfiguration)
- */
- public void initializeDefaults( ILaunchConfiguration configuration ) throws CoreException {
- if ( getPersistableSourceLocator() != null )
- getPersistableSourceLocator().initializeDefaults( configuration );
- }
-
- /*
- * (non-Javadoc)
- *
- * @see org.eclipse.debug.core.model.IPersistableSourceLocator#initializeFromMemento(java.lang.String)
- */
- public void initializeFromMemento( String memento ) throws CoreException {
- if ( getPersistableSourceLocator() != null )
- getPersistableSourceLocator().initializeFromMemento( memento );
- }
-
- private IPersistableSourceLocator getPersistableSourceLocator() {
- if ( fSourceLocator instanceof IPersistableSourceLocator )
- return (IPersistableSourceLocator)fSourceLocator;
- return null;
- }
-
- /*
- * (non-Javadoc)
- *
- * @see org.eclipse.cdt.debug.core.sourcelookup.ICSourceLocator#getProject()
- */
- public IProject getProject() {
- return (getCSourceLocator() != null) ? getCSourceLocator().getProject() : null;
- }
-
- public void setDebugTarget( CDebugTarget target ) {
- fDebugTarget = target;
- }
-
- protected CDebugTarget getDebugTarget() {
- return fDebugTarget;
- }
-
- /*
- * (non-Javadoc)
- *
- * @see org.eclipse.cdt.debug.core.sourcelookup.ICSourceLocator#setSearchForDuplicateFiles(boolean)
- */
- public void setSearchForDuplicateFiles( boolean search ) {
- if ( getCSourceLocator() != null )
- getCSourceLocator().setSearchForDuplicateFiles( search );
- }
-
- /*
- * (non-Javadoc)
- *
- * @see org.eclipse.cdt.debug.core.sourcelookup.ICSourceLocator#searchForDuplicateFiles()
- */
- public boolean searchForDuplicateFiles() {
- return (getCSourceLocator() != null) ? getCSourceLocator().searchForDuplicateFiles() : false;
- }
-}
diff --git a/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/sourcelookup/CSourceNotFoundElement.java b/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/sourcelookup/CSourceNotFoundElement.java
deleted file mode 100644
index 1140de86f17..00000000000
--- a/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/sourcelookup/CSourceNotFoundElement.java
+++ /dev/null
@@ -1,64 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2006 Nokia and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * Nokia - initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.cdt.debug.internal.core.sourcelookup;
-
-import org.eclipse.cdt.debug.core.model.ICStackFrame;
-import org.eclipse.core.runtime.IAdaptable;
-import org.eclipse.debug.core.ILaunch;
-import org.eclipse.debug.core.model.IDebugElement;
-import org.eclipse.debug.core.model.IDebugTarget;
-
-/**
- * Wrapper for debug elements that have missing source, for example a stack frame
- * whose source file can not be located. Used to enable the CSourceNotFoundEditor
- * that will let you find the missing file.
- *
- */
-public class CSourceNotFoundElement implements IDebugElement{
-
- private IDebugElement element;
-
- public IDebugElement getElement() {
- return element;
- }
-
- public CSourceNotFoundElement(IDebugElement element)
- {
- this.element = element;
- }
-
- public IDebugTarget getDebugTarget() {
- return element.getDebugTarget();
- }
-
- public ILaunch getLaunch() {
- return element.getLaunch();
- }
-
- public String getModelIdentifier() {
- return element.getModelIdentifier();
- }
-
- public Object getAdapter(Class adapter) {
- return element.getAdapter(adapter);
- }
-
- public String getFile() {
- ICStackFrame frame = (ICStackFrame)((IAdaptable)element).getAdapter( ICStackFrame.class );
- if ( frame != null ) {
- return frame.getFile().trim();
- }
- return "";
- }
-
-
-}
diff --git a/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/sourcelookup/CSourcePathComputerDelegate.java b/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/sourcelookup/CSourcePathComputerDelegate.java
deleted file mode 100644
index 4754d9d91dc..00000000000
--- a/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/sourcelookup/CSourcePathComputerDelegate.java
+++ /dev/null
@@ -1,62 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- * Nokia - Added support for AbsoluteSourceContainer( 159833 )
-*******************************************************************************/
-package org.eclipse.cdt.debug.internal.core.sourcelookup;
-
-import java.util.ArrayList;
-import org.eclipse.cdt.debug.core.CDebugCorePlugin;
-import org.eclipse.cdt.debug.core.ICDTLaunchConfigurationConstants;
-import org.eclipse.cdt.debug.core.sourcelookup.AbsolutePathSourceContainer;
-import org.eclipse.cdt.debug.core.sourcelookup.MappingSourceContainer;
-import org.eclipse.core.resources.IProject;
-import org.eclipse.core.resources.ResourcesPlugin;
-import org.eclipse.core.runtime.CoreException;
-import org.eclipse.core.runtime.IProgressMonitor;
-import org.eclipse.debug.core.ILaunchConfiguration;
-import org.eclipse.debug.core.sourcelookup.ISourceContainer;
-import org.eclipse.debug.core.sourcelookup.ISourcePathComputerDelegate;
-import org.eclipse.debug.core.sourcelookup.containers.ProjectSourceContainer;
-
-/**
- * Computes the default source lookup path for a launch configuration.
- */
-public class CSourcePathComputerDelegate implements ISourcePathComputerDelegate {
-
- /**
- * Constructor for CSourcePathComputerDelegate.
- */
- public CSourcePathComputerDelegate() {
- super();
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.debug.core.sourcelookup.ISourcePathComputerDelegate#computeSourceContainers(org.eclipse.debug.core.ILaunchConfiguration, org.eclipse.core.runtime.IProgressMonitor)
- */
- public ISourceContainer[] computeSourceContainers( ILaunchConfiguration configuration, IProgressMonitor monitor ) throws CoreException {
- ISourceContainer[] common = CDebugCorePlugin.getDefault().getCommonSourceLookupDirector().getSourceContainers();
- ArrayList containers = new ArrayList( common.length + 1 );
- for ( int i = 0; i < common.length; ++i ) {
- ISourceContainer sc = common[i];
- if ( sc.getType().getId().equals( MappingSourceContainer.TYPE_ID ) )
- sc = ((MappingSourceContainer)sc).copy();
- containers.add( sc );
- }
- String projectName = configuration.getAttribute( ICDTLaunchConfigurationConstants.ATTR_PROJECT_NAME, (String)null );
- if ( projectName != null ) {
- IProject project = ResourcesPlugin.getWorkspace().getRoot().getProject( projectName );
- if ( project.exists() ) {
- containers.add( 0, new ProjectSourceContainer( project, true ) );
- }
- }
- containers.add( new AbsolutePathSourceContainer() );
- return (ISourceContainer[])containers.toArray( new ISourceContainer[containers.size()] );
- }
-}
diff --git a/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/sourcelookup/CommonSourceLookupDirector.java b/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/sourcelookup/CommonSourceLookupDirector.java
deleted file mode 100644
index b83d65eeae8..00000000000
--- a/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/sourcelookup/CommonSourceLookupDirector.java
+++ /dev/null
@@ -1,36 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004, 2005 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.internal.core.sourcelookup;
-
-import org.eclipse.cdt.debug.core.CDebugCorePlugin;
-import org.eclipse.cdt.debug.internal.core.ICDebugInternalConstants;
-import org.eclipse.core.runtime.CoreException;
-import org.eclipse.debug.core.sourcelookup.ISourceContainer;
-
-/**
- * Director of the common source containers.
- */
-public class CommonSourceLookupDirector extends CSourceLookupDirector {
-
- /* (non-Javadoc)
- * @see org.eclipse.debug.core.sourcelookup.AbstractSourceLookupDirector#setSourceContainers(org.eclipse.debug.core.sourcelookup.ISourceContainer[])
- */
- public void setSourceContainers( ISourceContainer[] containers ) {
- try {
- super.setSourceContainers( containers );
- CDebugCorePlugin.getDefault().getPluginPreferences().setValue( ICDebugInternalConstants.PREF_COMMON_SOURCE_CONTAINERS, getMemento() );
- CDebugCorePlugin.getDefault().savePluginPreferences();
- }
- catch( CoreException e ) {
- CDebugCorePlugin.log( e.getStatus() );
- }
- }
-}
diff --git a/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/sourcelookup/InternalSourceLookupMessages.java b/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/sourcelookup/InternalSourceLookupMessages.java
deleted file mode 100644
index cce8157d148..00000000000
--- a/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/sourcelookup/InternalSourceLookupMessages.java
+++ /dev/null
@@ -1,33 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.internal.core.sourcelookup;
-
-import java.util.MissingResourceException;
-import java.util.ResourceBundle;
-
-public class InternalSourceLookupMessages {
-
- private static final String BUNDLE_NAME = "org.eclipse.cdt.debug.internal.core.sourcelookup.InternalSourceLookupMessages";//$NON-NLS-1$
-
- private static final ResourceBundle RESOURCE_BUNDLE = ResourceBundle.getBundle( BUNDLE_NAME );
-
- private InternalSourceLookupMessages() {
- }
-
- public static String getString( String key ) {
- try {
- return RESOURCE_BUNDLE.getString( key );
- }
- catch( MissingResourceException e ) {
- return '!' + key + '!';
- }
- }
-}
diff --git a/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/sourcelookup/InternalSourceLookupMessages.properties b/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/sourcelookup/InternalSourceLookupMessages.properties
deleted file mode 100644
index e05643cd31a..00000000000
--- a/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/sourcelookup/InternalSourceLookupMessages.properties
+++ /dev/null
@@ -1,33 +0,0 @@
-###############################################################################
-# Copyright (c) 2003, 2005 QNX Software Systems and others.
-# All rights reserved. This program and the accompanying materials
-# are made available under the terms of the Eclipse Public License v1.0
-# which accompanies this distribution, and is available at
-# http://www.eclipse.org/legal/epl-v10.html
-#
-# Contributors:
-# QNX Software Systems - initial API and implementation
-###############################################################################
-
-CDirectorySourceLocation.0=Unable to create memento for C/C++ directory source location {0}.
-CDirectorySourceLocation.1=Unable to initialize source location - missing directory path.
-CDirectorySourceLocation.2=Unable to initialize source location - invalid directory path {0}.
-CDirectorySourceLocation.3=Exception occurred initializing source location.
-CDirectorySourceContainerType.0=Unable to restore directory source lookup entry - missing path attribute.
-CDirectorySourceContainerType.1=Unable to restore directory source lookup entry - expecting directory element.
-CDirectorySourceContainerType.2=Unable to restore directory source lookup entry - invalid memento.
-CProjectSourceLocation.0=Unable to create memento for C/C++ project source location {0}.
-CProjectSourceLocation.1=Unable to initialize source location - missing project name
-CProjectSourceLocation.2=Exception occurred initializing source location.
-CSourceLocator.0=Unable to create memento for C/C++ source locator.
-CSourceLocator.1=Unable to restore C/C++ source locator - invalid format.
-CSourceLocator.2=Exception occurred initializing source locator.
-CSourceLocator.3=Error initializing directory source location.
-MapEntrySourceContainerType.0=Source lookup: unable to restore map entry - missing backend path attribute.
-MapEntrySourceContainerType.1=Source lookup: unable to restore map entry - missing local path attribute.
-MapEntrySourceContainerType.2=Source lookup: unable to restore map entry - expecting map entry element.
-MapEntrySourceContainerType.3=Source lookup: unable to restore map entry - invalid memento.
-MappingSourceContainerType.0=Source lookup: unable to restore map entry - expecting memnto attribute.
-MappingSourceContainerType.1=Source lookup: unable to restore mapping - expecting mapping element.
-MappingSourceContainerType.2=Source lookup: unable to restore mapping - invalid memento.
-SourceUtils.0=Mapping
diff --git a/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/sourcelookup/MapEntrySourceContainer.java b/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/sourcelookup/MapEntrySourceContainer.java
deleted file mode 100644
index e33aa6072bb..00000000000
--- a/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/sourcelookup/MapEntrySourceContainer.java
+++ /dev/null
@@ -1,129 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004, 2005 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.internal.core.sourcelookup;
-
-import java.io.File;
-import java.text.MessageFormat;
-import java.util.ArrayList;
-import org.eclipse.cdt.debug.core.CDebugCorePlugin;
-import org.eclipse.core.resources.IFile;
-import org.eclipse.core.resources.ResourcesPlugin;
-import org.eclipse.core.runtime.CoreException;
-import org.eclipse.core.runtime.IPath;
-import org.eclipse.core.runtime.Path;
-import org.eclipse.debug.core.sourcelookup.ISourceContainerType;
-import org.eclipse.debug.core.sourcelookup.containers.AbstractSourceContainer;
-import org.eclipse.debug.core.sourcelookup.containers.LocalFileStorage;
-
-/**
- * The source container that maps a backend path to the local filesystem path.
- */
-public class MapEntrySourceContainer extends AbstractSourceContainer {
-
- /**
- * Unique identifier for the map entry source container type
- * (value <code>org.eclipse.cdt.debug.core.containerType.mapEntry</code>).
- */
- public static final String TYPE_ID = CDebugCorePlugin.getUniqueIdentifier() + ".containerType.mapEntry"; //$NON-NLS-1$
-
- private IPath fLocalPath;
-
- private IPath fBackendPath;
-
- /**
- * Constructor for MapEntrySourceContainer.
- */
- public MapEntrySourceContainer() {
- fBackendPath = Path.EMPTY;
- fLocalPath = Path.EMPTY;
- }
-
- /**
- * Constructor for MapEntrySourceContainer.
- */
- public MapEntrySourceContainer( IPath backend, IPath local ) {
- fBackendPath = backend;
- fLocalPath = local;
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.debug.core.sourcelookup.ISourceContainer#findSourceElements(java.lang.String)
- */
- public Object[] findSourceElements( String name ) throws CoreException {
- IPath path = new Path( name );
- if ( getBackendPath().isPrefixOf( path ) ) {
- path = path.removeFirstSegments( getBackendPath().segmentCount() );
- path = getLocalPath().append( path );
-
- IFile[] wsFiles = ResourcesPlugin.getWorkspace().getRoot().findFilesForLocation( path );
- ArrayList list = new ArrayList();
- for( int j = 0; j < wsFiles.length; ++j ) {
- if ( wsFiles[j].exists() ) {
- list.add( wsFiles[j] );
- if ( !isFindDuplicates() )
- break;
- }
- }
- if ( list.size() > 0 )
- return list.toArray();
-
- File file = path.toFile();
- if ( file.exists() && file.isFile() ) {
- return new Object[] { new LocalFileStorage( file ) };
- }
- }
- return EMPTY;
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.debug.core.sourcelookup.ISourceContainer#getName()
- */
- public String getName() {
- return MessageFormat.format( "{0} - {1}", new String[] { getBackendPath().toOSString(), getLocalPath().toOSString() } ); //$NON-NLS-1$
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.debug.core.sourcelookup.ISourceContainer#getType()
- */
- public ISourceContainerType getType() {
- return getSourceContainerType( TYPE_ID );
- }
-
- public IPath getLocalPath() {
- return fLocalPath;
- }
-
- public IPath getBackendPath() {
- return fBackendPath;
- }
-
- public void setLocalPath( IPath local ) {
- fLocalPath = local;
- }
-
- public void setBackendPath( IPath backend ) {
- fBackendPath = backend;
- }
-
- /* (non-Javadoc)
- * @see java.lang.Object#equals(java.lang.Object)
- */
- public boolean equals( Object o ) {
- if ( !(o instanceof MapEntrySourceContainer ) )
- return false;
- MapEntrySourceContainer entry = (MapEntrySourceContainer)o;
- return ( entry.getBackendPath().equals( getBackendPath() ) && entry.getLocalPath().equals( getLocalPath() ) );
- }
-
- public MapEntrySourceContainer copy() {
- return new MapEntrySourceContainer( fBackendPath, fLocalPath );
- }
-}
diff --git a/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/sourcelookup/MapEntrySourceContainerType.java b/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/sourcelookup/MapEntrySourceContainerType.java
deleted file mode 100644
index 8a49f71e4d8..00000000000
--- a/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/sourcelookup/MapEntrySourceContainerType.java
+++ /dev/null
@@ -1,69 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004, 2005 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.internal.core.sourcelookup;
-
-import org.eclipse.core.runtime.CoreException;
-import org.eclipse.core.runtime.IPath;
-import org.eclipse.core.runtime.Path;
-import org.eclipse.debug.core.sourcelookup.ISourceContainer;
-import org.eclipse.debug.core.sourcelookup.containers.AbstractSourceContainerTypeDelegate;
-import org.w3c.dom.Document;
-import org.w3c.dom.Element;
-import org.w3c.dom.Node;
-
-/**
- * The map entry container type.
- */
-public class MapEntrySourceContainerType extends AbstractSourceContainerTypeDelegate {
-
- private final static String ELEMENT_NAME = "mapEntry"; //$NON-NLS-1$
- private final static String BACKEND_PATH = "backendPath"; //$NON-NLS-1$
- private final static String LOCAL_PATH = "localPath"; //$NON-NLS-1$
-
- /* (non-Javadoc)
- * @see org.eclipse.debug.core.sourcelookup.ISourceContainerTypeDelegate#createSourceContainer(java.lang.String)
- */
- public ISourceContainer createSourceContainer( String memento ) throws CoreException {
- Node node = parseDocument( memento );
- if ( node.getNodeType() == Node.ELEMENT_NODE ) {
- Element element = (Element)node;
- if ( ELEMENT_NAME.equals( element.getNodeName() ) ) {
- String path = element.getAttribute( BACKEND_PATH );
- IPath backend = new Path( path );
- if ( !backend.isValidPath( path ) ) {
- abort( InternalSourceLookupMessages.getString( "MapEntrySourceContainerType.0" ), null ); //$NON-NLS-1$
- }
- path = element.getAttribute( LOCAL_PATH );
- IPath local = new Path( path );
- if ( !local.isValidPath( path ) ) {
- abort( InternalSourceLookupMessages.getString( "MapEntrySourceContainerType.1" ), null ); //$NON-NLS-1$
- }
- return new MapEntrySourceContainer( backend, local );
- }
- abort( InternalSourceLookupMessages.getString( "MapEntrySourceContainerType.2" ), null ); //$NON-NLS-1$
- }
- abort( InternalSourceLookupMessages.getString( "MapEntrySourceContainerType.3" ), null ); //$NON-NLS-1$
- return null;
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.debug.core.sourcelookup.ISourceContainerTypeDelegate#getMemento(org.eclipse.debug.core.sourcelookup.ISourceContainer)
- */
- public String getMemento( ISourceContainer container ) throws CoreException {
- MapEntrySourceContainer entry = (MapEntrySourceContainer)container;
- Document document = newDocument();
- Element element = document.createElement( ELEMENT_NAME );
- element.setAttribute( BACKEND_PATH, entry.getBackendPath().toOSString() );
- element.setAttribute( LOCAL_PATH, entry.getLocalPath().toOSString() );
- document.appendChild( element );
- return serializeDocument( document );
- }
-}
diff --git a/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/sourcelookup/MappingSourceContainerType.java b/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/sourcelookup/MappingSourceContainerType.java
deleted file mode 100644
index f25762f07d7..00000000000
--- a/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/sourcelookup/MappingSourceContainerType.java
+++ /dev/null
@@ -1,93 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004, 2005 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.internal.core.sourcelookup;
-
-import java.util.ArrayList;
-import java.util.Iterator;
-import java.util.List;
-import org.eclipse.cdt.debug.core.sourcelookup.MappingSourceContainer;
-import org.eclipse.core.runtime.CoreException;
-import org.eclipse.debug.core.DebugPlugin;
-import org.eclipse.debug.core.sourcelookup.ISourceContainer;
-import org.eclipse.debug.core.sourcelookup.ISourceContainerType;
-import org.eclipse.debug.core.sourcelookup.containers.AbstractSourceContainerTypeDelegate;
-import org.w3c.dom.Document;
-import org.w3c.dom.Element;
-import org.w3c.dom.Node;
-
-/**
- * The mapping container type.
- */
-public class MappingSourceContainerType extends AbstractSourceContainerTypeDelegate {
-
- private final static String ELEMENT_MAPPING = "mapping"; //$NON-NLS-1$
- private final static String ELEMENT_MAP_ENTRY = "mapEntry"; //$NON-NLS-1$
- private final static String ATTR_NAME = "name"; //$NON-NLS-1$
- private final static String ATTR_MEMENTO = "memento"; //$NON-NLS-1$
-
- /* (non-Javadoc)
- * @see org.eclipse.debug.core.sourcelookup.ISourceContainerTypeDelegate#createSourceContainer(java.lang.String)
- */
- public ISourceContainer createSourceContainer( String memento ) throws CoreException {
- Node node = parseDocument( memento );
- if ( node.getNodeType() == Node.ELEMENT_NODE ) {
- Element element = (Element)node;
- if ( ELEMENT_MAPPING.equals( element.getNodeName() ) ) {
- String name = element.getAttribute( ATTR_NAME );
- if ( name == null )
- name = ""; //$NON-NLS-1$
- List entries = new ArrayList();
- Node childNode = element.getFirstChild();
- while( childNode != null ) {
- if ( childNode.getNodeType() == Node.ELEMENT_NODE ) {
- Element child = (Element)childNode;
- if ( ELEMENT_MAP_ENTRY.equals( child.getNodeName() ) ) {
- String childMemento = child.getAttribute( ATTR_MEMENTO );
- if ( childMemento == null || childMemento.length() == 0 ) {
- abort( InternalSourceLookupMessages.getString( "MappingSourceContainerType.0" ), null ); //$NON-NLS-1$
- }
- ISourceContainerType type = DebugPlugin.getDefault().getLaunchManager().getSourceContainerType( MapEntrySourceContainer.TYPE_ID );
- MapEntrySourceContainer entry = (MapEntrySourceContainer)type.createSourceContainer( childMemento );
- entries.add( entry );
- }
- }
- childNode = childNode.getNextSibling();
- }
- MappingSourceContainer container = new MappingSourceContainer( name );
- Iterator it = entries.iterator();
- while( it.hasNext() ) {
- container.addMapEntry( (MapEntrySourceContainer)it.next() );
- }
- return container;
- }
- abort( InternalSourceLookupMessages.getString( "MappingSourceContainerType.1" ), null ); //$NON-NLS-1$
- }
- abort( InternalSourceLookupMessages.getString( "MappingSourceContainerType.2" ), null ); //$NON-NLS-1$
- return null;
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.debug.core.sourcelookup.ISourceContainerTypeDelegate#getMemento(org.eclipse.debug.core.sourcelookup.ISourceContainer)
- */
- public String getMemento( ISourceContainer container ) throws CoreException {
- Document document = newDocument();
- Element element = document.createElement( ELEMENT_MAPPING );
- element.setAttribute( ATTR_NAME, container.getName() );
- ISourceContainer[] entries = ((MappingSourceContainer)container).getSourceContainers();
- for ( int i = 0; i < entries.length; ++i ) {
- Element child = document.createElement( ELEMENT_MAP_ENTRY );
- child.setAttribute( ATTR_MEMENTO, entries[i].getType().getMemento( entries[i] ) );
- element.appendChild( child );
- }
- document.appendChild( element );
- return serializeDocument( document );
- }
-}
diff --git a/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/sourcelookup/SourceUtils.java b/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/sourcelookup/SourceUtils.java
deleted file mode 100644
index ab7dd1b0c71..00000000000
--- a/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/sourcelookup/SourceUtils.java
+++ /dev/null
@@ -1,189 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.internal.core.sourcelookup;
-
-import java.io.IOException;
-import java.io.StringReader;
-import java.text.MessageFormat;
-import java.util.ArrayList;
-import java.util.LinkedList;
-import java.util.List;
-import javax.xml.parsers.DocumentBuilder;
-import javax.xml.parsers.DocumentBuilderFactory;
-import javax.xml.parsers.ParserConfigurationException;
-import javax.xml.transform.TransformerException;
-import org.eclipse.cdt.debug.core.CDebugCorePlugin;
-import org.eclipse.cdt.debug.core.CDebugUtils;
-import org.eclipse.cdt.debug.core.sourcelookup.ICSourceLocation;
-import org.eclipse.cdt.debug.core.sourcelookup.IDirectorySourceLocation;
-import org.eclipse.cdt.debug.core.sourcelookup.IProjectSourceLocation;
-import org.eclipse.cdt.debug.core.sourcelookup.MappingSourceContainer;
-import org.eclipse.core.runtime.CoreException;
-import org.eclipse.core.runtime.IPath;
-import org.eclipse.core.runtime.IStatus;
-import org.eclipse.core.runtime.Status;
-import org.eclipse.debug.core.sourcelookup.ISourceContainer;
-import org.eclipse.debug.core.sourcelookup.containers.DirectorySourceContainer;
-import org.eclipse.debug.core.sourcelookup.containers.ProjectSourceContainer;
-import org.w3c.dom.Document;
-import org.w3c.dom.Element;
-import org.w3c.dom.Node;
-import org.w3c.dom.NodeList;
-import org.xml.sax.InputSource;
-import org.xml.sax.SAXException;
-
-public class SourceUtils {
-
- private static final String NAME_COMMON_SOURCE_LOCATIONS = "commonSourceLocations"; //$NON-NLS-1$
-
- private static final String NAME_SOURCE_LOCATION = "sourceLocation"; //$NON-NLS-1$
-
- private static final String ATTR_CLASS = "class"; //$NON-NLS-1$
-
- private static final String ATTR_MEMENTO = "memento"; //$NON-NLS-1$
-
- public static String getCommonSourceLocationsMemento( ICSourceLocation[] locations ) {
- Document document = null;
- Throwable ex = null;
- try {
- document = DocumentBuilderFactory.newInstance().newDocumentBuilder().newDocument();
- Element element = document.createElement( NAME_COMMON_SOURCE_LOCATIONS );
- document.appendChild( element );
- saveSourceLocations( document, element, locations );
- return CDebugUtils.serializeDocument( document );
- }
- catch( ParserConfigurationException e ) {
- ex = e;
- }
- catch( IOException e ) {
- ex = e;
- }
- catch( TransformerException e ) {
- ex = e;
- }
- CDebugCorePlugin.log( new Status( IStatus.ERROR, CDebugCorePlugin.getUniqueIdentifier(), 0, "Error saving common source settings.", ex ) ); //$NON-NLS-1$
- return null;
- }
-
- private static void saveSourceLocations( Document doc, Element node, ICSourceLocation[] locations ) {
- for( int i = 0; i < locations.length; i++ ) {
- Element child = doc.createElement( NAME_SOURCE_LOCATION );
- child.setAttribute( ATTR_CLASS, locations[i].getClass().getName() );
- try {
- child.setAttribute( ATTR_MEMENTO, locations[i].getMemento() );
- }
- catch( CoreException e ) {
- CDebugCorePlugin.log( e );
- continue;
- }
- node.appendChild( child );
- }
- }
-
- public static ICSourceLocation[] getCommonSourceLocationsFromMemento( String memento ) {
- ICSourceLocation[] result = new ICSourceLocation[0];
- if ( !isEmpty( memento ) ) {
- try {
- DocumentBuilder parser = DocumentBuilderFactory.newInstance().newDocumentBuilder();
- StringReader reader = new StringReader( memento );
- InputSource source = new InputSource( reader );
- Element root = parser.parse( source ).getDocumentElement();
- if ( root.getNodeName().equalsIgnoreCase( NAME_COMMON_SOURCE_LOCATIONS ) )
- result = initializeSourceLocations( root );
- }
- catch( ParserConfigurationException e ) {
- CDebugCorePlugin.log( new Status( IStatus.ERROR, CDebugCorePlugin.getUniqueIdentifier(), 0, "Error initializing common source settings.", e ) ); //$NON-NLS-1$
- }
- catch( SAXException e ) {
- CDebugCorePlugin.log( new Status( IStatus.ERROR, CDebugCorePlugin.getUniqueIdentifier(), 0, "Error initializing common source settings.", e ) ); //$NON-NLS-1$
- }
- catch( IOException e ) {
- CDebugCorePlugin.log( new Status( IStatus.ERROR, CDebugCorePlugin.getUniqueIdentifier(), 0, "Error initializing common source settings.", e ) ); //$NON-NLS-1$
- }
- }
- return result;
- }
-
- public static ICSourceLocation[] initializeSourceLocations( Element root ) {
- List sourceLocations = new LinkedList();
- NodeList list = root.getChildNodes();
- int length = list.getLength();
- for( int i = 0; i < length; ++i ) {
- Node node = list.item( i );
- short type = node.getNodeType();
- if ( type == Node.ELEMENT_NODE ) {
- Element entry = (Element)node;
- if ( entry.getNodeName().equalsIgnoreCase( NAME_SOURCE_LOCATION ) ) {
- String className = entry.getAttribute( ATTR_CLASS );
- String data = entry.getAttribute( ATTR_MEMENTO );
- if ( className == null || className.trim().length() == 0 ) {
- CDebugCorePlugin.log( "Unable to restore common source locations - invalid format." ); //$NON-NLS-1$
- continue;
- }
- Class clazz = null;
- try {
- clazz = CDebugCorePlugin.getDefault().getBundle().loadClass( className );
- }
- catch( ClassNotFoundException e ) {
- CDebugCorePlugin.log( MessageFormat.format( "Unable to restore source location - class not found {0}", new String[]{ className } ) ); //$NON-NLS-1$
- continue;
- }
- ICSourceLocation location = null;
- try {
- location = (ICSourceLocation)clazz.newInstance();
- }
- catch( IllegalAccessException e ) {
- CDebugCorePlugin.log( "Unable to restore source location: " + e.getMessage() ); //$NON-NLS-1$
- continue;
- }
- catch( InstantiationException e ) {
- CDebugCorePlugin.log( "Unable to restore source location: " + e.getMessage() ); //$NON-NLS-1$
- continue;
- }
- try {
- location.initializeFrom( data );
- sourceLocations.add( location );
- }
- catch( CoreException e ) {
- CDebugCorePlugin.log( "Unable to restore source location: " + e.getMessage() ); //$NON-NLS-1$
- }
- }
- }
- }
- return (ICSourceLocation[])sourceLocations.toArray( new ICSourceLocation[sourceLocations.size()] );
- }
-
- private static boolean isEmpty( String string ) {
- return (string == null || string.trim().length() == 0);
- }
-
- static public ISourceContainer[] convertSourceLocations( ICSourceLocation[] locations ) {
- ArrayList containers = new ArrayList( locations.length );
- int mappingCount = 0;
- for ( int i = 0; i < locations.length; ++i ) {
- if ( locations[i] instanceof IProjectSourceLocation ) {
- containers.add( new ProjectSourceContainer( ((IProjectSourceLocation)locations[i]).getProject(), false ) );
- }
- else if ( locations[i] instanceof IDirectorySourceLocation ) {
- IDirectorySourceLocation d = (IDirectorySourceLocation)locations[i];
- IPath a = d.getAssociation();
- if ( a != null ) {
- MappingSourceContainer mapping = new MappingSourceContainer( InternalSourceLookupMessages.getString( "SourceUtils.0" ) + (++mappingCount) ); //$NON-NLS-1$
- mapping.addMapEntries( new MapEntrySourceContainer[] { new MapEntrySourceContainer( a, d.getDirectory() ) } );
- containers.add( mapping );
-
- }
- containers.add( new DirectorySourceContainer( d.getDirectory(), d.searchSubfolders() ) );
- }
- }
- return (ISourceContainer[])containers.toArray( new ISourceContainer[containers.size()] );
- }
-}
diff --git a/debug/org.eclipse.cdt.debug.mi.core/.classpath b/debug/org.eclipse.cdt.debug.mi.core/.classpath
deleted file mode 100644
index fdbf17e6a4e..00000000000
--- a/debug/org.eclipse.cdt.debug.mi.core/.classpath
+++ /dev/null
@@ -1,9 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<classpath>
- <classpathentry kind="src" path="src"/>
- <classpathentry kind="src" path="mi"/>
- <classpathentry kind="src" path="cdi"/>
- <classpathentry kind="con" path="org.eclipse.pde.core.requiredPlugins"/>
- <classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER"/>
- <classpathentry kind="output" path="bin"/>
-</classpath>
diff --git a/debug/org.eclipse.cdt.debug.mi.core/.cvsignore b/debug/org.eclipse.cdt.debug.mi.core/.cvsignore
deleted file mode 100644
index ba077a4031a..00000000000
--- a/debug/org.eclipse.cdt.debug.mi.core/.cvsignore
+++ /dev/null
@@ -1 +0,0 @@
-bin
diff --git a/debug/org.eclipse.cdt.debug.mi.core/.options b/debug/org.eclipse.cdt.debug.mi.core/.options
deleted file mode 100644
index 76c7d9926fc..00000000000
--- a/debug/org.eclipse.cdt.debug.mi.core/.options
+++ /dev/null
@@ -1 +0,0 @@
-org.eclipse.cdt.debug.mi.core/debug=true \ No newline at end of file
diff --git a/debug/org.eclipse.cdt.debug.mi.core/.project b/debug/org.eclipse.cdt.debug.mi.core/.project
deleted file mode 100644
index 9039e6a47ea..00000000000
--- a/debug/org.eclipse.cdt.debug.mi.core/.project
+++ /dev/null
@@ -1,28 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<projectDescription>
- <name>org.eclipse.cdt.debug.mi.core</name>
- <comment></comment>
- <projects>
- </projects>
- <buildSpec>
- <buildCommand>
- <name>org.eclipse.jdt.core.javabuilder</name>
- <arguments>
- </arguments>
- </buildCommand>
- <buildCommand>
- <name>org.eclipse.pde.ManifestBuilder</name>
- <arguments>
- </arguments>
- </buildCommand>
- <buildCommand>
- <name>org.eclipse.pde.SchemaBuilder</name>
- <arguments>
- </arguments>
- </buildCommand>
- </buildSpec>
- <natures>
- <nature>org.eclipse.jdt.core.javanature</nature>
- <nature>org.eclipse.pde.PluginNature</nature>
- </natures>
-</projectDescription>
diff --git a/debug/org.eclipse.cdt.debug.mi.core/ChangeLog b/debug/org.eclipse.cdt.debug.mi.core/ChangeLog
deleted file mode 100644
index 83856982c5f..00000000000
--- a/debug/org.eclipse.cdt.debug.mi.core/ChangeLog
+++ /dev/null
@@ -1,1219 +0,0 @@
-2006-08-31 Mikhail Khodjaiants
- Bug 155816: NPE thrown by info threads
- Applied patch from James Blackburn (jamesblackburn+eclipse@gmail.com).
- * Target.java
-
-2006-08-22 Mikhail Khodjaiants
- Bug 145758: Unable to use the default command factories.
- * MANIFEST.MF
-
-2006-08-22 Mikhail Khodjaiants
- Bug 146725: Erroneous error message during GDB startup.
- * CygwinGDBCDIDebugger2.java
- * GDBCDIDebugger2.java
- * CommandFactory.java
- + MIGDBSetNewConsole.java
- * StandardLinuxCommandFactory.java
-
-2006-08-22 Mikhail Khodjaiants
- Bug 153894: Variable View: Can not format 'short int' to Hex.
- Applied patch from James Blackburn (jamesblackburn+eclipse@gmail.com).
- * SourceManager.java
-
-2006-05-25 Mikhail Khodjaiants
- Bug 137970: No default debugger in C++ managed project.
- * MIPlugin.java
-
-2006-05-25 Mikhail Khodjaiants
- Bug 109733: Request to make certain methods as public (MISession and MIInferior).
- * MIInferior.java
- * MISession.java
-
-2006-05-25 Mikhail Khodjaiants
- Bug 109733: Request to make certain methods as public (null check for setPrompt).
- * RxThread.java
-
-2006-04-21 Mikhail Khodjaiants
- Don't create pty when using gdbserver.
- * AbstractGDBCDIDebugger.java
- * GDBServerCDIDebugger2.java
-
-2006-04-21 Mikhail Khodjaiants
- Close the pty if the session creation failed.
- * MIPlugin.java
-
-2006-04-18 Mikhail Khodjaiants
- Duplicate message key.
- * MIPluginResources.properties
- * AbstractGDBCDIDebugger.java
-
-2006-04-17 Mikhail Khodjaiants
- Breakpoint can be temporary and hardware at the same time.
- * MIBreakInsert.java
-
-2006-04-16 Mikhail Khodjaiants
- Bug 113107: Make trace logs more readily available.
- * AbstractGDBCDIDebugger.java
- * IMILaunchConfigurationConstants.java
-
-2006-04-13 Mikhail Khodjaiants
- Bug 113107: Make trace logs more readily available.
- Core support for the "Verbose Mode" action.
- * Target.java
- * MISession.java
- * RxThread.java
- * AbstractGDBCDIDebugger.java
- + GDBProcess.java
-
-2006-04-12 Mikhail Khodjaiants
- Write log messages to the system out instead of err.
- * MIPlugin.java
-
-2006-04-12 Mikhail Khodjaiants
- Bug 136206: Suppress Resumed events when processing solib events.
- * EventManager.java
- * RxThread.java
- * Command.java
- * MIEvent.java
-
-2006-04-12 Mikhail Khodjaiants
- Bug 119740: allow to specify only a subset of shared objects that we want symbols to be loaded for.
- Support for deferred breakpoints.
- * BreakpointManager.java
- * EventManager.java
- * SharedLibraryManager.java
- * Target.java
- * GDBCDIDebugger.java
- * GDBCDIDebugger2.java
- * GDBDebugger.java
-
-2006-04-10 Mikhail Khodjaiants
- Bug 119740: allow to specify only a subset of shared objects that we want symbols to be loaded for.
- * SharedLibraryManager.java
- * GDBCDIDebugger2.java
- * IMILaunchConfigurationConstants.java
- * MICoreUtils.java
-
-2006-04-10 Mikhail Khodjaiants
- "set solib-search-path" and "show solib-search-path" are not supported on Windows.
- * StandardWinCommandFactory.java
-
-2006-04-03 Mikhail Khodjaiants
- Bug 134617: The "stop on shared library event" option doesn't work.
- * GDBCDIDebugger2.java
-
-2006-03-31 Mikhail Khodjaiants
- Corrected position of the "try-catch-finally" clause in createSession.
- * AbstractGDBCDIDebugger.java
-
-2006-03-31 Mikhail Khodjaiants
- Throw OperationCanceledException instead of IOException when getGDBprocess is canceled.
- * MIProcessAdapter.java
-
-2006-03-27 Mikhail Khodjaiants
- Cleaned up the "Session" class constructors.
- * Session.java
-
-2006-03-27 Mikhail Khodjaiants
- Added the "getSessionConfiguration" method to allow clients to provide their own session configurations.
- * AbstractGDBCDIDebugger.java
-
-2006-03-23 Mikhail Khodjaiants
- Pass ILaunch instead of ILaunchConfiguration.
- Added "getGDBPath" method.
- * AbstractGDBCDIDebugger.java
- * CygwinGDBCDIDebugger2.java
- * GDBCDIDebugger2.java
- * GDBServerCDIDebugger2.java
-
-2006-03-23 Mikhail Khodjaiants
- Added default attribute value for ATTR_DEBUG_NAME.
- * IMILaunchConfigurationConstants.java
-
-2006-03-21 Mikhail Khodjaiants
- Missing error message.
- * MIPluginResources.properties
-
-2006-03-20 Mikhail Khodjaiants
- Made "getCommandFile" and "getWorkingDirectory" methods protected.
- * GDBCDIDebugger2.java
-
-2006-03-16 Mikhail Khodjaiants
- ILaunch is added to the arguments list of "doStartSession".
- * AbstractGDBCDIDebugger.java
- * CygwinGDBCDIDebugger2.java
- * GDBCDIDebugger2.java
-
-2006-03-13 Mikhail Khodjaiants
- Added default implementation for "getExtraArguments". No need to force
- clients to implement this method.
- * AbstractGDBCDIDebugger.java
-
-2006-02-09 Mikhail Khodjaiants
- Bug 114793: Add an extension point to contribute command factories.
- Registered windows and linux specific command factories for gdbserver.
- * plugin.properties
- * plugin.xml
-
-2006-02-09 Mikhail Khodjaiants
- The inferior is in the suspended state when connecting to gsbserver.
- * GDBServerCDIDebugger2.java
-
-2006-02-08 Mikhail Khodjaiants
- Bug 114793: Add an extension point to contribute command factories.
- Added standard command factory for gdb server.
- * plugin.xml
- * plugin.properties
-
-2006-02-07 Mikhail Khodjaiants
- Bug 114793: Add an extension point to contribute command factories.
- + mi/org/eclipse/cdt/debug/mi/core/command/factories/linux (package)
- + LinuxCLIInfoSharedLibrary.java
- + LinuxCLIInfoSharedLibraryInfo.java
- + StandardLinuxCommandFactory.java
- * plugin.xml
-
-2006-02-07 Mikhail Khodjaiants
- Bug 126789: Use new "fullname" attribute of stack frame description.
- * MIStackListFrames.java
- * MIFrame.java
-
-2006-02-06 Mikhail Khodjaiants
- Suppress "set auto-solib" - returns error on Windows.
- * StandardWinCommandFactory.java
-
-2006-02-06 Mikhail Khodjaiants
- Use getters to access members of "MICommand".
- * MIBreakCondition.java
- * MICommand.java
- * MIDataDisassemble.java
- * MIEnvironmentCD.java
- * MIGDBSetEnvironment.java
-
-2006-02-06 Mikhail Khodjaiants
- Bug 114793: Add an extension point to contribute command factories.
- * MANIFEST.MF
- * CommandFactory.java
- + mi/org/eclipse/cdt/debug/mi/core/command/factories (package)
- + CommandFactoriesMessages.java
- + CommandFactoriesMessages.properties
- + CommandFactoryDescriptor.java
- + CommandFactoryManager.java
- + StandardCommandFactory.java
- + mi/org/eclipse/cdt/debug/mi/core/command/factories/win32 (package)
- + CygwinCommandFactory.java
- + CygwinMIEnvironmentCD.java
- + CygwinMIEnvironmentDirectory.java
- + StandardWinCommandFactory.java
- + WinCLIInfoSharedLibrary.java
- + WinCLIInfoSharedLibraryInfo.java
- + WinMIEnvironmentCD.java
- * CLIInfoSharedLibraryInfo.java
- + commandFactories.exsd
- - CygwinCommandFactory.java
- * CygwinGDBCDIDebugger.java
- * CygwinGDBCDIDebugger2.java
- * CygwinGDBDebugger.java
- - CygwinMIEnvironmentCD.java
- - CygwinMIEnvironmentDirectory.java
- * GDBCDIDebugger2.java
- * IMILaunchConfigurationConstants.java
- * MIPlugin.java
- * plugin.xml
- * plugin.properties
-
-2006-01-31 Mikhail Khodjaiants
- Bug 124966: GDBTypeParser.parse(String) parses incorrectly.
- Applied patch from Matthias Spycher (matthias@coware.com).
- * GDBTypeParser.java
-
-2006-01-27 Mikhail Khodjaiants
- Bug 107202: slow debug launch with external sources.
- Use "-p" option when passing a large number of directories to "cygpath".
- * CygwinMIEnvironmentDirectory.java
-
-2006-01-25 Mikhail Khodjaiants
- Reversing changes made to fix bug 107571. The fix for bug 119683 covers this problem too.
- * mi/org/eclipse/cdt/debug/mi/core/MISession.java
-
-2006-01-23 Mikhail Khodjaiants
- Bug 119683: long messages during launch cause gdb to timeout, launch to fail.
- * plugin.xml
- * plugin.properties
- * MISession.java
- + AbstractGDBCDIDebugger.java
- + CygwinGDBCDIDebugger2.java
- + GDBCDIDebugger2.java
- + GDBServerCDIDebugger2.java
- * MIPlugin.java
- * MIPluginResources.properties
-
-2006-01-04 Mikhail Khodjaiants
- Bug 118900: Display libraries loaded in post-mortem debug.
- Applied with modifications the patch from Joanne Woo (jwoo.mvista.com).
- * GDBCDIDebugger.java
-
-2005-12-27 Mikhail Khodjaiants
- Cleanup.
- * BreakpointManager.java
- * RegisterManager.java
-
-2005-12-27 Mikhail Khodjaiants
- Bug 109526: Support Eclipse-LazyStart and deprecate Eclipse-AutoStart.
- * MANIFEST.MF
-
-2005-12-20 Mikhail Khodjaiants
- Bug 120390: Avoiding .gdbinit
- * GDBCDIDebugger.java
- * GDBDebugger.java
- * GDBServerCDIDebugger.java
- * GDBServerDebugger.java
- * IMILaunchConfigurationConstants.java
- * MIPlugin.java
-
-2005-11-29 Mikhail Khodjaiants
- Partial fix for bug 118114: Cannot view typedef'ed array in debugger.
- * cdi/org/eclipse/cdt/debug/mi/core/cdi/model/VariableDescriptor.java
-
-2005-11-29 Mikhail Khodjaiants
- Bug 100298: [Memory View] Changing variable's value from variables view or memory view doesn't sync to each other.
- * cdi/org/eclipse/cdt/debug/mi/core/cdi/model/Variable.java
- * cdi/org/eclipse/cdt/debug/mi/core/cdi/model/MemoryBlock.java
-
-2005-11-02 Mikhail Khodjaiants
- Bug 113364: Wrong values displaying an array of structures.
- Previous fix didn't work for classes with access specifiers.
- * cdi/org/eclipse/cdt/debug/mi/core/cdi/VariableManager.java
- * cdi/org/eclipse/cdt/debug/mi/core/cdi/model/VariableDescriptor.java
-
-2005-10-21 Mikhail Khodjaiants
- Bug 113364: Wrong values displaying an array of structures.
- * cdi/org/eclipse/cdt/debug/mi/core/cdi/VariableManager.java
- * cdi/org/eclipse/cdt/debug/mi/core/cdi/model/VariableDescriptor.java
-
-2005-10-18 Mikhail Khodjaiants
- Bug 106632: Invalid detail value for arrays with dimension greater than 100.
- * cdi/org/eclipse/cdt/debug/mi/core/cdi/model/Variable.java
-
-2005-10-18 Mikhail Khodjaiants
- Bug 111568: Fix for corrupt stack messages not working.
- Applied patch from Timesys.
- * cdi/org/eclipse/cdt/debug/mi/core/cdi/model/Thread.java
-
-2005-09-01 Mikhail Khodjaiants
- Bug 108636: mi level selection option should be moved to the gdb page.
- * src/org/eclipse/cdt/debug/mi/core/GDBCDIDebugger.java
- * src/org/eclipse/cdt/debug/mi/core/GDBServerCDIDebugger.java
- * src/org/eclipse/cdt/debug/mi/core/IMILaunchConfigurationConstants.java
- * src/org/eclipse/cdt/debug/mi/core/MIPlugin.java
-
-2005-09-01 Mikhail Khodjaiants
- Bug 108424: Debugger stops on removed breakpoints.
- * cdi/org/eclipse/cdt/debug/mi/core/cdi/BreakpointManager.java
-
-2005-08-31 Alain Magloire
- Improve performance by caching the type result on the frame
- and on the RegisterManager. The patch is originally from Chris Wiebe
- with modifications.
- * cdi/org/eclipse/cdt/debug/mi/core/cdi/RegisterManager.java
- * cdi/org/eclipse/cdt/debug/mi/core/cdi/model/Register.java
- * cdi/org/eclipse/cdt/debug/mi/core/cdi/model/StackFrame.java
- * cdi/org/eclipse/cdt/debug/mi/core/cdi/model/VariableDescriptor.java
-
-2005-08-31 Alain Magloire
- Fix Pr 107571: Do not create the Console pipe is we
- have no consumer.
- * mi/org/eclipse/cdt/debug/mi/core/MISession.java
-
-2005-08-28 Alain Magloire
- Speed improvement after exchanging with the HP folks.
- HP has apps having hundred of local variable running on machine
- with hundred of registers. The latency of the command "-var-create"
- is too taxing. So we take the approach of not waiting for post command
- MISession.postCommand(MIVarCreate, -1) and synchronize when we need the
- mi varObj.
-
- The next step will be to cache the types, since sending ptype/whatis
- is also time consuming.
-
- * cdi/org/eclipse/cdt/debug/mi/core/cdi/ExpressionManager.java
- * cdi/org/eclipse/cdt/debug/mi/core/cdi/RegisterManager.java
- * cdi/org/eclipse/cdt/debug/mi/core/cdi/VariableManager.java
- * cdi/org/eclipse/cdt/debug/mi/core/cdi/model/Argument.java
- * cdi/org/eclipse/cdt/debug/mi/core/cdi/model/GlobalVariable.java
- * cdi/org/eclipse/cdt/debug/mi/core/cdi/model/LocalVariable.java
- * cdi/org/eclipse/cdt/debug/mi/core/cdi/model/Register.java
- * cdi/org/eclipse/cdt/debug/mi/core/cdi/model/ThreadStorage.java
- * cdi/org/eclipse/cdt/debug/mi/core/cdi/model/Variable.java
- * mi/org/eclipse/cdt/debug/mi/core/RxThread.java
-
-2005-08-26 Mikhail Khodjaiants
- Bug 108130: wrong type shown on breakpoint view for R watchpoint created from gdb console.
- * cdi/org/eclipse/cdt/debug/mi/core/cdi/BreakpointManager.java
-
-2005-08-25 Mikhail Khodjaiants
- Bug 66446: Use the debugger path as a debugger process label.
- * src/org/eclipse/cdt/debug/mi/core/GDBCDIDebugger.java
-
-2005-07-28 Alain Magloire
- Fix Pr 104421: The register did not update.
- * cdi/org/eclipse/cdt/debug/mi/core/cdi/RegisterManager.java
- * cdi/org/eclipse/cdt/debug/mi/core/cdi/model/Register.java
- * cdi/org/eclipse/cdt/debug/mi/core/cdi/model/StackFrame.java
- * cdi/org/eclipse/cdt/debug/mi/core/cdi/model/Target.java
- * cdi/org/eclipse/cdt/debug/mi/core/cdi/model/Thread.java
- * cdi/org/eclipse/cdt/debug/mi/core/cdi/model/Value.java
- * cdi/org/eclipse/cdt/debug/mi/core/cdi/model/Variable.java
- * cdi/org/eclipse/cdt/debug/mi/core/cdi/model/VariableDescriptor.java
- * cdi/org/eclipse/cdt/debug/mi/core/cdi/model/type/ArrayValue.java
-
-2005-07-26 Alain Magloire
- Fix for 92446
- * cdi/org/eclipse/cdt/debug/mi/core/cdi/VariableManager.java
- * cdi/org/eclipse/cdt/debug/mi/core/cdi/model/Value.java
- * cdi/org/eclipse/cdt/debug/mi/core/cdi/model/Variable.java
-
-2005-07-21 Alain Magloire
- Fix for PR 103193
- * cdi/org/eclipse/cdt/debug/mi/core/cdi/model/LocationBreakpoint.java
- * src/org/eclipse/cdt/debug/mi/core/MIPlugin.java
-
-2005-07-18 Alain Magloire
- GDB has now four different version of MI, so it has become
- important to give the user the choice of the version.
- * mi/org/eclipse/cdt/debug/mi/core/MISession.java
- * mi/org/eclipse/cdt/debug/mi/core/RxThread.java
- * mi/org/eclipse/cdt/debug/mi/core/command/CommandFactory.java
- * mi/org/eclipse/cdt/debug/mi/core/command/MICommand.java
- + mi/org/eclipse/cdt/debug/mi/core/command/MIVersion.java
- * src/org/eclipse/cdt/debug/mi/core/GDBCDIDebugger.java
- * src/org/eclipse/cdt/debug/mi/core/GDBDebugger.java
- * src/org/eclipse/cdt/debug/mi/core/GDBServerCDIDebugger.java
- * src/org/eclipse/cdt/debug/mi/core/MIPlugin.java
- * src/org/eclipse/cdt/debug/mi/core/MIProcessAdapter.java
-
-2005-07-10 Alain Magloire
- Fix for PR 100992: Setting breakpoints for methods
- * cdi/org/eclipse/cdt/debug/mi/core/cdi/BreakpointManager.java
-
-2005-07-07 Alain Magloire
- Try to suspend the target before disconnecting.
- * cdi/org/eclipse/cdt/debug/mi/core/cdi/model/Target.java
-
-2005-06-29 Alain Magloire
- Fix PR 100602
- * mi/org/eclipse/cdt/debug/mi/core/GDBTypeParser.java
-
-2005-06-28 Alain Magloire
- Fix PR 94612: addr =<PENDING>
- * mi/org/eclipse/cdt/debug/mi/core/MIFormat.java
-
-2005-06-27 Alain Magloire
- New command from newer version of gdb "set breakpoint pending"
- better handling of the breakpoint while the target is running.
- * cdi/org/eclipse/cdt/debug/mi/core/cdi/BreakpointManager.java
- * cdi/org/eclipse/cdt/debug/mi/core/cdi/EventManager.java
- * cdi/org/eclipse/cdt/debug/mi/core/cdi/BreakpointManager.java
- * cdi/org/eclipse/cdt/debug/mi/core/cdi/model/Target.java
- * mi/org/eclipse/cdt/debug/mi/core/command/CommandFactory.java
- + mi/org/eclipse/cdt/debug/mi/core/ccommand/MIGDBSetBreakpoinPending.java
-
-2005-06-27 Alain Magloire
- Bug when parsing "int *&" corrected.
- Change in ICDIReferenceValue.
- Use the type in the response of the var-create instead of reissuing -var-info-type
-
- * cdi/org/eclipse/cdt/debug/mi/core/cdi/CdiResource.properties
- * cdi/org/eclipse/cdt/debug/mi/core/cdi/SignalManager.java
- * cdi/org/eclipse/cdt/debug/mi/core/cdi/ SourceManager.java
- * cdi/org/eclipse/cdt/debug/mi/core/cdi/model/Value.java
- * cdi/org/eclipse/cdt/debug/mi/core/cdi/model/Variable.java
- * cdi;/org/eclipse/cdt/debug/mi/core/cdi/model/CharValue.java
- * cdi;/org/eclipse/cdt/debug/mi/core/cdi/model/IntergralValue.java
- * cdi;/org/eclipse/cdt/debug/mi/core/cdi/model/PointerValue.java
- * cdi;/org/eclipse/cdt/debug/mi/core/cdi/model/ReferenceValue.java
- * mi/org/eclipse/cdt/debug/mi/core/GDBTypeParser.java
- * mi/org/eclipse/cdt/debug/mi/core/MIInferior.java
-
-2005-06-27 Alain Magloire
- Base on a patch from Chris Wiebe.
- * cdi/org/eclipse/cdt/debug/mi/core/cdi/BreakpointManager.java
- * cdi/org/eclipse/cdt/debug/mi/core/cdi/EventManager.java
-
-2005-06-27 Alain Magloire
- Fix PR 100069
- * cdi/org/eclipse/cdt/debug/mi/core/cdi/Location.java
- * cdi/org/eclipse/cdt/debug/mi/core/cdi/Locator.java
- * cdi/org/eclipse/cdt/debug/mi/core/cdi/model/StackFrame.java
-
-2005-06-27 Alain Magloire
- Refactor the class extending CLICommand to CLIXXXX for more clarity.
- Pass the MIVersion in all of the class extending MICommand, this is
- necessary some command option will not be accepted depending on the version.
- Too much file to enumerate.
- * ...
-
-2005-06-25 Alain Magloire
- We should consider a "^done" like a suspended only for CLICommands, for example:
- (gdb) run
- ^done
- (gdb)
- * mi/org/eclipse/cdt/debug/mi/core/RxThread.java
-
-2005-06-06 Alain Magloire
- Fix PR 98182
- * cdi/org/eclipse/cdt/debug/mi/core/cdi/BreakpointManager.java
- * cdi/org/eclipse/cdt/debug/mi/core/cdi/LocationBreakpoint.java
-
-2005-05-25 Alain Magloire
- Fix PR 95705
- * mi/org/eclipse/cdt/debug/mi/core/output/MIInfoSharedLibraryInfo.java
-
-2005-05-16 Alain Magloire
- Fix PR 91975
- * cdi/org/eclipse/cdt/debug/mi/core/cdi/BreakpointManager.java
-
-2005-05-12 Alain Magloire
- Fix PR 94841
- * cdi/org/eclipse/cdt/debug/mi/core/cdi/model/Variable.java
-
-2005-04-28 Alain Magloire
- Added command -gdb-show endian
- * cdi/org/eclipse/cdt/debug/mi/core/cdi/model/Target.java
- * mi/org/eclipse/cdt/debug/mi/core/command/CommandFactory.java
- + mi/org/eclipse/cdt/debug/mi/core/command/MIGDBShowEndian.java
- - mi/org/eclipse/cdt/debug/mi/core/command/MIShowEndian.java
- + mi/org/eclipse/cdt/debug/mi/core/output/MIGDBShowEndianInfo.java
- - mi/org/eclipse/cdt/debug/mi/core/output/MIGDBShowEndian.java
-
-2005-04-27 Alain Magloire
- Changes in the CDI interface
- * cdi/org/eclipse/cdt/debug/core/cdi/model/BreakpointManager.java
- * cdi/org/eclipse/cdt/debug/core/cdi/model/Session.java
- * cdi/org/eclipse/cdt/debug/core/cdi/model/SourceManager.java
- * cdi/org/eclipse/cdt/debug/mi/core/cdi/model/Target.java
- * mi/org/eclipse/cdt/debug/mi/core/command/CommandFactory.java
- * mi/org/eclipse/cdt/debug/mi/core/command/MIEnvrionmentDirectory.java
- * src/org/eclipse/cdt/debug/mi/core/CygwinCommandfactory.java
- * src/org/eclipse/cdt/debug/mi/core/CygwinMIEnvironmentDirectory.java
-
-2005-04-25 Alain Magloire
- * cdi/org/eclipse/cdt/debug/mi/core/cdi/BreakpointManger.java
- * cdi/org/eclipse/cdt/debug/mi/core/cdi/CdiResources.properties
- * cdi/org/eclipse/cdt/debug/mi/core/cdi/Location.java
- + cdi/org/eclipse/cdt/debug/mi/core/cdi/Locator.java
- * cdi/org/eclipse/cdt/debug/mi/core/cdi/MI2CDIException.java
- * cdi/org/eclipse/cdt/debug/mi/core/cdi/SharedLibraryManager.java
-
- + cdi/org/eclipse/cdt/debug/mi/core/cdi/model/AddressBreakpoint.java
- + cdi/org/eclipse/cdt/debug/mi/core/cdi/model/FunctionBreakpoint.java
- + cdi/org/eclipse/cdt/debug/mi/core/cdi/model/LineBreakpoint.java
- + cdi/org/eclipse/cdt/debug/mi/core/cdi/model/LocationBreakpoint.java
- * cdi/org/eclipse/cdt/debug/mi/core/cdi/model/Breakpoint.java
- * cdi/org/eclipse/cdt/debug/mi/core/cdi/model/Exceptionpoint.java
- * cdi/org/eclipse/cdt/debug/mi/core/cdi/model/StackFrame.java
- * cdi/org/eclipse/cdt/debug/mi/core/cdi/model/Target.java
- * cdi/org/eclipse/cdt/debug/mi/core/cdi/model/Threa.java
- * cdi/org/eclipse/cdt/debug/mi/core/cdi/model/Watchpoint.java
-
-2005-04-05 Alain Magloire
- PR 90090
- * cdi/org/eclipse/cdt/debug/mi/core/cdi/EventManager.java
- * cdi/org/eclipse/cdt/debug/mi/core/cdi/event/ExitedEvent.java
-
-2005-03-24 Alain Magloire
- * cdi/org/eclipse/cdt/debug/mi/core/cdi/MemoryManager.java
- * cdi/org/eclipse/cdt/debug/mi/core/cdi/Memoryblock.java
- * cdi/org/eclipse/cdt/debug/mi/core/cdi/Target.java
- * mi/org/eclipse/cdt/debug/mi/core/command/MIShowEndian.java
- * mi/org/eclipse/cdt/debug/mi/core/output/MIShowEndianInfo.java
-
-2005-03-23 Alain Magloire
- Changes in the CDI ICDIMemoryBlock && ICDIMemoryBlockManagement API.
- * cdi/org/eclipse/cdt/debug/mi/core/cdi/MemoryManager.java
- * cdi/org/eclipse/cdt/debug/mi/core/cdi/model/MemoryBlock.java
- * cdi/org/eclipse/cdt/debug/mi/core/cdi/model/Target.java
-
-2005-03-09 Mikhail Khodjaiants
- Fix for bug 87546: Obsolete debug MI settings in Preference need to be removed.
- * RegisterManager.java
- * IMIConstants.java
- * MIPreferenceInitializer.java
-
-2005-03-07 Alain Magloire
- Fix for 87230: base on Jayaprakash ideas/patch
- On HP statck-list-frames answer contain not kosher strings
- * mi/org/eclipse/cdt/debug/mi/core/output/MIParser.java
-
-2005-02-01 Alain Magloire
- Part of Fix for PR 84165
- We check in the expression is a number and
- add a "*" for address watchpoint
- * cdi/org/eclipse/cdt/debug/mi/core/cdi/BreakpointManager.java
-
-2005-01-20 Mikhail Khodjaiants
- Fix for bug 83355: The disable/enable breakpoints durning debugging acts weird.
- * cdi\org\eclipse\cdt\debug\mi\core\cdi\model\Breakpoint.java
- * cdi\org\eclipse\cdt\debug\mi\core\cdi\BreakpointManager.java
-
-2005-01-13 Alain Magloire
- PR 82764 Fix the the type parsing.
- * mi/org/eclipse/cdt/debug/mi/core/GDBTypeParser.java
-
-2005-01-10 Mikhail Khodjaiants
- PR 82601 changes to the memory block interface
- * cdi/org/eclipse/cdt/debug/mi/core/cdi/model/ICDIMemoryBlock.java
- * mi/org/eclipse/cdt/debug/mi/core/output/MIMemory.java
-
-2005-01-10 Alain Magloire
- Fix for PR 82506
- * mi/org/eclipse/cdt/debug/mi/core/MISession.java
- * mi/org/eclipse/cdt/debug/mi/core/output/MIParser.java
-
-2004-12-20 Alain Magloire
- Fix for PR 81019 for MacOsX
- * mi/org/eclipse/cdt/debug/mi/core/output/MIVarListChildrenInfo.java
-
-2004-11-26 Alain Magloire
- Make the deferred breakpoint on by default.
- * cdi/org/eclipose/cdt/debug/mi/core/cdi/SharedLibraryManager.java
-
-2004-11-26 Alain Magloire
- Final fix for PR 79583
- * cdi/org/eclipose/cdt/debug/mi/core/cdi/EventManager.java
- * cdi/org/eclipose/cdt/debug/mi/core/cdi/SharedLibraryManager.java
-
-2004-11-26 Alain Magloire
- Final fix for PR 79452
- * cdi/org/eclipose/cdt/debug/mi/core/cdi/BreapointManager.java
-
-2004-11-26 Alain Magloire
- Fix for PR 79582
- * src/org/eclipse/cdt/debug/mi/core/CygwinGDBCDIDebugger.java
- * src/org/eclipse/cdt/debug/mi/core/GDBServerCDIDebugger.java
-
-2004-11-24 Alain Magloire
- Make the terminate() more responsive when gdb is shuting down.
- See long discussion part of the 77435 fixes and 40087.
-
- * cdi/org/eclipse/cdt/debug/mi/core/cdi/ExpressionManager.java
- * mi/org/eclipse/cdt/debug/core/MIInferior.java
-
-2004-11-23 Alain Magloire
- Tentative fix for 77435
- * cdi/org/eclipse/cdt/debug/mi/core/cdi/SourceManager.java
-
-2004-11-19 Alain Magloire
- Protect agains possible NPE.
- * cdi/org/eclipse/cdt/debug/mi/core/cdi/RegisterManager.java
- * cdi/org/eclipse/cdt/debug/mi/core/cdi/SourceManager.java
- * cdi/org/eclipse/cdt/debug/mi/core/cdi/model/VariableDescriptor.java
-
-2004-11-19 Alain Magloire
- Use the qualified name when creating a register.
- Destroy the corresponding gdb variable on register's disposal.
- * cdi/org/eclipse/cdt/debug/mi/core/cdi/RegisterManager.java
-
- Added the "dispose" method.
- * cdi/org/eclipse/cdt/debug/mi/core/cdi/model/Register.java
-
-2004-11-19 Alain Magloire
- RegisterManager.findRegister() was not implemented correctly
- * cdi/org/eclipse/cdt/debug/mi/core/cdi/RegisterManager.java
-
-2004-11-19 Alain Magloire
- No need for stackframe when creating the Type class,
- but rather use the target in the constructor.
-
-2004-11-19 Alain Magloire
- Fix for 78816
- * src/org/eclipse/cdt/debug/mi/core/MIPlugin.java
-
-2004-11-19 Alain Magloire
-
- Clear the confusion about sublist of stackframes.
- PR 78611
-
- * cdi/org/eclipse/cdt/debug/mi/core/cdi/model/Thread.java
- * cdi/org/eclipse/cdt/debug/mi/core/cdi/VariableManager.java
-
-2004-11-17 David Inglis
-
- ICDIDebugger change to use IBinaryObject instead of IBnaryExecutable
-
- * stc/org/eclipse/cdt/debug/mi/core/GDBCDIDebugger.java
-
-2004-11-17 Alain Magloire
- Fix for 78816
- * mi/org/eclipse/cdt/debug/mi/core/MIInferior.java
-
-2004-11-16 Alain Magloire
- Optimize things by providing a new method
- ICDIRegisterGroup.hasRegisters();
- * cdi/org/eclipse/cdt/debug/core/cdi/model/RegisterGroup.java
-
-2004-11-16 Alain Magloire
- Remove some warnings and use the new Launch key
- to decide whether or not to use pseudo tty.
- * mi/org/eclipse/cdt/debug/mi/core/TxThread.java
- * mi/org/eclipse/cdt/debug/mi/core/command/RawCommand.java
- * src/org/eclipse/cdt/debug/mi/core/MIPlugin.java
-
-2004-11-16 Alain Magloire
- NPE when watchpoints are set in the gdb console.
- * cdi/org/eclipse/cdt/debug/mi/core/cdi/BreakpointManager.java
-
-2004-11-16 Alain Magloire
- Do not check for isEnable() when changing condition.
- * cdi/org/eclipse/cdt/debug/mi/core/cdi/mode/Breakpoint.java
-
-2004-11-12 Mikhail Khodjaiants
- Implemented the "equals' method of the "Condition" class.
- * cdi/org/eclipse/cdt/debug/mi/core/cdi/Condition.java
-
-2004-11-12 Alain Magloire
- Fix for PR 78488
- * mi/org/eclipse/cdt/debug/mi/core/command/MICommand.java
-
-2004-11-11 Alain Magloire
- Fix for PR 75000, from PalmSource
- * cdi/org/eclipse/cdt/debug/core/cdi/model/Variable.java
- * cdi/org/eclipse/cdt/debug/core/cdi/model/VariableDescriptor.java
- * mi/org/eclipse/cdt/debug/mi/core/command/MIVarInfoType.java
-
-2004-11-10 Alain Magloire
- Fix for PR 51113 and PR 66268
- It allow more flexibility in the GDB console, for example
- when gdb require interactive questions.
-
- * mi/org/eclipse/cdt/debug/mi/core/CLIProcessor.java
- * mi/org/eclipse/cdt/debug/mi/core/MISession.java
- * mi/org/eclipse/cdt/debug/mi/core/RxThread.java
- * mi/org/eclipse/cdt/debug/mi/core/SessionProcess.java
- * mi/org/eclipse/cdt/debug/mi/core/TxThread.java
- * mi/org/eclipse/cdt/debug/core/command/MIGDBShowPrompt.java
- * mi/org/eclipse/cdt/debug/core/command/RawCommand.java
- * mi/org/eclipse/cdt/debug/core/output/MIOutput.java
- * mi/org/eclipse/cdt/debug/core/output/MIParser.java
-
-2004-11-09 Alain Magloire
- Throw not implemented exception for exception breakpoint
-
-2004-11-09 Alain Magloire
- Reverting the changes below, for PR 74496. After exchanging with
- the Palm folks, it was not fixing the problem.
- This PR can not be fix for CDT-2.1 moving
- it to 3.0 where we should have enough framework for a better fix.
-
- * cdi/org/eclipse/cdt/debug/mi/core/cdi/EventManager.java
-
-2004-11-08 Alain Magloire
- Fix for 74496 ; we should destroy the global
- variables if they are in the address range of a
- shared library being unloaded.
-
- * cdi/org/eclipse/cdt/debug/mi/core/cdi/EventManager.java
-
-2004-11-08 Mikhail Khodjaiants
- Added support for refresh preferences and properties.
- * IMIConstants.java
- * MIPlugin.java
- * MIPreferenceInitializer.java: new
- * RegisterManager.java
- * SharedLibraryManager.java
- * plugin.xml
-
-2004-11-08 Alain Magloire
- Implement new Interface ICDIFunctionFinished.
- It returns the return value of the function.
- * cdi/org/eclipse/cdt/debug/mi/core/cdi/FunctionFinished.java
- * cdi/org/eclipse/cdt/debug/mi/core/cdi/event/SuspendedEvent.java
- * mi/org/eclipse/cdt/debug/mi/core/event/MIFuncitonFinishedEvent.java
-
-2004-11-07 Alain Magloire
- Support for MIInterpreterExec
-
-2004-11-03 Alain Magloire
- Partial fix for 77435
- * cdi/org/eclipse/cdt/debug/mi/core/cdi/VariableManager.java
- * cdi/org/eclipse/cdt/debug/mi/core/cdi/model/VariableDescriptor.java
-
-2004-11-02 Alain Magloire
- Refactor ICDIConfiguratio --> ICDISessionConfiguration and ICDITargetConfiguration
- * cdi/org/eclipse/cdt/debug/core/cdi/Session.java
- * cdi/org/eclipse/cdt/debug/core/cdi/SessionConfiguration.java
- * cdi/org/eclipse/cdt/debug/core/cdi/model/Target.java
- * cdi/org/eclipse/cdt/debug/core/cdi/model/TargetConfiguration.java
-
-2004-11-02 Alain Magloire
- Tentative fix for PR 77435
- * cdi/org/eclipse/cdt/debug/mi/core/cdi/VariableManager.java
-
-2004-10-31 Alain Magloire
- Tentative fix for PR 74496
-
-2004-10-31 Alain Magloire
- Refactor ICDIVariableObject --> ICDIVariableDescriptor
- Refactor ICDIArgumentObject --> ICDIArgumentDescriptor
- Refactor ICDIRegisterObject --> ICDIRegisterDescriptor
- Addition ICDIThreadStorageDescriptor, ICDIThreadStorage
- Addition ICDILocalVariableDescriptor, ICDILocalVariable
- Addition ICDIGlobalVariableDescriptor, ICDIGlovalVariable
-
- Adjust the classes to the changes.
-
-2004-10-29 Alain Magloire
- Remove of ICDISharedLibraryManager
- * cdi/org/eclipse/cdt/debug/core/cdi/Session.java
- * cdi/org/eclipse/cdt/debug/core/cdi/SharedLibraryManager.java
- * cdi/org/eclipse/cdt/debug/core/cdi/model/Target.java
- * cdi/org/eclipse/cdt/debug/core/cdi/model/SharedLibraryManagement.java
-
- * src/org/eclipse/cdt/debug/mi/core/GDBCDIDebugger.java
- * src/org/eclipse/cdt/debug/mi/core/GDBServerCDIDebugger.java
-
-2004-10-28 Alain Magloire
- Add ICDIValue.getType() and ICDIExpression.geType() new methods.
-
-2004-10-26 Alain Magloire
- Remove ICDIMemoryManager in CDI
- * cdi/org/eclipse/cdt/debug/mi/core/cdi/Session.java
- * cdi/org/eclipse/cdt/debug/mi/core/cdi/MemoryManager.java
- * cdi/org/eclipse/cdt/debug/mi/core/cdi/EventManager.java
- * cdi/org/eclipse/cdt/debug/mi/core/cdi/model/Target.java
- * cdi/org/eclipse/cdt/debug/mi/core/cdi/model/MemoryBlock.java
- * cdi/org/eclipse/cdt/debug/mi/core/cdi/event/CreatedEvent.java
-
-2004-10-26 Alain Magloire
- Remove of ICDISourceManager in CDI
- * cdi/org/eclipse/cdt/debug/mi/core/cdi/Session.java
- * cdi/org/eclipse/cdt/debug/mi/core/cdi/SourceManager.java
- * cdi/org/eclipse/cdt/debug/mi/core/cdi/model/Target.java
-
- * mi/org/eclipse/cdt/debug/mi/core/cdi/command/MIDataDsassemble.java
-
-2004-10-26 Alain Magloire
- Remove of ICDISignalManager in CDI
- * cdi/org/eclipse/cdt/debug/mi/core/cdi/Session.java
- * cdi/org/eclipse/cdt/debug/mi/core/cdi/SignalManager.java
- * cdi/org/eclipse/cdt/debug/mi/core/cdi/model/Target.java
- * cdi/org/eclipse/cdt/debug/mi/core/cdi/model/Signal.java
-
-2004-10-25 Alain Magloire
- Remove of ICDExpressionManager in CDI
- ICDIExpression changes in the interface.
- * cdi/rg/eclipse/cdt/debug/mo/core/cdi/EventManager.java
- * cdi/rg/eclipse/cdt/debug/mo/core/cdi/ExpressionManager.java
- * cdi/rg/eclipse/cdt/debug/mo/core/cdi/Session.java
- * cdi/rg/eclipse/cdt/debug/mo/core/cdi/event/ChangedEvent.java
- * cdi/rg/eclipse/cdt/debug/mo/core/cdi/event/DestroyedEvent.java
- * cdi/rg/eclipse/cdt/debug/mo/core/cdi/model/Expression.java
- * cdi/rg/eclipse/cdt/debug/mo/core/cdi/model/Target.java
- * cdi/rg/eclipse/cdt/debug/mo/core/cdi/model/Variable.java
-
-2004-10-24 Alain Magloire
- Changes in ICDITarget.evaluateExpressionToString()
- * org/eclipse/cdt/debug/mi/core/cdi/model/Target.java
-
-2004-10-20 Alain Magloire
- Use the new ICDIDebugger interface
-
- * mi/org/eclipse/cdt/debug/mi/core/MIInferior.java
- * mi/org/eclipse/cdt/debug/mi/core/MISession.java
- * mi/org/eclipse/cdt/debug/mi/core/SessionProcess.java
- * src/org/eclipse/cdt/debug/mi/core/CygwinGDBCDIDebugger.java
- * src/org/eclipse/cdt/debug/mi/core/GDBCDIDebugger.java
- * src/org/eclipse/cdt/debug/mi/core/GDBDebugger.java
- * src/org/eclipse/cdt/debug/mi/core/GDBServerDebugger.java
- * src/org/eclipse/cdt/debug/mi/core/MIPlugin.java
- * src/org/eclipse/cdt/debug/mi/core/MIProcessAdapter.java
- * plugin.xml
-
-2004-10-20 David Inglis
- Fixed terminated delay for corefile
- * mi/org/eclipse/cdt/debug/mi/core/MIInferior.java
-
-2004-10-19 Alain Magloire
- Fix Core Launching
- * cdi/org/eclipse/cdt/debug/mi/core/cdi/model/Target.java
- * mi/org/eclipse/cdt/debug/mi/core/CoreProcess.java
- * mi/org/eclipse/cdt/debug/mi/core/MIInferior.java
- * src/org/eclipse/cdt/debug/mi/core/MIPlugin.java
-
-2004-10-18 Alain Magloire
- Adjust to changes in CDI
- * src/org/eclipse/cdt/debug/mi/core/cdi/model/RuntimeOptions.java
- * src/org/eclipse/cdt/debug/mi/core/cdi/model/Target.java
- * src/org/eclipse/cdt/debug/mi/core/cdi/Session.java
-
-2004-10-17 Alain Magloire
- Remove deprecated method in CDI adjust the implementation.
-
-2004-10-15 Alain Magloire
-
- The way we do breakpoints is changing. gdb does not have
- -break-thread-id command that would allow to change if a breakpoint
- is associated with a particular thread(the same way as in
- -break-condition, and -break-after). So to do thread breakpoint
- we associate 1 Eclipse breakpoint with n GDB breakpoints:
- 1:n
-
- * cdi/org/eclipse/cdt/debug/mi/core/cdi/BreakpointManager.java
- * cdi/org/eclipse/cdt/debug/mi/core/cdi/Condition.java
- * cdi/org/eclipse/cdt/debug/mi/core/cdi/EventManager.java
- * cdi/org/eclipse/cdt/debug/mi/core/cdi/model/Breakpoint.java
- * cdi/org/eclipse/cdt/debug/mi/core/cdi/model/Exceptionpoint.java
- * cdi/org/eclipse/cdt/debug/mi/core/cdi/model/Target.java
- * cdi/org/eclipse/cdt/debug/mi/core/cdi/model/Watchpoint.java
-
-2004-10-04 Alain Magloire
-
- IllegalMonitorException fix.
- mi/org/eclipse/cdt/debug/mi/core/MIInferior.java
- src/org/eclipse/cdt/debug/mi/core/MIProcessAdapter.java
-
-2004-09-22 Alain Magloire
- Makes the mi/ source folder independant of the cdt.core
- so we can make it a library.
- To many files to enumerate
-
-2004-09-17 Alain Magloire
- Support for 64 bits application
- PR 74056 74058. Pathc from Artyom Kuanbekov
- To much files to enumerate.
-
-2004-09-15 Alain Magloire
-
- Chang Type to take a VariableObject.
-
-2004-09-15 Alain Magloire
-
- The correct thread was not set.
- * cdi/org/eclipse/cdt/debug/mi/core/cdi/ExpressionManager.java
- * cdi/org/eclipse/cdt/debug/mi/core/cdi/VariableManager.java
- * cdi/org/eclipse/cdt/debug/mi/core/cdi/model/Thread.java
-
-2004-09-12 Alain Magloire
- Since MISession is attach to the Target, the
- way we fire termination events must change also.
- * cdi/org/eclipse/cdt/debug/mi/core/cdi/EventManager.java
- * cdi/org/eclipse/cdt/debug/mi/core/cdi/ProcessManager.java
- * cdi/org/eclipse/cdt/debug/mi/core/cdi/Session.java
- * cdi/org/eclipse/cdt/debug/mi/core/cdi/model/Target.java
- * src/org/eclipse/cdt/debug/mi/core/MISession.java
-
-2004-09-09 Alain Magloire
- Introduction of new classes in the CDI interface
- ICDIExecuteStep
- ICDIExecuteStepReturn
- ICDIExecuteResume
- ICDISuspend
- ICDIThreadGroup
- The code is adjust to the new demands.
-
-2004-09-07 Alain Magloire
-
- Remove ICDIBreakpointManager class
- * cdi/org/eclipse/cdt/debug/mi/core/cdi/BreakpointHit.java
- * cdi/org/eclipse/cdt/debug/mi/core/cdi/BreakpointManager.java
- * cdi/org/eclipse/cdt/debug/mi/core/cdi/EventManager.java
- * cdi/org/eclipse/cdt/debug/mi/core/cdi/Session.java
- * cdi/org/eclipse/cdt/debug/mi/core/cdi/WatchpointScope.java
- * cdi/org/eclipse/cdt/debug/mi/core/cdi/WatchpointTrigger.java
- * cdi/org/eclipse/cdt/debug/mi/core/cdi/model/Breakpoint.java
- * cdi/org/eclipse/cdt/debug/mi/core/cdi/model/Target.java
-
-2004-09-06 Alain Magloire
-
- The changes is move the MISession as part
- of Target. The rationale; we want to have
- Session
- ---------------
- | |
- Target(gdb) Target(gdb)
- To be able to do this we need to untie the MISession
- from Session.
-
- Also we are moving toward retiring the ICDIXXXXManager
- and move the methods in the the proper methods.
-
-2004-09-01 Alain Magloire
-
- Fix for 72974
- * cdi/org/eclipse/cdt/debug/mi/core/cdi/BreakpointManager.java
-
-2004-08-14 Alain Magloire
-
- Fix for 71992.
- * src/org/eclipse/cdt/debug/mi/core/GDBTypeParser.java
-
-2004-08-05 Alain Magloire
-
- Tentative Fix for PR 69991
- * src/org/eclipse/cdt/debug/mi/core/RxThread.java
-
-2004-07-22 Alain Magloire
-
- Fix for PR 70688
- * src/org/eclipse/cdt/debug/mi/core/GDBTypeParser.java
-
-2004-07-12 Alain Magloire
-
- Remove some compiler warnings.
-
- * cdi/org/eclipse/cdt/debug/mi/core/cdi/model/Register.java
- * cdi/org/eclipse/cdt/debug/mi/core/cdi/model/Thread.java
- * cdi/org/eclipse/cdt/debug/mi/core/cdi/model/Variable.java
-
- * mi/org/eclipse/cdt/debug/mi/core/command/CygwinMIEnvirnmentDirectory.java
- * src/org/eclipse/cdt/debug/mi/core/CygwinGDBDebugger.java
- * src/org/eclipse/cdt/debug/mi/core/GDBTypeParser.java
- * src/org/eclipse/cdt/debug/mi/core/MIPlugin.java
-
-2004-07-09 Alain Magloire
-
- Patch from gwatson to deal with Mac
- version of gdb, there gdb as a different
- syntax but still valid.
-
- * mi/org/eclipse/cdt/debug/mi/core/output/MIArg.java
-
-2004-07-09 Alain Magloire
-
- Patch from Stefan Bylund for PR 69711
- Added support for thread name.
-
- * cdi/org/eclipse/cdt/debug/mi/core/cdi/model/Target.java
- * cdi/org/eclipse/cdt/debug/mi/core/cdi/model/Thread.java
- * mi/org/eclipse/cdt/debug/mi/core/output/MIInfoThreadsInfo.java
-
-2004-07-02 Mikhail Khodjaiants
-
- Fix for bug 68934: Debug into dll doesn't work.
- The "solib-search-path" and "stop-on-solib-events" options are not supported by gdb on CygWin.
- * src/org/eclipse/cdt/debug/mi/core/CygwinGDBDebugger.java
-
-2004-07-02 Alain Magloire
-
- * cdi/org/eclipse/cdt/debug/mi/core/cdi/ProcessManager.java
- * cdi/org/eclipse/cdt/debug/mi/core/cdi/ThreadManager.java
-
-2004-06-29 Alain Magloire
-
- When selecting threads gdb can reset the current
- stack frame on us. We should be aware of it and reset.
-
- * cdi/org/eclipse/cdt/debug/mi/core/cdi/mode/Target.java
-
-2004-06-24 Alain Magloire
-
- Fix 68226
- * cdi/org/eclipse/cdt/debug/mic/core/cdi/EventManager.java
- * cdi/org/eclipse/cdt/debug/mic/core/cdi/Configuration.java
- * cdi/org/eclipse/cdt/debug/mic/core/cdi/SoourceManager.java
-
-2004-06-22 Alain Magloire
-
- Fix PR 68176
- * mi/org/eclipse/cdt/debug/mi/core/command/CygwinMIEnvironmentCD.java
-
-2004-06-09 Alain Magloire
- Fix for PR 66338
- * cdi/org/eclipse/cdt/debug/mi/core/cdi/BreakpointManager.java
- * cdi/org/eclipse/cdt/debug/mi/core/cdi/Condition.java
- * cdi/org/eclipse/cdt/debug/mi/core/cdi/EventManager.java
- * cdi/org/eclipse/cdt/debug/mi/core/cdi/model/Breakpoint.java
-
-2004-06-09 Alain Magloire
-
- Keep the breakpoint disable when doing
- deffered breakpoint installation.
-
- * cdt/org/eclpse/cdt/debug/mi/core/cdi/EventManager.java
-
-2004-06-08 Alain Magloire
-
- Fix for PR 65077
-
- * mi/org/eclipse/cdt/debug/mi/core/command/CygwinCommandFactory.java
- * mi/org/eclipse/cdt/debug/mi/core/command/CygwinMIEnvironmentCD.jav
- * src/org/eclipse/cdt/debug/mi/core/CygwinGDBDebugger.java
-
-2004-06-02 Mikhail Khodjaiants
-
- Moved externalized strings to the right property file.
-
- * cdi/org/eclipse/cdt/debug/mi/core/cdi/CdiResources.properties
- * src/org/eclipse/cdt/debug/mi/core/MIPluginResources.properties
-
-2004-0602 Alain Magloire
-
- Overload getFullName() for registerObject
-
- * cdi/org/eclipse/cdt/debug/mi/core/cdi/mode/RegisterObject.java
-
-2004-05-28 Alain Magloire
-
- GDB has special "types"
- int8_t int16_t etc ... parse them also.
-
- * cdi/org/eclipse/cdt/debug/mi/core/cdi/SourceManager.java
- * cdi/org/eclipse/cdt/debug/mi/core/cdi/model/Register.java
- * cdi/org/eclipse/cdt/debug/mi/core/cdi/model/RegisterObject.java
- * cdi/org/eclipse/cdt/debug/mi/core/cdi/model/type/ArrayValue.java
-
-2004-05-28 Alain Magloire
-
- QuickFix for PR 58249
-
- * cdi/org/eclipse/cdt/debug/mi/core/cdi/SourceManager.java
-2004-05-28 Alain Magloire
-
- Error in looking for the CIdentifier.
- * src/org/eclipse/cdt/debug/mi/core/GDBTypeParser.java
-
-2004-05-28 Alain Magloire
-
- Fix to PR 60020.
- GDB returns the children when a pointer
- points to a structure.
- Also ignore the keyword "const" when parsing.
-
- * cdi/org/eclipse/cdt/debug/mi/core/cdi/SourceManager.java
- * cdi/org/eclipse/cdt/debug/mi/core/cdi/model/Variable.java
- * cdi/org/eclipse/cdt/debug/mi/core/cdi/model/VariableObject.java
- * src/org/eclipse/cdt/debug/mi/core/GDBTypeParser.java
-
-2004-05-18 Alain Magloire
-
- Remove dependencies on the compatibility plugin
- and move to be more Eclipse-3.0 compliant.
-
-2004-05-07 Alain Magloire
- PR 57127. Pass the stream verbatim
- even if it has spaces.
- This what gdb expects.
-
- * mi/org/eclipse/cdt/debug/mi/core/command/MIEnvironmentCD.java
-
-2004-05-07 Alain Magloire
-
- Patch from Keith Rolling(Palm Source).
- PR 60664
- * src/org/eclipse/cdt/debug/mi/core/MIInferior.java
-
-2004-04-01 Alain Magloire
-
- GDBServer configuration should be "*" not "native"
-
- * plugin.xml
-
-2004-03-23 Alain Magloire
-
- Fix for bug 55766: The Shared Libraries view displays the wrong icon if the "Load Symbols" action fails.
-
- * src/org/eclipse/cdt/debug/mi/core/cdi/SharedLibraryManager.java
-
-2004-03-17 Alain Magloire
-
- Changes pass the array of events instead
- of one at a time
-
- * cdi/org/eclipse/cdt/debug/mi/core/cdi/EventManager.java
- * cdi/org/eclipse/cdt/debug/mi/core/cdi/Manager.java
-
-2004-03-16 Tanya Wolff
-
- Marked strings in src as non-translatable
- * src/GDBServerDebugger.java
- * src/GDBTypeParser.java
- * src/RxThread.java
-
-2004-03-14 Alain Magloire
-
- Break the ChangeLog file in two.
-
- * ChangeLog
- * ChangeLog-2003
-
-2004-03-14 Alain Magloire
-
- The Managers extends Manager class for more flexibility
-
- * cdi/org/eclipse/cdt/debug/mi/core/cdi/Manager.java
-
-2004-03-12 Tanya Wolff
-
- Marked strings as non-translatable and externalized strings in new exceptions thrown.
-
- * cdi/
- * src/
-
-2004-03-12 Tanya Wolff
-
- Marked strings as non-translatable.
-
- * mi/
-
-2004-03-01 Alain Magloire
-
- Reog. New source browser.
- Move the classes to the appropriate categories.
-
- * mi/
- * cdi/
-
-2004-02-19 Alain Magloire
-
- PR #52317
- The children were added in the wrong order.
-
- * src/org/eclipse/cdt/debug/mi/core/GDBTypeParser.java
-
-2004-02-17 Alain Magloire
-
- If we attach save the PID for later
- for example to be able to suspend.
-
- * src/org/eclipse/cdt/debug/mi/core/MIInferior.java
- * src/org/eclipse/cdt/debug/mi/core/MIPlugin.java
-
-2004-02-11 Alain Magloire
-
- Use String.endsWith("(gdb)") to detect the prompt.
- Sometimes gdb does not flush the endline.
-
- * src/org/eclipse/cdt/debug/mi/core/MIPlugin.java
-
-2004-01-30 Alain Magloire
-
- Allow the clients to override the interrupt.
-
- * src/org/eclipse/cdt/debug/mi/core/MIInferior.java
- * src/org/eclipse/cdt/debug/mi/core/TxThread.java
- * src/org/eclipse/cdt/debug/mi/core/command/CommandFactory.java
- * src/org/eclipse/cdt/debug/mi/core/command/MICommand.java
-
-2004-01-29 Alain Magloire
-
- The CDT debug ui prefers things to be in ascending
- number. It makes life easier so we comply.
-
- * src/org/eclipse/cdt/debug/mi/core/output/MIInfoThreadsInfo.java
-
-2004-01-28 Alain Magloire
-
- Some clients using MI need to have access to thoes
- methods change the scope for protected.
-
- * src/org/eclipse/cdt/debug/mi/core/cdi/model/Value.java
- * src/org/eclipse/cdt/debug/mi/core/command/CLICommand.java
- * src/org/eclipse/cdt/debug/mi/core/output/MIInfoThreadsInfo.java
-
-2004-01-22 Alain Magloire
-
- Cache the stackframes when we become suspended, to reduce
- the chat between gdb.
-
- * src/org/eclipse/cdt/debug/mi/core/cdi/model/Thread.java
-
diff --git a/debug/org.eclipse.cdt.debug.mi.core/ChangeLog-2003 b/debug/org.eclipse.cdt.debug.mi.core/ChangeLog-2003
deleted file mode 100644
index 60b45209194..00000000000
--- a/debug/org.eclipse.cdt.debug.mi.core/ChangeLog-2003
+++ /dev/null
@@ -1,2151 +0,0 @@
-2003-12-22 Mikhail Khodjaiants
- Fix for bug 49282 terminate the gdb session if the termination of the inferior fails.
-
- * src/org/eclipse/cdt/debug/mi/core/cdi/model/Target.java
-
-2003-12-22 Mikhail Khodjaiants
- Fix for Bug 49278 do not retry the "info threads" command if the first attempt fails.
- Throw an exception from the "getCThreads" method when it fails.
-
- * src/org/eclipse/cdt/debug/mi/core/cdi/model/Target.java
-
-2003-12-18 Alain Magloire
-
- PR 49148
- Set environment variable value to give the program.
- Arguments are VAR VALUE where VAR is variable name and VALUE is value.
- VALUES of environment variables are uninterpreted strings.
- This does not affect the program until the next "run" command.
-
- So pass the string raw.
-
- * src/org/eclipse/cdt/debug/mi/core/command/MIGDBSetEnvironment.java
- * src/org/eclipse/cdt/debug/mi/core/cdi/RuntimeOptions.java
- * src/org/eclipse/cdt/debug/mi/core/CommandFactory.java
-
-2003-12-17 Mikhail Khodjaiants
-
- Fix for bug 49061: Different values are used as default for the "Load shared library symbols automatically" option.
-
- * src/org/eclipse/cdt/debug/mi/core/GDBDebugger.java
- * src/org/eclipse/cdt/debug/mi/core/GDBServerDebugger.java
- * src/org/eclipse/cdt/debug/mi/core/IMILaunchConfigurationConstants.java
- * src/org/eclipse/cdt/debug/mi/core/CygwinGDBDebugger.java
-
-2003-12-16 Mikhail Khodjaiants
-
- Show the gdb arguments when tracing.
-
- * src/org/eclipse/cdt/debug/mi/core/MIPlugin.java
-
-2003-12-16 Mikhail Khodjaiants
-
- Fix for PR 48870: Terminate gdb if attach to process fails.
-
- * src/org/eclipse/cdt/debug/mi/core/MIPlugin.java
-
-2003-12-09 Alain Magloire
-
- Do not try to interrupt if the target was suspended.
-
- * src/org/eclipse/cdt/debug/mi/core/MIInferior.java
-
-2003-12-08 Alain Magloire
-
- Target.terminate() did not pass the exception up.
- Added new method MIInferior.terminate().
-
- * src/org/eclipse/cdt/debug/mi/core/MIInferior.java
- * src/org/eclipse/cdt/debug/mi/core/cdi/model/Target.java
-
-2003-12-02 Alain Magloire
-
- Retry the stack-info-depth when it fails the first time
- and decrement the count. GDB can cope up the second try
- and probably mark the thread invalid.
- Patch base on Ashish Karkare patch:
-
- * src/org/eclipse/cdt/debug/mi/core/cdi/model/Thread.java
-
-2003-11-26 Mikhail Khodjaiants
- Cleanup.
-
- * src/org/eclipse/cdt/debug/mi/core/cdi/model/Variable.java
- * src/org/eclipse/cdt/debug/mi/core/GDBTypeParser.java
-
-2003-11-26 Mikhail Khodjaiants
- Cleanup.
-
- * src/org/eclipse/cdt/debug/mi/core/GDBDebugger.java
- * src/org/eclipse/cdt/debug/mi/core/GDBServerDebugger.java
- * src/org/eclipse/cdt/debug/mi/core/CygwinGDBDebugger.java
- * src/org/eclipse/cdt/debug/mi/core/cdi/BreakpointManager.java
- * src/org/eclipse/cdt/debug/mi/core/cdi/event/ResumedEvent.java
- * src/org/eclipse/cdt/debug/mi/core/cdi/model/Target.java
- * src/org/eclipse/cdt/debug/mi/core/command/MIBreakAfter.java
- * src/org/eclipse/cdt/debug/mi/core/event/MIFunctionFinishedEvent.java
- * src/org/eclipse/cdt/debug/mi/core/event/MIInferiorSignalExitEvent.java
- * src/org/eclipse/cdt/debug/mi/core/event/MISignalEvent.java
- * src/org/eclipse/cdt/debug/mi/core/event/MIWatchpointTriggerEvent.java
- * src/org/eclipse/cdt/debug/mi/core/output/MIGDBShowDirectoriesInfo.java
- * src/org/eclipse/cdt/debug/mi/core/output/MIGDBShowSolibSearchPathInfo.java
- * src/org/eclipse/cdt/debug/mi/core/output/MIList.java
-
-2003-11-25 Alain Magloire
-
- Process the suspend event even if there is not threads
- or stack associated with the target.
-
- * src/org/eclipse/cdt/debug/mi/core/cdi/EventManager.java
-
-2003-11-22 Alain Magloire
-
- In MISession constructor if the initialization fails shutdown
- the Tx/RX/Event threads.
- In MIPlugin if the initialization fails shutdown the pty console.
- Ditto for GDBDebugger/GDBServerDebugger/CygwinGDBDebugger.
-
- * src/org/eclipse/cdt/debug/mi/core/MIPlugin.java
- * src/org/eclipse/cdt/debug/mi/core/MISession.java
- * src/org/eclipse/cdt/debug/mi/core/GDBDebugger.java
- * src/org/eclipse/cdt/debug/mi/core/GDBServerDebugger.java
- * src/org/eclipse/cdt/debug/mi/core/CygwinGDBDebugger.java
-
-2003-11-21 Alain Magloire
-
- The wrong MIPlugin.createCSession() method was used.
- Problem noted by Ashish.
-
- * src/org/eclipse/cdt/debug/mi/core/GDBServerDebugger.java
-
-2003-11-21 Mikhail Khodjaiants
-
- * src/org/eclipse/cdt/debug/mi/core/output/MIFrame.java
- Fix for PR 46592: Debug View shows Functions as func(type param,...)().
- Return an empty string instead of "??" if the function name is not available.
-
-2003-11-20 Alain Magloire
-
- Fix NPE: 46313. Setting breakpoint when the target was running
- was throwing NPE.
-
- * src/org/eclipse/cdt/debug/mi/core/cdi/BreakpointManager.java
- * src/org/eclipse/cdt/debug/mi/core/cdit/EventManager.java
-
-2003-11-19 Mikhail Khodjaiants
-
- Fix for PR 45533: MIException while creating MISession can leave an orphan gdb process.
- * src/org/eclipse/cdt/debug/mi/core/MIPlugin.java: removed the 'getAdjustedTimeout' method.
-
-2003-11-19 Mikhail Khodjaiants
-
- Fix for PR 45533: MIException while creating MISession can leave an orphan gdb process.
- * src/org/eclipse/cdt/debug/mi/core/MIPlugin.java: initialization of preferences by default values.
- * src/org/eclipse/cdt/debug/mi/core/MISession.java: removed the duplicate constant for the default
- launch timeout value.
-
-2003-11-13 Mikhail Khodjaiants
-
- * src/org/eclipse/cdt/debug/mi/core/output/MIFrame.java
- Fix for PR 46592: Debug View shows Functions as func(type param,...)().
- In some situations gdb returns the function names that include parameter types.
- To make the presentation consistent truncate the parameters.
-
-2003-11-06 Alain Magloire
-
- * src/org/eclipse/cdt/debug/mi/core/cdi/EventManager.java:
- Small fix for the defferred breakpoint support.
-
-2003-11-06 Alain Magloire
-
- Patch from Ashish Karkare:
- A CDT 1.2 patch that enables setting of
- serial line speed in the launch configuration when debugging remote targets.
-
- * src/org/eclipse/cdt/debug/mi/core/IGDBServerMILaunchConfigurationConstants.java
- New attribute definition DEV_SPEED.
-
- * src/org/eclipse/cdt/debug/mi/core/GDBServerDebugger.java
- Extracts serial speed value and passes it to createCSession().
-
-
-2003-10-29 Alain Magloire
-
- Deal with PR 45533
-
- Make a preferenc for Timeout and use it when launching
- the ICDebugger session, when way wait for for gdb
- to say "ready" by returning the prompt.
-
- * src/org/eclipse/cdt/debug/mi/core/MISession.java
- * src/org/eclipse/cdt/debug/mi/core/MIPlugin.java
- * src/org/eclipse/cdt/debug/mi/core/IMIConstants.java
-
-2003-10-17 Alain Magloire
-
- Put the framework to deal with deferred breakpoint.
-
- * src/org/eclipse/cdt/debug/mi/core/cdi/event/ResumeEvent.java
- Deal with MIRunningEvent.RETURN.
- * src/org/eclipse/cdt/debug/mi/core/cdi/model/Breakpoint.java
- Check if MIBreakpoint is null first.
- * src/org/eclipse/cdt/debug/mi/core/cdi/model/Watchpoint.java
- Check if MIWathchpoint is null first.
- * src/org/eclipse/cdt/debug/mi/core/cdi/BreakpointManager.java
- Implement Deferred Breakpoint
- * src/org/eclipse/cdt/debug/mi/core/cdi/SharedLibraryManager.java
- Implement Deferred Breakpoint
- * src/org/eclipse/cdt/debug/mi/core/GDBDebugger.java
- Enable deferredBreakpoint.
- * src/org/eclipse/cdt/debug/mi/core/CygwinDebugger.java
- Enable deferredBreakpoint.
-
-
-2003-10-07 Mikhail Khodjaiants
-
- All methods of 'IRuntimeOptions' should throw CDI exceptions in case of failure.
- * src/org/eclipse/cdt/debug/mi/core/cdi/RuntimeOptions.java
-
-2003-09-30 Alain Magloire
-
- ICDIVariableObject.equals();
-
- * src/org/eclipse/cdt/debug/mi/core/cdi/model/VariableObject.java
-
-2003-09-29 Mikhail Khodjaiants
- Added the initialization of the shared libraries' attributes to CygwinGDBDebugger.
-
- * src/org/eclipse/cdt/debug/mi/core/CygwinGDBDebugger.java
-
-2003-09-26 Alain Magloire
-
- Second part of PR 43496.
- On the startup of GDB, we have to wait for "(gdb)" prompt
- to make sure that gdb is ready to accept command.
-
- * src/org/eclipse/cdt/debug/mi/core/MIPlugin.java
-
-2003-09-25 Alain Magloire
-
- Fix for PR 43496.
- In the event of an error we should Process.destroy()
- after creating the Process.
-
- * src/org/eclipse/cdt/debug/mi/core/MIPlugin.java
-
-2003-09-11 Mikhail Khodjaiants
- Moving the shared library search paths block to mi UI.
- * IMILaunchConfigurationConstants.java: added the 'ATTR_DEBUGGER_SOLIB_PATH' attribute.
-
-2003-09-11 Alain Magloire
-
- Fix to info shared parsing.
-
- * src/org/eclipse/cdt/debug/mi/core/output/MIInfoSharedLibary.java
-
-2003-09-09 Mikhail Khodjaiants
- Regrouping the launch configuration constants.
- * IMILaunchConfigurationConstants.java
-
-2003-09-09 Mikhail Khodjaiants
- Added the 'stop-on-solib-events' option.
- Changed the initialization of the shared library search path.
- Changed the messages of the thrown exceptions.
- * GDBDebugger.java
-
-2003-09-09 Mikhail Khodjaiants
-
- CoreFileConfiguration supports shared libraries.
-
- * src/org/eclipse/cdt/debug/mi/core/cdi/CoreFileConfiguration.java
-
-2003-08-30 Alain Magloire
-
- Unnecessary synchronization making deadlocks. Should revisit this code.
-
- * src/org/eclipse/cdt/debug/mi/core/MIInferior.java
-
-2003-08-29 Mikhail Khodjaiants
-
- Added new command - 'set stop-on-solib-events'.
-
- * src/org/eclipse/cdt/debug/mi/core/command/MIGDBSetStopOnSolibEvents.java
- * src/org/eclipse/cdt/debug/mi/core/command/CommandFactory.java
-
- Implementation of the new methods added to the 'ICDISharedLibraryManager' interface.
-
- * src/org/eclipse/cdt/debug/mi/core/cdi/SharedLibraryManager.java
-
-2003-08-26 Alain Magloire
-
- This is still a hack: "info shared" the real solution
- is to implement in GDB/MI the corresponding command.
- So now we do weird parsing, that varies from platform
- to platform. For example Cygwin output of "info shared"
- is totally different from the GNU/Linux one etc ...
- We the best we can to cope ... but things will break.
-
- * src/org/eclipse.cdt/debug/mi/core/output/MIInfoSharedLibraryInfo.java
-
-2003-08-26 Alain Magloire
-
- Using the wrong method for toString() and we were returning
- a overly verbose string.
-
- * src/org/eclipse/cdt/debug/mi/core/GDBTypeParser.java
-
-2003-08-25 Alain Magloire
-
- Small fix, get the datatype for the GDBTypeParser.
-
- * src/org/eclipse/cdt/debug/mi/core/cdi/SourceManager.java
-
-2003-08-22 Alain Magloire
-
- For casting array we use the "@" format, hide it in
- the name. But show it the qualifiedName() since the
- expression is use to evaluate.
-
- * src/org/eclipse/cdt/debug/mi/core/cdi/model/Variable.java
- * src/org/eclipse/cdt/debug/mi/core/cdi/model/VariableObject.java
- * src/org/eclipse/cdt/debug/mi/core/cdi/VariableManager.java
-
-2003-08-21 Alain Magloire
-
- GDB varobj for the arrays children name only returns
- the index. We need to construct the entire name:
- char buffer[2]
- GDB return "0", "1" for the children names.
- We will return
- "buffer[0]", "buffer[1]"
-
- * src/org/eclipse/cdt/debug/mi/core/cdi/Variable.java
-
-2003-08-20 Alain Magloire
-
- GDB/MI altough define an interface that all commands should
- follow .. they do not. For example, we should be able
- to separate options from agument with a "--" string not
- all commands. The latest is -break-condition.
- So we override the MICommand.toString() to do specific
- parsing for specific commands.
-
- * src/org/eclipse/cdt/debug/mi/core/command/MICommand.java
- break the toString() method.
- * src/org/eclipse/cdt/debug/mi/core/command/MIBreakCondition.java
-
-2003-08-19 Alain Magloire
-
- Fix to the GDBTypeParser to deal with gdb
- awkwardness
- * src/org/eclipse/cdt/debug/mi/core/GDBTypeParser.java
-
-2003-08-19 Alain Magloire
-
- GDB, uses false category for C++ class/struct.
- Fix to return the correct name.
-
- * src/org/eclipse/cdt/debug/mi/core/cdi/model/Variable.java
-
-2003-08-18 Alain Magloire
-
- Patch from Chris Songer, excerpt from the email.
- Using the phrase "To ensure consistency between a register name and its
- number, the output list may include empty register names," the MI protocol
- appears to allow gdb to return a "sparse" array of registers by giving a 0
- length name in response to the -data-list-register-names-command. CDT 1.0.1
- does not handle this especially well and subsequently exposes a bug in GDB
- 5.1.3 and crashes it if the debugger has more than 3 register names of 0
- length.
-
- example:
-
- 8-data-list-register-names
- (gdb)
- 8^done,register-names=["ar0","ar1",... ,"","","","","","","ur0",\
- "ur1","ur2","ur3","ur4","ur5","ur6","ur7","","" ..]
-
-
- * src/org/eclipse/cdt/debug/mi/core/output/MIDataListRegisterNamesInfo.java:
- New method getNumRealNames().
- * src/org/eclipse/cdt/debug/mi/core/cdi/RegisterManager.java:
- Check if the register name is not empty.
-
-2003-08-18 Alain Magloire
-
- From the manual:
- By default GDB will automatically keep track of objects as they are
- loaded and unloaded by the dynamic linker. By using the command `set
- stop-on-solib-events 1' you can arrange for GDB to stop the inferior
- when shared library events occur, thus allowing you to set breakpoints
- in shared libraries which are explicitly loaded by the inferior.
-
- * src/org/eclipse/cdt/debug/mi/core/event/MISharedLibEvent.java:
- New file, StoppedEvent du to shared lib events.
- * src/org/eclipse/cdt/debug/mi/core/cdi/event/SuspendedEvent.java:
- Catch MISharedLibEvent.
- * src/org/eclipse/cdt/debug/mi/core/cdi/SharedLibraryevent.java:
- New file implements ICDISharedLibaryEvent.
- * src/org/eclipse/cdt/debug/mi/core/RxThread.java:
- Hack to catch suspend/stop on shared library.
-
-2003-08-11 Mikhail Khodjaiants
- * src/org/eclipse/cdt/debug/mi/core/cdi/model/type/ArrayValue.java:
- * src/org/eclipse/cdt/debug/mi/core/cdi/VariableManager.java:
- Removed the 'type' parameter from the 'getVariableObjectAsArray' method.
-
-2003-08-11 Mikhail Khodjaiants
- * src/org/eclipse/cdt/debug/mi/core/cdi/model/type/ArrayValue.java:
- The 'type' argument of the 'getVariableObjectAsArray' method shouldn't be null.
-
-2003-08-11 Mikhail Khodjaiants
- * src/org/eclipse/cdt/debug/mi/core/cdi/variableManager.java
- Mistype in the 'CheckType' method.
-
-2003-08-07 Alain Magloire
-
- * src/org/eclipse/cdt/debug/mi/core/cdi/variableManager.java
- getVariableObjectAsArray() ignore the type argument it does
- not work with gdb.
-
- * src/org/eclipse/cdt/debug/mi/core/cdi/model/VariableObject.java
- Added hasChildren() method.
-
-2003-08-07 Alain Magloire
-
- * src/org/eclipse/cdt/debug/mi/core/cdi/VariableManager.java:
- Update the interface to reflect ICDIVariableManager.
-
-2003-08-06 Mikhail Khodjaiants
- * src/org/eclipse/cdt/debug/mi/core/cdi/model/type/ArrayValue.java:
- Removed the unused local variable 'children' from the 'getVariables' method.
-
-2003-08-07 Alain Magloire
-
- PR 38964.
-
- * src/org/eclipse/cdt/debug/mi/core/MIInferior.java:
- The method interrupted was synchronized and so was the
- setSuspended(). Now do a notify when the status change.
- Throw an exception if the interrupt() failed.
- * src/org/eclipse/cdt/debug/mi/core/cdi/model/Target.java:
- Do not check for running.
-
-2003-08-06 Alain Magloire
-
- Dealing with casting: Casting a field of a structure did not
- work properly for example:
- struct foo { int bar; } foobar;
- To cast the field bar, we need to construct the full qualified
- name "foobar.bar".
- Unfortunately for C++ things are hectic in the GDB/MI world
- the childre of structure are not the fields. So we try to
- deal with it too.
-
- * src/org/eclipse/cdt/debug/mi/core/cdi/model/Variable.java:
- New constructor, new method getLanguage() to deal with
- different type of languages ex: C vs C++.
- * src/org/eclipse/cdt/debug/mi/core/cdi/model/VariableObject.java:
- Clean up and added a bunch of set/getXXX() methods instead of
- accessing directly the fields.
- * src/og/eclipse/cdt/debug/mi/core/cdi/VariableManager.java:
- Clean the methods use for casting and format the indentation.
- * src/org/eclipse/cdt/debug/mi/core/command/MIVarInfoExpression.java:
- Added parsing method.
-
-2003-08-06 Alain Magloire
-
- * src/org/eclipse/cdt/debug/mi/core/cdi/model/VariableObject.java:
- Implement isEditable method.
-
-2003-08-06 Mikhail Khodjaiants
- * src/org/eclipse/cdt/debug/mi/core/cdi/model/Variable.java:
- Fix for 'isEditable'.
- * src/org/eclipse/cdt/debug/mi/core/cdi/model/VariableObject.java:
- Use correct expression in 'sizeof'.
-
-2003-08-06 Alain Magloire
-
- First framework to deal with breaking the arrays in ranges.
-
- * src/org/eclipse/cdt/debug/mi/core/cdi/model/Argument.java:
- Remove unused getArgumentObject().
- * src/org/eclipse/cdt/debug/mi/core/cdi/model/Register.java:
- Remove unuse getRegisterObject().
- * src/org/eclipse/cdt/debug/mi/core/cdi/model/Variable.java:
- Move methods to VariableObject to comply with the interface.
- * src/org/eclipse/cdt/debug/mi/core/cdi/model/VariableObject.java:
- Implement new methods of ICDIVariableObject.java
- Save the castin information.
- * src/org/eclipse/cdt/debug/mi/core/cdi/model/type/ArrayValue.java:
- New method getVariables(int, int).
- * src/org/eclipse/cdt/debug/mi/core/cdi/VariableManager.java:
- New method encodeVariable(), to get the encode specific string
- for gdb casting of arrays.
-
-2003-07-28 Mikhail Khodjaiants
-
- Minimize the number of the "evaluate expression" requests when changing the value of the floating point types.
-
- * src/org/eclipse/cdt/debug/mi/core/cdi/model/type/FloatingPointValue.java
-
-2003-07-17 Alain Magloire
-
- Catch the use of cli command "detach" and fire the appropriate events.
-
- * src/org/eclipse/cdt/debug/mi/core/CLIProcessor.java
-
-2003-07-16 Alain Magloire
-
- Provide FunctionValue, PointerValue and ArrayValue.
- For ArrayValue apply the patch from Chris Songer, excerpt from
- his email:
- Given GDB performance, we saw CDT start to time out on large array
- requests. The following patch corrects this by scaling the time out with
- the number of children being retrieved. I have not looked at the head on
- this so your mileage may vary. On 1.0.1 with this and the MIParser change
- you can open 16k arrays.
-
- * src/org/eclipse/cdt/debug/mi/core/cdi/model/type/AggregateValue.java
- * src/org/eclipse/cdt/debug/mi/core/cdi/model/type/DerivedValue.java
- * src/org/eclipse/cdt/debug/mi/core/cdi/model/type/PointerValue.java
- * src/org/eclipse/cdt/debug/mi/core/cdi/model/type/ReferenceValueValue.java
- * src/org/eclipse/cdt/debug/mi/core/cdi/model/type/ArrayValue.java
- * src/org/eclipse/cdt/debug/mi/core/cdi/model/type/StructValue.java
- * src/org/eclipse/cdt/debug/mi/core/cdi/model/Value.java
- * src/org/eclipse/cdt/debug/mi/core/cdi/model/Variable.java
-
-2003-07-10 Alain Magloire
-
- In the case of not having a PTY to unmixed inferior output from gdb commands
- do the only sane thing and when a response comes in that is not a valid
- MI format consider it as inferior output.
-
- * src/org/eclipse/cdt/debug/mi/core/output/MIParser.java:
- Put non valid lines in the TargetStream.
- * src/org/eclipse/cdt/debug/mi/core/MIInferior.java:
- Pass output straight to the target.
- * src/org/eclipse/cdt/debug/mi/core/TxThread.java:
- Remove unused code.
- * src/org/eclipse/cdt/debug/mi/core/command/Command.java:
- Try to remove duplicate errors when throwing the MIException.
-
-2003-07-08 Alain Magloire
-
- Unfortunately GDB/MI does not make the errors available via the advertise
- way explain in the documentation, for example:
- 27-var-create - * this->aaa
- &"There is no member or method named aaa.\n"
- &"Type Hello has no component named aaa.\n"
- 27^error,msg="."
-
- According to the doc, the error should be available in the msg field:
- 27^error,msg="There is no member or method named aaaa"
-
- Since this will not be fix in GDB/MI anytime soon, we cope with it by
- grabing the logstream error and make it available in
-
- CDIException.getDetailedMesssage().
-
- * src/org/eclipse/cdt/debug/mi/core/command/*.java: All the commands
- changed to grab also the logstream messages if any for the exception.
-
-2003-06-25 Alain Magloire
-
- Patch from Chris Songer, excerpt from its email:
- The MIParser is O(N^2) time in the length of a line returned from GDB.
- While not an issue for OOB messages, this can be quite an issue for array
- retrieval from the target and other potentially long messages. It's N^2
- because it relies on StringBuffer.deleteCharAt( 0 ) and
- StringBuffer.delete( 0, X ). These operations appear to do a copy of the
- remaining data in the Sun Java library rather than bumping some index.
-
- The following diffs are code that we are using on 1.0.1 to correct this
- issue. It's relatively new, so there may be some bugs but has certainly
- performed just fine in our initial regressions. Because of that I'm not
- sending it in as a patch, more an FYI really. The basic change is exactly
- what you'd expect: these diffs make MIParser use a new type of string
- buffer that's quite efficient at deleting from the head of the array.
-
- * src/org/eclipse/cdt/debug/mi/core/output/MIParser.java
-
-2003-06-18 Alain Magloire
-
- * src/org/eclipse/cdt/debug/mi/core/cdi/event/ChangedEvent.java:
- Check if the variable was a register.
- * src/org/eclipse/cdt/debug/mi/core/cdi/event/CreatedEvent.java:
- Cleanup.
- * src/org/eclipse/cdt/debug/mi/core/cdi/model/Register.java:
- Removing of method {get,set}Value() and new method getChildren().
- * src/org/eclipse/cdt/debug/mi/core/cdi/model/Variable.java
- (setValue): calls update on the appropriate manager.
- * src/org/eclipse/cdt/debug/mi/core/cdi/model/RegisterValue.java:
- Remove file, unused.
- * src/org/eclipse/cdt/debug/mi/core/cdi/VariableManager.java:
- (getVariableObjectAsType): check for register.
- (getVariableObjectAsArray): check for register.
- * src/org/eclipse/cdt/debug/mi/core/cdi/RegisterManager.java:
- (getRegister): reimplemented.
-
-2003-06-18 Mikhail Khodjaiants
- Removed unused local variable.
- * src/org/eclipse/cdt/debug/mi/core/cdi/RegisterManager.java
-
-2003-06-17 Alain Magloire
-
- PR 38934
- * src/org/eclipse/cdt/debug/mi/core/cdi/RegisterManager.java (update):
- We have to call "-var-update" to update the register values in gdb.
-
-2003-06-05 Mikhail Khodjaiants
- gdb/mi support of infinite values of the floating point types.
- * DoubleValue.java
- * FloatingPointValue.java
- * FloatValue.java
-
-2003-06-05 Mikhail Khodjaiants
- Removed the redundant methods from the 'ICDIFloatingPointValue' interface.
- * src/org/eclipse/cdt/debug/mi/core/cdi/model/type/FloatingPointValue.java
-
-2003-06-04 Mikhail Khodjaiants
- Correction in the parsing of reference value.
- * src/org/eclipse/cdt/debug/mi/core/cdi/model/type/ReferenceValue.java
-
-2003-06-04 Mikhail Khodjaiants
- Added some missing types and methods for the type parsing.
- * src/org/eclipse/cdt/debug/mi/core/cdi/model/Variable.java
- * src/org/eclipse/cdt/debug/mi/core/cdi/model/type/ArrayType.java
- * src/org/eclipse/cdt/debug/mi/core/cdi/model/type/DoubleValue.java
- * src/org/eclipse/cdt/debug/mi/core/cdi/model/type/FloatingPointValue.java
- * src/org/eclipse/cdt/debug/mi/core/cdi/model/type/FloatValue.java
- * src/org/eclipse/cdt/debug/mi/core/cdi/model/type/PointerValue.java: new
- * src/org/eclipse/cdt/debug/mi/core/cdi/model/type/ReferenceValue.java: new
-
-2003-06-03 Alain Magloire
-
- * src/org/eclipse/cdt/debug/mi/core/GDBTypeParser.java:
- Bug fix gdb returns fix like "char [200]" no variables.
-
-2003-06-03 Alain Magloire
-
- * src/org/eclipse/cdt/debug/mi/core/cdi/SourceManager.java
- (getType): save the head of the type for the return value.
-
-2003-06-02 Alain Magloire
-
- Enable the new type parsing with the class GDBTypeParser.
- This class takes the output of GDB/MI
- (gdb) whatis
- or
- (gdb) ptype
- And parse it.
-
- * src/org/eclipse/cdt/debug/mi/core/cdi/model/type/ArrayType.java
- * src/org/eclipse/cdt/debug/mi/core/cdi/model/type/DerivedType.java
- * src/org/eclipse/cdt/debug/mi/core/cdi/model/type/PointerType.java
- * src/org/eclipse/cdt/debug/mi/core/cdi/model/type/FunctionType.java
- * src/org/eclipse/cdt/debug/mi/core/cdi/SourceManager.java
- * src/org/eclipse/cdt/debug/mi/core/GDBTypeParser.java
-
-2003-05-25 Alain Magloire
-
- Do extra parsing.
- * src/org/eclipse/cdt/debug/mi/core/model/type/ArrayType.java
- * src/org/eclipse/cdt/debug/mi/core/model/type/DerivedType.java
- * src/org/eclipse/cdt/debug/mi/core/model/type/PointerType.java
- * src/org/eclipse/cdt/debug/mi/core/model/type/FunctionType.java
- * src/org/eclipse/cdt/debug/mi/core/model/Variable.java
-
-2003-05-24 Alain Magloire
-
- * src/org/eclipse/cdt/debug/mi/core/cdi/StackFrame.java
- When execption reset the variable to null and rethrow the exception.
-
-2003-05-24 Alain Magloire
-
- Continuing the implementation of types.
- ICDIType is ICDIObject.
- * src/org/eclispe/cdt/mi/core/cdi/model/type/Type.java:
- Extends CObject
-
-2003-05-23 Alain Magloire
-
- Draft implementation of org.eclipse.cdt.debug.core.cdi.model.type/*
-
-2003-05-06 Alain Magloire
-
- * src/org/eclipse/cdt/debug/mi/core/cdi/model/Thread.java (suspend):
- Suspend the program before selecting the thread.
-
-2003-05-01 Mikhail Khodjaiants
- Implementations of the new "terminateSessionOnExit" method of ICDIConfiguration.
- * Configuration.java
- * CoreFileConfiguration.java
-
-2003-04-30 Alain Magloire
-
- * src/org/eclipse/cdt/debug/mi/core/MIPlugin.java:
- Call MIInferior.update() if attaching session.
-
-2003-04-30 Alain Magloire
-
- * src/org/eclipse/cdt/debug/mi/core/cdi/Configuration.java (supportsTerminate):
- Returns true.
-
-2003-04-25 Alain Magloire
-
- * src/org/eclipse/cdt/debug/mi/core/EventManager.java (update):
- Remove the call to MIInferior.update(), wrong place.
- * src/org/eclipse/cdt/debug/mi/core/EventThread.java (run):
- Call MIInferior.update() when suspended.
- * src/org/eclipse/cdt/debug/mi/core/MIInferior.java (update):
- Do not do the call to "info program" for type "attached" sessions.
- * src/org/eclipse/cdt/debug/mi/core/MISession.java (terminate):
- When terminate() is call disable posting commands to the queue etc...
-
-2003-04-25 Mikhail Khodjaiants
-
- Fix for bug 36909.
- * MIFrame.java:
- gdb returns "??" as a function name if symbols are not available.
- Set the function name in this case to "";
-
-2003-04-24 Alain Magloire
-
- * src/org/eclipse/cdt/debug/mi/core/command/CommandFactory.java (createMIInfoProgram):
- New method.
- * src/org/eclipse/cdt/debug/mi/core/command/MIInfoProgram.java:
- New file, "info program".
- * src/org/eclipse/cdt/debug/mi/core/output/MIInfoProgramInfo.java:
- New file, parsing of "info Program".
- * src/org/eclipse/cdt/debug/mi/core/output/EventManager.java (processSuspend):
- Call MIInferio.update();
- * src/org/eclipse/cdt/debug/mi/core/MIInferior.java (update):
- New method to retrieve the pid.
- (interrupt): Try doing Spawner.raise(pid, INT) as a fallback.
- * src/org/eclipse/cdt/debug/mi/core/cdi/Configuration.java (supportSuspend):
- Bug fix.
-
-2003-04-23 Alain Magloire
-
- * src/org/eclipse/cdt/debug/mi/core/cdi/SignalManager.java (update):
- Move the creation of the list after the call to "info signals".
- The call may fail.
-
-2003-04-21 Alain Magloire
-
- * src/org/eclipse/cdt/debug/mi/core/cdi/Target.java (suspend):
- Remove the delay of 10 secs.
- * src/org/eclipse/cdt/debug/mi/core/MIInferior.java (interrupt):
- Do a delay of 10 secs to allow time for the inferior to stop.
- * src/org/eclipse/cdt/debug/mi/core/MISession.java (terminate) :
- Clear the EventQueue, if we restart.
- * src/org/eclipse/cdt/debug/mi/core/Queue (isEmpty):
- New method.
-
-2003-04-21 Alain Magloire
-
- * src/org/eclipse/cdt/debug/mi/core/GDBDebugger.java:
- * src/org/eclipse/cdt/debug/mi/core/GDBServerDebugger.java:
- Ignore exception when doing "set auto-solib-path on".
-
-2003-04-17 Alain Magloire
-
- * src/org/eclipse/cdt/debug/mi/core/cdi/model/Target.java:
- setCurrentThread(), calls VariableManager.update();
- * src/org/eclipse/cdt/debug/micore/cdt/model/Thread.java:
- setCurrentStackFrame() calls VariableManager.update();
-
-2003-04-07 Mikhail Khodjaiants
- Changed the messages of CDI exceptions.
- * MISession.java
- * Target.java
-
-2003-04-04 Alain Magloire
-
- Code from Monta Vista to add a Session via GDBServer.
-
- * src/org/eclipse/cdt/debug/mi/core/MIPlugin.java:
- * src/org/eclipse/cdt/debug/mi/core/GDBServerDebugger.java:
- * src/org/eclipse/cdt/debug/mi/core/IGDBServerMILaunchConfigurationConstants.java:
- * plugin.xml
-
-2003-04-04 Alain Magloire
-
- * src/org/eclipse/cdt/debug/mi/core/cdt/VariableManager.java:
- Check for null in update().
-
-2003-04-03 Alain Magloire
-
- * src/org/eclipse/cdt/debug/mi/core/cdt/VariableManager.java:
- update(), put a limit on the number of stack we check for variables.
-
-2003-04-03 Alain Magloire
-
- * src/org/eclipse/cdt/debug/mi/core/cdt/model/Target.java:
- * src/org/eclipse/cdt/debug/mi/core/cdt/model/Thread.java:
- Before updating the register check if the manager is on autoupdate.
-
-2003-04-02 Alain Magloire
-
- * src/org/eclipse/cdt/debug/mi/core/cdt/model/Target.java:
- suspend() sync for at least < 10 seconds to allow the gdb to
- suspend via SIGINT the program.
-
-2003-03-28 Mikhail Khodjaiants
- Added time stamp to the trace messages.
- * MIPlugin.java
-
-2003-03-28 Mikhail Khodjaiants
- Correction of the previous patch.
- * MIAsm.java
-
-2003-03-27 Mikhail Khodjaiants
- Applied patch from Chris Songer: Assembly View Fixups
- * Instruction.java
- * MIAsm.java
-
-2003-03-19 Alain Magloire
-
- Some applications, like recursive code, have a very deep stackframes
- bigger > 50. This can turn out to be a problem, as the VariableManager
- will try to update all the variables and there can be a lot of local
- variable in all those stackframes. We can not use:
- "-var-update *"
- either since on gdb-5.2.1, for reasons unknown to me this will make
- gdb unstable/crash. So the approach is to only update variables
- in the current stackframe.
- The advantage we only update a small set of variables.
- The downside if we have side effects i.e. pointers pass to
- argument and modifying the pointer affect the callees memory.
- But this is a small price to pay and usually C/C++ programmer
- are interrested to see changes of variables in the current stack
- not changes 20 stack before.
-
- * src/org/eclipse/cdt/debug/mi/core/cdi/VariableManager.java:
- Method update() only check the variable in the scope of the
- current stackframe(the highest stack). This will include
- any globals.
-
-2003-03-19 Alain Magloire
-
- Base on PR/patch from Chris Songer.
- Assigning a value to a register may have side-effects
- on other registers. When assigning, the action is now
- to upate again the values. The same for the variables.
-
- * src/org/eclipse/cdt/debug/mi/core/cdi/model/Variable.java:
- * src/org/eclipse/cdt/debug/mi/core/cdi/model/Register.java:
- Method setValue() calls manager.update() after the assignment.
-
-2003-03-17 Alain Magloire
-
- * src/org/eclipse/cdt/debug/mi/core/cdi/model/StackFrame.java:
- getArguments() and getLocalVariable() are caching the results.
-
-2003-03-16 Alain Magloire
-
- GDB/MI does not keep the stack level, from what we expect. In gdb, the
- highest stack is level 0 and lower stack as the highest level:
- -stack-list-frames
- ^done,stack=[frame={level="0 ",addr="0x0804845b",func="main",file="hello.c",line="24"},
- frame={level="1 ",addr="0x42017499",func="__libc_start_main",from="/lib/i686/libc.so.6"}]
-
- -stack-list-frames
- ^done,stack=[frame={level="0 ",addr="0x08048556",func="main2",file="hello.c",line="58"},
- frame={level="1 ",addr="0x08048501",func="main",file="hello.c",line="41"},
- frame={level="2 ",addr="0x42017499",func="__libc_start_main",from="/lib/i686/libc.so.6"}]
-
- This is of no use to us since the level is always "0". The level is necessary for example when
- doing recursive calls to make a distinction between frames.
- So in CDT this reverse the hidghest frame will have the highest number. In CDT:
- stack=[frame={level="2 ",addr="0x0804845b",func="main",file="hello.c",line="24"},
- frame={level="1 ",addr="0x42017499",func="__libc_start_main",from="/lib/i686/libc.so.6"}]
-
- stack=[frame={level="3 ",addr="0x08048556",func="main2",file="hello.c",line="58"},
- frame={level="2 ",addr="0x08048501",func="main",file="hello.c",line="41"},
- frame={level="1 ",addr="0x42017499",func="__libc_start_main",from="/lib/i686/libc.so.6"}]
-
-
- * src/org/eclipse/cdt/debug/mi/core/cdi/model/StackFrame.java:
- Takes a new Argument in the constructor, the level.
- * src/org/eclipse/cdt/debug/mi/core/cdi/model/Threawd.java:
- Create the StackFrame with the constructor.
- * src/org/eclipse/cdt/debug/mi/core/cdi/Location.java:
- Fix equals().
- * src/org/eclipse/cdt/debug/mi/core/cdi/VariableManager.java:
- Use the right level when setting the frame.
-
-2003-03-14 Alain Magloire
-
- * src/org/eclipse/cdt/debug/mi/core/cdi/model/Argument.java:
- New method getArgumentObject().
- * src/org/eclipse/cdt/debug/mi/core/cdi/model/Register.java:
- New method getRegisterObject().
- * src/org/eclipse/cdt/debug/mi/core/cdi/VariableManager.java:
- Checks for ICDIVariable and ICDIArgument since they are now ICDIVariableObject too.
- * src/org/eclipse/cdt/debug/mi/core/cdi/RegisterManager.java:
- Checks for ICDIRegister when creating since they are now ICDIRegisterObject too.
-
-2003-03-13 Alain Magloire
-
- Small bug fix
- * src/org/eclipse/cdt/debug/mi/core/cdi/VariableManager.java
-
-2003-03-13 Alain Magloire
-
- * src/org/eclipse/cdt/debug/mi/core/cdi/VariableManager.java:
- New method getLocalVariableObjects() implemented returns all the local.
- * src/org/eclipse/cdt/debug/mi/core/cdi/model/StackFrame.java
- getLocalVariables() use getLocalVariableObjects().
- * src/org/eclipse/cdt/debug/mi/core/cdi/model/Variable.java:
- getName() does not longer throw an Exception.
-
-2003-03-11 Alain Magloire
-
- * src/org/eclipse/cdt/debug/mi/core/cdi/VariableManager.java:
- New methods getVariableObjectAsArray() getVariableObjectAsType().
-
-2003-03-03 Alain Magloire
-
- * src/org/eclipse/cdt/debug/mi/core/CommandQueue.java (print): Comment out.
- * src/org/eclipse/cdt/debug/mi/core/Queue.java (print): Comment out.
-
-2003-02-12 Mikhail Khodjaiants
- The 'setAutoSolib' method is no longer in ICDISharedLibraryManager.
- * GDBDebugger.java
-
-2003-02-12 Alain Magloire
-
- * src/org/eclipse/cdt/debug/mi/core/cdi/model/Target.java:
- Removed getRegisterObjects(), getRegisters(), getSharedLibraries().
- Those actions are done via the managers.
-
- * src/org/eclipse/cdt/debug/mi/core/cdi/model/Variable.java (getChild):
- Check the grand children also.
-
-2003-02-12 Alain Magloire
-
- * src/org/eclipse/cdt/debug/mi/core/cdi/SharedLibraryManager.java (isAutoLoadSymbols):
- New method.
- * src/org/eclipse/cdt/deb/mi/core/command/MIGDBShow.java (getMIGDBShowInfo):
- New method.
-
-2003-02-12 Alain Magloire
-
- * src/org/eclipse/cdt/debug/mi/core/cdi/event/ChangedEvent.java (ChangedEvent):
- Returns a Variable.
- * src/org/eclipse/cdt/debug/mi/core/cdi/event/DestroyedEvent.java (DestroyedEvent):
- Check if it was an expression also.
- * src/org/eclipse/cdt/debug/mi/core/cdi/model/Value.java (getVariables):
- Calls the parent's implementation.
- * src/org/eclipse/cdt/debug/mi/core/cdi/model/Variable.java (getVariables):
- New implementation.
- * src/org/eclipse/cdt/debug/mi/core/cdi/EventManager.java (update):
- Deal with new MIVarDeleteEvent.
- * src/org/eclipse/cdt/debug/mi/core/cdi/ExpressionManager.java (addExpression):
- Removed.
- (removeExpression): New method.
- * src/org/eclipse/cdt/debug/mi/core/event/MIVarChangedEvent.java (getScope):
- removed.
- * src/org/eclipse/cdt/debug/mi/core/event/MIVarDeletedEvent.java:
- New file.
-
-2003-02-09 Alain Magloire
-
- in GDB/MI 5.3 and below, the -data-list-register-xxx can bring gdb down with
- an assert(). The problem is that code like this
- ui_out_list_begin();
- for () {
- if(error)
- return ERROR;
- }
- ui_out_list_end();
- The ui_out_list_end() is never call.
- However gdb offers the varobj to deal cleanly with register but calling
- "-var-update *" seems to make gdb misbehave and hang after a while.
- So we use a mixed of -data-list-register-xxx calls and var-object to deal
- with registers and do not call "-var-update *" but rather call it for
- each time for individual objects to see the updates.
-
- * src/org/eclipse/cdt/debug/mi/core/cdi/model/Register.java:
- Reimplemented to use the var obj.
- * src/org/eclipse/cdt/debug/mi/core/cdi/model/RegisterValue.java:
- New file implement ICDIValue.
- * src/org/eclipse/cdt/debug/mi/core/cdi/EventManagero.java (processSuspendedEvent):
- Call each manager.update().
- * src/org/eclipse/cdt/debug/mi/core/cdi/ExpressionManager.java (update):
- Reimplemented.
- * src/org/eclipse/cdt/debug/mi/core/cdi/RegisterManager.java (update):
- Reimplemented
- * src/org/eclipse/cdt/debug/mi/core/cdi/UpdateManager.java:
- Removed.
- * src/org/eclipse/cdt/debug/mi/core/cdi/IUpdateListener.java:
- Removed.
- * src/org/eclipse/cdt/debug/mi/core/CLIProcessor.java:
- Catch the cli "run" command.
-
-2003-02-06 Alain Magloire
-
- * src/org/eclipse/cdt/debug/mi/core/cdi/VariableManager.java (getVariableArrayObject):
- New Method to type cast in an array.
- * src/org/eclipse/cdt/debug/mi/core/cdi/model/VariableObject.java (VariableObject):
- New constructor.
- * src/org/eclipse/cdt/debug/mi/core/cdi/SignalManger.java(getSignal):
- Return an signal object even when the session is terminated.
-
-2003-02-05 Alain Magloire
-
- * src/org/eclipse/cdt/debug/mi/core/command/MISignal.java:
- * src/org/eclipse/cdt/debug/mi/core/command/MIJump.java:
- Return a fake ^running, since the MI semantic is not respected.
-
-2003-02-04 Alain Magloire
-
- * src/org/eclipse/cdt/debug/mi/core/CLICommand.java:
- Catch cli command "jump"
-
-2003-02-04 Alain Magloire
-
- * src/org/eclipse/cdt/debug/mi/core/cdi/model/Target.java:
- * src/org/eclipse/cdt/debug/mi/core/cdi/model/Thread.java:
- New implementation for signal(), jump, and stepReturn(boolean).
- * src/org/eclipse/cdt/debug/mi/core/cdi/model/Signal.java:
- (signal): Calls Target.signal().
- * src/org/eclipse/cdt/debug/mi/core/cdi/model/SignalManager.java:
- (signal): Method removed.
- * src/org/eclipse/cdt/debug/mi/core/command/MIJump.java:
- New file.
- * src/org/eclipse/cdt/debug/mi/core/command/CommandFactory.java:
- New method creteMIJump().
-
-2003-02-04 Alain Magloire
-
- * src/org/eclipse/cdt/debug/mi/core/cdi/SignalManger.java:
- Implement signal() method.
- * src/org/eclipse/cdt/debug/mi/core/command/MISignal.java:
- New file.
- * src/org/eclipse/cdt/debug/mi/core/command/CommandFactory.java:
- (createMISignal): new method.
-
-2003-02-04 Alain Magloire
-
- * src/org/eclipse/cdt/debug/mi/core/cdi/event/ExitedEvent.java:
- Catch MIInferiorSignalExitEvent.
- * src/org/eclipse/cdt/debug/mi/core/cdi/event/ExitedEvent.java:
- Catch MIInferiorSignalExitEvent.
- * src/org/eclipse/cdt/debug/mi/core/cdi/SignalExitInfo.java:
- New File.
- * src/org/eclipse/cdt/debug/mi/core/event/MIInferiorSignalExitEvent.java:
- New File
- * src/org/eclipse/cdt/debug/mi/core/event/CLIProcessir.java:
- "signal" command is like continue.
- * src/org/eclipse/cdt/debug/mi/core/event/RxThread.java:
- Catch MIInferiorSignalExitEvent.
-
-2003-02-04 Alain Magloire
-
- Refactor MISignal in MISigHandle to not confus with
- CLI command "signal SIGNAL".
-
- * src/org/eclipse/cdt/debug/mi/core/cdi/model/Signal.java:
- * src/org/eclipse/cdt/debug/mi/core/cdi/SignalManager.java:
- * src/org/eclipse/cdt/debug/mi/core/output/MIInfoSignalsInfo.java:
- * src/org/eclipse/cdt/debug/mi/core/output/MISigHandle.java:
-
-2003-02-03 Alain Magloire
-
- * src/org/eclipse/cdt/debug/mi/core/cdi/SharedLibraryManager.java:
- (loadSymbols): set the read flag to true.
- * src/org/eclipse/cdt/debug/mi/core/cdi/model/SharedLibrary.java:
- (getMIShared): New method.
- * src/org/eclipse/cdt/debug/mi/core/output/MIShared.java:
- (setSymbolsRead): New method.
-
-2003-02-01 Alain Magloire
-
- * src/org/eclipse/cdt/debug/mi/core/cdi/event/ChangedEvent.java:
- Support for ICDISignal event.
- * src/org/eclipse/cdt/debug/mi/core/cdi/model/Signal.java (handle):
- Implemented.
- * src/org/eclipse/cdt/debug/mi/core/cdi/EventManager.java (update):
- Support for ICDISignal event.
- * src/org/eclipse/cdt/debug/mi/core/cdi/SignalManager.java (handle):
- New method.
- * src/org/eclipse/cdt/debug/mi/core/command/CommandFactory.java (createMIHandle):
- New method
- * src/org/eclipse/cdt/debug/mi/core/command/MIHandle.java:
- New File.
- * src/org/eclipse/cdt/debug/mi/core/CLICommand.java:
- Check for "handle" and "signal" cli command.
-
-2003-01-31 Alain Magloire
-
- * src/org/eclipse/cdt/debug/mi/core/cdi/event/DestroyedEvent.java:
- Use deleteSharedLibrary from the manager.
- * src/org/eclipse/cdt/debug/mi/core/cdi/signal/Signal.java:
- Construct a signal base on the MISignal response.
- * src/org/eclipse/cdt/debug/mi/core/cdi/BreakpointManager.java
- (suspendedInferior): Take ICDITarget as argument.
- (resumeInferior): Take ICDITarget as argument.
- * src/org/eclipse/cdt/debug/mi/core/cdi/SharedLibraryManager.java
- (containsSharedLibrary): removed.
- * src/org/eclipse/cdt/debug/mi/core/cdi/SignalManager.java
- (update): implemented.
- (getSignals): implemented.
- * src/org/eclipse/cdt/debug/mi/core/cdi/SignalReceived.java:
- Ask the manager for the signal.
- * src/org/eclipse/cdt/debug/mi/core/event/MISignalEvent.java:
- New file.
-
-2003-01-29 Alain Magloire
-
- * src/org/eclipse/cdt/debug/mi/core/cdi/SharedLibraryManager.java (getSharedLibraryPaths):
- New method.
- (setSharedLibraryPaths): New method.
- (setAutoLoadSymbols): New methos set autosolib.
- * src/org/eclipse/cdt/debug/mi/core/cdi/SourceManager.java (setAutoSolib):
- Move to SharedLibraryManager.java
-
-2003-01-28 Alain Magloire
-
- * src/org/eclipse/cdt/debug/mi/core/command/MIInfoSignals.java:
- * src/org/eclipse/cdt/debug/mi/core/output/MIInfoSignalsInfo.java:
- * src/org/eclipse/cdt/debug/mi/core/output/MISignal.java:
- New files.
-
-2003-01-28 Alain Magloire
-
- * src/org/eclipse/cdt/debug/mi/core/cdi/model/ArgumentObject.java:
- Use ICDIStackFrame in the constructor.
- * src/org/eclipse/cdt/debug/mi/core/cdi/model/RegisterObject.java:
- Use ICDIStackFrame in the constructor.
- * src/org/eclipse/cdt/debug/mi/core/cdi/model/VariableObject.java:
- Use ICDIStackFrame in the constructor.
- * src/org/eclipse/cdt/debug/mi/core/cdi/model/Value.java (getVariables):
- No need to cast to StackFrame.
- * src/org/eclipse/cdt/debug/mi/core/cdi/model/Thread.java (setCurrentFrame):
- Implement new method, takes a boolean as the second method.
- * src/org/eclipse/cdt/debug/mi/core/cdi/ExpressionManager.java:
- No need to cast to StackFrame.
- * src/org/eclipse/cdt/debug/mi/core/cdi/VariableManager.java:
- No need to cast to StackFrame.
-
-2003-01-28 Alain Magloire
-
- * src/org/eclipse/cdt/debug/mi/core/cdi/model/Breakpoint.java (getCondition):
- Condition was initialize with the wrong parameter.
- (setMIBreakpoint): reset location and condition.
-
-2003-01-28 Alain Magloire
-
- * src/org/eclipse/cdt/debug/mi/core/cdi/model/Breakpoint.java (setMIBreakpoint):
- New method.
- * src/org/eclipse/cdt/debug/mi/core/cdi/BreakpointManager.java (update):
- Reset the new MIBreakpoint on the Breakpoint object.
- (containsBreakpoint): Removed.
- (hasBreakpointChanged): Change arguments.
- * src/org/eclipse/cdt/debug/mi/core/output/MIBreakpoint.java (parser):
- Better check for watchpoints.
- * src/org/eclipse/cdt/debug/mi/core/CLIProcessor.java (isChangeBreakpoint):
- Check for "ignore" and "condition" cli commands.
-
-2003-01-27 Alain Magloire
-
- * src/org/eclipse/cdt/debug/mi/core/cdi/model/Register.java (getTypeName):
- Use MIWhatis to get the type of the register.
- (getVariables): Cache the answer.
- * src/org/eclipse/cdt/debug/mi/core/cdi/SharedLibraryManager.java (loadSymbols):
- Use MISharedLibrary.
- * src/org/eclipse/cdt/debug/mi/core/command/CommandFactory.java (createMIWhatis):
- New method.
- (MIPType): New method.
- * src/org/eclipse/cdt/debug/mi/core/command/MISharedLibrary.java:
- New file.
-
-
-2003-01-27 Alain Magloire
-
- * src/org/eclipse/cdt/debug/mi/core/cdi/model/Target.java (getCThreads):
- When attaching gdb(at least on some platform) does not show
- the selected thread(info threads). Fallback on the first one.
-
-2003-01-27 Alain Magloire
-
- * src/org/eclipse/cdt/debug/mi/core/cdi/VariableManager.java (findVariable):
- Bug fix, did not compare the stacks correctly.
-
-2003-01-27 Alain Magloire
-
- * src/org/eclipse/cdt/debug/mi/core/cdi/model/VariableObject.java:
- * src/org/eclipse/cdt/debug/mi/core/cdi/model/ArgumentObject.java:
- * src/org/eclipse/cdt/debug/mi/core/cdi/model/RegisterObject.java:
- Move to model package.
-
-2003-01-26 Alain Magloire
-
- Major refactor of the code. Rewrote/Added Managers:
- VariableManager
- ExpressionManager
- RegisterManager
- UpdateManager.
-
- Refactor of CSession to Session, CTarget to Target
- and CThread to Thread.
- * src/.../mi/core/cdi/event/ChangedEvent.java:
- * src/.../mi/core/cdi/event/CreatedEvent.java:
- * src/.../mi/core/cdi/event/DestroyedEvent.java:
- * src/.../mi/core/cdi/event/DisconnectedEvent.java:
- * src/.../mi/core/cdi/event/ExitedEvent.java:
- * src/.../mi/core/cdi/event/MemoryChangedEvent.java:
- * src/.../mi/core/cdi/event/ResumedEvent.java:
- * src/.../mi/core/cdi/event/SuspendedEvent.java:
-
-
- * src/.../mi/core/cdi/model/Argument.java:
- * src/.../mi/core/cdi/model/Breakpoint.java:
- * src/.../mi/core/cdi/model/Thread.java:
- * src/.../mi/core/cdi/model/Target.java:
- * src/.../mi/core/cdi/model/MemoryBlock.java:
- * src/.../mi/core/cdi/model/MixedInstruction.java:
- * src/.../mi/core/cdi/model/Instruction.java:
- * src/.../mi/core/cdi/model/Signal.java:
- * src/.../mi/core/cdi/model/SharedLibrary.java:
- * src/.../mi/core/cdi/model/CObject.java:
- * src/.../mi/core/cdi/model/Expression.java:
- * src/.../mi/core/cdi/model/Variable.java:
- * src/.../mi/core/cdi/model/Value.java:
- * src/.../mi/core/cdi/model/Register.java:
- * src/.../mi/core/cdi/model/StackFrame.java:
-
- * src/.../mi/core/cdi/ArgumentObject.java:
- * src/.../mi/core/cdi/VariableObject.java:
- * src/.../mi/core/cdi/RegisterObject.java:
- * src/.../mi/core/cdi/BreakpointHit.java:
- * src/.../mi/core/cdi/BreakpointManager.java:
- * src/.../mi/core/cdi/VariableManager.java:
- * src/.../mi/core/cdi/ExpressionManager.java:
- * src/.../mi/core/cdi/RegisterManaget.java:
- * src/.../mi/core/cdi/SignalManager.java:
- * src/.../mi/core/cdi/SharedLibraryManager.java:
- * src/.../mi/core/cdi/EventManager.java:
- * src/.../mi/core/cdi/MemoryManager.java:
- * src/.../mi/core/cdi/ErrorInfo.java:
- * src/.../mi/core/cdi/Session.java:
- * src/.../mi/core/cdi/ExitInfo.java:
- * src/.../mi/core/cdi/UpdateManager.java:
- * src/.../mi/core/cdi/IUpdateListener.java:
- * src/.../mi/core/cdi/SessionObject.java:
- * src/.../mi/core/cdi/SignalReceived.java:
- * src/.../mi/core/cdi/SourceManager.java:
- * src/.../mi/core/cdi/RuntimeOptions.java:
- * src/.../mi/core/cdi/WatchpointScope.java:
- * src/.../mi/core/cdi/WatchpointTrigger.java:
- * src/.../mi/core/cdi/EndSteppingRange.java:
-
- * src/.../mi/core/MIPlugin.java:
- * src/.../mi/core/CygwinGDBDebugger.java:
- * src/.../mi/core/GDBDebugger.java:
-
-
-
-2003-01-24 Alain Magloire
-
- * src/.../mi/core/CLIProcessor.java (isEnableBreakpoint):
- Check for "enable", "disable" cli commands.
-
-2003-01-23 Alain Magloire
-
- * src/.../mi/core/CLIProcessor.java (isDeletingBreakpoint):
- Check for "d" it means delete breakpoints.
-
-2003-01-20 Alain Magloire
-
- * src/.../mi/core/cdi/Configuration.java (supporstSharedLibrary):
- New method.
- * src/.../mi/core/cdi/CoreFileConfiguration.java (supporstSharedLibrary):
- New method.
- * src/.../mi/core/cdi/SharedLibraryManager.java (update):
- Checks if support for shared Libary before doin an update.
-
-2003-01-20 Alain Magloire
-
- * src/.../mi/core/cdi/SuspendedEvent.java: Use SignalReceived.
- * src/.../mi/core/cdi/model/Signal.java: New file.
- * src/.../mi/core/cdi/model/SignalManager.java: Use model/Signal.
- * src/.../mi/core/cdi/SignalReceived.java: New file.
-
-2003-01-20 Alain Magloire
-
- The problem was that no check was done for the existence of
- the program/executable nor the working directory etc ...
- By asking the arguements to be File, the check is done by
- the caller.
-
- * src/.../mi/core/MIPlugin.java (createCSession): Change the
- the arguments.
- * src/.../mi/core/GDBDebugger.java (createCSession): Change the
-
-2003-01-20 Alain Magloire
-
- * src/.../mi/core/command/MIWhatis.java: New file.
- * src/.../mi/core/command/MIPType.java: New file.
- * src/.../mi/core/command/MISharedLibary.java: New file.
- * src/.../mi/core/output/MIWhatisInfo.java: New file.
- * src/.../mi/core/output/MIPTypeInfo.java: New file.
-
-2003-01-18 Alain Magloire
-
- * src/.../mi/core/cdi/event/DestroyedEvent.java (DestroyedEvent):
- Remove the deleted shared library from the list.
- * src/.../mi/core/cdi/SharedLibraryManager.java (getUnloadedLibrary):
- Get a shared library slated for unload.
- (removeFromUnloadedList): Remove the library form the list.
-
-2003-01-17 Alain Magloire
-
- * src/.../mi/core/output/MIInfoSharedLibraryInfo.java (parseWinShared):
- Break the methods in parserUnixShared() and parseWinShared() to cope
- with the different formats.
-
-2003-01-17 Alain Magloire
-
- * src/.../mi/core/cdi/SharedLibraryManager.java (loadSymbols):
- New method takes and array of ICDISharedLibrary.
- * src/.../mi/core/cdi/SharedLibrary.java (loadSymbols):
- Call the share manager to load.
-
-2003-01-17 Alain Magloire
-
- * src/.../mi/core/cdi/SharedLibraryManager.java (loadSymbols):
- Call "shared libraryname".
-
-2003-01-17 Alain Magloire
-
- The problem here is that we do not knw the state of
- the session, for example "target remote server:port"
- was issue, in this case the state is suspended.
- We try to guess by posting a "info remote-process"
- and set suspended when no error.
-
- * src/.../mi/core/MIPlugin.java (createCSession):
- Try "info remote-process" to guess the state.
- Remove the "new-console" call to windows specific files.
- * src/.../mi/core/CygwinGDBDebugger.java(createLaunchSession):
- call "set new-console" for windows plaforms.
-
-2003-01-16 Alain Magloire
-
- * src/.../mi/core/cdi/SharedLibary.java (setMIShared):
- New method.
- * src/.../mi/core/cdi/SharedLibraryManager.java (update):
- When changed reset the MIShared of the SharedLibrary.
-
-2003-01-16 Alain Magloire
-
- Process gdbinit configuration file.
-
- * src/.../mi/core/MIPlugin.java (createCSession): Takes now two new
- arguments for working directory and configuration file gdbinit.
- * src/.../mi/core/GDBDebugger.java (createAttachSession):
- (createCoreSession): pass the working directory and gdbinit file
- (createLaunchSession): pass the working directory and gdbinit file
- * src/.../mi/core/IMILaunchConfigurationConstants.java:
- New constant ATTR_GDB_INIT.
-
-2003-01-16 Alain Magloire
-
- * src/.../mi/core/cdi/EventManager.java (processSuspended):
- Also process the Shared lib by calling update on the manager.
-
- * src/.../mi/core/cdi/CSession.java: Create a shared
- library manager.
-
-2003-01-16 Alain Magloire
-
- * src/.../mi/core/event/MISharedLibCreatedEvent.java: New file.
- * src/.../mi/core/event/MISharedLibChangedEvent.java: New file.
- * src/.../mi/core/event/MISharedLibUndloadedEvent.java: New file.
-
- * src/.../mi/core/cdi/event/CreatedEvent.java:
- new constructors to deal with MISharedLibCreatedEvent.
- * src/.../mi/core/cdi/event/ChangedEvent.java:
- new constructors to deal with MISharedLibChangedEvent.
- * src/.../mi/core/cdi/event/DestroyedEvent.java:
- new constructors to deal with MISharedLibUnloadedEvent.
-
- * src/.../mi/core/cdi/model/SharedLibrary.java: New file.
-
- * src/.../mi/core/cdi/SharedLibraryManager.java: New file.
- * src/.../mi/core/cdi/CSession.java (getSharedLibraryManager):
- New method.
- * src/.../mi/core/cdi/EventManager.java (update):
- Deal with the new MISharedLibXXXEvents.
-
-2003-01-15 Alain Magloire
-
- * src/.../mi/core/command/CommandFactory.java (createMIInfoSharedLibrary):
- New method.
- * src/../mi/core/command/MIInfoSharedLibrary.java: New file.
- * src/../mi/core/output/MIInfoSharedLibraryInfo.java: New File.
- * src/../mi/core/output/MIShared.java: new File.
-
-2003-01-13 Mikhail Khodjaiants
- * CTarget.java: in the 'runUntil' method check if file name or function name length > 0, otherwise use address.
-
-2003-01-10 Alain Magloire
-
- * src/.../mi/core/cdi/BreakpointManager.java (update): fix subscript
- (setCondition): Fire a ChangedEvent.
- (enableBreakpoint): Fire a ChangedEvent.
- (disableBreakpoint): Fire a ChangedEvent.
-
-2003-01-10 Alain Magloire
-
- * src/.../mi/core/cdi/model/CTarget.java (runUntil): Address breakpoint
- needs a "*" prefix.
-
-2003-01-09 Alain Magloire
-
- * src/.../mi/core/cdi/BreakpointManager.java (hasBreakpointChanged):
- Implemented.
-
-2003-01-09 Alain Magloire
-
- * src/.../mi/core/cdi/model/CTarget.java (setCurrentThread): takes
- a new argument to decide if the events should be fired.
- * src/.../mi/core/cdi/model/CThread.java (getStackFrameCount): use
- the setCurrentThread() with events updates disable
- (getStackFrames): Ditto.
- (updateState): Wrong subscript in the loop.
-
-2003-01-09 Alain Magloire
-
- Generate CreatedEvent's for Variable, Argument, Expression, Memory, Thread
- objects when they are created. This makes it consistent with the generated
- DestroyedEvent's.
-
- * src/.../mi/core/cdi/EventManager.java (update): Deal with
- MI{Register,Memory,Thread,Var}CreatedEvent events.
- * src/.../mi/core/cdi/model/Ctarget.java (updateState): Fire events
- when threads are created or destroyed.
- * src/.../mi/core/cdi/model/MemoryBlock.java: Move here.
- * src/.../mi/core/cdi/model/Register.java (getID): rename getId() to getID().
- * src/.../mi/core/cdi/event/CreatedEvent.java: New constructors
- to deal with MI{Register,Memory,Thread,Var}CreatedEvent.
-
- * src/.../mi/core/event/MIMemoryCreatedEvent.java: New file.
- * src/.../mi/core/event/MIRegisterCreatedEvent.java: New file.
- * src/.../mi/core/event/MIThreadCreatedEvent.java: New file.
- * src/.../mi/core/event/MIVarCreatedEvent.java: New file.
- * src/.../mi/core/event/MIBreakpointChangedEvent.java (MIBreakpointChangedEvent):
- Reuse the constructor.
- * src/.../mi/core/event/MIBreakpointCreatedEvent.java (MIBreakpointCreatedEvent):
- Reuse the constructor.
- * src/.../mi/core/event/MIBreakpointDeletedEvent.java (MIBreakpointDeletedEvent):
- Reuse the constructor.
-
-2003-01-08 Alain Magloire
-
- Refactoring, split the org.eclipse.cdt.debug.mi.core.cdi in pacackages
- org.eclipse.cdt.debug.mi.core.cdi
- org.eclipse.cdt.debug.mi.core.cdi.event
- org.eclipse.cdt.debug.mi.core.cdi.model
- This help structure things up.
- * src/.../mi/core/cdi/event: New files.
- * src/.../mi/core/cdi/model: New files.
-
-2003-01-08 Alain Magloire
-
- * src/.../mi/core/cdi/EventManager.java (update): bug fix
- was calling DestroyedEvent() incorrectly.
-
-2003-01-08 Alain Magloire
-
- CLIProcessor a new class to recognise the CLI(Command Line Interface)
- of gdb example:
- (gdb) next
- (gdb) n
- (gdb) b
- (gdb) break
- etc ..:
- When the patterns are discover, the class will generate some events
- to warn te UI that something change.
-
- * src/.../mi/core/cdi/BreakpointManager.java (update):
- Send a -break-list and generate events for any difference, in
- the breakpoints that we know about.
- (deleteBreakpoint): Take as argument the breakpoint number.
- (getBreakpoints): Call update() to generate events if new breakpoints.
- (getMIBreakpoints): return the MIBreakpoints.
- * src/.../mi/core/cdi/ChangedEvent.java (ChangedEvent):
- New constructor with MIBreakPointChangedEvent.
- * src/.../mi/core/cdi/DestroyedEvent.java (DestroyedEvent):
- New constructor with MIBreakPointDeletedEvent.
- * src/.../mi/core/cdi/Created.java: New file.
- * src/.../mi/core/cdi/EventManager.java (update):
- Watch for the new MIBreakPoint*Events.
- * src/.../mi/core/event/MIBreakPointCreatedEvent.java: New file.
- * src/.../mi/core/event/MIBreakPointChangedEvent.java: New file.
- * src/.../mi/core/event/MIBreakPointDeletedEvent.java: New file.
- * src/.../mi/core/event/MICreatedEvent.java: New file.
- * src/.../mi/core/event/MIDestroyedEvent.java: New file.
- * src/.../mi/core/event/MIInferiorExitEvent.java: Extends MIDestroyedEvent
- * src/.../mi/core/event/MIThreadExitEvent.java: Extends MIDestroyedEvent
- * src/.../mi/core/event/MIGDBExitEvent.java: Extends MIDestroyedEvent
- * src/.../mi/core/event/MIDetachedEvent.java: Extends MIDestroyedEvent
- * src/.../mi/core/CLIProcessor.java: New file.
- * src/.../mi/core/TxThread.java: New file.
-
-2003-01-07 Alain Magloire
-
- * src/.../mi/core/MIInferior.java (getOutputStream): Remove useless assignement.
- * src/.../mi/core/MIPluging.java (debugLog): Not need to be static.
- * src/.../mi/core/cdi/EventManager.java (update): Remove useless assignement.
-
-2003-01-06 Alain Magloire
-
- * build.properties: Patch from Judy Green.
-
-2003-01-06 Alain Magloire
-
- * src/.../mi/core/cdi/BreapoinManager.java (createLocation): new method
- to create a breakoint with an address.
- * src/.../mi/core/cdi/Location.java (Location): New constructor takes
- an address as argument.
-
-2003-01-03 Alain Magloire
-
- The Class creating the CDISession part of the initialization would call
- (gdb) set autosolib on
- this works fine for Unix system, but on Windows it throws an error
- failing the debugger. Windows(Cygwin, MingWin) does not need any
- special initialization like solib-search-paths etc ..
-
- * src/.../mi/core/cdi/SourceManager.java (setAutoSolib): Takes a boolean argument
- to set the autosolib on or off.
- * src/.../mi/core/CygwinGDBDebugger.java(initializeLibraries):
- Empty method, cygwin does not need any special handling.
- * src/.../mi/core/GDBDebugger.java (initializeLibraries):
- Always call autosolib.
-
-
-2003-01-02 Alain Magloire
-
- Bug when using recursive:
- int recursive(int x) {
- if (x > 10)
- recursive(++x);
- return 0;
- }
-
- The Variable Manager is caching the MI/GDB var-obj for speed.
- It is finding the object by looking at the name and the stack/thread,
- for recursive calls, this is wrong and the code would be full in
- thinking the variable "x"(see above) is the same object. To make the distinction
- we use the depth "-stack-info-depth" that will be use also in the equality
- to make sure we identify an object uniquely. In the recursive() case above
- because the depth is different, a new "x" object will be created. The downside
- is that on certain platform doing deep recursive/stackframe, we have noticed
- that "-stack-info-depth" can be very long, test done for gdb/QNX with
- a stack depth of 1000.
-
- * src/.../mi/core/cdi/VariableManager.java (getElement):
- Use the depth when doing equal().
- (createElement): Save the depth of the stack part of the Element.
-
-2003-01-02 Alain Magloire
-
- GDB/MI uses some oob reasons that was not documented for the watchpoints
- *stopped,reason="access-watchpoint-trigger"...
- *stopped,reason="read-watchpoint-trigger",...
- * src/.../mi/core/event/MIWatchpointTrigger.java (parse):
- check for "hw-awpt" and "hw-rwpt".
- * src/.../mi/core/RxThread.java (createEvents):
- Check for "access-watchpoint-trigger", "read-watchpoint-trigger.
-
-2002-12-17 Alain Magloire
-
- * src/.../mi/core/cdi/Register.java (setFormat): bug fix
- The format variable was not set.
-
-2002-12-05 Alain Magloire
-
- GDB/MI provides error messages in its log stream, one problem
- is that it is not consistent, for example doing:
- (gdb) info threads
- & "info threads\n"
- which is obviously not an error.
- So we put the error stream output par of the exception so when
- it is relevant it shows in the Exception.
- MI2CDIException is the bridge class.
-
- * src/.../mi/core/cdi/BreakpoinManager.java:
- * src/.../mi/core/cdi/CSession.java:
- * src/.../mi/core/cdi/CTarget.java:
- * src/.../mi/core/cdi/CThread.java:
- * src/.../mi/core/cdi/MemoryBlock.java:
- * src/.../mi/core/cdi/MemoryManager.java:
- * src/.../mi/core/cdi/Register.java:
- * src/.../mi/core/cdi/RegisterManager.java:
- * src/.../mi/core/cdi/SourceManager.java:
- * src/.../mi/core/cdi/Value.java:
- * src/.../mi/core/cdi/Variable.java:
- * src/.../mi/core/cdi/VariableManager.java:
-
- * src/.../mi/core/command/Command.java (getMIInfo):
- When error get the log stream and put it in the MIException.
- * src/.../mi/core/event/MIErrorEvent.java:
- Get the log stream error also.
- * src/.../mi/core/MIException.java (getLogMessage): New method
- contains buffer output.
- * src/.../mi/core/RxThread.java (processMIOutput): get the
- oob arrays up so it can be use in MIErrorEvent.
-
-2002-12-02 Alain Magloire
-
- * src/.../mi/core/cdi/CTarget.java (updateState): If we
- have the current thread id set it before, getCThread() if
- it is implemented with "info threads" can override it but
- "-stack-list-thread" does not give this information.
- * src/.../mi/core/cdi/ErrorInfo.java: New file
- * src/.../mi/core/cdi/EventManager.java (getReason): Return
- an ErrorInfo also.
- * src/.../mi/core/event/MIErroEvent.java: New file
- * src/.../mi/core/RxThread.java (processMIOutput):
- Generated MIErrorEvent for "^error".
-
-2002-11-29 Alain Magloire
-
- * src/.../mi/core/cdi/EventManager.java (processSuspended):
- get the threadId.
-
-2002-11-29 Alain Magloire
-
- * src/.../mi/core/cdi/MemoryBlock.java (setValue):
- Check if the change affects other block and fire MemoryChangedEvent
- when necessary.
-
-2002-11-29 Alain Magloire
-
- * src/.../mi/core/event/MIBreakpointEvent.java:
- * src/.../mi/core/event/MIFunctionFinishedEvent.java:
- * src/.../mi/core/event/MILocationReachedEvent.java:
- * src/.../mi/core/event/MISignalEvent.java:
- * src/.../mi/core/event/MISteppingRangeEvent.java:
- * src/.../mi/core/event/MIStoppedEvent.java:
- * src/.../mi/core/event/MIWatchpointEvent.java:
- * src/.../mi/core/event/MIWatchpointTriggerEvent.java:
- * src/.../mi/core/RxThread.java:
- Some events like the temporary events, do not have
- any specific format but do provide a frame and a thread-id
- move the code in MIStoppedEvent.
-
-2002-11-28 Alain Magloire
-
- * src/.../mi/core/cdi/MemoryBlock.java (setValue): Only get a byte.
-
-2002-11-28 Alain Magloire
-
- * src/.../mi/core/cdi/CTarget.java (runUntil): new method implemented.
- * src/.../mi/core/cdi/CThread.java (runUntil): new method implemented.
-
-2002-11-26 Doug Schaefer
-
- * src/.../mi/core/CygwinGDBDebugger.java:
- New Debugger that provides the Cygwin Command Factory to the MISession
- * src/.../mi/core/command/CygwinCommandFactory.java:
- New Command Factory for Cygwin specific implementations of the commands
- * src/.../mi/core/command/CygwinMIEnvironmentDirectory.java:
- New. Subclasses the MIEnvironmentDirectory command to convert the
- paths using cygpath.
- * plugin.xml:
- Defines the new debugger extension.
-
-2002-11-25 Alain Magloire
-
- * src/.../mi/core/cdi/Watchpoint.java:
- Check if it was access point also.
- * src/.../mi/core/output/MIBreakInsertInfo.java (parse):
- Check for "wpt" variable.
- * src/.../mi/core/output/MIBreakpoint.java (IsWriteWatchpoint):
- implemented.
-
-2002-11-20 Mikhail Khodjaiants
- Fix for bug 26595.
- * src/.../mi/core/cdi/MemoryManager.java (compareBlocks):
- If the start address of a memory block has changed fir 'changed' event
- only for the corresponding bytes of the overlapping area of new and old blocks.
-
-2002-11-19 Alain Magloire
-
- * src/.../mi/core/cdi/MemoryManager.java (compareBlocks):
- The startAddress() may have change for example if we were
- watching "char *p;" and the address move "p++". Take this
- into account now.
-
-2002-11-18 Alain Magloire
-
- * src/.../mi/core/cdi/StackFrame.java (getCurrentStackFrame):
- if the currentFrame was not set only get the top level
- frame for the current.
- * src/.../mi/core/cdi/CTarget.java (updateStateId):
- Set the currentThreads && currentThreadId.
-
-2002-11-18 Alain Magloire
-
- * src/.../mi/core/cdi/CThread.java (getStackFrameCount):
- Set the new thread before getting the value and restore
- after.
-
-2002-11-14 Alain Magloire
-
- This is needed in post-mortem, application doing a
- very deep recursion and crashing the stack size, for example
- on GNU/Linux it may reach 200000 levels deep. Trying to
- bring in the UI a bactrace tree of 200000 nodes is useless.
- The UI could check the count and do the appropriate action
- by showing ranges etc ..
-
- * src/.../mi/core/cdi/CThread.java (getStackFrame):
- new method with a hi and low.
- (getStackFrameCount): new method.
- * src/.../mi/core/command/CommandFactory.java (createMIStackInfoDepth):
- new method.
- * src/.../mi/core/command/MIStackInfoDepth.java (getMIStackInfoDepthInfo):
- new method.
-
-2002-11-13 Dave Inglis
- * plugin.xml
- Added "native" cpu support.
-
-2002-11-06 Alain Magloire
-
- * src/.../mi/core/cdi/StackFrame.java (getLocals):
- If an exception was thrown, the array may contain null
- entries. Use a list and catch the exception.
-
-2002-11-06 Alain Magloire
-
- * src/.../mi/core/cdi/StackFrame.java (getArguments):
- If an exception was thrown, the array may contain null
- entries. Use and a List and catch the exception.
-
-2002-11-05 Alain Magloire
-
- * src/.../mi/core/cdi/Register.java (setValue): Fire a
- MIRegisterChangedEvent when changing value.
- Fix PR:25730
-
-2002-11-01 Alain Magloire
-
- The change in MISession(), will catch things like starting gdb-5.0
- with argument "-i mi1", that level of mi is not supported.
-
- * src/.../mi/core/cdi/MemoryBlock.java (refresh): When doing the refresh
- check if other blocks wehre affected and update them.
- * src/.../mi/core/cdi/MemoryManager.java (update): Return the array of
- affected addresses.
- * src/.../mi/core/MIPlugin.java (createCSession): Do not throw an
- error when trying "set new-console", it does not work on Linux.
- * src/.../mi/core/MISession.java (MISession): Check if the process
- terminated early, maybe because of wron arguments etc .. and throw
- the exception.
-
-2002-11-1 David Inglis
- * src/.../mi/core/MIPlugin.java
- throw MIExceptions in createSession (not rethorwn IOExceptions)
-
-2002-10-30 Alain Magloire
-
- * src/.../core/cdi/MemoryBlock.java (setDirty): When need a
- refresh setDirty() to true.
- (isDirty): Return the flag value.
-
- * src/.../core/cdi/MemoryManager.java (update): Check if
- the MemoryBlock isDirty().
-
-2002-10-30 Alain Magloire
-
- * src/.../core/cdi/MemoryBlock.java (setValue): reuse refresh()
- to update the memory and fire any MemoryChangedEvents.
-
-2002-10-26 Alain Magloire
-
- * src/.../core/cdi/MemoryBlock.java (setValue): Generate
- a MemoryChangeEvent when the value is set, gdb/mi will not
- do it.
-
-2002-10-25 Alain Magloire
-
- * src/.../core/cdi/CThread.java (getStackFrames): Save the
- current thread before changing and restore when operation finish.
-
- * src/.../core/cdi/MemoryBlock.java (refresh): Flush the old
- data and get new memory.
- (update): New method to compare individual blocks.
-
-2002-10-25 Alain Magloire
-
- Automatically suspend/resume gdb when setting a breakpoint.
- The workflow when debuggin which gdb command prompt is to
- hit CTRL-C set the breakpoint and continue. The UI debugger
- should be smart enought to do this by itself. So if the
- inferior is running, when setting a breakpoint the program
- is suspended(target.suspend()), the suspend event is ignore
- the breakpoint is set (--break-insert) and the target is resume.
- To ignore a specific event, we use a (mis)behaviour of gdb that
- associate the suspend(*stopped) with the last execution command.
- (gdb)
- 111-exec-continue
- 111^running
- (gdb)
- 222-exec-interrupt
- 222^done
- (gdb)
- 111*stopped,signal-name="SIGINT",signal-meaning="Interrupt",
- frame={addr="0x00010140",func="foo",args=[],file="try.c",line="13"}
- (gdb)
- In the case above event 111 is ignore.
-
- * src/.../core/command/CLICommand.java (toString): Always put
- the identifying token.
- * src/.../core/command/Command.java (setToken): Removed.
- (getUniqToken): New method returns a global uniq token.
- (getToken): Returns a uniq token for the command.
- * src/.../core/MIInferior.java (setTerminated): New argument token,
- since now all MIEvent has the corresponding command token.
- * src/.../core/MISession.java (cmdCount): Removed.
- (postCommand): the command getToken() will return a uniq token.
- * src/.../core/RxThread.java (processMIOOBRecord): MIEvent take
- the corresponding command token as argument.
- * src/.../core/TxThrea.java (token): Field removed, token are no
- longer created in this tread.
- * src/.../core/event/MIBreakpointEvent.java:
- * src/.../core/event/MIBreakpointEvent.java:
- * src/.../core/event/MIChangedEvent.java:
- * src/.../core/event/MIDetachedEvent.java:
- * src/.../core/event/MIEvent.java:
- * src/.../core/event/MIFunctionFinishedEvent.java:
- * src/.../core/event/MIGDBExitEvent.java:
- * src/.../core/event/MIInferiorExitEvent.java:
- * src/.../core/event/MILocationReachedEvent.java:
- * src/.../core/event/MIMemoryChangedEvent.java:
- * src/.../core/event/MIRegisterChangedEvent.java:
- * src/.../core/event/MIRunningEvent.java:
- * src/.../core/event/MISignalEvent.java:
- * src/.../core/event/MISteppingRangeEvent.java:
- * src/.../core/event/MIStoppedEvent.java:
- * src/.../core/event/MIThreadExitEvent.java:
- * src/.../core/event/MIVarChangedEvent.java:
- * src/.../core/event/MIWatchpointScopeEvent.java:
- * src/.../core/event/MIWatchpointTriggerEvent.java:
- Calls super with getToken().
- * src/.../core/cdi/BreakpointManager.java (allowProgramInterruption):
- New method to allow suspending the program to set a breakpoint.
- (suspendInferior): get the last token execution an ignore the suspend
- event.
- * src/.../core/cdi/CTarget.java (getLastExecutionToken): New method
- returns the token of the last execution command.
- * src/.../core/cdi/EventManager.java (enableEventToken): New method.
- (enableEventTokens): New method.
- (disableEventToken): New method.
- (disableEventTokens): New method.
- (update): Ignore token in the disable list.
- * src/.../core/cdi/RegisterManager.java (update): MIEvent takes
- a token.
- * src/.../core/cdi/Variable.java (setValue): MIEvent takes a token.
- * src/.../core/cdi/VariableManager.java (update): MIEvent takes a token.
-
-2002-10-24 Alain Magloire
-
- * src/.../core/RxThread.java (processMIOutput): Fire a
- suspended event when seeing an error.
-
-2002-10-24 Alain Magloire
-
- * src/.../core/output/MIConst.java (isoC): Change to return
- a string instead '\n' is platform dependent and has to be
- translate to "\r\n" for SWT widgets to work correctly on windows.
-
-2002-10-23 Alain Magloire
-
- gdb/mi for program control command will fire a change state event:
- -exec-run
- ^running
- This allow the UI to change its state and wait for the suspended.
- Providing a gdb prompt adds some problems, since there is no state
- change, i.e.(^running) after command like, next/step/...:
- next
- &"next\n"
- ...
- So to palliate, the txthread do some query when the commands are
- CLI commands trying to discover the type and fire any appropriate
- events on behalf on gdb.
-
- * src/.../core/RxThread.java (createEvent): Adjust the parser to
- not rely on the oob "*stopped", since for CLI command it is not
- in the result-class. So the suspended state will be base of
- the "reason" only.
- * src/.../core/TxThread.java (processCLICommand): new method,
- get the command and try to recognize if it is a program control
- command like: next, step, etc ..
- * src/.../core/command/CLICommand.java (getOperation): New method,
- returns the command string.
-
-2002-10-22 Alain Magloire
-
- Change the framework to support access to gdb prompt.
- Trying to reuse as much as possible Eclipse framework.
- The session/gdb process is available via CDI.
-
- * src/.../core/GDBStreamsProxy.java: Removed.
- * src/.../core/GDBProcess.java: Removed.
- * src/.../core/GDBStreamMonitor.java: Removed.
- * src/.../core/SessionProcess.java: New file.
- * src/.../core/MISession.java (getMISessionProcess):
- New method, returns a "fake" Process that wraps the input/outpu
- stream of gdb.
- (getGDBProcess): was getMIProcess(), renamed.
- * src/.../core/cdi/CSession.java (getSessionProcess): New method
- return gdb process.
-
-2002-10-22 Alain Magloire
-
- * src/.../core/GDBStreamsProxy.java (write):
- Replace the OutputStream with a Write class.
- And clear the buffer on flush().
-
-2002-10-21 Alain Magloire
-
- * src/.../core/GDBProcess.java (getExitValue): Catch
- IllegalThreadStateException.
- (getAttribute): Only create Properties, when call.
- (setAttribute): Only create Properties, when call.
- (getAdapter): Implemented.
- (canTerminate): true only of the process is alive.
- (GDBProcess): Takes one more argument the name.
- * src/.../core/GDBStreamMonitor.java (fireStreamAppend): New method.
- Use a synchronized LinkedList for the listeners.
- (read): new Method.
- (startMonitoring): New method, start a thread in the background
- to monitor the input.
- * src/.../core/GDBStreamsProxy.java (getErrorStream): Start the monitor thread.
- (getOutputStream): Start the monitor thread.
-
-2002-10-21 Alain Magloire
-
- Framework for having a gdb console. The idea is to reuse
- the eclipse console and save a lot of work. We "adapt"
- the gdb Process to what eclipse debug LaunchView wants(IProcess).
- So when this fake "gdb process" is selected we can grab the
- input/output of the console and redirect everything to raw gdb.
-
- * src/.../core/GDBProcess.java: New file, it implements Eclipse
- debug class IProcess.
- * src/.../core/GDBStreamMonitor: New file, it implements Eclipse
- debug class IStreamMonitor.
- * src/.../core/GDBStreamsProxy: New file, it implements Eclipse
- debug class IStreamsProxy.
- * src/../core/MISession.java (getMIConsoleStream): New method
- to return the mi console stream output that we get from gdb/mi.
- (getMILogStream): New method, to return the mi log stream output
- that we get from gdb/mi.
- (terminate): close the fake MI Console and Log streams.
- * src/../core/RxThread.java (processMIOOBRecord): Redirect the
- console and the log stream to a buffer pipe.
-
-2002-10-21 Alain Magloire
-
- * src/.../core/cdi/EventManager.java (update): Only
- fire the event for MemoryChangedEvent if the block was
- not frozen.
-
-2002-10-20 Alain Magloire
-
- Eclipse provides plugins a way to trace by having an .options file,
- this mechanism is use to print out the mi exchange between gdb
- and the plugin. To enable this in the debug launch one must enable
- "tracing" and set for the "org.eclipse.debug.mi.core/debug" to true.
- But one problem, the console will simply blow taking down eclipse,
- for big MI line response, say 4k length, for example asking the children
- of "char buffer[4096]", -var-list-children varxx.
- This seem only to happen in Eclipse-gtk or Eclipse-motif
- on GNU/Linux, so it will be break in smaller chunks to give a chance to
- the console.
-
- * .options: Set debug to true.
- * src/.../core/MIPlugin.java (debugLog): Break the log line in small chuncks of 100.
- * src/.../core/MISession.java (postCommand): Print the gdb/mi command.
- * src/.../core/RxThread.java (run): Print gdb/mi responses.
-
-2002-10-20 Alain Magloire
-
- -data-write-register-values is not in the texinfo manual but implemented in
- gdb-5.2.1/gdb/mi/mim-main.c:
- Write given values into registers. The registers and values are
- given as pairs. The corresponding MI command is
- -data-write-register-values <format> [<regnum1> <value1>...<regnumN> <valueN>]
-
- * src/.../core/command/MIDataWriteRegisterValues.java: New file.
- * src/.../core/command/CommandFactory.java (createMIDataWriteMemory): New method.
- * src/.../core/cdi/Register.java (setValue): Implemented.
-
-2002-10-20 Alain Magloire
-
- Althought -data-write-memory is not documented in the texinfo manual
- it is implemented and well documented in the code(gdb-5.2.1/gdb/mi/mi-main.c).
- "mi_cmd_data_write_memory: Usage: [-o COLUMN_OFFSET] ADDR FORMAT WORD-SIZE VALUE.");
-
- * src/.../core/command/MIDataWriteMemory.java: New file
- * src/.../core/command/CommandFactory.java (createMIDataWriteMemory): New method.
- * src/.../core/cdi/MemoryBlock.java (setValue): Implemented.
-
-2002-10-20 Alain Magloire
-
- * src/.../core/cdi/CTarget.java (getMemoryBlock): Remove
- we use the MemoryManager instead.
- (EvaluateExpressionToValue): Removed not use.
- * src/.../core/cdi/SourceManager.java (setFile): Removed not use.
- (getFile): Removed not use.
- (reset): Removed not use.
-
-2002-10-19 Alain Magloire
-
- The responsability to generate Events for modify memory blocks is push
- on the CDI implementation. The way we do this is every time consuming,
- when the inferior is suspended(see EventManager.processSuspendedEvent()),
- MemoryManager.update() is called, the method will go through the list of MemoryBlocks
- that are not MemoryBlocks.setFrozen() and fetch the new memories, the data is compare
- and MemoryChangedEvents are fired for blocks with changed values.
- Gdb/mi var objects does not seem to provide any support for Memory ranges.
-
- * src/.../core/cdi/MemoryChangedEvent.java: New File implements ICDIMemoryChangedEvent.
- * src/.../core/cdi/EventManager.java (update): Process MIMemoryChangedEvent's.
- (processSuspendedEvent): call MemoryManager.update().
- * src/.../core/cdi/MemoryBlock.java (getExpression): New method.
- (getMIDataReadMemoryInfo): New method.
- (setMIDataReadMemoryInfo): New method.
- * src/.../core/cdi/MemoryManager.java (update): New method.
- (compareBlock): New method.
- (listMemoryBlocks): New method.
-
- * src/.../core/cdi/CTarget.java (setCurrentThread): Catch null pointer.
- (getCThreads): Likewise.
- * src/.../core/event/MIMemoryChangedEvent.java: New File.
- * src/.../core/event/MIThreadExitEvent.java: Indentation fixes.
- * src/.../core/event/MIVarChangedEvent.java: Indentation fixes.
-
-
-
-2002-10-16 Alain Magloire
-
- * src/.../mi/core/cdi/MemoryManager.java (createMemoryBlock):
- New method that takes a string instead of a long, rearrange
- the method for it.
-
-2002-10-12 Alain Magloire
-
- There are some serious problems with gdb/mi, for example
- the most recurrent one is when using -data-disassemble
- in a threaded program, GNU/Linux uses a thread manager
- when trying to access the stackframe, gdb usually coredumps
- with an assert, it goes something like this:
-
--data-disassemble -f manager.c -l 136 -n 100 0
-&"Cannot access memory at address 0x4002d794\n"
-^error,msg="Cannot access memory at address 0x4002d794"
-(gdb)
--data-disassemble -s 0x4002d900 -e 0x4002d964 0
-&"Cannot access memory at address 0x4002d900\n"
-^error,msg="Cannot access memory at address 0x4002d900"
-(gdb)
--thread-select 2
-&"ui-out.c:133: gdb-internal-error: push_level: Assertion `uiout->level >= 0 && uiout->level < MAX_UI_OUT_LEVELS' failed.\n"
-
- The RxThread will spawn a thread to terminate the session
- and clear the receiving queue.
-
-
- * RxThread.java (run): When the thread is being cancel() or
- running out of run(), clear the receiving queue(rxQueue) and
- notify any commands waiting.
-
- * TxTread.java (run): Before putting the command in the
- receiving queue(rxQueue) check to see if the thread is
- still running.
- When the thread is being cancel() or running out of run(),
- clear the transmition queue(txQueue) an notify any commands
- waiting.
-
- * Queue.java (clearItems): New method that clear the items
- on the queue and returning them.
-
- * CommandQueue.java (clearCommands): New method calls super.clearItems()
- whith the appropriate castings.
-
- * cdi/CThread.java (setCurrentStackFrame): Check for null.
-
-2002-10-12 Alain Magloire
-
- The memory block is implemented with
- -data-read-memory (MIDataReadMemory)
- Since the ICDIMemoryBlock only have
- byte[] getBytes()
- We will always issue:
- -data-read-memory address x 1 1 length
- The CDI upper layer will deal with any conversions
-
- The problem now is how to send changedEvent when
- an element of the memory changed.
-
- * cdi/MemoryBlock.java (getLength): Implemented
- (getBytes): Implemented
- (getStartAddress): Implemented
-
- * cdi/MemoryManager.java: Implemented.
-
- * command/MIDataReadMemory (getMIDataReadMemoryInfo):
- New helper method.
-
-2002-10-12 Alain Magloire
-
- * cdi/Location (getInstructions): Methods removed
- no longer define in ICDILocation.
-
-2002-10-11 Alain Magloire
-
- * cdi/SourceManager (getMixedInstruction):
- Implement the 3 new methods to return Mixed source
- and assemby instructions.
-
- * cdi/MixedInstruction: New class implements
- ICDIMixedInstruction.
-
-2002-10-11 Alain Magloire
-
- * cdi/ExpressionManager.java: Not needed, removed.
-
-2002-10-10 Alain Magloire
-
- The Eclipse/UI/Debug framewok is being very repetive
- and each command can be ask 2, 3 times. So we'll try
- to make certain commands smarter by not reissuing them
- to gdb if the state is the same. We do this when
- selecting the thread and when selecting the stackframe.
-
- The other problem is that Eclipse/UI/Debug is calling
- ICDISession.terminate() twice, this is catch by looking
- at isTerminated().
-
- * cdi/CThread.java (setCurrentStackFrame): Make it smarter
- to not reselect the stack level if it is already at that
- level.
-
- * MISession.java (isTerminated): Declare a flag that will
- hold the state.
- (terminate): Check if it was call already.
-
-2002-10-10 Alain Magloire
-
- * SourceManager.java: Implement getInstructions().
diff --git a/debug/org.eclipse.cdt.debug.mi.core/META-INF/MANIFEST.MF b/debug/org.eclipse.cdt.debug.mi.core/META-INF/MANIFEST.MF
deleted file mode 100644
index e34b8c0939b..00000000000
--- a/debug/org.eclipse.cdt.debug.mi.core/META-INF/MANIFEST.MF
+++ /dev/null
@@ -1,26 +0,0 @@
-Manifest-Version: 1.0
-Bundle-ManifestVersion: 2
-Bundle-Name: %pluginName
-Bundle-SymbolicName: org.eclipse.cdt.debug.mi.core; singleton:=true
-Bundle-Version: 4.0.0.qualifier
-Bundle-Activator: org.eclipse.cdt.debug.mi.core.MIPlugin
-Bundle-Vendor: %providerName
-Bundle-Localization: plugin
-Export-Package: org.eclipse.cdt.debug.mi.core,
- org.eclipse.cdt.debug.mi.core.cdi,
- org.eclipse.cdt.debug.mi.core.cdi.event,
- org.eclipse.cdt.debug.mi.core.cdi.model,
- org.eclipse.cdt.debug.mi.core.cdi.model.type,
- org.eclipse.cdt.debug.mi.core.command,
- org.eclipse.cdt.debug.mi.core.command.factories,
- org.eclipse.cdt.debug.mi.core.command.factories.linux,
- org.eclipse.cdt.debug.mi.core.command.factories.macos,
- org.eclipse.cdt.debug.mi.core.command.factories.win32,
- org.eclipse.cdt.debug.mi.core.event,
- org.eclipse.cdt.debug.mi.core.output
-Require-Bundle: org.eclipse.cdt.debug.core;bundle-version="[4.0.0,5.0.0)",
- org.eclipse.core.resources;bundle-version="[3.2.0,4.0.0)",
- org.eclipse.debug.core;bundle-version="[3.2.0,4.0.0)",
- org.eclipse.cdt.core;bundle-version="[4.0.0,5.0.0)",
- org.eclipse.core.runtime;bundle-version="[3.2.0,4.0.0)"
-Eclipse-LazyStart: true
diff --git a/debug/org.eclipse.cdt.debug.mi.core/about.html b/debug/org.eclipse.cdt.debug.mi.core/about.html
deleted file mode 100644
index 9c7ba0a57bc..00000000000
--- a/debug/org.eclipse.cdt.debug.mi.core/about.html
+++ /dev/null
@@ -1,24 +0,0 @@
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml"><head>
-<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"><title>About</title></head>
-
-<body lang="EN-US">
-<h2>About This Content</h2>
-
-<p>May 2, 2006</p>
-<h3>License</h3>
-
-<p>The Eclipse Foundation makes available all content in this plug-in ("Content"). Unless otherwise
-indicated below, the Content is provided to you under the terms and conditions of the
-Eclipse Public License Version 1.0 ("EPL"). A copy of the EPL is available
-at <a href="http://www.eclipse.org/legal/epl-v10.html">http://www.eclipse.org/legal/epl-v10.html</a>.
-For purposes of the EPL, "Program" will mean the Content.</p>
-
-<p>If you did not receive this Content directly from the Eclipse Foundation, the Content is
-being redistributed by another party ("Redistributor") and different terms and conditions may
-apply to your use of any object code in the Content. Check the Redistributor's license that was
-provided with the Content. If no such license exists, contact the Redistributor. Unless otherwise
-indicated below, the terms and conditions of the EPL still apply to any source code in the Content
-and such source code may be obtained at <a href="http://www.eclipse.org/">http://www.eclipse.org</a>.</p>
-
-</body></html> \ No newline at end of file
diff --git a/debug/org.eclipse.cdt.debug.mi.core/build.properties b/debug/org.eclipse.cdt.debug.mi.core/build.properties
deleted file mode 100644
index ef4bca55bf9..00000000000
--- a/debug/org.eclipse.cdt.debug.mi.core/build.properties
+++ /dev/null
@@ -1,26 +0,0 @@
-###############################################################################
-# Copyright (c) 2003, 2006 QNX Software Systems and others.
-# All rights reserved. This program and the accompanying materials
-# are made available under the terms of the Eclipse Public License v1.0
-# which accompanies this distribution, and is available at
-# http://www.eclipse.org/legal/epl-v10.html
-#
-# Contributors:
-# QNX Software Systems - initial API and implementation
-###############################################################################
-
-bin.includes = plugin.xml,\
- plugin.properties,\
- about.html,\
- .,\
- META-INF/,\
- .options
-src.includes = .options
-javadoc.packages = org.eclipse.cdt.debug.mi.core.*,\
- org.eclipse.cdt.debug.mi.core.cdi.*,\
- org.eclipse.cdt.debug.mi.core.command.*,\
- org.eclipse.cdt.debug.mi.core.event.*,\
- org.eclipse.cdt.debug.mi.core.output.*
-source.. = cdi/,\
- mi/,\
- src/
diff --git a/debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/BreakpointHit.java b/debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/BreakpointHit.java
deleted file mode 100644
index 05dcb39fc17..00000000000
--- a/debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/BreakpointHit.java
+++ /dev/null
@@ -1,42 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.mi.core.cdi;
-
-import org.eclipse.cdt.debug.core.cdi.ICDIBreakpointHit;
-import org.eclipse.cdt.debug.core.cdi.model.ICDIBreakpoint;
-import org.eclipse.cdt.debug.mi.core.cdi.model.Breakpoint;
-import org.eclipse.cdt.debug.mi.core.event.MIBreakpointHitEvent;
-
-/**
- */
-public class BreakpointHit extends SessionObject implements ICDIBreakpointHit {
-
- MIBreakpointHitEvent breakEvent;
-
- public BreakpointHit(Session session, MIBreakpointHitEvent e) {
- super(session);
- breakEvent = e;
- }
-
- /**
- * @see org.eclipse.cdt.debug.core.cdi.ICDIBreakpointHit#getBreakpoint()
- */
- public ICDIBreakpoint getBreakpoint() {
- int number = breakEvent.getNumber();
- // Ask the breakpointManager for the breakpoint
- BreakpointManager mgr = ((Session)getSession()).getBreakpointManager();
- // We need to return the same object as the breakpoint.
- Breakpoint point = mgr.getBreakpoint(breakEvent.getMISession(), number);
- // FIXME: if point == null ?? Create a new breakpoint ??
- return point;
- }
-
-}
diff --git a/debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/BreakpointManager.java b/debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/BreakpointManager.java
deleted file mode 100644
index 66fb5561736..00000000000
--- a/debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/BreakpointManager.java
+++ /dev/null
@@ -1,1014 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.mi.core.cdi;
-
-import java.io.File;
-import java.math.BigInteger;
-import java.util.ArrayList;
-import java.util.Arrays;
-import java.util.Collections;
-import java.util.HashMap;
-import java.util.List;
-import java.util.Map;
-
-import org.eclipse.cdt.debug.core.cdi.CDIException;
-import org.eclipse.cdt.debug.core.cdi.ICDIAddressLocation;
-import org.eclipse.cdt.debug.core.cdi.ICDICondition;
-import org.eclipse.cdt.debug.core.cdi.ICDIFunctionLocation;
-import org.eclipse.cdt.debug.core.cdi.ICDILineLocation;
-import org.eclipse.cdt.debug.core.cdi.ICDILocator;
-import org.eclipse.cdt.debug.core.cdi.model.ICDIAddressBreakpoint;
-import org.eclipse.cdt.debug.core.cdi.model.ICDIBreakpoint;
-import org.eclipse.cdt.debug.core.cdi.model.ICDIExceptionpoint;
-import org.eclipse.cdt.debug.core.cdi.model.ICDIFunctionBreakpoint;
-import org.eclipse.cdt.debug.core.cdi.model.ICDILineBreakpoint;
-import org.eclipse.cdt.debug.core.cdi.model.ICDIWatchpoint;
-import org.eclipse.cdt.debug.mi.core.MIException;
-import org.eclipse.cdt.debug.mi.core.MIFormat;
-import org.eclipse.cdt.debug.mi.core.MISession;
-import org.eclipse.cdt.debug.mi.core.cdi.model.AddressBreakpoint;
-import org.eclipse.cdt.debug.mi.core.cdi.model.AddressLocation;
-import org.eclipse.cdt.debug.mi.core.cdi.model.Breakpoint;
-import org.eclipse.cdt.debug.mi.core.cdi.model.Exceptionpoint;
-import org.eclipse.cdt.debug.mi.core.cdi.model.FunctionBreakpoint;
-import org.eclipse.cdt.debug.mi.core.cdi.model.FunctionLocation;
-import org.eclipse.cdt.debug.mi.core.cdi.model.LineBreakpoint;
-import org.eclipse.cdt.debug.mi.core.cdi.model.LocationBreakpoint;
-import org.eclipse.cdt.debug.mi.core.cdi.model.Target;
-import org.eclipse.cdt.debug.mi.core.cdi.model.Watchpoint;
-import org.eclipse.cdt.debug.mi.core.command.CommandFactory;
-import org.eclipse.cdt.debug.mi.core.command.MIBreakAfter;
-import org.eclipse.cdt.debug.mi.core.command.MIBreakCondition;
-import org.eclipse.cdt.debug.mi.core.command.MIBreakDelete;
-import org.eclipse.cdt.debug.mi.core.command.MIBreakDisable;
-import org.eclipse.cdt.debug.mi.core.command.MIBreakEnable;
-import org.eclipse.cdt.debug.mi.core.command.MIBreakInsert;
-import org.eclipse.cdt.debug.mi.core.command.MIBreakList;
-import org.eclipse.cdt.debug.mi.core.command.MIBreakWatch;
-import org.eclipse.cdt.debug.mi.core.command.MIGDBSetBreakpointPending;
-import org.eclipse.cdt.debug.mi.core.event.MIBreakpointChangedEvent;
-import org.eclipse.cdt.debug.mi.core.event.MIBreakpointCreatedEvent;
-import org.eclipse.cdt.debug.mi.core.event.MIBreakpointDeletedEvent;
-import org.eclipse.cdt.debug.mi.core.event.MIEvent;
-import org.eclipse.cdt.debug.mi.core.output.MIBreakInsertInfo;
-import org.eclipse.cdt.debug.mi.core.output.MIBreakListInfo;
-import org.eclipse.cdt.debug.mi.core.output.MIBreakWatchInfo;
-import org.eclipse.cdt.debug.mi.core.output.MIBreakpoint;
-import org.eclipse.cdt.debug.mi.core.output.MIInfo;
-
-/**
- * Breakpoint Manager for the CDI interface.
- */
-public class BreakpointManager extends Manager {
-
- public static ICDIBreakpoint[] EMPTY_BREAKPOINTS = {};
-
- Map breakMap;
- Map deferredMap;
- boolean allowInterrupt;
-
- public BreakpointManager(Session session) {
- super(session, false);
- breakMap = Collections.synchronizedMap(new HashMap());
- deferredMap = Collections.synchronizedMap(new HashMap());
- allowInterrupt = true;
- }
-
- synchronized List getBreakpointsList(Target target) {
- List bList = (List)breakMap.get(target);
- if (bList == null) {
- bList = Collections.synchronizedList(new ArrayList());
- breakMap.put(target, bList);
- }
- return bList;
- }
-
- MIBreakpoint[] getAllMIBreakpoints(MISession miSession) throws CDIException {
- CommandFactory factory = miSession.getCommandFactory();
- MIBreakList breakpointList = factory.createMIBreakList();
- try {
- miSession.postCommand(breakpointList);
- MIBreakListInfo info = breakpointList.getMIBreakListInfo();
- if (info == null) {
- throw new CDIException(CdiResources.getString("cdi.Common.No_answer")); //$NON-NLS-1$
- }
- return info.getMIBreakpoints();
- } catch (MIException e) {
- throw new MI2CDIException(e);
- }
- }
-
- boolean hasBreakpointChanged(MIBreakpoint miBreak, MIBreakpoint miBreakpoint) {
- return miBreak.isEnabled() != miBreakpoint.isEnabled() ||
- !miBreak.getCondition().equals(miBreakpoint.getCondition()) ||
- miBreak.getIgnoreCount() != miBreakpoint.getIgnoreCount();
- }
-
- public Watchpoint getWatchpoint(MISession miSession, int number) {
- return (Watchpoint)getBreakpoint(miSession, number);
- }
-
- public Breakpoint getBreakpoint(MISession miSession, int number) {
- Session session = (Session)getSession();
- Target target = session.getTarget(miSession);
- if (target != null) {
- return getBreakpoint(target, number);
- }
- return null;
- }
-
- public Breakpoint getBreakpoint(Target target, int number) {
- List bList = (List)breakMap.get(target);
- if (bList != null) {
- Breakpoint[] bkpts = (Breakpoint[]) bList.toArray(new Breakpoint[0]);
- for (int i = 0; i < bkpts.length; i++) {
- MIBreakpoint[] miBreakpoints = bkpts[i].getMIBreakpoints();
- for (int j = 0; j < miBreakpoints.length; j++) {
- if (miBreakpoints[j].getNumber() == number) {
- return bkpts[i];
- }
- }
- }
- }
- return null;
- }
-
- boolean suspendInferior(Target target) throws CDIException {
- boolean shouldRestart = false;
- // Stop the program
- if (allowInterrupt && target.isRunning()) {
- // Disable events.
- ((EventManager)getSession().getEventManager()).allowProcessingEvents(false);
- target.suspend();
- shouldRestart = true;
- }
- return shouldRestart;
- }
-
- void resumeInferior(Target target, boolean shouldRestart) throws CDIException {
- if (shouldRestart) {
- target.resume();
- // Enable events again.
- ((EventManager)getSession().getEventManager()).allowProcessingEvents(true);
- }
- }
-
- public void deleteBreakpoint(MISession miSession, int no) {
- Session session = (Session)getSession();
- Target target = session.getTarget(miSession);
- if (target != null) {
- deleteBreakpoint(target, no);
- }
- }
-
- /**
- * Use in the event classes, the breakpoint is not remove from the list
- * It is only done in DestroyedEvent class. Since we need to keep the breakpoint
- * type around.
- * @param target
- * @param no
- */
- void deleteBreakpoint (Target target, int no) {
- List bList = (List)breakMap.get(target);
- if (bList != null) {
- Breakpoint[] points = (Breakpoint[]) bList.toArray(new Breakpoint[0]);
- for (int i = 0; i < points.length; i++) {
- MIBreakpoint[] miBreakpoints = points[i].getMIBreakpoints();
- for (int j = 0; j < miBreakpoints.length; j++) {
- if (miBreakpoints[j].getNumber() == no) {
- bList.remove(points[i]);
- break;
- }
- }
- }
- }
- }
-
- /**
- * Call through the Breakpoint class Breakpoint.setEnabled(boolean)
- *
- * @param breakpoint
- * @throws CDIException
- */
- public void enableBreakpoint(Breakpoint breakpoint) throws CDIException {
- Target target = (Target)breakpoint.getTarget();
-
- // Check if the breakpoint is in the deffered list
- List dList = (List)deferredMap.get(target);
- if (dList != null) {
- if (dList.contains(breakpoint)) {
- breakpoint.setEnabled0(true);
- return; // bail out here, our work is done.
- }
- }
-
- List bList = (List)breakMap.get(target);
- if (bList == null) {
- throw new CDIException(CdiResources.getString("cdi.BreakpointManager.Not_a_CDT_breakpoint")); //$NON-NLS-1$
- }
- if (!bList.contains(breakpoint)) {
- throw new CDIException(CdiResources.getString("cdi.BreakpointManager.Not_a_CDT_breakpoint")); //$NON-NLS-1$
- }
- MIBreakpoint[] miBreakpoints = breakpoint.getMIBreakpoints();
- if (miBreakpoints == null || miBreakpoints.length == 0) {
- throw new CDIException(CdiResources.getString("cdi.BreakpointManager.Not_a_CDT_breakpoint")); //$NON-NLS-1$
- }
-
- int[] numbers = new int[miBreakpoints.length];
- for (int i = 0; i < miBreakpoints.length; i++) {
- numbers[i] = miBreakpoints[i].getNumber();
- }
-
- boolean restart = false;
- MISession miSession = target.getMISession();
- CommandFactory factory = miSession.getCommandFactory();
- MIBreakEnable breakEnable = factory.createMIBreakEnable(numbers);
- try {
- restart = suspendInferior(target);
- miSession.postCommand(breakEnable);
- MIInfo info = breakEnable.getMIInfo();
- if (info == null) {
- throw new CDIException(CdiResources.getString("cdi.Common.No_answer")); //$NON-NLS-1$
- }
- } catch (MIException e) {
- throw new MI2CDIException(e);
- } finally {
- // Resume the program and enable events.
- resumeInferior(target, restart);
- }
- for (int i = 0; i < miBreakpoints.length; i++) {
- miBreakpoints[i].setEnabled(true);
- }
- breakpoint.setEnabled0(true);
- // Fire a changed Event.
- miSession.fireEvent(new MIBreakpointChangedEvent(miSession, numbers[0]));
- }
-
- /**
- * Call through the Breakpoint class. Breakpoint.disable
- *
- * @param breakpoint
- * @throws CDIException
- */
- public void disableBreakpoint(Breakpoint breakpoint) throws CDIException {
- Target target = (Target)breakpoint.getTarget();
-
- // Check if the breakpoint is in the deffered list
- List dList = (List)deferredMap.get(target);
- if (dList != null) {
- if (dList.contains(breakpoint)) {
- breakpoint.setEnabled0(false);
- return; // bail out here, our work is done.
- }
- }
-
- List bList = (List)breakMap.get(target);
- if (bList == null) {
- throw new CDIException(CdiResources.getString("cdi.BreakpointManager.Not_a_CDT_breakpoint")); //$NON-NLS-1$
- }
- if (!bList.contains(breakpoint)) {
- throw new CDIException(CdiResources.getString("cdi.BreakpointManager.Not_a_CDT_breakpoint")); //$NON-NLS-1$
- }
-
- MIBreakpoint[] miBreakpoints = breakpoint.getMIBreakpoints();
- if (miBreakpoints == null || miBreakpoints.length == 0) {
- throw new CDIException(CdiResources.getString("cdi.BreakpointManager.Not_a_CDT_breakpoint")); //$NON-NLS-1$
- }
- int[] numbers = new int[miBreakpoints.length];
- for (int i = 0; i < miBreakpoints.length; i++) {
- numbers[i] = miBreakpoints[i].getNumber();
- }
-
- boolean restart = false;
- MISession miSession = target.getMISession();
- CommandFactory factory = miSession.getCommandFactory();
- MIBreakDisable breakDisable = factory.createMIBreakDisable(numbers);
- try {
- restart = suspendInferior(target);
- miSession.postCommand(breakDisable);
- MIInfo info = breakDisable.getMIInfo();
- if (info == null) {
- throw new CDIException(CdiResources.getString("cdi.Common.No_answer")); //$NON-NLS-1$
- }
- } catch (MIException e) {
- throw new MI2CDIException(e);
- } finally {
- resumeInferior(target, restart);
- }
- for (int i = 0; i < miBreakpoints.length; i++) {
- miBreakpoints[i].setEnabled(false);
- }
- breakpoint.setEnabled0(false);
- // Fire a changed Event.
- miSession.fireEvent(new MIBreakpointChangedEvent(miSession, numbers[0]));
- }
-
- /**
- * Use by the Breakpoint class, Breakpoint.setCondition(Condition cond)
- * In this case we will not try to change the condition with -break-condition.
- * Since condition may contains new thread-id it is simpler to remove the breakpoints
- * and make a new breakpoints with the new conditions.
- * @param breakpoint
- * @param newCondition
- * @throws CDIException
- */
- public void setCondition(Breakpoint breakpoint, ICDICondition newCondition) throws CDIException {
- Target target = (Target)breakpoint.getTarget();
-
- // Check if the breakpoint is in the deffered list
- List dList = (List)deferredMap.get(target);
- if (dList != null) {
- if (dList.contains(breakpoint)) {
- breakpoint.setCondition0(newCondition);
- return; // bail out here, our work is done.
- }
- }
-
- List bList = (List)breakMap.get(target);
- if (bList == null) {
- throw new CDIException(CdiResources.getString("cdi.BreakpointManager.Not_a_CDT_breakpoint")); //$NON-NLS-1$
- }
- if (!bList.contains(breakpoint)) {
- throw new CDIException(CdiResources.getString("cdi.BreakpointManager.Not_a_CDT_breakpoint")); //$NON-NLS-1$
- }
-
- MIBreakpoint[] miBreakpoints = breakpoint.getMIBreakpoints();
- deleteMIBreakpoints(target, miBreakpoints);
- ICDICondition oldCondition = breakpoint.getCondition();
- boolean success = false;
- try {
- breakpoint.setCondition0(newCondition);
- if (breakpoint instanceof LocationBreakpoint) {
- setLocationBreakpoint((LocationBreakpoint)breakpoint);
- } else if (breakpoint instanceof Watchpoint) {
- setWatchpoint((Watchpoint)breakpoint);
- } else {
- throw new CDIException(CdiResources.getString("cdi.BreakpointManager.Not_a_CDT_breakpoint")); //$NON-NLS-1$
- }
- success = true;
- } finally {
- if (!success) {
- breakpoint.setCondition0(oldCondition);
- if (breakpoint instanceof LocationBreakpoint) {
- setLocationBreakpoint((LocationBreakpoint)breakpoint);
- } else if (breakpoint instanceof Watchpoint) {
- setWatchpoint((Watchpoint)breakpoint);
- }
- }
- }
-
- // Fire a changed Event.
- miBreakpoints = breakpoint.getMIBreakpoints();
- if (miBreakpoints != null && miBreakpoints.length > 0) {
- MISession miSession = target.getMISession();
- miSession.fireEvent(new MIBreakpointChangedEvent(miSession, miBreakpoints[0].getNumber()));
- }
- }
-
- /**
- */
- public void update(Target target) throws CDIException {
- MISession miSession = target.getMISession();
- MIBreakpoint[] allMIBreakpoints = getAllMIBreakpoints(miSession);
- List bList = getBreakpointsList(target);
- List eventList = new ArrayList(allMIBreakpoints.length);
- for (int i = 0; i < allMIBreakpoints.length; i++) {
- int no = allMIBreakpoints[i].getNumber();
- Breakpoint bp = getBreakpoint(target, no);
- if (bp != null) {
- MIBreakpoint[] miBps = bp.getMIBreakpoints();
- for (int j = 0; j < miBps.length; j++) {
- if (miBps[j].getNumber() == no) {
- if (hasBreakpointChanged(miBps[j], allMIBreakpoints[i])) {
- miBps[j] = allMIBreakpoints[i];
- bp.setEnabled0(allMIBreakpoints[i].isEnabled());
- // FIXME: We have a problem if the thread id change.
- ICDICondition oldCond = bp.getCondition();
- String[] tids = oldCond.getThreadIds();
- Condition newCondition = new Condition(allMIBreakpoints[i].getIgnoreCount(),
- allMIBreakpoints[i].getCondition(), tids);
- bp.setCondition0(newCondition);
- // Fire ChangedEvent
- eventList.add(new MIBreakpointChangedEvent(miSession, no));
- }
- }
- }
- } else {
- // add the new breakpoint and fire CreatedEvent
- int type = ICDIBreakpoint.REGULAR;
- if (allMIBreakpoints[i].isHardware()) {
- type = ICDIBreakpoint.HARDWARE;
- } else if (allMIBreakpoints[i].isTemporary()) {
- type = ICDIBreakpoint.TEMPORARY;
- }
- String[] tids = null;
- String tid = allMIBreakpoints[i].getThreadId();
- if (tid != null && tid.length() > 0) {
- tids = new String[] { tid };
- }
- Condition condition = new Condition(allMIBreakpoints[i].getIgnoreCount(),
- allMIBreakpoints[i].getCondition(), tids);
-
- if (allMIBreakpoints[i].isWatchpoint()) {
- int watchType = 0;
- if (allMIBreakpoints[i].isAccessWatchpoint() || allMIBreakpoints[i].isReadWatchpoint()) {
- watchType |= ICDIWatchpoint.READ;
- }
- if (allMIBreakpoints[i].isAccessWatchpoint() || allMIBreakpoints[i].isWriteWatchpoint()) {
- watchType |= ICDIWatchpoint.WRITE;
- }
- Watchpoint wpoint = new Watchpoint(target, allMIBreakpoints[i].getWhat(), type, watchType, condition, allMIBreakpoints[i].isEnabled());
- wpoint.setMIBreakpoints(new MIBreakpoint[] {allMIBreakpoints[i]});
- bList.add(wpoint);
- } else {
- String function = allMIBreakpoints[i].getFunction();
- String file = allMIBreakpoints[i].getFile();
- int line = allMIBreakpoints[i].getLine();
- String addr = allMIBreakpoints[i].getAddress();
- boolean enabled = allMIBreakpoints[i].isEnabled();
-
- if (file != null && file.length() > 0 && line > 0) {
- LineLocation location = createLineLocation (allMIBreakpoints[i].getFile(),
- allMIBreakpoints[i].getLine());
- // By default new breakpoint are LineBreakpoint
- Breakpoint newBreakpoint = new LineBreakpoint(target, type, location, condition, enabled);
- newBreakpoint.setMIBreakpoints(new MIBreakpoint[] {allMIBreakpoints[i]});
- bList.add(newBreakpoint);
- } else if (function != null && function.length() > 0) {
- FunctionLocation location = createFunctionLocation(file, function);
- // By default new breakpoint are LineBreakpoint
- Breakpoint newBreakpoint = new FunctionBreakpoint(target, type, location, condition, enabled);
- newBreakpoint.setMIBreakpoints(new MIBreakpoint[] {allMIBreakpoints[i]});
- bList.add(newBreakpoint);
- } else if (addr != null && addr.length() > 0) {
- BigInteger big = MIFormat.getBigInteger(addr);
- AddressLocation location = createAddressLocation (big);
- // By default new breakpoint are LineBreakpoint
- Breakpoint newBreakpoint = new AddressBreakpoint(target, type, location, condition, enabled);
- newBreakpoint.setMIBreakpoints(new MIBreakpoint[] {allMIBreakpoints[i]});
- bList.add(newBreakpoint);
- }
- }
- eventList.add(new MIBreakpointCreatedEvent(miSession, no));
- }
- }
- // Check if any breakpoint was removed.
- Breakpoint[] oldBreakpoints = (Breakpoint[]) bList.toArray(new Breakpoint[0]);
- for (int i = 0; i < oldBreakpoints.length; i++) {
- boolean found = false;
- MIBreakpoint[] miBreakpoints = oldBreakpoints[i].getMIBreakpoints();
- for (int j = 0; j < miBreakpoints.length; j++) {
- int no = miBreakpoints[j].getNumber();
- for (int k = 0; k < allMIBreakpoints.length; k++) {
- if (no == allMIBreakpoints[k].getNumber()) {
- found = true;
- break;
- }
- }
- if (!found) {
- // Fire destroyed Events.
- eventList.add(new MIBreakpointDeletedEvent(miSession, no));
- }
- }
- }
- MIEvent[] events = (MIEvent[])eventList.toArray(new MIEvent[0]);
- miSession.fireEvents(events);
- }
-
- /**
- * @see org.eclipse.cdt.debug.core.cdi.ICDIBreakpointManager#allowProgramInterruption()
- */
- public void allowProgramInterruption(boolean e) {
- allowInterrupt = e;
- }
-
- public void deleteFromDeferredList(Breakpoint bkpt) {
- List dList = (List)deferredMap.get(bkpt.getTarget());
- if (dList != null) {
- dList.remove(bkpt);
- }
- }
-
- /**
- * Use by the EventManager when checking for deferred breapoints.
- * @param bkpt
- */
- public void addToBreakpointList(Breakpoint bkpt) {
- List bList = (List)breakMap.get(bkpt.getTarget());
- if (bList != null) {
- bList.add(bkpt);
- }
- }
-
- public void deleteAllBreakpoints(Target target) throws CDIException {
- List bList = (List)breakMap.get(target);
- if (bList != null) {
- ICDIBreakpoint[] bps = new ICDIBreakpoint[bList.size()];
- bList.toArray(bps);
- deleteBreakpoints(target, bps);
- }
- }
- /**
- * @see org.eclipse.cdt.debug.core.cdi.ICDIBreakpointManager#deleteBreakpoint(ICDIBreakpoint)
- */
- public void deleteBreakpoint(ICDIBreakpoint breakpoint) throws CDIException {
- deleteBreakpoints((Target)breakpoint.getTarget(), new ICDIBreakpoint[] { breakpoint });
- }
-
- public void deleteBreakpoints(Target target, ICDIBreakpoint[] breakpoints) throws CDIException {
- List bList = (List)breakMap.get(target);
- List dList = (List)deferredMap.get(target);
-
- // Do the sanity check first, we will accept all or none
- if (bList == null) {
- throw new CDIException(CdiResources.getString("cdi.BreakpointManager.Not_a_CDT_breakpoint")); //$NON-NLS-1$
- }
- for (int i = 0; i < breakpoints.length; i++) {
- if (!(breakpoints[i] instanceof Breakpoint && (bList.contains(breakpoints[i]) || (dList != null && dList.contains(breakpoints[i]))))) {
- throw new CDIException(CdiResources.getString("cdi.BreakpointManager.Not_a_CDT_breakpoint")); //$NON-NLS-1$
- }
- }
-
- MISession miSession = target.getMISession();
- List eventList = new ArrayList(breakpoints.length);
- for (int i = 0; i < breakpoints.length; i++) {
- if (!(dList != null && dList.remove(breakpoints[i]))) {
- MIBreakpoint[] miBreakpoints = ((Breakpoint)breakpoints[i]).getMIBreakpoints();
- if (miBreakpoints.length > 0) {
- deleteMIBreakpoints(target, miBreakpoints);
- eventList.add(new MIBreakpointDeletedEvent(miSession, miBreakpoints[0].getNumber()));
- }
- }
- }
- MIEvent[] events = (MIEvent[])eventList.toArray(new MIEvent[0]);
- miSession.fireEvents(events);
- }
-
- void deleteMIBreakpoints(Target target, MIBreakpoint[] miBreakpoints) throws CDIException {
- MISession miSession = target.getMISession();
- int[] numbers = new int[miBreakpoints.length];
- for (int i = 0; i < miBreakpoints.length; ++i) {
- numbers[i] = miBreakpoints[i].getNumber();
- }
- boolean restart = false;
- try {
- restart = suspendInferior(target);
- deleteMIBreakpoints(miSession, numbers);
- } finally {
- resumeInferior(target, restart);
- }
- }
-
- void deleteMIBreakpoints(MISession miSession, int[] numbers) throws CDIException {
- CommandFactory factory = miSession.getCommandFactory();
- MIBreakDelete breakDelete = factory.createMIBreakDelete(numbers);
- try {
- miSession.postCommand(breakDelete);
- MIInfo info = breakDelete.getMIInfo();
- if (info == null) {
- throw new CDIException(CdiResources.getString("cdi.Common.No_answer")); //$NON-NLS-1$
- }
- } catch (MIException e) {
- throw new MI2CDIException(e);
- }
- }
-
- public ICDIBreakpoint[] getBreakpoints(Target target) throws CDIException {
- List list = (List)breakMap.get(target);
- if (list != null) {
- ICDIBreakpoint[] bps = new ICDIBreakpoint[list.size()];
- list.toArray(bps);
- return bps;
- }
- return EMPTY_BREAKPOINTS;
- }
-
- public ICDIBreakpoint[] getDeferredBreakpoints(Target target) throws CDIException {
- List dlist = (List)deferredMap.get(target);
- if (dlist != null) {
- ICDIBreakpoint[] bps = new ICDIBreakpoint[dlist.size()];
- dlist.toArray(bps);
- return bps;
- }
- return EMPTY_BREAKPOINTS;
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.cdt.debug.core.cdi.model.ICDIBreakpointManagement#setLineBreakpoint(int, org.eclipse.cdt.debug.core.cdi.ICDILineLocation, org.eclipse.cdt.debug.core.cdi.ICDICondition, boolean)
- */
- public ICDILineBreakpoint setLineBreakpoint(Target target, int type, ICDILineLocation location,
- ICDICondition condition, boolean deferred, boolean enabled) throws CDIException {
- LineBreakpoint bkpt = new LineBreakpoint(target, type, location, condition, enabled);
- setNewLocationBreakpoint(bkpt, deferred);
- return bkpt;
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.cdt.debug.core.cdi.model.ICDIBreakpointManagement#setFunctionBreakpoint(int, org.eclipse.cdt.debug.core.cdi.ICDIFunctionLocation, org.eclipse.cdt.debug.core.cdi.ICDICondition, boolean)
- */
- public ICDIFunctionBreakpoint setFunctionBreakpoint(Target target, int type, ICDIFunctionLocation location,
- ICDICondition condition, boolean deferred, boolean enabled) throws CDIException {
- FunctionBreakpoint bkpt = new FunctionBreakpoint(target, type, location, condition, enabled);
- setNewLocationBreakpoint(bkpt, deferred);
- return bkpt;
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.cdt.debug.core.cdi.model.ICDIBreakpointManagement#setAddressBreakpoint(int, org.eclipse.cdt.debug.core.cdi.ICDIAddressLocation, org.eclipse.cdt.debug.core.cdi.ICDICondition, boolean)
- */
- public ICDIAddressBreakpoint setAddressBreakpoint(Target target, int type, ICDIAddressLocation location,
- ICDICondition condition, boolean deferred, boolean enabled) throws CDIException {
- AddressBreakpoint bkpt = new AddressBreakpoint(target, type, location, condition, enabled);
- setNewLocationBreakpoint(bkpt, deferred);
- return bkpt;
- }
-
-
- protected void setNewLocationBreakpoint(LocationBreakpoint bkpt, boolean deferred) throws CDIException {
- Target target = (Target)bkpt.getTarget();
- MISession miSession = target.getMISession();
- try {
- setLocationBreakpoint(bkpt);
- List blist = getBreakpointsList(target);
- blist.add(bkpt);
-
- // Fire a created Event.
- MIBreakpoint[] miBreakpoints = bkpt.getMIBreakpoints();
- if (miBreakpoints != null && miBreakpoints.length > 0) {
- miSession.fireEvent(new MIBreakpointCreatedEvent(miSession, miBreakpoints[0].getNumber()));
- }
- } catch (CDIException e) {
- if (!deferred) {
- throw e;
- }
- Session session = (Session)target.getSession();
- SharedLibraryManager sharedMgr = session.getSharedLibraryManager();
- if (sharedMgr.isDeferredBreakpoint(target)) {
- List dList = (List)deferredMap.get(target);
- if (dList == null) {
- dList = Collections.synchronizedList(new ArrayList());
- deferredMap.put(target, dList);
- }
- dList.add(bkpt);
- } else {
- throw e;
- }
- }
- }
-
- public ICDIWatchpoint setWatchpoint(Target target, int type, int watchType, String expression,
- ICDICondition condition, boolean enabled) throws CDIException {
-
- // HACK: for the IDE,
- try {
- // Check if this an address watchpoint, and add a '*'
- Integer.decode(expression);
- expression = '*' + expression;
- } catch (NumberFormatException e) {
- //
- }
- Watchpoint bkpt = new Watchpoint(target, expression, type, watchType, condition, enabled);
-
- setWatchpoint(bkpt);
- List bList = getBreakpointsList(target);
- bList.add(bkpt);
-
- // Fire a created Event.
- MIBreakpoint[] miBreakpoints = bkpt.getMIBreakpoints();
- if (miBreakpoints != null && miBreakpoints.length > 0) {
- MISession miSession = target.getMISession();
- miSession.fireEvent(new MIBreakpointCreatedEvent(miSession, miBreakpoints[0].getNumber()));
- }
- return bkpt;
- }
-
- public void setLocationBreakpoint (LocationBreakpoint bkpt) throws CDIException {
- Target target = (Target)bkpt.getTarget();
- MISession miSession = target.getMISession();
- MIBreakInsert[] breakInserts = createMIBreakInsert(bkpt);
- List pointList = new ArrayList();
- boolean restart = false;
- try {
- restart = suspendInferior(target);
- CommandFactory factory = miSession.getCommandFactory();
- boolean enable = bkpt.isEnabled();
- for (int i = 0; i < breakInserts.length; i++) {
- miSession.postCommand(breakInserts[i]);
- MIBreakInsertInfo info = breakInserts[i].getMIBreakInsertInfo();
- if (info == null) {
- throw new CDIException(CdiResources.getString("cdi.Common.No_answer")); //$NON-NLS-1$
- }
- MIBreakpoint[] points = info.getMIBreakpoints();
- if (points == null || points.length == 0) {
- throw new CDIException(CdiResources.getString("cdi.BreakpointManager.Parsing_Error")); //$NON-NLS-1$
- }
- // Set
- if (bkpt.getFile().length() > 0)
- {
- for (int j = 0; j < points.length; j++) {
- points[j].setFile(bkpt.getFile());
- }
- }
- // Make sure that if the breakpoint was disable we create them disable.
- if (!enable) {
- int[] numbers = new int[points.length];
- for (int j = 0; j < points.length; j++) {
- numbers[j] = points[j].getNumber();
- }
- MIBreakDisable breakDisable = factory.createMIBreakDisable(numbers);
- try {
- miSession.postCommand(breakDisable);
- MIInfo disableInfo = breakDisable.getMIInfo();
- if (disableInfo == null) {
- throw new CDIException(CdiResources.getString("cdi.Common.No_answer")); //$NON-NLS-1$
- }
- } catch (MIException e) {
- throw new MI2CDIException(e);
- }
- }
-
- pointList.addAll(Arrays.asList(points));
- }
- } catch (MIException e) {
- try {
- // Things did not go well remove all the breakpoints we've set before.
- MIBreakpoint[] allPoints = (MIBreakpoint[]) pointList.toArray(new MIBreakpoint[pointList.size()]);
- if (allPoints != null && allPoints.length > 0) {
- deleteMIBreakpoints(target, allPoints);
- }
- } catch (CDIException cdie) {
- // ignore this one;
- }
- throw new MI2CDIException(e);
- } finally {
- resumeInferior(target, restart);
- }
- MIBreakpoint[] allPoints = (MIBreakpoint[]) pointList.toArray(new MIBreakpoint[pointList.size()]);
- bkpt.setMIBreakpoints(allPoints);
- }
-
- public void setWatchpoint(Watchpoint watchpoint) throws CDIException {
- Target target = (Target)watchpoint.getTarget();
- boolean access = watchpoint.isReadType() && watchpoint.isWriteType();
- boolean read = ! watchpoint.isWriteType() && watchpoint.isReadType();
- String expression = watchpoint.getWatchExpression();
-
- MISession miSession = target.getMISession();
- CommandFactory factory = miSession.getCommandFactory();
- MIBreakWatch breakWatch =
- factory.createMIBreakWatch(access, read, expression);
- MIBreakpoint[] points = null;
- boolean restart = false;
- try {
- restart = suspendInferior(target);
- miSession.postCommand(breakWatch);
- MIBreakWatchInfo winfo = breakWatch.getMIBreakWatchInfo();
- if (winfo == null) {
- throw new CDIException(CdiResources.getString("cdi.Common.No_answer")); //$NON-NLS-1$
- }
- points = winfo.getMIBreakpoints();
- if (points == null || points.length == 0) {
- throw new CDIException(CdiResources.getString("cdi.BreakpointManager.Parsing_Error")); //$NON-NLS-1$
- }
-
- int no = points[0].getNumber();
-
- // Put the condition now.
- String exprCond = null;
- int ignoreCount = 0;
-
- ICDICondition condition = watchpoint.getCondition();
- if (condition != null) {
- exprCond = condition.getExpression();
- ignoreCount = condition.getIgnoreCount();
- }
- if (exprCond != null && exprCond.length() > 0) {
- MIBreakCondition breakCondition = factory.createMIBreakCondition(no, exprCond);
- miSession.postCommand(breakCondition);
- MIInfo info = breakCondition.getMIInfo();
- if (info == null) {
- throw new CDIException(CdiResources.getString("cdi.Common.No_answer")); //$NON-NLS-1$
- }
- }
- if (ignoreCount > 0) {
- MIBreakAfter breakAfter = factory.createMIBreakAfter(no, ignoreCount);
- miSession.postCommand(breakAfter);
- MIInfo info = breakAfter.getMIInfo();
- if (info == null) {
- throw new CDIException(CdiResources.getString("cdi.Common.No_answer")); //$NON-NLS-1$
- }
- }
- // how to deal with threads ???
- } catch (MIException e) {
- throw new MI2CDIException(e);
- } finally {
- resumeInferior(target, restart);
- }
- watchpoint.setMIBreakpoints(points);
- }
-
- Breakpoint[] exceptionBps = new Breakpoint[2];
- final int EXCEPTION_THROW_IDX = 0;
- final int EXCEPTION_CATCH_IDX = 1;
- final static String[] EXCEPTION_FUNCS = new String[] {"__cxa_throw", "__cxa_begin_catch"}; //$NON-NLS-1$ //$NON-NLS-2$
-
-
- public ICDIExceptionpoint setExceptionpoint(Target target, String clazz, boolean stopOnThrow,
- boolean stopOnCatch, boolean enabled) throws CDIException {
-
- if (!stopOnThrow && !stopOnCatch) {
- throw new CDIException("Must suspend on throw or catch"); //$NON-NLS-1$
- }
-
- MIBreakpoint[] miBreakpoints = null;
-
- if (stopOnThrow) {
- synchronized(exceptionBps) {
- int id = EXCEPTION_THROW_IDX;
- if (exceptionBps[EXCEPTION_THROW_IDX] == null) {
- FunctionLocation location = new FunctionLocation(null, EXCEPTION_FUNCS[id]);
- FunctionBreakpoint bp = new FunctionBreakpoint(target, ICDIBreakpoint.REGULAR, location, null, enabled);
- setLocationBreakpoint(bp);
- exceptionBps[id] = bp;
- miBreakpoints = bp.getMIBreakpoints();
- }
- }
- }
- if (stopOnCatch) {
- synchronized(exceptionBps) {
- int id = EXCEPTION_THROW_IDX;
- if (exceptionBps[id] == null) {
- FunctionLocation location = new FunctionLocation(null, EXCEPTION_FUNCS[id]);
- FunctionBreakpoint bp = new FunctionBreakpoint(target, ICDIBreakpoint.REGULAR, location, null, enabled);
- setLocationBreakpoint(bp);
- exceptionBps[id] = bp;
- if (miBreakpoints != null) {
- MIBreakpoint[] mibp = bp.getMIBreakpoints();
- MIBreakpoint[] temp = new MIBreakpoint[miBreakpoints.length + mibp.length];
- System.arraycopy(miBreakpoints, 0, temp, 0, miBreakpoints.length);
- System.arraycopy(mibp, 0, temp, miBreakpoints.length, mibp.length);
- } else {
- miBreakpoints = bp.getMIBreakpoints();
- }
- }
- }
- }
-
- Exceptionpoint excp = new Exceptionpoint(target, clazz, stopOnThrow, stopOnCatch, null, enabled);
- if (miBreakpoints != null && miBreakpoints.length > 0) {
- excp.setMIBreakpoints(miBreakpoints);
- List blist = getBreakpointsList(target);
- blist.add(excp);
-
- // Fire a created Event.
- MISession miSession = target.getMISession();
- miSession.fireEvent(new MIBreakpointCreatedEvent(miSession, miBreakpoints[0].getNumber()));
- }
- return excp;
- }
-
- /**
- * Call -gdb-set breakpoint pending set
- * @param target
- * @param set
- * @throws CDIException
- */
- public void setBreakpointPending(Target target, boolean set) throws CDIException {
- MISession miSession = target.getMISession();
- CommandFactory factory = miSession.getCommandFactory();
- MIGDBSetBreakpointPending bpp = factory.createMIGDBSetBreakpointPending(set);
- try {
- miSession.postCommand(bpp);
- MIInfo info = bpp.getMIInfo();
- if (info == null) {
- throw new CDIException(CdiResources.getString("cdi.Common.No_answer")); //$NON-NLS-1$
- }
- } catch (MIException e) {
- throw new MI2CDIException(e);
- }
- }
-
- public Condition createCondition(int ignoreCount, String expression, String[] tids) {
- return new Condition(ignoreCount, expression, tids);
- }
-
- public LineLocation createLineLocation(String file, int line) {
- return new LineLocation(file, line);
- }
-
- public FunctionLocation createFunctionLocation(String file, String function) {
- return new FunctionLocation(file, function);
- }
-
- public AddressLocation createAddressLocation(BigInteger address) {
- return new AddressLocation(address);
- }
-
- MIBreakInsert[] createMIBreakInsert(LocationBreakpoint bkpt) throws CDIException {
- boolean hardware = bkpt.isHardware();
- boolean temporary = bkpt.isTemporary();
- String exprCond = null;
- int ignoreCount = 0;
- String[] threadIds = null;
- StringBuffer line = new StringBuffer();
-
- if (bkpt.getCondition() != null) {
- ICDICondition condition = bkpt.getCondition();
- exprCond = condition.getExpression();
- ignoreCount = condition.getIgnoreCount();
- threadIds = condition.getThreadIds();
- }
-
- if (bkpt.getLocator() != null) {
- ICDILocator locator = bkpt.getLocator();
- String file = locator.getFile();
- file = new File(file).getName();
- String function = locator.getFunction();
- int no = locator.getLineNumber();
- if (bkpt instanceof LineBreakpoint) {
- if (file != null && file.length() > 0) {
- line.append(file).append(':');
- }
- line.append(no);
- } else if (bkpt instanceof FunctionBreakpoint) {
- if (function != null && function.length() > 0) {
- // if the function contains :: assume the user
- // knows the exact funciton
- int colon = function.indexOf("::"); //$NON-NLS-1$
- if (colon != -1) {
- line.append(function);
- } else {
- if (file != null && file.length() > 0) {
- line.append(file).append(':');
- }
- // GDB does not seem to accept function arguments when
- // we use file name:
- // (gdb) break file.c:Test(int)
- // Will fail, altought it can accept this
- // (gdb) break file.c:main
- // so fall back to the line number or
- // just the name of the function if lineno is invalid.
- int paren = function.indexOf('(');
- if (paren != -1) {
- if (no <= 0) {
- String func = function.substring(0, paren);
- line.append(func);
- } else {
- line.append(no);
- }
- } else {
- line.append(function);
- }
- }
- } else {
- // ???
- if (file != null && file.length() > 0) {
- line.append(file).append(':');
- }
- if (no > 0) {
- line.append(no);
- }
- }
- } else if (bkpt instanceof AddressBreakpoint) {
- line.append('*').append(locator.getAddress());
- } else {
- // ???
- if (file != null && file.length() > 0) {
- line.append(file).append(':');
- }
- line.append(no);
- }
- }
-
- MIBreakInsert[] miBreakInserts;
- MISession miSession = ((Target)bkpt.getTarget()).getMISession();
- CommandFactory factory = miSession.getCommandFactory();
- if (threadIds == null || threadIds.length == 0) {
- MIBreakInsert bi = factory.createMIBreakInsert(temporary, hardware, exprCond, ignoreCount, line.toString(), 0);
- miBreakInserts = new MIBreakInsert[] { bi } ;
- } else {
- List list = new ArrayList(threadIds.length);
- for (int i = 0; i < threadIds.length; i++) {
- String threadId = threadIds[i];
- int tid = 0;
- if (threadId != null && threadId.length() > 0) {
- try {
- tid = Integer.parseInt(threadId);
- list.add(factory.createMIBreakInsert(temporary, hardware, exprCond, ignoreCount, line.toString(), tid));
- } catch (NumberFormatException e) {
- }
- }
- }
- miBreakInserts = (MIBreakInsert[]) list.toArray(new MIBreakInsert[list.size()]);
- }
- return miBreakInserts;
- }
-}
diff --git a/debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/CdiResources.java b/debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/CdiResources.java
deleted file mode 100644
index 4f53848df86..00000000000
--- a/debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/CdiResources.java
+++ /dev/null
@@ -1,48 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004, 2006 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * IBM Corporation - initial API and implementation
- *******************************************************************************/
-/*
- * Created on Mar 12, 2004
- *
- * To change the template for this generated file go to
- * Window - Preferences - Java - Code Generation - Code and Comments
- */
-package org.eclipse.cdt.debug.mi.core.cdi;
-import java.util.MissingResourceException;
-import java.util.ResourceBundle;
-/**
- * @author twolff
- *
- * To change the template for this generated type comment go to
- * Window - Preferences - Java - Code Generation - Code and Comments
- */
-public class CdiResources {
- private static final String BUNDLE_NAME = "org.eclipse.cdt.debug.mi.core.cdi.CdiResources";//$NON-NLS-1$
- private static final ResourceBundle RESOURCE_BUNDLE = ResourceBundle
- .getBundle(BUNDLE_NAME);
- /**
- *
- */
- private CdiResources() {
- // TODO Auto-generated constructor stub
- }
- /**
- * @param key
- * @return
- */
- public static String getString(String key) {
- // TODO Auto-generated method stub
- try {
- return RESOURCE_BUNDLE.getString(key);
- } catch (MissingResourceException e) {
- return '!' + key + '!';
- }
- }
-}
diff --git a/debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/CdiResources.properties b/debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/CdiResources.properties
deleted file mode 100644
index 544c0a9218c..00000000000
--- a/debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/CdiResources.properties
+++ /dev/null
@@ -1,33 +0,0 @@
-###############################################################################
-# Copyright (c) 2003, 2005 QNX Software Systems and others.
-# All rights reserved. This program and the accompanying materials
-# are made available under the terms of the Eclipse Public License v1.0
-# which accompanies this distribution, and is available at
-# http://www.eclipse.org/legal/epl-v10.html
-#
-# Contributors:
-# QNX Software Systems - initial API and implementation
-###############################################################################
-
-cdi.Common.No_answer=No answer
-cdi.Common.Not_implemented=Not Implemented
-cdi.SourceManager.Unknown_type=Unknown type
-cdi.RegisterManager.Wrong_register_type=Wrong register type
-cdi.BreakpointManager.Not_a_CDT_breakpoint=Not a CDT breakpoint
-cdi.BreakpointManager.Not_Supported=Not Supported
-cdi.BreakpointManager.Parsing_Error=Parsing Error
-cdi.RuntimeOptions.Unable_to_set_args_target_not_responding=Unable to set arguments: target is not responding
-cdi.RuntimeOptions.Unable_to_set_args=Unable to set arguments:
-cdi.RuntimeOptions.Unable_to_set_args=Unable to set environment:
-cdi.RuntimeOptions.Unable_to_set_working_dir=Unable to set working directory:
-cdi.Session.Unknown_target=Unkown target
-cdi.VariableManager.Unknown_type=Unknown type
-cdi.VariableManager.Wrong_variable_type=Wrong variable type
-cdi.VariableManager.Unknown_variable_object=Unknown variable object
-cdi.model.VariableObject.Target_not_responding=Target is not responding
-cdi.model.Target.Unknown_thread=Unknown thread
-cdi.model.Target.Target_not_responding=Target is not responding
-cdi.model.Target.Cannot_switch_to_thread=Can not switch to thread
-cdi.model.Target.Inferior_already_running=Inferior is already running
-cdi.model.MemoryBlock.Bad_Offset=Bad Offset
-cdi.mode.Target.Bad_location=Bad location
diff --git a/debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/Condition.java b/debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/Condition.java
deleted file mode 100644
index 2701a1f7093..00000000000
--- a/debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/Condition.java
+++ /dev/null
@@ -1,71 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.mi.core.cdi;
-
-import org.eclipse.cdt.debug.core.cdi.ICDICondition;
-
-/**
- */
-public class Condition implements ICDICondition {
-
- int ignoreCount;
- String expression;
- String[] tids;
-
- public Condition(int ignore, String exp, String[] ids) {
- ignoreCount = ignore;
- expression = (exp == null) ? new String() : exp;
- tids = (ids == null) ? new String[0] : ids;
- }
-
- /**
- * @see org.eclipse.cdt.debug.core.cdi.ICDICondition#getIgnoreCount()
- */
- public int getIgnoreCount() {
- return ignoreCount;
- }
-
- /**
- * @see org.eclipse.cdt.debug.core.cdi.ICDICondition#getExpression()
- */
- public String getExpression() {
- return expression;
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.cdt.debug.core.cdi.ICDICondition#getThreadId()
- */
- public String[] getThreadIds() {
- return tids;
- }
-
- /* (non-Javadoc)
- * @see java.lang.Object#equals(java.lang.Object)
- */
- public boolean equals(ICDICondition obj) {
- if (obj instanceof Condition) {
- Condition cond = (Condition)obj;
- if (cond.getIgnoreCount() != this.getIgnoreCount())
- return false;
- if (cond.getExpression().compareTo(this.getExpression()) != 0)
- return false;
- if (cond.getThreadIds().length != this.getThreadIds().length)
- return false;
- for (int i = 0; i < cond.getThreadIds().length; ++i) {
- if (cond.getThreadIds()[i].compareTo(this.getThreadIds()[i]) != 0) {
- return false;
- }
- }
- return true;
- }
- return false;
- }
-}
diff --git a/debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/EndSteppingRange.java b/debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/EndSteppingRange.java
deleted file mode 100644
index 2c879f69fd5..00000000000
--- a/debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/EndSteppingRange.java
+++ /dev/null
@@ -1,22 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.mi.core.cdi;
-
-import org.eclipse.cdt.debug.core.cdi.ICDIEndSteppingRange;
-
-/**
- */
-public class EndSteppingRange extends SessionObject implements ICDIEndSteppingRange {
-
- public EndSteppingRange(Session session) {
- super(session);
- }
-}
diff --git a/debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/ErrorInfo.java b/debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/ErrorInfo.java
deleted file mode 100644
index b89ffeff50b..00000000000
--- a/debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/ErrorInfo.java
+++ /dev/null
@@ -1,42 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2002, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.cdt.debug.mi.core.cdi;
-
-import org.eclipse.cdt.debug.core.cdi.ICDIErrorInfo;
-import org.eclipse.cdt.debug.mi.core.event.MIErrorEvent;
-
-/**
- */
-public class ErrorInfo extends SessionObject implements ICDIErrorInfo {
-
- MIErrorEvent event;
-
- public ErrorInfo(Session session, MIErrorEvent e) {
- super(session);
- event = e;
- }
-
- /**
- * @see org.eclipse.cdt.debug.core.cdi.ICDIErrorInfo#getMessage()
- */
- public String getMessage() {
- return event.getMessage();
- }
-
- /**
- * @see org.eclipse.cdt.debug.core.cdi.ICDIErrorInfo#getDetailMessage()
- */
- public String getDetailMessage() {
- return event.getLogMessage();
- }
-
-}
diff --git a/debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/EventManager.java b/debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/EventManager.java
deleted file mode 100644
index 52d83f7a50e..00000000000
--- a/debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/EventManager.java
+++ /dev/null
@@ -1,537 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.mi.core.cdi;
-
-import java.math.BigInteger;
-import java.util.ArrayList;
-import java.util.Collections;
-import java.util.List;
-import java.util.Observable;
-import java.util.Observer;
-
-import org.eclipse.cdt.debug.core.cdi.CDIException;
-import org.eclipse.cdt.debug.core.cdi.ICDIEventManager;
-import org.eclipse.cdt.debug.core.cdi.event.ICDIEvent;
-import org.eclipse.cdt.debug.core.cdi.event.ICDIEventListener;
-import org.eclipse.cdt.debug.core.cdi.model.ICDIStackFrame;
-import org.eclipse.cdt.debug.mi.core.MIException;
-import org.eclipse.cdt.debug.mi.core.MISession;
-import org.eclipse.cdt.debug.mi.core.cdi.event.ChangedEvent;
-import org.eclipse.cdt.debug.mi.core.cdi.event.CreatedEvent;
-import org.eclipse.cdt.debug.mi.core.cdi.event.DestroyedEvent;
-import org.eclipse.cdt.debug.mi.core.cdi.event.DisconnectedEvent;
-import org.eclipse.cdt.debug.mi.core.cdi.event.ExitedEvent;
-import org.eclipse.cdt.debug.mi.core.cdi.event.MemoryChangedEvent;
-import org.eclipse.cdt.debug.mi.core.cdi.event.ResumedEvent;
-import org.eclipse.cdt.debug.mi.core.cdi.event.SuspendedEvent;
-import org.eclipse.cdt.debug.mi.core.cdi.model.MemoryBlock;
-import org.eclipse.cdt.debug.mi.core.cdi.model.Target;
-import org.eclipse.cdt.debug.mi.core.cdi.model.Thread;
-import org.eclipse.cdt.debug.mi.core.command.Command;
-import org.eclipse.cdt.debug.mi.core.command.CommandFactory;
-import org.eclipse.cdt.debug.mi.core.command.MIExecContinue;
-import org.eclipse.cdt.debug.mi.core.command.MIExecFinish;
-import org.eclipse.cdt.debug.mi.core.command.MIStackInfoDepth;
-import org.eclipse.cdt.debug.mi.core.command.MIStackSelectFrame;
-import org.eclipse.cdt.debug.mi.core.command.MIThreadSelect;
-import org.eclipse.cdt.debug.mi.core.event.MIBreakpointChangedEvent;
-import org.eclipse.cdt.debug.mi.core.event.MIBreakpointCreatedEvent;
-import org.eclipse.cdt.debug.mi.core.event.MIBreakpointDeletedEvent;
-import org.eclipse.cdt.debug.mi.core.event.MIChangedEvent;
-import org.eclipse.cdt.debug.mi.core.event.MICreatedEvent;
-import org.eclipse.cdt.debug.mi.core.event.MIDestroyedEvent;
-import org.eclipse.cdt.debug.mi.core.event.MIDetachedEvent;
-import org.eclipse.cdt.debug.mi.core.event.MIEvent;
-import org.eclipse.cdt.debug.mi.core.event.MIGDBExitEvent;
-import org.eclipse.cdt.debug.mi.core.event.MIInferiorCreatedEvent;
-import org.eclipse.cdt.debug.mi.core.event.MIInferiorExitEvent;
-import org.eclipse.cdt.debug.mi.core.event.MIInferiorSignalExitEvent;
-import org.eclipse.cdt.debug.mi.core.event.MIMemoryChangedEvent;
-import org.eclipse.cdt.debug.mi.core.event.MIMemoryCreatedEvent;
-import org.eclipse.cdt.debug.mi.core.event.MIRegisterChangedEvent;
-import org.eclipse.cdt.debug.mi.core.event.MIRegisterCreatedEvent;
-import org.eclipse.cdt.debug.mi.core.event.MIRunningEvent;
-import org.eclipse.cdt.debug.mi.core.event.MISharedLibChangedEvent;
-import org.eclipse.cdt.debug.mi.core.event.MISharedLibCreatedEvent;
-import org.eclipse.cdt.debug.mi.core.event.MISharedLibEvent;
-import org.eclipse.cdt.debug.mi.core.event.MISharedLibUnloadedEvent;
-import org.eclipse.cdt.debug.mi.core.event.MISignalChangedEvent;
-import org.eclipse.cdt.debug.mi.core.event.MIStoppedEvent;
-import org.eclipse.cdt.debug.mi.core.event.MIThreadCreatedEvent;
-import org.eclipse.cdt.debug.mi.core.event.MIThreadExitEvent;
-import org.eclipse.cdt.debug.mi.core.event.MIVarChangedEvent;
-import org.eclipse.cdt.debug.mi.core.event.MIVarCreatedEvent;
-import org.eclipse.cdt.debug.mi.core.event.MIVarDeletedEvent;
-import org.eclipse.cdt.debug.mi.core.output.MIInfo;
-import org.eclipse.cdt.debug.mi.core.output.MIStackInfoDepthInfo;
-
-/**
- */
-public class EventManager extends SessionObject implements ICDIEventManager, Observer {
-
- List list = Collections.synchronizedList(new ArrayList(1));
- MIRunningEvent lastRunningEvent;
- Command lastUserCommand = null;
- boolean fAllowProcessingEvents = true;
- /**
- * Process the event from MI, do any state work on the CDI,
- * and fire the corresponding CDI event.
- */
- public void update(Observable o, Object arg) {
-
- MIEvent miEvent = (MIEvent)arg;
- Session session = (Session)getSession();
- Target currentTarget = session.getTarget(miEvent.getMISession());
- if (currentTarget == null) {
- return; // bailout; this no concern to us. But we should Assert.
- }
- List cdiList = new ArrayList(1);
-
- if (miEvent instanceof MIStoppedEvent) {
- if (processSuspendedEvent((MIStoppedEvent)miEvent)) {
- cdiList.add(new SuspendedEvent(session, miEvent));
- }
- } else if (miEvent instanceof MIRunningEvent) {
- if (processRunningEvent((MIRunningEvent)miEvent))
- cdiList.add(new ResumedEvent(session, (MIRunningEvent)miEvent));
- } else if (miEvent instanceof MIChangedEvent) {
- if (miEvent instanceof MIVarChangedEvent) {
- cdiList.add(new ChangedEvent(session, (MIVarChangedEvent)miEvent));
- } else if (miEvent instanceof MIRegisterChangedEvent) {
- cdiList.add(new ChangedEvent(session, (MIRegisterChangedEvent)miEvent));
- } else if (miEvent instanceof MIMemoryChangedEvent) {
- // We need to fire an event for all the register blocks
- // that may contain the modified addresses.
- MemoryManager mgr = session.getMemoryManager();
- MemoryBlock[] blocks = mgr.getMemoryBlocks(miEvent.getMISession());
- MIMemoryChangedEvent miMem = (MIMemoryChangedEvent)miEvent;
- BigInteger[] addresses = miMem.getAddresses();
- for (int i = 0; i < blocks.length; i++) {
- if (blocks[i].contains(addresses) &&
- (! blocks[i].isFrozen() || blocks[i].isDirty())) {
- cdiList.add(new MemoryChangedEvent(session, blocks[i], miMem));
- blocks[i].setDirty(false);
- }
- }
- } else if (miEvent instanceof MIBreakpointChangedEvent) {
- MIBreakpointChangedEvent bpoint = (MIBreakpointChangedEvent)miEvent;
- if (bpoint.getNumber() > 0) {
- cdiList.add(new ChangedEvent(session, bpoint));
- } else {
- // Something change we do not know what
- // Let the breakpoint manager handle it with an update().
- try {
- session.getBreakpointManager().update(currentTarget);
- } catch (CDIException e) {
- }
- }
- } else if (miEvent instanceof MISharedLibChangedEvent) {
- cdiList.add(new ChangedEvent(session, (MISharedLibChangedEvent)miEvent));
- } else if (miEvent instanceof MISignalChangedEvent) {
- MISignalChangedEvent sig = (MISignalChangedEvent)miEvent;
- String name = sig.getName();
- if (name == null || name.length() == 0) {
- // Something change we do not know what
- // Let the signal manager handle it with an update().
- try {
- SignalManager sMgr = session.getSignalManager();
- sMgr.update(currentTarget);
- } catch (CDIException e) {
- }
- } else {
- cdiList.add(new ChangedEvent(session, sig));
- }
- }
- } else if (miEvent instanceof MIDestroyedEvent) {
- if (miEvent instanceof MIThreadExitEvent) {
- cdiList.add(new DestroyedEvent(session,(MIThreadExitEvent)miEvent));
- } else if (miEvent instanceof MIInferiorSignalExitEvent) {
- cdiList.add(new ExitedEvent(session, (MIInferiorSignalExitEvent)miEvent));
- } else if (miEvent instanceof MIInferiorExitEvent) {
- cdiList.add(new ExitedEvent(session, (MIInferiorExitEvent)miEvent));
- } else if (miEvent instanceof MIGDBExitEvent) {
- // Remove the target from the list.
- Target target = session.getTarget(miEvent.getMISession());
- if (target != null) {
- session.removeTargets(new Target[] { target });
- }
- cdiList.add(new ExitedEvent(session, (MIGDBExitEvent)miEvent));
- } else if (miEvent instanceof MIDetachedEvent) {
- cdiList.add(new DisconnectedEvent(session, (MIDetachedEvent)miEvent));
- } else if (miEvent instanceof MIBreakpointDeletedEvent) {
- MIBreakpointDeletedEvent bpoint = (MIBreakpointDeletedEvent)miEvent;
- if (bpoint.getNumber() > 0) {
- cdiList.add(new DestroyedEvent(session, bpoint));
- } else {
- // Something was deleted we do not know what
- // Let the breakpoint manager handle it with an update().
- try {
- session.getBreakpointManager().update(currentTarget);
- } catch (CDIException e) {
- }
- }
- } else if (miEvent instanceof MISharedLibUnloadedEvent) {
- processSharedLibUnloadedEvent((MISharedLibUnloadedEvent)miEvent);
- cdiList.add(new DestroyedEvent(session, (MISharedLibUnloadedEvent)miEvent));
- } else if (miEvent instanceof MIVarDeletedEvent) {
- cdiList.add(new DestroyedEvent(session, (MIVarDeletedEvent)miEvent));
- }
- } else if (miEvent instanceof MICreatedEvent) {
- if (miEvent instanceof MIBreakpointCreatedEvent) {
- MIBreakpointCreatedEvent bpoint = (MIBreakpointCreatedEvent)miEvent;
- if (bpoint.getNumber() > 0) {
- cdiList.add(new CreatedEvent(session, bpoint));
- } else {
- // Something created we do not know what
- // Let the breakpoint manager handle it with an update().
- try {
- session.getBreakpointManager().update(currentTarget);
- } catch (CDIException e) {
- }
- }
- } else if (miEvent instanceof MIVarCreatedEvent) {
- cdiList.add(new CreatedEvent(session, (MIVarCreatedEvent)miEvent));
- } else if (miEvent instanceof MIRegisterCreatedEvent) {
- cdiList.add(new CreatedEvent(session, (MIRegisterCreatedEvent)miEvent));
- } else if (miEvent instanceof MIThreadCreatedEvent) {
- cdiList.add(new CreatedEvent(session, (MIThreadCreatedEvent)miEvent));
- } else if (miEvent instanceof MIMemoryCreatedEvent) {
- cdiList.add(new CreatedEvent(session, (MIMemoryCreatedEvent)miEvent));
- } else if (miEvent instanceof MISharedLibCreatedEvent) {
- cdiList.add(new CreatedEvent(session, (MISharedLibCreatedEvent)miEvent));
- } else if (miEvent instanceof MIInferiorCreatedEvent) {
- cdiList.add(new CreatedEvent(session, (MIInferiorCreatedEvent)miEvent));
- }
- }
-
- // Fire the event;
- ICDIEvent[] cdiEvents = (ICDIEvent[])cdiList.toArray(new ICDIEvent[0]);
- fireEvents(cdiEvents);
- }
-
- public EventManager(Session session) {
- super(session);
- }
-
- /**
- * @see org.eclipse.cdt.debug.core.cdi.ICDIEventManager#addEventListener(ICDIEventListener)
- */
- public void addEventListener(ICDIEventListener listener) {
- list.add(listener);
- }
-
- /**
- * @see org.eclipse.cdt.debug.core.cdi.ICDIEventManager#removeEventListener(ICDIEventListener)
- */
- public void removeEventListener(ICDIEventListener listener) {
- list.remove(listener);
- }
-
- public void removeEventListeners() {
- list.clear();
- }
-
- /**
- * Send ICDIEvent to the listeners.
- */
- public void fireEvents(ICDIEvent[] cdiEvents) {
- if (cdiEvents != null && cdiEvents.length > 0) {
- ICDIEventListener[] listeners = (ICDIEventListener[])list.toArray(new ICDIEventListener[0]);
- for (int i = 0; i < listeners.length; i++) {
- listeners[i].handleDebugEvents(cdiEvents);
- }
- }
- }
-
- /**
- * When suspended arrives, reset managers and target.
- * Alse the variable and the memory needs to be updated and events
- * fired for changes.
- */
- boolean processSuspendedEvent(MIStoppedEvent stopped) {
- Session session = (Session)getSession();
- MISession miSession = stopped.getMISession();
- Target currentTarget = session.getTarget(miSession);
- currentTarget.setSupended(true);
-
- // Bailout early if we do not want to process any events.
- if (!isAllowingProcessingEvents()) {
- return false;
- }
-
-
- if (processSharedLibEvent(stopped)) {
- // Event was consumed by the shared lib processing bailout
- return false;
- }
-
- if (processBreakpointHitEvent(stopped)) {
- // Event was consumed, i.e. it was not the right exception.
- return false;
- }
-
- int threadId = stopped.getThreadId();
- currentTarget.updateState(threadId);
- try {
- Thread cthread = (Thread)currentTarget.getCurrentThread();
- if (cthread != null) {
- cthread.getCurrentStackFrame();
- } else {
- return true;
- }
- } catch (CDIException e1) {
- //e1.printStackTrace();
- return true;
- }
-
- // Update the managers.
- // For the Variable/Expression Managers call only the updateManager.
- VariableManager varMgr = session.getVariableManager();
- ExpressionManager expMgr = session.getExpressionManager();
- RegisterManager regMgr = session.getRegisterManager();
- MemoryManager memMgr = session.getMemoryManager();
- BreakpointManager bpMgr = session.getBreakpointManager();
- SignalManager sigMgr = session.getSignalManager();
- SourceManager srcMgr = session.getSourceManager();
- SharedLibraryManager libMgr = session.getSharedLibraryManager();
- try {
- if (varMgr.isAutoUpdate()) {
- varMgr.update(currentTarget);
- }
- if (expMgr.isAutoUpdate()) {
- expMgr.update(currentTarget);
- }
- if (regMgr.isAutoUpdate()) {
- regMgr.update(currentTarget);
- }
- if (memMgr.isAutoUpdate()) {
- memMgr.update(currentTarget);
- }
- if (bpMgr.isAutoUpdate()) {
- bpMgr.update(currentTarget);
- }
- if (sigMgr.isAutoUpdate()) {
- sigMgr.update(currentTarget);
- }
- if (libMgr.isAutoUpdate()) {
- libMgr.update(currentTarget);
- }
- if (srcMgr.isAutoUpdate()) {
- srcMgr.update(currentTarget);
- }
- } catch (CDIException e) {
- //System.out.println(e);
- }
- return true;
- }
-
- /**
- * When a shared library is unloading we could possibly have stale libraries.
- * GDB does no react well to this: see PR
- * https://bugs.eclipse.org/bugs/show_bug.cgi?id=74496
- * @param unLoaded
- * @return
- */
- boolean processSharedLibUnloadedEvent(MISharedLibUnloadedEvent unLoaded) {
- Session session = (Session)getSession();
- MISession miSession = unLoaded.getMISession();
- Target target = session.getTarget(miSession);
-
- // We do not need to do fancy checking we can just delete all
- // the expression variable and let UI recreate them by reevaluating.
- ExpressionManager expMgr = session.getExpressionManager();
- try {
- expMgr.deleteAllVariables(target);
- } catch (CDIException e) {
- }
-
- return false;
- }
-
- /**
- * If the deferredBreakpoint processing is set
- * catch the shared-lib-event go to the last known
- * stackframe and try to finish.
- * Save the last user command and issue it again.
- * @param stopped
- * @return
- */
- boolean processSharedLibEvent(MIStoppedEvent stopped) {
- Session session = (Session)getSession();
- MISession miSession = stopped.getMISession();
-
- Target currentTarget = session.getTarget(miSession);
- SharedLibraryManager mgr = session.getSharedLibraryManager();
-
- if (mgr.isDeferredBreakpoint(currentTarget)) {
- if (stopped instanceof MISharedLibEvent) {
- // Check if we have a new library loaded
- try {
- mgr.update(currentTarget);
- } catch (CDIException e3) {
- }
- CommandFactory factory = miSession.getCommandFactory();
- int type = (lastRunningEvent == null) ? MIRunningEvent.CONTINUE : lastRunningEvent.getType();
- if (lastUserCommand == null) {
- switch (type) {
- case MIRunningEvent.NEXT:
- lastUserCommand = factory.createMIExecNext(1);
- break;
- case MIRunningEvent.NEXTI:
- lastUserCommand = factory.createMIExecNextInstruction(1);
- break;
- case MIRunningEvent.STEP:
- lastUserCommand = factory.createMIExecStep(1);
- break;
- case MIRunningEvent.STEPI:
- lastUserCommand = factory.createMIExecStepInstruction(1);
- break;
- case MIRunningEvent.FINISH:
- lastUserCommand = factory.createMIExecFinish();
- break;
- case MIRunningEvent.RETURN:
- lastUserCommand = factory.createMIExecReturn();
- break;
- case MIRunningEvent.CONTINUE: {
- MIExecContinue cont = factory.createMIExecContinue();
- cont.setQuiet(true);
- try {
- miSession.postCommand(cont);
- MIInfo info = cont.getMIInfo();
- if (info == null) {
- // throw new CDIException("Target is not responding");
- }
- } catch (MIException e) {
- // throw new MI2CDIException(e);
- }
- return true; // for the continue bailout early no need to the stuff below
- }
- }
- }
-
- int miLevel = 0;
- int tid = 0;
- Thread currentThread = null;
- try {
- currentThread = (Thread)currentTarget.getCurrentThread();
- } catch (CDIException e1) {
- }
- tid = currentThread.getId();
- // Select the old thread now.
- if (tid > 0) {
- MIThreadSelect selectThread = factory.createMIThreadSelect(tid);
- try {
- miSession.postCommand(selectThread);
- } catch (MIException e) {
- // ignore
- }
- }
- ICDIStackFrame frame = null;
- try {
- frame = currentThread.getCurrentStackFrame();
- } catch (CDIException e2) {
- }
- int count = 0;
- try {
- MIStackInfoDepth depth = factory.createMIStackInfoDepth();
- miSession.postCommand(depth);
- MIStackInfoDepthInfo info = depth.getMIStackInfoDepthInfo();
- if (info == null) {
- //throw new CDIException("No answer");
- }
- count = info.getDepth();
- } catch (MIException e) {
- //throw new MI2CDIException(e);
- //System.out.println(e);
- }
- if (frame != null) {
- // Fortunately the ICDIStackFrame store the level
- // in ascending level the higher the stack the higher the level
- // GDB does the opposite the highest stack is 0.
- // This allow us to do some calculation, in figure out the
- // level of the old stack. The -1 is because gdb level is zero-based
- miLevel = count - frame.getLevel() - 1;
- }
- if (miLevel >= 0) {
- MIStackSelectFrame selectFrame = factory.createMIStackSelectFrame(miLevel);
- MIExecFinish finish = factory.createMIExecFinish();
- finish.setQuiet(true);
- try {
- miSession.postCommand(selectFrame);
- miSession.postCommand(finish);
- } catch (MIException e) {
- // ignore
- }
- } else {
- // if we are still at the same level in the backtrace
- // for example the StopEventLib was on a different thread
- // redo the last command.
- Command cmd = lastUserCommand;
- cmd.setQuiet(true);
- lastUserCommand = null;
- try {
- miSession.postCommand(cmd);
- } catch (MIException e) {
- // ignore
- }
- }
- return true;
- } else if (lastUserCommand != null) {
- Command cmd = lastUserCommand;
- cmd.setQuiet(true);
- lastUserCommand = null;
- try {
- miSession.postCommand(cmd);
- } catch (MIException e) {
- }
- return true;
- }
- }
- return false;
- }
-
- boolean processBreakpointHitEvent(MIStoppedEvent stopped) {
-// Session session = (Session)getSession();
-// if (stopped instanceof MIBreakpointHitEvent) {
-// MIBreakpointHitEvent bpEvent = (MIBreakpointHitEvent)stopped;
-// BreakpointManager bpMgr = session.getBreakpointManager();
-// int bpNo = bpEvent.getNumber();
-// }
- return false;
- }
-
- /**
- * Do any processing of before a running event.
- */
- boolean processRunningEvent(MIRunningEvent running) {
- lastRunningEvent = running;
-
- Session session = (Session)getSession();
- MISession miSession = running.getMISession();
- Target currentTarget = session.getTarget(miSession);
- currentTarget.setSupended(false);
-
- // Bailout early if we do not want to process any events.
- if (!isAllowingProcessingEvents() || !running.propagate()) {
- return false;
- }
-
- return true;
- }
-
- public boolean isAllowingProcessingEvents() {
- return fAllowProcessingEvents;
- }
-
- public void allowProcessingEvents(boolean allowed) {
- fAllowProcessingEvents = allowed;
- }
-}
diff --git a/debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/ExitInfo.java b/debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/ExitInfo.java
deleted file mode 100644
index 61012ea0f30..00000000000
--- a/debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/ExitInfo.java
+++ /dev/null
@@ -1,34 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.mi.core.cdi;
-
-import org.eclipse.cdt.debug.core.cdi.ICDIExitInfo;
-import org.eclipse.cdt.debug.mi.core.event.MIInferiorExitEvent;
-
-/**.
- */
-public class ExitInfo extends SessionObject implements ICDIExitInfo {
-
- MIInferiorExitEvent event;
-
- public ExitInfo(Session session, MIInferiorExitEvent e) {
- super(session);
- event = e;
- }
-
- /**
- * @see org.eclipse.cdt.debug.core.cdi.ICDIExitInfo#getCode()
- */
- public int getCode() {
- return event.getExitCode();
- }
-
-}
diff --git a/debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/ExpressionManager.java b/debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/ExpressionManager.java
deleted file mode 100644
index df0f2fa8cc1..00000000000
--- a/debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/ExpressionManager.java
+++ /dev/null
@@ -1,269 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.mi.core.cdi;
-
-import java.util.ArrayList;
-import java.util.Collections;
-import java.util.Hashtable;
-import java.util.List;
-import java.util.Map;
-
-import org.eclipse.cdt.debug.core.cdi.CDIException;
-import org.eclipse.cdt.debug.core.cdi.model.ICDIExpression;
-import org.eclipse.cdt.debug.core.cdi.model.ICDIVariable;
-import org.eclipse.cdt.debug.mi.core.MIException;
-import org.eclipse.cdt.debug.mi.core.MISession;
-import org.eclipse.cdt.debug.mi.core.cdi.model.Expression;
-import org.eclipse.cdt.debug.mi.core.cdi.model.LocalVariable;
-import org.eclipse.cdt.debug.mi.core.cdi.model.StackFrame;
-import org.eclipse.cdt.debug.mi.core.cdi.model.Target;
-import org.eclipse.cdt.debug.mi.core.cdi.model.Thread;
-import org.eclipse.cdt.debug.mi.core.cdi.model.Variable;
-import org.eclipse.cdt.debug.mi.core.command.CommandFactory;
-import org.eclipse.cdt.debug.mi.core.command.MIVarCreate;
-import org.eclipse.cdt.debug.mi.core.command.MIVarDelete;
-import org.eclipse.cdt.debug.mi.core.command.MIVarUpdate;
-import org.eclipse.cdt.debug.mi.core.event.MIEvent;
-import org.eclipse.cdt.debug.mi.core.event.MIVarChangedEvent;
-import org.eclipse.cdt.debug.mi.core.event.MIVarDeletedEvent;
-import org.eclipse.cdt.debug.mi.core.output.MIVar;
-import org.eclipse.cdt.debug.mi.core.output.MIVarChange;
-import org.eclipse.cdt.debug.mi.core.output.MIVarCreateInfo;
-import org.eclipse.cdt.debug.mi.core.output.MIVarUpdateInfo;
-
-/**
- */
-public class ExpressionManager extends Manager {
-
- final static ICDIExpression[] EMPTY_EXPRESSIONS = {};
- Map expMap;
- Map varMap;
- MIVarChange[] noChanges = new MIVarChange[0];
-
- public ExpressionManager(Session session) {
- super(session, true);
- expMap = new Hashtable();
- varMap = new Hashtable();
- }
-
- synchronized List getExpressionList(Target target) {
- List expList = (List)expMap.get(target);
- if (expList == null) {
- expList = Collections.synchronizedList(new ArrayList());
- expMap.put(target, expList);
- }
- return expList;
- }
-
- synchronized List getVariableList(Target target) {
- List varList = (List)varMap.get(target);
- if (varList == null) {
- varList = Collections.synchronizedList(new ArrayList());
- varMap.put(target, varList);
- }
- return varList;
- }
-
- /**
- * @see org.eclipse.cdt.debug.core.cdi.ICDIExpressionManager#createExpression(String)
- */
- public ICDIExpression createExpression(Target target, String name) throws CDIException {
- Expression expression = new Expression(target, name);
- List exprList = getExpressionList(target);
- exprList.add(expression);
- return expression;
- }
-
- public ICDIExpression[] getExpressions(Target target) throws CDIException {
- List expList = (List) expMap.get(target);
- if (expList != null) {
- return (ICDIExpression[])expList.toArray(EMPTY_EXPRESSIONS);
- }
- return EMPTY_EXPRESSIONS;
- }
-
- /**
- * @see org.eclipse.cdt.debug.core.cdi.ICDIExpressionManager#removeExpression(ICDIExpression)
- */
- public void destroyExpressions(Target target, ICDIExpression[] expressions) throws CDIException {
- List expList = getExpressionList(target);
- for (int i = 0; i < expressions.length; ++i) {
- expList.remove(expressions[i]);
- }
- }
-
- /**
- * @see org.eclipse.cdt.debug.core.cdi.ICDIExpressionManager#removeExpression(ICDIExpression)
- */
- public void destroyAllExpressions(Target target) throws CDIException {
- ICDIExpression[] expressions = getExpressions(target);
- destroyExpressions(target, expressions);
- }
-
- public void update(Target target) throws CDIException {
-// deleteAllVariables(target);
- List eventList = new ArrayList();
- MISession mi = target.getMISession();
- CommandFactory factory = mi.getCommandFactory();
- List varList = getVariableList(target);
- Variable[] variables = (Variable[]) varList.toArray(new Variable[varList.size()]);
- for (int i = 0; i < variables.length; i++) {
- Variable variable = variables[i];
- String varName = variable.getMIVar().getVarName();
- MIVarChange[] changes = noChanges;
- MIVarUpdate update = factory.createMIVarUpdate(varName);
- MIVarUpdateInfo info = null;
- try {
- mi.postCommand(update);
- } catch (MIException e) {
- throw new MI2CDIException(e);
- }
- boolean timedout = false;
- try {
- info = update.getMIVarUpdateInfo();
- if (info == null) {
- timedout = true;
- throw new CDIException(CdiResources.getString("cdi.Common.No_answer")); //$NON-NLS-1$
- }
- changes = info.getMIVarChanges();
- } catch (MIException e) {
- if (timedout) {
- throw new MI2CDIException(e);
- }
- eventList.add(new MIVarDeletedEvent(mi, varName));
- }
- for (int j = 0; j < changes.length; j++) {
- String n = changes[j].getVarName();
- if (changes[j].isInScope()) {
- eventList.add(new MIVarChangedEvent(mi, n));
- } else {
- deleteVariable(variable);
- eventList.add(new MIVarDeletedEvent(mi, n));
- }
- }
- }
- MIEvent[] events = (MIEvent[]) eventList.toArray(new MIEvent[0]);
- mi.fireEvents(events);
- }
-
- /**
- * @param miSession
- * @param varName
- * @return
- */
- public Variable getVariable(MISession miSession, String varName) {
- Session session = (Session)getSession();
- Target target = session.getTarget(miSession);
- List varList = getVariableList(target);
- Variable[] vars = (Variable[])varList.toArray(new Variable[0]);
- for (int i = 0; i < vars.length; i++) {
- try {
- if (vars[i].getMIVar().getVarName().equals(varName)) {
- return vars[i];
- }
- Variable v = vars[i].getChild(varName);
- if (v != null) {
- return v;
- }
- } catch (CDIException e) {
- // ignore
- }
- }
- return null;
- }
-
- public Variable createVariable(StackFrame frame, String code) throws CDIException {
- Target target = (Target)frame.getTarget();
- Thread currentThread = (Thread)target.getCurrentThread();
- StackFrame currentFrame = currentThread.getCurrentStackFrame();
- target.lockTarget();
- try {
- target.setCurrentThread(frame.getThread(), false);
- ((Thread)frame.getThread()).setCurrentStackFrame(frame, false);
- MISession mi = target.getMISession();
- CommandFactory factory = mi.getCommandFactory();
- MIVarCreate var = factory.createMIVarCreate(code);
- mi.postCommand(var);
- MIVarCreateInfo info = var.getMIVarCreateInfo();
- if (info == null) {
- throw new CDIException(CdiResources.getString("cdi.Common.No_answer")); //$NON-NLS-1$
- }
- Variable variable = new LocalVariable(target, null, frame, code, null, 0, 0, info.getMIVar());
- List varList = getVariableList(target);
- varList.add(variable);
- return variable;
- } catch (MIException e) {
- throw new MI2CDIException(e);
- } finally {
- target.setCurrentThread(currentThread, false);
- currentThread.setCurrentStackFrame(currentFrame, false);
- target.releaseTarget();
- }
- }
-
- /**
- * Remove variable form the maintained cache list.
- * @param miSession
- * @param varName
- * @return
- */
- public Variable removeVariableFromList(MISession miSession, String varName) {
- Variable var = getVariable(miSession, varName);
- if (var != null) {
- Target target = ((Session)getSession()).getTarget(miSession);
- List varList = getVariableList(target);
- varList.remove(var);
- return var;
- }
- return null;
- }
-
- public void deleteAllVariables(Target target) throws CDIException {
- List varList = getVariableList(target);
- Variable[] variables = (Variable[]) varList.toArray(new Variable[varList.size()]);
- for (int i = 0; i < variables.length; ++i) {
- deleteVariable(variables[i]);
- }
- }
- /**
- * Get rid of the underlying variable.
- */
- public void deleteVariable(Variable variable) throws CDIException {
- Target target = (Target)variable.getTarget();
- MISession miSession = target.getMISession();
- MIVar miVar = variable.getMIVar();
- //remove the underlying var-object now.
- CommandFactory factory = miSession.getCommandFactory();
- MIVarDelete var = factory.createMIVarDelete(miVar.getVarName());
- try {
- miSession.postCommand(var);
- var.getMIInfo();
- } catch (MIException e) {
- //throw new MI2CDIException(e);
- }
- List varList = getVariableList(target);
- varList.remove(variable);
-
- // remove any children
- ICDIVariable[] children = variable.children;
- if (children != null) {
- for (int i = 0; i < children.length; ++i) {
- if (children[0] instanceof Variable) {
- Variable child = (Variable)children[i];
- MIVarDeletedEvent event = new MIVarDeletedEvent(miSession, child.getMIVar().getVarName());
- miSession.fireEvent(event);
- }
- }
- }
- miSession.fireEvent(new MIVarDeletedEvent(miSession, variable.getMIVar().getVarName()));
- }
-
-}
diff --git a/debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/FileLocation.java b/debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/FileLocation.java
deleted file mode 100644
index abcde577f79..00000000000
--- a/debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/FileLocation.java
+++ /dev/null
@@ -1,22 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2005 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.cdt.debug.mi.core.cdi;
-
-import org.eclipse.cdt.debug.core.cdi.ICDIFileLocation;
-
-public class FileLocation extends Location implements ICDIFileLocation {
-
- public FileLocation(String file) {
- super(file);
- }
-
-}
diff --git a/debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/Format.java b/debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/Format.java
deleted file mode 100644
index 7875a602636..00000000000
--- a/debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/Format.java
+++ /dev/null
@@ -1,48 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.mi.core.cdi;
-
-import org.eclipse.cdt.debug.core.cdi.ICDIFormat;
-import org.eclipse.cdt.debug.mi.core.MIFormat;
-
-/**
- */
-public class Format {
-
- private Format() {
- }
-
- public static int toMIFormat(int format) {
- int fmt = MIFormat.NATURAL;
- switch (format) {
- case ICDIFormat.NATURAL:
- fmt = MIFormat.NATURAL;
- break;
-
- case ICDIFormat.DECIMAL:
- fmt = MIFormat.DECIMAL;
- break;
-
- case ICDIFormat.BINARY:
- fmt = MIFormat.BINARY;
- break;
-
- case ICDIFormat.OCTAL:
- fmt = MIFormat.OCTAL;
- break;
-
- case ICDIFormat.HEXADECIMAL:
- fmt = MIFormat.HEXADECIMAL;
- break;
- }
- return fmt;
- }
-}
diff --git a/debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/FunctionFinished.java b/debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/FunctionFinished.java
deleted file mode 100644
index 8523faba291..00000000000
--- a/debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/FunctionFinished.java
+++ /dev/null
@@ -1,71 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2002, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.mi.core.cdi;
-
-import org.eclipse.cdt.debug.core.cdi.CDIException;
-import org.eclipse.cdt.debug.core.cdi.ICDIFunctionFinished;
-import org.eclipse.cdt.debug.core.cdi.model.ICDIValue;
-import org.eclipse.cdt.debug.core.cdi.model.type.ICDIType;
-import org.eclipse.cdt.debug.mi.core.cdi.model.LocalVariableDescriptor;
-import org.eclipse.cdt.debug.mi.core.cdi.model.StackFrame;
-import org.eclipse.cdt.debug.mi.core.cdi.model.Target;
-import org.eclipse.cdt.debug.mi.core.cdi.model.Thread;
-import org.eclipse.cdt.debug.mi.core.cdi.model.Variable;
-import org.eclipse.cdt.debug.mi.core.event.MIFunctionFinishedEvent;
-
-/*
- * FunctionFinished
- */
-public class FunctionFinished extends EndSteppingRange implements ICDIFunctionFinished {
-
- MIFunctionFinishedEvent fMIEvent;
-
- /**
- * @param session
- */
- public FunctionFinished(Session session, MIFunctionFinishedEvent event) {
- super(session);
- fMIEvent = event;
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.cdt.debug.core.cdi.ICDIFunctionFinished#getReturnType()
- */
- public ICDIType getReturnType() throws CDIException {
- Session session = (Session)getSession();
- Target target = session.getTarget(fMIEvent.getMISession());
- String rType = fMIEvent.getReturnType();
- if (rType == null || rType.length() == 0) {
- throw new CDIException(CdiResources.getString("cdi.VariableManager.Unknown_type")); //$NON-NLS-1$
- }
- SourceManager srcMgr = session.getSourceManager();
- return srcMgr.getType(target, rType);
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.cdt.debug.core.cdi.ICDIFunctionFinished#getReturnValue()
- */
- public ICDIValue getReturnValue() throws CDIException {
- Session session = (Session)getSession();
- Target target = session.getTarget(fMIEvent.getMISession());
- Thread thread = (Thread)target.getCurrentThread();
- StackFrame frame = thread.getCurrentStackFrame();
- String gdbVariable = fMIEvent.getGDBResultVar();
- if (gdbVariable == null || gdbVariable.length() == 0) {
- throw new CDIException(CdiResources.getString("cdi.VariableManager.Unknown_type")); //$NON-NLS-1$
- }
- LocalVariableDescriptor varDesc = new LocalVariableDescriptor(target, thread, frame, gdbVariable, null, 0, 0);
- VariableManager varMgr = session.getVariableManager();
- Variable var = varMgr.createVariable(varDesc);
- return var.getValue();
- }
-
-}
diff --git a/debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/LineLocation.java b/debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/LineLocation.java
deleted file mode 100644
index 18954dcd147..00000000000
--- a/debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/LineLocation.java
+++ /dev/null
@@ -1,22 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2005 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.cdt.debug.mi.core.cdi;
-
-import org.eclipse.cdt.debug.core.cdi.ICDILineLocation;
-
-public class LineLocation extends Location implements ICDILineLocation {
-
- public LineLocation(String file, int line) {
- super(file, line);
- }
-
-}
diff --git a/debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/Location.java b/debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/Location.java
deleted file mode 100644
index c9d282043da..00000000000
--- a/debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/Location.java
+++ /dev/null
@@ -1,155 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2005 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.mi.core.cdi;
-
-import java.math.BigInteger;
-
-import org.eclipse.cdt.debug.core.cdi.ICDIAddressLocation;
-import org.eclipse.cdt.debug.core.cdi.ICDIFileLocation;
-import org.eclipse.cdt.debug.core.cdi.ICDIFunctionLocation;
-import org.eclipse.cdt.debug.core.cdi.ICDILineLocation;
-import org.eclipse.cdt.debug.core.cdi.ICDILocation;
-
-/**
- */
-public abstract class Location {
-
- BigInteger fAddress = null;
- String fFile = null;
- String fFunction = null;
- int fLine;
-
- /**
- * File location
- * @param file
- */
- public Location(String file) {
- this(file, null, 0, null);
- }
-
- /**
- * File:function location
- * @param file
- * @param function
- */
- public Location(String file, String function) {
- this(file, function, 0, null);
- }
-
- /**
- * File:line location
- * @param file
- * @param line
- */
- public Location(String file, int line) {
- this (file, null, line, null);
- }
-
- /**
- * Address location
- * @param address
- */
- public Location(BigInteger address) {
- this (null, null, 0, address);
- }
-
- protected Location(String file, String function, int line, BigInteger address) {
- fFile = file;
- fFunction = function;
- fLine = line;
- fAddress = address;
- }
-
- /**
- * @see org.eclipse.cdt.debug.core.cdi.ICDILocation#getAddress()
- */
- public BigInteger getAddress() {
- return fAddress;
- }
-
- /**
- * @see org.eclipse.cdt.debug.core.cdi.ICDILocation#getFile()
- */
- public String getFile() {
- return fFile;
- }
-
- /**
- * @see org.eclipse.cdt.debug.core.cdi.ICDILocation#getFunction()
- */
- public String getFunction() {
- return fFunction;
- }
-
- /**
- * @see org.eclipse.cdt.debug.core.cdi.ICDILocation#getLineNumber()
- */
- public int getLineNumber() {
- return fLine;
- }
-
- /**
- * @see org.eclipse.cdt.debug.core.cdi.ICDILocation#equals(ICDILocation)
- */
- public boolean equals(ICDILocation location) {
- if (location == this) {
- return true;
- }
- if (location instanceof ICDILineLocation) {
- ICDILineLocation lineLocation = (ICDILineLocation)location;
- String oFile = lineLocation.getFile();
- if (oFile != null && oFile.length() > 0 && fFile != null && fFile.length() > 0 && oFile.equals(fFile)) {
- if (lineLocation.getLineNumber() == fLine) {
- return true;
- }
- } else if ((fFile == null || fFile.length() == 0) && (oFile == null || oFile.length() == 0)) {
- if (lineLocation.getLineNumber() == fLine) {
- return true;
- }
- }
- } else if (location instanceof ICDIFunctionLocation) {
- ICDIFunctionLocation funcLocation = (ICDIFunctionLocation)location;
- String oFile = funcLocation.getFile();
- String oFunction = funcLocation.getFunction();
- if (oFile != null && oFile.length() > 0 && fFile != null && fFile.length() > 0 && oFile.equals(fFile)) {
- if (oFunction != null && oFunction.length() > 0 && fFunction != null && fFunction.length() > 0 && oFunction.equals(fFunction)) {
- return true;
- } else if ((oFunction == null || oFunction.length() == 0) && (fFunction == null || fFunction.length() == 0)) {
- return true;
- }
- } else if ((fFile == null || fFile.length() == 0) && (oFile == null || oFile.length() == 0)) {
- if (oFunction != null && oFunction.length() > 0 && fFunction != null && fFunction.length() > 0 && oFunction.equals(fFunction)) {
- return true;
- } else if ((oFunction == null || oFunction.length() == 0) && (fFunction == null || fFunction.length() == 0)) {
- return true;
- }
- }
- } else if (location instanceof ICDIAddressLocation) {
- ICDIAddressLocation addrLocation = (ICDIAddressLocation)location;
- BigInteger oAddr = addrLocation.getAddress();
- if (oAddr != null && oAddr.equals(fAddress)) {
- return true;
- } else if (oAddr == null && fAddress == null) {
- return true;
- }
- } else if (location instanceof ICDIFileLocation) {
- ICDIFileLocation fileLocation = (ICDIFileLocation)location;
- String oFile = fileLocation.getFile();
- if (oFile != null && oFile.length() > 0 && fFile != null && fFile.length() > 0 && oFile.equals(fFile)) {
- return true;
- } else if ((fFile == null || fFile.length() == 0) && (oFile == null || oFile.length() == 0)) {
- return true;
- }
- }
- return false;
- }
-
-}
diff --git a/debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/Locator.java b/debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/Locator.java
deleted file mode 100644
index 53a19daf91b..00000000000
--- a/debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/Locator.java
+++ /dev/null
@@ -1,71 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2005 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.cdt.debug.mi.core.cdi;
-
-import java.math.BigInteger;
-
-import org.eclipse.cdt.debug.core.cdi.ICDILocator;
-
-public class Locator extends Location implements ICDILocator {
-
- public Locator(String file, String function, int line, BigInteger address) {
- super(file, function, line, address);
- }
-
- boolean equalFile(String oFile) {
- return equalString(oFile, getFile());
- }
-
- boolean equalFunction(String oFunction) {
- return equalString(oFunction, getFunction());
- }
-
- boolean equalLine(int oLine) {
- return oLine == getLineNumber();
- }
-
- boolean equalAddress(BigInteger oAddress) {
- if (oAddress == null && getAddress() == null) {
- return true;
- }
- if (oAddress != null && oAddress.equals(getAddress())) {
- return true;
- }
- return false;
- }
-
- public static boolean equalString(String f1, String f2) {
- if (f1 != null && f1.length() > 0 && f2 != null && f2.length() > 0) {
- return f1.equals(f2);
- } else if ((f1 == null || f1.length() == 0) && (f2 == null || f2.length() == 0)) {
- return true;
- }
- return false;
- }
-
- public boolean equals(ICDILocator locator) {
-
- if (locator == this) {
- return true;
- }
- String oFile = locator.getFile();
- String oFunction = locator.getFunction();
- int oLine = locator.getLineNumber();
- BigInteger oAddress = locator.getAddress();
-
- if (equalFile(oFile) && equalFunction(oFunction) &&
- equalLine(oLine) && equalAddress(oAddress)) {
- return true;
- }
- return false;
- }
-}
diff --git a/debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/MI2CDIException.java b/debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/MI2CDIException.java
deleted file mode 100644
index f14bd8ec788..00000000000
--- a/debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/MI2CDIException.java
+++ /dev/null
@@ -1,30 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2002, 2005 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.cdt.debug.mi.core.cdi;
-
-import org.eclipse.cdt.debug.core.cdi.CDIException;
-import org.eclipse.cdt.debug.mi.core.MIException;
-
-/**
- */
-public class MI2CDIException extends CDIException {
-
- /**
- *
- */
- private static final long serialVersionUID = 1L;
-
- public MI2CDIException(MIException e) {
- super(e.getMessage(), e.getLogMessage());
- }
-
-}
diff --git a/debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/Manager.java b/debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/Manager.java
deleted file mode 100644
index c0c0749cd49..00000000000
--- a/debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/Manager.java
+++ /dev/null
@@ -1,66 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.cdt.debug.mi.core.cdi;
-
-import org.eclipse.cdt.debug.core.cdi.CDIException;
-import org.eclipse.cdt.debug.core.cdi.event.ICDIEvent;
-import org.eclipse.cdt.debug.core.cdi.model.ICDITarget;
-import org.eclipse.cdt.debug.mi.core.cdi.model.Target;
-
-/**
- * Manager
- *
- */
-public abstract class Manager extends SessionObject {
-
- boolean autoUpdate;
-
- public Manager(Session session, boolean update) {
- super(session);
- autoUpdate = update;
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.cdt.debug.core.cdi.ICDIUpdateManager#setAutoUpdate(boolean)
- */
- public void setAutoUpdate(boolean update) {
- autoUpdate = update;
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.cdt.debug.core.cdi.ICDIUpdateManager#isAutoUpdate()
- */
- public boolean isAutoUpdate() {
- return autoUpdate;
- }
-
- protected abstract void update (Target target) throws CDIException;
-
- /* (non-Javadoc)
- * @see org.eclipse.cdt.debug.core.cdi.impl.Manager#update()
- */
- public void update() throws CDIException {
- ICDITarget[] targets = getSession().getTargets();
- for (int i = 0; i < targets.length; ++i) {
- if (targets[i] instanceof Target) {
- update((Target)targets[i]);
- }
- }
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.cdt.debug.core.cdi.event.ICDIEventListener#handleDebugEvents(org.eclipse.cdt.debug.core.cdi.event.ICDIEvent[])
- */
- public void handleDebugEvents(ICDIEvent[] events) {
- }
-
-}
diff --git a/debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/MemoryManager.java b/debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/MemoryManager.java
deleted file mode 100644
index 1f883cd8723..00000000000
--- a/debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/MemoryManager.java
+++ /dev/null
@@ -1,194 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2005 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.mi.core.cdi;
-
-import java.math.BigInteger;
-import java.util.ArrayList;
-import java.util.Arrays;
-import java.util.Collections;
-import java.util.Hashtable;
-import java.util.List;
-import java.util.Map;
-
-import org.eclipse.cdt.debug.core.cdi.CDIException;
-import org.eclipse.cdt.debug.core.cdi.model.ICDIMemoryBlock;
-import org.eclipse.cdt.debug.mi.core.MIException;
-import org.eclipse.cdt.debug.mi.core.MIFormat;
-import org.eclipse.cdt.debug.mi.core.MISession;
-import org.eclipse.cdt.debug.mi.core.cdi.model.MemoryBlock;
-import org.eclipse.cdt.debug.mi.core.cdi.model.Target;
-import org.eclipse.cdt.debug.mi.core.command.CommandFactory;
-import org.eclipse.cdt.debug.mi.core.command.MIDataReadMemory;
-import org.eclipse.cdt.debug.mi.core.event.MIEvent;
-import org.eclipse.cdt.debug.mi.core.event.MIMemoryChangedEvent;
-import org.eclipse.cdt.debug.mi.core.event.MIMemoryCreatedEvent;
-import org.eclipse.cdt.debug.mi.core.output.MIDataReadMemoryInfo;
-
-
-/**
- */
-public class MemoryManager extends Manager {
-
- ICDIMemoryBlock[] EMPTY_MEMORY_BLOCKS = {};
- Map blockMap;
-
- public MemoryManager(Session session) {
- super(session, true);
- blockMap = new Hashtable();
- }
-
- synchronized List getMemoryBlockList(Target target) {
- List blockList = (List)blockMap.get(target);
- if (blockList == null) {
- blockList = Collections.synchronizedList(new ArrayList());
- blockMap.put(target, blockList);
- }
- return blockList;
- }
-
- /**
- * This method will be call by the eventManager.processSuspended() every time the
- * inferior comes to a Stop/Suspended. It will allow to look at the blocks that
- * are registered and fired any event if changed.
- * Note: Frozen blocks are not updated.
- *
- */
- public void update(Target target) {
- MISession miSession = target.getMISession();
- List blockList = getMemoryBlockList(target);
- MemoryBlock[] blocks = (MemoryBlock[]) blockList.toArray(new MemoryBlock[blockList.size()]);
- List eventList = new ArrayList(blocks.length);
- for (int i = 0; i < blocks.length; i++) {
- if (! blocks[i].isFrozen()) {
- try {
- update(blocks[i], eventList);
- } catch (CDIException e) {
- }
- }
- }
- MIEvent[] events = (MIEvent[])eventList.toArray(new MIEvent[0]);
- miSession.fireEvents(events);
- }
-
- /**
- * update one Block.
- */
- public BigInteger[] update(MemoryBlock block, List aList) throws CDIException {
- Target target = (Target)block.getTarget();
- MISession miSession = target.getMISession();
- MemoryBlock newBlock = cloneBlock(block);
- boolean newAddress = ! newBlock.getStartAddress().equals(block.getStartAddress());
- BigInteger[] array = compareBlocks(block, newBlock);
- // Update the block MIDataReadMemoryInfo.
- block.setMIDataReadMemoryInfo(newBlock.getMIDataReadMemoryInfo());
- if (array.length > 0 || newAddress) {
- if (aList != null) {
- aList.add(new MIMemoryChangedEvent(miSession, array));
- } else {
- // fire right away.
- miSession.fireEvent(new MIMemoryChangedEvent(miSession, array));
- }
- }
- return array;
- }
-
- /**
- * Compare two blocks and return an array of all _addresses_ that are different.
- * This method is not smart it always assume that:
- * oldBlock.getStartAddress() == newBlock.getStartAddress;
- * oldBlock.getLength() == newBlock.getLength();
- * @return Long[] array of modified addresses.
- */
- BigInteger[] compareBlocks (MemoryBlock oldBlock, MemoryBlock newBlock) throws CDIException {
- byte[] oldBytes = oldBlock.getBytes();
- byte[] newBytes = newBlock.getBytes();
- List aList = new ArrayList(newBytes.length);
- BigInteger distance = newBlock.getStartAddress().subtract(oldBlock.getStartAddress());
- //IPF_TODO enshure it is OK here
- int diff = distance.intValue();
- if ( Math.abs(diff) < newBytes.length) {
- for (int i = 0; i < newBytes.length; i++) {
- if (i + diff < oldBytes.length && i + diff >= 0) {
- if (oldBytes[i + diff] != newBytes[i]) {
- aList.add(newBlock.getStartAddress().add(BigInteger.valueOf(i)));
- }
- }
- }
- }
- return (BigInteger[]) aList.toArray(new BigInteger[aList.size()]);
- }
-
- /**
- * Use the same expression and length of the original block
- * to create a new MemoryBlock. The new block is not register
- * with the MemoryManager.
- */
- MemoryBlock cloneBlock(MemoryBlock block) throws CDIException {
- Target target = (Target)block.getTarget();
- String exp = block.getExpression();
- int wordSize = block.getWordSize();
- boolean little = target.isLittleEndian();
- MIDataReadMemoryInfo info = createMIDataReadMemoryInfo(target.getMISession(), exp, (int)block.getLength(), wordSize);
- return new MemoryBlock(target, exp, wordSize, little, info);
- }
-
- /**
- * Post a -data-read-memory to gdb/mi.
- */
- MIDataReadMemoryInfo createMIDataReadMemoryInfo(MISession miSession, String exp, int units, int wordSize) throws CDIException {
- CommandFactory factory = miSession.getCommandFactory();
- MIDataReadMemory mem = factory.createMIDataReadMemory(0, exp, MIFormat.HEXADECIMAL, wordSize, 1, units, null);
- try {
- miSession.postCommand(mem);
- MIDataReadMemoryInfo info = mem.getMIDataReadMemoryInfo();
- if (info == null) {
- throw new CDIException(CdiResources.getString("cdi.Common.No_answer")); //$NON-NLS-1$
- }
- return info;
- } catch (MIException e) {
- throw new MI2CDIException(e);
- }
- }
-
- public ICDIMemoryBlock createMemoryBlock(Target target, String address, int units, int wordSize) throws CDIException {
- boolean little = target.isLittleEndian();
- MIDataReadMemoryInfo info = createMIDataReadMemoryInfo(target.getMISession(), address, units, wordSize);
- ICDIMemoryBlock block = new MemoryBlock(target, address, wordSize, little, info);
- List blockList = getMemoryBlockList(target);
- blockList.add(block);
- MISession miSession = target.getMISession();
- miSession.fireEvent(new MIMemoryCreatedEvent(miSession, block.getStartAddress(), block.getLength()));
- return block;
- }
-
- public MemoryBlock[] getMemoryBlocks(MISession miSession) {
- Session session = (Session)getSession();
- Target target = session.getTarget(miSession);
- List blockList = getMemoryBlockList(target);
- return (MemoryBlock[]) blockList.toArray(new MemoryBlock[blockList.size()]);
- }
- public ICDIMemoryBlock[] getMemoryBlocks(Target target) throws CDIException {
- List blockList = getMemoryBlockList(target);
- return (ICDIMemoryBlock[]) blockList.toArray(new ICDIMemoryBlock[blockList.size()]);
- }
-
- public void removeAllBlocks(Target target) throws CDIException {
- ICDIMemoryBlock[] blocks = getMemoryBlocks(target);
- removeBlocks(target, blocks);
- }
-
- public void removeBlocks(Target target, ICDIMemoryBlock[] memoryBlocks) throws CDIException {
- List blockList = (List)blockMap.get(target);
- if (blockList != null) {
- blockList.removeAll(Arrays.asList(memoryBlocks));
- }
- }
-}
diff --git a/debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/ProcessManager.java b/debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/ProcessManager.java
deleted file mode 100644
index 0ec433d4edf..00000000000
--- a/debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/ProcessManager.java
+++ /dev/null
@@ -1,90 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2005 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.mi.core.cdi;
-
-import java.util.Vector;
-
-import org.eclipse.cdt.debug.core.cdi.CDIException;
-import org.eclipse.cdt.debug.core.cdi.model.ICDITarget;
-import org.eclipse.cdt.debug.mi.core.MISession;
-import org.eclipse.cdt.debug.mi.core.cdi.model.Target;
-import org.eclipse.cdt.debug.mi.core.event.MIInferiorCreatedEvent;
-
-/**
- */
-public class ProcessManager extends Manager {
-
- static final Target[] EMPTY_TARGETS = new Target[0];
- Vector debugTargetList;
-
- public ProcessManager(Session session) {
- super(session, true);
- debugTargetList = new Vector(1);
- }
-
- /**
- * @see org.eclipse.cdt.debug.core.cdi.ICDIProcessManager#getProcesses()
- */
- public Target[] getTargets() {
- return (Target[]) debugTargetList.toArray(new Target[debugTargetList.size()]);
- }
-
- public ICDITarget[] getCDITargets() {
- return (ICDITarget[]) debugTargetList.toArray(new ICDITarget[debugTargetList.size()]);
- }
-
- public void addTargets(Target[] targets) {
- EventManager eventManager = (EventManager)getSession().getEventManager();
- for (int i = 0; i < targets.length; ++i) {
- Target target = targets[i];
- MISession miSession = target.getMISession();
- if (miSession != null) {
- miSession.addObserver(eventManager);
- miSession.fireEvent(new MIInferiorCreatedEvent(miSession, 0));
- if (!debugTargetList.contains(target)) {
- debugTargetList.add(target);
- }
- }
- }
- debugTargetList.trimToSize();
- }
-
- public void removeTargets(Target[] targets) {
- EventManager eventManager = (EventManager)getSession().getEventManager();
- for (int i = 0; i < targets.length; ++i) {
- Target target = targets[i];
- MISession miSession = target.getMISession();
- if (miSession != null) {
- miSession.deleteObserver(eventManager);
- }
- debugTargetList.remove(target);
- }
- debugTargetList.trimToSize();
- }
-
- public Target getTarget(MISession miSession) {
- synchronized(debugTargetList) {
- for (int i = 0; i < debugTargetList.size(); ++i) {
- Target target = (Target)debugTargetList.get(i);
- MISession mi = target.getMISession();
- if (mi.equals(miSession)) {
- return target;
- }
- }
- }
- // ASSERT: it should not happen.
- return null;
- }
-
- public void update(Target target) throws CDIException {
- }
-
-}
diff --git a/debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/RegisterManager.java b/debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/RegisterManager.java
deleted file mode 100644
index 487b8b7e0c1..00000000000
--- a/debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/RegisterManager.java
+++ /dev/null
@@ -1,426 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2005 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.mi.core.cdi;
-
-import java.util.ArrayList;
-import java.util.Collections;
-import java.util.HashMap;
-import java.util.Hashtable;
-import java.util.LinkedHashMap;
-import java.util.List;
-import java.util.Map;
-import java.util.Map.Entry;
-
-import org.eclipse.cdt.debug.core.cdi.CDIException;
-import org.eclipse.cdt.debug.core.cdi.model.ICDIRegisterDescriptor;
-import org.eclipse.cdt.debug.core.cdi.model.ICDIRegisterGroup;
-import org.eclipse.cdt.debug.core.cdi.model.type.ICDIType;
-import org.eclipse.cdt.debug.mi.core.MIException;
-import org.eclipse.cdt.debug.mi.core.MISession;
-import org.eclipse.cdt.debug.mi.core.cdi.model.Register;
-import org.eclipse.cdt.debug.mi.core.cdi.model.RegisterDescriptor;
-import org.eclipse.cdt.debug.mi.core.cdi.model.RegisterGroup;
-import org.eclipse.cdt.debug.mi.core.cdi.model.StackFrame;
-import org.eclipse.cdt.debug.mi.core.cdi.model.Target;
-import org.eclipse.cdt.debug.mi.core.cdi.model.Thread;
-import org.eclipse.cdt.debug.mi.core.cdi.model.Variable;
-import org.eclipse.cdt.debug.mi.core.cdi.model.VariableDescriptor;
-import org.eclipse.cdt.debug.mi.core.command.CommandFactory;
-import org.eclipse.cdt.debug.mi.core.command.MIDataListChangedRegisters;
-import org.eclipse.cdt.debug.mi.core.command.MIDataListRegisterNames;
-import org.eclipse.cdt.debug.mi.core.command.MIVarCreate;
-import org.eclipse.cdt.debug.mi.core.command.MIVarDelete;
-import org.eclipse.cdt.debug.mi.core.command.MIVarUpdate;
-import org.eclipse.cdt.debug.mi.core.event.MIEvent;
-import org.eclipse.cdt.debug.mi.core.event.MIRegisterChangedEvent;
-import org.eclipse.cdt.debug.mi.core.event.MIVarChangedEvent;
-import org.eclipse.cdt.debug.mi.core.output.MIDataListChangedRegistersInfo;
-import org.eclipse.cdt.debug.mi.core.output.MIDataListRegisterNamesInfo;
-import org.eclipse.cdt.debug.mi.core.output.MIVar;
-import org.eclipse.cdt.debug.mi.core.output.MIVarChange;
-import org.eclipse.cdt.debug.mi.core.output.MIVarCreateInfo;
-import org.eclipse.cdt.debug.mi.core.output.MIVarUpdateInfo;
-
-/**
- */
-public class RegisterManager extends Manager {
-
- final int MAX_ENTRIES = 150;
-
- /**
- *
- * LRUMap.<br>
- * Simple LRU cache using a LinkedHashMap
- */
- class LRUMap extends LinkedHashMap {
- private static final long serialVersionUID = 1L;
- LRUMap() {
- super(MAX_ENTRIES+1, .75F, true);
- }
- /* (non-Javadoc)
- * @see java.util.LinkedHashMap#removeEldestEntry(java.util.Map.Entry)
- */
- protected boolean removeEldestEntry(Entry eldest) {
- boolean toRemove = size() > MAX_ENTRIES;
- if (toRemove) {
- ShadowRegister v = (ShadowRegister)eldest.getValue();
- try {
- Target target = (Target)v.getTarget();
- removeMIVar(target.getMISession(), v.getMIVar());
- } catch (Exception e) {
- // ignore all
- }
- v.setMIVar(null);
- }
- return toRemove;
- }
- }
-
- /**
- *
- * ShadowRegister.<br>
- * To keep track of the register value we can a shadow variable. If the
- * the variable MIVar was destroy by the LRUCache we try to recreate it.
- */
- class ShadowRegister extends Register {
-
- public ShadowRegister(Register reg, StackFrame frame, String n, MIVar v) {
- super((Target)reg.getTarget(), (Thread)frame.getThread(), frame, n, null, 0, 0, v);
- try {
- fTypename = reg.getTypeName();
- } catch (CDIException e) {
- // ignore
- }
- try {
- fType = reg.getType();
- } catch (CDIException e) {
- // ignore
- }
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.cdt.debug.mi.core.cdi.model.Variable#getMIVar()
- */
- public MIVar getMIVar() throws CDIException {
- if (fMIVar == null) {
- fMIVar = createMiVar((StackFrame)getStackFrame(), getName());
- }
- return fMIVar;
- }
-
- public void setMIVar(MIVar newMIVar) {
- fMIVar = newMIVar;
- }
- }
-
- Map regsMap;
- Map varsMap;
- MIVarChange[] noChanges = new MIVarChange[0];
- HashMap fTypeCache;
-
- public RegisterManager(Session session) {
- super(session, true);
- regsMap = new Hashtable();
- varsMap = new Hashtable();
- // The register bookkeeping provides better update control.
- setAutoUpdate( true );
- fTypeCache = new HashMap();
- }
-
- public ICDIType getFromTypeCache(String typeName) {
- return (ICDIType)fTypeCache.get(typeName);
- }
- public void addToTypeCache(String typeName, ICDIType type) {
- fTypeCache.put(typeName, type);
- }
-
-
- synchronized List getRegistersList(Target target) {
- List regsList = (List)regsMap.get(target);
- if (regsList == null) {
- regsList = Collections.synchronizedList(new ArrayList());
- regsMap.put(target, regsList);
- }
- return regsList;
- }
-
- synchronized Map getVariableMap(Target target) {
- Map varMap = (Map)varsMap.get(target);
- if (varMap == null) {
- varMap = Collections.synchronizedMap(new LRUMap());
- varsMap.put(target, varMap);
- }
- return varMap;
- }
-
- public ICDIRegisterGroup[] getRegisterGroups(Target target) throws CDIException {
- RegisterGroup group = new RegisterGroup(target, "Main"); //$NON-NLS-1$
- return new ICDIRegisterGroup[] { group };
- }
-
- public ICDIRegisterDescriptor[] getRegisterDescriptors(RegisterGroup group) throws CDIException {
- Target target = (Target)group.getTarget();
- return getRegisterDescriptors(target);
- }
- public ICDIRegisterDescriptor[] getRegisterDescriptors(Target target) throws CDIException {
- MISession mi = target.getMISession();
- CommandFactory factory = mi.getCommandFactory();
- MIDataListRegisterNames registers = factory.createMIDataListRegisterNames();
- try {
- mi.postCommand(registers);
- MIDataListRegisterNamesInfo info =
- registers.getMIDataListRegisterNamesInfo();
- if (info == null) {
- throw new CDIException(CdiResources.getString("cdi.Common.No_answer")); //$NON-NLS-1$
- }
- String[] names = info.getRegisterNames();
- List regsList = new ArrayList(names.length);
- for (int i = 0; i < names.length; i++) {
- if (names[i].length() > 0) {
- regsList.add(new RegisterDescriptor(target, null, null, names[i], null, i, 0));
- }
- }
- return (ICDIRegisterDescriptor[])regsList.toArray(new ICDIRegisterDescriptor[0]);
- } catch (MIException e) {
- throw new MI2CDIException(e);
- } finally {
- }
- }
-
- public Register createRegister(RegisterDescriptor regDesc) throws CDIException {
- Register reg = findRegister(regDesc);
- if (reg == null) {
- try {
- String name = regDesc.getQualifiedName();
- Target target = (Target)regDesc.getTarget();
- MISession mi = target.getMISession();
- CommandFactory factory = mi.getCommandFactory();
- MIVarCreate var = factory.createMIVarCreate(name);
- mi.postCommand(var, -1);
-// mi.postCommand(var);
-// MIVarCreateInfo info = var.getMIVarCreateInfo();
-// if (info == null) {
-// throw new CDIException(CdiResources.getString("cdi.Common.No_answer")); //$NON-NLS-1$
-// }
-// reg = new Register(regDesc, info.getMIVar());
- reg = new Register(regDesc, var);
- List regList = getRegistersList(target);
- regList.add(reg);
- } catch (MIException e) {
- throw new MI2CDIException(e);
- }
- }
- return reg;
- }
-
- public void destroyRegister(Register reg) {
- Target target = (Target)reg.getTarget();
- List regList = (List)regsMap.get(target);
- if (regList != null) {
- if (regList.remove(reg)) {
- MISession miSession = target.getMISession();
- try {
- removeMIVar(miSession, reg.getMIVar());
- } catch (CDIException e) {
- //
- }
- }
- }
- }
-
- /**
- * Tell gdb to remove the underlying var-object also.
- */
- void removeMIVar(MISession miSession, MIVar miVar) throws CDIException {
- CommandFactory factory = miSession.getCommandFactory();
- MIVarDelete var = factory.createMIVarDelete(miVar.getVarName());
- try {
- miSession.postCommand(var);
- var.getMIInfo();
- } catch (MIException e) {
- throw new MI2CDIException(e);
- }
- }
-
- public MIVar createMiVar(StackFrame frame, String regName) throws CDIException {
- Target target = (Target)frame.getTarget();
- Thread currentThread = (Thread)target.getCurrentThread();
- StackFrame currentFrame = currentThread.getCurrentStackFrame();
- target.lockTarget();
- try {
- target.setCurrentThread(frame.getThread(), false);
- ((Thread)frame.getThread()).setCurrentStackFrame(frame, false);
- MISession mi = target.getMISession();
- CommandFactory factory = mi.getCommandFactory();
- MIVarCreate var = factory.createMIVarCreate(regName);
- mi.postCommand(var);
- MIVarCreateInfo info = var.getMIVarCreateInfo();
- if (info == null) {
- throw new CDIException(CdiResources.getString("cdi.Common.No_answer")); //$NON-NLS-1$
- }
- return info.getMIVar();
- } catch (MIException e) {
- throw new MI2CDIException(e);
- } finally {
- try {
- target.setCurrentThread(currentThread, false);
- currentThread.setCurrentStackFrame(currentFrame, false);
- } finally {
- target.releaseTarget();
- }
- }
- }
-
- public Variable createShadowRegister(Register register, StackFrame frame, String regName) throws CDIException {
- Target target = (Target)frame.getTarget();
- MIVar miVar = createMiVar(frame, regName);
- ShadowRegister variable = new ShadowRegister(register, frame, regName, miVar);
- Map varMap = getVariableMap(target);
- varMap.put(miVar.getVarName(), variable);
- return variable;
- }
-
- /**
- * Use by the eventManager to find the Register;
- */
- public Register getRegister(MISession miSession, String varName) {
- Target target = ((Session)getSession()).getTarget(miSession);
- Register[] regs = getRegisters(target);
- for (int i = 0; i < regs.length; i++) {
- try {
- if (regs[i].getMIVar().getVarName().equals(varName)) {
- return regs[i];
- }
- try {
- Register r = (Register)regs[i].getChild(varName);
- if (r != null) {
- return r;
- }
- } catch (ClassCastException e) {
- // ignore ???
- }
- } catch (CDIException e1) {
- // ignore;
- }
- }
- return null;
- }
-
- /**
- * Use by the eventManager to find the Register;
- */
- public Register getRegister(MISession miSession, int regno) {
- Target target = ((Session)getSession()).getTarget(miSession);
- return getRegister(target, regno);
- }
- public Register getRegister(Target target, int regno) {
- Register[] regs = getRegisters(target);
- for (int i = 0; i < regs.length; i++) {
- if (regs[i].getPosition() == regno) {
- return regs[i];
- }
- }
- return null;
- }
-
- public void update(Target target) throws CDIException {
- MISession mi = target.getMISession();
- CommandFactory factory = mi.getCommandFactory();
- MIDataListChangedRegisters changed = factory.createMIDataListChangedRegisters();
- try {
- mi.postCommand(changed);
- MIDataListChangedRegistersInfo info =
- changed.getMIDataListChangedRegistersInfo();
- if (info == null) {
- throw new CDIException(CdiResources.getString("cdi.Common.No_answer")); //$NON-NLS-1$
- }
- int[] regnos = info.getRegisterNumbers();
- List eventList = new ArrayList(regnos.length);
- // Now that we know the registers changed
- // call -var-update to update the value in gdb.
- // And send the notification.
- for (int i = 0 ; i < regnos.length; i++) {
- Register reg = getRegister(target, regnos[i]);
- if (reg != null) {
- String varName = reg.getMIVar().getVarName();
- MIVarChange[] changes = noChanges;
- MIVarUpdate update = factory.createMIVarUpdate(varName);
- try {
- mi.postCommand(update);
- MIVarUpdateInfo updateInfo = update.getMIVarUpdateInfo();
- if (updateInfo == null) {
- throw new CDIException(CdiResources.getString("cdi.Common.No_answer")); //$NON-NLS-1$
- }
- changes = updateInfo.getMIVarChanges();
- } catch (MIException e) {
- //throw new MI2CDIException(e);
- //eventList.add(new MIVarDeletedEvent(varName));
- }
- if (changes.length != 0) {
- for (int j = 0 ; j < changes.length; j++) {
- String n = changes[j].getVarName();
- if (changes[j].isInScope()) {
- eventList.add(new MIVarChangedEvent(mi, n));
- }
- }
- } else {
- // Fall back to the register number.
- eventList.add(new MIRegisterChangedEvent(mi, update.getToken(), reg.getName(), regnos[i]));
- }
- }
- }
- MIEvent[] events = (MIEvent[])eventList.toArray(new MIEvent[0]);
- mi.fireEvents(events);
- } catch (MIException e) {
- throw new MI2CDIException(e);
- }
- }
-
- private Register[] getRegisters(Target target) {
- List regsList = (List)regsMap.get(target);
- if (regsList != null) {
- return (Register[]) regsList.toArray(new Register[regsList.size()]);
- }
- return new Register[0];
- }
-
-// private Variable[] getVariables(Target target) {
-// List varList = (List)varsMap.get(target);
-// if (varList != null) {
-// return (Variable[]) varList.toArray(new Variable[varList.size()]);
-// }
-// return new Register[0];
-// }
-
- /**
- * Return the Element with this thread/stackframe, and with this name.
- * null is return if the element is not in the cache.
- */
- private Register findRegister(RegisterDescriptor rd) throws CDIException {
- Target target = (Target)rd.getTarget();
- String name = rd.getName();
- int position = rd.getPosition();
- Register[] regs = getRegisters(target);
- for (int i = 0; i < regs.length; i++) {
- if (regs[i].getName().equals(name)
- && regs[i].getCastingArrayStart() == rd.getCastingArrayStart()
- && regs[i].getCastingArrayEnd() == rd.getCastingArrayEnd()
- && VariableDescriptor.equalsCasting(regs[i], rd)) {
- // check threads
- if (regs[i].getPosition() == position) {
- return regs[i];
- }
- }
- }
- return null;
- }
-
-}
diff --git a/debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/Session.java b/debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/Session.java
deleted file mode 100644
index 6ca5ce068ff..00000000000
--- a/debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/Session.java
+++ /dev/null
@@ -1,227 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.cdt.debug.mi.core.cdi;
-
-import java.util.Properties;
-
-import org.eclipse.cdt.debug.core.cdi.CDIException;
-import org.eclipse.cdt.debug.core.cdi.ICDISessionConfiguration;
-import org.eclipse.cdt.debug.core.cdi.ICDIEventManager;
-import org.eclipse.cdt.debug.core.cdi.ICDISession;
-import org.eclipse.cdt.debug.core.cdi.ICDISessionObject;
-import org.eclipse.cdt.debug.core.cdi.event.ICDIEvent;
-import org.eclipse.cdt.debug.core.cdi.model.ICDITarget;
-import org.eclipse.cdt.debug.mi.core.MISession;
-import org.eclipse.cdt.debug.mi.core.cdi.event.DestroyedEvent;
-import org.eclipse.cdt.debug.mi.core.cdi.model.Target;
-
-/**
- * @see org.eclipse.cdt.debug.core.cdi.ICDISession
- */
-public class Session implements ICDISession, ICDISessionObject {
-
- public final static Target[] EMPTY_TARGETS = {};
- Properties props;
- ProcessManager processManager;
- EventManager eventManager;
- BreakpointManager breakpointManager;
- ExpressionManager expressionManager;
- VariableManager variableManager;
- RegisterManager registerManager;
- MemoryManager memoryManager;
- SharedLibraryManager sharedLibraryManager;
- SignalManager signalManager;
- SourceManager sourceManager;
- ICDISessionConfiguration configuration;
-
- public Session(MISession miSession, ICDISessionConfiguration configuration) {
- commonSetup();
- Target target = new Target(this, miSession);
- addTargets(new Target[] { target });
- setConfiguration(configuration);
- }
-
- // Why do we need this?
- public Session(MISession miSession, boolean attach) {
- this(miSession);
- }
-
- public Session(MISession miSession) {
- commonSetup();
- Target target = new Target(this, miSession);
- addTargets(new Target[] { target });
- setConfiguration(new SessionConfiguration(this));
- }
-
- private void commonSetup() {
- props = new Properties();
- processManager = new ProcessManager(this);
- breakpointManager = new BreakpointManager(this);
- eventManager = new EventManager(this);
- expressionManager = new ExpressionManager(this);
- variableManager = new VariableManager(this);
- registerManager = new RegisterManager(this);
- memoryManager = new MemoryManager(this);
- signalManager = new SignalManager(this);
- sourceManager = new SourceManager(this);
- sharedLibraryManager = new SharedLibraryManager(this);
- }
-
- public void addTargets(Target[] targets) {
- ProcessManager pMgr = getProcessManager();
- pMgr.addTargets(targets);
- }
-
- public void removeTargets(Target[] targets) {
- ProcessManager pMgr = getProcessManager();
- pMgr.removeTargets(targets);
- }
-
- public Target getTarget(MISession miSession) {
- ProcessManager pMgr = getProcessManager();
- return pMgr.getTarget(miSession);
- }
-
- /**
- * @see org.eclipse.cdt.debug.core.cdi.ICDISession#getAttribute(String)
- */
- public String getAttribute(String key) {
- return props.getProperty(key);
- }
-
- public ProcessManager getProcessManager() {
- return processManager;
- }
-
- public BreakpointManager getBreakpointManager() {
- return breakpointManager;
- }
-
- /**
- * @see org.eclipse.cdt.debug.core.cdi.ICDISession#getEventManager()
- */
- public ICDIEventManager getEventManager() {
- return eventManager;
- }
-
- public ExpressionManager getExpressionManager() {
- return expressionManager;
- }
-
- public VariableManager getVariableManager() {
- return variableManager;
- }
-
- public RegisterManager getRegisterManager() {
- return registerManager;
- }
-
- public SharedLibraryManager getSharedLibraryManager() {
- return sharedLibraryManager;
- }
-
- public MemoryManager getMemoryManager() {
- return memoryManager;
- }
-
- public SignalManager getSignalManager() {
- return signalManager;
- }
-
- public SourceManager getSourceManager() {
- return sourceManager;
- }
-
- /**
- * @see org.eclipse.cdt.debug.core.cdi.ICDISession#getTargets()
- */
- public ICDITarget[] getTargets() {
- ProcessManager pMgr = getProcessManager();
- return pMgr.getCDITargets();
- }
-
- /**
- * @see org.eclipse.cdt.debug.core.cdi.ICDISession#setAttribute(String, String)
- */
- public void setAttribute(String key, String value) {
- props.setProperty(key, value);
- }
-
- /**
- * @see org.eclipse.cdt.debug.core.cdi.ICDISession#getConfiguration()
- */
- public ICDISessionConfiguration getConfiguration() {
- return configuration;
- }
-
- public void setConfiguration(ICDISessionConfiguration conf) {
- configuration = conf;
- }
-
- /**
- * @see org.eclipse.cdt.debug.core.cdi.ICDISessionObject#getSession()
- */
- public ICDISession getSession() {
- return this;
- }
-
- /**
- * @see org.eclipse.cdt.debug.core.cdi.ICDISession#terminate(ICDITarget)
- */
- public void terminate() throws CDIException {
- ProcessManager pMgr = getProcessManager();
- Target[] targets = pMgr.getTargets();
- for (int i = 0; i < targets.length; ++i) {
- if (!targets[i].getMISession().isTerminated()) {
- targets[i].getMISession().terminate();
- }
- }
- // Do not do the removeTargets(), Target.getMISession().terminate() will do it
- // via an event, MIGDBExitEvent of the mi session
- //removeTargets(targets);
-
- // wait ~2 seconds for the targets to be terminated.
- for (int i = 0; i < 2; ++i) {
- targets = pMgr.getTargets();
- if (targets.length == 0) {
- break;
- }
- try {
- Thread.sleep(1000);
- } catch (InterruptedException e) {
- //
- }
- }
- // send our goodbyes.
- EventManager eMgr = (EventManager)getEventManager();
- eMgr.fireEvents(new ICDIEvent[] { new DestroyedEvent(this) });
- eMgr.removeEventListeners();
- }
-
- /**
- * @deprecated
- * @see org.eclipse.cdt.debug.core.cdi.ICDISession#getSessionProcess()
- */
- public Process getSessionProcess() throws CDIException {
- ICDITarget[] targets = getTargets();
- if (targets != null && targets.length > 0) {
- return getSessionProcess(targets[0]);
- }
- return null;
- }
-
- public Process getSessionProcess(ICDITarget target) {
- MISession miSession = ((Target)target).getMISession();
- return miSession.getSessionProcess();
- }
-
-}
diff --git a/debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/SessionConfiguration.java b/debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/SessionConfiguration.java
deleted file mode 100644
index c02108c7e50..00000000000
--- a/debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/SessionConfiguration.java
+++ /dev/null
@@ -1,39 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.cdt.debug.mi.core.cdi;
-
-import org.eclipse.cdt.debug.core.cdi.ICDISessionConfiguration;
-
-/**
- * @author User
- *
- * TODO To change the template for this generated type comment go to
- * Window - Preferences - Java - Code Style - Code Templates
- */
-public class SessionConfiguration extends SessionObject implements
- ICDISessionConfiguration {
-
- /**
- * @param session
- */
- public SessionConfiguration(Session session) {
- super(session);
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.cdt.debug.core.cdi.ICDISessionConfiguration#terminateSessionOnExit()
- */
- public boolean terminateSessionOnExit() {
- return true;
- }
-
-}
diff --git a/debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/SessionObject.java b/debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/SessionObject.java
deleted file mode 100644
index a2522a1f816..00000000000
--- a/debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/SessionObject.java
+++ /dev/null
@@ -1,33 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.mi.core.cdi;
-
-import org.eclipse.cdt.debug.core.cdi.ICDISession;
-import org.eclipse.cdt.debug.core.cdi.ICDISessionObject;
-
-/**
- */
-public class SessionObject implements ICDISessionObject {
-
- private Session fSession;
-
- public SessionObject (Session session) {
- fSession = session;
- }
-
- /**
- * @see org.eclipse.cdt.debug.core.cdi.ICDISessionObject#getSession()
- */
- public ICDISession getSession() {
- return fSession;
- }
-
-}
diff --git a/debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/SharedLibraryEvent.java b/debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/SharedLibraryEvent.java
deleted file mode 100644
index 97d8ebe4c7a..00000000000
--- a/debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/SharedLibraryEvent.java
+++ /dev/null
@@ -1,22 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2002, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.cdt.debug.mi.core.cdi;
-
-import org.eclipse.cdt.debug.core.cdi.ICDISharedLibraryEvent;
-
-public class SharedLibraryEvent extends SessionObject implements ICDISharedLibraryEvent {
-
- public SharedLibraryEvent(Session session) {
- super(session);
- }
-
-}
diff --git a/debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/SharedLibraryManager.java b/debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/SharedLibraryManager.java
deleted file mode 100644
index 1c03b21719a..00000000000
--- a/debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/SharedLibraryManager.java
+++ /dev/null
@@ -1,415 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.cdt.debug.mi.core.cdi;
-
-import java.io.File;
-import java.util.ArrayList;
-import java.util.Arrays;
-import java.util.Collections;
-import java.util.HashSet;
-import java.util.Hashtable;
-import java.util.List;
-import java.util.Map;
-import java.util.Set;
-import org.eclipse.cdt.debug.core.cdi.CDIException;
-import org.eclipse.cdt.debug.core.cdi.model.ICDIBreakpoint;
-import org.eclipse.cdt.debug.core.cdi.model.ICDISharedLibrary;
-import org.eclipse.cdt.debug.core.cdi.model.ICDITargetConfiguration;
-import org.eclipse.cdt.debug.mi.core.IMIConstants;
-import org.eclipse.cdt.debug.mi.core.MIException;
-import org.eclipse.cdt.debug.mi.core.MIFormat;
-import org.eclipse.cdt.debug.mi.core.MIPlugin;
-import org.eclipse.cdt.debug.mi.core.MISession;
-import org.eclipse.cdt.debug.mi.core.RxThread;
-import org.eclipse.cdt.debug.mi.core.cdi.model.Breakpoint;
-import org.eclipse.cdt.debug.mi.core.cdi.model.LocationBreakpoint;
-import org.eclipse.cdt.debug.mi.core.cdi.model.SharedLibrary;
-import org.eclipse.cdt.debug.mi.core.cdi.model.Target;
-import org.eclipse.cdt.debug.mi.core.cdi.model.Watchpoint;
-import org.eclipse.cdt.debug.mi.core.command.CLIInfoSharedLibrary;
-import org.eclipse.cdt.debug.mi.core.command.CLISharedLibrary;
-import org.eclipse.cdt.debug.mi.core.command.CommandFactory;
-import org.eclipse.cdt.debug.mi.core.command.MIGDBSetAutoSolib;
-import org.eclipse.cdt.debug.mi.core.command.MIGDBSetSolibSearchPath;
-import org.eclipse.cdt.debug.mi.core.command.MIGDBSetStopOnSolibEvents;
-import org.eclipse.cdt.debug.mi.core.command.MIGDBShow;
-import org.eclipse.cdt.debug.mi.core.command.MIGDBShowSolibSearchPath;
-import org.eclipse.cdt.debug.mi.core.event.MIBreakpointCreatedEvent;
-import org.eclipse.cdt.debug.mi.core.event.MIEvent;
-import org.eclipse.cdt.debug.mi.core.event.MISharedLibChangedEvent;
-import org.eclipse.cdt.debug.mi.core.event.MISharedLibCreatedEvent;
-import org.eclipse.cdt.debug.mi.core.event.MISharedLibUnloadedEvent;
-import org.eclipse.cdt.debug.mi.core.output.CLIInfoSharedLibraryInfo;
-import org.eclipse.cdt.debug.mi.core.output.MIBreakpoint;
-import org.eclipse.cdt.debug.mi.core.output.MIGDBShowInfo;
-import org.eclipse.cdt.debug.mi.core.output.MIGDBShowSolibSearchPathInfo;
-import org.eclipse.cdt.debug.mi.core.output.MIInfo;
-import org.eclipse.cdt.debug.mi.core.output.MIShared;
-import org.eclipse.core.runtime.IPath;
-import org.eclipse.core.runtime.Path;
-
-/**
- * Manager of the CDI shared libraries.
- */
-public class SharedLibraryManager extends Manager {
-
- ICDISharedLibrary[] EMPTY_SHAREDLIB = {};
- Map sharedMap;
- Set autoLoadSet;
- boolean isDeferred = true;
-
- public SharedLibraryManager (Session session) {
- super(session, true);
- sharedMap = new Hashtable();
- autoLoadSet = new HashSet();
- setAutoUpdate( MIPlugin.getDefault().getPluginPreferences().getBoolean( IMIConstants.PREF_SHARED_LIBRARIES_AUTO_REFRESH ) );
- }
-
- synchronized List getSharedList(Target target) {
- List sharedList = (List)sharedMap.get(target);
- if (sharedList == null) {
- sharedList = Collections.synchronizedList(new ArrayList());
- sharedMap.put(target, sharedList);
- }
- return sharedList;
- }
-
- MIShared[] getMIShareds(MISession miSession) throws CDIException {
- MIShared[] miLibs = new MIShared[0];
- CommandFactory factory = miSession.getCommandFactory();
- CLIInfoSharedLibrary infoShared = factory.createCLIInfoSharedLibrary();
- try {
- RxThread rxThread = miSession.getRxThread();
- rxThread.setEnableConsole(false);
- miSession.postCommand(infoShared);
- CLIInfoSharedLibraryInfo info = infoShared.getMIInfoSharedLibraryInfo();
- if (info == null) {
- throw new CDIException(CdiResources.getString("cdi.Common.No_answer")); //$NON-NLS-1$
- }
- miLibs = info.getMIShared();
- } catch (MIException e) {
- throw new MI2CDIException(e);
- } finally {
- RxThread rxThread = miSession.getRxThread();
- rxThread.setEnableConsole(true);
- }
- return miLibs;
- }
-
- public void update(Target target) throws CDIException {
- MISession miSession = target.getMISession();
- Session session = (Session)target.getSession();
- List eventList = updateState(target);
- // A new Libraries loaded or something change, try to set the breakpoints.
- if (eventList.size() > 0) {
- BreakpointManager bpMgr = session.getBreakpointManager();
- ICDIBreakpoint bpoints[] = null;
- try {
- bpoints = bpMgr.getDeferredBreakpoints(target);
- } catch (CDIException e) {
- bpoints = new ICDIBreakpoint[0];
- }
- for (int i = 0; i < bpoints.length; i++) {
- if (bpoints[i] instanceof Breakpoint) {
- Breakpoint bkpt = (Breakpoint)bpoints[i];
- try {
- boolean enable = bkpt.isEnabled();
- if (bkpt instanceof LocationBreakpoint) {
- bpMgr.setLocationBreakpoint((LocationBreakpoint)bkpt);
- } else if (bkpt instanceof Watchpoint) {
- bpMgr.setWatchpoint((Watchpoint)bkpt);
- } else {
- throw new CDIException();
- }
- bpMgr.deleteFromDeferredList(bkpt);
- bpMgr.addToBreakpointList(bkpt);
- // If the breakpoint was disable in the IDE
- // install it but keep it disable
- if (!enable) {
- bpMgr.disableBreakpoint(bkpt);
- }
- MIBreakpoint[] miBreakpoints = bkpt.getMIBreakpoints();
- if (miBreakpoints != null && miBreakpoints.length > 0) {
- eventList.add(new MIBreakpointCreatedEvent(miSession, miBreakpoints[0].getNumber()));
- }
- } catch (CDIException e) {
- // ignore
- }
- }
- }
- }
- MIEvent[] events = (MIEvent[])eventList.toArray(new MIEvent[0]);
- miSession.fireEvents(events);
- }
-
- private List updateState(Target target) throws CDIException {
- MISession miSession = target.getMISession();
- ICDITargetConfiguration conf = target.getConfiguration();
- if (!conf.supportsSharedLibrary()) {
- return Collections.EMPTY_LIST; // Bail out early;
- }
-
- MIShared[] miLibs = getMIShareds(miSession);
- ArrayList newLibList = new ArrayList();
- ArrayList eventList = new ArrayList(miLibs.length);
- for (int i = 0; i < miLibs.length; i++) {
- SharedLibrary sharedlib = getSharedLibrary(target, miLibs[i].getName());
- if (sharedlib != null) {
- if (hasSharedLibChanged(sharedlib, miLibs[i])) {
- // Fire ChangedEvent
- sharedlib.setMIShared(miLibs[i]);
- eventList.add(new MISharedLibChangedEvent(miSession, miLibs[i].getName()));
- }
- } else {
- // add the new breakpoint and fire CreatedEvent
- List sharedList = getSharedList(target);
- SharedLibrary lib = new SharedLibrary(target, miLibs[i]);
- sharedList.add(lib);
- newLibList.add(lib);
- eventList.add(new MISharedLibCreatedEvent(miSession, miLibs[i].getName()));
- }
- }
- // Check if any libraries was unloaded.
- List sharedList = (List)sharedMap.get(target);
- if (sharedList != null) {
- SharedLibrary[] oldlibs = (SharedLibrary[]) sharedList.toArray(new SharedLibrary[sharedList.size()]);
- for (int i = 0; i < oldlibs.length; i++) {
- boolean found = false;
- for (int j = 0; j < miLibs.length; j++) {
- if (miLibs[j].getName().equals(oldlibs[i].getFileName())) {
- found = true;
- break;
- }
- }
- if (!found) {
- // Fire destroyed Events.
- eventList.add(new MISharedLibUnloadedEvent(miSession, oldlibs[i].getFileName()));
- }
- }
- }
- eventList.addAll(autoLoadSymbols(target, (SharedLibrary[])newLibList.toArray(new SharedLibrary[newLibList.size()])));
- return eventList;
- }
-
- public boolean hasSharedLibChanged(SharedLibrary lib, MIShared miLib) {
- return !miLib.getName().equals(lib.getFileName()) ||
- !MIFormat.getBigInteger(miLib.getFrom()).equals(lib.getStartAddress()) ||
- !MIFormat.getBigInteger(miLib.getTo()).equals(lib.getEndAddress()) ||
- miLib.isRead() != lib.areSymbolsLoaded();
- }
-
- /*
- * this for the events
- */
- public void deleteSharedLibrary(MISession miSession, SharedLibrary lib) {
- Target target = ((Session)getSession()).getTarget(miSession);
- List sharedList = (List)sharedMap.get(target);
- if (sharedList != null) {
- sharedList.remove(lib);
- }
- }
-
- public SharedLibrary getSharedLibrary(MISession miSession, String name) {
- Target target = ((Session)getSession()).getTarget(miSession);
- return getSharedLibrary(target, name);
- }
- public SharedLibrary getSharedLibrary(Target target, String name) {
- List sharedList = (List)sharedMap.get(target);
- if (sharedList != null) {
- SharedLibrary[] libs = (SharedLibrary[]) sharedList.toArray(new SharedLibrary[sharedList.size()]);
- for (int i = 0; i < libs.length; i++) {
- if (name.equals(libs[i].getFileName())) {
- return libs[i];
- }
- }
- }
- return null;
- }
-
- public void setDeferredBreakpoint(Target target, boolean set) {
- target.deferBreakpoints( set );
- }
-
- public boolean isDeferredBreakpoint(Target target) {
- return target.areBreakpointsDeferred();
- }
-
- public void setAutoLoadSymbols(Target target, boolean set) throws CDIException {
- MISession mi = target.getMISession();
- CommandFactory factory = mi.getCommandFactory();
- MIGDBSetAutoSolib solib = factory.createMIGDBSetAutoSolib(set);
- try {
- mi.postCommand(solib);
- solib.getMIInfo();
- } catch (MIException e) {
- throw new MI2CDIException(e);
- }
- }
-
- public boolean isAutoLoadSymbols(Target target) throws CDIException {
- MISession mi = target.getMISession();
- CommandFactory factory = mi.getCommandFactory();
- MIGDBShow show = factory.createMIGDBShow(new String[]{"auto-solib-add"}); //$NON-NLS-1$
- try {
- mi.postCommand(show);
- MIGDBShowInfo info = show.getMIGDBShowInfo();
- String value = info.getValue();
- if (value != null) {
- return value.equalsIgnoreCase("on"); //$NON-NLS-1$
- }
- } catch (MIException e) {
- throw new MI2CDIException(e);
- }
- return false;
- }
-
- public void setStopOnSolibEvents(Target target, boolean set) throws CDIException {
- MISession mi = target.getMISession();
- CommandFactory factory = mi.getCommandFactory();
- MIGDBSetStopOnSolibEvents stop = factory.createMIGDBSetStopOnSolibEvents(set);
- try {
- mi.postCommand(stop);
- stop.getMIInfo();
- } catch (MIException e) {
- throw new MI2CDIException(e);
- }
- }
-
- public boolean isStopOnSolibEvents(Target target) throws CDIException {
- MISession mi = target.getMISession();
- CommandFactory factory = mi.getCommandFactory();
- MIGDBShow show = factory.createMIGDBShow(new String[]{"stop-on-solib-events"}); //$NON-NLS-1$
- try {
- mi.postCommand(show);
- MIGDBShowInfo info = show.getMIGDBShowInfo();
- String value = info.getValue();
- if (value != null) {
- return value.equalsIgnoreCase("1"); //$NON-NLS-1$
- }
- } catch (MIException e) {
- throw new MI2CDIException(e);
- }
- return false;
- }
-
- public void setSharedLibraryPaths(Target target, String[] libPaths) throws CDIException {
- MISession mi = target.getMISession();
- CommandFactory factory = mi.getCommandFactory();
- MIGDBSetSolibSearchPath solib = factory.createMIGDBSetSolibSearchPath(libPaths);
- try {
- mi.postCommand(solib);
- solib.getMIInfo();
- } catch (MIException e) {
- throw new MI2CDIException(e);
- }
- }
-
- public String[] getSharedLibraryPaths(Target target) throws CDIException {
- MISession mi = target.getMISession();
- CommandFactory factory = mi.getCommandFactory();
- MIGDBShowSolibSearchPath dir = factory.createMIGDBShowSolibSearchPath();
- try {
- mi.postCommand(dir);
- MIGDBShowSolibSearchPathInfo info = dir.getMIGDBShowSolibSearchPathInfo();
- return info.getDirectories();
- } catch (MIException e) {
- throw new MI2CDIException(e);
- }
- }
-
- public ICDISharedLibrary[] getSharedLibraries(Target target) throws CDIException {
- List sharedList = (List)sharedMap.get(target);
- if (sharedList != null) {
- return (ICDISharedLibrary[]) sharedList.toArray(new ICDISharedLibrary[sharedList.size()]);
- }
- return EMPTY_SHAREDLIB;
- }
-
- public void loadSymbols(Target target) throws CDIException {
- MISession mi = target.getMISession();
- CommandFactory factory = mi.getCommandFactory();
- CLISharedLibrary sharedlibrary = factory.createCLISharedLibrary();
- try {
- mi.postCommand(sharedlibrary);
- MIInfo info = sharedlibrary.getMIInfo();
- if (info == null) {
- throw new CDIException(CdiResources.getString("cdi.Common.No_answer")); //$NON-NLS-1$
- }
- } catch (MIException e) {
- throw new MI2CDIException(e);
- }
- update(target);
- }
-
- public void loadSymbols(Target target, ICDISharedLibrary[] libs) throws CDIException {
- MISession miSession = target.getMISession();
- CommandFactory factory = miSession.getCommandFactory();
- for (int i = 0; i < libs.length; i++) {
- if (libs[i].areSymbolsLoaded()) {
- continue;
- }
- CLISharedLibrary sharedlibrary = factory.createCLISharedLibrary(libs[i].getFileName());
- try {
- miSession.postCommand(sharedlibrary);
- MIInfo info = sharedlibrary.getMIInfo();
- if (info == null) {
- throw new CDIException(CdiResources.getString("cdi.Common.No_answer")); //$NON-NLS-1$
- }
- } catch (MIException e) {
- throw new MI2CDIException(e);
- }
- // Do not do this, error are not propagate by the CLI "shared command
- // So we have to manually recheck all the shared with "info shared"
- //((SharedLibrary)libs[i]).getMIShared().setSymbolsRead(true);
- //mi.fireEvent(new MISharedLibChangedEvent(libs[i].getFileName()));
- update(target);
- }
- }
-
- public boolean supportsAutoLoadSymbols() {
- return true;
- }
-
- public boolean supportsStopOnSolibEvents() {
- return true;
- }
-
- public void autoLoadSymbols( File[] libs ) {
- autoLoadSet.addAll( Arrays.asList( libs ) );
- }
-
- private List autoLoadSymbols(Target target, SharedLibrary[] libs) throws CDIException {
- ArrayList eventList = new ArrayList(libs.length);
- MISession miSession = target.getMISession();
- CommandFactory factory = miSession.getCommandFactory();
- for (int i = 0; i < libs.length; i++) {
- IPath path = new Path( libs[i].getFileName() );
- File file = new File( path.lastSegment() );
- if (libs[i].areSymbolsLoaded() || !autoLoadSet.contains(file)) {
- continue;
- }
- CLISharedLibrary sharedlibrary = factory.createCLISharedLibrary(libs[i].getFileName());
- try {
- miSession.postCommand(sharedlibrary);
- MIInfo info = sharedlibrary.getMIInfo();
- if (info == null) {
- throw new CDIException(CdiResources.getString("cdi.Common.No_answer")); //$NON-NLS-1$
- }
- } catch (MIException e) {
- throw new MI2CDIException(e);
- }
- libs[i].getMIShared().setSymbolsRead( true );
- eventList.add(new MISharedLibChangedEvent(miSession, libs[i].getFileName()));
- }
- return eventList;
- }
-}
diff --git a/debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/SignalExitInfo.java b/debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/SignalExitInfo.java
deleted file mode 100644
index f777a296877..00000000000
--- a/debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/SignalExitInfo.java
+++ /dev/null
@@ -1,41 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.mi.core.cdi;
-
-import org.eclipse.cdt.debug.core.cdi.ICDISignalExitInfo;
-import org.eclipse.cdt.debug.mi.core.event.MIInferiorSignalExitEvent;
-
-/**.
- */
-public class SignalExitInfo extends SessionObject implements ICDISignalExitInfo {
-
- MIInferiorSignalExitEvent event;
-
- public SignalExitInfo(Session session, MIInferiorSignalExitEvent e) {
- super(session);
- event = e;
- }
-
- /**
- * @see org.eclipse.cdt.debug.core.cdi.ICDISignalExitInfo#getName()
- */
- public String getName() {
- return event.getName();
- }
-
- /**
- * @see org.eclipse.cdt.debug.core.cdi.ICDISignalExitInfo#getDescription()
- */
- public String getDescription() {
- return event.getMeaning();
- }
-
-}
diff --git a/debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/SignalManager.java b/debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/SignalManager.java
deleted file mode 100644
index 78860113fdd..00000000000
--- a/debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/SignalManager.java
+++ /dev/null
@@ -1,216 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.mi.core.cdi;
-
-import java.util.ArrayList;
-import java.util.Collections;
-import java.util.Hashtable;
-import java.util.List;
-import java.util.Map;
-
-import org.eclipse.cdt.debug.core.cdi.CDIException;
-import org.eclipse.cdt.debug.core.cdi.model.ICDISignal;
-import org.eclipse.cdt.debug.mi.core.MIException;
-import org.eclipse.cdt.debug.mi.core.MISession;
-import org.eclipse.cdt.debug.mi.core.RxThread;
-import org.eclipse.cdt.debug.mi.core.cdi.model.Signal;
-import org.eclipse.cdt.debug.mi.core.cdi.model.Target;
-import org.eclipse.cdt.debug.mi.core.command.CommandFactory;
-import org.eclipse.cdt.debug.mi.core.command.CLIHandle;
-import org.eclipse.cdt.debug.mi.core.command.CLIInfoSignals;
-import org.eclipse.cdt.debug.mi.core.event.MIEvent;
-import org.eclipse.cdt.debug.mi.core.event.MISignalChangedEvent;
-import org.eclipse.cdt.debug.mi.core.output.CLIInfoSignalsInfo;
-import org.eclipse.cdt.debug.mi.core.output.MISigHandle;
-
-/**
- */
-public class SignalManager extends Manager {
-
- ICDISignal[] EMPTY_SIGNALS = {};
- MISigHandle[] noSigs = new MISigHandle[0];
- Map signalsMap;
-
- public SignalManager(Session session) {
- super(session, false);
- signalsMap = new Hashtable();
- }
-
- synchronized List getSignalsList(Target target) {
- List signalsList = (List)signalsMap.get(target);
- if (signalsList == null) {
- signalsList = Collections.synchronizedList(new ArrayList());
- signalsMap.put(target, signalsList);
- }
- return signalsList;
- }
-
- MISigHandle[] getMISignals(MISession miSession) throws CDIException {
- MISigHandle[] miSigs;
- CommandFactory factory = miSession.getCommandFactory();
- CLIInfoSignals sigs = factory.createCLIInfoSignals();
- try {
- RxThread rxThread = miSession.getRxThread();
- rxThread.setEnableConsole(false);
- miSession.postCommand(sigs);
- CLIInfoSignalsInfo info = sigs.getMIInfoSignalsInfo();
- if (info == null) {
- throw new CDIException(CdiResources.getString("cdi.Common.No_answer")); //$NON-NLS-1$
- }
- miSigs = info.getMISignals();
- } catch (MIException e) {
- throw new MI2CDIException(e);
- } finally {
- RxThread rxThread = miSession.getRxThread();
- rxThread.setEnableConsole(true);
- }
- return miSigs;
- }
-
- MISigHandle getMISignal(MISession miSession, String name) throws CDIException {
- MISigHandle sig = null;
- CommandFactory factory = miSession.getCommandFactory();
- CLIInfoSignals sigs = factory.createCLIInfoSignals(name);
- try {
- RxThread rxThread = miSession.getRxThread();
- rxThread.setEnableConsole(false);
- miSession.postCommand(sigs);
- CLIInfoSignalsInfo info = sigs.getMIInfoSignalsInfo();
- if (info == null) {
- throw new CDIException(CdiResources.getString("cdi.Common.No_answer")); //$NON-NLS-1$
- }
- MISigHandle[] miSigs = info.getMISignals();
- if (miSigs.length > 0) {
- sig = miSigs[0];
- }
- } catch (MIException e) {
- throw new MI2CDIException(e);
- } finally {
- RxThread rxThread = miSession.getRxThread();
- rxThread.setEnableConsole(true);
- }
- return sig;
- }
-
- /**
- * Method hasSignalChanged.
- * @param sig
- * @param mISignal
- * @return boolean
- */
- private boolean hasSignalChanged(ICDISignal sig, MISigHandle miSignal) {
- return !sig.getName().equals(miSignal.getName()) ||
- sig.isStopSet() != miSignal.isStop() ||
- sig.isIgnore() != !miSignal.isPass();
- }
-
- protected ICDISignal findSignal(Target target, String name) {
- ICDISignal sig = null;
- List signalsList = (List) signalsMap.get(target);
- if (signalsList != null) {
- ICDISignal[] sigs = (ICDISignal[])signalsList.toArray(new ICDISignal[0]);
- for (int i = 0; i < sigs.length; i++) {
- if (sigs[i].getName().equals(name)) {
- sig = sigs[i];
- break;
- }
- }
- }
- return sig;
- }
-
- public ICDISignal getSignal(MISession miSession, String name) {
- Session session = (Session)getSession();
- Target target = session.getTarget(miSession);
- return getSignal(target, name);
- }
- public ICDISignal getSignal(Target target, String name) {
- ICDISignal sig = findSignal(target, name);
- if (sig == null) {
- MISigHandle miSig = null;
- try {
- miSig = getMISignal(target.getMISession(), name);
- sig = new Signal(target, miSig);
- List signalsList = getSignalsList(target);
- signalsList.add(sig);
- } catch (CDIException e) {
- // The session maybe terminated because of the signal.
- miSig = new MISigHandle(name, false, false, false, name);
- sig = new Signal(target, miSig);
- }
- }
- return sig;
- }
-
- public void handle(Signal sig, boolean isIgnore, boolean isStop) throws CDIException {
- Target target = (Target)sig.getTarget();
- MISession miSession = target.getMISession();
- CommandFactory factory = miSession.getCommandFactory();
- StringBuffer buffer = new StringBuffer(sig.getName());
- buffer.append(" "); //$NON-NLS-1$
- if (isIgnore) {
- buffer.append("ignore"); //$NON-NLS-1$
- } else {
- buffer.append("noignore"); //$NON-NLS-1$
- }
- buffer.append(" "); //$NON-NLS-1$
- if (isStop) {
- buffer.append("stop"); //$NON-NLS-1$
- } else {
- buffer.append("nostop"); //$NON-NLS-1$
- }
- CLIHandle handle = factory.createCLIHandle(buffer.toString());
- try {
- miSession.postCommand(handle);
- handle.getMIInfo();
- } catch (MIException e) {
- throw new MI2CDIException(e);
- }
- sig.getMISignal().handle(isIgnore, isStop);
- miSession.fireEvent(new MISignalChangedEvent(miSession, sig.getName()));
- }
-
- public ICDISignal[] getSignals(Target target) throws CDIException {
- List signalsList = (List)signalsMap.get(target);
- if (signalsList == null) {
- update(target);
- }
- signalsList = (List)signalsMap.get(target);
- if (signalsList != null) {
- return (ICDISignal[])signalsList.toArray(new ICDISignal[0]);
- }
- return EMPTY_SIGNALS;
- }
-
- public void update(Target target) throws CDIException {
- MISession miSession = target.getMISession();
- MISigHandle[] miSigs = getMISignals(miSession);
- List eventList = new ArrayList(miSigs.length);
- List signalsList = getSignalsList(target);
- for (int i = 0; i < miSigs.length; i++) {
- ICDISignal sig = findSignal(target, miSigs[i].getName());
- if (sig != null) {
- if (hasSignalChanged(sig, miSigs[i])) {
- // Fire ChangedEvent
- ((Signal)sig).setMISignal(miSigs[i]);
- eventList.add(new MISignalChangedEvent(miSession, miSigs[i].getName()));
- }
- } else {
- // add the new breakpoint and fire CreatedEvent
- signalsList.add(new Signal(target, miSigs[i]));
- //eventList.add(new MISignCreatedEvent(miSession, miSigs[i].getName()));
- }
- }
- MIEvent[] events = (MIEvent[])eventList.toArray(new MIEvent[0]);
- miSession.fireEvents(events);
- }
-
-}
diff --git a/debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/SignalReceived.java b/debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/SignalReceived.java
deleted file mode 100644
index 5d83c8d4753..00000000000
--- a/debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/SignalReceived.java
+++ /dev/null
@@ -1,36 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.cdt.debug.mi.core.cdi;
-
-import org.eclipse.cdt.debug.core.cdi.ICDISignalReceived;
-import org.eclipse.cdt.debug.core.cdi.model.ICDISignal;
-import org.eclipse.cdt.debug.mi.core.event.MISignalEvent;
-
-/**
- */
-public class SignalReceived extends SessionObject implements ICDISignalReceived {
-
- ICDISignal signal;
- public SignalReceived(Session session, MISignalEvent event) {
- super(session);
- SignalManager mgr = session.getSignalManager();
- signal = mgr.getSignal(event.getMISession(), event.getName());
- }
-
- /**
- * @see org.eclipse.cdt.debug.core.cdi.ICDISignalReceived#getSignal()
- */
- public ICDISignal getSignal() {
- return signal;
- }
-
-}
diff --git a/debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/SourceManager.java b/debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/SourceManager.java
deleted file mode 100644
index a520a548925..00000000000
--- a/debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/SourceManager.java
+++ /dev/null
@@ -1,498 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2005 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.mi.core.cdi;
-
-import java.math.BigInteger;
-import java.util.StringTokenizer;
-
-import org.eclipse.cdt.debug.core.cdi.CDIException;
-import org.eclipse.cdt.debug.core.cdi.model.ICDIInstruction;
-import org.eclipse.cdt.debug.core.cdi.model.ICDIMixedInstruction;
-import org.eclipse.cdt.debug.mi.core.GDBTypeParser;
-import org.eclipse.cdt.debug.mi.core.MIException;
-import org.eclipse.cdt.debug.mi.core.MISession;
-import org.eclipse.cdt.debug.mi.core.RxThread;
-import org.eclipse.cdt.debug.mi.core.GDBTypeParser.GDBDerivedType;
-import org.eclipse.cdt.debug.mi.core.GDBTypeParser.GDBType;
-import org.eclipse.cdt.debug.mi.core.cdi.model.Instruction;
-import org.eclipse.cdt.debug.mi.core.cdi.model.MixedInstruction;
-import org.eclipse.cdt.debug.mi.core.cdi.model.StackFrame;
-import org.eclipse.cdt.debug.mi.core.cdi.model.Target;
-import org.eclipse.cdt.debug.mi.core.cdi.model.Thread;
-import org.eclipse.cdt.debug.mi.core.cdi.model.type.ArrayType;
-import org.eclipse.cdt.debug.mi.core.cdi.model.type.BoolType;
-import org.eclipse.cdt.debug.mi.core.cdi.model.type.CharType;
-import org.eclipse.cdt.debug.mi.core.cdi.model.type.DerivedType;
-import org.eclipse.cdt.debug.mi.core.cdi.model.type.DoubleType;
-import org.eclipse.cdt.debug.mi.core.cdi.model.type.EnumType;
-import org.eclipse.cdt.debug.mi.core.cdi.model.type.FloatType;
-import org.eclipse.cdt.debug.mi.core.cdi.model.type.FunctionType;
-import org.eclipse.cdt.debug.mi.core.cdi.model.type.IntType;
-import org.eclipse.cdt.debug.mi.core.cdi.model.type.LongLongType;
-import org.eclipse.cdt.debug.mi.core.cdi.model.type.LongType;
-import org.eclipse.cdt.debug.mi.core.cdi.model.type.PointerType;
-import org.eclipse.cdt.debug.mi.core.cdi.model.type.ReferenceType;
-import org.eclipse.cdt.debug.mi.core.cdi.model.type.ShortType;
-import org.eclipse.cdt.debug.mi.core.cdi.model.type.StructType;
-import org.eclipse.cdt.debug.mi.core.cdi.model.type.Type;
-import org.eclipse.cdt.debug.mi.core.cdi.model.type.VoidType;
-import org.eclipse.cdt.debug.mi.core.cdi.model.type.WCharType;
-import org.eclipse.cdt.debug.mi.core.command.CommandFactory;
-import org.eclipse.cdt.debug.mi.core.command.MIDataDisassemble;
-import org.eclipse.cdt.debug.mi.core.command.MIEnvironmentDirectory;
-import org.eclipse.cdt.debug.mi.core.command.MIGDBShowDirectories;
-import org.eclipse.cdt.debug.mi.core.command.CLIPType;
-import org.eclipse.cdt.debug.mi.core.command.CLIWhatis;
-import org.eclipse.cdt.debug.mi.core.output.MIAsm;
-import org.eclipse.cdt.debug.mi.core.output.MIDataDisassembleInfo;
-import org.eclipse.cdt.debug.mi.core.output.MIGDBShowDirectoriesInfo;
-import org.eclipse.cdt.debug.mi.core.output.CLIPTypeInfo;
-import org.eclipse.cdt.debug.mi.core.output.MISrcAsm;
-import org.eclipse.cdt.debug.mi.core.output.CLIWhatisInfo;
-
-
-/**
- */
-public class SourceManager extends Manager {
-
- GDBTypeParser gdbTypeParser;
-
- public SourceManager(Session session) {
- super(session, false);
- gdbTypeParser = new GDBTypeParser();
- }
-
- public void setSourcePaths(Target target, String[] dirs) throws CDIException {
- MISession mi = target.getMISession();
- CommandFactory factory = mi.getCommandFactory();
- MIEnvironmentDirectory dir = factory.createMIEnvironmentDirectory(true, dirs);
- try {
- mi.postCommand(dir);
- dir.getMIInfo();
- } catch (MIException e) {
- throw new MI2CDIException(e);
- }
- }
-
- public String[] getSourcePaths(Target target) throws CDIException {
- MISession mi = target.getMISession();
- CommandFactory factory = mi.getCommandFactory();
- MIGDBShowDirectories dir = factory.createMIGDBShowDirectories();
- try {
- mi.postCommand(dir);
- MIGDBShowDirectoriesInfo info = dir.getMIGDBShowDirectoriesInfo();
- return info.getDirectories();
- } catch (MIException e) {
- throw new MI2CDIException(e);
- }
- }
-
- public ICDIInstruction[] getInstructions(Target target, String filename, int linenum) throws CDIException {
- return getInstructions(target, filename, linenum, -1);
- }
-
- public ICDIInstruction[] getInstructions(Target target, String filename, int linenum, int lines) throws CDIException {
- MISession mi = target.getMISession();
- CommandFactory factory = mi.getCommandFactory();
- MIDataDisassemble dis = factory.createMIDataDisassemble(filename, linenum, lines, false);
- try {
- mi.postCommand(dis);
- MIDataDisassembleInfo info = dis.getMIDataDisassembleInfo();
- MIAsm[] asm = info.getMIAsms();
- Instruction[] instructions = new Instruction[asm.length];
- for (int i = 0; i < instructions.length; i++) {
- instructions[i] = new Instruction(target, asm[i]);
- }
- return instructions;
- } catch (MIException e) {
- throw new MI2CDIException(e);
- }
- }
-
- public ICDIInstruction[] getInstructions(Target target, BigInteger start, BigInteger end) throws CDIException {
- MISession mi = target.getMISession();
- CommandFactory factory = mi.getCommandFactory();
- String hex = "0x"; //$NON-NLS-1$
- String sa = hex + start.toString(16);
- String ea = hex + end.toString(16);
- MIDataDisassemble dis = factory.createMIDataDisassemble(sa, ea, false);
- try {
- mi.postCommand(dis);
- MIDataDisassembleInfo info = dis.getMIDataDisassembleInfo();
- MIAsm[] asm = info.getMIAsms();
- Instruction[] instructions = new Instruction[asm.length];
- for (int i = 0; i < instructions.length; i++) {
- instructions[i] = new Instruction(target, asm[i]);
- }
- return instructions;
- } catch (MIException e) {
- throw new MI2CDIException(e);
- }
- }
-
- public ICDIMixedInstruction[] getMixedInstructions(Target target, String filename, int linenum) throws CDIException {
- return getMixedInstructions(target, filename, linenum, -1);
- }
-
- public ICDIMixedInstruction[] getMixedInstructions(Target target, String filename, int linenum, int lines) throws CDIException {
- MISession mi = target.getMISession();
- CommandFactory factory = mi.getCommandFactory();
- MIDataDisassemble dis = factory.createMIDataDisassemble(filename, linenum, lines, true);
- try {
- mi.postCommand(dis);
- MIDataDisassembleInfo info = dis.getMIDataDisassembleInfo();
- MISrcAsm[] srcAsm = info.getMISrcAsms();
- ICDIMixedInstruction[] mixed = new ICDIMixedInstruction[srcAsm.length];
- for (int i = 0; i < mixed.length; i++) {
- mixed[i] = new MixedInstruction(target, srcAsm[i]);
- }
- return mixed;
- } catch (MIException e) {
- throw new MI2CDIException(e);
- }
- }
-
- public ICDIMixedInstruction[] getMixedInstructions(Target target, BigInteger start, BigInteger end) throws CDIException {
- MISession mi = target.getMISession();
- CommandFactory factory = mi.getCommandFactory();
- String hex = "0x"; //$NON-NLS-1$
- String sa = hex + start.toString(16);
- String ea = hex + end.toString(16);
- MIDataDisassemble dis = factory.createMIDataDisassemble(sa, ea, true);
- try {
- mi.postCommand(dis);
- MIDataDisassembleInfo info = dis.getMIDataDisassembleInfo();
- MISrcAsm[] srcAsm = info.getMISrcAsms();
- ICDIMixedInstruction[] mixed = new ICDIMixedInstruction[srcAsm.length];
- for (int i = 0; i < mixed.length; i++) {
- mixed[i] = new MixedInstruction(target, srcAsm[i]);
- }
- return mixed;
- } catch (MIException e) {
- throw new MI2CDIException(e);
- }
- }
-
- public void update(Target target) throws CDIException {
- }
-
- public Type getType(Target target, String name) throws CDIException {
- if (name == null) {
- name = new String();
- }
- String typename = name.trim();
-
- // Parse the string.
- GDBType gdbType = gdbTypeParser.parse(typename);
- Type headType = null;
- Type type = null;
-
- // Convert the GDBType to an ICDIType.
- // So we go through the gdbType tree and reconstruct an ICDIType tree
- for (Type aType = null; gdbType != null; type = aType) {
- if (gdbType instanceof GDBDerivedType) {
- switch(gdbType.getType()) {
- case GDBType.ARRAY:
- int d = ((GDBDerivedType)gdbType).getDimension();
- aType = new ArrayType(target, gdbType.toString(), d);
- break;
- case GDBType.FUNCTION:
- aType = new FunctionType(target, gdbType.toString());
- break;
- case GDBType.POINTER:
- aType = new PointerType(target, gdbType.toString());
- break;
- case GDBType.REFERENCE:
- aType = new ReferenceType(target, gdbType.toString());
- break;
- }
- gdbType = ((GDBDerivedType)gdbType).getChild();
- } else {
- aType = toCDIType(target, gdbType.toString());
- gdbType = null;
- }
- if (type instanceof DerivedType) {
- ((DerivedType)type).setComponentType(aType);
- }
- // Save the head to returning it.
- if (headType == null) {
- headType = aType;
- }
- }
-
- if (headType != null) {
- return headType;
- }
- throw new CDIException(CdiResources.getString("cdi.SourceManager.Unknown_type")); //$NON-NLS-1$
- }
-
- Type toCDIType(Target target, String name) throws CDIException {
- // Check the derived types and agregate types
- if (name == null) {
- name = new String();
- }
- String typename = name.trim();
-
- // Check the primitives.
- if (typename.equals("char")) { //$NON-NLS-1$
- return new CharType(target, typename);
- } else if (typename.equals("wchar_t")) { //$NON-NLS-1$
- return new WCharType(target, typename);
- } else if (typename.equals("short")) { //$NON-NLS-1$
- return new ShortType(target, typename);
- } else if (typename.equals("int")) { //$NON-NLS-1$
- return new IntType(target, typename);
- } else if (typename.equals("long")) { //$NON-NLS-1$
- return new LongType(target, typename);
- } else if (typename.equals("unsigned")) { //$NON-NLS-1$
- return new IntType(target, typename, true);
- } else if (typename.equals("signed")) { //$NON-NLS-1$
- return new IntType(target, typename);
- } else if (typename.equals("bool")) { //$NON-NLS-1$
- return new BoolType(target, typename);
- } else if (typename.equals("_Bool")) { //$NON-NLS-1$
- return new BoolType(target, typename);
- } else if (typename.equals("float")) { //$NON-NLS-1$
- return new FloatType(target, typename);
- } else if (typename.equals("double")) { //$NON-NLS-1$
- return new DoubleType(target, typename);
- } else if (typename.equals("void")) { //$NON-NLS-1$
- return new VoidType(target, typename);
- } else if (typename.equals("enum")) { //$NON-NLS-1$
- return new EnumType(target, typename);
- } else if (typename.equals("union")) { //$NON-NLS-1$
- return new StructType(target, typename);
- } else if (typename.equals("struct")) { //$NON-NLS-1$
- return new StructType(target, typename);
- } else if (typename.equals("class")) { //$NON-NLS-1$
- return new StructType(target, typename);
- }
-
- // GDB has some special types for int
- if (typename.equals("int8_t")) { //$NON-NLS-1$
- return new CharType(target, typename);
- } else if (typename.equals("int16_t")) { //$NON-NLS-1$
- return new ShortType(target, typename);
- } else if (typename.equals("int32_t")) { //$NON-NLS-1$
- return new LongType(target, typename);
- } else if (typename.equals("int64_t")) { //$NON-NLS-1$
- return new LongLongType(target, typename);
- } else if (typename.equals("int128_t")) { //$NON-NLS-1$
- return new IntType(target, typename); // ????
- }
-
- if (typename.equals("int8_t")) { //$NON-NLS-1$
- return new CharType(target, typename);
- } else if (typename.equals("uint8_t")) { //$NON-NLS-1$
- return new CharType(target, typename, true);
- } else if (typename.equals("int16_t")) { //$NON-NLS-1$
- return new ShortType(target, typename);
- } else if (typename.equals("uint16_t")) { //$NON-NLS-1$
- return new ShortType(target, typename, true);
- } else if (typename.equals("int32_t")) { //$NON-NLS-1$
- return new LongType(target, typename);
- } else if (typename.equals("uint32_t")) { //$NON-NLS-1$
- return new LongType(target, typename, true);
- } else if (typename.equals("int64_t")) { //$NON-NLS-1$
- return new LongLongType(target, typename);
- } else if (typename.equals("uint64_t")) { //$NON-NLS-1$
- return new LongLongType(target, typename, true);
- } else if (typename.equals("int128_t")) { //$NON-NLS-1$
- return new IntType(target, typename); // ????
- } else if (typename.equals("uint128_t")) { //$NON-NLS-1$
- return new IntType(target, typename, true); // ????
- }
-
- StringTokenizer st = new StringTokenizer(typename);
- int count = st.countTokens();
-
- if (count == 2) {
- String first = st.nextToken();
- String second = st.nextToken();
-
- // ISOC allows permutations:
- // "signed int" and "int signed" are equivalent
- boolean isUnsigned = (first.equals("unsigned") || second.equals("unsigned")); //$NON-NLS-1$ //$NON-NLS-2$
- boolean isSigned = (first.equals("signed") || second.equals("signed")); //$NON-NLS-1$ //$NON-NLS-2$
- boolean isChar = (first.equals("char") || second.equals("char")); //$NON-NLS-1$ //$NON-NLS-2$
- boolean isInt = (first.equals("int") || second.equals("int")); //$NON-NLS-1$ //$NON-NLS-2$
- boolean isLong = (first.equals("long") || second.equals("long")); //$NON-NLS-1$ //$NON-NLS-2$
- boolean isShort = (first.equals("short") || second.equals("short")); //$NON-NLS-1$ //$NON-NLS-2$
- boolean isLongLong = (first.equals("long") && second.equals("long")); //$NON-NLS-1$ //$NON-NLS-2$
-
- boolean isDouble = (first.equals("double") || second.equals("double")); //$NON-NLS-1$ //$NON-NLS-2$
- boolean isFloat = (first.equals("float") || second.equals("float")); //$NON-NLS-1$ //$NON-NLS-2$
- boolean isComplex = (first.equals("complex") || second.equals("complex") || //$NON-NLS-1$ //$NON-NLS-2$
- first.equals("_Complex") || second.equals("_Complex")); //$NON-NLS-1$ //$NON-NLS-2$
- boolean isImaginery = (first.equals("_Imaginary") || second.equals("_Imaginary")); //$NON-NLS-1$ //$NON-NLS-2$
-
- boolean isStruct = first.equals("struct"); //$NON-NLS-1$
- boolean isClass = first.equals("class"); //$NON-NLS-1$
- boolean isUnion = first.equals("union"); //$NON-NLS-1$
- boolean isEnum = first.equals("enum"); //$NON-NLS-1$
-
- if (isChar && (isSigned || isUnsigned)) {
- return new CharType(target, typename, isUnsigned);
- } else if (isShort && (isInt || isSigned || isUnsigned)) {
- return new ShortType(target, typename, isUnsigned);
- } else if (isInt && (isSigned || isUnsigned)) {
- return new IntType(target, typename, isUnsigned);
- } else if (isLong && (isInt || isSigned || isUnsigned)) {
- return new LongType(target, typename, isUnsigned);
- } else if (isLongLong) {
- return new LongLongType(target, typename);
- } else if (isDouble && (isLong || isComplex || isImaginery)) {
- return new DoubleType(target, typename, isComplex, isImaginery, isLong);
- } else if (isFloat && (isComplex || isImaginery)) {
- return new FloatType(target, typename, isComplex, isImaginery);
- } else if (isStruct) {
- return new StructType(target, typename);
- } else if (isClass) {
- return new StructType(target, typename);
- } else if (isUnion) {
- return new StructType(target, typename);
- } else if (isEnum) {
- return new EnumType(target, typename);
- }
- } else if (count == 3) {
- // ISOC allows permutation. replace short by: long or short
- // "unsigned short int", "unsigned int short"
- // "short unsigned int". "short int unsigned"
- // "int unsinged short". "int short unsigned"
- //
- // "unsigned long long", "long long unsigned"
- // "signed long long", "long long signed"
- String first = st.nextToken();
- String second = st.nextToken();
- String third = st.nextToken();
-
- boolean isSigned = (first.equals("signed") || second.equals("signed") || third.equals("signed")); //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
- boolean unSigned = (first.equals("unsigned") || second.equals("unsigned") || third.equals("unsigned")); //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
- boolean isInt = (first.equals("int") || second.equals("int") || third.equals("int")); //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
- boolean isLong = (first.equals("long") || second.equals("long") || third.equals("long")); //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
- boolean isShort = (first.equals("short") || second.equals("short") || third.equals("short")); //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
- boolean isLongLong = (first.equals("long") && second.equals("long")) || //$NON-NLS-1$ //$NON-NLS-2$
- (second.equals("long") && third.equals("long")); //$NON-NLS-1$ //$NON-NLS-2$
- boolean isDouble = (first.equals("double") || second.equals("double") || third.equals("double")); //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
- boolean isComplex = (first.equals("complex") || second.equals("complex") || third.equals("complex") || //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
- first.equals("_Complex") || second.equals("_Complex") || third.equals("_Complex")); //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
- boolean isImaginery = (first.equals("_Imaginary") || second.equals("_Imaginary") || third.equals("_Imaginary")); //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
-
-
- if (isShort && isInt && (isSigned || unSigned)) {
- return new ShortType(target, typename, unSigned);
- } else if (isLong && isInt && (isSigned || unSigned)) {
- return new LongType(target, typename, unSigned);
- } else if (isLongLong && (isSigned || unSigned)) {
- return new LongLongType(target, typename, unSigned);
- } else if (isDouble && isLong && (isComplex || isImaginery)) {
- return new DoubleType(target, typename, isComplex, isImaginery, isLong);
- }
- } else if (count == 4) {
- // ISOC allows permutation:
- // "unsigned long long int", "unsigned int long long"
- // "long long unsigned int". "long long int unsigned"
- // "int unsigned long long". "int long long unsigned"
- String first = st.nextToken();
- String second = st.nextToken();
- String third = st.nextToken();
- String fourth = st.nextToken();
-
- boolean unSigned = (first.equals("unsigned") || second.equals("unsigned") || third.equals("unsigned") || fourth.equals("unsigned")); //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$ //$NON-NLS-4$
- boolean isSigned = (first.equals("signed") || second.equals("signed") || third.equals("signed") || fourth.equals("signed")); //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$ //$NON-NLS-4$
- boolean isInt = (first.equals("int") || second.equals("int") || third.equals("int") || fourth.equals("int")); //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$ //$NON-NLS-4$
- boolean isLongLong = (first.equals("long") && second.equals("long")) //$NON-NLS-1$ //$NON-NLS-2$
- || (second.equals("long") && third.equals("long")) //$NON-NLS-1$ //$NON-NLS-2$
- || (third.equals("long") && fourth.equals("long")); //$NON-NLS-1$ //$NON-NLS-2$
-
- if (isLongLong && isInt && (isSigned || unSigned)) {
- return new LongLongType(target, typename, unSigned);
- }
- }
- throw new CDIException(CdiResources.getString("cdi.SourceManager.Unknown_type")); //$NON-NLS-1$
- }
-
- public String getDetailTypeNameFromVariable(StackFrame frame, String variable) throws CDIException {
- Target target = (Target)frame.getTarget();
- Thread currentThread = (Thread)target.getCurrentThread();
- StackFrame currentFrame = currentThread.getCurrentStackFrame();
- target.lockTarget();
- try {
- target.setCurrentThread(frame.getThread(), false);
- ((Thread)frame.getThread()).setCurrentStackFrame(frame, false);
- return getDetailTypeName(target, variable);
- } finally {
- target.setCurrentThread(currentThread, false);
- currentThread.setCurrentStackFrame(currentFrame, false);
- target.releaseTarget();
- }
- }
- public String getDetailTypeName(Target target, String typename) throws CDIException {
- try {
- MISession mi = target.getMISession();
- RxThread rxThread = mi.getRxThread();
- rxThread.setEnableConsole(false);
- CommandFactory factory = mi.getCommandFactory();
- CLIPType ptype = factory.createCLIPType(typename);
- mi.postCommand(ptype);
- CLIPTypeInfo info = ptype.getMIPtypeInfo();
- if (info == null) {
- throw new CDIException(CdiResources.getString("cdi.Common.No_answer")); //$NON-NLS-1$
- }
- return info.getType();
- } catch (MIException e) {
- throw new MI2CDIException(e);
- } finally {
- MISession mi = target.getMISession();
- RxThread rxThread = mi.getRxThread();
- rxThread.setEnableConsole(true);
-
- }
- }
-
- public String getTypeNameFromVariable(StackFrame frame, String variable) throws CDIException {
- Target target = (Target)frame.getTarget();
- Thread currentThread = (Thread)target.getCurrentThread();
- StackFrame currentFrame = currentThread.getCurrentStackFrame();
- target.lockTarget();
- try {
- target.setCurrentThread(frame.getThread(), false);
- ((Thread)frame.getThread()).setCurrentStackFrame(frame, false);
- return getTypeName(target, variable);
- } finally {
- target.setCurrentThread(currentThread, false);
- currentThread.setCurrentStackFrame(currentFrame, false);
- target.releaseTarget();
- }
- }
-
- public String getTypeName(Target target, String variable) throws CDIException {
- MISession miSession = target.getMISession();
- try {
- RxThread rxThread = miSession.getRxThread();
- rxThread.setEnableConsole(false);
- CommandFactory factory = miSession.getCommandFactory();
- CLIWhatis whatis = factory.createCLIWhatis(variable);
- miSession.postCommand(whatis);
- CLIWhatisInfo info = whatis.getMIWhatisInfo();
- if (info == null) {
- throw new CDIException(CdiResources.getString("cdi.Common.No_answer")); //$NON-NLS-1$
- }
- return info.getType();
- } catch (MIException e) {
- throw new MI2CDIException(e);
- } finally {
- RxThread rxThread = miSession.getRxThread();
- rxThread.setEnableConsole(true);
- }
- }
-
-}
diff --git a/debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/ThreadManager.java b/debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/ThreadManager.java
deleted file mode 100644
index 216f33861de..00000000000
--- a/debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/ThreadManager.java
+++ /dev/null
@@ -1,112 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.mi.core.cdi;
-
-import java.util.HashMap;
-
-import org.eclipse.cdt.debug.core.cdi.CDIException;
-import org.eclipse.cdt.debug.core.cdi.model.ICDIThread;
-import org.eclipse.cdt.debug.mi.core.MIException;
-import org.eclipse.cdt.debug.mi.core.MISession;
-import org.eclipse.cdt.debug.mi.core.cdi.model.Target;
-import org.eclipse.cdt.debug.mi.core.cdi.model.Thread;
-import org.eclipse.cdt.debug.mi.core.command.CommandFactory;
-import org.eclipse.cdt.debug.mi.core.command.CLIInfoThreads;
-import org.eclipse.cdt.debug.mi.core.output.CLIInfoThreadsInfo;
-
-
-/**
- */
-public class ThreadManager extends Manager { //implements ICDIThreadManager {
-
- static final Thread[] noThreads = new Thread[0];
- HashMap threadMap;
-
- class ThreadSet {
- ICDIThread[] currentThreads;
- int currentThreadId;
- ThreadSet(ICDIThread[] threads, int id) {
- currentThreads = threads;
- currentThreadId = id;
- }
- }
-
- public ThreadManager(Session session) {
- super(session, true);
- threadMap = new HashMap();
- }
-
- /**
- * @see org.eclipse.cdt.debug.core.cdi.ICDIThreadManager#getThreads()
- */
- public ICDIThread[] getThreads() throws CDIException {
- return new ICDIThread[] {};
- }
-
- /**
- * @see org.eclipse.cdt.debug.core.cdi.ICDIThreadManager#getThreads()
- */
- public ICDIThread[] getThreads(Target process) throws CDIException {
- ThreadSet set = (ThreadSet)threadMap.get(process);
- if (set == null) {
- set = getCThreads(process);
- threadMap.put(process, set);
- }
- return set.currentThreads;
- }
-
- public ThreadSet getCThreads(Target process) throws CDIException {
- Thread[] cthreads = noThreads;
- int currentThreadId = 0;
- MISession mi = process.getMISession();
- CommandFactory factory = mi.getCommandFactory();
- try {
- // HACK/FIXME: gdb/mi thread-list-ids does not
- // show any newly create thread, we workaround by
- // issuing "info threads" instead.
- //MIThreadListIds tids = factory.createMIThreadListIds();
- //MIThreadListIdsInfo info = tids.getMIThreadListIdsInfo();
-
- CLIInfoThreads tids = factory.createCLIInfoThreads();
- mi.postCommand(tids);
- CLIInfoThreadsInfo info = tids.getMIInfoThreadsInfo();
- int [] ids;
- if (info == null) {
- ids = new int[0];
- } else {
- ids = info.getThreadIds();
- }
- if (ids != null && ids.length > 0) {
- cthreads = new Thread[ids.length];
- // Ok that means it is a multiThreaded.
- for (int i = 0; i < ids.length; i++) {
- cthreads[i] = new Thread(process, ids[i]);
- }
- } else {
- // Provide a dummy.
- cthreads = new Thread[]{new Thread(process, 0)};
- }
- currentThreadId = info.getCurrentThread();
- //FIX: When attaching there is no thread selected
- // We will choose the first one as a workaround.
- if (currentThreadId == 0 && cthreads.length > 0) {
- currentThreadId = cthreads[0].getId();
- }
- } catch (MIException e) {
- throw new CDIException(e.getMessage());
- }
- return new ThreadSet(cthreads, currentThreadId);
- }
-
- public void update(Target target) throws CDIException {
- }
-
-}
diff --git a/debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/VariableManager.java b/debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/VariableManager.java
deleted file mode 100644
index 2f571ffb0cb..00000000000
--- a/debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/VariableManager.java
+++ /dev/null
@@ -1,743 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.mi.core.cdi;
-
-import java.util.ArrayList;
-import java.util.Collections;
-import java.util.Hashtable;
-import java.util.Iterator;
-import java.util.List;
-import java.util.Map;
-
-import org.eclipse.cdt.debug.core.cdi.CDIException;
-import org.eclipse.cdt.debug.core.cdi.model.ICDIArgumentDescriptor;
-import org.eclipse.cdt.debug.core.cdi.model.ICDILocalVariableDescriptor;
-import org.eclipse.cdt.debug.core.cdi.model.ICDIStackFrame;
-import org.eclipse.cdt.debug.core.cdi.model.ICDIThread;
-import org.eclipse.cdt.debug.core.cdi.model.ICDIThreadStorageDescriptor;
-import org.eclipse.cdt.debug.core.cdi.model.ICDIVariable;
-import org.eclipse.cdt.debug.mi.core.MIException;
-import org.eclipse.cdt.debug.mi.core.MISession;
-import org.eclipse.cdt.debug.mi.core.RxThread;
-import org.eclipse.cdt.debug.mi.core.cdi.model.Argument;
-import org.eclipse.cdt.debug.mi.core.cdi.model.ArgumentDescriptor;
-import org.eclipse.cdt.debug.mi.core.cdi.model.GlobalVariable;
-import org.eclipse.cdt.debug.mi.core.cdi.model.GlobalVariableDescriptor;
-import org.eclipse.cdt.debug.mi.core.cdi.model.LocalVariable;
-import org.eclipse.cdt.debug.mi.core.cdi.model.LocalVariableDescriptor;
-import org.eclipse.cdt.debug.mi.core.cdi.model.Register;
-import org.eclipse.cdt.debug.mi.core.cdi.model.RegisterDescriptor;
-import org.eclipse.cdt.debug.mi.core.cdi.model.StackFrame;
-import org.eclipse.cdt.debug.mi.core.cdi.model.Target;
-import org.eclipse.cdt.debug.mi.core.cdi.model.Thread;
-import org.eclipse.cdt.debug.mi.core.cdi.model.ThreadStorage;
-import org.eclipse.cdt.debug.mi.core.cdi.model.ThreadStorageDescriptor;
-import org.eclipse.cdt.debug.mi.core.cdi.model.Variable;
-import org.eclipse.cdt.debug.mi.core.cdi.model.VariableDescriptor;
-import org.eclipse.cdt.debug.mi.core.command.CommandFactory;
-import org.eclipse.cdt.debug.mi.core.command.CLIPType;
-import org.eclipse.cdt.debug.mi.core.command.MIStackListArguments;
-import org.eclipse.cdt.debug.mi.core.command.MIStackListLocals;
-import org.eclipse.cdt.debug.mi.core.command.MIVarCreate;
-import org.eclipse.cdt.debug.mi.core.command.MIVarDelete;
-import org.eclipse.cdt.debug.mi.core.command.MIVarUpdate;
-import org.eclipse.cdt.debug.mi.core.event.MIEvent;
-import org.eclipse.cdt.debug.mi.core.event.MIVarChangedEvent;
-import org.eclipse.cdt.debug.mi.core.event.MIVarDeletedEvent;
-import org.eclipse.cdt.debug.mi.core.output.MIArg;
-import org.eclipse.cdt.debug.mi.core.output.MIFrame;
-import org.eclipse.cdt.debug.mi.core.output.CLIPTypeInfo;
-import org.eclipse.cdt.debug.mi.core.output.MIStackListArgumentsInfo;
-import org.eclipse.cdt.debug.mi.core.output.MIStackListLocalsInfo;
-import org.eclipse.cdt.debug.mi.core.output.MIVar;
-import org.eclipse.cdt.debug.mi.core.output.MIVarChange;
-import org.eclipse.cdt.debug.mi.core.output.MIVarUpdateInfo;
-
-/**
- */
-public class VariableManager extends Manager {
-
- static final ICDIVariable[] EMPTY_VARIABLES = {};
- // We put a restriction on how deep we want to
- // go when doing update of the variables.
- // If the number is to high, gdb will just hang.
- int MAX_STACK_DEPTH = Thread.STACKFRAME_DEFAULT_DEPTH;
- Map variablesMap;
- MIVarChange[] noChanges = new MIVarChange[0];
-
- public VariableManager(Session session) {
- super(session, true);
- variablesMap = new Hashtable();
- }
-
- synchronized List getVariablesList(Target target) {
- List variablesList = (List) variablesMap.get(target);
- if (variablesList == null) {
- variablesList = Collections.synchronizedList(new ArrayList());
- variablesMap.put(target, variablesList);
- }
- return variablesList;
- }
-
- /**
- * Return the element that have the uniq varName.
- * null is return if the element is not in the cache.
- */
- public Variable getVariable(MISession miSession, String varName) {
- Target target = ((Session)getSession()).getTarget(miSession);
- return getVariable(target, varName);
- }
-
- /**
- * Return the element that have the uniq varName.
- * null is return if the element is not in the cache.
- */
- public Variable getVariable(Target target, String varName) {
- Variable[] vars = getVariables(target);
- for (int i = 0; i < vars.length; i++) {
- try {
- if (vars[i].getMIVar().getVarName().equals(varName)) {
- return vars[i];
- }
- Variable v = vars[i].getChild(varName);
- if (v != null) {
- return v;
- }
- } catch (CDIException e) {
- //
- }
- }
- return null;
- }
-
- /**
- * Return the Element with this thread/stackframe, and with this name.
- * null is return if the element is not in the cache.
- */
- Variable findVariable(VariableDescriptor v) throws CDIException {
- Target target = (Target)v.getTarget();
- ICDIStackFrame vstack = v.getStackFrame();
- ICDIThread vthread = v.getThread();
- int position = v.getPosition();
- int depth = v.getStackDepth();
- Variable[] vars = getVariables(target);
- for (int i = 0; i < vars.length; i++) {
- if (vars[i].getFullName().equals(v.getFullName())
- && vars[i].getName().equals(v.getName()) // see bug #113364
- && vars[i].getCastingArrayStart() == v.getCastingArrayStart()
- && vars[i].getCastingArrayEnd() == v.getCastingArrayEnd()
- && VariableDescriptor.equalsCasting(vars[i], v)) {
- // check threads
- ICDIThread thread = vars[i].getThread();
- if ((vthread == null && thread == null) ||
- (vthread != null && thread != null && thread.equals(vthread))) {
- // check stackframes
- ICDIStackFrame frame = vars[i].getStackFrame();
- if (vstack == null && frame == null) {
- return vars[i];
- } else if (frame != null && vstack != null && frame.equals(vstack)) {
- if (vars[i].getPosition() == position) {
- if (vars[i].getStackDepth() == depth) {
- return vars[i];
- }
- }
- }
- }
- }
- }
- return null;
- }
-
- /**
- * Returns all the elements that are in the cache.
- */
- Variable[] getVariables(Target target) {
- List variableList = (List)variablesMap.get(target);
- if (variableList != null) {
- return (Variable[]) variableList.toArray(new Variable[variableList.size()]);
- }
- return new Variable[0];
- }
-
- /**
- * Check the type
- */
- public void checkType(StackFrame frame, String type) throws CDIException {
- if (type != null && type.length() > 0) {
- Target target = (Target)frame.getTarget();
- Thread currentThread = (Thread)target.getCurrentThread();
- StackFrame currentFrame = currentThread.getCurrentStackFrame();
- target.lockTarget();
- try {
- target.setCurrentThread(frame.getThread(), false);
- ((Thread)frame.getThread()).setCurrentStackFrame(frame, false);
- MISession miSession = target.getMISession();
- RxThread rxThread = miSession.getRxThread();
- rxThread.setEnableConsole(false);
- CommandFactory factory = miSession.getCommandFactory();
- CLIPType ptype = factory.createCLIPType(type);
- miSession.postCommand(ptype);
- CLIPTypeInfo info = ptype.getMIPtypeInfo();
- if (info == null) {
- throw new CDIException(CdiResources.getString("cdi.Common.No_answer")); //$NON-NLS-1$
- }
- } catch (MIException e) {
- throw new MI2CDIException(e);
- } finally {
- MISession miSession = target.getMISession();
- RxThread rxThread = miSession.getRxThread();
- rxThread.setEnableConsole(true);
- target.setCurrentThread(currentThread, false);
- currentThread.setCurrentStackFrame(currentFrame, false);
- target.releaseTarget();
- }
- } else {
- throw new CDIException(CdiResources.getString("cdi.VariableManager.Unknown_type")); //$NON-NLS-1$
- }
- }
-
- /**
- * Tell gdb to remove the underlying var-object also.
- */
- void removeMIVar(MISession miSession, MIVar miVar) throws CDIException {
- CommandFactory factory = miSession.getCommandFactory();
- MIVarDelete var = factory.createMIVarDelete(miVar.getVarName());
- try {
- miSession.postCommand(var);
- var.getMIInfo();
- } catch (MIException e) {
- throw new MI2CDIException(e);
- }
- }
-
- /**
- * Remove variable form the maintained cache list.
- * @param miSession
- * @param varName
- * @return
- */
- public Variable removeVariableFromList(MISession miSession, String varName) {
- Target target = ((Session)getSession()).getTarget(miSession);
- List varList = getVariablesList(target);
- synchronized (varList) {
- for (Iterator iterator = varList.iterator(); iterator.hasNext();) {
- Variable variable = (Variable)iterator.next();
- try {
- if (variable.getMIVar().getVarName().equals(varName)) {
- iterator.remove();
- return variable;
- }
- } catch (CDIException e) {
- //
- }
- }
- }
- return null;
- }
-
- /**
- * Encode the variableDescriptor as an array
- * @param varDesc
- * @param start
- * @param length
- * @return
- * @throws CDIException
- */
- public VariableDescriptor getVariableDescriptorAsArray(VariableDescriptor varDesc, int start, int length)
- throws CDIException {
- Target target = (Target)varDesc.getTarget();
- Thread thread = (Thread)varDesc.getThread();
- StackFrame frame = (StackFrame)varDesc.getStackFrame();
- String name = varDesc.getName();
- String fullName = varDesc.getFullName();
- int pos = varDesc.getPosition();
- int depth = varDesc.getStackDepth();
- VariableDescriptor vo = null;
-
- if (varDesc instanceof ArgumentDescriptor || varDesc instanceof Argument) {
- vo = new ArgumentDescriptor(target, thread, frame, name, fullName, pos, depth);
- } else if (varDesc instanceof LocalVariableDescriptor || varDesc instanceof LocalVariable) {
- vo = new LocalVariableDescriptor(target, thread, frame, name, fullName, pos, depth);
- } else if (varDesc instanceof GlobalVariableDescriptor || varDesc instanceof GlobalVariable) {
- vo = new GlobalVariableDescriptor(target, thread, frame, name, fullName, pos, depth);
- } else if (varDesc instanceof RegisterDescriptor || varDesc instanceof Register) {
- vo = new RegisterDescriptor(target, thread, frame, name, fullName, pos, depth);
- } else if (varDesc instanceof ThreadStorageDescriptor || varDesc instanceof ThreadStorage) {
- vo = new ThreadStorageDescriptor(target, thread, frame, name, fullName, pos, depth);
- } else {
- throw new CDIException(CdiResources.getString("cdi.VariableManager.Unknown_variable_object")); //$NON-NLS-1$
- }
-
- vo.setCastingArrayStart(varDesc.getCastingArrayStart() + start);
- vo.setCastingArrayEnd(length);
- return vo;
- }
-
- /**
- * Encode the variableDescriptor in a typecasting.
- * @param varDesc
- * @param type
- * @return
- * @throws CDIException
- */
- public VariableDescriptor getVariableDescriptorAsType(VariableDescriptor varDesc, String type) throws CDIException {
- // throw an exception if not a good type.
- Target target = (Target)varDesc.getTarget();
- Thread thread = (Thread)varDesc.getThread();
- StackFrame frame = (StackFrame)varDesc.getStackFrame();
- String name = varDesc.getName();
- String fullName = varDesc.getFullName();
- int pos = varDesc.getPosition();
- int depth = varDesc.getStackDepth();
-
- // Check the type validity.
- {
- StackFrame f = frame;
- if (f == null) {
- if (thread != null) {
- f = thread.getCurrentStackFrame();
- } else {
- Thread t = (Thread)target.getCurrentThread();
- f = t.getCurrentStackFrame();
- }
- }
- checkType(f, type);
- }
-
- VariableDescriptor vo = null;
-
- if (varDesc instanceof ArgumentDescriptor || varDesc instanceof Argument) {
- vo = new ArgumentDescriptor(target, thread, frame, name, fullName, pos, depth);
- } else if (varDesc instanceof LocalVariableDescriptor || varDesc instanceof LocalVariable) {
- vo = new LocalVariableDescriptor(target, thread, frame, name, fullName, pos, depth);
- } else if (varDesc instanceof GlobalVariableDescriptor || varDesc instanceof GlobalVariable) {
- vo = new GlobalVariableDescriptor(target, thread, frame, name, fullName, pos, depth);
- } else if (varDesc instanceof ThreadStorageDescriptor || varDesc instanceof ThreadStorage) {
- vo = new ThreadStorageDescriptor(target, thread, frame, name, fullName, pos, depth);
- } else if (varDesc instanceof RegisterDescriptor || varDesc instanceof Register) {
- vo = new RegisterDescriptor(target, thread, frame, name, fullName, pos, depth);
- } else {
- throw new CDIException(CdiResources.getString("cdi.VariableManager.Unknown_variable_object")); //$NON-NLS-1$
- }
-
- String[] castings = varDesc.getCastingTypes();
- if (castings == null) {
- castings = new String[] { type };
- } else {
- String[] temp = new String[castings.length + 1];
- System.arraycopy(castings, 0, temp, 0, castings.length);
- temp[castings.length] = type;
- castings = temp;
- }
- vo.setCastingTypes(castings);
- return vo;
- }
-
- public Variable createVariable(VariableDescriptor varDesc) throws CDIException {
- if (varDesc instanceof ArgumentDescriptor) {
- return createArgument((ArgumentDescriptor)varDesc);
- } else if (varDesc instanceof LocalVariableDescriptor) {
- return createLocalVariable((LocalVariableDescriptor)varDesc);
- } else if (varDesc instanceof GlobalVariableDescriptor) {
- return createGlobalVariable((GlobalVariableDescriptor)varDesc);
- } else if (varDesc instanceof RegisterDescriptor) {
- RegisterManager regMgr = ((Session)getSession()).getRegisterManager();
- return regMgr.createRegister((RegisterDescriptor)varDesc);
- } else if (varDesc instanceof ThreadStorageDescriptor) {
- return createThreadStorage((ThreadStorageDescriptor)varDesc);
- }
- throw new CDIException(CdiResources.getString("cdi.VariableManager.Unknown_variable_object")); //$NON-NLS-1$
- }
-
- public Argument createArgument(ArgumentDescriptor argDesc) throws CDIException {
- Variable variable = findVariable(argDesc);
- Argument argument = null;
- if (variable != null && variable instanceof Argument) {
- argument = (Argument) variable;
- }
- if (argument == null) {
- String name = argDesc.getQualifiedName();
- StackFrame stack = (StackFrame)argDesc.getStackFrame();
- Target target = (Target)argDesc.getTarget();
- Thread currentThread = (Thread)target.getCurrentThread();
- StackFrame currentFrame = currentThread.getCurrentStackFrame();
- target.lockTarget();
- try {
- target.setCurrentThread(stack.getThread(), false);
- ((Thread)stack.getThread()).setCurrentStackFrame(stack, false);
- MISession mi = target.getMISession();
- CommandFactory factory = mi.getCommandFactory();
- MIVarCreate var = factory.createMIVarCreate(name);
- mi.postCommand(var, -1);
- argument = new Argument(argDesc, var);
-// mi.postCommand(var);
-// MIVarCreateInfo info = var.getMIVarCreateInfo();
-// if (info == null) {
-// throw new CDIException(CdiResources.getString("cdi.Common.No_answer")); //$NON-NLS-1$
-// }
-// argument = new Argument(argDesc, info.getMIVar());
- List variablesList = getVariablesList(target);
- variablesList.add(argument);
- } catch (MIException e) {
- throw new MI2CDIException(e);
- } finally {
- target.setCurrentThread(currentThread, false);
- currentThread.setCurrentStackFrame(currentFrame, false);
- target.releaseTarget();
- }
- }
- return argument;
- }
-
- public ICDIArgumentDescriptor[] getArgumentDescriptors(StackFrame frame) throws CDIException {
- List argObjects = new ArrayList();
- Target target = (Target)frame.getTarget();
- Thread currentThread = (Thread)target.getCurrentThread();
- StackFrame currentFrame = currentThread.getCurrentStackFrame();
- target.lockTarget();
- try {
- target.setCurrentThread(frame.getThread(), false);
- ((Thread)frame.getThread()).setCurrentStackFrame(frame, false);
- MISession mi = target.getMISession();
- CommandFactory factory = mi.getCommandFactory();
- int depth = frame.getThread().getStackFrameCount();
- int level = frame.getLevel();
- // Need the GDB/MI view of level which the reverse i.e. Highest frame is 0
- int miLevel = depth - level;
- MIStackListArguments listArgs = factory.createMIStackListArguments(false, miLevel, miLevel);
- MIArg[] args = null;
- mi.postCommand(listArgs);
- MIStackListArgumentsInfo info = listArgs.getMIStackListArgumentsInfo();
- if (info == null) {
- throw new CDIException(CdiResources.getString("cdi.Common.No_answer")); //$NON-NLS-1$
- }
- MIFrame[] miFrames = info.getMIFrames();
- if (miFrames != null && miFrames.length == 1) {
- args = miFrames[0].getArgs();
- }
- if (args != null) {
- for (int i = 0; i < args.length; i++) {
- ArgumentDescriptor arg = new ArgumentDescriptor(target, null, frame, args[i].getName(), null, args.length - i, level);
- argObjects.add(arg);
- }
- }
- } catch (MIException e) {
- throw new MI2CDIException(e);
- } finally {
- target.setCurrentThread(currentThread, false);
- currentThread.setCurrentStackFrame(currentFrame, false);
- target.releaseTarget();
- }
- return (ICDIArgumentDescriptor[]) argObjects.toArray(new ICDIArgumentDescriptor[0]);
- }
-
- public GlobalVariableDescriptor getGlobalVariableDescriptor(Target target, String filename, String function, String name) throws CDIException {
- if (filename == null) {
- filename = new String();
- }
- if (function == null) {
- function = new String();
- }
- if (name == null) {
- name = new String();
- }
- StringBuffer buffer = new StringBuffer();
- if (filename.length() > 0) {
- buffer.append('\'').append(filename).append('\'').append("::"); //$NON-NLS-1$
- }
- if (function.length() > 0) {
- buffer.append(function).append("::"); //$NON-NLS-1$
- }
- buffer.append(name);
- return new GlobalVariableDescriptor(target, null, null, buffer.toString(), null, 0, 0);
- }
-
- public GlobalVariable createGlobalVariable(GlobalVariableDescriptor varDesc) throws CDIException {
- Variable variable = findVariable(varDesc);
- GlobalVariable global = null;
- if (variable instanceof GlobalVariable) {
- global = (GlobalVariable)variable;
- }
- if (global == null) {
- String name = varDesc.getQualifiedName();
- Target target = (Target)varDesc.getTarget();
- try {
- MISession mi = target.getMISession();
- CommandFactory factory = mi.getCommandFactory();
- MIVarCreate var = factory.createMIVarCreate(name);
- mi.postCommand(var, -1);
- global = new GlobalVariable(varDesc, var);
-// mi.postCommand(var;
-// MIVarCreateInfo info = var.getMIVarCreateInfo();
-// if (info == null) {
-// throw new CDIException(CdiResources.getString("cdi.Common.No_answer")); //$NON-NLS-1$
-// }
-// global = new GlobalVariable(varDesc, info.getMIVar());
- List variablesList = getVariablesList(target);
- variablesList.add(global);
- } catch (MIException e) {
- throw new MI2CDIException(e);
- }
- }
- return global;
- }
-
- public ICDILocalVariableDescriptor[] getLocalVariableDescriptors(StackFrame frame) throws CDIException {
- List varObjects = new ArrayList();
- Target target = (Target)frame.getTarget();
- Thread currentThread = (Thread)target.getCurrentThread();
- StackFrame currentFrame = currentThread.getCurrentStackFrame();
- target.lockTarget();
- try {
- target.setCurrentThread(frame.getThread(), false);
- ((Thread)frame.getThread()).setCurrentStackFrame(frame, false);
- MISession mi = target.getMISession();
- CommandFactory factory = mi.getCommandFactory();
- int level = frame.getLevel();
- MIArg[] args = null;
- MIStackListLocals locals = factory.createMIStackListLocals(false);
- mi.postCommand(locals);
- MIStackListLocalsInfo info = locals.getMIStackListLocalsInfo();
- if (info == null) {
- throw new CDIException(CdiResources.getString("cdi.Common.No_answer")); //$NON-NLS-1$
- }
- args = info.getLocals();
- if (args != null) {
- for (int i = 0; i < args.length; i++) {
- LocalVariableDescriptor varObj = new LocalVariableDescriptor(target, null, frame, args[i].getName(), null, args.length - i, level);
- varObjects.add(varObj);
- }
- }
- } catch (MIException e) {
- throw new MI2CDIException(e);
- } finally {
- target.setCurrentThread(currentThread, false);
- currentThread.setCurrentStackFrame(currentFrame, false);
- target.releaseTarget();
- }
- return (ICDILocalVariableDescriptor[]) varObjects.toArray(new ICDILocalVariableDescriptor[0]);
- }
-
- public LocalVariable createLocalVariable(LocalVariableDescriptor varDesc) throws CDIException {
- Variable variable = findVariable(varDesc);
- LocalVariable local = null;
- if (variable instanceof LocalVariable) {
- local = (LocalVariable)variable;
- }
- if (local == null) {
- String name = varDesc.getQualifiedName();
- StackFrame stack = (StackFrame)varDesc.getStackFrame();
- Target target = (Target)varDesc.getTarget();
- Thread currentThread = (Thread)target.getCurrentThread();
- StackFrame currentFrame = currentThread.getCurrentStackFrame();
- target.lockTarget();
- try {
- target.setCurrentThread(stack.getThread(), false);
- ((Thread)stack.getThread()).setCurrentStackFrame(stack, false);
- MISession mi = target.getMISession();
- CommandFactory factory = mi.getCommandFactory();
- MIVarCreate var = factory.createMIVarCreate(name);
- mi.postCommand(var, -1);
- local = new LocalVariable(varDesc, var);
-// mi.postCommand(var);
-// MIVarCreateInfo info = var.getMIVarCreateInfo();
-// if (info == null) {
-// throw new CDIException(CdiResources.getString("cdi.Common.No_answer")); //$NON-NLS-1$
-// }
-// local = new LocalVariable(varDesc, info.getMIVar());
- List variablesList = getVariablesList(target);
- variablesList.add(local);
- } catch (MIException e) {
- throw new MI2CDIException(e);
- } finally {
- target.setCurrentThread(currentThread, false);
- currentThread.setCurrentStackFrame(currentFrame, false);
- target.releaseTarget();
- }
- }
- return local;
- }
-
- public ICDIThreadStorageDescriptor[] getThreadStorageDescriptors(Thread thread) throws CDIException {
- return new ICDIThreadStorageDescriptor[0];
- }
-
- public ThreadStorage createThreadStorage(ThreadStorageDescriptor desc) throws CDIException {
- throw new CDIException(CdiResources.getString("cdi.VariableManager.Unknown_variable_object")); //$NON-NLS-1$
- }
-
- public void destroyVariable(Variable variable) throws CDIException {
- // Fire a destroyEvent ?
- Target target = (Target)variable.getTarget();
- MISession mi = target.getMISession();
- // no need to call -var-delete for variable that are not in
- // the list most probaby they are children of other variables and in this case
- // we should not delete them
- List varList = getVariablesList(target);
- if (varList.contains(variable)) {
- removeMIVar(mi, variable.getMIVar());
- }
- MIVarDeletedEvent del = new MIVarDeletedEvent(mi, variable.getMIVar().getVarName());
- mi.fireEvent(del);
- }
-
- public void destroyAllVariables(Target target) throws CDIException {
- Variable[] variables = getVariables(target);
- MISession mi = target.getMISession();
- for (int i = 0; i < variables.length; ++i) {
- removeMIVar(mi, variables[i].getMIVar());
- MIVarDeletedEvent del = new MIVarDeletedEvent(mi, variables[i].getMIVar().getVarName());
- mi.fireEvent(del);
- }
- }
-
- /**
- * Update the elements in the cache, from the response of the "-var-update"
- * mi/command. Althought tempting we do not use the "-var-update *" command, since
- * for some reason on gdb-5.2.1 it starts to misbehave until it hangs ... sigh
- * We take the approach of updating the variables ourselfs. But we do it a smart
- * way by only updating the variables visible in the current stackframe but not
- * the other locals in different frames. The downside if any side effects we loose,
- * This ok, since the IDE only a frame at a time.
- *
- */
- public void update(Target target) throws CDIException {
- int highLevel = 0;
- int lowLevel = 0;
- List eventList = new ArrayList();
- MISession mi = target.getMISession();
- CommandFactory factory = mi.getCommandFactory();
- Variable[] vars = getVariables(target);
- ICDIStackFrame[] frames = null;
- StackFrame currentStack = null;
- Thread currentThread = (Thread)target.getCurrentThread();
- if (currentThread != null) {
- currentStack = currentThread.getCurrentStackFrame();
- if (currentStack != null) {
- highLevel = currentStack.getLevel();
- }
- if (highLevel > MAX_STACK_DEPTH) {
- highLevel = MAX_STACK_DEPTH;
- }
- lowLevel = highLevel - MAX_STACK_DEPTH;
- if (lowLevel < 0) {
- lowLevel = 0;
- }
- frames = currentThread.getStackFrames(0, highLevel);
- }
- for (int i = 0; i < vars.length; i++) {
- Variable variable = vars[i];
- if (isVariableNeedsToBeUpdate(variable, currentStack, frames, lowLevel)) {
- update(target, variable, eventList);
- } else {
- variable.setUpdated(false);
- }
- }
- MIEvent[] events = (MIEvent[]) eventList.toArray(new MIEvent[0]);
- mi.fireEvents(events);
- }
-
- public void update(Variable variable) throws CDIException {
- Target target = (Target)variable.getTarget();
- MISession mi = target.getMISession();
- List eventList = new ArrayList();
- update(target, variable, eventList);
- MIEvent[] events = (MIEvent[]) eventList.toArray(new MIEvent[0]);
- mi.fireEvents(events);
- }
-
- public void update(Target target, Variable variable, List eventList) throws CDIException {
- MISession mi = target.getMISession();
- CommandFactory factory = mi.getCommandFactory();
- MIVarChange[] changes = noChanges;
- try {
- String miVarName = variable.getMIVar().getVarName();
- MIVarUpdate update = factory.createMIVarUpdate(miVarName);
- try {
- mi.postCommand(update);
- MIVarUpdateInfo info = update.getMIVarUpdateInfo();
- if (info == null) {
- throw new CDIException(CdiResources.getString("cdi.Common.No_answer")); //$NON-NLS-1$
- }
- changes = info.getMIVarChanges();
- } catch (MIException e) {
- //throw new MI2CDIException(e);
- eventList.add(new MIVarDeletedEvent(mi, miVarName));
- }
- } catch (CDIException exc) {
- // When the variable was out of scope the fisrt time, the getMIVar() generates an exception.
- // Then create again the variable, set the fVarCreateCMD of Variable class and try again the update command.
- try {
- MIVarCreate var = factory.createMIVarCreate(variable.getName());
- mi.postCommand(var, -1);
- variable.setMIVarCreate(var);
- update(target, variable, eventList);
- } catch (MIException e) {
- throw new MI2CDIException(e);
- }
- }
- variable.setUpdated(true);
- for (int j = 0; j < changes.length; j++) {
- String n = changes[j].getVarName();
- if (changes[j].isInScope()) {
- eventList.add(new MIVarChangedEvent(mi, n));
- } else {
- destroyVariable(variable);
- eventList.add(new MIVarDeletedEvent(mi, n));
- }
- }
- }
-
- /**
- * We are trying to minimize the impact of the updates, this can be very long and unncessary if we
- * have a very deep stack and lots of local variables. We can assume here that the local variables
- * in the other non-selected stackframe will not change and only update the selected frame variables.
- *
- * @param variable
- * @param current
- * @param frames
- * @return
- */
- boolean isVariableNeedsToBeUpdate(Variable variable, ICDIStackFrame current, ICDIStackFrame[] frames, int lowLevel)
- throws CDIException {
- ICDIStackFrame varStack = variable.getStackFrame();
- boolean inScope = false;
-
- // Something wrong and the program terminated bail out here.
- if (current == null || frames == null) {
- return false;
- }
-
- // If the variable Stack is null, it means this is a global variable we should update
- if (varStack == null) {
- return true;
- } else if (varStack.equals(current)) {
- // The variable is in the current selected frame it should be updated
- return true;
- } else {
- if (varStack.getLevel() >= lowLevel) {
- // Check if the Variable is still in Scope
- // if it is no longer in scope so update() can call "-var-delete".
- for (int i = 0; i < frames.length; i++) {
- if (varStack.equals(frames[i])) {
- inScope = true;
- }
- }
- } else {
- inScope = true;
- }
- }
- // return true if the variable is no longer in scope we
- // need to call -var-delete.
- return !inScope;
- }
-
-}
diff --git a/debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/WatchpointScope.java b/debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/WatchpointScope.java
deleted file mode 100644
index 404fdace9f1..00000000000
--- a/debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/WatchpointScope.java
+++ /dev/null
@@ -1,42 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.mi.core.cdi;
-
-import org.eclipse.cdt.debug.core.cdi.ICDIWatchpointScope;
-import org.eclipse.cdt.debug.core.cdi.model.ICDIWatchpoint;
-import org.eclipse.cdt.debug.mi.core.cdi.model.Watchpoint;
-import org.eclipse.cdt.debug.mi.core.event.MIWatchpointScopeEvent;
-
-/**
- */
-public class WatchpointScope extends SessionObject implements ICDIWatchpointScope {
-
- MIWatchpointScopeEvent watchEvent;
-
- public WatchpointScope(Session session, MIWatchpointScopeEvent e) {
- super(session);
- watchEvent = e;
- }
-
- /**
- * @see org.eclipse.cdt.debug.core.cdi.ICDIWatchpointScope#getWatchpoint()
- */
- public ICDIWatchpoint getWatchpoint() {
- int number = watchEvent.getNumber();
- // Ask the breakpointManager for the breakpoint
- BreakpointManager mgr = ((Session)getSession()).getBreakpointManager();
- // We need to return the same object as the reason.
- Watchpoint point = mgr.getWatchpoint(watchEvent.getMISession(), number);
- // FIXME: if point ==null ??? Create a new breakpoint ?
- return point;
- }
-
-}
diff --git a/debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/WatchpointTrigger.java b/debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/WatchpointTrigger.java
deleted file mode 100644
index f24bdb9becc..00000000000
--- a/debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/WatchpointTrigger.java
+++ /dev/null
@@ -1,56 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.mi.core.cdi;
-
-import org.eclipse.cdt.debug.core.cdi.ICDIWatchpointTrigger;
-import org.eclipse.cdt.debug.core.cdi.model.ICDIWatchpoint;
-import org.eclipse.cdt.debug.mi.core.cdi.model.Watchpoint;
-import org.eclipse.cdt.debug.mi.core.event.MIWatchpointTriggerEvent;
-
-/**
- */
-public class WatchpointTrigger extends SessionObject implements ICDIWatchpointTrigger {
-
- MIWatchpointTriggerEvent watchEvent;
-
- public WatchpointTrigger(Session session, MIWatchpointTriggerEvent e) {
- super(session);
- watchEvent = e;
- }
-
- /**
- * @see org.eclipse.cdt.debug.core.cdi.ICDIWatchpointTrigger#getNewValue()
- */
- public String getNewValue() {
- return watchEvent.getNewValue();
- }
-
- /**
- * @see org.eclipse.cdt.debug.core.cdi.ICDIWatchpointTrigger#getOldValue()
- */
- public String getOldValue() {
- return watchEvent.getOldValue();
- }
-
- /**
- * @see org.eclipse.cdt.debug.core.cdi.ICDIWatchpointTrigger#getWatchpoint()
- */
- public ICDIWatchpoint getWatchpoint() {
- int number = watchEvent.getNumber();
- // Ask the breakpointManager for the breakpoint
- BreakpointManager mgr = ((Session)getSession()).getBreakpointManager();
- // We need to return the same object as the reason.
- Watchpoint point = mgr.getWatchpoint(watchEvent.getMISession(), number);
- // FIXME: if point ==null ??? Create a new breakpoint ?
- return point;
- }
-
-}
diff --git a/debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/event/ChangedEvent.java b/debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/event/ChangedEvent.java
deleted file mode 100644
index 9ed722268fa..00000000000
--- a/debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/event/ChangedEvent.java
+++ /dev/null
@@ -1,135 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.mi.core.cdi.event;
-
-import org.eclipse.cdt.debug.core.cdi.event.ICDIChangedEvent;
-import org.eclipse.cdt.debug.core.cdi.model.ICDIBreakpoint;
-import org.eclipse.cdt.debug.core.cdi.model.ICDIObject;
-import org.eclipse.cdt.debug.core.cdi.model.ICDISharedLibrary;
-import org.eclipse.cdt.debug.core.cdi.model.ICDISignal;
-import org.eclipse.cdt.debug.mi.core.MISession;
-import org.eclipse.cdt.debug.mi.core.cdi.BreakpointManager;
-import org.eclipse.cdt.debug.mi.core.cdi.ExpressionManager;
-import org.eclipse.cdt.debug.mi.core.cdi.RegisterManager;
-import org.eclipse.cdt.debug.mi.core.cdi.Session;
-import org.eclipse.cdt.debug.mi.core.cdi.SharedLibraryManager;
-import org.eclipse.cdt.debug.mi.core.cdi.SignalManager;
-import org.eclipse.cdt.debug.mi.core.cdi.VariableManager;
-import org.eclipse.cdt.debug.mi.core.cdi.model.CObject;
-import org.eclipse.cdt.debug.mi.core.cdi.model.Target;
-import org.eclipse.cdt.debug.mi.core.event.MIBreakpointChangedEvent;
-import org.eclipse.cdt.debug.mi.core.event.MIRegisterChangedEvent;
-import org.eclipse.cdt.debug.mi.core.event.MISharedLibChangedEvent;
-import org.eclipse.cdt.debug.mi.core.event.MISignalChangedEvent;
-import org.eclipse.cdt.debug.mi.core.event.MIVarChangedEvent;
-
-/**
- */
-public class ChangedEvent implements ICDIChangedEvent {
-
- Session session;
- ICDIObject source;
-
- public ChangedEvent(Session s, MIVarChangedEvent var) {
- session = s;
-
- // Try the Variable manager.
- VariableManager mgr = session.getVariableManager();
- String varName = var.getVarName();
- MISession miSession = var.getMISession();
- source = mgr.getVariable(miSession, varName);
-
- // Try the Expression manager
- if (source == null) {
- ExpressionManager expMgr = session.getExpressionManager();
- source = expMgr.getVariable(miSession, varName);
- }
-
- // Try the Register manager
- if (source == null) {
- RegisterManager regMgr = session.getRegisterManager();
- source = regMgr.getRegister(miSession, varName);
- }
-
- // Fall back
- if (source == null) {
- Target target = session.getTarget(miSession);
- source = new CObject(target);
- }
- }
-
- public ChangedEvent(Session s, MIRegisterChangedEvent reg) {
- session = s;
- RegisterManager mgr = session.getRegisterManager();
- MISession miSession = reg.getMISession();
- int regno = reg.getNumber();
- source = mgr.getRegister(miSession, regno);
- if (source == null) {
- Target target = session.getTarget(miSession);
- source = new CObject(target);
- }
- }
-
- public ChangedEvent(Session s, MIBreakpointChangedEvent bpoint) {
- session = s;
- BreakpointManager mgr = session.getBreakpointManager();
- MISession miSession = bpoint.getMISession();
- int number = bpoint.getNumber();
- ICDIBreakpoint breakpoint = mgr.getBreakpoint(miSession, number);
- if (breakpoint != null) {
- source = breakpoint;
- } else {
- Target target = session.getTarget(miSession);
- source = new CObject(target);
- }
- }
-
- public ChangedEvent(Session s, MISharedLibChangedEvent slib) {
- session = s;
- SharedLibraryManager mgr = session.getSharedLibraryManager();
- MISession miSession = slib.getMISession();
- String name = slib.getName();
- ICDISharedLibrary lib = mgr.getSharedLibrary(miSession, name);
- if (lib != null) {
- source = lib;
- } else {
- Target target = session.getTarget(miSession);
- source = new CObject(target);
- }
- }
-
- public ChangedEvent(Session s, MISignalChangedEvent sig) {
- session = s;
- SignalManager mgr = session.getSignalManager();
- MISession miSession = sig.getMISession();
- String name = sig.getName();
- ICDISignal signal = mgr.getSignal(miSession, name);
- if (signal != null) {
- source = signal;
- } else {
- Target target = session.getTarget(miSession);
- source = new CObject(target);
- }
- }
-
- public ChangedEvent(Session s, ICDIObject src) {
- session = s;
- source = src;
- }
-
- /**
- * @see org.eclipse.cdt.debug.core.cdi.event.ICDIEvent#getSource()
- */
- public ICDIObject getSource() {
- return source;
- }
-
-}
diff --git a/debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/event/CreatedEvent.java b/debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/event/CreatedEvent.java
deleted file mode 100644
index a10421b258d..00000000000
--- a/debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/event/CreatedEvent.java
+++ /dev/null
@@ -1,134 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.mi.core.cdi.event;
-
-import org.eclipse.cdt.debug.core.cdi.event.ICDICreatedEvent;
-import org.eclipse.cdt.debug.core.cdi.model.ICDIMemoryBlock;
-import org.eclipse.cdt.debug.core.cdi.model.ICDIObject;
-import org.eclipse.cdt.debug.mi.core.MISession;
-import org.eclipse.cdt.debug.mi.core.cdi.BreakpointManager;
-import org.eclipse.cdt.debug.mi.core.cdi.MemoryManager;
-import org.eclipse.cdt.debug.mi.core.cdi.RegisterManager;
-import org.eclipse.cdt.debug.mi.core.cdi.Session;
-import org.eclipse.cdt.debug.mi.core.cdi.SharedLibraryManager;
-import org.eclipse.cdt.debug.mi.core.cdi.VariableManager;
-import org.eclipse.cdt.debug.mi.core.cdi.model.CObject;
-import org.eclipse.cdt.debug.mi.core.cdi.model.Target;
-import org.eclipse.cdt.debug.mi.core.event.MIBreakpointCreatedEvent;
-import org.eclipse.cdt.debug.mi.core.event.MIInferiorCreatedEvent;
-import org.eclipse.cdt.debug.mi.core.event.MIMemoryCreatedEvent;
-import org.eclipse.cdt.debug.mi.core.event.MIRegisterCreatedEvent;
-import org.eclipse.cdt.debug.mi.core.event.MISharedLibCreatedEvent;
-import org.eclipse.cdt.debug.mi.core.event.MIThreadCreatedEvent;
-import org.eclipse.cdt.debug.mi.core.event.MIVarCreatedEvent;
-
-/**
- */
-public class CreatedEvent implements ICDICreatedEvent {
-
- Session session;
- ICDIObject source;
-
- public CreatedEvent(Session s, MIBreakpointCreatedEvent bpoint) {
- session = s;
- BreakpointManager mgr = session.getBreakpointManager();
- MISession miSession = bpoint.getMISession();
- int number = bpoint.getNumber();
- source = mgr.getBreakpoint(miSession, number);
- if (source == null) {
- Target target = session.getTarget(miSession);
- source = new CObject(target);
- }
- }
-
- public CreatedEvent(Session s, MIVarCreatedEvent var) {
- session = s;
- VariableManager mgr = session.getVariableManager();
- MISession miSession = var.getMISession();
- String varName = var.getVarName();
- source = mgr.getVariable(miSession, varName);
- if (source == null) {
- Target target = session.getTarget(miSession);
- source = new CObject(target);
- }
- }
-
- public CreatedEvent(Session s, MIRegisterCreatedEvent reg) {
- session = s;
- RegisterManager mgr = session.getRegisterManager();
- MISession miSession = reg.getMISession();
- int regno = reg.getNumber();
- source = mgr.getRegister(miSession, regno);
- if (source == null) {
- Target target = session.getTarget(miSession);
- source = new CObject(target);
- }
- }
-
- public CreatedEvent(Session s, MIThreadCreatedEvent cthread) {
- session = s;
- MISession miSession = cthread.getMISession();
- Target target = session.getTarget(miSession);
- source = target.getThread(cthread.getId());
- if (source == null) {
- source = new CObject(target);
- }
- }
-
- public CreatedEvent(Session s, MIInferiorCreatedEvent inferior) {
- session = s;
- MISession miSession = inferior.getMISession();
- source = session.getTarget(miSession);
- }
-
- public CreatedEvent(Session s, MIMemoryCreatedEvent mblock) {
- session = s;
- MemoryManager mgr = session.getMemoryManager();
- MISession miSession = mblock.getMISession();
- ICDIMemoryBlock[] blocks = mgr.getMemoryBlocks(miSession);
- for (int i = 0; i < blocks.length; i++) {
- if (blocks[i].getStartAddress().equals(mblock.getAddress()) &&
- blocks[i].getLength() == mblock.getLength()) {
- source = blocks[i];
- break;
- }
- }
- if (source == null) {
- Target target = session.getTarget(miSession);
- source = new CObject(target);
- }
- }
-
- public CreatedEvent(Session s, MISharedLibCreatedEvent slib) {
- session = s;
- SharedLibraryManager mgr = session.getSharedLibraryManager();
- MISession miSession = slib.getMISession();
- String name = slib.getName();
- source = mgr.getSharedLibrary(miSession, name);
- if (source == null) {
- Target target = session.getTarget(miSession);
- source = new CObject(target);
- }
- }
-
- public CreatedEvent(Session s, ICDIObject src) {
- session = s;
- source = src;
- }
-
- /**
- * @see org.eclipse.cdt.debug.core.cdi.event.ICDIEvent#getSource()
- */
- public ICDIObject getSource() {
- return source;
- }
-
-}
diff --git a/debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/event/DestroyedEvent.java b/debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/event/DestroyedEvent.java
deleted file mode 100644
index d85f79b24a4..00000000000
--- a/debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/event/DestroyedEvent.java
+++ /dev/null
@@ -1,111 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.mi.core.cdi.event;
-
-import org.eclipse.cdt.debug.core.cdi.event.ICDIDestroyedEvent;
-import org.eclipse.cdt.debug.core.cdi.model.ICDIObject;
-import org.eclipse.cdt.debug.mi.core.MISession;
-import org.eclipse.cdt.debug.mi.core.cdi.BreakpointManager;
-import org.eclipse.cdt.debug.mi.core.cdi.ExpressionManager;
-import org.eclipse.cdt.debug.mi.core.cdi.Session;
-import org.eclipse.cdt.debug.mi.core.cdi.SharedLibraryManager;
-import org.eclipse.cdt.debug.mi.core.cdi.VariableManager;
-import org.eclipse.cdt.debug.mi.core.cdi.model.Breakpoint;
-import org.eclipse.cdt.debug.mi.core.cdi.model.CObject;
-import org.eclipse.cdt.debug.mi.core.cdi.model.SharedLibrary;
-import org.eclipse.cdt.debug.mi.core.cdi.model.Target;
-import org.eclipse.cdt.debug.mi.core.cdi.model.Thread;
-import org.eclipse.cdt.debug.mi.core.cdi.model.Variable;
-import org.eclipse.cdt.debug.mi.core.event.MIBreakpointDeletedEvent;
-import org.eclipse.cdt.debug.mi.core.event.MISharedLibUnloadedEvent;
-import org.eclipse.cdt.debug.mi.core.event.MIThreadExitEvent;
-import org.eclipse.cdt.debug.mi.core.event.MIVarDeletedEvent;
-
-/**
- */
-public class DestroyedEvent implements ICDIDestroyedEvent {
-
- Session session;
- ICDIObject source;
-
- public DestroyedEvent(Session s, MIThreadExitEvent cthread) {
- session = s;
- Target target = session.getTarget(cthread.getMISession());
- source = new Thread(target, cthread.getId());
- }
-
- public DestroyedEvent(Session s, MIVarDeletedEvent var) {
- session = s;
- VariableManager varMgr = session.getVariableManager();
- MISession miSession = var.getMISession();
- String varName = var.getVarName();
- Variable variable = varMgr.removeVariableFromList(miSession, varName);
- if (variable != null) {
- source = variable;
- } else {
- ExpressionManager expMgr = session.getExpressionManager();
- variable = expMgr.removeVariableFromList(miSession, varName);
- if (variable != null) {
- source = variable;
- } else {
- Target target = session.getTarget(miSession);
- source = new CObject(target);
- }
- }
- }
-
- public DestroyedEvent(Session s, MIBreakpointDeletedEvent bpoint) {
- session = s;
- BreakpointManager mgr = session.getBreakpointManager();
- MISession miSession = bpoint.getMISession();
- int number = bpoint.getNumber();
- Breakpoint breakpoint = mgr.getBreakpoint(miSession, number);
- if (breakpoint != null) {
- source = breakpoint;
- mgr.deleteBreakpoint(miSession, number);
- } else {
- Target target = session.getTarget(miSession);
- source = new CObject(target);
- }
- }
-
- public DestroyedEvent(Session s, MISharedLibUnloadedEvent slib) {
- session = s;
- SharedLibraryManager mgr = session.getSharedLibraryManager();
- MISession miSession = slib.getMISession();
- String name = slib.getName();
- SharedLibrary lib = mgr.getSharedLibrary(miSession, name);
- if (lib != null) {
- mgr.deleteSharedLibrary(miSession, lib);
- source = lib;
- } else {
- Target target = session.getTarget(miSession);
- source = new CObject(target);
- }
- }
-
- public DestroyedEvent(Session s, ICDIObject src) {
- session = s;
- source = src;
- }
-
- public DestroyedEvent(Session s) {
- session = s;
- }
-
- /**
- * @see org.eclipse.cdt.debug.core.cdi.event.ICDIEvent#getSource()
- */
- public ICDIObject getSource() {
- return source;
- }
-
-}
diff --git a/debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/event/DisconnectedEvent.java b/debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/event/DisconnectedEvent.java
deleted file mode 100644
index 7047320d5c0..00000000000
--- a/debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/event/DisconnectedEvent.java
+++ /dev/null
@@ -1,38 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2002, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.cdt.debug.mi.core.cdi.event;
-
-import org.eclipse.cdt.debug.core.cdi.event.ICDIDisconnectedEvent;
-import org.eclipse.cdt.debug.core.cdi.model.ICDIObject;
-import org.eclipse.cdt.debug.mi.core.cdi.Session;
-import org.eclipse.cdt.debug.mi.core.cdi.model.Target;
-import org.eclipse.cdt.debug.mi.core.event.MIDetachedEvent;
-
-/**
- */
-public class DisconnectedEvent implements ICDIDisconnectedEvent {
-
- ICDIObject source;
-
- public DisconnectedEvent(Session session, MIDetachedEvent detach) {
- Target target = session.getTarget(detach.getMISession());
- source = target;
- }
-
- /**
- * @see org.eclipse.cdt.debug.core..ICDIEvent#getSource()
- */
- public ICDIObject getSource() {
- return source;
- }
-
-}
diff --git a/debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/event/ExitedEvent.java b/debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/event/ExitedEvent.java
deleted file mode 100644
index 50d79db793b..00000000000
--- a/debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/event/ExitedEvent.java
+++ /dev/null
@@ -1,67 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2005 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.mi.core.cdi.event;
-
-import org.eclipse.cdt.debug.core.cdi.ICDISessionObject;
-import org.eclipse.cdt.debug.core.cdi.event.ICDIExitedEvent;
-import org.eclipse.cdt.debug.core.cdi.model.ICDIObject;
-import org.eclipse.cdt.debug.mi.core.cdi.ExitInfo;
-import org.eclipse.cdt.debug.mi.core.cdi.Session;
-import org.eclipse.cdt.debug.mi.core.cdi.SignalExitInfo;
-import org.eclipse.cdt.debug.mi.core.cdi.model.Target;
-import org.eclipse.cdt.debug.mi.core.event.MIEvent;
-import org.eclipse.cdt.debug.mi.core.event.MIGDBExitEvent;
-import org.eclipse.cdt.debug.mi.core.event.MIInferiorExitEvent;
-import org.eclipse.cdt.debug.mi.core.event.MIInferiorSignalExitEvent;
-
-/**
- */
-public class ExitedEvent implements ICDIExitedEvent {
-
- MIEvent event;
- Session session;
-
- public ExitedEvent(Session s, MIInferiorExitEvent e) {
- session = s;
- event = e;
- }
-
- public ExitedEvent(Session s, MIInferiorSignalExitEvent e) {
- session = s;
- event = e;
- }
-
- public ExitedEvent(Session s, MIGDBExitEvent e) {
- session = s;
- event = e;
- }
-
- /**
- * @see org.eclipse.cdt.debug.core.cdi.event.ICDIExitedEvent#getExitInfo()
- */
- public ICDISessionObject getReason() {
- if (event instanceof MIInferiorExitEvent) {
- return new ExitInfo(session, (MIInferiorExitEvent)event);
- } else if (event instanceof MIInferiorSignalExitEvent) {
- return new SignalExitInfo(session, (MIInferiorSignalExitEvent)event);
- }
- return session;
- }
-
- /**
- * @see org.eclipse.cdt.debug.core.cdi.event.ICDIEvent#getSource()
- */
- public ICDIObject getSource() {
- Target target = session.getTarget(event.getMISession());
- return target;
- }
-
-}
diff --git a/debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/event/MemoryChangedEvent.java b/debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/event/MemoryChangedEvent.java
deleted file mode 100644
index 508e30f735e..00000000000
--- a/debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/event/MemoryChangedEvent.java
+++ /dev/null
@@ -1,59 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.mi.core.cdi.event;
-
-import java.math.BigInteger;
-import java.util.ArrayList;
-import java.util.List;
-
-import org.eclipse.cdt.debug.core.cdi.event.ICDIMemoryChangedEvent;
-import org.eclipse.cdt.debug.core.cdi.model.ICDIObject;
-import org.eclipse.cdt.debug.mi.core.cdi.Session;
-import org.eclipse.cdt.debug.mi.core.cdi.model.MemoryBlock;
-import org.eclipse.cdt.debug.mi.core.event.MIMemoryChangedEvent;
-
-/**
- */
-public class MemoryChangedEvent implements ICDIMemoryChangedEvent {
-
- Session session;
- MemoryBlock source;
- MIMemoryChangedEvent miMem;
-
- public MemoryChangedEvent(Session s, MemoryBlock block, MIMemoryChangedEvent mem) {
- session = s;
- source = block;
- miMem = mem;
- }
-
- /**
- * @see org.eclipse.cdt.debug.core.cdi.event.ICDIEvent#getAddresses()
- */
- public BigInteger[] getAddresses() {
- /* But only returns the address that are in the block. */
- BigInteger[] mi_addresses = miMem.getAddresses();
- List aList = new ArrayList(mi_addresses.length);
- for (int i = 0; i < mi_addresses.length; i++) {
- if (source.contains(mi_addresses[i])) {
- aList.add(mi_addresses[i]);
- }
- }
- return (BigInteger[]) aList.toArray(new BigInteger[aList.size()]);
- }
-
- /**
- * @see org.eclipse.cdt.debug.core.cdi.event.ICDIEvent#getSource()
- */
- public ICDIObject getSource() {
- return source;
- }
-
-}
diff --git a/debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/event/ResumedEvent.java b/debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/event/ResumedEvent.java
deleted file mode 100644
index 1f95cffcfc9..00000000000
--- a/debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/event/ResumedEvent.java
+++ /dev/null
@@ -1,81 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.mi.core.cdi.event;
-
-import org.eclipse.cdt.debug.core.cdi.event.ICDIResumedEvent;
-import org.eclipse.cdt.debug.core.cdi.model.ICDIObject;
-import org.eclipse.cdt.debug.mi.core.cdi.Session;
-import org.eclipse.cdt.debug.mi.core.cdi.model.Target;
-import org.eclipse.cdt.debug.mi.core.event.MIRunningEvent;
-
-/**
- */
-public class ResumedEvent implements ICDIResumedEvent {
-
- Session session;
- MIRunningEvent event;
-
- public ResumedEvent(Session s, MIRunningEvent e) {
- session = s;
- event = e;
- }
-
- /**
- * @see org.eclipse.cdt.debug.core.cdi.event.ICDIEvent#getSource()
- */
- public ICDIObject getSource() {
- // We can send the target as the Source. CDI
- // Will assume that all threads are supended for this.
- // This is true for gdb when it suspend the inferior
- // all threads are suspended.
- Target target = session.getTarget(event.getMISession());
- return target;
- }
-
- /**
- * @see org.eclipse.cdt.debug.core.cdi.event.ICDIResumedEvent#getType()
- */
- public int getType() {
- MIRunningEvent running = event;
- int type = running.getType();
- int cdiType = 0;
- switch (type) {
- case MIRunningEvent.CONTINUE:
- cdiType = ICDIResumedEvent.CONTINUE;
- break;
-
- case MIRunningEvent.UNTIL:
- case MIRunningEvent.NEXT:
- cdiType = ICDIResumedEvent.STEP_OVER;
- break;
-
- case MIRunningEvent.NEXTI:
- cdiType = ICDIResumedEvent.STEP_OVER_INSTRUCTION;
- break;
-
- case MIRunningEvent.STEP:
- cdiType = ICDIResumedEvent.STEP_INTO;
- break;
-
- case MIRunningEvent.STEPI:
- cdiType = ICDIResumedEvent.STEP_INTO_INSTRUCTION;
- break;
-
- case MIRunningEvent.RETURN:
- case MIRunningEvent.FINISH:
- cdiType = ICDIResumedEvent.STEP_RETURN;
- break;
-
- }
- return cdiType;
- }
-
-}
diff --git a/debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/event/SuspendedEvent.java b/debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/event/SuspendedEvent.java
deleted file mode 100644
index 9deb409de15..00000000000
--- a/debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/event/SuspendedEvent.java
+++ /dev/null
@@ -1,84 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.mi.core.cdi.event;
-
-import org.eclipse.cdt.debug.core.cdi.ICDISessionObject;
-import org.eclipse.cdt.debug.core.cdi.event.ICDISuspendedEvent;
-import org.eclipse.cdt.debug.core.cdi.model.ICDIObject;
-import org.eclipse.cdt.debug.mi.core.cdi.BreakpointHit;
-import org.eclipse.cdt.debug.mi.core.cdi.EndSteppingRange;
-import org.eclipse.cdt.debug.mi.core.cdi.ErrorInfo;
-import org.eclipse.cdt.debug.mi.core.cdi.FunctionFinished;
-import org.eclipse.cdt.debug.mi.core.cdi.Session;
-import org.eclipse.cdt.debug.mi.core.cdi.SharedLibraryEvent;
-import org.eclipse.cdt.debug.mi.core.cdi.SignalReceived;
-import org.eclipse.cdt.debug.mi.core.cdi.WatchpointScope;
-import org.eclipse.cdt.debug.mi.core.cdi.WatchpointTrigger;
-import org.eclipse.cdt.debug.mi.core.cdi.model.Target;
-import org.eclipse.cdt.debug.mi.core.event.MIBreakpointHitEvent;
-import org.eclipse.cdt.debug.mi.core.event.MIErrorEvent;
-import org.eclipse.cdt.debug.mi.core.event.MIEvent;
-import org.eclipse.cdt.debug.mi.core.event.MIFunctionFinishedEvent;
-import org.eclipse.cdt.debug.mi.core.event.MILocationReachedEvent;
-import org.eclipse.cdt.debug.mi.core.event.MISharedLibEvent;
-import org.eclipse.cdt.debug.mi.core.event.MISignalEvent;
-import org.eclipse.cdt.debug.mi.core.event.MISteppingRangeEvent;
-import org.eclipse.cdt.debug.mi.core.event.MIWatchpointScopeEvent;
-import org.eclipse.cdt.debug.mi.core.event.MIWatchpointTriggerEvent;
-
-/**
- *
- */
-public class SuspendedEvent implements ICDISuspendedEvent {
-
- MIEvent event;
- Session session;
-
- public SuspendedEvent(Session s, MIEvent e) {
- session = s;
- event = e;
- }
-
- public ICDISessionObject getReason() {
- if (event instanceof MIBreakpointHitEvent) {
- return new BreakpointHit(session, (MIBreakpointHitEvent)event);
- } else if (event instanceof MIWatchpointTriggerEvent) {
- return new WatchpointTrigger(session, (MIWatchpointTriggerEvent)event);
- } else if (event instanceof MIWatchpointScopeEvent) {
- return new WatchpointScope(session, (MIWatchpointScopeEvent)event);
- } else if (event instanceof MISteppingRangeEvent) {
- return new EndSteppingRange(session);
- } else if (event instanceof MISignalEvent) {
- return new SignalReceived(session, (MISignalEvent)event);
- } else if (event instanceof MILocationReachedEvent) {
- return new EndSteppingRange(session);
- } else if (event instanceof MIFunctionFinishedEvent) {
- return new FunctionFinished(session, (MIFunctionFinishedEvent)event);
- } else if (event instanceof MIErrorEvent) {
- return new ErrorInfo(session, (MIErrorEvent)event);
- } else if (event instanceof MISharedLibEvent) {
- return new SharedLibraryEvent(session);
- }
- return session;
- }
-
- /**
- * @see org.eclipse.cdt.debug.core.cdi.event.ICDIEvent#getSource()
- */
- public ICDIObject getSource() {
- Target target = session.getTarget(event.getMISession());
- // We can send the target as the Source. CDI
- // Will assume that all threads are supended for this.
- // This is true for gdb when it suspend the inferior
- // all threads are suspended.
- return target;
- }
-}
diff --git a/debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/model/AddressBreakpoint.java b/debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/model/AddressBreakpoint.java
deleted file mode 100644
index bbdf0ba3d1a..00000000000
--- a/debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/model/AddressBreakpoint.java
+++ /dev/null
@@ -1,26 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2005 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.cdt.debug.mi.core.cdi.model;
-
-import org.eclipse.cdt.debug.core.cdi.ICDICondition;
-import org.eclipse.cdt.debug.core.cdi.ICDILocation;
-import org.eclipse.cdt.debug.core.cdi.model.ICDIAddressBreakpoint;
-
-public class AddressBreakpoint extends LocationBreakpoint implements
- ICDIAddressBreakpoint {
-
- public AddressBreakpoint(Target target, int kind, ICDILocation loc,
- ICDICondition cond, boolean enabled) {
- super(target, kind, loc, cond, enabled);
- }
-
-}
diff --git a/debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/model/AddressLocation.java b/debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/model/AddressLocation.java
deleted file mode 100644
index 182662dd983..00000000000
--- a/debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/model/AddressLocation.java
+++ /dev/null
@@ -1,25 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2005 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.cdt.debug.mi.core.cdi.model;
-
-import java.math.BigInteger;
-
-import org.eclipse.cdt.debug.core.cdi.ICDIAddressLocation;
-import org.eclipse.cdt.debug.mi.core.cdi.Location;
-
-public class AddressLocation extends Location implements ICDIAddressLocation {
-
- public AddressLocation(BigInteger address) {
- super(address);
- }
-
-}
diff --git a/debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/model/Argument.java b/debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/model/Argument.java
deleted file mode 100644
index c8925b009df..00000000000
--- a/debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/model/Argument.java
+++ /dev/null
@@ -1,37 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.mi.core.cdi.model;
-
-import org.eclipse.cdt.debug.core.cdi.model.ICDIArgument;
-import org.eclipse.cdt.debug.mi.core.command.MIVarCreate;
-import org.eclipse.cdt.debug.mi.core.output.MIVar;
-
-/**
- */
-public class Argument extends Variable implements ICDIArgument {
-
- public Argument(Target target, Thread thread, StackFrame frame,
- String n, String q, int pos, int depth, MIVar v) {
- super(target, thread, frame, n, q, pos, depth, v);
- }
-
- public Argument(ArgumentDescriptor obj, MIVarCreate var) {
- super(obj, var);
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.cdt.debug.mi.core.cdi.model.Variable#createVariable(org.eclipse.cdt.debug.mi.core.cdi.model.Target, org.eclipse.cdt.debug.core.cdi.model.ICDIThread, org.eclipse.cdt.debug.core.cdi.model.ICDIStackFrame, java.lang.String, java.lang.String, int, int, org.eclipse.cdt.debug.mi.core.output.MIVar)
- */
- protected Variable createVariable(Target target, Thread thread, StackFrame frame, String name, String fullName, int pos, int depth, MIVar miVar) {
- return new Argument(target, thread, frame, name, fullName, pos, depth, miVar);
- }
-
-}
diff --git a/debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/model/ArgumentDescriptor.java b/debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/model/ArgumentDescriptor.java
deleted file mode 100644
index ae1787bc789..00000000000
--- a/debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/model/ArgumentDescriptor.java
+++ /dev/null
@@ -1,25 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.cdt.debug.mi.core.cdi.model;
-
-import org.eclipse.cdt.debug.core.cdi.model.ICDIArgumentDescriptor;
-
-/**
- */
-public class ArgumentDescriptor extends LocalVariableDescriptor implements ICDIArgumentDescriptor {
-
- public ArgumentDescriptor(Target target, Thread thread, StackFrame frame, String n, String fn,
- int pos, int depth) {
- super(target, thread, frame, n, fn, pos, depth);
- }
-
-}
diff --git a/debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/model/Breakpoint.java b/debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/model/Breakpoint.java
deleted file mode 100644
index 8937a102699..00000000000
--- a/debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/model/Breakpoint.java
+++ /dev/null
@@ -1,128 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2005 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.mi.core.cdi.model;
-
-import java.util.ArrayList;
-import java.util.List;
-
-import org.eclipse.cdt.debug.core.cdi.CDIException;
-import org.eclipse.cdt.debug.core.cdi.ICDICondition;
-import org.eclipse.cdt.debug.core.cdi.model.ICDIBreakpoint;
-import org.eclipse.cdt.debug.mi.core.cdi.BreakpointManager;
-import org.eclipse.cdt.debug.mi.core.cdi.Condition;
-import org.eclipse.cdt.debug.mi.core.cdi.Session;
-import org.eclipse.cdt.debug.mi.core.output.MIBreakpoint;
-
-/**
- */
-public abstract class Breakpoint extends CObject implements ICDIBreakpoint {
-
- ICDICondition condition;
- MIBreakpoint[] miBreakpoints;
- int type;
- boolean enable;
-
- public Breakpoint(Target target, int kind, ICDICondition cond, boolean enabled) {
- super(target);
- type = kind;
- condition = cond;
- enable = enabled;
- }
-
- public MIBreakpoint[] getMIBreakpoints() {
- return miBreakpoints;
- }
-
- public void setMIBreakpoints(MIBreakpoint[] newMIBreakpoints) {
- miBreakpoints = newMIBreakpoints;
- }
-
- public boolean isDeferred() {
- return (miBreakpoints == null || miBreakpoints.length == 0);
- }
-
- /**
- * @see org.eclipse.cdt.debug.core.cdi.ICDIBreakpoint#getCondition()
- */
- public ICDICondition getCondition() throws CDIException {
- if (condition == null) {
- if (miBreakpoints != null && miBreakpoints.length > 0) {
- List list = new ArrayList(miBreakpoints.length);
- for (int i = 0; i < miBreakpoints.length; i++) {
- String tid = miBreakpoints[i].getThreadId();
- if (tid != null && tid.length() > 0) {
- list.add(miBreakpoints[i].getThreadId());
- }
- }
- String[] tids = (String[]) list.toArray(new String[list.size()]);
- int icount = miBreakpoints[0].getIgnoreCount();
- String exp = miBreakpoints[0].getCondition();
- condition = new Condition(icount, exp, tids);
- } else {
- condition = new Condition(0, new String(), null);
- }
- }
- return condition;
- }
-
- /**
- * @see org.eclipse.cdt.debug.core.cdi.ICDIBreakpoint#isEnabled()
- */
- public boolean isEnabled() throws CDIException {
- return enable;
- }
-
- /**
- * @see org.eclipse.cdt.debug.core.cdi.ICDIBreakpoint#isHardware()
- */
- public boolean isHardware() {
- return (type == ICDIBreakpoint.HARDWARE);
- }
-
- /**
- * @see org.eclipse.cdt.debug.core.cdi.ICDIBreakpoint#isTemporary()
- */
- public boolean isTemporary() {
- return (type == ICDIBreakpoint.TEMPORARY);
- }
-
- /**
- * @see org.eclipse.cdt.debug.core.cdi.ICDIBreakpoint#setCondition(ICDICondition)
- */
- public void setCondition(ICDICondition newCondition) throws CDIException {
- Session session = (Session)getTarget().getSession();
- BreakpointManager mgr = session.getBreakpointManager();
- mgr.setCondition(this, newCondition);
- setCondition0(newCondition);
- }
-
- public void setCondition0(ICDICondition newCondition) {
- condition = newCondition;
- }
-
- /**
- * @see org.eclipse.cdt.debug.core.cdi.ICDIBreakpoint#setEnabled(boolean)
- */
- public void setEnabled(boolean on) throws CDIException {
- Session session = (Session)getTarget().getSession();
- BreakpointManager mgr = session.getBreakpointManager();
- if (on == false && isEnabled() == true) {
- mgr.disableBreakpoint(this);
- } else if (on == true && isEnabled() == false) {
- mgr.enableBreakpoint(this);
- }
- }
-
- public void setEnabled0(boolean on) {
- enable = on;
- }
-
-}
diff --git a/debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/model/CObject.java b/debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/model/CObject.java
deleted file mode 100644
index a81c240a0e7..00000000000
--- a/debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/model/CObject.java
+++ /dev/null
@@ -1,33 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.mi.core.cdi.model;
-
-import org.eclipse.cdt.debug.core.cdi.model.ICDIObject;
-import org.eclipse.cdt.debug.core.cdi.model.ICDITarget;
-
-/**
- */
-public class CObject implements ICDIObject {
-
- protected Target fTarget;
-
- public CObject(Target t) {
- fTarget = t;
- }
-
- /**
- * @see org.eclipse.cdt.debug.core.cdi.model.ICDIObject#getTarget()
- */
- public ICDITarget getTarget() {
- return fTarget;
- }
-
-}
diff --git a/debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/model/CoreFileConfiguration.java b/debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/model/CoreFileConfiguration.java
deleted file mode 100644
index 11b2d0f765e..00000000000
--- a/debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/model/CoreFileConfiguration.java
+++ /dev/null
@@ -1,94 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.mi.core.cdi.model;
-
-import org.eclipse.cdt.debug.core.cdi.model.ICDITargetConfiguration;
-
-public class CoreFileConfiguration extends CObject implements ICDITargetConfiguration {
-
- /**
- * @param t
- */
- public CoreFileConfiguration(Target t) {
- super(t);
- }
-
- public boolean supportsTerminate() {
- return true;
- }
-
- public boolean supportsDisconnect() {
- return false;
- }
-
- public boolean supportsRestart() {
- return false;
- }
-
- public boolean supportsStepping() {
- return false;
- }
-
- public boolean supportsInstructionStepping() {
- return false;
- }
-
- public boolean supportsBreakpoints() {
- return false;
- }
-
- public boolean supportsRegisters() {
- return true;
- }
-
- public boolean supportsRegisterModification() {
- return false;
- }
-
- public boolean supportsMemoryRetrieval() {
- return true;
- }
-
- public boolean supportsMemoryModification() {
- return false;
- }
-
- public boolean supportsExpressionEvaluation() {
- return true;
- }
- /**
- * @see org.eclipse.cdt.debug.core.cdi.ICDIConfiguration#supportsResume()
- */
- public boolean supportsResume() {
- return false;
- }
-
- /**
- * @see org.eclipse.cdt.debug.core.cdi.ICDIConfiguration#supportsSuspend()
- */
- public boolean supportsSuspend() {
- return false;
- }
-
- /**
- * @see org.eclipse.cdt.debug.core.cdi.ICDIConfiguration#supportsSharedLibrary()
- */
- public boolean supportsSharedLibrary() {
- return true;
- }
-
- /**
- * @see org.eclipse.cdt.debug.core.cdi.ICDIConfiguration#terminateSessionOnExit()
- */
- public boolean terminateSessionOnExit() {
- return true;
- }
-}
diff --git a/debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/model/Exceptionpoint.java b/debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/model/Exceptionpoint.java
deleted file mode 100644
index 58fdf867f46..00000000000
--- a/debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/model/Exceptionpoint.java
+++ /dev/null
@@ -1,54 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2002, 2005 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.cdt.debug.mi.core.cdi.model;
-
-import org.eclipse.cdt.debug.core.cdi.ICDICondition;
-import org.eclipse.cdt.debug.core.cdi.model.ICDIBreakpoint;
-import org.eclipse.cdt.debug.core.cdi.model.ICDIExceptionpoint;
-
-/**
- * Exceptionpoint
- */
-public class Exceptionpoint extends Breakpoint implements ICDIExceptionpoint {
-
- String fClazz;
- boolean fStopOnThrow;
- boolean fStopOnCatch;
-
- /**
- */
- public Exceptionpoint(Target target, String clazz, boolean stopOnThrow, boolean stopOnCatch, ICDICondition cond, boolean enabled) {
- super(target, ICDIBreakpoint.REGULAR, cond, enabled);
- fClazz = clazz;
- fStopOnThrow = stopOnThrow;
- fStopOnCatch = stopOnCatch;
- }
-
- public String getExceptionName() {
- return fClazz;
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.cdt.debug.core.cdi.model.ICDIExceptionpoint#isStopOnThrow()
- */
- public boolean isStopOnThrow() {
- return fStopOnThrow;
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.cdt.debug.core.cdi.model.ICDIExceptionpoint#isStopOnCatch()
- */
- public boolean isStopOnCatch() {
- return fStopOnCatch;
- }
-
-}
diff --git a/debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/model/Expression.java b/debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/model/Expression.java
deleted file mode 100644
index 8a0df26e4b8..00000000000
--- a/debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/model/Expression.java
+++ /dev/null
@@ -1,127 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.mi.core.cdi.model;
-
-import org.eclipse.cdt.debug.core.cdi.CDIException;
-import org.eclipse.cdt.debug.core.cdi.model.ICDIExpression;
-import org.eclipse.cdt.debug.core.cdi.model.ICDIStackFrame;
-import org.eclipse.cdt.debug.core.cdi.model.ICDIValue;
-import org.eclipse.cdt.debug.core.cdi.model.type.ICDIType;
-import org.eclipse.cdt.debug.mi.core.cdi.ExpressionManager;
-import org.eclipse.cdt.debug.mi.core.cdi.Session;
-import org.eclipse.cdt.debug.mi.core.cdi.SourceManager;
-import org.eclipse.cdt.debug.mi.core.cdi.model.type.IncompleteType;
-import org.eclipse.cdt.debug.mi.core.cdi.model.type.Type;
-
-
-/**
- */
-public class Expression extends CObject implements ICDIExpression {
-
- private static int ID_COUNT = 0;
- private int id;
- String fExpression;
- Type fType;
- Variable fVariable;
- ICDIStackFrame fContext;
-
- public Expression(Target target, String ex) {
- super(target);
- fExpression = ex;
- id = ++ID_COUNT;
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.cdt.debug.core.cdi.model.ICDIExpression#getExpressionText()
- */
- public String getExpressionText() {
- return fExpression;
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.cdt.debug.core.cdi.model.ICDIExpression#equals(org.eclipse.cdt.debug.core.cdi.model.ICDIExpression)
- */
- public boolean equals(ICDIExpression obj) {
- if (obj instanceof Expression) {
- Expression other = (Expression)obj;
- return other.id == id;
- }
- return false;
- }
-
- /**
- * @see org.eclipse.cdt.debug.core.cdi.model.ICDIVariable#getType()
- */
- public ICDIType getType(ICDIStackFrame frame) throws CDIException {
- Type type = null;
- Target target = (Target)getTarget();
- Session session = (Session) (target.getSession());
- SourceManager sourceMgr = session.getSourceManager();
- String nametype = sourceMgr.getTypeNameFromVariable((StackFrame)frame, getExpressionText());
- try {
- type = sourceMgr.getType(target, nametype);
- } catch (CDIException e) {
- // Try with ptype.
- try {
- String ptype = sourceMgr.getDetailTypeName(target, nametype);
- type = sourceMgr.getType(target, ptype);
- } catch (CDIException ex) {
- // Some version of gdb does not work with the name of the class
- // ex: class data foo --> ptype data --> fails
- // ex: class data foo --> ptype foo --> succeed
- try {
- String ptype = sourceMgr.getDetailTypeNameFromVariable((StackFrame)frame, getExpressionText());
- type = sourceMgr.getType(target, ptype);
- } catch (CDIException e2) {
- // give up.
- }
- }
- }
- if (type == null) {
- type = new IncompleteType(target, nametype);
- }
-
- return type;
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.cdt.debug.core.cdi.model.ICDIExpression#getValue(org.eclipse.cdt.debug.core.cdi.model.ICDIStackFrame)
- */
- public ICDIValue getValue(ICDIStackFrame context) throws CDIException {
- Session session = (Session)getTarget().getSession();
- ExpressionManager mgr = session.getExpressionManager();
- if (fVariable != null && fContext != null && !context.equals(fContext))
- { // Get rid of the underlying variable if the context has changed.
- // This is defensive, in practice each stack frame has it's own
- // list of expressions.
- mgr.deleteVariable(fVariable);
- fVariable = null;
- }
- if (fVariable == null)
- { // Reuse the variable so we don't have to ask gdb to create another one. Bug 150565.
- fVariable = mgr.createVariable((StackFrame)context, getExpressionText());
- }
- fContext = context;
- return fVariable.getValue();
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.cdt.debug.core.cdi.model.ICDIExpression#dispose()
- */
- public void dispose() throws CDIException {
- Session session = (Session)getTarget().getSession();
- ExpressionManager mgr = session.getExpressionManager();
- mgr.destroyExpressions((Target)getTarget(), new Expression[] {this});
- if (fVariable != null)
- mgr.deleteVariable(fVariable);
- }
-
-}
diff --git a/debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/model/FunctionBreakpoint.java b/debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/model/FunctionBreakpoint.java
deleted file mode 100644
index ef63ae72e8e..00000000000
--- a/debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/model/FunctionBreakpoint.java
+++ /dev/null
@@ -1,26 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2005 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.cdt.debug.mi.core.cdi.model;
-
-import org.eclipse.cdt.debug.core.cdi.ICDICondition;
-import org.eclipse.cdt.debug.core.cdi.ICDILocation;
-import org.eclipse.cdt.debug.core.cdi.model.ICDIFunctionBreakpoint;
-
-public class FunctionBreakpoint extends LocationBreakpoint implements
- ICDIFunctionBreakpoint {
-
- public FunctionBreakpoint(Target target, int kind, ICDILocation loc,
- ICDICondition cond, boolean enabled) {
- super(target, kind, loc, cond, enabled);
- }
-
-}
diff --git a/debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/model/FunctionLocation.java b/debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/model/FunctionLocation.java
deleted file mode 100644
index 3d0eee9c3fe..00000000000
--- a/debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/model/FunctionLocation.java
+++ /dev/null
@@ -1,23 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2005 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.cdt.debug.mi.core.cdi.model;
-
-
-import org.eclipse.cdt.debug.core.cdi.ICDIFunctionLocation;
-import org.eclipse.cdt.debug.mi.core.cdi.Location;
-
-public class FunctionLocation extends Location implements ICDIFunctionLocation {
-
- public FunctionLocation(String file, String function) {
- super(file, function);
- }
-}
diff --git a/debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/model/GlobalVariable.java b/debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/model/GlobalVariable.java
deleted file mode 100644
index eac4e223f6b..00000000000
--- a/debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/model/GlobalVariable.java
+++ /dev/null
@@ -1,52 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2002, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.cdt.debug.mi.core.cdi.model;
-
-import org.eclipse.cdt.debug.core.cdi.model.ICDIGlobalVariable;
-import org.eclipse.cdt.debug.mi.core.command.MIVarCreate;
-import org.eclipse.cdt.debug.mi.core.output.MIVar;
-
-/**
- * GlobalVariable
- */
-public class GlobalVariable extends Variable implements ICDIGlobalVariable {
-
-
- /**
- * @param obj
- * @param v
- */
- public GlobalVariable(VariableDescriptor obj, MIVarCreate v) {
- super(obj, v);
- }
-
- /**
- * @param target
- * @param n
- * @param q
- * @param thread
- * @param stack
- * @param pos
- * @param depth
- * @param v
- */
- public GlobalVariable(Target target, Thread thread, StackFrame frame, String n, String q, int pos, int depth, MIVar miVar) {
- super(target, thread, frame, n, q, pos, depth, miVar);
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.cdt.debug.mi.core.cdi.model.Variable#createVariable(org.eclipse.cdt.debug.mi.core.cdi.model.Target, java.lang.String, java.lang.String, org.eclipse.cdt.debug.core.cdi.model.ICDIThread, org.eclipse.cdt.debug.core.cdi.model.ICDIStackFrame, int, int, org.eclipse.cdt.debug.mi.core.output.MIVar)
- */
- protected Variable createVariable(Target target, Thread thread, StackFrame frame, String name, String fullName, int pos, int depth, MIVar miVar) {
- return new GlobalVariable(target, thread, frame, name, fullName, pos, depth, miVar);
- }
-}
diff --git a/debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/model/GlobalVariableDescriptor.java b/debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/model/GlobalVariableDescriptor.java
deleted file mode 100644
index 62fde45a0d4..00000000000
--- a/debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/model/GlobalVariableDescriptor.java
+++ /dev/null
@@ -1,35 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2002, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.cdt.debug.mi.core.cdi.model;
-
-import org.eclipse.cdt.debug.core.cdi.model.ICDIGlobalVariableDescriptor;
-
-/**
- * GlobalVariableDescriptor
- */
-public class GlobalVariableDescriptor extends VariableDescriptor implements ICDIGlobalVariableDescriptor {
-
- /**
- * @param target
- * @param thread
- * @param stack
- * @param n
- * @param fn
- * @param pos
- * @param depth
- */
- public GlobalVariableDescriptor(Target target, Thread thread,
- StackFrame stack, String n, String fn, int pos, int depth) {
- super(target, thread, stack, n, fn, pos, depth);
- }
-
-}
diff --git a/debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/model/Instruction.java b/debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/model/Instruction.java
deleted file mode 100644
index bf0b71c009b..00000000000
--- a/debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/model/Instruction.java
+++ /dev/null
@@ -1,70 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.mi.core.cdi.model;
-
-import java.math.BigInteger;
-
-import org.eclipse.cdt.debug.core.cdi.model.ICDIInstruction;
-import org.eclipse.cdt.debug.mi.core.MIFormat;
-import org.eclipse.cdt.debug.mi.core.output.MIAsm;
-
-/**
- */
-public class Instruction extends CObject implements ICDIInstruction {
-
- MIAsm asm;
-
- public Instruction(Target target, MIAsm a) {
- super(target);
- asm = a;
- }
- /**
- * @see org.eclipse.cdt.debug.core.cdi.model.ICDIInstruction#getAdress()
- */
- public BigInteger getAdress() {
- return MIFormat.getBigInteger(asm.getAddress());
- }
-
- /**
- * @see org.eclipse.cdt.debug.core.cdi.model.ICDIInstruction#getFuntionName()
- */
- public String getFuntionName() {
- return asm.getFunction();
- }
-
- /**
- * @see org.eclipse.cdt.debug.core.cdi.model.ICDIInstruction#getInstruction()
- */
- public String getInstruction() {
- return asm.getInstruction();
- }
-
- /**
- * @see org.eclipse.cdt.debug.core.cdi.model.ICDIInstruction#getOffset()
- */
- public long getOffset() {
- return asm.getOffset();
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.cdt.debug.core.cdi.model.ICDIInstruction#getArgs()
- */
- public String getArgs() {
- return asm.getArgs();
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.cdt.debug.core.cdi.model.ICDIInstruction#getOpcode()
- */
- public String getOpcode() {
- return asm.getOpcode();
- }
-}
diff --git a/debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/model/LineBreakpoint.java b/debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/model/LineBreakpoint.java
deleted file mode 100644
index 56e4de73191..00000000000
--- a/debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/model/LineBreakpoint.java
+++ /dev/null
@@ -1,24 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2005 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.cdt.debug.mi.core.cdi.model;
-
-import org.eclipse.cdt.debug.core.cdi.ICDICondition;
-import org.eclipse.cdt.debug.core.cdi.ICDILineLocation;
-import org.eclipse.cdt.debug.core.cdi.model.ICDILineBreakpoint;
-
-public class LineBreakpoint extends LocationBreakpoint implements ICDILineBreakpoint {
-
- public LineBreakpoint(Target target, int kind, ICDILineLocation loc, ICDICondition cond, boolean enabled) {
- super(target, kind, loc, cond, enabled);
- }
-
-}
diff --git a/debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/model/LocalVariable.java b/debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/model/LocalVariable.java
deleted file mode 100644
index 016d67edc60..00000000000
--- a/debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/model/LocalVariable.java
+++ /dev/null
@@ -1,44 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2002, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.cdt.debug.mi.core.cdi.model;
-
-import org.eclipse.cdt.debug.core.cdi.model.ICDILocalVariable;
-import org.eclipse.cdt.debug.mi.core.command.MIVarCreate;
-import org.eclipse.cdt.debug.mi.core.output.MIVar;
-
-/**
- * LocalVariable
- */
-public class LocalVariable extends Variable implements ICDILocalVariable {
-
- /**
- * @param obj
- * @param v
- */
- public LocalVariable(LocalVariableDescriptor obj, MIVarCreate v) {
- super(obj, v);
- }
-
- public LocalVariable(Target target, Thread thread, StackFrame frame, String n, String q,
- int pos, int depth, MIVar miVar) {
- super(target, thread, frame, n, q, pos, depth, miVar);
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.cdt.debug.mi.core.cdi.model.Variable#createVariable(org.eclipse.cdt.debug.mi.core.cdi.model.Target, java.lang.String, java.lang.String, org.eclipse.cdt.debug.core.cdi.model.ICDIThread, org.eclipse.cdt.debug.core.cdi.model.ICDIStackFrame, int, int, org.eclipse.cdt.debug.mi.core.output.MIVar)
- */
- protected Variable createVariable(Target target, Thread thread, StackFrame frame, String name,
- String fullName, int pos, int depth, MIVar miVar) {
- return new LocalVariable(target, thread, frame, name, fullName, pos, depth, miVar);
- }
-
-}
diff --git a/debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/model/LocalVariableDescriptor.java b/debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/model/LocalVariableDescriptor.java
deleted file mode 100644
index b3f03cf4068..00000000000
--- a/debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/model/LocalVariableDescriptor.java
+++ /dev/null
@@ -1,34 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2002, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.cdt.debug.mi.core.cdi.model;
-
-import org.eclipse.cdt.debug.core.cdi.model.ICDILocalVariableDescriptor;
-
-/**
- * LocalVariableDescriptor
- */
-public class LocalVariableDescriptor extends VariableDescriptor implements
- ICDILocalVariableDescriptor {
-
- /**
- * @param target
- * @param n
- * @param fn
- * @param stack
- * @param pos
- * @param depth
- */
- public LocalVariableDescriptor(Target target, Thread thread, StackFrame frame, String n, String fn, int pos, int depth) {
- super(target, thread, frame, n, fn, pos, depth);
- }
-
-}
diff --git a/debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/model/LocationBreakpoint.java b/debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/model/LocationBreakpoint.java
deleted file mode 100644
index 8bb4fbedcd0..00000000000
--- a/debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/model/LocationBreakpoint.java
+++ /dev/null
@@ -1,87 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2005 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.cdt.debug.mi.core.cdi.model;
-
-import java.math.BigInteger;
-
-import org.eclipse.cdt.debug.core.cdi.ICDIAddressLocation;
-import org.eclipse.cdt.debug.core.cdi.ICDICondition;
-import org.eclipse.cdt.debug.core.cdi.ICDIFunctionLocation;
-import org.eclipse.cdt.debug.core.cdi.ICDILineLocation;
-import org.eclipse.cdt.debug.core.cdi.ICDILocation;
-import org.eclipse.cdt.debug.core.cdi.ICDILocator;
-import org.eclipse.cdt.debug.core.cdi.model.ICDIBreakpoint;
-import org.eclipse.cdt.debug.mi.core.MIFormat;
-import org.eclipse.cdt.debug.mi.core.cdi.Locator;
-
-public abstract class LocationBreakpoint extends Breakpoint implements ICDIBreakpoint {
-
- ICDILocation fLocation;
-
- public LocationBreakpoint(Target target, int kind, ICDILocation loc, ICDICondition cond, boolean enabled) {
- super(target, kind, cond, enabled);
- fLocation = loc;
- }
-
- public int getLineNumber() {
- if (miBreakpoints != null && miBreakpoints.length > 0) {
- return miBreakpoints[0].getLine();
- } else if (fLocation instanceof ICDILineLocation) {
- return ((ICDILineLocation)fLocation).getLineNumber();
- }
- return 0;
- }
-
- public String getFile() {
- if (miBreakpoints != null && miBreakpoints.length > 0) {
- return miBreakpoints[0].getFile();
- } else if (fLocation instanceof ICDILineLocation) {
- return ((ICDILineLocation)fLocation).getFile();
- } else if (fLocation instanceof ICDIFunctionLocation) {
- return ((ICDIFunctionLocation)fLocation).getFile();
- }
- return null;
- }
-
- public BigInteger getAddress() {
- if (miBreakpoints != null && miBreakpoints.length > 0) {
- BigInteger addr = BigInteger.ZERO;
- String a = miBreakpoints[0].getAddress();
- if (a != null) {
- addr = MIFormat.getBigInteger(a);
- }
- return addr;
- } else if (fLocation instanceof ICDIAddressLocation) {
- return ((ICDIAddressLocation)fLocation).getAddress();
- }
- return null;
- }
-
- public String getFunction() {
- // TODO: We need to review this but for now
- // we need to return what the cdt debug passed us
- // it is necessary when they do the comparison.
- if (fLocation instanceof ICDIFunctionLocation) {
- return ((ICDIFunctionLocation)fLocation).getFunction();
- } else if (miBreakpoints != null && miBreakpoints.length > 0) {
- return miBreakpoints[0].getFunction();
- } /*else if (fLocation instanceof ICDIFunctionLocation) {
- return ((ICDIFunctionLocation)fLocation).getFunction();
- }*/
- return null;
- }
-
- public ICDILocator getLocator() {
- return new Locator(getFile(), getFunction(), getLineNumber(), getAddress());
- }
-
-}
diff --git a/debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/model/MemoryBlock.java b/debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/model/MemoryBlock.java
deleted file mode 100644
index 34f2c36f722..00000000000
--- a/debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/model/MemoryBlock.java
+++ /dev/null
@@ -1,368 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2002, 2005 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.cdt.debug.mi.core.cdi.model;
-
-import java.math.BigInteger;
-
-import org.eclipse.cdt.debug.core.cdi.CDIException;
-import org.eclipse.cdt.debug.core.cdi.model.ICDIMemoryBlock;
-import org.eclipse.cdt.debug.mi.core.MIException;
-import org.eclipse.cdt.debug.mi.core.MIFormat;
-import org.eclipse.cdt.debug.mi.core.MISession;
-import org.eclipse.cdt.debug.mi.core.cdi.CdiResources;
-import org.eclipse.cdt.debug.mi.core.cdi.ExpressionManager;
-import org.eclipse.cdt.debug.mi.core.cdi.MI2CDIException;
-import org.eclipse.cdt.debug.mi.core.cdi.MemoryManager;
-import org.eclipse.cdt.debug.mi.core.cdi.RegisterManager;
-import org.eclipse.cdt.debug.mi.core.cdi.Session;
-import org.eclipse.cdt.debug.mi.core.cdi.VariableManager;
-import org.eclipse.cdt.debug.mi.core.command.CommandFactory;
-import org.eclipse.cdt.debug.mi.core.command.MIDataWriteMemory;
-import org.eclipse.cdt.debug.mi.core.output.MIDataReadMemoryInfo;
-import org.eclipse.cdt.debug.mi.core.output.MIInfo;
-import org.eclipse.cdt.debug.mi.core.output.MIMemory;
-
-/**
- */
-public class MemoryBlock extends CObject implements ICDIMemoryBlock {
-
- String expression;
- boolean frozen;
- boolean dirty;
-
- private MIDataReadMemoryInfo mem;
- private int fWordSize;
- private BigInteger cStartAddress; //cached start address
- private byte[] cBytes; //cached bytes
- private int[] badOffsets;
- private boolean fIsLittleEndian;
-
- public MemoryBlock(Target target, String exp, int wordSize, boolean isLittle, MIDataReadMemoryInfo info) {
- super(target);
- expression = exp;
- fWordSize = wordSize;
- frozen = true;
- fIsLittleEndian = isLittle;
- setMIDataReadMemoryInfo(info);
- }
-
- /**
- * @return the expression use to create the block.
- */
- public String getExpression() {
- return expression;
- }
-
- /**
- * @return the size of each memory word in bytes.
- */
- public int getWordSize() {
- return fWordSize;
- }
-
- /**
- * Reset the internal MIDataReadMemoryInfo. All modifications into mem info should be done
- * using this method
- */
- public void setMIDataReadMemoryInfo(MIDataReadMemoryInfo m) {
- cStartAddress = MIFormat.getBigInteger(m.getAddress());
- cBytes = getBytes(m);
- mem = m;
- }
-
- /**
- * @return the internal MIDataReadMemoryInfo.
- */
- public MIDataReadMemoryInfo getMIDataReadMemoryInfo() {
- return mem;
- }
-
- /**
- * @return true if any address in the array is within the block.
- */
- public boolean contains(BigInteger[] adds) {
- for (int i = 0; i < adds.length; i++) {
- if (contains(adds[i])) {
- return true;
- }
- }
- return false;
- }
-
- /**
- * @return true if the address is within the block.
- */
- public boolean contains(BigInteger addr) {
- BigInteger start = getStartAddress();
- long length = getLength();
- if ( start.compareTo(addr) <= 0 &&
- addr.compareTo(start.add(BigInteger.valueOf(length))) <= 0 )
- {
- return true;
- }
- return false;
- }
-
- /**
- * Use by the EventManager to check fire events when doing refresh().
- */
- public boolean isDirty() {
- return dirty;
- }
-
- /**
- * Use by the EventManager to check fire events when doing refresh().
- */
- public void setDirty(boolean d) {
- dirty = d;
- }
-
- /**
- *
- */
- private byte[] getBytes(MIDataReadMemoryInfo m) {
- byte[] bytes = new byte[0];
-
- // sanity.
- if (m == null) {
- return bytes;
- }
-
- // collect the data
- MIMemory[] miMem = m.getMemories();
- for (int i = 0; i < miMem.length; ++i) {
- long[] data = miMem[i].getData();
- if (data != null && data.length > 0) {
-// int blen = bytes.length;
-// byte[] newBytes = new byte[blen + data.length];
-// System.arraycopy(bytes, 0, newBytes, 0, blen);
-// for (int j = 0; j < data.length; ++j, ++blen) {
-// newBytes[blen] = (byte)data[j];
-// }
-// bytes = newBytes;
- for (int j = 0; j < data.length; ++j) {
- byte[] bs = longToBytes(data[j]);
- // grow the array
- int blen = bytes.length;
- byte[] newBytes = new byte[blen + bs.length];
- System.arraycopy(bytes, 0, newBytes, 0, blen);
- System.arraycopy(bs, 0, newBytes, blen, bs.length);
- bytes = newBytes;
- }
- }
- }
- return bytes;
- }
-
- private int[] getBadOffsets(MIDataReadMemoryInfo m) {
- int[] offsets = new int[0];
-
- // sanity
- if (m == null) {
- return offsets;
- }
-
- // collect the data
- MIMemory[] miMem = m.getMemories();
- for (int i = 0; i < miMem.length; i++) {
- int[] data = miMem[i].getBadOffsets();
- if (data.length > 0) {
- int olen = offsets.length;
- int[] newOffsets = new int[olen + data.length];
- System.arraycopy(offsets, 0, newOffsets, 0, olen);
- System.arraycopy(data, 0, newOffsets, olen, data.length);
- offsets = newOffsets;
- }
- }
- return offsets;
- }
-
- public byte[] getBytes() throws CDIException {
- return cBytes;
- }
-
- /**
- * @see org.eclipse.cdt.debug.core.cdi.model.ICDIMemoryBlock#refresh()
- */
- public void refresh() throws CDIException {
- Target target = (Target)getTarget();
- MemoryManager mgr = ((Session)target.getSession()).getMemoryManager();
- setDirty(true);
- BigInteger[] addresses = mgr.update(this, null);
- // Check if this affects other blocks.
- if (addresses.length > 0) {
- MemoryBlock[] blocks = mgr.getMemoryBlocks(target.getMISession());
- for (int i = 0; i < blocks.length; i++) {
- MemoryBlock block = blocks[i];
- if (! block.equals(this) && block.contains(addresses)) {
- block.setDirty(true);
- mgr.update(block, null);
- }
- }
- }
- }
-
- /**
- * @see org.eclipse.cdt.debug.core.cdi.model.ICDIMemoryBlock#getLength()
- */
- public long getLength() {
- try {
- // use this instead. If the wordSize
- // given does not match the hardware,
- // counting the bytes will be correct.
- return getBytes().length;
- } catch (CDIException e) {
- // ignore.
- }
- return mem.getTotalBytes();
- }
-
- /**
- * @see org.eclipse.cdt.debug.core.cdi.model.ICDIMemoryBlock#getStartAddress()
- */
- public BigInteger getStartAddress() {
- return cStartAddress;
- }
-
- /**
- * @see org.eclipse.cdt.debug.core.cdi.model.ICDIMemoryBlock#isFrozen()
- */
- public boolean isFrozen() {
- return frozen;
- }
-
- /**
- * @see org.eclipse.cdt.debug.core.cdi.model.ICDIMemoryBlock#setFrozen(boolean)
- */
- public void setFrozen(boolean frozen) {
- this.frozen = frozen;
- }
-
- /**
- * @see org.eclipse.cdt.debug.core.cdi.model.ICDIMemoryBlock#setValue(long, byte[])
- */
- public void setValue(long offset, byte[] bytes) throws CDIException {
- if (offset >= getLength() || offset + bytes.length > getLength()) {
- throw new CDIException(CdiResources.getString("cdi.model.MemoryBlock.Bad_Offset")); //$NON-NLS-1$
- }
- MISession miSession = ((Target)getTarget()).getMISession();
- CommandFactory factory = miSession.getCommandFactory();
- for (int i = 0; i < bytes.length; i++) {
- long l = new Byte(bytes[i]).longValue() & 0xff;
- String value = "0x" + Long.toHexString(l); //$NON-NLS-1$
- MIDataWriteMemory mw = factory.createMIDataWriteMemory(offset + i,
- expression, MIFormat.HEXADECIMAL, 1, value);
- try {
- miSession.postCommand(mw);
- MIInfo info = mw.getMIInfo();
- if (info == null) {
- throw new CDIException(CdiResources.getString("cdi.Common.No_answer")); //$NON-NLS-1$
- }
- } catch (MIException e) {
- throw new MI2CDIException(e);
- }
- }
- // If the assign was succesfull fire a MIChangedEvent() via refresh.
- refresh();
-
- Target target = (Target)getTarget();
-
- // If register manager is on autoupdate, update all registers
- RegisterManager regMgr = ((Session)target.getSession()).getRegisterManager();
- if (regMgr.isAutoUpdate()) {
- regMgr.update(target);
- }
-
- // If expression manager is on autoupdate, update all expressions
- ExpressionManager expMgr = ((Session)target.getSession()).getExpressionManager();
- if (expMgr.isAutoUpdate()) {
- expMgr.update(target);
- }
-
- // If variable manager is on autoupdate, update all variables.
- VariableManager varMgr = ((Session)target.getSession()).getVariableManager();
- if (varMgr.isAutoUpdate()) {
- varMgr.update(target);
- }
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.cdt.debug.core.cdi.model.ICDIMemoryBlock#getFlags(int)
- */
- public synchronized byte getFlags(int offset) {
- if (offset < 0 || offset >= getLength()) {
- throw new IndexOutOfBoundsException();
- }
- if (badOffsets == null) {
- badOffsets = getBadOffsets(mem);
- }
- if (badOffsets != null) {
- for (int i = 0; i < badOffsets.length; ++i) {
- if (badOffsets[i] == offset) {
- return 0;
- }
- }
- }
- return VALID;
- }
-
-
- /**
- * We should use the wordSize ... but ...
- * The problem: the user may not have the right wordsize
- * For example on some DSP the user set the wordSize to be 1 byte
- * but in fact GDB is reading 2 bytes.
- * So let do some guessing since the data(long) may have a bigger value then one byte.
- */
- private byte[] longToBytes(long v) {
- // Calculate the number of bytes needed
- int count = 1;
- long value = v;
- for (count = 1; (value /= 0x100) > 0; ++count)
- ;
-
- // Reset the wordSize if incorrect.
- if (fWordSize != count) {
- fWordSize = count;
- }
-
- byte[] bytes = new byte[count];
- if (fIsLittleEndian) {
- for (int i = count - 1; i >= 0; --i) {
- int shift = i * count;
- bytes[i] = (byte)((v >>> shift) & 0xFF);
- }
-// bytes[7] = (byte)((v >>> 56) & 0xFF);
-// bytes[6] = (byte)((v >>> 48) & 0xFF);
-// bytes[5] = (byte)((v >>> 40) & 0xFF);
-// bytes[4] = (byte)((v >>> 32) & 0xFF);
-// bytes[3] = (byte)((v >>> 24) & 0xFF);
-// bytes[2] = (byte)((v >>> 16) & 0xFF);
-// bytes[1] = (byte)((v >>> 8) & 0xFF);
-// bytes[0] = (byte)((v >>> 0) & 0xFF);
- } else {
- for (int i = 0; i < count; ++i) {
- int shift = (count - i - 1) * count;
- bytes[i] = (byte)((v >>> shift) & 0xFF);
- }
-// bytes[0] = (byte)((v >>> 56) & 0xFF);
-// bytes[1] = (byte)((v >>> 48) & 0xFF);
-// bytes[2] = (byte)((v >>> 40) & 0xFF);
-// bytes[3] = (byte)((v >>> 32) & 0xFF);
-// bytes[4] = (byte)((v >>> 24) & 0xFF);
-// bytes[5] = (byte)((v >>> 16) & 0xFF);
-// bytes[6] = (byte)((v >>> 8) & 0xFF);
-// bytes[7] = (byte)((v >>> 0) & 0xFF);
- }
- return bytes;
- }
-}
diff --git a/debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/model/MixedInstruction.java b/debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/model/MixedInstruction.java
deleted file mode 100644
index e12d6b5a1e9..00000000000
--- a/debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/model/MixedInstruction.java
+++ /dev/null
@@ -1,55 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.mi.core.cdi.model;
-
-import org.eclipse.cdt.debug.core.cdi.model.ICDIInstruction;
-import org.eclipse.cdt.debug.core.cdi.model.ICDIMixedInstruction;
-import org.eclipse.cdt.debug.mi.core.output.MIAsm;
-import org.eclipse.cdt.debug.mi.core.output.MISrcAsm;
-
-/**
- */
-public class MixedInstruction extends CObject implements ICDIMixedInstruction {
-
- MISrcAsm srcAsm;
-
- public MixedInstruction (Target target, MISrcAsm a) {
- super(target);
- srcAsm = a;
- }
-
- /**
- * @see org.eclipse.cdt.debug.core.cdi.model.ICDIMixedInstruction#getFileName()
- */
- public String getFileName() {
- return srcAsm.getFile();
- }
-
- /**
- * @see org.eclipse.cdt.debug.core.cdi.model.ICDIMixedInstruction#getInstructions()
- */
- public ICDIInstruction[] getInstructions() {
- MIAsm[] asms = srcAsm.getMIAsms();
- ICDIInstruction[] instructions = new ICDIInstruction[asms.length];
- for (int i = 0; i < asms.length; i++) {
- instructions[i] = new Instruction((Target)getTarget(), asms[i]);
- }
- return instructions;
- }
-
- /**
- * @see org.eclipse.cdt.debug.core.cdi.model.ICDIMixedInstruction#getLineNumber()
- */
- public int getLineNumber() {
- return srcAsm.getLine();
- }
-
-}
diff --git a/debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/model/Register.java b/debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/model/Register.java
deleted file mode 100644
index bbeb3caedbd..00000000000
--- a/debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/model/Register.java
+++ /dev/null
@@ -1,110 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.mi.core.cdi.model;
-
-
-import org.eclipse.cdt.debug.core.cdi.CDIException;
-import org.eclipse.cdt.debug.core.cdi.model.ICDIRegister;
-import org.eclipse.cdt.debug.core.cdi.model.ICDIStackFrame;
-import org.eclipse.cdt.debug.core.cdi.model.ICDITarget;
-import org.eclipse.cdt.debug.core.cdi.model.ICDIValue;
-import org.eclipse.cdt.debug.core.cdi.model.type.ICDIType;
-import org.eclipse.cdt.debug.mi.core.cdi.RegisterManager;
-import org.eclipse.cdt.debug.mi.core.cdi.Session;
-import org.eclipse.cdt.debug.mi.core.command.MIVarCreate;
-import org.eclipse.cdt.debug.mi.core.output.MIVar;
-
-/**
- */
-public class Register extends Variable implements ICDIRegister {
-
- /**
- * @param target
- * @param thread
- * @param frame
- * @param n
- * @param q
- * @param pos
- * @param depth
- * @param v
- */
- public Register(Target target, Thread thread, StackFrame frame,
- String n, String q, int pos, int depth, MIVar miVar) {
- super(target, thread, frame, n, q, pos, depth, miVar);
- }
-
- public Register(RegisterDescriptor obj, MIVarCreate var) {
- super(obj, var);
- }
-
-
- protected void addToTypeCache(String nameType, ICDIType type) throws CDIException {
- Session session = (Session)getTarget().getSession();
- RegisterManager mgr = session.getRegisterManager();
- mgr.addToTypeCache(nameType, type);
- }
-
- protected ICDIType getFromTypeCache(String nameType) throws CDIException {
- Session session = (Session)getTarget().getSession();
- RegisterManager mgr = session.getRegisterManager();
- return mgr.getFromTypeCache(nameType);
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.cdt.debug.mi.core.cdi.model.VariableDescriptor#getFullName()
- */
- public String getFullName() {
- if (fFullName == null) {
- String n = getName();
- if (!n.startsWith("$")) { //$NON-NLS-1$
- fFullName = "$" + n; //$NON-NLS-1$
- } else {
- fFullName = n;
- }
- }
- return fFullName;
- }
-
- protected Variable createVariable(Target target, Thread thread, StackFrame frame, String name, String fullName, int pos, int depth, MIVar miVar) {
- return new Register(target, thread, frame, name, fullName, pos, depth, miVar);
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.cdt.debug.core.cdi.model.ICDIVariable#dispose()
- */
- public void dispose() throws CDIException {
- ICDITarget target = getTarget();
- RegisterManager regMgr = ((Session)target.getSession()).getRegisterManager();
- regMgr.destroyRegister(this);
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.cdt.debug.core.cdi.model.ICDIRegister#getValue(org.eclipse.cdt.debug.core.cdi.model.ICDIStackFrame)
- */
- public ICDIValue getValue(ICDIStackFrame context) throws CDIException {
- Session session = (Session)getTarget().getSession();
- RegisterManager mgr = session.getRegisterManager();
- Variable var = mgr.createShadowRegister(this, (StackFrame)context, getQualifiedName());
- return var.getValue();
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.cdt.debug.core.cdi.model.ICDIRegister#equals(org.eclipse.cdt.debug.core.cdi.model.ICDIRegister)
- */
- public boolean equals(ICDIRegister register) {
- if (register instanceof Register) {
- Register reg = (Register) register;
- return super.equals(reg);
- }
- return super.equals(register);
- }
-
-}
diff --git a/debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/model/RegisterDescriptor.java b/debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/model/RegisterDescriptor.java
deleted file mode 100644
index 7a8f5feb928..00000000000
--- a/debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/model/RegisterDescriptor.java
+++ /dev/null
@@ -1,37 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2002, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.cdt.debug.mi.core.cdi.model;
-
-import org.eclipse.cdt.debug.core.cdi.model.ICDIRegisterDescriptor;
-
-/**
- */
-public class RegisterDescriptor extends VariableDescriptor implements ICDIRegisterDescriptor {
-
-
- public RegisterDescriptor(Target target, Thread thread, StackFrame frame, String name, String fn, int pos, int depth) {
- super(target, thread, frame, name, fn, pos, depth);
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.cdt.debug.mi.core.cdi.model.VariableDescriptor#getFullName()
- */
- public String getFullName() {
- if (fFullName == null) {
- String n = getName();
- if (!n.startsWith("$")) { //$NON-NLS-1$
- fFullName = "$" + n; //$NON-NLS-1$
- }
- }
- return fFullName;
- }
-}
diff --git a/debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/model/RegisterGroup.java b/debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/model/RegisterGroup.java
deleted file mode 100644
index 509928741ee..00000000000
--- a/debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/model/RegisterGroup.java
+++ /dev/null
@@ -1,59 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2002, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.cdt.debug.mi.core.cdi.model;
-
-import org.eclipse.cdt.debug.core.cdi.CDIException;
-import org.eclipse.cdt.debug.core.cdi.model.ICDIRegisterDescriptor;
-import org.eclipse.cdt.debug.core.cdi.model.ICDIRegisterGroup;
-import org.eclipse.cdt.debug.mi.core.cdi.RegisterManager;
-import org.eclipse.cdt.debug.mi.core.cdi.Session;
-
-/**
- * RegisterGroup
- */
-public class RegisterGroup extends CObject implements ICDIRegisterGroup {
-
- String fName;
-
- /**
- * @param t
- */
- public RegisterGroup(Target t, String name) {
- super(t);
- fName = name;
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.cdt.debug.core.cdi.model.ICDIRegisterGroup#getRegisterDescriptors()
- */
- public ICDIRegisterDescriptor[] getRegisterDescriptors() throws CDIException {
- Target target = (Target)getTarget();
- Session session = (Session)target.getSession();
- RegisterManager regMgr = session.getRegisterManager();
- return regMgr.getRegisterDescriptors(this);
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.cdt.debug.core.cdi.model.ICDIRegisterGroup#getName()
- */
- public String getName() {
- return fName;
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.cdt.debug.core.cdi.model.ICDIRegisterGroup#hasRegisters()
- */
- public boolean hasRegisters() throws CDIException {
- return true;
- }
-
-}
diff --git a/debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/model/RuntimeOptions.java b/debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/model/RuntimeOptions.java
deleted file mode 100644
index faf2718a357..00000000000
--- a/debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/model/RuntimeOptions.java
+++ /dev/null
@@ -1,112 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.mi.core.cdi.model;
-
-import java.util.Iterator;
-import java.util.Properties;
-
-import org.eclipse.cdt.debug.core.cdi.CDIException;
-import org.eclipse.cdt.debug.core.cdi.model.ICDIRuntimeOptions;
-import org.eclipse.cdt.debug.mi.core.MIException;
-import org.eclipse.cdt.debug.mi.core.MISession;
-import org.eclipse.cdt.debug.mi.core.cdi.CdiResources;
-import org.eclipse.cdt.debug.mi.core.command.CommandFactory;
-import org.eclipse.cdt.debug.mi.core.command.MIEnvironmentCD;
-import org.eclipse.cdt.debug.mi.core.command.MIExecArguments;
-import org.eclipse.cdt.debug.mi.core.command.MIGDBSetEnvironment;
-import org.eclipse.cdt.debug.mi.core.output.MIInfo;
-
-/**
- */
-public class RuntimeOptions extends CObject implements ICDIRuntimeOptions {
-
- public RuntimeOptions(Target t) {
- super(t);
- }
-
- /**
- * @see org.eclipse.cdt.debug.core.cdi.model.ICDIRuntimeOptions#setArguments(String)
- */
- public void setArguments(String[] args) throws CDIException {
- Target target = (Target)getTarget();
- if (args == null || args.length == 0) {
- return;
- }
- MISession mi = target.getMISession();
- CommandFactory factory = mi.getCommandFactory();
- MIExecArguments arguments = factory.createMIExecArguments(args);
- try {
- mi.postCommand(arguments);
- MIInfo info = arguments.getMIInfo();
- if (info == null) {
- throw new CDIException(CdiResources.getString("cdi.RuntimeOptions.Unable_to_set_args_target_not_responding")); //$NON-NLS-1$
- }
- } catch (MIException e) {
- throw new CDIException(CdiResources.getString("cdi.RuntimeOptions.Unable_to_set_args") + e.getMessage()); //$NON-NLS-1$
- }
- }
-
- /**
- * @see org.eclipse.cdt.debug.core.cdi.model.ICDIRuntimeOptions#setEnvironment(Properties)
- */
- public void setEnvironment(Properties props) throws CDIException {
- Target target = (Target)getTarget();
- if (props == null) {
- return;
- }
- MISession mi = target.getMISession();
- CommandFactory factory = mi.getCommandFactory();
- Iterator iterator = props.keySet().iterator();
- while (iterator.hasNext()) {
- String key = (String)iterator.next();
- String value = props.getProperty(key);
- String params[] = null;
- if (value == null || value.length() == 0) {
- params = new String[] {key};
- } else {
- params = new String[] {key, value};
- }
- MIGDBSetEnvironment set = factory.createMIGDBSetEnvironment(params);
- try {
- mi.postCommand(set);
- MIInfo info = set.getMIInfo();
- if (info == null) {
- throw new CDIException(CdiResources.getString("cdi.RuntimeOptions.Unable_to_set_args_target_not_responding")); //$NON-NLS-1$
- }
- } catch (MIException e) {
- throw new CDIException(CdiResources.getString("cdi.RuntimeOptions.Unable_to_set_environment") + e.getMessage()); //$NON-NLS-1$
- }
- }
- }
-
- /**
- * @see org.eclipse.cdt.debug.core.cdi.model.ICDIRuntimeOptions#setWorkingDirectory(String)
- */
- public void setWorkingDirectory(String wd) throws CDIException {
- Target target = (Target)getTarget();
- if (wd == null || wd.length() == 0) {
- return;
- }
- MISession mi = target.getMISession();
- CommandFactory factory = mi.getCommandFactory();
- MIEnvironmentCD cd = factory.createMIEnvironmentCD(wd);
- try {
- mi.postCommand(cd);
- MIInfo info = cd.getMIInfo();
- if (info == null) {
- throw new CDIException(CdiResources.getString("cdi.RuntimeOptions.Unable_to_set_args_target_not_responding")); //$NON-NLS-1$
- }
- } catch (MIException e) {
- throw new CDIException(CdiResources.getString("cdi.RuntimeOptions.Unable_to_set_working_dir") + e.getMessage()); //$NON-NLS-1$
- }
- }
-
-}
diff --git a/debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/model/SharedLibrary.java b/debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/model/SharedLibrary.java
deleted file mode 100644
index 1b6157b9b21..00000000000
--- a/debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/model/SharedLibrary.java
+++ /dev/null
@@ -1,80 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.cdt.debug.mi.core.cdi.model;
-
-import java.math.BigInteger;
-
-import org.eclipse.cdt.debug.core.cdi.CDIException;
-import org.eclipse.cdt.debug.core.cdi.model.ICDISharedLibrary;
-import org.eclipse.cdt.debug.mi.core.MIFormat;
-import org.eclipse.cdt.debug.mi.core.cdi.Session;
-import org.eclipse.cdt.debug.mi.core.cdi.SharedLibraryManager;
-import org.eclipse.cdt.debug.mi.core.output.MIShared;
-
-
-/**
- * Place holder for shared library info.
- */
-public class SharedLibrary extends CObject implements ICDISharedLibrary {
-
- MIShared miShared;
-
- public SharedLibrary(Target target, MIShared slib) {
- super(target);
- miShared = slib;
- }
-
- public void setMIShared(MIShared slib) {
- miShared = slib;
- }
-
- public MIShared getMIShared() {
- return miShared;
- }
- /**
- * @see org.eclipse.cdt.debug.core.cdi.model.ICDISharedLibrary#getFileName()
- */
- public String getFileName() {
- return miShared.getName();
- }
-
- /**
- * @see org.eclipse.cdt.debug.core.cdi.model.ICDISharedLibrary#getStartAddress()
- */
- public BigInteger getStartAddress() {
- return MIFormat.getBigInteger(miShared.getFrom());
- }
-
- /**
- * @see org.eclipse.cdt.debug.core.cdi.model.ICDISharedLibrary#getEndAddress()
- */
- public BigInteger getEndAddress() {
- return MIFormat.getBigInteger(miShared.getTo());
- }
-
- /**
- * @see org.eclipse.cdt.debug.core.cdi.model.ICDISharedLibrary#areSymbolsLoaded()
- */
- public boolean areSymbolsLoaded() {
- return miShared.isRead();
- }
-
- /**
- * @see org.eclipse.cdt.debug.core.cdi.model.ICDISharedLibrary#loadSymbols()
- */
- public void loadSymbols() throws CDIException {
- Target target = (Target)getTarget();
- SharedLibraryManager mgr = ((Session)target.getSession()).getSharedLibraryManager();
- mgr.loadSymbols(target, new ICDISharedLibrary[] { this });
- }
-
-}
diff --git a/debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/model/Signal.java b/debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/model/Signal.java
deleted file mode 100644
index d324374776a..00000000000
--- a/debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/model/Signal.java
+++ /dev/null
@@ -1,80 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.mi.core.cdi.model;
-
-import org.eclipse.cdt.debug.core.cdi.CDIException;
-import org.eclipse.cdt.debug.core.cdi.model.ICDISignal;
-import org.eclipse.cdt.debug.mi.core.cdi.Session;
-import org.eclipse.cdt.debug.mi.core.cdi.SignalManager;
-import org.eclipse.cdt.debug.mi.core.output.MISigHandle;
-
-/**
- */
-public class Signal extends CObject implements ICDISignal {
-
- MISigHandle sig;
-
- public Signal(Target target, MISigHandle s) {
- super(target);
- sig = s;
- }
-
- public void setMISignal(MISigHandle s) {
- sig = s;
- }
-
- public MISigHandle getMISignal() {
- return sig;
- }
-
- /**
- * @see org.eclipse.cdt.debug.core.cdi.ICDISignal#getMeaning()
- */
- public String getDescription() {
- return sig.getDescription();
- }
-
- /**
- * @see org.eclipse.cdt.debug.core.cdi.ICDISignal#getName()
- */
- public String getName() {
- return sig.getName();
- }
-
- /**
- * @see org.eclipse.cdt.debug.core.cdi.ICDISignal#handle()
- */
- public void handle(boolean ignore, boolean stop) throws CDIException {
- SignalManager mgr = ((Session)getTarget().getSession()).getSignalManager();
- mgr.handle(this, ignore, stop);
- }
-
- /**
- * @see org.eclipse.cdt.debug.core.cdi.ICDISignal#isIgnore()
- */
- public boolean isIgnore() {
- return !sig.isPass();
- }
-
- /**
- * @see org.eclipse.cdt.debug.core.cdi.ICDISignal#isStopSet()
- */
- public boolean isStopSet() {
- return sig.isStop();
- }
-
- /**
- * Continue program giving it signal specified by the argument.
- */
- public void signal() throws CDIException {
- getTarget().resume(this);
- }
-}
diff --git a/debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/model/StackFrame.java b/debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/model/StackFrame.java
deleted file mode 100644
index 4e259ee12fd..00000000000
--- a/debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/model/StackFrame.java
+++ /dev/null
@@ -1,265 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2005 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.mi.core.cdi.model;
-
-import java.math.BigInteger;
-import java.util.HashMap;
-
-import org.eclipse.cdt.debug.core.cdi.CDIException;
-import org.eclipse.cdt.debug.core.cdi.ICDILocator;
-import org.eclipse.cdt.debug.core.cdi.model.ICDIArgument;
-import org.eclipse.cdt.debug.core.cdi.model.ICDIArgumentDescriptor;
-import org.eclipse.cdt.debug.core.cdi.model.ICDILocalVariable;
-import org.eclipse.cdt.debug.core.cdi.model.ICDILocalVariableDescriptor;
-import org.eclipse.cdt.debug.core.cdi.model.ICDIStackFrame;
-import org.eclipse.cdt.debug.core.cdi.model.ICDIThread;
-import org.eclipse.cdt.debug.core.cdi.model.ICDIValue;
-import org.eclipse.cdt.debug.core.cdi.model.type.ICDIType;
-import org.eclipse.cdt.debug.mi.core.MIException;
-import org.eclipse.cdt.debug.mi.core.MIFormat;
-import org.eclipse.cdt.debug.mi.core.MISession;
-import org.eclipse.cdt.debug.mi.core.cdi.CdiResources;
-import org.eclipse.cdt.debug.mi.core.cdi.Locator;
-import org.eclipse.cdt.debug.mi.core.cdi.MI2CDIException;
-import org.eclipse.cdt.debug.mi.core.cdi.Session;
-import org.eclipse.cdt.debug.mi.core.cdi.VariableManager;
-import org.eclipse.cdt.debug.mi.core.command.CommandFactory;
-import org.eclipse.cdt.debug.mi.core.command.MIExecFinish;
-import org.eclipse.cdt.debug.mi.core.command.MIExecReturn;
-import org.eclipse.cdt.debug.mi.core.output.MIFrame;
-import org.eclipse.cdt.debug.mi.core.output.MIInfo;
-
-/**
- */
-public class StackFrame extends CObject implements ICDIStackFrame {
-
- MIFrame frame;
- Thread cthread;
- int level;
- ICDIArgumentDescriptor[] argDescs;
- ICDILocalVariableDescriptor[] localDescs;
- Locator fLocator;
- /**
- *
- */
- private HashMap fTypeCache;
-
- /*
- *
- GDB/MI does not keep the stack level, from what we expect. In gdb, the
- highest stack is level 0 and lower stack as the highest level:
- -stack-list-frames
- ^done,stack=[frame={level="0 ",addr="0x0804845b",func="main",file="hello.c",line="24"},
- frame={level="1 ",addr="0x42017499",func="__libc_start_main",from="/lib/i686/libc.so.6"}]
-
- -stack-list-frames
- ^done,stack=[frame={level="0 ",addr="0x08048556",func="main2",file="hello.c",line="58"},
- frame={level="1 ",addr="0x08048501",func="main",file="hello.c",line="41"},
- frame={level="2 ",addr="0x42017499",func="__libc_start_main",from="/lib/i686/libc.so.6"}]
-
- This is of no use to us since the level is always "0". The level is necessary for example when
- doing recursive calls to make a distinction between frames.
- So in CDT this reverse the hidghest frame will have the highest number. In CDT:
- stack=[frame={level="2 ",addr="0x0804845b",func="main",file="hello.c",line="24"},
- frame={level="1 ",addr="0x42017499",func="__libc_start_main",from="/lib/i686/libc.so.6"}]
-
- stack=[frame={level="3 ",addr="0x08048556",func="main2",file="hello.c",line="58"},
- frame={level="2 ",addr="0x08048501",func="main",file="hello.c",line="41"},
- frame={level="1 ",addr="0x42017499",func="__libc_start_main",from="/lib/i686/libc.so.6"}]
- */
- public StackFrame(Thread thread, MIFrame f, int l) {
- super((Target)thread.getTarget());
- cthread = thread;
- frame = f;
- level = l;
- fTypeCache = new HashMap();
- }
-
- public MIFrame getMIFrame() {
- return frame;
- }
-
- public ICDIType getFromTypeCache(String typeName) {
- return (ICDIType)fTypeCache.get(typeName);
- }
- public void addToTypeCache(String typeName, ICDIType typeDefinition) {
- fTypeCache.put(typeName, typeDefinition);
- }
-
- /**
- * @see org.eclipse.cdt.debug.core.cdi.model.ICDIStackFrame#getThread()
- */
- public ICDIThread getThread() {
- return cthread;
- }
-
- /**
- * @see org.eclipse.cdt.debug.core.cdi.model.ICDIStackFrame#getArgumentDescriptors()
- */
- public ICDIArgumentDescriptor[] getArgumentDescriptors() throws CDIException {
- if (argDescs == null) {
- Session session = (Session)getTarget().getSession();
- VariableManager mgr = session.getVariableManager();
- argDescs = mgr.getArgumentDescriptors(this);
- }
- return argDescs;
- }
-
- /**
- * @see org.eclipse.cdt.debug.core.cdi.model.ICDIStackFrame#getLocalVariableDescriptors()
- */
- public ICDILocalVariableDescriptor[] getLocalVariableDescriptors() throws CDIException {
- if (localDescs == null) {
- Session session = (Session)getTarget().getSession();
- VariableManager mgr = session.getVariableManager();
- localDescs = mgr.getLocalVariableDescriptors(this);
- }
- return localDescs;
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.cdt.debug.core.cdi.model.ICDIStackFrame#createArgument(org.eclipse.cdt.debug.core.cdi.model.ICDIArgumentDescriptor)
- */
- public ICDIArgument createArgument(ICDIArgumentDescriptor varDesc) throws CDIException {
- if (varDesc instanceof ArgumentDescriptor) {
- Session session = (Session)getTarget().getSession();
- VariableManager mgr = session.getVariableManager();
- return mgr.createArgument((ArgumentDescriptor)varDesc);
- }
- return null;
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.cdt.debug.core.cdi.model.ICDIStackFrame#createLocalVariable(org.eclipse.cdt.debug.core.cdi.model.ICDILocalVariableDescriptor)
- */
- public ICDILocalVariable createLocalVariable(ICDILocalVariableDescriptor varDesc) throws CDIException {
- if (varDesc instanceof ArgumentDescriptor) {
- return createArgument((ICDIArgumentDescriptor)varDesc);
- } else if (varDesc instanceof LocalVariableDescriptor) {
- Session session = (Session)getTarget().getSession();
- VariableManager mgr = session.getVariableManager();
- return mgr.createLocalVariable((LocalVariableDescriptor)varDesc);
- }
- return null;
- }
-
- /**
- * @see org.eclipse.cdt.debug.core.cdi.model.ICDIStackFrame#getLocation()
- */
- public ICDILocator getLocator() {
- BigInteger addr = BigInteger.ZERO;
- if (frame != null) {
- if (fLocator == null) {
- String a = frame.getAddress();
- if (a != null) {
- addr = MIFormat.getBigInteger(a);
- }
- fLocator = new Locator(frame.getFile(),
- frame.getFunction(),
- frame.getLine(),
- addr);
- }
- return fLocator;
- }
- return new Locator("", "", 0, addr); //$NON-NLS-1$ //$NON-NLS-2$
- }
-
- /**
- * @see org.eclipse.cdt.debug.core.cdi.model.ICDIStackFrame#getLevel()
- */
- public int getLevel() {
- return level;
- }
-
- /**
- * @see org.eclipse.cdt.debug.core.cdi.model.ICDIStackFrame#equals(ICDIStackFrame)
- */
- public boolean equals(ICDIStackFrame stackframe) {
- if (stackframe instanceof StackFrame) {
- StackFrame stack = (StackFrame)stackframe;
- boolean equal = cthread != null &&
- cthread.equals(stack.getThread()) &&
- getLevel() == stack.getLevel();
- if (equal) {
- ICDILocator otherLocator = stack.getLocator();
- ICDILocator myLocator = getLocator();
- if (Locator.equalString(myLocator.getFile(), otherLocator.getFile())) {
- if (Locator.equalString(myLocator.getFunction(), otherLocator.getFunction())) {
- return true;
- }
- }
- }
- }
- return super.equals(stackframe);
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.cdt.debug.core.cdi.model.ICDIExecuteStepReturn#stepReturn()
- */
- public void stepReturn() throws CDIException {
- finish();
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.cdt.debug.core.cdi.model.ICDIExecuteStepReturn#stepReturn(org.eclipse.cdt.debug.core.cdi.model.ICDIValue)
- */
- public void stepReturn(ICDIValue value) throws CDIException {
- execReturn(value.toString());
- }
-
- /**
- */
- protected void finish() throws CDIException {
-
- ((Thread)getThread()).setCurrentStackFrame(this, false);
-
- Target target = (Target)getTarget();
- MISession miSession = target.getMISession();
- CommandFactory factory = miSession.getCommandFactory();
- MIExecFinish finish = factory.createMIExecFinish();
- try {
- miSession.postCommand(finish);
- MIInfo info = finish.getMIInfo();
- if (info == null) {
- throw new CDIException(CdiResources.getString("cdi.model.Target.Target_not_responding")); //$NON-NLS-1$
- }
- } catch (MIException e) {
- throw new MI2CDIException(e);
- }
- }
-
- /**
- */
- protected void execReturn(String value) throws CDIException {
-
- ((Thread)getThread()).setCurrentStackFrame(this, false);
-
- Target target = (Target)getTarget();
- MISession miSession = target.getMISession();
- CommandFactory factory = miSession.getCommandFactory();
- MIExecReturn ret;
- if (value == null) {
- ret = factory.createMIExecReturn();
- } else {
- ret = factory.createMIExecReturn(value);
- }
- try {
- miSession.postCommand(ret);
- MIInfo info = ret.getMIInfo();
- if (info == null) {
- throw new CDIException(CdiResources.getString("cdi.model.Target.Target_not_responding")); //$NON-NLS-1$
- }
- } catch (MIException e) {
- throw new MI2CDIException(e);
- }
- }
-
-}
diff --git a/debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/model/Target.java b/debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/model/Target.java
deleted file mode 100644
index d425c099fd4..00000000000
--- a/debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/model/Target.java
+++ /dev/null
@@ -1,1216 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.mi.core.cdi.model;
-
-import java.math.BigInteger;
-import java.util.ArrayList;
-import java.util.List;
-
-import org.eclipse.cdt.debug.core.cdi.CDIException;
-import org.eclipse.cdt.debug.core.cdi.ICDIAddressLocation;
-import org.eclipse.cdt.debug.core.cdi.ICDICondition;
-import org.eclipse.cdt.debug.core.cdi.ICDIFunctionLocation;
-import org.eclipse.cdt.debug.core.cdi.ICDILineLocation;
-import org.eclipse.cdt.debug.core.cdi.ICDILocation;
-import org.eclipse.cdt.debug.core.cdi.model.ICDIAddressBreakpoint;
-import org.eclipse.cdt.debug.core.cdi.model.ICDIBreakpoint;
-import org.eclipse.cdt.debug.core.cdi.model.ICDIBreakpointManagement2;
-import org.eclipse.cdt.debug.core.cdi.model.ICDIExceptionpoint;
-import org.eclipse.cdt.debug.core.cdi.model.ICDIExpression;
-import org.eclipse.cdt.debug.core.cdi.model.ICDIFunctionBreakpoint;
-import org.eclipse.cdt.debug.core.cdi.model.ICDIGlobalVariable;
-import org.eclipse.cdt.debug.core.cdi.model.ICDIGlobalVariableDescriptor;
-import org.eclipse.cdt.debug.core.cdi.model.ICDIInstruction;
-import org.eclipse.cdt.debug.core.cdi.model.ICDILineBreakpoint;
-import org.eclipse.cdt.debug.core.cdi.model.ICDIMemoryBlock;
-import org.eclipse.cdt.debug.core.cdi.model.ICDIMixedInstruction;
-import org.eclipse.cdt.debug.core.cdi.model.ICDIRegister;
-import org.eclipse.cdt.debug.core.cdi.model.ICDIRegisterDescriptor;
-import org.eclipse.cdt.debug.core.cdi.model.ICDIRegisterGroup;
-import org.eclipse.cdt.debug.core.cdi.model.ICDIRuntimeOptions;
-import org.eclipse.cdt.debug.core.cdi.model.ICDISharedLibrary;
-import org.eclipse.cdt.debug.core.cdi.model.ICDISignal;
-import org.eclipse.cdt.debug.core.cdi.model.ICDIStackFrame;
-import org.eclipse.cdt.debug.core.cdi.model.ICDITarget;
-import org.eclipse.cdt.debug.core.cdi.model.ICDITargetConfiguration;
-import org.eclipse.cdt.debug.core.cdi.model.ICDIThread;
-import org.eclipse.cdt.debug.core.cdi.model.ICDIWatchpoint;
-import org.eclipse.cdt.debug.mi.core.CoreProcess;
-import org.eclipse.cdt.debug.mi.core.MIException;
-import org.eclipse.cdt.debug.mi.core.MISession;
-import org.eclipse.cdt.debug.mi.core.RxThread;
-import org.eclipse.cdt.debug.mi.core.cdi.BreakpointManager;
-import org.eclipse.cdt.debug.mi.core.cdi.CdiResources;
-import org.eclipse.cdt.debug.mi.core.cdi.EventManager;
-import org.eclipse.cdt.debug.mi.core.cdi.ExpressionManager;
-import org.eclipse.cdt.debug.mi.core.cdi.MI2CDIException;
-import org.eclipse.cdt.debug.mi.core.cdi.MemoryManager;
-import org.eclipse.cdt.debug.mi.core.cdi.RegisterManager;
-import org.eclipse.cdt.debug.mi.core.cdi.Session;
-import org.eclipse.cdt.debug.mi.core.cdi.SessionObject;
-import org.eclipse.cdt.debug.mi.core.cdi.SharedLibraryManager;
-import org.eclipse.cdt.debug.mi.core.cdi.SignalManager;
-import org.eclipse.cdt.debug.mi.core.cdi.SourceManager;
-import org.eclipse.cdt.debug.mi.core.cdi.VariableManager;
-import org.eclipse.cdt.debug.mi.core.command.CLIInfoThreads;
-import org.eclipse.cdt.debug.mi.core.command.CLIJump;
-import org.eclipse.cdt.debug.mi.core.command.CLISignal;
-import org.eclipse.cdt.debug.mi.core.command.CommandFactory;
-import org.eclipse.cdt.debug.mi.core.command.MIDataEvaluateExpression;
-import org.eclipse.cdt.debug.mi.core.command.MIExecContinue;
-import org.eclipse.cdt.debug.mi.core.command.MIExecNext;
-import org.eclipse.cdt.debug.mi.core.command.MIExecNextInstruction;
-import org.eclipse.cdt.debug.mi.core.command.MIExecRun;
-import org.eclipse.cdt.debug.mi.core.command.MIExecStep;
-import org.eclipse.cdt.debug.mi.core.command.MIExecStepInstruction;
-import org.eclipse.cdt.debug.mi.core.command.MIExecUntil;
-import org.eclipse.cdt.debug.mi.core.command.MIGDBShowEndian;
-import org.eclipse.cdt.debug.mi.core.command.MITargetDetach;
-import org.eclipse.cdt.debug.mi.core.command.MIThreadSelect;
-import org.eclipse.cdt.debug.mi.core.event.MIDetachedEvent;
-import org.eclipse.cdt.debug.mi.core.event.MIThreadCreatedEvent;
-import org.eclipse.cdt.debug.mi.core.event.MIThreadExitEvent;
-import org.eclipse.cdt.debug.mi.core.output.CLIInfoThreadsInfo;
-import org.eclipse.cdt.debug.mi.core.output.MIDataEvaluateExpressionInfo;
-import org.eclipse.cdt.debug.mi.core.output.MIFrame;
-import org.eclipse.cdt.debug.mi.core.output.MIGDBShowEndianInfo;
-import org.eclipse.cdt.debug.mi.core.output.MIInfo;
-import org.eclipse.cdt.debug.mi.core.output.MIThreadSelectInfo;
-import org.eclipse.core.runtime.Path;
-
-/**
- */
-public class Target extends SessionObject implements ICDITarget, ICDIBreakpointManagement2 {
-
- public class Lock {
-
- java.lang.Thread heldBy;
- int count;
-
- public Lock() {
-
- }
-
- public synchronized void aquire() {
- if (heldBy == null || heldBy == java.lang.Thread.currentThread()) {
- heldBy = java.lang.Thread.currentThread();
- count++;
- } else {
- while (true) {
- try {
- wait();
- } catch (InterruptedException e) {
- }
- if (heldBy == null) {
- heldBy = java.lang.Thread.currentThread();
- count++;
- return;
- }
- }
- }
- }
-
- public synchronized void release() {
- if (heldBy == null || heldBy != java.lang.Thread.currentThread()) {
- throw new IllegalStateException("Thread does not own lock");
- }
- if(--count == 0) {
- heldBy = null;
- notifyAll();
- }
- }
- }
-
- MISession miSession;
- ICDITargetConfiguration fConfiguration;
- Thread[] noThreads = new Thread[0];
- Thread[] currentThreads;
- int currentThreadId;
- String fEndian = null;
- boolean suspended = true;
- boolean deferBreakpoints = true;
- Lock lock = new Lock();
-
- public Target(Session s, MISession mi) {
- super(s);
- miSession = mi;
- currentThreads = noThreads;
- }
-
- public void lockTarget() {
- lock.aquire();
- }
-
- public void releaseTarget() {
- lock.release();
- }
-
- public MISession getMISession() {
- return miSession;
- }
-
- public void setConfiguration(ICDITargetConfiguration configuration) {
- fConfiguration = configuration;
- }
-
- /**
- * @see org.eclipse.cdt.debug.core.cdi.model.ICDIObject#getTarget()
- */
- public ICDITarget getTarget() {
- return this;
- }
-
- /**
- * @see org.eclipse.cdt.debug.core.cdi.model.ICDITarget#setCurrentThread(ICDIThread)
- */
- public void setCurrentThread(ICDIThread cthread) throws CDIException {
- if (cthread instanceof Thread) {
- setCurrentThread(cthread, true);
- } else {
- throw new CDIException(CdiResources.getString("cdi.model.Target.Unknown_thread")); //$NON-NLS-1$
- }
- }
-
- public void setCurrentThread(ICDIThread cthread, boolean doUpdate) throws CDIException {
- if (cthread instanceof Thread) {
- setCurrentThread((Thread)cthread, doUpdate);
- } else {
- throw new CDIException(CdiResources.getString("cdi.model.Target.Unknown_thread")); //$NON-NLS-1$
- }
- }
-
- public synchronized void setSupended(boolean state) {
- suspended = state;
- notifyAll();
- }
-
- /**
- */
- public void setCurrentThread(Thread cthread, boolean doUpdate) throws CDIException {
-
- int id = cthread.getId();
- // No need to set thread id 0, it is a dummy thread.
- if (id == 0) {
- return;
- }
- // already the current thread?
- if (currentThreadId != id) {
- CommandFactory factory = miSession.getCommandFactory();
- MIThreadSelect select = factory.createMIThreadSelect(id);
- try {
- miSession.postCommand(select);
- MIThreadSelectInfo info = select.getMIThreadSelectInfo();
- if (info == null) {
- throw new CDIException(CdiResources.getString("cdi.model.Target.Target_not_responding")); //$NON-NLS-1$
- }
- currentThreadId = info.getNewThreadId();
-
- // @^&#@^$*^$
- // GDB reset the currentFrame to some other level 0 when switching thread.
- // we need to reposition the current stack level.
- MIFrame miFrame = info.getFrame();
- if (miFrame != null) {
- int depth = cthread.getStackFrameCount();
- cthread.currentFrame = new StackFrame(cthread, miFrame, depth - miFrame.getLevel());
- }
- } catch (MIException e) {
- throw new MI2CDIException(e);
- }
-
- Session session = (Session)getSession();
- // Resetting threads may change the value of
- // some variables like Register. Call an update()
- // To generate changeEvents.
- if (doUpdate) {
- RegisterManager regMgr = session.getRegisterManager();
- if (regMgr.isAutoUpdate()) {
- regMgr.update(this);
- }
- VariableManager varMgr = session.getVariableManager();
- if (varMgr.isAutoUpdate()) {
- varMgr.update(this);
- }
- }
- }
-
- // We should be allright now.
- if (currentThreadId != id) {
- // thread is gone. Generate a Thread destroyed.
- miSession.fireEvent(new MIThreadExitEvent(miSession, id));
- throw new CDIException(CdiResources.getString("cdi.model.Target.Cannot_switch_to_thread") + id); //$NON-NLS-1$
- }
- }
-
- /**
- * Called when stopping because of breakpoints etc ..
- */
- public synchronized void updateState(int newThreadId) {
- Thread[] oldThreads = currentThreads;
-
- // If we use "info threads" in getCThreads() this
- // will be overwritten. However if we use -stack-list-threads
- // it does not provide to the current thread
- lockTarget();
- currentThreadId = newThreadId;
-
- // get the new Threads.
- try {
- currentThreads = getCThreads();
- } catch (CDIException e) {
- currentThreads = noThreads;
- }
- releaseTarget();
-
- // Fire CreatedEvent for new threads.
- // Replace the new threads with the old thread object
- // User may have old on to the old Thread object.
- List cList = new ArrayList(currentThreads.length);
- for (int i = 0; i < currentThreads.length; i++) {
- boolean found = false;
- for (int j = 0; j < oldThreads.length; j++) {
- if (currentThreads[i].getId() == oldThreads[j].getId()) {
- oldThreads[j].clearState();
- currentThreads[i] = oldThreads[j];
- found = true;
- break;
- }
- }
- if (!found) {
- cList.add(new Integer(currentThreads[i].getId()));
- }
- }
- if (!cList.isEmpty()) {
- MIThreadCreatedEvent[] events = new MIThreadCreatedEvent[cList.size()];
- for (int j = 0; j < events.length; j++) {
- int id = ((Integer)cList.get(j)).intValue();
- events[j] = new MIThreadCreatedEvent(miSession, id);
- }
- miSession.fireEvents(events);
- }
-
- // Fire destroyedEvent for old threads.
- List dList = new ArrayList(oldThreads.length);
- for (int i = 0; i < oldThreads.length; i++) {
- boolean found = false;
- for (int j = 0; j < currentThreads.length; j++) {
- if (currentThreads[j].getId() == oldThreads[i].getId()) {
- found = true;
- break;
- }
- }
- if (!found) {
- dList.add(new Integer(oldThreads[i].getId()));
- }
- }
- if (!dList.isEmpty()) {
- MIThreadExitEvent[] events = new MIThreadExitEvent[dList.size()];
- for (int j = 0; j < events.length; j++) {
- int id = ((Integer)dList.get(j)).intValue();
- events[j] = new MIThreadExitEvent(miSession, id);
- }
- miSession.fireEvents(events);
- }
- }
-
- /**
- * Do the real work of call -thread-list-ids.
- */
- public Thread[] getCThreads() throws CDIException {
- Thread[] cthreads = noThreads;
- try {
- lockTarget();
- RxThread rxThread = miSession.getRxThread();
- rxThread.setEnableConsole(false);
- CommandFactory factory = miSession.getCommandFactory();
- CLIInfoThreads tids = factory.createCLIInfoThreads();
- // HACK/FIXME: gdb/mi thread-list-ids does not
- // show any newly create thread, we workaround by
- // issuing "info threads" instead.
- // MIThreadListIds tids = factory.createMIThreadListIds();
- // MIThreadListIdsInfo info = tids.getMIThreadListIdsInfo();
- miSession.postCommand(tids);
- CLIInfoThreadsInfo info = tids.getMIInfoThreadsInfo();
- int[] ids;
- String[] names;
- if (info == null) {
- ids = new int[0];
- names = new String[0];
- } else {
- ids = info.getThreadIds();
- names = info.getThreadNames();
- currentThreadId = info.getCurrentThread();
- }
- if (ids != null && ids.length > 0) {
- cthreads = new Thread[ids.length];
- // Ok that means it is a multiThreaded.
- if (names != null && names.length == ids.length) {
- for (int i = 0; i < ids.length; i++) {
- cthreads[i] = new Thread(this, ids[i], names[i]);
- }
- } else {
- for (int i = 0; i < ids.length; i++) {
- cthreads[i] = new Thread(this, ids[i]);
- }
- }
- } else {
- // Provide a dummy.
- cthreads = new Thread[]{new Thread(this, 0)};
- }
- // FIX: When attaching there is no thread selected
- // We will choose the first one as a workaround.
- if (currentThreadId == 0 && cthreads.length > 0) {
- setCurrentThread(cthreads[0], false);
- }
- } catch (MIException e) {
- // Do not throw anything in this case.
- throw new CDIException(e.getMessage());
- } finally {
- RxThread rxThread = miSession.getRxThread();
- rxThread.setEnableConsole(true);
- releaseTarget();
- }
- return cthreads;
- }
-
- public ICDIThread getCurrentThread() throws CDIException {
- ICDIThread[] threads = getThreads();
- for (int i = 0; i < threads.length; i++) {
- Thread cthread = (Thread)threads[i];
- if (cthread.getId() == currentThreadId) {
- return cthread;
- }
- }
- return null;
- }
-
- /**
- * @see org.eclipse.cdt.debug.core.cdi.model.ICDITarget#getThreads()
- */
- public synchronized ICDIThread[] getThreads() throws CDIException {
- if (currentThreads.length == 0) {
- currentThreads = getCThreads();
- }
- return currentThreads;
- }
-
- public ICDIThread getThread(int tid) {
- Thread th = null;
- if (currentThreads != null) {
- for (int i = 0; i < currentThreads.length; i++) {
- Thread cthread = currentThreads[i];
- if (cthread.getId() == tid) {
- th = cthread;
- break;
- }
- }
- }
- return th;
- }
-
- public boolean isLittleEndian() throws CDIException {
- if (fEndian == null) {
- CommandFactory factory = miSession.getCommandFactory();
- MIGDBShowEndian endian = factory.createMIGDBShowEndian();
- try {
- miSession.postCommand(endian);
- MIGDBShowEndianInfo info = endian.getMIShowEndianInfo();
- if (info == null) {
- throw new CDIException(CdiResources.getString("cdi.model.Target.Target_not_responding")); //$NON-NLS-1$
- }
- fEndian = info.isLittleEndian() ? "le" : "be"; //$NON-NLS-1$ //$NON-NLS-2$
- } catch (MIException e) {
- throw new MI2CDIException(e);
- }
- }
- return fEndian.equals("le"); //$NON-NLS-1$
- }
-
- /**
- * @see org.eclipse.cdt.debug.core.cdi.model.ICDITarget#restart()
- */
- public void restart() throws CDIException {
- CommandFactory factory = miSession.getCommandFactory();
- MIExecRun run = factory.createMIExecRun(new String[0]);
- try {
- miSession.postCommand(run);
- MIInfo info = run.getMIInfo();
- if (info == null) {
- throw new CDIException(CdiResources.getString("cdi.model.Target.Target_not_responding")); //$NON-NLS-1$
- }
- } catch (MIException e) {
- throw new MI2CDIException(e);
- }
- }
-
- /**
- * @see org.eclipse.cdt.debug.core.cdi.model.ICDITarget#stepInto()
- */
- public void stepInto() throws CDIException {
- stepInto(1);
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.cdt.debug.core.cdi.model.ICDIExecuteStep#stepInto(int)
- */
- public void stepInto(int count) throws CDIException {
- CommandFactory factory = miSession.getCommandFactory();
- MIExecStep step = factory.createMIExecStep(count);
- try {
- miSession.postCommand(step);
- MIInfo info = step.getMIInfo();
- if (info == null) {
- throw new CDIException(CdiResources.getString("cdi.model.Target.Target_not_responding")); //$NON-NLS-1$
- }
- } catch (MIException e) {
- throw new MI2CDIException(e);
- }
- }
-
- /**
- * @see org.eclipse.cdt.debug.core.cdi.model.ICDITarget#stepIntoInstruction()
- */
- public void stepIntoInstruction() throws CDIException {
- stepIntoInstruction(1);
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.cdt.debug.core.cdi.model.ICDIExecuteStep#stepIntoInstruction(int)
- */
- public void stepIntoInstruction(int count) throws CDIException {
- CommandFactory factory = miSession.getCommandFactory();
- MIExecStepInstruction stepi = factory.createMIExecStepInstruction(count);
- try {
- miSession.postCommand(stepi);
- MIInfo info = stepi.getMIInfo();
- if (info == null) {
- throw new CDIException(CdiResources.getString("cdi.model.Target.Target_not_responding")); //$NON-NLS-1$
- }
- } catch (MIException e) {
- throw new MI2CDIException(e);
- }
-
- }
-
- /**
- * @see org.eclipse.cdt.debug.core.cdi.model.ICDITarget#stepOver()
- */
- public void stepOver() throws CDIException {
- stepOver(1);
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.cdt.debug.core.cdi.model.ICDIExecuteStep#stepOver(int)
- */
- public void stepOver(int count) throws CDIException {
- CommandFactory factory = miSession.getCommandFactory();
- MIExecNext next = factory.createMIExecNext(count);
- try {
- miSession.postCommand(next);
- MIInfo info = next.getMIInfo();
- if (info == null) {
- throw new CDIException(CdiResources.getString("cdi.model.Target.Target_not_responding")); //$NON-NLS-1$
- }
- } catch (MIException e) {
- throw new MI2CDIException(e);
- }
- }
-
- /**
- * @see org.eclipse.cdt.debug.core.cdi.model.ICDITarget#stepOverInstruction()
- */
- public void stepOverInstruction() throws CDIException {
- stepOverInstruction(1);
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.cdt.debug.core.cdi.model.ICDIExecuteStep#stepOverInstruction(int)
- */
- public void stepOverInstruction(int count) throws CDIException {
- CommandFactory factory = miSession.getCommandFactory();
- MIExecNextInstruction nexti = factory.createMIExecNextInstruction(count);
- try {
- miSession.postCommand(nexti);
- MIInfo info = nexti.getMIInfo();
- if (info == null) {
- throw new CDIException(CdiResources.getString("cdi.model.Target.Target_not_responding")); //$NON-NLS-1$
- }
- } catch (MIException e) {
- throw new MI2CDIException(e);
- }
- }
-
- /**
- * @see org.eclipse.cdt.debug.core.cdi.model.ICDITarget#stepReturn()
- */
- public void stepReturn() throws CDIException {
- ((Thread)getCurrentThread()).getCurrentStackFrame().stepReturn();
- }
-
- /**
- * @see org.eclipse.cdt.debug.core.cdi.model.ICDITarget#runUntil(ICDILocation)
- */
- public void runUntil(ICDILocation location) throws CDIException {
- stepUntil(location);
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.cdt.debug.core.cdi.model.ICDIExecuteStep#stepUntil(org.eclipse.cdt.debug.core.cdi.ICDILocation)
- */
- public void stepUntil(ICDILocation location) throws CDIException {
- CommandFactory factory = miSession.getCommandFactory();
- String loc = null;
- if (location instanceof ICDILineLocation) {
- ICDILineLocation lineLocation = (ICDILineLocation)location;
- if (lineLocation.getFile() != null && lineLocation.getFile().length() > 0) {
- loc = lineLocation.getFile() + ":" + lineLocation.getLineNumber(); //$NON-NLS-1$
- }
- } else if (location instanceof ICDIFunctionLocation) {
- ICDIFunctionLocation funcLocation = (ICDIFunctionLocation)location;
- if (funcLocation.getFunction() != null && funcLocation.getFunction().length() > 0) {
- loc = funcLocation.getFunction();
- }
- if (funcLocation.getFile() != null && funcLocation.getFile().length() > 0) {
- if (loc != null) {
- loc = funcLocation.getFile() + ":" + loc; //$NON-NLS-1$
- }
- }
- } else if (location instanceof ICDIAddressLocation) {
- ICDIAddressLocation addrLocation = (ICDIAddressLocation)location;
- if (!addrLocation.getAddress().equals(BigInteger.ZERO)) {
- loc = "*0x" + addrLocation.getAddress().toString(16); //$NON-NLS-1$
- }
- }
- // Throw an exception we do know where to go
- if (loc == null) {
- throw new CDIException(CdiResources.getString("cdi.mode.Target.Bad_location")); //$NON-NLS-1$
- }
- MIExecUntil until = factory.createMIExecUntil(loc);
- try {
- miSession.postCommand(until);
- MIInfo info = until.getMIInfo();
- if (info == null) {
- throw new CDIException(CdiResources.getString("cdi.model.Target.Target_not_responding")); //$NON-NLS-1$
- }
- } catch (MIException e) {
- throw new MI2CDIException(e);
- }
- }
-
- /**
- * @see org.eclipse.cdt.debug.core.cdi.model.ICDITarget#suspend()
- */
- public void suspend() throws CDIException {
- try {
- miSession.getMIInferior().interrupt();
- // Wait till the EventManager tell us the go ahead
- synchronized (this) {
- for (int i = 0; !suspended && i < 6; i++) {
- try {
- wait(1000);
- } catch (InterruptedException e) {
- }
- }
- }
- } catch (MIException e) {
- throw new MI2CDIException(e);
- }
- }
-
- /**
- * @see org.eclipse.cdt.debug.core.cdi.model.ICDITarget#disconnect()
- */
- public void disconnect() throws CDIException {
- // if Target is running try to suspend first.
- if (isRunning()) {
- try {
- ((EventManager)getSession().getEventManager()).allowProcessingEvents(false);
- suspend();
- } finally {
- ((EventManager)getSession().getEventManager()).allowProcessingEvents(true);
- }
- }
- CommandFactory factory = miSession.getCommandFactory();
- MITargetDetach detach = factory.createMITargetDetach();
- try {
- miSession.postCommand(detach);
- MIInfo info = detach.getMIInfo();
- if (info == null) {
- throw new CDIException(CdiResources.getString("cdi.model.Target.Target_not_responding")); //$NON-NLS-1$
- }
- } catch (MIException e) {
- throw new MI2CDIException(e);
- }
- // Unfortunately -target-detach does not generate an
- // event so we do it here.
- miSession.fireEvent(new MIDetachedEvent(miSession, detach.getToken()));
- miSession.getMIInferior().setDisconnected();
- }
-
- /**
- * @see org.eclipse.cdt.debug.core.cdi.model.ICDITarget#resume()
- */
- public void resume() throws CDIException {
- resume(false);
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.cdt.debug.core.cdi.model.ICDIExecuteResume#resume(org.eclipse.cdt.debug.core.cdi.ICDILocation)
- */
- public void resume(ICDILocation location) throws CDIException {
- jump(location);
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.cdt.debug.core.cdi.model.ICDIExecuteResume#resume(org.eclipse.cdt.debug.core.cdi.model.ICDISignal)
- */
- public void resume(ICDISignal signal) throws CDIException {
- signal(signal);
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.cdt.debug.core.cdi.model.ICDIExecuteResume#resume(boolean)
- */
- public void resume(boolean passSignal) throws CDIException {
- if (miSession.getMIInferior().isRunning()) {
- throw new CDIException(CdiResources.getString("cdi.model.Target.Inferior_already_running")); //$NON-NLS-1$
- } else if (miSession.getMIInferior().isSuspended()) {
- if (passSignal) {
- signal();
- } else {
- continuation();
- }
- } else if (miSession.getMIInferior().isTerminated()) {
- restart();
- } else {
- restart();
- }
- }
-
- public void continuation() throws CDIException {
- CommandFactory factory = miSession.getCommandFactory();
- MIExecContinue cont = factory.createMIExecContinue();
- try {
- miSession.postCommand(cont);
- MIInfo info = cont.getMIInfo();
- if (info == null) {
- throw new CDIException(CdiResources.getString("cdi.model.Target.Target_not_responding")); //$NON-NLS-1$
- }
- } catch (MIException e) {
- throw new MI2CDIException(e);
- }
- }
-
- /**
- * @see org.eclipse.cdt.debug.core.cdi.model.ICDITarget#jump(ICDILocation)
- */
- public void jump(ICDILocation location) throws CDIException {
- CommandFactory factory = miSession.getCommandFactory();
- String loc = null;
- if (location instanceof ICDILineLocation) {
- ICDILineLocation lineLocation = (ICDILineLocation)location;
- if (lineLocation.getFile() != null && lineLocation.getFile().length() > 0) {
- loc = lineLocation.getFile() + ":" + lineLocation.getLineNumber(); //$NON-NLS-1$
- }
- } else if (location instanceof ICDIFunctionLocation) {
- ICDIFunctionLocation funcLocation = (ICDIFunctionLocation)location;
- if (funcLocation.getFunction() != null && funcLocation.getFunction().length() > 0) {
- loc = funcLocation.getFunction();
- }
- if (funcLocation.getFile() != null && funcLocation.getFile().length() > 0) {
- if (loc != null) {
- loc = funcLocation.getFile() + ":" + loc; //$NON-NLS-1$
- }
- }
- } else if (location instanceof ICDIAddressLocation) {
- ICDIAddressLocation addrLocation = (ICDIAddressLocation)location;
- if (!addrLocation.getAddress().equals(BigInteger.ZERO)) {
- loc = "*0x" + addrLocation.getAddress().toString(16); //$NON-NLS-1$
- }
- }
- // Throw an exception we do know where to go
- if (loc == null) {
- throw new CDIException(CdiResources.getString("cdi.mode.Target.Bad_location")); //$NON-NLS-1$
- }
-
- CLIJump jump = factory.createCLIJump(loc);
- try {
- miSession.postCommand(jump);
- MIInfo info = jump.getMIInfo();
- if (info == null) {
- throw new CDIException(CdiResources.getString("cdi.model.Target.Target_not_responding")); //$NON-NLS-1$
- }
- } catch (MIException e) {
- throw new MI2CDIException(e);
- }
- }
-
- /**
- * @see org.eclipse.cdt.debug.core.cdi.model.ICDITarget#signal()
- */
- public void signal() throws CDIException {
- CommandFactory factory = miSession.getCommandFactory();
- CLISignal signal = factory.createCLISignal("0"); //$NON-NLS-1$
- try {
- miSession.postCommand(signal);
- MIInfo info = signal.getMIInfo();
- if (info == null) {
- throw new CDIException(CdiResources.getString("cdi.model.Target.Target_not_responding")); //$NON-NLS-1$
- }
- } catch (MIException e) {
- throw new MI2CDIException(e);
- }
- }
-
- /**
- * @see org.eclipse.cdt.debug.core.cdi.model.ICDITarget#signal(ICDISignal)
- */
- public void signal(ICDISignal signal) throws CDIException {
- CommandFactory factory = miSession.getCommandFactory();
- CLISignal sig = factory.createCLISignal(signal.getName());
- try {
- miSession.postCommand(sig);
- MIInfo info = sig.getMIInfo();
- if (info == null) {
- throw new CDIException(CdiResources.getString("cdi.model.Target.Target_not_responding")); //$NON-NLS-1$
- }
- } catch (MIException e) {
- throw new MI2CDIException(e);
- }
- }
-
- public String evaluateExpressionToString(ICDIStackFrame frame, String expressionText) throws CDIException {
- Target target = (Target)frame.getTarget();
- Thread currentThread = (Thread)target.getCurrentThread();
- StackFrame currentFrame = currentThread.getCurrentStackFrame();
- target.setCurrentThread(frame.getThread(), false);
- ((Thread)frame.getThread()).setCurrentStackFrame((StackFrame)frame, false);
- try {
- CommandFactory factory = miSession.getCommandFactory();
- MIDataEvaluateExpression evaluate =
- factory.createMIDataEvaluateExpression(expressionText);
- miSession.postCommand(evaluate);
- MIDataEvaluateExpressionInfo info =
- evaluate.getMIDataEvaluateExpressionInfo();
- if (info == null) {
- throw new CDIException(CdiResources.getString("cdi.model.Target.Target_not_responding")); //$NON-NLS-1$
- }
- return info.getExpression();
- } catch (MIException e) {
- throw new MI2CDIException(e);
- } finally {
- target.setCurrentThread(currentThread, false);
- currentThread.setCurrentStackFrame(currentFrame, false);
- }
- }
-
- /**
- * @see org.eclipse.cdt.debug.core.cdi.model.ICDITarget#terminate()
- */
- public void terminate() throws CDIException {
- try {
- miSession.getMIInferior().terminate();
- } catch (MIException e) {
- throw new MI2CDIException(e);
- }
- }
-
- /**
- * @see org.eclipse.cdt.debug.core.cdi.model.ICDITarget#isTerminated()
- */
- public boolean isTerminated() {
- return miSession.getMIInferior().isTerminated();
- }
-
- /**
- * @see org.eclipse.cdt.debug.core.cdi.model.ICDITarget#isDisconnected()
- */
- public boolean isDisconnected() {
- return !miSession.getMIInferior().isConnected();
- }
-
- /**
- * @see org.eclipse.cdt.debug.core.cdi.model.ICDITarget#isSuspended()
- */
- public boolean isSuspended() {
- return miSession.getMIInferior().isSuspended();
- }
-
- public boolean isRunning() {
- return miSession.getMIInferior().isRunning();
- }
-
- /**
- * @see org.eclipse.cdt.debug.core.cdi.model.ICDITarget#getProcess()
- */
- public Process getProcess() {
- if (miSession.isCoreSession()) {
- return new CoreProcess();
- }
- return miSession.getMIInferior();
- }
-
- // Implementaton of ICDIBreapointManagement.
-
-
- /* (non-Javadoc)
- * @see org.eclipse.cdt.debug.core.cdi.model.ICDIBreakpointManagement#setLineBreakpoint(int, org.eclipse.cdt.debug.core.cdi.ICDILineLocation, org.eclipse.cdt.debug.core.cdi.ICDICondition, boolean)
- */
- public ICDILineBreakpoint setLineBreakpoint(int type, ICDILineLocation location,
- ICDICondition condition, boolean deferred) throws CDIException {
- return this.setLineBreakpoint(type, location, condition, deferred, true);
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.cdt.debug.core.cdi.model.ICDIBreakpointManagement#setFunctionBreakpoint(int, org.eclipse.cdt.debug.core.cdi.ICDIFunctionLocation, org.eclipse.cdt.debug.core.cdi.ICDICondition, boolean)
- */
- public ICDIFunctionBreakpoint setFunctionBreakpoint(int type, ICDIFunctionLocation location,
- ICDICondition condition, boolean deferred) throws CDIException {
- return this.setFunctionBreakpoint(type, location, condition, deferred, true);
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.cdt.debug.core.cdi.model.ICDIBreakpointManagement#setAddressBreakpoint(int, org.eclipse.cdt.debug.core.cdi.ICDIAddressLocation, org.eclipse.cdt.debug.core.cdi.ICDICondition, boolean)
- */
- public ICDIAddressBreakpoint setAddressBreakpoint(int type, ICDIAddressLocation location,
- ICDICondition condition, boolean deferred) throws CDIException {
- return this.setAddressBreakpoint(type, location, condition, deferred, true);
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.cdt.debug.core.cdi.model.ICDIBreakpointManagement#setWatchpoint(int, int, java.lang.String, org.eclipse.cdt.debug.core.cdi.ICDICondition)
- */
- public ICDIWatchpoint setWatchpoint(int type, int watchType, String expression,
- ICDICondition condition) throws CDIException {
- return this.setWatchpoint(type, watchType, expression, condition, true);
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.cdt.debug.core.cdi.model.ICDIBreakpointManagement#setExceptionBreakpoint(java.lang.String, boolean, boolean)
- */
- public ICDIExceptionpoint setExceptionBreakpoint(String clazz, boolean stopOnThrow, boolean stopOnCatch)
- throws CDIException {
- throw new CDIException(CdiResources.getString("cdi.Common.Not_implemented")); //$NON-NLS-1$
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.cdt.debug.core.cdi.model.ICDIBreakpointManagement#getBreakpoints()
- */
- public ICDIBreakpoint[] getBreakpoints() throws CDIException {
- BreakpointManager bMgr = ((Session)getSession()).getBreakpointManager();
- return bMgr.getBreakpoints(this);
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.cdt.debug.core.cdi.model.ICDIBreakpointManagement#deleteBreakpoints(org.eclipse.cdt.debug.core.cdi.model.ICDIBreakpoint[])
- */
- public void deleteBreakpoints(ICDIBreakpoint[] breakpoints) throws CDIException {
- BreakpointManager bMgr = ((Session)getSession()).getBreakpointManager();
- bMgr.deleteBreakpoints(this, breakpoints);
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.cdt.debug.core.cdi.model.ICDIBreakpointManagement#deleteAllBreakpoints()
- */
- public void deleteAllBreakpoints() throws CDIException {
- BreakpointManager bMgr = ((Session)getSession()).getBreakpointManager();
- bMgr.deleteAllBreakpoints(this);
- }
-
- /*
- * @see org.eclipse.cdt.debug.core.cdi.model.ICDITarget#createCondition(int, java.lang.String, String)
- */
- public ICDICondition createCondition(int ignoreCount, String expression) {
- return createCondition(ignoreCount, expression, null);
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.cdt.debug.core.cdi.model.ICDITarget#createCondition(int, java.lang.String, String)
- */
- public ICDICondition createCondition(int ignoreCount, String expression, String[] tids) {
- BreakpointManager bMgr = ((Session)getSession()).getBreakpointManager();
- return bMgr.createCondition(ignoreCount, expression, tids);
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.cdt.debug.core.cdi.model.ICDITarget#createLineLocation(java.lang.String, int)
- */
- public ICDILineLocation createLineLocation(String file, int line) {
- BreakpointManager bMgr = ((Session)getSession()).getBreakpointManager();
- return bMgr.createLineLocation(file, line);
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.cdt.debug.core.cdi.model.ICDITarget#createFunctionLocation(java.lang.String, java.lang.String)
- */
- public ICDIFunctionLocation createFunctionLocation(String file, String function) {
- BreakpointManager bMgr = ((Session)getSession()).getBreakpointManager();
- return bMgr.createFunctionLocation(file, function);
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.cdt.debug.core.cdi.model.ICDITarget#createLocation(long)
- */
- public ICDIAddressLocation createAddressLocation(BigInteger address) {
- BreakpointManager bMgr = ((Session)getSession()).getBreakpointManager();
- return bMgr.createAddressLocation(address);
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.cdt.debug.core.cdi.model.ICDITarget#getRuntimeOptions()
- */
- public ICDIRuntimeOptions getRuntimeOptions() {
- return new RuntimeOptions(this);
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.cdt.debug.core.cdi.model.ICDIExpressionManagement#createExpression(java.lang.String)
- */
- public ICDIExpression createExpression(String code) throws CDIException {
- ExpressionManager expMgr = ((Session)getSession()).getExpressionManager();
- return expMgr.createExpression(this, code);
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.cdt.debug.core.cdi.model.ICDIExpressionManagement#getExpressions()
- */
- public ICDIExpression[] getExpressions() throws CDIException {
- ExpressionManager expMgr = ((Session)getSession()).getExpressionManager();
- return expMgr.getExpressions(this);
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.cdt.debug.core.cdi.model.ICDIExpressionManagement#destroyExpression(org.eclipse.cdt.debug.core.cdi.model.ICDIExpression[])
- */
- public void destroyExpressions(ICDIExpression[] expressions) throws CDIException {
- ExpressionManager expMgr = ((Session)getSession()).getExpressionManager();
- expMgr.destroyExpressions(this, expressions);
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.cdt.debug.core.cdi.model.ICDIExpressionManagement#destroyAllExpression()
- */
- public void destroyAllExpressions() throws CDIException {
- ExpressionManager expMgr = ((Session)getSession()).getExpressionManager();
- expMgr.destroyAllExpressions(this);
- }
-
- /**
- * Returns the array of signals defined for this target.
- *
- * @return the array of signals
- * @throws CDIException on failure. Reasons include:
- */
- public ICDISignal[] getSignals() throws CDIException {
- SignalManager sigMgr = ((Session)getSession()).getSignalManager();
- return sigMgr.getSignals(this);
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.cdt.debug.core.cdi.model.ICDISourceManagement#setSourcePaths(java.lang.String[])
- */
- public void setSourcePaths(String[] srcPaths) throws CDIException {
- SourceManager srcMgr = ((Session)getSession()).getSourceManager();
- srcMgr.setSourcePaths(this, srcPaths);
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.cdt.debug.core.cdi.model.ICDISourceManagement#getSourcePaths()
- */
- public String[] getSourcePaths() throws CDIException {
- SourceManager srcMgr = ((Session)getSession()).getSourceManager();
- return srcMgr.getSourcePaths(this);
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.cdt.debug.core.cdi.model.ICDISourceManagement#getInstructions(java.math.BigInteger, java.math.BigInteger)
- */
- public ICDIInstruction[] getInstructions(BigInteger startAddress, BigInteger endAddress) throws CDIException {
- SourceManager srcMgr = ((Session)getSession()).getSourceManager();
- return srcMgr.getInstructions(this, startAddress, endAddress);
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.cdt.debug.core.cdi.model.ICDISourceManagement#getInstructions(java.lang.String, int)
- */
- public ICDIInstruction[] getInstructions(String filename, int linenum) throws CDIException {
- SourceManager srcMgr = ((Session)getSession()).getSourceManager();
- return srcMgr.getInstructions(this, filename, linenum);
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.cdt.debug.core.cdi.model.ICDISourceManagement#getInstructions(java.lang.String, int, int)
- */
- public ICDIInstruction[] getInstructions(String filename, int linenum, int lines) throws CDIException {
- SourceManager srcMgr = ((Session)getSession()).getSourceManager();
- return srcMgr.getInstructions(this, filename, linenum, lines);
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.cdt.debug.core.cdi.model.ICDISourceManagement#getMixedInstructions(java.math.BigInteger, java.math.BigInteger)
- */
- public ICDIMixedInstruction[] getMixedInstructions(BigInteger startAddress, BigInteger endAddress) throws CDIException {
- SourceManager srcMgr = ((Session)getSession()).getSourceManager();
- return srcMgr.getMixedInstructions(this, startAddress, endAddress);
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.cdt.debug.core.cdi.model.ICDISourceManagement#getMixedInstructions(java.lang.String, int)
- */
- public ICDIMixedInstruction[] getMixedInstructions(String filename, int linenum) throws CDIException {
- SourceManager srcMgr = ((Session)getSession()).getSourceManager();
- return srcMgr.getMixedInstructions(this, filename, linenum);
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.cdt.debug.core.cdi.model.ICDISourceManagement#getMixedInstructions(java.lang.String, int, int)
- */
- public ICDIMixedInstruction[] getMixedInstructions(String filename, int linenum, int lines) throws CDIException {
- SourceManager srcMgr = ((Session)getSession()).getSourceManager();
- return srcMgr.getMixedInstructions(this, filename, linenum, lines);
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.cdt.debug.core.cdi.model.ICDIMemoryBlockManagement#createMemoryBlock(java.lang.String, int)
- */
- public ICDIMemoryBlock createMemoryBlock(String address, int units, int wordSize) throws CDIException {
- MemoryManager memMgr = ((Session)getSession()).getMemoryManager();
- return memMgr.createMemoryBlock(this, address, units, wordSize);
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.cdt.debug.core.cdi.model.ICDIMemoryBlockManagement#removeBlocks(org.eclipse.cdt.debug.core.cdi.model.ICDIMemoryBlock[])
- */
- public void removeBlocks(ICDIMemoryBlock[] memoryBlocks) throws CDIException {
- MemoryManager memMgr = ((Session)getSession()).getMemoryManager();
- memMgr.removeBlocks(this, memoryBlocks);
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.cdt.debug.core.cdi.model.ICDIMemoryBlockManagement#removeAllBlocks()
- */
- public void removeAllBlocks() throws CDIException {
- MemoryManager memMgr = ((Session)getSession()).getMemoryManager();
- memMgr.removeAllBlocks(this);
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.cdt.debug.core.cdi.model.ICDIMemoryBlockManagement#getMemoryBlocks()
- */
- public ICDIMemoryBlock[] getMemoryBlocks() throws CDIException {
- MemoryManager memMgr = ((Session)getSession()).getMemoryManager();
- return memMgr.getMemoryBlocks(this);
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.cdt.debug.core.cdi.model.ICDISharedLibraryManagement#getSharedLibraries()
- */
- public ICDISharedLibrary[] getSharedLibraries() throws CDIException {
- SharedLibraryManager sharedMgr = ((Session)getSession()).getSharedLibraryManager();
- return sharedMgr.getSharedLibraries(this);
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.cdt.debug.core.cdi.model.ICDITarget#getGlobalVariableDescriptors(java.lang.String, java.lang.String, java.lang.String)
- */
- public ICDIGlobalVariableDescriptor getGlobalVariableDescriptors(String filename, String function, String name) throws CDIException {
- VariableManager varMgr = ((Session)getSession()).getVariableManager();
- return varMgr.getGlobalVariableDescriptor(this, filename, function, name);
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.cdt.debug.core.cdi.model.ICDITarget#getRegisterGroups()
- */
- public ICDIRegisterGroup[] getRegisterGroups() throws CDIException {
- RegisterManager regMgr = ((Session)getSession()).getRegisterManager();
- return regMgr.getRegisterGroups(this);
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.cdt.debug.core.cdi.model.ICDITarget#getConfiguration()
- */
- public ICDITargetConfiguration getConfiguration() {
- if (fConfiguration == null) {
- if (miSession.isProgramSession()) {
- fConfiguration = new TargetConfiguration(this);
- } else if (miSession.isAttachSession()) {
- fConfiguration = new TargetConfiguration(this);
- } else if (miSession.isCoreSession()) {
- fConfiguration = new CoreFileConfiguration(this);
- } else {
- fConfiguration = new TargetConfiguration(this);
- }
- }
- return fConfiguration;
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.cdt.debug.core.cdi.model.ICDITarget#createGlobalVariable(org.eclipse.cdt.debug.core.cdi.model.ICDIGlobalVariableDescriptor)
- */
- public ICDIGlobalVariable createGlobalVariable(ICDIGlobalVariableDescriptor varDesc) throws CDIException {
- if (varDesc instanceof GlobalVariableDescriptor) {
- VariableManager varMgr = ((Session)getSession()).getVariableManager();
- return varMgr.createGlobalVariable((GlobalVariableDescriptor)varDesc);
- }
- return null;
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.cdt.debug.core.cdi.model.ICDITarget#createRegister(org.eclipse.cdt.debug.core.cdi.model.ICDIRegisterDescriptor)
- */
- public ICDIRegister createRegister(ICDIRegisterDescriptor varDesc) throws CDIException {
- if (varDesc instanceof RegisterDescriptor) {
- Session session = (Session)getTarget().getSession();
- RegisterManager mgr = session.getRegisterManager();
- return mgr.createRegister((RegisterDescriptor)varDesc);
- }
- return null;
- }
-
- public void deferBreakpoints(boolean defer) {
- this.deferBreakpoints = defer;
- }
-
- public boolean areBreakpointsDeferred() {
- return this.deferBreakpoints;
- }
-
- public void enableVerboseMode(boolean enabled) {
- miSession.enableVerboseMode(enabled);
- }
-
- public boolean isVerboseModeEnabled() {
- return miSession.isVerboseModeEnabled();
- }
-
- public ICDIAddressBreakpoint setAddressBreakpoint(int type, ICDIAddressLocation location, ICDICondition condition, boolean deferred, boolean enabled) throws CDIException {
- BreakpointManager bMgr = ((Session)getSession()).getBreakpointManager();
- return bMgr.setAddressBreakpoint(this, type, location, condition, deferred, enabled);
- }
-
- public ICDIExceptionpoint setExceptionBreakpoint(String clazz, boolean stopOnThrow, boolean stopOnCatch, boolean enabled) throws CDIException {
- throw new CDIException(CdiResources.getString("cdi.Common.Not_implemented")); //$NON-NLS-1$
- }
-
- public ICDIFunctionBreakpoint setFunctionBreakpoint(int type, ICDIFunctionLocation location, ICDICondition condition, boolean deferred, boolean enabled) throws CDIException {
- BreakpointManager bMgr = ((Session)getSession()).getBreakpointManager();
- return bMgr.setFunctionBreakpoint(this, type, location, condition, deferred, enabled);
- }
-
- public ICDILineBreakpoint setLineBreakpoint(int type, ICDILineLocation location, ICDICondition condition, boolean deferred, boolean enabled) throws CDIException {
- BreakpointManager bMgr = ((Session)getSession()).getBreakpointManager();
- return bMgr.setLineBreakpoint(this, type, location, condition, deferred, enabled);
- }
-
- public ICDIWatchpoint setWatchpoint(int type, int watchType, String expression, ICDICondition condition, boolean enabled) throws CDIException {
- BreakpointManager bMgr = ((Session)getSession()).getBreakpointManager();
- return bMgr.setWatchpoint(this, type, watchType, expression, condition, enabled);
- }
-}
diff --git a/debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/model/TargetConfiguration.java b/debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/model/TargetConfiguration.java
deleted file mode 100644
index 5af2f3b7103..00000000000
--- a/debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/model/TargetConfiguration.java
+++ /dev/null
@@ -1,159 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.mi.core.cdi.model;
-
-import org.eclipse.cdt.debug.core.cdi.model.ICDITargetConfiguration;
-import org.eclipse.cdt.debug.mi.core.MIInferior;
-import org.eclipse.cdt.debug.mi.core.MIProcess;
-import org.eclipse.cdt.debug.mi.core.MISession;
-
-/**
- */
-public class TargetConfiguration extends CObject implements ICDITargetConfiguration {
-
- public TargetConfiguration(Target target) {
- super(target);
- }
- /**
- * @see org.eclipse.cdt.debug.core.cdi.ICDIConfiguration#supportsBreakpoints()
- */
- public boolean supportsBreakpoints() {
- return true;
- }
-
- /**
- * @see org.eclipse.cdt.debug.core.cdi.ICDIConfiguration#supportsDisconnect()
- */
- public boolean supportsDisconnect() {
- MISession miSession = ((Target)getTarget()).getMISession();
- return miSession.isAttachSession() ? true : false;
- }
-
- /**
- * @see org.eclipse.cdt.debug.core.cdi.ICDIConfiguration#supportsExpressionEvaluation()
- */
- public boolean supportsExpressionEvaluation() {
- return true;
- }
-
- /**
- * @see org.eclipse.cdt.debug.core.cdi.ICDIConfiguration#supportsInstructionStepping()
- */
- public boolean supportsInstructionStepping() {
- return true;
- }
-
- /**
- * @see org.eclipse.cdt.debug.core.cdi.ICDIConfiguration#supportsMemoryModification()
- */
- public boolean supportsMemoryModification() {
- return true;
- }
-
- /**
- * @see org.eclipse.cdt.debug.core.cdi.ICDIConfiguration#supportsMemoryRetrieval()
- */
- public boolean supportsMemoryRetrieval() {
- return true;
- }
-
- /**
- * @see org.eclipse.cdt.debug.core.cdi.ICDIConfiguration#supportsRegisterModification()
- */
- public boolean supportsRegisterModification() {
- return true;
- }
-
- /**
- * @see org.eclipse.cdt.debug.core.cdi.ICDIConfiguration#supportsRegisters()
- */
- public boolean supportsRegisters() {
- return true;
- }
-
- /**
- * @see org.eclipse.cdt.debug.core.cdi.ICDIConfiguration#supportsSharedLibrary()
- */
- public boolean supportsSharedLibrary() {
- return true;
- }
-
- /**
- * @see org.eclipse.cdt.debug.core.cdi.ICDIConfiguration#supportsRestart()
- */
- public boolean supportsRestart() {
- MISession miSession = ((Target)getTarget()).getMISession();
- return miSession.isAttachSession() ? false : true;
- }
-
- /**
- * @see org.eclipse.cdt.debug.core.cdi.ICDIConfiguration#supportsStepping()
- */
- public boolean supportsStepping() {
- return true;
- }
-
- /**
- * @see org.eclipse.cdt.debug.core.cdi.ICDIConfiguration#supportsTerminate()
- */
- public boolean supportsTerminate() {
- return true;
-
- }
- /**
- * @see org.eclipse.cdt.debug.core.cdi.ICDIConfiguration#supportsResume()
- */
- public boolean supportsResume() {
- return true;
- }
-
- /**
- * @see org.eclipse.cdt.debug.core.cdi.ICDIConfiguration#supportsSuspend()
- */
- public boolean supportsSuspend() {
- String os = null;
- try {
- os = System.getProperty("os.name", ""); //$NON-NLS-1$ //$NON-NLS-2$
- } catch (SecurityException e) {
- }
- Target target = (Target)getTarget();
- MISession miSession = target.getMISession();
- MIProcess gdb = miSession.getGDBProcess();
- MIInferior inferior = miSession.getMIInferior();
- if (gdb.canInterrupt(inferior)) {
- // If we attached sending a control-c,
- // seems to alays work.
- if (miSession.isAttachSession()) {
- return true;
- }
-
- // If we have a pty, sending a control-c will work
- // except for solaris.
- if (os.equals("SunOS")) { //$NON-NLS-1$
- if (inferior.getTTY() != null) {
- // FIXME: bug in Solaris gdb when using -tty, sending a control-c
- // does not work.
- return false;
- }
- return true;
- }
- return true;
- }
- return false;
- }
-
- /**
- * @see org.eclipse.cdt.debug.core.cdi.ICDIConfiguration#terminateSessionOnExit()
- */
- public boolean terminateSessionOnExit() {
- return true;
- }
-}
diff --git a/debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/model/Thread.java b/debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/model/Thread.java
deleted file mode 100644
index a8488ad6055..00000000000
--- a/debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/model/Thread.java
+++ /dev/null
@@ -1,561 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2005 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.mi.core.cdi.model;
-
-import java.util.ArrayList;
-import java.util.List;
-
-import org.eclipse.cdt.debug.core.cdi.CDIException;
-import org.eclipse.cdt.debug.core.cdi.ICDICondition;
-import org.eclipse.cdt.debug.core.cdi.ICDILocation;
-import org.eclipse.cdt.debug.core.cdi.model.ICDIBreakpoint;
-import org.eclipse.cdt.debug.core.cdi.model.ICDISignal;
-import org.eclipse.cdt.debug.core.cdi.model.ICDIStackFrame;
-import org.eclipse.cdt.debug.core.cdi.model.ICDIThread;
-import org.eclipse.cdt.debug.core.cdi.model.ICDIThreadStorage;
-import org.eclipse.cdt.debug.core.cdi.model.ICDIThreadStorageDescriptor;
-import org.eclipse.cdt.debug.mi.core.MIException;
-import org.eclipse.cdt.debug.mi.core.MISession;
-import org.eclipse.cdt.debug.mi.core.cdi.CdiResources;
-import org.eclipse.cdt.debug.mi.core.cdi.MI2CDIException;
-import org.eclipse.cdt.debug.mi.core.cdi.RegisterManager;
-import org.eclipse.cdt.debug.mi.core.cdi.Session;
-import org.eclipse.cdt.debug.mi.core.cdi.VariableManager;
-import org.eclipse.cdt.debug.mi.core.command.CommandFactory;
-import org.eclipse.cdt.debug.mi.core.command.MIStackInfoDepth;
-import org.eclipse.cdt.debug.mi.core.command.MIStackListFrames;
-import org.eclipse.cdt.debug.mi.core.command.MIStackSelectFrame;
-import org.eclipse.cdt.debug.mi.core.output.MIFrame;
-import org.eclipse.cdt.debug.mi.core.output.MIInfo;
-import org.eclipse.cdt.debug.mi.core.output.MIStackInfoDepthInfo;
-import org.eclipse.cdt.debug.mi.core.output.MIStackListFramesInfo;
-
-/**
- */
-public class Thread extends CObject implements ICDIThread {
-
- static ICDIStackFrame[] noStack = new ICDIStackFrame[0];
- int id;
- String name;
- StackFrame currentFrame;
- List currentFrames;
- int stackdepth = 0;
-
- final public static int STACKFRAME_DEFAULT_DEPTH = 200;
-
- public Thread(Target target, int threadId) {
- this(target, threadId, null);
- }
-
- public Thread(Target target, int threadId, String threadName) {
- super(target);
- id = threadId;
- name = threadName;
- }
-
- public int getId() {
- return id;
- }
-
- public void clearState() {
- stackdepth = 0;
- currentFrame = null;
- currentFrames = null;
- }
-
- public String toString() {
- String str = Integer.toString(id);
- if (name != null) {
- str += " " + name; //$NON-NLS-1$
- }
- return str;
- }
-
- public void updateState() {
- try {
- getCurrentStackFrame();
- } catch (CDIException e) {
- }
- }
-
- public StackFrame getCurrentStackFrame() throws CDIException {
- if (currentFrame == null) {
- ICDIStackFrame[] frames = getStackFrames(0, 0);
- if (frames.length > 0) {
- currentFrame = (StackFrame)frames[0];
- }
- }
- return currentFrame;
- }
-
- /**
- * @see org.eclipse.cdt.debug.core.cdi.model.ICDIThread#getStackFrames()
- */
- public ICDIStackFrame[] getStackFrames() throws CDIException {
-
- // get the frames depth
- int depth = getStackFrameCount();
-
- // refresh if we have nothing or if we have just a subset get everything.
- if (currentFrames == null || currentFrames.size() < depth) {
- currentFrames = new ArrayList();
- Target target = (Target)getTarget();
- ICDIThread currentThread = target.getCurrentThread();
- target.lockTarget();
- try {
- target.setCurrentThread(this, false);
- MISession mi = target.getMISession();
- CommandFactory factory = mi.getCommandFactory();
- MIStackListFrames frames = factory.createMIStackListFrames();
- mi.postCommand(frames);
- MIStackListFramesInfo info = frames.getMIStackListFramesInfo();
- if (info == null) {
- throw new CDIException(CdiResources.getString("cdi.Common.No_answer")); //$NON-NLS-1$
- }
- MIFrame[] miFrames = info.getMIFrames();
- for (int i = 0; i < miFrames.length; i++) {
- currentFrames.add(new StackFrame(this, miFrames[i], depth - miFrames[i].getLevel()));
- }
- } catch (MIException e) {
- //throw new CDIException(e.getMessage());
- //System.out.println(e);
- } catch (CDIException e) {
- //throw e;
- //System.out.println(e);
- } finally {
- target.setCurrentThread(currentThread, false);
- target.releaseTarget();
- }
- // assign the currentFrame if it was not done yet.
- if (currentFrame == null) {
- for (int i = 0; i < currentFrames.size(); i++) {
- ICDIStackFrame stack = (ICDIStackFrame) currentFrames.get(i);
- if (stack.getLevel() == depth) {
- currentFrame = (StackFrame)stack;
- }
- }
- }
- }
- return (ICDIStackFrame[]) currentFrames.toArray(noStack);
- }
-
- /**
- * @see org.eclipse.cdt.debug.core.cdi.model.ICDIThread#getStackFrames()
- */
- public int getStackFrameCount() throws CDIException {
- if (stackdepth == 0) {
- Target target = (Target)getTarget();
- ICDIThread currentThread = target.getCurrentThread();
- target.lockTarget();
- try {
- target.setCurrentThread(this, false);
- MISession mi = target.getMISession();
- CommandFactory factory = mi.getCommandFactory();
- MIStackInfoDepth depth = factory.createMIStackInfoDepth();
- mi.postCommand(depth);
- MIStackInfoDepthInfo info = null;
- try {
- // Catch the first exception gdb can recover the second time.
- info = depth.getMIStackInfoDepthInfo();
- if (info == null) {
- throw new CDIException(CdiResources.getString("cdi.Common.No_answer")); //$NON-NLS-1$
- }
- stackdepth = info.getDepth();
- } catch (MIException e) {
- // First try fails, retry. gdb patches up the corrupt frame
- // so retry should give us a frame count that is safe.
- depth = factory.createMIStackInfoDepth();
- mi.postCommand(depth);
- info = depth.getMIStackInfoDepthInfo();
- if (info == null) {
- throw new CDIException(CdiResources.getString("cdi.Common.No_answer")); //$NON-NLS-1$
- }
- stackdepth = info.getDepth();
- if (stackdepth > 0) {
- stackdepth--;
- }
- }
- } catch (MIException e) {
- throw new MI2CDIException(e);
- } finally {
- target.setCurrentThread(currentThread, false);
- target.releaseTarget();
- }
- }
- return stackdepth;
- }
-
- /**
- * @see org.eclipse.cdt.debug.core.cdi.model.ICDIThread#getStackFrames()
- */
- public ICDIStackFrame[] getStackFrames(int low, int high) throws CDIException {
- if (currentFrames == null || currentFrames.size() < high) {
- currentFrames = new ArrayList();
- Target target = (Target) getTarget();
- ICDIThread currentThread = target.getCurrentThread();
- target.lockTarget();
- try {
- target.setCurrentThread(this, false);
- int depth = getStackFrameCount();
- int upperBound;
- // try to get the largest subset.
- // if what the user asks is smaller then the depth
- // try to cache things by getting the min(depth,STACKFRAME_DEFAULT_DEPTH)
- // else give fetch the entire thing.
- if (high < depth) {
- upperBound = Math.min(depth, STACKFRAME_DEFAULT_DEPTH);
- } else {
- upperBound = depth;
- }
- MISession mi = target.getMISession();
- CommandFactory factory = mi.getCommandFactory();
- MIStackListFrames frames = factory.createMIStackListFrames(0, upperBound);
- mi.postCommand(frames);
- MIStackListFramesInfo info = frames.getMIStackListFramesInfo();
- if (info == null) {
- throw new CDIException(CdiResources.getString("cdi.Common.No_answer")); //$NON-NLS-1$
- }
- MIFrame[] miFrames = info.getMIFrames();
- for (int i = 0; i < miFrames.length; i++) {
- currentFrames.add(new StackFrame(this, miFrames[i], depth - miFrames[i].getLevel()));
- }
- } catch (MIException e) {
- //throw new CDIException(e.getMessage());
- //System.out.println(e);
- } catch (CDIException e) {
- //throw e;
- //System.out.println(e);
- } finally {
- target.setCurrentThread(currentThread, false);
- target.releaseTarget();
- }
- // take time to assign the currentFrame, if it is in the set
- if (currentFrame == null) {
- for (int i = 0; i < currentFrames.size(); i++) {
- StackFrame f = (StackFrame) currentFrames.get(i);
- if (f.getMIFrame().getLevel() == 0) {
- currentFrame =f;
- }
- }
- }
- }
- List list = ((high - low + 1) <= currentFrames.size()) ? currentFrames.subList(low, high + 1) : currentFrames;
- return (ICDIStackFrame[])list.toArray(noStack);
- }
-
- /**
- * @see org.eclipse.cdt.debug.core.cdi.model.ICDIThread#setCurrentStackFrame(ICDIStackFrame, boolean)
- */
- public void setCurrentStackFrame(StackFrame stackframe, boolean doUpdate) throws CDIException {
-
- // Assert we should assert that the stackframe is one of our frames.
-
- int frameLevel = 0;
- if (stackframe != null) {
- frameLevel = stackframe.getLevel();
- }
-
- // Check to see if we are already at this level
- if (currentFrame != null && currentFrame.getLevel() == frameLevel) {
- if (stackframe != null) {
- Thread aThread = (Thread)stackframe.getThread();
- if (aThread != null && aThread.getId() == getId()) {
- // noop
- return;
- }
- }
- }
-
- Target target = (Target)getTarget();
- MISession mi = target.getMISession();
- CommandFactory factory = mi.getCommandFactory();
- // Need the GDB/MI view of level which is the reverse, i.e. the highest level is 0
- // See comment in StackFrame constructor.
- int miLevel = getStackFrameCount() - frameLevel;
- MIStackSelectFrame frame = factory.createMIStackSelectFrame(miLevel);
- // Set ourself as the current thread first.
- target.lockTarget();
- try {
- target.setCurrentThread(this, doUpdate);
- mi.postCommand(frame);
- MIInfo info = frame.getMIInfo();
- if (info == null) {
- throw new CDIException(CdiResources.getString("cdi.Common.No_answer")); //$NON-NLS-1$
- }
- currentFrame = stackframe;
- // Resetting stackframe may change the value of
- // some variables like registers. Call an update()
- // To generate changeEvents.
- if (doUpdate) {
- Session session = (Session) target.getSession();
- RegisterManager regMgr = session.getRegisterManager();
- if (regMgr.isAutoUpdate()) {
- regMgr.update(target);
- }
- VariableManager varMgr = session.getVariableManager();
- if (varMgr.isAutoUpdate()) {
- varMgr.update(target);
- }
- }
- } catch (MIException e) {
- throw new MI2CDIException(e);
- } finally {
- target.releaseTarget();
- }
- }
-
- /**
- * @see org.eclipse.cdt.debug.core.cdi.model.ICDIThread#stepInto()
- */
- public void stepInto() throws CDIException {
- stepInto(1);
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.cdt.debug.core.cdi.model.ICDIExecuteStep#stepInto(int)
- */
- public void stepInto(int count) throws CDIException {
- ((Target)getTarget()).lockTarget();
- try {
- ((Target)getTarget()).setCurrentThread(this);
- getTarget().stepInto(count);
- } finally {
- ((Target)getTarget()).releaseTarget();
- }
- }
-
- /**
- * @see org.eclipse.cdt.debug.core.cdi.model.ICDIThread#stepIntoInstruction()
- */
- public void stepIntoInstruction() throws CDIException {
- stepIntoInstruction(1);
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.cdt.debug.core.cdi.model.ICDIExecuteStep#stepIntoInstruction(int)
- */
- public void stepIntoInstruction(int count) throws CDIException {
- ((Target)getTarget()).lockTarget();
- try {
- ((Target)getTarget()).setCurrentThread(this);
- getTarget().stepIntoInstruction(count);
- } finally {
- ((Target)getTarget()).releaseTarget();
- }
- }
-
- /**
- * @see org.eclipse.cdt.debug.core.cdi.model.ICDIThread#stepOver()
- */
- public void stepOver() throws CDIException {
- stepOver(1);
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.cdt.debug.core.cdi.model.ICDIExecuteStep#stepOver(int)
- */
- public void stepOver(int count) throws CDIException {
- ((Target)getTarget()).lockTarget();
- try {
- ((Target)getTarget()).setCurrentThread(this);
- getTarget().stepOver(count);
- } finally {
- ((Target)getTarget()).releaseTarget();
- }
- }
-
- /**
- * @see org.eclipse.cdt.debug.core.cdi.model.ICDIThread#stepOverInstruction()
- */
- public void stepOverInstruction() throws CDIException {
- stepOverInstruction(1);
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.cdt.debug.core.cdi.model.ICDIExecuteStep#stepOverInstruction(int)
- */
- public void stepOverInstruction(int count) throws CDIException {
- ((Target)getTarget()).lockTarget();
- try {
- ((Target)getTarget()).setCurrentThread(this);
- getTarget().stepOverInstruction(count);
- } finally {
- ((Target)getTarget()).releaseTarget();
- }
- }
-
- /**
- * @see org.eclipse.cdt.debug.core.cdi.model.ICDIThread#stepReturn()
- */
- public void stepReturn() throws CDIException {
- getCurrentStackFrame().stepReturn();
- }
-
- /**
- * @see org.eclipse.cdt.debug.core.cdi.model.ICDIThread#runUntil(ICDILocation)
- */
- public void runUntil(ICDILocation location) throws CDIException {
- stepUntil(location);
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.cdt.debug.core.cdi.model.ICDIExecuteStep#stepUntil(org.eclipse.cdt.debug.core.cdi.ICDILocation)
- */
- public void stepUntil(ICDILocation location) throws CDIException {
- ((Target)getTarget()).lockTarget();
- try {
- ((Target)getTarget()).setCurrentThread(this);
- getTarget().stepUntil(location);
- } finally {
- ((Target)getTarget()).releaseTarget();
- }
-}
-
- /**
- * @see org.eclipse.cdt.debug.core.cdi.model.ICDIThread#isSuspended()
- */
- public boolean isSuspended() {
- return getTarget().isSuspended();
- }
-
- /**
- * @see org.eclipse.cdt.debug.core.cdi.model.ICDIThread#suspend()
- */
- public void suspend() throws CDIException {
- getTarget().suspend();
- }
-
- /**
- * @see org.eclipse.cdt.debug.core.cdi.model.ICDIThread#resume()
- */
- public void resume() throws CDIException {
- resume(false);
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.cdt.debug.core.cdi.model.ICDIExecuteResume#resume(boolean)
- */
-
- public void resume(boolean passSignal) throws CDIException {
- ((Target)getTarget()).lockTarget();
- try {
- ((Target)getTarget()).setCurrentThread(this);
- getTarget().resume(passSignal);
- } finally {
- ((Target)getTarget()).releaseTarget();
- }
- }
- /* (non-Javadoc)
- * @see org.eclipse.cdt.debug.core.cdi.model.ICDIExecuteResume#resume(org.eclipse.cdt.debug.core.cdi.ICDILocation)
- */
- public void resume(ICDILocation location) throws CDIException {
- ((Target)getTarget()).lockTarget();
- try {
- ((Target)getTarget()).setCurrentThread(this);
- getTarget().resume(location);
- } finally {
- ((Target)getTarget()).releaseTarget();
- }
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.cdt.debug.core.cdi.model.ICDIExecuteResume#resume(org.eclipse.cdt.debug.core.cdi.model.ICDISignal)
- */
- public void resume(ICDISignal signal) throws CDIException {
- ((Target)getTarget()).lockTarget();
- try {
- ((Target)getTarget()).setCurrentThread(this);
- getTarget().resume(signal);
- } finally {
- ((Target)getTarget()).releaseTarget();
- }
- }
-
- /**
- * @see org.eclipse.cdt.debug.core.cdi.model.ICDIThread#jump(org.eclipse.cdt.debug.core.cdi.ICDILocation)
- */
- public void jump(ICDILocation location) throws CDIException {
- resume(location);
- }
-
- /**
- * @see org.eclipse.cdt.debug.core.cdi.model.ICDIThread#signal()
- */
- public void signal() throws CDIException {
- resume(false);
- }
-
- /**
- * @see org.eclipse.cdt.debug.core.cdi.model.ICDIThread#signal(org.eclipse.cdt.debug.core.cdi.model.ICDISignal)
- */
- public void signal(ICDISignal signal) throws CDIException {
- resume(signal);
- }
-
-
- /**
- * @see org.eclipse.cdt.debug.core.cdi.model.ICDIThread#equals(ICDIThread)
- */
- public boolean equals(ICDIThread thread) {
- if (thread instanceof Thread) {
- Thread cthread = (Thread) thread;
- return id == cthread.getId();
- }
- return super.equals(thread);
- }
-
- public ICDIBreakpoint[] getBreakpoints() throws CDIException {
- Target target = (Target)getTarget();
- ICDIBreakpoint[] bps = target.getBreakpoints();
- ArrayList list = new ArrayList(bps.length);
- for (int i = 0; i < bps.length; i++) {
- ICDICondition condition = bps[i].getCondition();
- if (condition == null) {
- continue;
- }
- String[] threadIds = condition.getThreadIds();
- for (int j = 0; j < threadIds.length; j++) {
- int tid = 0;
- try {
- tid = Integer.parseInt(threadIds[j]);
- } catch (NumberFormatException e) {
- //
- }
- if (tid == getId()) {
- list.add(bps[i]);
- }
- }
- }
- return (ICDIBreakpoint[]) list.toArray(new ICDIBreakpoint[list.size()]);
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.cdt.debug.core.cdi.model.ICDIThread#getThreadStorageDescriptors()
- */
- public ICDIThreadStorageDescriptor[] getThreadStorageDescriptors() throws CDIException {
- Session session = (Session)getTarget().getSession();
- VariableManager varMgr = session.getVariableManager();
- return varMgr.getThreadStorageDescriptors(this);
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.cdt.debug.core.cdi.model.ICDIThread#createThreadStorage(org.eclipse.cdt.debug.core.cdi.model.ICDIThreadStorageDescriptor)
- */
- public ICDIThreadStorage createThreadStorage(ICDIThreadStorageDescriptor varDesc) throws CDIException {
- if (varDesc instanceof ThreadStorageDescriptor) {
- Session session = (Session)getTarget().getSession();
- VariableManager varMgr = session.getVariableManager();
- return varMgr.createThreadStorage((ThreadStorageDescriptor)varDesc);
- }
- return null;
- }
-
-}
diff --git a/debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/model/ThreadStorage.java b/debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/model/ThreadStorage.java
deleted file mode 100644
index 793ee549554..00000000000
--- a/debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/model/ThreadStorage.java
+++ /dev/null
@@ -1,55 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2002, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.cdt.debug.mi.core.cdi.model;
-
-import org.eclipse.cdt.debug.core.cdi.model.ICDIThreadStorage;
-import org.eclipse.cdt.debug.mi.core.command.MIVarCreate;
-import org.eclipse.cdt.debug.mi.core.output.MIVar;
-
-/**
- * ThreadStorage
- */
-public class ThreadStorage extends Variable implements ICDIThreadStorage {
-
- /**
- * @param obj
- * @param v
- */
- public ThreadStorage(VariableDescriptor obj, MIVarCreate v) {
- super(obj, v);
- }
-
- /**
- * @param target
- * @param thread
- * @param frame
- * @param n
- * @param q
- * @param pos
- * @param depth
- * @param v
- */
- public ThreadStorage(Target target, Thread thread, StackFrame frame,
- String n, String q, int pos, int depth, MIVar miVar) {
- super(target, thread, frame, n, q, pos, depth, miVar);
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.cdt.debug.mi.core.cdi.model.Variable#createVariable(org.eclipse.cdt.debug.mi.core.cdi.model.Target, org.eclipse.cdt.debug.mi.core.cdi.model.Thread, org.eclipse.cdt.debug.mi.core.cdi.model.StackFrame, java.lang.String, java.lang.String, int, int, org.eclipse.cdt.debug.mi.core.output.MIVar)
- */
- protected Variable createVariable(Target target, Thread thread,
- StackFrame frame, String name, String fullName, int pos, int depth,
- MIVar miVar) {
- return new Register(target, thread, frame, name, fullName, pos, depth, miVar);
- }
-
-}
diff --git a/debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/model/ThreadStorageDescriptor.java b/debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/model/ThreadStorageDescriptor.java
deleted file mode 100644
index 37fa8590c10..00000000000
--- a/debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/model/ThreadStorageDescriptor.java
+++ /dev/null
@@ -1,36 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2002, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.cdt.debug.mi.core.cdi.model;
-
-import org.eclipse.cdt.debug.core.cdi.model.ICDIThreadStorageDescriptor;
-
-/**
- * ThreadStorageDescriptor
- */
-public class ThreadStorageDescriptor extends VariableDescriptor implements
- ICDIThreadStorageDescriptor {
-
- /**
- * @param target
- * @param thread
- * @param stack
- * @param n
- * @param fn
- * @param pos
- * @param depth
- */
- public ThreadStorageDescriptor(Target target, Thread thread,
- StackFrame stack, String n, String fn, int pos, int depth) {
- super(target, thread, stack, n, fn, pos, depth);
- }
-
-}
diff --git a/debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/model/Value.java b/debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/model/Value.java
deleted file mode 100644
index 134d819549a..00000000000
--- a/debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/model/Value.java
+++ /dev/null
@@ -1,119 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.mi.core.cdi.model;
-
-import org.eclipse.cdt.debug.core.cdi.CDIException;
-import org.eclipse.cdt.debug.core.cdi.model.ICDIValue;
-import org.eclipse.cdt.debug.core.cdi.model.ICDIVariable;
-import org.eclipse.cdt.debug.core.cdi.model.type.ICDIType;
-import org.eclipse.cdt.debug.mi.core.MIException;
-import org.eclipse.cdt.debug.mi.core.MISession;
-import org.eclipse.cdt.debug.mi.core.cdi.CdiResources;
-import org.eclipse.cdt.debug.mi.core.command.CommandFactory;
-import org.eclipse.cdt.debug.mi.core.command.MIVarEvaluateExpression;
-import org.eclipse.cdt.debug.mi.core.output.MIVarEvaluateExpressionInfo;
-
-/**
- */
-public class Value extends CObject implements ICDIValue {
-
- protected Variable fVariable;
-
- public Value(Variable v) {
- super((Target)v.getTarget());
- fVariable = v;
- }
-
- protected Variable getVariable() throws CDIException {
- return fVariable;
- }
-
- /**
- * @see org.eclipse.cdt.debug.core.cdi.model.ICDIValue#getTypeName()
- */
- public String getTypeName() throws CDIException {
- return getVariable().getTypeName();
- }
-
- /**
- * @see org.eclipse.cdt.debug.core.cdi.model.ICDIValue#getValueString()
- */
- public String getValueString() throws CDIException {
- // make sure the variable is updated.
- if (! getVariable().isUpdated()) {
- getVariable().update();
- }
-
- String result = ""; //$NON-NLS-1$
- MISession mi = ((Target)getTarget()).getMISession();
- CommandFactory factory = mi.getCommandFactory();
- MIVarEvaluateExpression var =
- factory.createMIVarEvaluateExpression(getVariable().getMIVar().getVarName());
- try {
- mi.postCommand(var);
- MIVarEvaluateExpressionInfo info = var.getMIVarEvaluateExpressionInfo();
- if (info == null) {
- throw new CDIException(CdiResources.getString("cdi.Common.No_answer")); //$NON-NLS-1$
- }
- result = info.getValue();
- } catch (MIException e) {
- throw new CDIException(e.getMessage());
- }
- return result;
- }
-
- /**
- * @see org.eclipse.cdt.debug.core.cdi.model.ICDIValue#getVariables()
- */
- public int getChildrenNumber() throws CDIException {
- return getVariable().getMIVar().getNumChild();
- }
-
- /**
- * @see org.eclipse.cdt.debug.core.cdi.model.ICDIValue#getVariables()
- */
- public boolean hasChildren() throws CDIException {
- /*
- int number = 0;
- MISession mi = getCTarget().getCSession().getMISession();
- CommandFactory factory = mi.getCommandFactory();
- MIVarInfoNumChildren children =
- factory.createMIVarInfoNumChildren(variable.getMIVar().getVarName());
- try {
- mi.postCommand(children);
- MIVarInfoNumChildrenInfo info = children.getMIVarInfoNumChildrenInfo();
- if (info == null) {
- throw new CDIException("No answer");
- }
- number = info.getChildNumber();
- } catch (MIException e) {
- throw new CDIException(e.getMessage());
- }
- return (number > 0);
- */
- return (getChildrenNumber() > 0);
- }
-
- /**
- * @see org.eclipse.cdt.debug.core.cdi.model.ICDIValue#getVariables()
- */
- public ICDIVariable[] getVariables() throws CDIException {
- return getVariable().getChildren();
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.cdt.debug.core.cdi.model.ICDIValue#getType()
- */
- public ICDIType getType() throws CDIException {
- return getVariable().getType();
- }
-
-}
diff --git a/debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/model/Variable.java b/debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/model/Variable.java
deleted file mode 100644
index 3fc0b267bff..00000000000
--- a/debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/model/Variable.java
+++ /dev/null
@@ -1,529 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2005 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.mi.core.cdi.model;
-
-import org.eclipse.cdt.debug.core.cdi.CDIException;
-import org.eclipse.cdt.debug.core.cdi.model.ICDITarget;
-import org.eclipse.cdt.debug.core.cdi.model.ICDIValue;
-import org.eclipse.cdt.debug.core.cdi.model.ICDIVariable;
-import org.eclipse.cdt.debug.core.cdi.model.type.ICDIArrayType;
-import org.eclipse.cdt.debug.core.cdi.model.type.ICDIBoolType;
-import org.eclipse.cdt.debug.core.cdi.model.type.ICDICharType;
-import org.eclipse.cdt.debug.core.cdi.model.type.ICDIDoubleType;
-import org.eclipse.cdt.debug.core.cdi.model.type.ICDIEnumType;
-import org.eclipse.cdt.debug.core.cdi.model.type.ICDIFloatType;
-import org.eclipse.cdt.debug.core.cdi.model.type.ICDIFunctionType;
-import org.eclipse.cdt.debug.core.cdi.model.type.ICDIIntType;
-import org.eclipse.cdt.debug.core.cdi.model.type.ICDILongLongType;
-import org.eclipse.cdt.debug.core.cdi.model.type.ICDILongType;
-import org.eclipse.cdt.debug.core.cdi.model.type.ICDIPointerType;
-import org.eclipse.cdt.debug.core.cdi.model.type.ICDIReferenceType;
-import org.eclipse.cdt.debug.core.cdi.model.type.ICDIShortType;
-import org.eclipse.cdt.debug.core.cdi.model.type.ICDIStructType;
-import org.eclipse.cdt.debug.core.cdi.model.type.ICDIType;
-import org.eclipse.cdt.debug.core.cdi.model.type.ICDIWCharType;
-import org.eclipse.cdt.debug.mi.core.MIException;
-import org.eclipse.cdt.debug.mi.core.MIPlugin;
-import org.eclipse.cdt.debug.mi.core.MISession;
-import org.eclipse.cdt.debug.mi.core.cdi.CdiResources;
-import org.eclipse.cdt.debug.mi.core.cdi.ExpressionManager;
-import org.eclipse.cdt.debug.mi.core.cdi.Format;
-import org.eclipse.cdt.debug.mi.core.cdi.MI2CDIException;
-import org.eclipse.cdt.debug.mi.core.cdi.MemoryManager;
-import org.eclipse.cdt.debug.mi.core.cdi.RegisterManager;
-import org.eclipse.cdt.debug.mi.core.cdi.Session;
-import org.eclipse.cdt.debug.mi.core.cdi.VariableManager;
-import org.eclipse.cdt.debug.mi.core.cdi.model.type.ArrayValue;
-import org.eclipse.cdt.debug.mi.core.cdi.model.type.BoolValue;
-import org.eclipse.cdt.debug.mi.core.cdi.model.type.CharValue;
-import org.eclipse.cdt.debug.mi.core.cdi.model.type.DoubleValue;
-import org.eclipse.cdt.debug.mi.core.cdi.model.type.EnumValue;
-import org.eclipse.cdt.debug.mi.core.cdi.model.type.FloatValue;
-import org.eclipse.cdt.debug.mi.core.cdi.model.type.FunctionValue;
-import org.eclipse.cdt.debug.mi.core.cdi.model.type.IntValue;
-import org.eclipse.cdt.debug.mi.core.cdi.model.type.LongLongValue;
-import org.eclipse.cdt.debug.mi.core.cdi.model.type.LongValue;
-import org.eclipse.cdt.debug.mi.core.cdi.model.type.PointerValue;
-import org.eclipse.cdt.debug.mi.core.cdi.model.type.ReferenceValue;
-import org.eclipse.cdt.debug.mi.core.cdi.model.type.ShortValue;
-import org.eclipse.cdt.debug.mi.core.cdi.model.type.StructValue;
-import org.eclipse.cdt.debug.mi.core.cdi.model.type.WCharValue;
-import org.eclipse.cdt.debug.mi.core.command.CommandFactory;
-import org.eclipse.cdt.debug.mi.core.command.MIVarAssign;
-import org.eclipse.cdt.debug.mi.core.command.MIVarCreate;
-import org.eclipse.cdt.debug.mi.core.command.MIVarInfoExpression;
-import org.eclipse.cdt.debug.mi.core.command.MIVarInfoType;
-import org.eclipse.cdt.debug.mi.core.command.MIVarListChildren;
-import org.eclipse.cdt.debug.mi.core.command.MIVarSetFormat;
-import org.eclipse.cdt.debug.mi.core.command.MIVarShowAttributes;
-import org.eclipse.cdt.debug.mi.core.event.MIVarChangedEvent;
-import org.eclipse.cdt.debug.mi.core.output.MIInfo;
-import org.eclipse.cdt.debug.mi.core.output.MIVar;
-import org.eclipse.cdt.debug.mi.core.output.MIVarCreateInfo;
-import org.eclipse.cdt.debug.mi.core.output.MIVarInfoExpressionInfo;
-import org.eclipse.cdt.debug.mi.core.output.MIVarInfoTypeInfo;
-import org.eclipse.cdt.debug.mi.core.output.MIVarListChildrenInfo;
-import org.eclipse.cdt.debug.mi.core.output.MIVarShowAttributesInfo;
-
-/**
- */
-public abstract class Variable extends VariableDescriptor implements ICDIVariable {
-
- protected MIVarCreate fVarCreateCMD;
- protected MIVar fMIVar;
- Value value;
- public ICDIVariable[] children = new ICDIVariable[0];
- String editable = null;
- String language;
- boolean isFake = false;
- boolean isUpdated = true;
-
- public Variable(VariableDescriptor obj, MIVarCreate var) {
- super(obj);
- fVarCreateCMD = var;
- }
-
- public Variable(Target target, Thread thread, StackFrame frame, String n, String q, int pos, int depth, MIVar miVar) {
- super(target, thread, frame, n, q, pos, depth);
- fMIVar = miVar;
- }
-
- public void setUpdated(boolean update) {
- isUpdated = update;
- }
-
- public boolean isUpdated() {
- return isUpdated;
- }
-
- public void update() throws CDIException {
- Session session = (Session)getTarget().getSession();
- VariableManager mgr = session.getVariableManager();
- mgr.update(this);
- }
-
- public MIVar getMIVar() throws CDIException {
- if (fMIVar == null) {
-
- // Oops! what's up here, we should use Assert
- if (fVarCreateCMD == null) {
- throw new CDIException("Incomplete initialization of variable"); //$NON-NLS-1$
- }
-
- try {
- MISession mi = ((Target)getTarget()).getMISession();
- MIVarCreateInfo info = null;
- // Wait for the response or timedout
- synchronized (fVarCreateCMD) {
- // RxThread will set the MIOutput on the cmd
- // when the response arrive.
- while ((info = fVarCreateCMD.getMIVarCreateInfo()) == null) {
- try {
- fVarCreateCMD.wait(mi.getCommandTimeout());
- info = fVarCreateCMD.getMIVarCreateInfo();
- if (info == null) {
- throw new MIException(MIPlugin.getResourceString("src.MISession.Target_not_responding")); //$NON-NLS-1$
- }
- } catch (InterruptedException e) {
- }
- }
- }
-
- if (info == null) {
- throw new CDIException(CdiResources.getString("cdi.Common.No_answer")); //$NON-NLS-1$
- }
- fMIVar = info.getMIVar();
- } catch (MIException e) {
- throw new MI2CDIException(e);
- }
- }
- return fMIVar;
- }
-
- public Variable getChild(String name) {
- for (int i = 0; i < children.length; i++) {
- Variable variable = (Variable) children[i];
- try {
- if (name.equals(variable.getMIVar().getVarName())) {
- return variable;
- }
- // Look also in the grandchildren.
- Variable grandChild = variable.getChild(name);
- if (grandChild != null) {
- return grandChild;
- }
- } catch (CDIException e) {
- // ignore;
- }
- }
- return null;
- }
-
- String getLanguage() throws CDIException {
- if (language == null) {
- MISession mi = ((Target)getTarget()).getMISession();
- CommandFactory factory = mi.getCommandFactory();
- MIVarInfoExpression var = factory.createMIVarInfoExpression(getMIVar().getVarName());
- try {
- mi.postCommand(var);
- MIVarInfoExpressionInfo info = var.getMIVarInfoExpressionInfo();
- if (info == null) {
- throw new CDIException(CdiResources.getString("cdi.Common.No_answer")); //$NON-NLS-1$
- }
- language = info.getLanguage();
- } catch (MIException e) {
- throw new MI2CDIException(e);
- }
- }
- return (language == null) ? "" : language; //$NON-NLS-1$
- }
-
- boolean isCPPLanguage() throws CDIException {
- return getLanguage().equalsIgnoreCase("C++"); //$NON-NLS-1$
- }
-
- void setIsFake(boolean f) {
- isFake = f;
- }
-
- boolean isFake() {
- return isFake;
- }
-
- public ICDIVariable[] getChildren() throws CDIException {
- // Use the default timeout.
- return getChildren(-1);
- }
-
- /**
- * This can be a potentially long operation for GDB.
- * allow the override of the timeout.
- */
- public ICDIVariable[] getChildren(int timeout) throws CDIException {
- MISession mi = ((Target)getTarget()).getMISession();
- CommandFactory factory = mi.getCommandFactory();
- MIVarListChildren var = factory.createMIVarListChildren(getMIVar().getVarName());
- try {
- if (timeout >= 0) {
- mi.postCommand(var, timeout);
- } else {
- mi.postCommand(var);
- }
- MIVarListChildrenInfo info = var.getMIVarListChildrenInfo();
- if (info == null) {
- throw new CDIException(CdiResources.getString("cdi.Common.No_answer")); //$NON-NLS-1$
- }
- MIVar[] vars = info.getMIVars();
- children = new Variable[vars.length];
- for (int i = 0; i < vars.length; i++) {
- String fn= getFullName();
- String childName = vars[i].getExp();
- ICDIType childType = null;
- boolean childFake = false;
- ICDIType t = getType();
- if (t instanceof ICDIArrayType) {
- // For Array gdb varobj only return the index, override here.
- int index = castingIndex + i;
- fn = "(" + fn + ")[" + index + "]"; //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
- childName = getName() + "[" + index + "]"; //$NON-NLS-1$ //$NON-NLS-2$
- } else if (t instanceof ICDIPointerType) {
- ICDIType subType = ((ICDIPointerType)t).getComponentType();
- if (subType instanceof ICDIStructType) {
- if (isCPPLanguage()) {
- if (!isFake()
- || (isFake() && !(fName.equals("private") || fName.equals("public") || fName.equals("protected")))) { //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
- childFake = true;
- childType = t;
- } else {
- fn = "(" + fn + ")->" + vars[i].getExp(); //$NON-NLS-1$ //$NON-NLS-2$
- }
- } else { // If not C++ language
- fn = "(" + fn + ")->" + vars[i].getExp(); //$NON-NLS-1$ //$NON-NLS-2$
- }
- } else {
- fn = "*(" + fn + ")"; //$NON-NLS-1$ //$NON-NLS-2$
- }
- } else if (t instanceof ICDIReferenceType) {
- ICDIType subType = ((ICDIReferenceType)t).getComponentType();
- if (subType instanceof ICDIStructType) {
- if (isCPPLanguage()) {
- if (!isFake()
- || (isFake() && !(fName.equals("private") || fName.equals("public") || fName.equals("protected")))) { //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
- childFake = true;
- childType = t;
- } else {
- fn = "(" + fn + ")." + vars[i].getExp(); //$NON-NLS-1$ //$NON-NLS-2$
- }
- } else { // If not C++ language
- fn = "(" + fn + ")." + vars[i].getExp(); //$NON-NLS-1$ //$NON-NLS-2$
- }
- } else {
- fn = "(" + fn + ")"; //$NON-NLS-1$ //$NON-NLS-2$
- }
- } else if (t instanceof ICDIStructType) {
- if (isCPPLanguage()) {
- // For C++ in GDB the children of the
- // the struture are the scope and the inherited classes.
- // For example:
- // class foo: public bar {
- // int x;
- // public: int y;
- // } foobar;
- // This will map to
- // - foobar
- // + bar
- // - private
- // - x
- // - public
- // - y
- // So we choose to ignore the first set of children
- // but carry over to those "fake" variables the typename and the qualified name
- if (!isFake()
- || (isFake() && !(fName.equals("private") || fName.equals("public") || fName.equals("protected")))) { //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
- childFake = true;
- childType = t;
- } else {
- fn = "(" + fn + ")." + vars[i].getExp(); //$NON-NLS-1$ //$NON-NLS-2$
- }
- } else { // If not C++ language
- fn = "(" + fn + ")." + vars[i].getExp(); //$NON-NLS-1$ //$NON-NLS-2$
- }
- }
- Variable v = createVariable((Target)getTarget(), (Thread)getThread(), (StackFrame)getStackFrame(),
- childName, fn, getPosition(), getStackDepth(), vars[i]);
- if (childType != null) {
- // Hack to reset the typename to a known value
- v.fType = childType;
- }
- v.setIsFake(childFake);
- children[i] = v;
- }
- } catch (MIException e) {
- throw new MI2CDIException(e);
- }
- return children;
- }
-
- protected abstract Variable createVariable(Target target, Thread thread, StackFrame frame,
- String name, String fullName, int pos, int depth, MIVar miVar);
-
- public int getChildrenNumber() throws CDIException {
- return getMIVar().getNumChild();
- }
-
- /**
- * @see org.eclipse.cdt.debug.core.cdi.model.ICDIVariable#getValue()
- */
- public ICDIValue getValue() throws CDIException {
- if (value == null) {
- ICDIType t = getType();
- if (t instanceof ICDIBoolType) {
- value = new BoolValue(this);
- } else if (t instanceof ICDICharType) {
- value = new CharValue(this);
- } else if (t instanceof ICDIWCharType) {
- value = new WCharValue(this);
- } else if (t instanceof ICDIShortType) {
- value = new ShortValue(this);
- } else if (t instanceof ICDIIntType) {
- value = new IntValue(this);
- } else if (t instanceof ICDILongType) {
- value = new LongValue(this);
- } else if (t instanceof ICDILongLongType) {
- value = new LongLongValue(this);
- } else if (t instanceof ICDIEnumType) {
- value = new EnumValue(this);
- } else if (t instanceof ICDIFloatType) {
- value = new FloatValue(this);
- } else if (t instanceof ICDIDoubleType) {
- value = new DoubleValue(this);
- } else if (t instanceof ICDIFunctionType) {
- value = new FunctionValue(this);
- } else if (t instanceof ICDIPointerType) {
- value = new PointerValue(this);
- } else if (t instanceof ICDIReferenceType) {
- value = new ReferenceValue(this);
- } else if (t instanceof ICDIArrayType) {
- value = new ArrayValue(this);
- } else if (t instanceof ICDIStructType) {
- value = new StructValue(this);
- } else {
- value = new Value(this);
- }
- }
- return value;
- }
-
- /**
- * @see org.eclipse.cdt.debug.core.cdi.model.ICDIVariable#setValue(ICDIValue)
- */
- public void setValue(ICDIValue value) throws CDIException {
- setValue(value.getValueString());
- }
-
- /**
- * @see org.eclipse.cdt.debug.core.cdi.model.ICDIVariable#setValue(String)
- */
- public void setValue(String expression) throws CDIException {
- Target target = (Target)getTarget();
- MISession miSession = target.getMISession();
- CommandFactory factory = miSession.getCommandFactory();
- MIVarAssign var = factory.createMIVarAssign(getMIVar().getVarName(), expression);
- try {
- miSession.postCommand(var);
- MIInfo info = var.getMIInfo();
- if (info == null) {
- throw new CDIException(CdiResources.getString("cdi.Common.No_answer")); //$NON-NLS-1$
- }
- } catch (MIException e) {
- throw new MI2CDIException(e);
- }
-
- // If the assign was succesfull fire a MIVarChangedEvent() for the variable
- // Note GDB will not fire an event for the changed variable we have to do it manually.
- MIVarChangedEvent change = new MIVarChangedEvent(miSession, var.getToken(), getMIVar().getVarName());
- miSession.fireEvent(change);
-
- // Changing values may have side effects i.e. affecting other variables
- // if the manager is on autoupdate check all the other variables.
- // Note: This maybe very costly.
- // assigning may have side effects i.e. affecting other registers.
-
- // If register was on autoupdate, update all the other registers
- RegisterManager regMgr = ((Session)target.getSession()).getRegisterManager();
- if (regMgr.isAutoUpdate()) {
- regMgr.update(target);
- }
-
- // If expression manager is on autoupdate, update all expressions
- ExpressionManager expMgr = ((Session)target.getSession()).getExpressionManager();
- if (expMgr.isAutoUpdate()) {
- expMgr.update(target);
- }
-
- // If variable manager is on autoupdate, update all variables
- VariableManager varMgr = ((Session)target.getSession()).getVariableManager();
- if (varMgr.isAutoUpdate()) {
- varMgr.update(target);
- }
-
- // If memory manager is on autoupdate, update all memory blocks
- MemoryManager memMgr = ((Session)target.getSession()).getMemoryManager();
- if (memMgr.isAutoUpdate()) {
- memMgr.update(target);
- }
- }
-
- /**
- * Overload the implementation of VariableDescriptor and let gdb
- * handle it.
- * @see org.eclipse.cdt.debug.core.cdi.model.ICDIVariable#isEditable()
- */
- public boolean isEditable() throws CDIException {
- if (editable == null) {
- MISession mi = ((Target) getTarget()).getMISession();
- CommandFactory factory = mi.getCommandFactory();
- MIVarShowAttributes var = factory.createMIVarShowAttributes(getMIVar().getVarName());
- try {
- mi.postCommand(var);
- MIVarShowAttributesInfo info = var.getMIVarShowAttributesInfo();
- if (info == null) {
- throw new CDIException(CdiResources.getString("cdi.Common.No_answer")); //$NON-NLS-1$
- }
- editable = String.valueOf(info.isEditable());
- } catch (MIException e) {
- throw new MI2CDIException(e);
- }
- }
- return (editable == null) ? false : editable.equalsIgnoreCase("true"); //$NON-NLS-1$
- }
-
- /**
- * @see org.eclipse.cdt.debug.core.cdi.model.ICDIVariable#setFormat()
- */
- public void setFormat(int format) throws CDIException {
- int fmt = Format.toMIFormat(format);
- MISession mi = ((Target) getTarget()).getMISession();
- CommandFactory factory = mi.getCommandFactory();
- MIVarSetFormat var = factory.createMIVarSetFormat(getMIVar().getVarName(), fmt);
- try {
- mi.postCommand(var);
- MIInfo info = var.getMIInfo();
- if (info == null) {
- throw new CDIException(CdiResources.getString("cdi.Common.No_answer")); //$NON-NLS-1$
- }
- } catch (MIException e) {
- throw new MI2CDIException(e);
- }
- }
-
- /**
- * @see org.eclipse.cdt.debug.core.cdi.model.ICDIVariable#equals()
- */
- public boolean equals(ICDIVariable var) {
- if (var instanceof Variable) {
- Variable variable = (Variable) var;
- return equals(variable);
- }
- return super.equals(var);
- }
-
- /**
- * @param variable
- * @return
- */
- public boolean equals(Variable variable) {
- try {
- return getMIVar().getVarName().equals(variable.getMIVar().getVarName());
- } catch (CDIException e) {
- // ignore.
- }
- return super.equals(variable);
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.cdt.debug.core.cdi.model.ICDIVariable#dispose()
- */
- public void dispose() throws CDIException {
- ICDITarget target = getTarget();
- VariableManager varMgr = ((Session)target.getSession()).getVariableManager();
- varMgr.destroyVariable(this);
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.cdt.debug.core.cdi.model.ICDIVariableDescriptor#getTypeName()
- */
- public String getTypeName() throws CDIException {
- if (fTypename == null) {
- fTypename = getMIVar().getType();
- if (fTypename == null || fTypename.length() == 0) {
- MISession mi = ((Target) getTarget()).getMISession();
- CommandFactory factory = mi.getCommandFactory();
- MIVarInfoType infoType = factory.createMIVarInfoType(getMIVar().getVarName());
- try {
- mi.postCommand(infoType);
- MIVarInfoTypeInfo info = infoType.getMIVarInfoTypeInfo();
- if (info == null) {
- throw new CDIException(CdiResources.getString("cdi.Common.No_answer")); //$NON-NLS-1$
- }
- fTypename = info.getType();
- } catch (MIException e) {
- throw new MI2CDIException(e);
- }
- }
- }
- return fTypename;
- }
-
- public void setMIVarCreate(MIVarCreate miVar) {
- fVarCreateCMD = miVar;
- }
-}
diff --git a/debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/model/VariableDescriptor.java b/debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/model/VariableDescriptor.java
deleted file mode 100644
index 68fbe22b2e5..00000000000
--- a/debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/model/VariableDescriptor.java
+++ /dev/null
@@ -1,415 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.mi.core.cdi.model;
-
-import org.eclipse.cdt.debug.core.cdi.CDIException;
-import org.eclipse.cdt.debug.core.cdi.model.ICDIStackFrame;
-import org.eclipse.cdt.debug.core.cdi.model.ICDIThread;
-import org.eclipse.cdt.debug.core.cdi.model.ICDIVariableDescriptor;
-import org.eclipse.cdt.debug.core.cdi.model.type.ICDIType;
-import org.eclipse.cdt.debug.mi.core.MIException;
-import org.eclipse.cdt.debug.mi.core.MISession;
-import org.eclipse.cdt.debug.mi.core.cdi.MI2CDIException;
-import org.eclipse.cdt.debug.mi.core.cdi.Session;
-import org.eclipse.cdt.debug.mi.core.cdi.SourceManager;
-import org.eclipse.cdt.debug.mi.core.cdi.VariableManager;
-import org.eclipse.cdt.debug.mi.core.cdi.model.type.IncompleteType;
-import org.eclipse.cdt.debug.mi.core.command.CommandFactory;
-import org.eclipse.cdt.debug.mi.core.command.MIDataEvaluateExpression;
-import org.eclipse.cdt.debug.mi.core.output.MIDataEvaluateExpressionInfo;
-import org.eclipse.cdt.debug.mi.core.cdi.CdiResources;
-
-/**
- */
-public abstract class VariableDescriptor extends CObject implements ICDIVariableDescriptor {
-
- // Casting info.
- String[] castingTypes;
- int castingIndex;
- int castingLength;
-
- String fName;
- int position;
- StackFrame fStackFrame;
- Thread fThread;
- int stackdepth;
-
- String qualifiedName = null;
- String fFullName = null;
- protected ICDIType fType = null;
- protected String fTypename = null;
- String sizeof = null;
-
- /**
- * Copy constructor.
- * @param desc
- */
- public VariableDescriptor(VariableDescriptor desc) {
- super((Target)desc.getTarget());
- fName = desc.getName();
- fFullName = desc.fFullName;
- sizeof = desc.sizeof;
- fType = desc.fType;
- try {
- fStackFrame = (StackFrame)desc.getStackFrame();
- fThread = (Thread)desc.getThread();
- } catch (CDIException e) {
- }
- position = desc.getPosition();
- stackdepth = desc.getStackDepth();
- castingIndex = desc.getCastingArrayStart();
- castingLength = desc.getCastingArrayEnd();
- castingTypes = desc.getCastingTypes();
- }
-
- public VariableDescriptor(Target target, Thread thread, StackFrame stack, String n, String fn, int pos, int depth) {
- super(target);
- fName = n;
- fFullName = fn;
- fStackFrame = stack;
- fThread = thread;
- position = pos;
- stackdepth = depth;
- }
-
- public int getPosition() {
- return position;
- }
-
- public int getStackDepth() {
- return stackdepth;
- }
-
- public void setCastingArrayStart(int start) {
- castingIndex = start;
- }
- public int getCastingArrayStart() {
- return castingIndex;
- }
-
- public void setCastingArrayEnd(int end) {
- castingLength = end;
- }
- public int getCastingArrayEnd() {
- return castingLength;
- }
-
- public void setCastingTypes(String[] t) {
- castingTypes = t;
- }
- public String[] getCastingTypes() {
- return castingTypes;
- }
-
- /**
- * If the variable was a cast encode the string appropriately for GDB.
- * For example castin to an array is of 2 elements:
- * (foo)@2
- * @return
- */
- public String encodeVariable() {
- String fn = getFullName();
- if (castingLength > 0 || castingIndex > 0) {
- StringBuffer buffer = new StringBuffer();
- buffer.append("*("); //$NON-NLS-1$
- buffer.append('(').append(fn).append(')');
- buffer.append('+').append(castingIndex).append(')');
- buffer.append('@').append(castingLength);
- fn = buffer.toString();
- } else if (castingTypes != null && castingTypes.length > 0) {
- StringBuffer buffer = new StringBuffer();
- for (int i = 0; i < castingTypes.length; ++i) {
- if (castingTypes[i] != null && castingTypes[i].length() > 0) {
- if (buffer.length() == 0) {
- buffer.append('(').append(castingTypes[i]).append(')');
- buffer.append(fn);
- } else {
- buffer.insert(0, '(');
- buffer.append(')');
- StringBuffer b = new StringBuffer();
- b.append('(').append(castingTypes[i]).append(')');
- buffer.insert(0, b.toString());
- }
- }
- }
- fn = buffer.toString();
- }
- return fn;
- }
-
- public String getFullName() {
- if (fFullName == null) {
- fFullName = getName();
- }
- return fFullName;
- }
-
- protected ICDIType getFromTypeCache(String nameType) throws CDIException {
- StackFrame frame = (StackFrame)getStackFrame();
- ICDIType detailedType = null;
- if (frame != null) {
- detailedType = frame.getFromTypeCache(nameType);
- }
- return detailedType;
- }
-
- protected void addToTypeCache(String nameType, ICDIType typeDefinition) throws CDIException {
- StackFrame frame = (StackFrame)getStackFrame();
- if (frame != null) {
- frame.addToTypeCache(nameType, typeDefinition);
- }
- }
-
- /**
- * @see org.eclipse.cdt.debug.core.cdi.ICDIVariableDescriptor#getName()
- */
- public String getName() {
- return fName;
- }
-
- /**
- * @see org.eclipse.cdt.debug.core.cdi.model.ICDIVariable#getType()
- */
- public ICDIType getType() throws CDIException {
- if (fType == null) {
- String nametype = getTypeName();
- Target target = (Target)getTarget();
- Session session = (Session) target.getSession();
- SourceManager sourceMgr = session.getSourceManager();
- try {
- fType = sourceMgr.getType(target, nametype);
- } catch (CDIException e) {
- // We are here because the parser did not recognize the type, it may be something
- // like "builtin_x86_vector" or even a class or a typedef
- // typedef struct foobar Foobar_t
- // for this case we need to call "Ptype" for more details.
-
- // For speed we save the type definitions in the stackframe, try it first.
- fType = getFromTypeCache(nametype);
- if (fType == null) {
- // Try with ptype.
- try {
- String ptype = sourceMgr.getDetailTypeName(target, nametype);
- fType = sourceMgr.getType(target, ptype);
- } catch (CDIException ex) {
- // Some version of gdb does not work on the name of the class
- // ex: class data foo --> ptype data --> fails
- // ex: class data foo --> ptype foo --> succeed
- StackFrame frame = (StackFrame)getStackFrame();
- if (frame == null) {
- Thread thread = (Thread)getThread();
- if (thread != null) {
- frame = thread.getCurrentStackFrame();
- } else {
- frame = ((Thread)target.getCurrentThread()).getCurrentStackFrame();
- }
- }
- try {
- String ptype = sourceMgr.getDetailTypeNameFromVariable(frame, getQualifiedName());
- fType = sourceMgr.getType(target, ptype);
- } catch (CDIException e2) {
- // give up.
- }
- }
- }
- }
- if (fType == null) {
- fType = new IncompleteType(target, nametype);
- }
- // cache the result
- addToTypeCache(nametype, fType);
- }
- return fType;
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.cdt.debug.core.cdi.model.ICDIVariableDescriptor#sizeof()
- */
- public int sizeof() throws CDIException {
- if (sizeof == null) {
- Target target = (Target) getTarget();
- Thread currentThread = (Thread)target.getCurrentThread();
- StackFrame currentFrame = currentThread.getCurrentStackFrame();
- StackFrame frame = (StackFrame)getStackFrame();
- Thread thread = (Thread)getThread();
- target.lockTarget();
- try {
- if (frame != null) {
- target.setCurrentThread(frame.getThread(), false);
- ((Thread)frame.getThread()).setCurrentStackFrame(frame, false);
- } else if (thread != null) {
- target.setCurrentThread(thread, false);
- }
- MISession mi = target.getMISession();
- CommandFactory factory = mi.getCommandFactory();
- String exp = "sizeof(" + getTypeName() + ")"; //$NON-NLS-1$ //$NON-NLS-2$
- MIDataEvaluateExpression evaluate = factory.createMIDataEvaluateExpression(exp);
- mi.postCommand(evaluate);
- MIDataEvaluateExpressionInfo info = evaluate.getMIDataEvaluateExpressionInfo();
- if (info == null) {
- throw new CDIException(CdiResources.getString("cdi.model.VariableDescriptor.Target_not_responding")); //$NON-NLS-1$
- }
- sizeof = info.getExpression();
- } catch (MIException e) {
- throw new MI2CDIException(e);
- } finally {
- try {
- if (frame != null) {
- target.setCurrentThread(currentThread, false);
- currentThread.setCurrentStackFrame(currentFrame, false);
- } else if (thread != null) {
- target.setCurrentThread(currentThread, false);
- }
- } finally {
- target.releaseTarget();
- }
- }
- }
-
- if (sizeof != null) {
- try {
- return Integer.parseInt(sizeof);
- } catch (NumberFormatException e) {
- throw new CDIException(e.getMessage());
- }
- }
- return 0;
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.cdt.debug.core.cdi.model.ICDIVariableDescriptor#getStackFrame()
- */
- public ICDIStackFrame getStackFrame() throws CDIException {
- return fStackFrame;
- }
-
- public ICDIThread getThread() throws CDIException {
- return fThread;
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.cdt.debug.core.cdi.model.ICDIVariableDescriptor#getTypeName()
- */
- public String getTypeName() throws CDIException {
- if (fTypename == null) {
- Target target = (Target)getTarget();
- StackFrame frame = (StackFrame)getStackFrame();
- if (frame == null) {
- Thread thread = (Thread)getThread();
- if (thread != null) {
- frame = thread.getCurrentStackFrame();
- } else {
- frame = ((Thread)target.getCurrentThread()).getCurrentStackFrame();
- }
- }
- Session session = (Session) target.getSession();
- SourceManager sourceMgr = session.getSourceManager();
- if (frame != null) {
- fTypename = sourceMgr.getTypeNameFromVariable(frame, getQualifiedName());
- } else {
- fTypename = sourceMgr.getTypeName(target, getQualifiedName());
- }
- }
- return fTypename;
- }
-
- /**
- * @see org.eclipse.cdt.debug.core.cdi.model.ICDIVariableDescriptor#getQualifiedName()
- */
- public String getQualifiedName() throws CDIException {
- if (qualifiedName == null) {
- qualifiedName = encodeVariable();
- }
- return qualifiedName;
- }
-
- public static boolean equalsCasting(VariableDescriptor var1, VariableDescriptor var2) {
- String[] castings1 = var1.getCastingTypes();
- String[] castings2 = var2.getCastingTypes();
- if (castings1 == null && castings2 == null) {
- return true;
- } else if (castings1 != null && castings2 != null && castings1.length == castings2.length) {
- for (int i = 0; i < castings1.length; ++i) {
- if (!castings1[i].equals(castings2[i])) {
- return false;
- }
- }
- return true;
- }
- return false;
- }
- /**
- * @see org.eclipse.cdt.debug.core.cdi.model.ICDIVariableDescriptor#equals(ICDIVariableDescriptor)
- */
- public boolean equals(ICDIVariableDescriptor varDesc) {
- if (varDesc instanceof VariableDescriptor) {
- VariableDescriptor desc = (VariableDescriptor) varDesc;
- if (desc.getFullName().equals(getFullName())
- && desc.getName().equals(getName()) // see bug #113364
- && desc.getCastingArrayStart() == getCastingArrayStart()
- && desc.getCastingArrayEnd() == getCastingArrayEnd()
- && equalsCasting(desc, this)) {
-
- // Check the threads
- ICDIThread varThread = null;
- ICDIThread ourThread = null;
- try {
- varThread = desc.getThread();
- ourThread = getThread();
- } catch (CDIException e) {
- // ignore
- }
- if ((ourThread == null && varThread == null) ||
- (varThread != null && ourThread != null && varThread.equals(ourThread))) {
- // check the stackFrames
- ICDIStackFrame varFrame = null;
- ICDIStackFrame ourFrame = null;
- try {
- varFrame = desc.getStackFrame();
- ourFrame = getStackFrame();
- } catch (CDIException e) {
- // ignore
- }
- if (ourFrame == null && varFrame == null) {
- return true;
- } else if (varFrame != null && ourFrame != null && varFrame.equals(ourFrame)) {
- if (desc.getStackDepth() == getStackDepth()) {
- if (desc.getPosition() == getPosition()) {
- return true;
- }
- }
- }
- }
- return false;
- }
- }
- return super.equals(varDesc);
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.cdt.debug.core.cdi.model.ICDIVariableDescriptor#getVariableDescriptorAsArray(org.eclipse.cdt.debug.core.cdi.model.ICDIVariableDescriptor, int, int)
- */
- public ICDIVariableDescriptor getVariableDescriptorAsArray(int start, int length) throws CDIException {
- Session session = (Session)getTarget().getSession();
- VariableManager mgr = session.getVariableManager();
- return mgr.getVariableDescriptorAsArray(this, start, length);
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.cdt.debug.core.cdi.model.ICDIVariableDescriptor#getVariableDescriptorAsType(org.eclipse.cdt.debug.core.cdi.model.ICDIVariableDescriptor, java.lang.String)
- */
- public ICDIVariableDescriptor getVariableDescriptorAsType(String type) throws CDIException {
- Session session = (Session)getTarget().getSession();
- VariableManager mgr = session.getVariableManager();
- return mgr.getVariableDescriptorAsType(this, type);
- }
-
-}
diff --git a/debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/model/Watchpoint.java b/debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/model/Watchpoint.java
deleted file mode 100644
index 3daa66afe3a..00000000000
--- a/debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/model/Watchpoint.java
+++ /dev/null
@@ -1,66 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2005 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.mi.core.cdi.model;
-
-import org.eclipse.cdt.debug.core.cdi.CDIException;
-import org.eclipse.cdt.debug.core.cdi.ICDICondition;
-import org.eclipse.cdt.debug.core.cdi.model.ICDIWatchpoint;
-import org.eclipse.cdt.debug.mi.core.output.MIBreakpoint;
-
-/**
- */
-public class Watchpoint extends Breakpoint implements ICDIWatchpoint {
-
- int watchType;
- String what;
-
- public Watchpoint(Target target, String expression, int type, int wType, ICDICondition cond, boolean enabled) {
- super(target, type, cond, enabled);
- watchType = wType;
- what = expression;
- }
-
- /**
- * @see org.eclipse.cdt.debug.core.cdi.ICDIWatchpoint#getWatchExpression()
- */
- public String getWatchExpression() throws CDIException {
- if (what == null) {
- MIBreakpoint[] miPoints = getMIBreakpoints();
- if (miPoints != null && miPoints.length > 0) {
- return miPoints[0].getWhat();
- }
- }
- return what;
- }
-
- /**
- * @see org.eclipse.cdt.debug.core.cdi.ICDIWatchpoint#isReadType()
- */
- public boolean isReadType() {
- return ((watchType & ICDIWatchpoint.READ) == ICDIWatchpoint.READ);
-// MIBreakpoint miPoint = getMIBreakpoint();
-// if (miPoint != null)
-// return getMIBreakpoint().isReadWatchpoint() || getMIBreakpoint().isAccessWatchpoint();
-// return ((watchType & ICDIWatchpoint.READ) == ICDIWatchpoint.READ);
- }
-
- /**
- * @see org.eclipse.cdt.debug.core.cdi.ICDIWatchpoint#isWriteType()
- */
- public boolean isWriteType() {
- return ((watchType & ICDIWatchpoint.WRITE) == ICDIWatchpoint.WRITE);
-// MIBreakpoint miPoint = getMIBreakpoint();
-// if (miPoint != null)
-// return getMIBreakpoint().isAccessWatchpoint() || getMIBreakpoint().isWriteWatchpoint();
-// return ((watchType & ICDIWatchpoint.WRITE) == ICDIWatchpoint.WRITE);
- }
-
-}
diff --git a/debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/model/type/AggregateType.java b/debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/model/type/AggregateType.java
deleted file mode 100644
index c41702dba90..00000000000
--- a/debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/model/type/AggregateType.java
+++ /dev/null
@@ -1,24 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.cdt.debug.mi.core.cdi.model.type;
-
-import org.eclipse.cdt.debug.core.cdi.model.type.ICDIAggregateType;
-import org.eclipse.cdt.debug.mi.core.cdi.model.Target;
-
-/**
- */
-public abstract class AggregateType extends Type implements ICDIAggregateType {
-
- public AggregateType(Target target, String typename) {
- super(target, typename);
- }
-}
diff --git a/debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/model/type/AggregateValue.java b/debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/model/type/AggregateValue.java
deleted file mode 100644
index 38ef72cb3e1..00000000000
--- a/debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/model/type/AggregateValue.java
+++ /dev/null
@@ -1,24 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.mi.core.cdi.model.type;
-
-import org.eclipse.cdt.debug.core.cdi.model.type.ICDIAggregateValue;
-import org.eclipse.cdt.debug.mi.core.cdi.model.Value;
-import org.eclipse.cdt.debug.mi.core.cdi.model.Variable;
-
-/**
- */
-public abstract class AggregateValue extends Value implements ICDIAggregateValue {
-
- public AggregateValue(Variable v) {
- super(v);
- }
-}
diff --git a/debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/model/type/ArrayType.java b/debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/model/type/ArrayType.java
deleted file mode 100644
index d9573a1ba91..00000000000
--- a/debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/model/type/ArrayType.java
+++ /dev/null
@@ -1,64 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.cdt.debug.mi.core.cdi.model.type;
-
-import org.eclipse.cdt.debug.core.cdi.model.type.ICDIArrayType;
-import org.eclipse.cdt.debug.core.cdi.model.type.ICDIType;
-import org.eclipse.cdt.debug.mi.core.cdi.model.Target;
-
-/**
- */
-public class ArrayType extends DerivedType implements ICDIArrayType {
-
- int dimension;
-
- /**
- * @param typename
- */
- public ArrayType(Target target, String typename,int dim) {
- super(target, typename);
- dimension = dim;
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.cdt.debug.core.cdi.model.type.ICDIArrayType#getDimension()
- */
- public int getDimension() {
- if (derivedType == null) {
- getComponentType();
- }
- return dimension;
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.cdt.debug.core.cdi.model.ICDIArrayType#getComponentType()
- */
- public ICDIType getComponentType() {
- if (derivedType == null) {
- String orig = getTypeName();
- String name = orig;
- int lbracket = orig.lastIndexOf('[');
- int rbracket = orig.lastIndexOf(']');
- if (lbracket != -1 && rbracket != -1 && (rbracket > lbracket)) {
- try {
- String dim = name.substring(lbracket + 1, rbracket).trim();
- dimension = Integer.parseInt(dim);
- } catch (NumberFormatException e) {
- }
- name = orig.substring(0, lbracket).trim();
- }
- setComponentType(name);
- }
- return derivedType;
- }
-
-}
diff --git a/debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/model/type/ArrayValue.java b/debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/model/type/ArrayValue.java
deleted file mode 100644
index 5f1fff58604..00000000000
--- a/debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/model/type/ArrayValue.java
+++ /dev/null
@@ -1,81 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.cdt.debug.mi.core.cdi.model.type;
-
-import org.eclipse.cdt.debug.core.cdi.CDIException;
-import org.eclipse.cdt.debug.core.cdi.model.ICDITarget;
-import org.eclipse.cdt.debug.core.cdi.model.ICDIVariable;
-import org.eclipse.cdt.debug.core.cdi.model.ICDIVariableDescriptor;
-import org.eclipse.cdt.debug.core.cdi.model.type.ICDIArrayValue;
-import org.eclipse.cdt.debug.mi.core.cdi.Session;
-import org.eclipse.cdt.debug.mi.core.cdi.VariableManager;
-import org.eclipse.cdt.debug.mi.core.cdi.model.Register;
-import org.eclipse.cdt.debug.mi.core.cdi.model.Variable;
-import org.eclipse.cdt.debug.mi.core.cdi.model.VariableDescriptor;
-
-/**
- * Enter type comment.
- *
- * @since Jun 3, 2003
- */
-public class ArrayValue extends DerivedValue implements ICDIArrayValue {
-
- public ArrayValue(Variable v) {
- super(v);
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.cdt.debug.core.cdi.model.ICDIValue#getVariables()
- */
- public ICDIVariable[] getVariables() throws CDIException {
-
- /* GDB is appallingly slow on array fetches. As as slow as 128 entries
- * per second on NT gdbs with slow processors. We need to set a timeout
- * that's appropraitely scaled by number of children to give the slave
- * GDB time to respond. In the end perhaps we want a UI for this. As it
- * is, let's just make up a number that's 5 seconds for us plus one
- * second for every 128 entries. */
- int timeout = getVariable().getMIVar().getNumChild() * 8 + 5000;
-
- return getVariable().getChildren(timeout);
- }
-
- /**
- *
- * an Array of range[index, index + length - 1]
- */
- public ICDIVariable[] getVariables(int index, int length) throws CDIException {
- //int children = getChildrenNumber();
- //if (index >= children || index + length >= children) {
- // throw new CDIException("Index out of bound");
- //}
-
- // Overload for registers.
- Variable variable = getVariable();
- if (variable instanceof Register) {
- ICDIVariable[] vars = getVariables();
-
- if (index < vars.length && (index + length) <= vars.length) {
- ICDIVariable[] newVars = new ICDIVariable[length];
- System.arraycopy(vars, index, newVars, 0, length);
- return newVars;
- }
- return new ICDIVariable[0];
- }
- //String subarray = "*(" + variable.getName() + "+" + index + ")@" + length;
- ICDITarget target = getTarget();
- Session session = (Session) (target.getSession());
- VariableManager mgr = session.getVariableManager();
- ICDIVariableDescriptor vo = mgr.getVariableDescriptorAsArray(variable, index, length);
- return mgr.createVariable((VariableDescriptor)vo).getValue().getVariables();
- }
-}
diff --git a/debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/model/type/BoolType.java b/debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/model/type/BoolType.java
deleted file mode 100644
index 79c67164eef..00000000000
--- a/debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/model/type/BoolType.java
+++ /dev/null
@@ -1,32 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.cdt.debug.mi.core.cdi.model.type;
-
-import org.eclipse.cdt.debug.core.cdi.model.type.ICDIBoolType;
-import org.eclipse.cdt.debug.mi.core.cdi.model.Target;
-
-/**
- */
-public class BoolType extends IntegralType implements ICDIBoolType {
-
- /**
- * @param typename
- */
- public BoolType(Target target, String typename) {
- this(target, typename, false);
- }
-
- public BoolType(Target target, String typename, boolean usigned) {
- super(target, typename, usigned);
- }
-
-}
diff --git a/debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/model/type/BoolValue.java b/debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/model/type/BoolValue.java
deleted file mode 100644
index 46348230b79..00000000000
--- a/debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/model/type/BoolValue.java
+++ /dev/null
@@ -1,28 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.cdt.debug.mi.core.cdi.model.type;
-
-import org.eclipse.cdt.debug.core.cdi.model.type.ICDIBoolValue;
-import org.eclipse.cdt.debug.mi.core.cdi.model.Variable;
-
-/**
- */
-public class BoolValue extends IntegralValue implements ICDIBoolValue {
-
- /**
- * @param v
- */
- public BoolValue(Variable v) {
- super(v);
- }
-
-}
diff --git a/debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/model/type/CharType.java b/debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/model/type/CharType.java
deleted file mode 100644
index 8055bbfacde..00000000000
--- a/debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/model/type/CharType.java
+++ /dev/null
@@ -1,31 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.cdt.debug.mi.core.cdi.model.type;
-
-import org.eclipse.cdt.debug.core.cdi.model.type.ICDICharType;
-import org.eclipse.cdt.debug.mi.core.cdi.model.Target;
-
-/**
- */
-public class CharType extends IntegralType implements ICDICharType {
-
- /**
- * @param typename
- */
- public CharType(Target target, String typename) {
- this(target, typename, false);
- }
-
- public CharType(Target target, String typename, boolean usigned) {
- super(target, typename, usigned);
- }
-}
diff --git a/debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/model/type/CharValue.java b/debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/model/type/CharValue.java
deleted file mode 100644
index 39f92177c0b..00000000000
--- a/debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/model/type/CharValue.java
+++ /dev/null
@@ -1,36 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.cdt.debug.mi.core.cdi.model.type;
-
-import org.eclipse.cdt.debug.core.cdi.CDIException;
-import org.eclipse.cdt.debug.core.cdi.model.type.ICDICharValue;
-import org.eclipse.cdt.debug.mi.core.cdi.model.Variable;
-
-/**
- */
-public class CharValue extends IntegralValue implements ICDICharValue {
-
- /**
- * @param v
- */
- public CharValue(Variable v) {
- super(v);
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.cdt.debug.core.cdi.model.ICDICharValue#getValue()
- */
- public char getValue() throws CDIException {
- return (char)intValue();
- }
-
-}
diff --git a/debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/model/type/DerivedType.java b/debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/model/type/DerivedType.java
deleted file mode 100644
index a14bdff7690..00000000000
--- a/debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/model/type/DerivedType.java
+++ /dev/null
@@ -1,53 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.cdt.debug.mi.core.cdi.model.type;
-
-import org.eclipse.cdt.debug.core.cdi.CDIException;
-import org.eclipse.cdt.debug.core.cdi.model.type.ICDIDerivedType;
-import org.eclipse.cdt.debug.core.cdi.model.type.ICDIType;
-import org.eclipse.cdt.debug.mi.core.cdi.Session;
-import org.eclipse.cdt.debug.mi.core.cdi.SourceManager;
-import org.eclipse.cdt.debug.mi.core.cdi.model.Target;
-
-/**
- */
-public abstract class DerivedType extends Type implements ICDIDerivedType {
-
- ICDIType derivedType;
-
- public DerivedType(Target target, String typename) {
- super(target, typename);
- }
-
- public void setComponentType(ICDIType dtype) {
- derivedType = dtype;
- }
-
- public void setComponentType(String name) {
- Target target = (Target)getTarget();
- Session session = (Session)target.getSession();
- SourceManager sourceMgr = session.getSourceManager();
- try {
- derivedType = sourceMgr.getType((Target)getTarget(), name);
- } catch (CDIException e) {
- // Try after ptype.
- try {
- String ptype = sourceMgr.getDetailTypeName((Target)getTarget(), name);
- derivedType = sourceMgr.getType((Target)getTarget(), ptype);
- } catch (CDIException ex) {
- }
- }
- if (derivedType == null) {
- derivedType = new IncompleteType((Target)getTarget(), name);
- }
- }
-}
diff --git a/debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/model/type/DerivedValue.java b/debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/model/type/DerivedValue.java
deleted file mode 100644
index cc5b4f47ca5..00000000000
--- a/debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/model/type/DerivedValue.java
+++ /dev/null
@@ -1,25 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.mi.core.cdi.model.type;
-
-import org.eclipse.cdt.debug.core.cdi.model.type.ICDIDerivedValue;
-import org.eclipse.cdt.debug.mi.core.cdi.model.Value;
-import org.eclipse.cdt.debug.mi.core.cdi.model.Variable;
-
-/**
- */
-public abstract class DerivedValue extends Value implements ICDIDerivedValue {
-
- public DerivedValue(Variable v) {
- super(v);
- }
-
-}
diff --git a/debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/model/type/DoubleType.java b/debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/model/type/DoubleType.java
deleted file mode 100644
index 168d54cc28b..00000000000
--- a/debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/model/type/DoubleType.java
+++ /dev/null
@@ -1,31 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.cdt.debug.mi.core.cdi.model.type;
-
-import org.eclipse.cdt.debug.core.cdi.model.type.ICDIDoubleType;
-import org.eclipse.cdt.debug.mi.core.cdi.model.Target;
-
-/**
- */
-public class DoubleType extends FloatingPointType implements ICDIDoubleType {
-
- /**
- * @param typename
- */
- public DoubleType(Target target, String typename) {
- this(target, typename, false, false, false);
- }
-
- public DoubleType(Target target, String typename, boolean isComplex, boolean isImg, boolean isLong) {
- super(target, typename, isComplex, isImg, isLong);
- }
-}
diff --git a/debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/model/type/DoubleValue.java b/debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/model/type/DoubleValue.java
deleted file mode 100644
index 4d33e612efe..00000000000
--- a/debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/model/type/DoubleValue.java
+++ /dev/null
@@ -1,27 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.cdt.debug.mi.core.cdi.model.type;
-
-import org.eclipse.cdt.debug.core.cdi.model.type.ICDIDoubleValue;
-import org.eclipse.cdt.debug.mi.core.cdi.model.Variable;
-
-/**
- */
-public class DoubleValue extends FloatingPointValue implements ICDIDoubleValue {
-
- /**
- * @param Variable
- */
- public DoubleValue(Variable v) {
- super(v);
- }
-}
diff --git a/debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/model/type/EnumType.java b/debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/model/type/EnumType.java
deleted file mode 100644
index 8c0a1d503a7..00000000000
--- a/debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/model/type/EnumType.java
+++ /dev/null
@@ -1,31 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.cdt.debug.mi.core.cdi.model.type;
-
-import org.eclipse.cdt.debug.core.cdi.model.type.ICDIEnumType;
-import org.eclipse.cdt.debug.mi.core.cdi.model.Target;
-
-/**
- */
-public class EnumType extends IntegralType implements ICDIEnumType {
-
- /**
- * @param typename
- */
- public EnumType(Target target, String typename) {
- this(target, typename, false);
- }
-
- public EnumType(Target target, String typename, boolean usigned) {
- super(target, typename, usigned);
- }
-}
diff --git a/debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/model/type/EnumValue.java b/debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/model/type/EnumValue.java
deleted file mode 100644
index b5979204a21..00000000000
--- a/debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/model/type/EnumValue.java
+++ /dev/null
@@ -1,28 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.cdt.debug.mi.core.cdi.model.type;
-
-import org.eclipse.cdt.debug.core.cdi.model.type.ICDIEnumValue;
-import org.eclipse.cdt.debug.mi.core.cdi.model.Variable;
-
-/**
- */
-public class EnumValue extends IntegralValue implements ICDIEnumValue {
-
- /**
- * @param v
- */
- public EnumValue(Variable v) {
- super(v);
- }
-
-}
diff --git a/debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/model/type/FloatType.java b/debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/model/type/FloatType.java
deleted file mode 100644
index 86aebee17cf..00000000000
--- a/debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/model/type/FloatType.java
+++ /dev/null
@@ -1,31 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.cdt.debug.mi.core.cdi.model.type;
-
-import org.eclipse.cdt.debug.core.cdi.model.type.ICDIFloatType;
-import org.eclipse.cdt.debug.mi.core.cdi.model.Target;
-
-/**
- */
-public class FloatType extends FloatingPointType implements ICDIFloatType {
-
- /**
- * @param typename
- */
- public FloatType(Target target, String typename) {
- this(target, typename, false, false);
- }
-
- public FloatType(Target target, String typename, boolean isComplex, boolean isImg) {
- super(target, typename, isComplex, isImg, false);
- }
-}
diff --git a/debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/model/type/FloatValue.java b/debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/model/type/FloatValue.java
deleted file mode 100644
index e9d59c30c0f..00000000000
--- a/debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/model/type/FloatValue.java
+++ /dev/null
@@ -1,27 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.cdt.debug.mi.core.cdi.model.type;
-
-import org.eclipse.cdt.debug.core.cdi.model.type.ICDIFloatValue;
-import org.eclipse.cdt.debug.mi.core.cdi.model.Variable;
-
-/**
- */
-public class FloatValue extends FloatingPointValue implements ICDIFloatValue {
-
- /**
- * @param Variable
- */
- public FloatValue(Variable v) {
- super(v);
- }
-}
diff --git a/debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/model/type/FloatingPointType.java b/debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/model/type/FloatingPointType.java
deleted file mode 100644
index b91eb16c743..00000000000
--- a/debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/model/type/FloatingPointType.java
+++ /dev/null
@@ -1,53 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.cdt.debug.mi.core.cdi.model.type;
-
-import org.eclipse.cdt.debug.core.cdi.model.type.ICDIFloatingPointType;
-import org.eclipse.cdt.debug.mi.core.cdi.model.Target;
-
-/**
- */
-public abstract class FloatingPointType extends Type implements ICDIFloatingPointType {
-
- boolean complex;
- boolean imaginary;
- boolean islong;
-
- public FloatingPointType(Target target, String typename, boolean comp, boolean img, boolean l) {
- super(target, typename);
- complex = comp;
- imaginary = img;
- islong = l;
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.cdt.debug.core.cdi.model.type.ICDIFloatingPointType#isComplex()
- */
- public boolean isComplex() {
- return complex;
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.cdt.debug.core.cdi.model.type.ICDIFloatingPointType#isImaginary()
- */
- public boolean isImaginary() {
- return imaginary;
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.cdt.debug.core.cdi.model.type.ICDIFloatingPointType#isLong()
- */
- public boolean isLong() {
- return islong;
- }
-
-}
diff --git a/debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/model/type/FloatingPointValue.java b/debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/model/type/FloatingPointValue.java
deleted file mode 100644
index 0a864a6bb4f..00000000000
--- a/debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/model/type/FloatingPointValue.java
+++ /dev/null
@@ -1,83 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.cdt.debug.mi.core.cdi.model.type;
-
-import org.eclipse.cdt.debug.core.cdi.CDIException;
-import org.eclipse.cdt.debug.core.cdi.model.type.ICDIFloatingPointValue;
-import org.eclipse.cdt.debug.mi.core.cdi.model.Value;
-import org.eclipse.cdt.debug.mi.core.cdi.model.Variable;
-
-/**
- */
-public abstract class FloatingPointValue extends Value implements ICDIFloatingPointValue {
-
- /**
- * @param v
- */
- public FloatingPointValue(Variable v) {
- super(v);
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.cdt.debug.core.cdi.model.type.ICDIFloatingPointValue#doubleValue()
- */
- public double doubleValue() throws CDIException {
- double result = 0;
- String valueString = getValueString();
- if (isNaN(valueString))
- result = Double.NaN;
- else if (isNegativeInfinity(valueString))
- result = Double.NEGATIVE_INFINITY;
- else if (isPositiveInfinity(valueString))
- result = Double.POSITIVE_INFINITY;
- else {
- try {
- result = Double.parseDouble(valueString);
- } catch (NumberFormatException e) {
- }
- }
- return result;
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.cdt.debug.core.cdi.model.type.ICDIFloatingPointValue#floatValue()
- */
- public float floatValue() throws CDIException {
- float result = 0;
- String valueString = getValueString();
- if (isNaN(valueString))
- result = Float.NaN;
- else if (isNegativeInfinity(valueString))
- result = Float.NEGATIVE_INFINITY;
- else if (isPositiveInfinity(valueString))
- result = Float.POSITIVE_INFINITY;
- else {
- try {
- result = Float.parseFloat(valueString);
- } catch (NumberFormatException e) {
- }
- }
- return result;
- }
-
- private boolean isPositiveInfinity(String valueString) {
- return (valueString != null) ? valueString.indexOf("inf") != -1 : false; //$NON-NLS-1$
- }
-
- private boolean isNegativeInfinity(String valueString) {
- return (valueString != null) ? valueString.indexOf("-inf") != -1 : false; //$NON-NLS-1$
- }
-
- private boolean isNaN(String valueString) {
- return (valueString != null) ? valueString.indexOf("nan") != -1 : false; //$NON-NLS-1$
- }
-}
diff --git a/debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/model/type/FunctionType.java b/debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/model/type/FunctionType.java
deleted file mode 100644
index 6dfd946eb13..00000000000
--- a/debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/model/type/FunctionType.java
+++ /dev/null
@@ -1,46 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.cdt.debug.mi.core.cdi.model.type;
-
-import org.eclipse.cdt.debug.core.cdi.model.type.ICDIFunctionType;
-import org.eclipse.cdt.debug.core.cdi.model.type.ICDIType;
-import org.eclipse.cdt.debug.mi.core.cdi.model.Target;
-
-/**
- */
-public class FunctionType extends DerivedType implements ICDIFunctionType {
-
- String params = ""; //$NON-NLS-1$
-
- public FunctionType(Target target, String typename) {
- super(target, typename);
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.cdt.debug.core.cdi.model.type.ICDIDerivedType#getComponentType()
- */
- public ICDIType getComponentType() {
- if (derivedType != null) {
- String orig = getTypeName();
- String name = orig;
- int lparen = orig.lastIndexOf('(');
- int rparen = orig.lastIndexOf(')');
- if (lparen != -1 && rparen != -1 && (rparen > lparen)) {
- params = name.substring(lparen + 1, rparen).trim();
- name = orig.substring(0, lparen).trim();
- }
- setComponentType(name);
- }
- return derivedType;
- }
-
-}
diff --git a/debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/model/type/FunctionValue.java b/debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/model/type/FunctionValue.java
deleted file mode 100644
index fef67bc94bb..00000000000
--- a/debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/model/type/FunctionValue.java
+++ /dev/null
@@ -1,27 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.cdt.debug.mi.core.cdi.model.type;
-
-import org.eclipse.cdt.debug.core.cdi.model.type.ICDIFunctionValue;
-import org.eclipse.cdt.debug.mi.core.cdi.model.Variable;
-
-/**
- * Enter type comment.
- *
- * @since Jun 3, 2003
- */
-public class FunctionValue extends DerivedValue implements ICDIFunctionValue {
-
- public FunctionValue(Variable v) {
- super(v);
- }
-}
diff --git a/debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/model/type/IncompleteType.java b/debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/model/type/IncompleteType.java
deleted file mode 100644
index d87ae1ecf9f..00000000000
--- a/debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/model/type/IncompleteType.java
+++ /dev/null
@@ -1,27 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.cdt.debug.mi.core.cdi.model.type;
-
-import org.eclipse.cdt.debug.mi.core.cdi.model.Target;
-
-/**
- */
-public class IncompleteType extends Type {
-
- /**
- * @param name
- */
- public IncompleteType(Target target, String name) {
- super(target, name);
- }
-
-}
diff --git a/debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/model/type/IntType.java b/debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/model/type/IntType.java
deleted file mode 100644
index e7b5ccd0a42..00000000000
--- a/debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/model/type/IntType.java
+++ /dev/null
@@ -1,32 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.cdt.debug.mi.core.cdi.model.type;
-
-import org.eclipse.cdt.debug.core.cdi.model.type.ICDIIntType;
-import org.eclipse.cdt.debug.mi.core.cdi.model.Target;
-
-/**
- */
-public class IntType extends IntegralType implements ICDIIntType {
-
- /**
- * @param typename
- */
- public IntType(Target target, String typename) {
- this(target, typename, false);
- }
-
- public IntType(Target target, String typename, boolean isUnsigned) {
- super(target, typename, isUnsigned);
- }
-
-}
diff --git a/debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/model/type/IntValue.java b/debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/model/type/IntValue.java
deleted file mode 100644
index 536e771952c..00000000000
--- a/debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/model/type/IntValue.java
+++ /dev/null
@@ -1,28 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.cdt.debug.mi.core.cdi.model.type;
-
-import org.eclipse.cdt.debug.core.cdi.model.type.ICDIIntValue;
-import org.eclipse.cdt.debug.mi.core.cdi.model.Variable;
-
-/**
- */
-public class IntValue extends IntegralValue implements ICDIIntValue {
-
- /**
- * @param v
- */
- public IntValue(Variable v) {
- super(v);
- }
-
-}
diff --git a/debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/model/type/IntegralType.java b/debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/model/type/IntegralType.java
deleted file mode 100644
index 71a0f972111..00000000000
--- a/debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/model/type/IntegralType.java
+++ /dev/null
@@ -1,35 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.cdt.debug.mi.core.cdi.model.type;
-
-import org.eclipse.cdt.debug.core.cdi.model.type.ICDIIntegralType;
-import org.eclipse.cdt.debug.mi.core.cdi.model.Target;
-
-/**
- */
-public abstract class IntegralType extends Type implements ICDIIntegralType {
-
- boolean unSigned;
-
- public IntegralType(Target target, String typename, boolean isUnsigned) {
- super(target, typename);
- unSigned = isUnsigned;
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.cdt.debug.core.cdi.model.ICDIIntegralType#isUnsigned()
- */
- public boolean isUnsigned() {
- return unSigned;
- }
-
-}
diff --git a/debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/model/type/IntegralValue.java b/debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/model/type/IntegralValue.java
deleted file mode 100644
index b3d662438e5..00000000000
--- a/debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/model/type/IntegralValue.java
+++ /dev/null
@@ -1,92 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.cdt.debug.mi.core.cdi.model.type;
-
-import java.math.BigInteger;
-
-import org.eclipse.cdt.debug.core.cdi.CDIException;
-import org.eclipse.cdt.debug.core.cdi.model.type.ICDIIntegralValue;
-import org.eclipse.cdt.debug.mi.core.MIFormat;
-import org.eclipse.cdt.debug.mi.core.cdi.model.Value;
-import org.eclipse.cdt.debug.mi.core.cdi.model.Variable;
-
-/**
- */
-public abstract class IntegralValue extends Value implements ICDIIntegralValue {
-
- /**
- * @param v
- */
- public IntegralValue(Variable v) {
- super(v);
- }
-
-
-
- /* (non-Javadoc)
- * @see org.eclipse.cdt.debug.core.cdi.model.ICDIIntegralValue#biIntegerValue()
- */
- public BigInteger bigIntegerValue() throws CDIException {
- return bigIntegerValue(getValueString());
- }
-
- public static BigInteger bigIntegerValue(String valueString) {
- // Coming from a reference
- if (valueString.startsWith("@")) { //$NON-NLS-1$
- valueString = valueString.substring(1);
- int colon = valueString.indexOf(':');
- if (colon != -1) {
- valueString = valueString.substring(colon + 1).trim();
- }
- }
- int space = valueString.indexOf(' ');
- if (space != -1) {
- valueString = valueString.substring(0, space).trim();
- }
-
- try {
- return MIFormat.getBigInteger(valueString);
- } catch (NumberFormatException e) {
- //
- }
- return BigInteger.ZERO;
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.cdt.debug.core.cdi.model.ICDIIntegralValue#longValue()
- */
- public long longValue() throws CDIException {
- return bigIntegerValue().longValue();
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.cdt.debug.core.cdi.model.ICDIIntegralValue#longValue()
- */
- public int intValue() throws CDIException {
- return bigIntegerValue().intValue();
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.cdt.debug.core.cdi.model.ICDIIntegralValue#shortValue()
- */
- public short shortValue() throws CDIException {
- return bigIntegerValue().shortValue();
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.cdt.debug.core.cdi.model.ICDIIntegralValue#byteValue()
- */
- public int byteValue() throws CDIException {
- return bigIntegerValue().byteValue();
- }
-
-}
diff --git a/debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/model/type/LongLongType.java b/debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/model/type/LongLongType.java
deleted file mode 100644
index 05244fb8484..00000000000
--- a/debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/model/type/LongLongType.java
+++ /dev/null
@@ -1,31 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.cdt.debug.mi.core.cdi.model.type;
-
-import org.eclipse.cdt.debug.core.cdi.model.type.ICDILongLongType;
-import org.eclipse.cdt.debug.mi.core.cdi.model.Target;
-
-/**
- */
-public class LongLongType extends IntegralType implements ICDILongLongType {
-
- /**
- * @param typename
- */
- public LongLongType(Target target, String typename) {
- this(target, typename, false);
- }
-
- public LongLongType(Target target, String typename, boolean usigned) {
- super(target, typename, usigned);
- }
-}
diff --git a/debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/model/type/LongLongValue.java b/debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/model/type/LongLongValue.java
deleted file mode 100644
index 29905478cee..00000000000
--- a/debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/model/type/LongLongValue.java
+++ /dev/null
@@ -1,28 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.cdt.debug.mi.core.cdi.model.type;
-
-import org.eclipse.cdt.debug.core.cdi.model.type.ICDILongLongValue;
-import org.eclipse.cdt.debug.mi.core.cdi.model.Variable;
-
-/**
- */
-public class LongLongValue extends IntegralValue implements ICDILongLongValue {
-
- /**
- * @param v
- */
- public LongLongValue(Variable v) {
- super(v);
- }
-
-}
diff --git a/debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/model/type/LongType.java b/debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/model/type/LongType.java
deleted file mode 100644
index b6f3e07f0e0..00000000000
--- a/debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/model/type/LongType.java
+++ /dev/null
@@ -1,31 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.cdt.debug.mi.core.cdi.model.type;
-
-import org.eclipse.cdt.debug.core.cdi.model.type.ICDILongType;
-import org.eclipse.cdt.debug.mi.core.cdi.model.Target;
-
-/**
- */
-public class LongType extends IntegralType implements ICDILongType {
-
- /**
- * @param typename
- */
- public LongType(Target target, String typename) {
- this(target, typename, false);
- }
-
- public LongType(Target target, String typename, boolean usigned) {
- super(target, typename, usigned);
- }
-}
diff --git a/debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/model/type/LongValue.java b/debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/model/type/LongValue.java
deleted file mode 100644
index 489436fc96e..00000000000
--- a/debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/model/type/LongValue.java
+++ /dev/null
@@ -1,28 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.cdt.debug.mi.core.cdi.model.type;
-
-import org.eclipse.cdt.debug.core.cdi.model.type.ICDILongValue;
-import org.eclipse.cdt.debug.mi.core.cdi.model.Variable;
-
-/**
- */
-public class LongValue extends IntegralValue implements ICDILongValue {
-
- /**
- * @param v
- */
- public LongValue(Variable v) {
- super(v);
- }
-
-}
diff --git a/debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/model/type/PointerType.java b/debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/model/type/PointerType.java
deleted file mode 100644
index 7eea7e47ad8..00000000000
--- a/debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/model/type/PointerType.java
+++ /dev/null
@@ -1,43 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.cdt.debug.mi.core.cdi.model.type;
-
-import org.eclipse.cdt.debug.core.cdi.model.type.ICDIPointerType;
-import org.eclipse.cdt.debug.core.cdi.model.type.ICDIType;
-import org.eclipse.cdt.debug.mi.core.cdi.model.Target;
-
-/**
- */
-public class PointerType extends DerivedType implements ICDIPointerType {
-
- public PointerType(Target target, String typename) {
- super(target, typename);
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.cdt.debug.core.cdi.model.type.ICDIDerivedType#getComponentType()
- */
- public ICDIType getComponentType() {
- if (derivedType == null) {
- String orig = getTypeName();
- String name = orig;
- int star = orig.lastIndexOf('*');
- // remove last '*'
- if (star != -1) {
- name = orig.substring(0, star).trim();
- }
- setComponentType(name);
- }
- return derivedType;
- }
-
-}
diff --git a/debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/model/type/PointerValue.java b/debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/model/type/PointerValue.java
deleted file mode 100644
index 7604784bcc5..00000000000
--- a/debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/model/type/PointerValue.java
+++ /dev/null
@@ -1,37 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.cdt.debug.mi.core.cdi.model.type;
-
-import java.math.BigInteger;
-
-import org.eclipse.cdt.debug.core.cdi.CDIException;
-import org.eclipse.cdt.debug.core.cdi.model.type.ICDIPointerValue;
-import org.eclipse.cdt.debug.mi.core.cdi.model.Variable;
-
-/**
- * Enter type comment.
- *
- * @since Jun 3, 2003
- */
-public class PointerValue extends DerivedValue implements ICDIPointerValue {
-
- public PointerValue(Variable v) {
- super(v);
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.cdt.debug.core.cdi.model.type.ICDIPointerValue#pointerValue()
- */
- public BigInteger pointerValue() throws CDIException {
- return IntegralValue.bigIntegerValue(getValueString());
- }
-}
diff --git a/debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/model/type/ReferenceType.java b/debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/model/type/ReferenceType.java
deleted file mode 100644
index c5e3931766a..00000000000
--- a/debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/model/type/ReferenceType.java
+++ /dev/null
@@ -1,46 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.cdt.debug.mi.core.cdi.model.type;
-
-import org.eclipse.cdt.debug.core.cdi.model.type.ICDIReferenceType;
-import org.eclipse.cdt.debug.core.cdi.model.type.ICDIType;
-import org.eclipse.cdt.debug.mi.core.cdi.model.Target;
-
-/**
- */
-public class ReferenceType extends DerivedType implements ICDIReferenceType {
-
- /**
- * @param name
- */
- public ReferenceType(Target target, String name) {
- super(target, name);
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.cdt.debug.core.cdi.model.type.ICDIDerivedType#getComponentType()
- */
- public ICDIType getComponentType() {
- if (derivedType == null) {
- String orig = getTypeName();
- String name = orig;
- int amp = orig.lastIndexOf('&');
- // remove last '&'
- if (amp != -1) {
- name = orig.substring(0, amp).trim();
- }
- setComponentType(name);
- }
- return derivedType;
- }
-
-}
diff --git a/debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/model/type/ReferenceValue.java b/debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/model/type/ReferenceValue.java
deleted file mode 100644
index d35eb26ce51..00000000000
--- a/debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/model/type/ReferenceValue.java
+++ /dev/null
@@ -1,92 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.cdt.debug.mi.core.cdi.model.type;
-
-import org.eclipse.cdt.debug.core.cdi.CDIException;
-import org.eclipse.cdt.debug.core.cdi.model.ICDIValue;
-import org.eclipse.cdt.debug.core.cdi.model.type.ICDIArrayType;
-import org.eclipse.cdt.debug.core.cdi.model.type.ICDIBoolType;
-import org.eclipse.cdt.debug.core.cdi.model.type.ICDICharType;
-import org.eclipse.cdt.debug.core.cdi.model.type.ICDIDoubleType;
-import org.eclipse.cdt.debug.core.cdi.model.type.ICDIEnumType;
-import org.eclipse.cdt.debug.core.cdi.model.type.ICDIFloatType;
-import org.eclipse.cdt.debug.core.cdi.model.type.ICDIFunctionType;
-import org.eclipse.cdt.debug.core.cdi.model.type.ICDIIntType;
-import org.eclipse.cdt.debug.core.cdi.model.type.ICDILongLongType;
-import org.eclipse.cdt.debug.core.cdi.model.type.ICDILongType;
-import org.eclipse.cdt.debug.core.cdi.model.type.ICDIPointerType;
-import org.eclipse.cdt.debug.core.cdi.model.type.ICDIReferenceType;
-import org.eclipse.cdt.debug.core.cdi.model.type.ICDIReferenceValue;
-import org.eclipse.cdt.debug.core.cdi.model.type.ICDIShortType;
-import org.eclipse.cdt.debug.core.cdi.model.type.ICDIStructType;
-import org.eclipse.cdt.debug.core.cdi.model.type.ICDIType;
-import org.eclipse.cdt.debug.core.cdi.model.type.ICDIWCharType;
-import org.eclipse.cdt.debug.mi.core.cdi.model.Value;
-import org.eclipse.cdt.debug.mi.core.cdi.model.Variable;
-
-/**
- * Enter type comment.
- *
- * @since Jun 3, 2003
- */
-public class ReferenceValue extends DerivedValue implements ICDIReferenceValue {
-
- /**
- * @param v
- */
- public ReferenceValue(Variable v) {
- super(v);
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.cdt.debug.core.cdi.model.type.ICDIReferenceValue#referenceValue()
- */
- public ICDIValue referenceValue() throws CDIException {
- Value value = null;
- ICDIReferenceType rt = (ICDIReferenceType)getType();
- ICDIType t = rt.getComponentType();
- if (t instanceof ICDIBoolType) {
- value = new BoolValue(getVariable());
- } else if (t instanceof ICDICharType) {
- value = new CharValue(getVariable());
- } else if (t instanceof ICDIWCharType) {
- value = new WCharValue(getVariable());
- } else if (t instanceof ICDIShortType) {
- value = new ShortValue(getVariable());
- } else if (t instanceof ICDIIntType) {
- value = new IntValue(getVariable());
- } else if (t instanceof ICDILongType) {
- value = new LongValue(getVariable());
- } else if (t instanceof ICDILongLongType) {
- value = new LongLongValue(getVariable());
- } else if (t instanceof ICDIEnumType) {
- value = new EnumValue(getVariable());
- } else if (t instanceof ICDIFloatType) {
- value = new FloatValue(getVariable());
- } else if (t instanceof ICDIDoubleType) {
- value = new DoubleValue(getVariable());
- } else if (t instanceof ICDIFunctionType) {
- value = new FunctionValue(getVariable());
- } else if (t instanceof ICDIPointerType) {
- value = new PointerValue(getVariable());
-// } else if (t instanceof ICDIReferenceType) {
-// value = new ReferenceValue(getVariable());
- } else if (t instanceof ICDIArrayType) {
- value = new ArrayValue(getVariable());
- } else if (t instanceof ICDIStructType) {
- value = new StructValue(getVariable());
- } else {
- value = new Value(getVariable());
- }
- return value;
- }
-}
diff --git a/debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/model/type/ShortType.java b/debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/model/type/ShortType.java
deleted file mode 100644
index 63a93f33012..00000000000
--- a/debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/model/type/ShortType.java
+++ /dev/null
@@ -1,31 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.cdt.debug.mi.core.cdi.model.type;
-
-import org.eclipse.cdt.debug.core.cdi.model.type.ICDIShortType;
-import org.eclipse.cdt.debug.mi.core.cdi.model.Target;
-
-/**
- */
-public class ShortType extends IntegralType implements ICDIShortType {
-
- /**
- * @param typename
- */
- public ShortType(Target target, String typename) {
- this(target, typename, false);
- }
-
- public ShortType(Target target, String typename, boolean usigned) {
- super(target, typename, usigned);
- }
-}
diff --git a/debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/model/type/ShortValue.java b/debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/model/type/ShortValue.java
deleted file mode 100644
index 71d0b43238f..00000000000
--- a/debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/model/type/ShortValue.java
+++ /dev/null
@@ -1,28 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.cdt.debug.mi.core.cdi.model.type;
-
-import org.eclipse.cdt.debug.core.cdi.model.type.ICDIShortValue;
-import org.eclipse.cdt.debug.mi.core.cdi.model.Variable;
-
-/**
- */
-public class ShortValue extends IntegralValue implements ICDIShortValue {
-
- /**
- * @param v
- */
- public ShortValue(Variable v) {
- super(v);
- }
-
-}
diff --git a/debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/model/type/StructType.java b/debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/model/type/StructType.java
deleted file mode 100644
index 1b6523ab66c..00000000000
--- a/debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/model/type/StructType.java
+++ /dev/null
@@ -1,50 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.cdt.debug.mi.core.cdi.model.type;
-
-import org.eclipse.cdt.debug.core.cdi.model.type.ICDIStructType;
-import org.eclipse.cdt.debug.mi.core.cdi.model.Target;
-
-/**
- */
-public class StructType extends AggregateType implements ICDIStructType {
-
- /**
- * @param typename
- */
- public StructType(Target target, String typename) {
- super(target, typename);
- }
-
-
- /* (non-Javadoc)
- * @see org.eclipse.cdt.debug.core.cdi.model.type.ICDIStructType#isClass()
- */
- public boolean isClass() {
- return getDetailTypeName().startsWith("class"); //$NON-NLS-1$
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.cdt.debug.core.cdi.model.type.ICDIStructType#isStruct()
- */
- public boolean isStruct() {
- return getDetailTypeName().startsWith("struct"); //$NON-NLS-1$
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.cdt.debug.core.cdi.model.type.ICDIStructType#isUnion()
- */
- public boolean isUnion() {
- return getDetailTypeName().startsWith("union"); //$NON-NLS-1$
- }
-
-}
diff --git a/debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/model/type/StructValue.java b/debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/model/type/StructValue.java
deleted file mode 100644
index 204be0ce0e1..00000000000
--- a/debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/model/type/StructValue.java
+++ /dev/null
@@ -1,27 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.cdt.debug.mi.core.cdi.model.type;
-
-import org.eclipse.cdt.debug.core.cdi.model.type.ICDIStructValue;
-import org.eclipse.cdt.debug.mi.core.cdi.model.Variable;
-
-/**
- * Enter type comment.
- *
- * @since Jun 3, 2003
- */
-public class StructValue extends AggregateValue implements ICDIStructValue {
-
- public StructValue(Variable v) {
- super(v);
- }
-}
diff --git a/debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/model/type/Type.java b/debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/model/type/Type.java
deleted file mode 100644
index 4c9823eb242..00000000000
--- a/debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/model/type/Type.java
+++ /dev/null
@@ -1,50 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.cdt.debug.mi.core.cdi.model.type;
-
-import org.eclipse.cdt.debug.core.cdi.model.type.ICDIType;
-import org.eclipse.cdt.debug.mi.core.cdi.model.CObject;
-import org.eclipse.cdt.debug.mi.core.cdi.model.Target;
-
-/**
- */
-public abstract class Type extends CObject implements ICDIType {
-
- String typename;
- String detailName;
-
- public Type(Target target, String name) {
- super(target);
- typename = name;
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.cdt.debug.core.cdi.model.ICDIType#getTypeName()
- */
- public String getTypeName() {
- return typename;
- }
-
- public void setDetailTypeName(String name) {
- detailName = name;
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.cdt.debug.core.cdi.model.ICDIType#getDetailTypeName()
- */
- public String getDetailTypeName() {
- if (detailName == null) {
- return getTypeName();
- }
- return detailName;
- }
-}
diff --git a/debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/model/type/VoidType.java b/debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/model/type/VoidType.java
deleted file mode 100644
index 33cd028a435..00000000000
--- a/debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/model/type/VoidType.java
+++ /dev/null
@@ -1,27 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.cdt.debug.mi.core.cdi.model.type;
-
-import org.eclipse.cdt.debug.core.cdi.model.type.ICDIVoidType;
-import org.eclipse.cdt.debug.mi.core.cdi.model.Target;
-
-/**
- */
-public class VoidType extends Type implements ICDIVoidType {
-
- public VoidType(Target target) {
- this(target, "void"); //$NON-NLS-1$
- }
- public VoidType(Target target, String typename) {
- super(target, typename);
- }
-}
diff --git a/debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/model/type/VoidValue.java b/debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/model/type/VoidValue.java
deleted file mode 100644
index 1e251ddbc33..00000000000
--- a/debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/model/type/VoidValue.java
+++ /dev/null
@@ -1,28 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2002, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.mi.core.cdi.model.type;
-
-import org.eclipse.cdt.debug.mi.core.cdi.model.Value;
-import org.eclipse.cdt.debug.mi.core.cdi.model.Variable;
-
-/*
- * VoidValue
- */
-public class VoidValue extends Value {
-
- /**
- * @param v
- */
- public VoidValue(Variable v) {
- super(v);
- }
-
-}
diff --git a/debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/model/type/WCharType.java b/debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/model/type/WCharType.java
deleted file mode 100644
index 1bef04c7345..00000000000
--- a/debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/model/type/WCharType.java
+++ /dev/null
@@ -1,32 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-
-
-package org.eclipse.cdt.debug.mi.core.cdi.model.type;
-
-import org.eclipse.cdt.debug.core.cdi.model.type.ICDIWCharType;
-import org.eclipse.cdt.debug.mi.core.cdi.model.Target;
-
-/**
- */
-public class WCharType extends IntegralType implements ICDIWCharType {
-
- /**
- * @param typename
- */
- public WCharType(Target target, String typename) {
- this(target, typename, false);
- }
-
- public WCharType(Target target, String typename, boolean usigned) {
- super(target, typename, usigned);
- }
-}
diff --git a/debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/model/type/WCharValue.java b/debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/model/type/WCharValue.java
deleted file mode 100644
index 3c8bc724ccb..00000000000
--- a/debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/model/type/WCharValue.java
+++ /dev/null
@@ -1,37 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.cdt.debug.mi.core.cdi.model.type;
-
-import org.eclipse.cdt.debug.core.cdi.CDIException;
-import org.eclipse.cdt.debug.core.cdi.model.type.ICDIWCharValue;
-import org.eclipse.cdt.debug.mi.core.cdi.model.Variable;
-
-/**
- */
-public class WCharValue extends IntegralValue implements ICDIWCharValue {
-
- /**
- * @param v
- */
- public WCharValue(Variable v) {
- super(v);
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.cdt.debug.core.cdi.model.ICDICharValue#getValue()
- */
- public char getValue() throws CDIException {
- // TODO Auto-generated method stub
- return 0;
- }
-
-}
diff --git a/debug/org.eclipse.cdt.debug.mi.core/design.txt b/debug/org.eclipse.cdt.debug.mi.core/design.txt
deleted file mode 100644
index 782d0275725..00000000000
--- a/debug/org.eclipse.cdt.debug.mi.core/design.txt
+++ /dev/null
@@ -1,110 +0,0 @@
-<html>
-<head>
-</head>
-<body>
-<pre>
-Note this is an interim the document and subject to changes.
-
-
-****
-This MI implementation is base on GDB/MI 5.2.1.
-
-* Command/Response channels
-To create an MISession an InputStream and OutputStream are
-needed(assuming it is the pipe connected to gdb).
-
- MISession misession = new MISession(InputStream, OutputStream);
-
-During initialisation of the session(MISession) two threads
-are created TxThread, RxThread and associative list queues
-TxQueue and RxQueue:
-- The RxThread thread is block on readig the output of the pipe(gdb) for
-any responses.
-- The TxThread thread is block waiting for command.
-
-MI Commands are created via the CommandFactory and
-are added to the TxQueue, the TxThread will then wake up
-generate a token(ID) for the command and send it to the pipe(gdb), after
-transmission the command is then move to the RxQueue waiting for the
-result(MIResultRecord).
-
-Any responses will wake the RxThread, the thread will parse
-the response constructing an MIOutput, then it searches the RxQueue
-for any commands with the same token waking any thread waiting
-for a synchronous response(MIResultRecord). Any out-of-band
-responses(MIOOBRecord) are dispatch to MISession observers, clients interested
-in notifications should register to the MISession.
-
-* MI Parsing
-There is a generic MI parser (MIParser) constructing an syntax tree of the output.
-For example, a ResultRecord response after a "-break-insert", the parser will
-generate this tree:
- 10-break-insert main
- 10^done,bkpt={number="1",type="breakpoint",disp="keep",enabled="y",
- addr="0x08048468",func="main",file="hello.c",line="4",times="0"}
-
- - MIOutput
- - MIOOBRecord[0]
- - MIResutRecord
- - token = 10
- - ResultClass = "done"
- - MIResult[1]
- - MIResult[0]
- - variable = "bkpt"
- - value = MITuple
- - MIResult[9]
- - MiResult[0]
- - variable = "number"
- - MIConst = "1"
- - MiResult[1]
- - variable = "type"
- - MIConst = "breakpoint"
- - MiResult[2]
- - variable = "disp"
- - MIConst = "keep"
- - MiResult[3]
- - variable = "enabled"
- - MIConst = "y"
- - MiResult[4]
- - variable = "addr"
- - MIConst = "0x08048468"
- - MiResult[5]
- - variable = "func"
- - MIConst = "main"
- - MiResult[6]
- - variable = "file"
- - MIConst = "hello.c"
- - MiResult[7]
- - variable = "line"
- - MIConst = "4"
- - MiResult[8]
- - variable = "times"
- - MIConst = "0"
-
-MICommands will do there own parsing:
- session = MISession(in, out);
- MIBreakInsert cmd = new MIBreakInsert("main");
- session.postCommand(cmd); // sent to gdb.
- MIBreakInsertInfo info = cmd.getBreakInsertInfo(); // Parsing of the Result Record.
-
-****
-MI Process
-
-For convienience, to java.lang.Process is provided.
-
- MISession.getSessionProcess();
-
-This Process talks directly to gdb and is smart enough to wrap any command
-in CLICommand etc ..
-
- MISession.getMIInferior()
-
-MIInferior implements Process for the Inferiror.
-
-*****
-MI <==> CDI Adapters
-
- To do.
-</pre>
-</body>
-</html>
diff --git a/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/CLIProcessor.java b/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/CLIProcessor.java
deleted file mode 100644
index 7fd44d4b150..00000000000
--- a/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/CLIProcessor.java
+++ /dev/null
@@ -1,222 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.cdt.debug.mi.core;
-
-import org.eclipse.cdt.debug.mi.core.command.CLICommand;
-import org.eclipse.cdt.debug.mi.core.command.MIInterpreterExecConsole;
-import org.eclipse.cdt.debug.mi.core.event.MIBreakpointChangedEvent;
-import org.eclipse.cdt.debug.mi.core.event.MIDetachedEvent;
-import org.eclipse.cdt.debug.mi.core.event.MIEvent;
-import org.eclipse.cdt.debug.mi.core.event.MIRunningEvent;
-import org.eclipse.cdt.debug.mi.core.event.MISignalChangedEvent;
-
-/**
- * Transmission command thread blocks on the command Queue
- * and wake cmd are available and push them to gdb out channel.
- */
-public class CLIProcessor {
-
- MISession session;
-
- public CLIProcessor(MISession s) {
- session = s;
- }
-
- /**
- * An attempt to discover the command type and
- * fire an event if necessary.
- */
- void processStateChanges(CLICommand cmd) {
- String operation = cmd.getOperation().trim();
- processStateChanges(cmd.getToken(), operation);
- }
-
- void processStateChanges(MIInterpreterExecConsole exec) {
- String[] operations = exec.getParameters();
- if (operations != null && operations.length > 0) {
- processStateChanges(exec.getToken(), operations[0]);
- }
- }
-
- void processStateChanges(int token, String operation) {
- // Get the command name.
- int indx = operation.indexOf(' ');
- if (indx != -1) {
- operation = operation.substring(0, indx).trim();
- } else {
- operation = operation.trim();
- }
-
- // Check the type of command
-
- int type = getSteppingOperationKind(operation);
- if (type != -1) {
- // if it was a step instruction set state running
- session.getMIInferior().setRunning();
- MIEvent event = new MIRunningEvent(session, token, type);
- session.fireEvent(event);
- }
- }
-
- /**
- * An attempt to discover the command type and
- * fire an event if necessary.
- */
- void processSettingChanges(CLICommand cmd) {
- String operation = cmd.getOperation().trim();
- processSettingChanges(cmd.getToken(), operation);
- }
-
- void processSettingChanges(MIInterpreterExecConsole exec) {
- String[] operations = exec.getParameters();
- if (operations != null && operations.length > 0) {
- processSettingChanges(exec.getToken(), operations[0]);
- }
- }
-
- void processSettingChanges(int token, String operation) {
- // Get the command name.
- int indx = operation.indexOf(' ');
- if (indx != -1) {
- operation = operation.substring(0, indx).trim();
- } else {
- operation = operation.trim();
- }
-
- // Check the type of command
-
- if (isSettingBreakpoint(operation) ||
- isSettingWatchpoint(operation) ||
- isChangeBreakpoint(operation) ||
- isDeletingBreakpoint(operation)) {
- // We know something change, we just do not know what.
- // So the easiest way is to let the top layer handle it.
- session.fireEvent(new MIBreakpointChangedEvent(session, 0));
- } else if (isSettingSignal(operation)) {
- // We do no know which signal let the upper layer find it.
- session.fireEvent(new MISignalChangedEvent(session, "")); //$NON-NLS-1$
- } else if (isDetach(operation)) {
- // if it was a "detach" command change the state.
- session.getMIInferior().setDisconnected();
- MIEvent event = new MIDetachedEvent(session, token);
- session.fireEvent(event);
- }
- }
-
- static int getSteppingOperationKind(String operation) {
- int type = -1;
- /* execution commands: n, next, s, step, si, stepi, u, until, finish,
- c, continue, fg */
- if (operation.equals("n") || operation.equals("next")) { //$NON-NLS-1$ //$NON-NLS-2$
- type = MIRunningEvent.NEXT;
- } else if (operation.equals("ni") || operation.equals("nexti")) { //$NON-NLS-1$ //$NON-NLS-2$
- type = MIRunningEvent.NEXTI;
- } else if (operation.equals("s") || operation.equals("step")) { //$NON-NLS-1$ //$NON-NLS-2$
- type = MIRunningEvent.STEP;
- } else if (operation.equals("si") || operation.equals("stepi")) { //$NON-NLS-1$ //$NON-NLS-2$
- type = MIRunningEvent.STEPI;
- } else if (operation.equals("u") || //$NON-NLS-1$
- (operation.startsWith("unt") && "until".indexOf(operation) != -1)) { //$NON-NLS-1$ //$NON-NLS-2$
- type = MIRunningEvent.UNTIL;
- } else if (operation.startsWith("fin") && "finish".indexOf(operation) != -1) { //$NON-NLS-1$ //$NON-NLS-2$
- type = MIRunningEvent.FINISH;
- } else if (operation.equals("c") || operation.equals("fg") || //$NON-NLS-1$ //$NON-NLS-2$
- (operation.startsWith("cont") && "continue".indexOf(operation) != -1)) { //$NON-NLS-1$ //$NON-NLS-2$
- type = MIRunningEvent.CONTINUE;
- } else if (operation.startsWith("sig") && "signal".indexOf(operation) != -1) { //$NON-NLS-1$ //$NON-NLS-2$
- type = MIRunningEvent.CONTINUE;
- } else if (operation.startsWith("j") && "jump".indexOf(operation) != -1) { //$NON-NLS-1$ //$NON-NLS-2$
- type = MIRunningEvent.CONTINUE;
- } else if (operation.equals("r") || operation.equals("run")) { //$NON-NLS-1$ //$NON-NLS-2$
- type = MIRunningEvent.CONTINUE;
- }
- return type;
- }
-
- /**
- * Return true if the operation is a stepping operation.
- *
- * @param operation
- * @return
- */
- public static boolean isSteppingOperation(String operation) {
- int type = getSteppingOperationKind(operation);
- return type != -1;
- }
-
- boolean isSettingBreakpoint(String operation) {
- boolean isbreak = false;
- /* breakpoints: b, break, hbreak, tbreak, rbreak, thbreak */
- /* watchpoints: watch, rwatch, awatch, tbreak, rbreak, thbreak */
- if ((operation.startsWith("b") && "break".indexOf(operation) != -1) || //$NON-NLS-1$ //$NON-NLS-2$
- (operation.startsWith("tb") && "tbreak".indexOf(operation) != -1) || //$NON-NLS-1$ //$NON-NLS-2$
- (operation.startsWith("hb") && "hbreak".indexOf(operation) != -1) || //$NON-NLS-1$ //$NON-NLS-2$
- (operation.startsWith("thb") && "thbreak".indexOf(operation) != -1) || //$NON-NLS-1$ //$NON-NLS-2$
- (operation.startsWith("rb") && "rbreak".indexOf(operation) != -1)) { //$NON-NLS-1$ //$NON-NLS-2$
- isbreak = true;
- }
- return isbreak;
- }
-
- boolean isSettingWatchpoint(String operation) {
- boolean isWatch = false;
- /* watchpoints: watch, rwatch, awatch, tbreak, rbreak, thbreak */
- if ((operation.startsWith("wa") && "watch".indexOf(operation) != -1) || //$NON-NLS-1$ //$NON-NLS-2$
- (operation.startsWith("rw") && "rwatch".indexOf(operation) != -1) || //$NON-NLS-1$ //$NON-NLS-2$
- (operation.startsWith("aw") && "awatch".indexOf(operation) != -1)) { //$NON-NLS-1$ //$NON-NLS-2$
- isWatch = true;
- }
- return isWatch;
- }
-
- boolean isDeletingBreakpoint(String operation) {
- boolean isDelete = false;
- /* deleting breaks: clear, delete */
- if ((operation.startsWith("cl") && "clear".indexOf(operation) != -1) || //$NON-NLS-1$ //$NON-NLS-2$
- (operation.equals("d") || (operation.startsWith("del") && "delete".indexOf(operation) != -1))) { //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
- isDelete = true;
- }
- return isDelete;
- }
-
- boolean isChangeBreakpoint(String operation) {
- boolean isChange = false;
- /* changing breaks: enable, disable */
- if ((operation.equals("dis") || operation.equals("disa") || //$NON-NLS-1$ //$NON-NLS-2$
- (operation.startsWith("disa") && "disable".indexOf(operation) != -1)) || //$NON-NLS-1$ //$NON-NLS-2$
- (operation.equals("en") || (operation.startsWith("en") && "enable".indexOf(operation) != -1)) || //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
- (operation.startsWith("ig") && "ignore".indexOf(operation) != -1) || //$NON-NLS-1$ //$NON-NLS-2$
- (operation.startsWith("cond") && "condition".indexOf(operation) != -1)) { //$NON-NLS-1$ //$NON-NLS-2$
- isChange = true;
- }
- return isChange;
- }
-
- boolean isSettingSignal(String operation) {
- boolean isChange = false;
- /* changing signal: handle, signal */
- if (operation.startsWith("ha") && "handle".indexOf(operation) != -1) { //$NON-NLS-1$ //$NON-NLS-2$
- isChange = true;
- }
- return isChange;
- }
-
- /**
- * @param operation
- * @return
- */
- boolean isDetach(String operation) {
- return (operation.startsWith("det") && "detach".indexOf(operation) != -1); //$NON-NLS-1$ //$NON-NLS-2$
- }
-
-
-}
diff --git a/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/CommandQueue.java b/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/CommandQueue.java
deleted file mode 100644
index df95b3fc45a..00000000000
--- a/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/CommandQueue.java
+++ /dev/null
@@ -1,62 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.mi.core;
-
-import org.eclipse.cdt.debug.mi.core.command.Command;
-
-/**
- * Simple thread-safe Queue implemetation.
- */
-public class CommandQueue extends Queue {
-
-
- public CommandQueue() {
- super();
- }
-
- public Command removeCommand(int id) {
- //print("in removeCommand(" + id + ") - entering");
- synchronized (list) {
- int size = list.size();
- for (int i = 0; i < size; i++) {
- Command cmd = (Command)list.get(i);
- int token = cmd.getToken();
- if (token == id) {
- list.remove(cmd);
- return cmd;
- }
- }
- }
- return null;
- }
-
- public Command removeCommand() throws InterruptedException {
- //print("in removeCommand() - entering");
- return (Command)removeItem();
- }
-
- public void addCommand(Command cmd) {
- //print("in addCommand() - entering");
- addItem(cmd);
- }
-
- public Command[] clearCommands() {
- Object[] objs = clearItems();
- Command[] cmds = new Command[objs.length];
- System.arraycopy(objs, 0, cmds, 0, objs.length);
- return cmds;
- }
-
-// private static void print(String msg) {
-// String name = Thread.currentThread().getName();
-// System.out.println(name + ": " + msg);
-// }
-}
diff --git a/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/CoreProcess.java b/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/CoreProcess.java
deleted file mode 100644
index 55572103642..00000000000
--- a/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/CoreProcess.java
+++ /dev/null
@@ -1,74 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2002, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.mi.core;
-
-import java.io.IOException;
-import java.io.InputStream;
-import java.io.OutputStream;
-
-/*
- * CoreProcess
- */
-public class CoreProcess extends Process {
-
- /* (non-Javadoc)
- * @see java.lang.Process#exitValue()
- */
- public int exitValue() {
- return 0;
- }
-
- /* (non-Javadoc)
- * @see java.lang.Process#waitFor()
- */
- public int waitFor() throws InterruptedException {
- return 0;
- }
-
- /* (non-Javadoc)
- * @see java.lang.Process#destroy()
- */
- public void destroy() {
- }
-
- /* (non-Javadoc)
- * @see java.lang.Process#getErrorStream()
- */
- public InputStream getErrorStream() {
- return new InputStream() {
- public int read() throws IOException {
- return -1;
- }
- };
- }
-
- /* (non-Javadoc)
- * @see java.lang.Process#getInputStream()
- */
- public InputStream getInputStream() {
- return new InputStream() {
- public int read() throws IOException {
- return -1;
- }
- };
- }
-
- /* (non-Javadoc)
- * @see java.lang.Process#getOutputStream()
- */
- public OutputStream getOutputStream() {
- return new OutputStream() {
- public void write(int b) throws IOException {
- }
- };
- }
-
-}
diff --git a/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/EventThread.java b/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/EventThread.java
deleted file mode 100644
index ac432c45455..00000000000
--- a/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/EventThread.java
+++ /dev/null
@@ -1,59 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.cdt.debug.mi.core;
-
-import org.eclipse.cdt.debug.mi.core.event.MIEvent;
-import org.eclipse.cdt.debug.mi.core.event.MIStoppedEvent;
-
-/**
- * Event Thread blocks on the event Queue, wakes up
- * when events are available and notify all the observers.
- */
-public class EventThread extends Thread {
-
- MISession session;
-
- public EventThread(MISession s) {
- super("MI Event Thread"); //$NON-NLS-1$
- session = s;
- }
-
- public void run() {
- // Signal by the session of time to die.
- while (session.getChannelOutputStream() != null) {
- MIEvent event = null;
- Queue eventQueue = session.getEventQueue();
- // removeItem() will block until an item is available.
- try {
- event = (MIEvent) eventQueue.removeItem();
- } catch (InterruptedException e) {
- //e.printStackTrace();
- }
- if (event instanceof MIStoppedEvent) {
- processSuspendedEvent((MIStoppedEvent)event);
- }
- try {
- if (event != null) {
- session.notifyObservers(event);
- }
- } catch (Exception e) {
- e.printStackTrace();
- }
- }
- }
-
- void processSuspendedEvent(MIStoppedEvent stopped) {
- // give a chance also to the underlying inferior.
- session.getMIInferior().update();
- }
-
-}
diff --git a/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/GDBTypeParser.java b/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/GDBTypeParser.java
deleted file mode 100644
index 7dc492a1e8d..00000000000
--- a/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/GDBTypeParser.java
+++ /dev/null
@@ -1,580 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- * Matthias Spycher (matthias@coware.com) - bug 124966
- *******************************************************************************/
-
-package org.eclipse.cdt.debug.mi.core;
-
-import java.util.regex.Pattern;
-
-/**
- * GDB Type Parser.
- * The code was lifted from: The C Programming Language
- * B. W. Kernighan and D. Ritchie
- */
-public class GDBTypeParser {
-
- // GDB type parsing from whatis command
- // declarator: type dcl
- // type: (name)+
- // dcl: ('*' | '&')* direct-decl
- // direct-dcl: '(' dcl ')'
- // direct-dcl '(' ')'
- // direct-dcl '[' integer ']'
- // name: ([a-zA-z][0-9])+
- // integer ([0-9)+
-
- final static int EOF = -1;
- final static int NAME = 0;
- final static int PARENS = 1;
- final static int BRACKETS = 2;
-
- String line;
- int index;
- int tokenType;
- String token;
- String dataType;
- String name;
- GDBDerivedType gdbDerivedType;
- GDBType genericType;
-
- public GDBType getGDBType() {
- if (gdbDerivedType != null) {
- return gdbDerivedType;
- }
- return genericType;
- }
-
- public String getVariableName() {
- return name;
- }
-
- public GDBType parse(String s) {
- // Sanity.
- if (s == null) {
- s = new String();
- }
- s = Pattern.compile("\\bconst\\b").matcher(s).replaceAll(""); //$NON-NLS-1$//$NON-NLS-2$
- s = Pattern.compile("\\bvolatile\\b").matcher(s).replaceAll(""); //$NON-NLS-1$//$NON-NLS-2$
- s = s.trim();
-
- // Initialize.
- line = s;
- index = 0;
- tokenType = -1;
- token = ""; //$NON-NLS-1$
- dataType = ""; //$NON-NLS-1$
- name = ""; //$NON-NLS-1$
- gdbDerivedType = null;
- genericType = null;
-
- // Fetch the datatype.
- while (getToken() == NAME) {
- dataType += " " + token; //$NON-NLS-1$
- }
-
- // Hack for GDB, the typename can be something like
- // class A : public B, C { ... } *
- // We are only interested in "class A"
- // Carefull for class A::data or class ns::A<ns::data>
- int column = dataType.indexOf(':');
- while (column > 0) {
- if ((column + 2) < dataType.length() && dataType.charAt(column + 1) == ':') {
- column = dataType.indexOf(':', column+2);
- continue;
- }
- dataType = dataType.substring(0, column);
- break;
- }
- genericType = new GDBType(dataType);
-
- // Start the recursive parser.
- dcl(tokenType);
- return getGDBType();
- }
-
- public static String unParse (GDBType gdbType) {
-
- StringBuffer sb = new StringBuffer();
- // Fetch the datatype.
- while (gdbType != null) {
- GDBDerivedType derived = null;
- int type = gdbType.getType();
- if (gdbType instanceof GDBDerivedType) {
- derived = (GDBDerivedType)gdbType;
- gdbType = derived.getChild();
- // respect the precedence of operators.
- if (type == GDBType.FUNCTION) {
- sb.append("()"); //$NON-NLS-1$
- } else if (type == GDBType.ARRAY) {
- sb.append('[').append(derived.getDimension()).append(']');
- } else if (type == GDBType.POINTER) {
- int childType = (gdbType != null) ? gdbType.getType() : GDBType.GENERIC;
- if (childType == GDBType.POINTER || childType == GDBType.REFERENCE) {
- sb.append('*');
- } else if (childType == GDBType.GENERIC) {
- sb.insert(0, '*');
- } else {
- sb.insert(0, "(*").append(')'); //$NON-NLS-1$
- }
- } else if (type == GDBType.REFERENCE) {
- int childType = (gdbType != null) ? gdbType.getType() : GDBType.GENERIC;
- if (childType == GDBType.POINTER || childType == GDBType.REFERENCE) {
- sb.append("&"); //$NON-NLS-1$
- } else if (childType == GDBType.GENERIC) {
- sb.insert(0, '&');
- } else {
- sb.insert(0, "(&").append(')'); //$NON-NLS-1$
- }
- }
- } else {
- sb.insert(0, ' ');
- sb.insert(0, gdbType.nameType);
- gdbType = null;
- }
- }
- return sb.toString().trim();
-
- }
-
- public class GDBType {
- public final static int GENERIC = 0;
- public final static int POINTER = 1;
- public final static int REFERENCE = 2;
- public final static int ARRAY = 3;
- public final static int FUNCTION = 4;
-
- String nameType;
- int type;
-
- public GDBType(String n) {
- this(n, 0);
- }
-
- public GDBType(int t) {
- this("", t); //$NON-NLS-1$
- }
-
- public GDBType(String n, int t) {
- nameType = n;
- type = t;
- }
-
- public String toString() {
- return unParse(this);
- }
-
- public String verbose() {
- return nameType;
- }
-
- public int getType() {
- return type;
- }
-
- public String getTypeName() {
- return nameType;
- }
- }
-
- public class GDBDerivedType extends GDBType {
- int dimension;
- GDBType child;
-
- public GDBDerivedType(GDBType c, int i) {
- this(c, i, 0);
- }
-
- public GDBDerivedType(GDBType c, int t, int dim) {
- super(t);
- setChild(c);
- dimension = dim;
- }
-
- public int getDimension() {
- return dimension;
- }
-
- public void setChild(GDBType c) {
- child = c;
- }
-
- public GDBType getChild() {
- return child;
- }
-
- public boolean hasChild() {
- return child != null;
- }
-
- public String verbose() {
- StringBuffer sb = new StringBuffer();
- switch (getType()) {
- case FUNCTION :
- sb.append(" function returning " + (hasChild() ? child.verbose() : "")); //$NON-NLS-1$//$NON-NLS-2$
- break;
- case ARRAY :
- sb.append(" array[" + dimension + "]" + " of " + (hasChild() ? child.verbose() : "")); //$NON-NLS-1$//$NON-NLS-2$ //$NON-NLS-3$ //$NON-NLS-4$
- break;
- case REFERENCE :
- sb.append(" reference to " + (hasChild() ? child.verbose() : "")); //$NON-NLS-1$//$NON-NLS-2$
- break;
- case POINTER :
- sb.append(" pointer to " + (hasChild() ? child.verbose() : "")); //$NON-NLS-1$//$NON-NLS-2$
- break;
- }
- return sb.toString();
- }
- }
-
- int getch() {
- if (index >= line.length() || index < 0) {
- return EOF;
- }
- return line.charAt(index++);
- }
-
- void ungetch() {
- if (index > 0) {
- index--;
- }
- }
-
- // check if the character is an alphabet
- boolean isCIdentifierStart(int c) {
- if ((c >= 'A' && c <= 'Z') || (c >= 'a' && c <= 'z') || c == '_' || c == ':' || c == ',') {
- return true;
- }
- return false;
- }
-
- // check is the character is alpha numeric
- // [a-zA-Z0-9]
- // GDB hack accept ':' ',' part of the GDB hacks
- // when doing ptype gdb returns "class A : public C { ..}"
- boolean isCIdentifierPart(int c) {
- if ((c >= '0' && c <= '9') || (c >= 'A' && c <= 'Z') || (c >= 'a' && c <= 'z') || c == '_' || c == ':') {
- return true;
- }
- return false;
- }
-
- boolean isCSpace(int c) {
- if (c == ' ' || c == '\t' || c == '\f' || c == '\n') {
- return true;
- }
- return false;
- }
-
- void insertingChild(int kind) {
- insertingChild(kind, 0);
- }
-
- void insertingChild(int kind, int d) {
- if (gdbDerivedType == null) {
- gdbDerivedType = new GDBDerivedType(genericType, kind, d);
- } else {
- GDBDerivedType dType = gdbDerivedType;
- GDBType gdbType = gdbDerivedType.getChild();
- while (gdbType instanceof GDBDerivedType) {
- dType = (GDBDerivedType)gdbType;
- gdbType = dType.getChild();
- }
- gdbType = new GDBDerivedType(gdbType, kind, d);
- dType.setChild(gdbType);
- }
- }
-
- // method returns the next token
- int getToken() {
- token = ""; //$NON-NLS-1$
-
- int c = getch();
-
- // Skip over any space
- while (isCSpace(c)) {
- c = getch();
- }
-
- //char character = (char) c;
-
- if (c == '(') {
- c = getch();
- if (c == ')') {
- token = "()"; //$NON-NLS-1$
- tokenType = PARENS;
- } else if (isCIdentifierStart(c)) {
- int i = 0;
- token += (char)c;
- while (i == 0 && c != ')') {
- if (c == EOF) {
- // Unbalanced parantheses.
- break;
- }
- c = getch();
- token += (char)c;
- if (c == '(') {
- ++i;
- } else if (c == ')') {
- --i;
- }
- }
- tokenType = PARENS;
- } else {
- ungetch();
- tokenType = '(';
- }
-
-
-
- } else if (c == '[') {
- while ((c = getch()) != ']' && c != EOF) {
- token += (char) c;
- }
- tokenType = BRACKETS;
- } else if (isCIdentifierStart(c)) {
- StringBuffer sb = new StringBuffer();
- sb.append((char) c);
- while (isCIdentifierPart((c = getch())) && c != EOF) {
- sb.append((char) c);
- }
- if (c == '<') {
- // Swallow template args in types like "class foobar<A,B> : public C {..} *"
- // FIXME: if the bracket is not terminate do we throw exception?
- sb.append((char) c);
- int count = 1;
- do {
- c = getch();
- if (c == '<') {
- count++;
- } else if (c == '>') {
- count--;
- }
- if (c != ' ') {
- sb.append((char)c);
- }
- } while (count > 0 && c != EOF);
- } else if (c != EOF) {
- ungetch();
- }
- token = sb.toString();
- tokenType = NAME;
- } else if (c == '{') {
- // Swallow gdb sends things like "struct foobar {..} *"
- // FIXME: if the bracket is not terminate do we throw exception?
- int count = 1;
- do {
- c = getch();
- if (c == '{') {
- count++;
- } else if (c == '}') {
- count--;
- }
- } while (count > 0 && c != EOF);
- } else {
- tokenType = c;
- }
- return tokenType;
- }
-
- void dcl() {
- dcl(getToken());
- }
-
- // parse a declarator
- void dcl(int c) {
- int nstar = 0;
- int namp = 0;
- if (c == '*') {
- nstar++;
- for (; getToken() == '*'; nstar++) {
- }
- } else if (c == '&') {
- namp++;
- for (; getToken() == '&'; namp++) {
- }
- }
- dirdcl();
- while (nstar-- > 0) {
- insertingChild(GDBType.POINTER);
- }
- while (namp-- > 0) {
- insertingChild(GDBType.REFERENCE);
- }
- }
-
- // parse a direct declarator
- void dirdcl() {
- int type;
-
- if (tokenType == '(') {
- dcl();
- if (tokenType != ')' /*&& name.length() > 0*/) {
- // Do we throw an exception on unterminated parentheses
- // It should have been handle by getToken()
- return;
- }
- } else if (tokenType == NAME) {
- // Useless we do not need the name of the variable
- name = " " + token; //$NON-NLS-1$
- } else if (tokenType == PARENS) {
- insertingChild(GDBType.FUNCTION);
- } else if (tokenType == BRACKETS) {
- int len = 0;
- if (token.length() > 0) {
- try {
- len = Integer.parseInt(token);
- } catch (NumberFormatException e) {
- }
- }
- insertingChild(GDBType.ARRAY, len);
- } else if (tokenType == '&') {
- insertingChild(GDBType.REFERENCE);
- } else {
- // oops bad declaration ?
- return;
- }
-
- while ((type = getToken()) == PARENS || type == BRACKETS) {
- if (type == PARENS) {
- insertingChild(GDBType.FUNCTION);
- } else { /* BRACKETS */
- int len = 0;
- if (token.length() > 0) {
- try {
- len = Integer.parseInt(token);
- } catch (NumberFormatException e) {
- }
- }
- insertingChild(GDBType.ARRAY, len);
- }
- }
- }
-
- public static void main(String[] args) {
-
- GDBTypeParser parser = new GDBTypeParser();
-
- System.out.println("int *&"); //$NON-NLS-1$
- parser.parse("int *&"); //$NON-NLS-1$
- System.out.println(GDBTypeParser.unParse(parser.getGDBType()));
- System.out.println(parser.getGDBType().verbose());
- System.out.println();
-
- System.out.println("int (&rg)(int)"); //$NON-NLS-1$
- parser.parse("int (&rg)(int)"); //$NON-NLS-1$
- System.out.println(GDBTypeParser.unParse(parser.getGDBType()));
- System.out.println(parser.getGDBType().verbose());
- System.out.println();
-
- System.out.println("int (&ra)[3]"); //$NON-NLS-1$
- parser.parse("int (&rg)[3]"); //$NON-NLS-1$
- System.out.println(GDBTypeParser.unParse(parser.getGDBType()));
- System.out.println(parser.getGDBType().verbose());
- System.out.println();
-
- System.out.println("struct link { int i; int j; struct link * next;} *"); //$NON-NLS-1$
- parser.parse("struct link { int i; int j; struct link * next} *"); //$NON-NLS-1$
- System.out.println(GDBTypeParser.unParse(parser.getGDBType()));
- System.out.println(parser.getGDBType().verbose());
- System.out.println();
-
- System.out.println("class ns::link<8, ns::A> : public ns::B { int i; int j; struct link * next;} *"); //$NON-NLS-1$
- parser.parse("class ns::link<8, ns::A> : public ns::B { int i; int j; struct link * next;} *"); //$NON-NLS-1$
- System.out.println(GDBTypeParser.unParse(parser.getGDBType()));
- System.out.println(parser.getGDBType().verbose());
- System.out.println();
-
- System.out.println("char **argv"); //$NON-NLS-1$
- parser.parse("char **argv"); //$NON-NLS-1$
- System.out.println(GDBTypeParser.unParse(parser.getGDBType()));
- System.out.println(parser.getGDBType().verbose());
- System.out.println();
-
- System.out.println("int (*daytab)[13]"); //$NON-NLS-1$
- parser.parse("int (*daytab)[13]"); //$NON-NLS-1$
- System.out.println(GDBTypeParser.unParse(parser.getGDBType()));
- System.out.println(parser.getGDBType().verbose());
- System.out.println();
-
- System.out.println("int *daytab[13]"); //$NON-NLS-1$
- parser.parse("int *daytab[13]"); //$NON-NLS-1$
- System.out.println(GDBTypeParser.unParse(parser.getGDBType()));
- System.out.println(parser.getGDBType().verbose());
- System.out.println();
-
- System.out.println("void *comp()"); //$NON-NLS-1$
- parser.parse("void *comp()"); //$NON-NLS-1$
- System.out.println(GDBTypeParser.unParse(parser.getGDBType()));
- System.out.println(parser.getGDBType().verbose());
- System.out.println();
-
- System.out.println("void (*comp)()"); //$NON-NLS-1$
- parser.parse("void (*comp)()"); //$NON-NLS-1$
- System.out.println(GDBTypeParser.unParse(parser.getGDBType()));
- System.out.println(parser.getGDBType().verbose());
- System.out.println();
-
- System.out.println("int (*func[15])()"); //$NON-NLS-1$
- parser.parse("int (*func[15])()"); //$NON-NLS-1$
- System.out.println(GDBTypeParser.unParse(parser.getGDBType()));
- System.out.println(parser.getGDBType().verbose());
- System.out.println();
-
- System.out.println("char (*(*x())[])()"); //$NON-NLS-1$
- parser.parse("char (*(*x())[])()"); //$NON-NLS-1$
- System.out.println(GDBTypeParser.unParse(parser.getGDBType()));
- System.out.println(parser.getGDBType().verbose());
- System.out.println();
-
- System.out.println("char (*(*x[3])())[5]"); //$NON-NLS-1$
- parser.parse("char (*(*x[3])())[5]"); //$NON-NLS-1$
- System.out.println(GDBTypeParser.unParse(parser.getGDBType()));
- System.out.println(parser.getGDBType().verbose());
- System.out.println();
-
- System.out.println("char *[5]"); //$NON-NLS-1$
- parser.parse("char *[5]"); //$NON-NLS-1$
- System.out.println(GDBTypeParser.unParse(parser.getGDBType()));
- System.out.println(parser.getGDBType().verbose());
- System.out.println();
-
- System.out.println("int [2][3]"); //$NON-NLS-1$
- parser.parse("int [2][3]"); //$NON-NLS-1$
- System.out.println(GDBTypeParser.unParse(parser.getGDBType()));
- System.out.println(parser.getGDBType().verbose());
- System.out.println();
-
- System.out.println("int (int, char **)"); //$NON-NLS-1$
- parser.parse("int (int, char **)"); //$NON-NLS-1$
- System.out.println(GDBTypeParser.unParse(parser.getGDBType()));
- System.out.println(parser.getGDBType().verbose());
- System.out.println();
-
- System.out.println("int (int)"); //$NON-NLS-1$
- parser.parse("int (int)"); //$NON-NLS-1$
- System.out.println(GDBTypeParser.unParse(parser.getGDBType()));
- System.out.println(parser.getGDBType().verbose());
- System.out.println();
-
- System.out.println("int (void)"); //$NON-NLS-1$
- parser.parse("int (void)"); //$NON-NLS-1$
- System.out.println(GDBTypeParser.unParse(parser.getGDBType()));
- System.out.println(parser.getGDBType().verbose());
- System.out.println();
-
- System.out.println("int ()"); //$NON-NLS-1$
- parser.parse("int ()"); //$NON-NLS-1$
- System.out.println(GDBTypeParser.unParse(parser.getGDBType()));
- System.out.println(parser.getGDBType().verbose());
- System.out.println();
-
- }
-}
diff --git a/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/IMITTY.java b/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/IMITTY.java
deleted file mode 100644
index 99e0d28132a..00000000000
--- a/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/IMITTY.java
+++ /dev/null
@@ -1,43 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.cdt.debug.mi.core;
-
-import java.io.InputStream;
-import java.io.OutputStream;
-
-/**
- */
-public interface IMITTY {
-
- /**
- * Returns the name of the slave to pass to gdb --tty command
- * ex: --tty=/dev/pty/1
- *
- * @return
- */
- public String getSlaveName();
-
- /**
- * Returns the OutputStream of the Master.
- *
- * @return
- */
- public OutputStream getOutputStream();
-
- /**
- * Returns the InputStream of the Master
- *
- * @return
- */
- public InputStream getInputStream();
-
-}
diff --git a/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/MIException.java b/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/MIException.java
deleted file mode 100644
index 7ac50ce5c49..00000000000
--- a/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/MIException.java
+++ /dev/null
@@ -1,38 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2005 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.cdt.debug.mi.core;
-
-/**
- *
- * A checked exception representing a failure.
- *
- */
-public class MIException extends Exception {
- /**
- *
- */
- private static final long serialVersionUID = 3257844402679724085L;
- String log = ""; //$NON-NLS-1$
-
- public MIException(String s) {
- super(s);
- }
-
- public MIException(String s, String l) {
- super(s);
- log = l;
- }
-
- public String getLogMessage() {
- return log;
- }
-}
diff --git a/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/MIFormat.java b/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/MIFormat.java
deleted file mode 100644
index 0d118c392ef..00000000000
--- a/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/MIFormat.java
+++ /dev/null
@@ -1,107 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.mi.core;
-
-import java.math.BigInteger;
-
-/**
- * Help class to specify formats.
- */
-public final class MIFormat {
- public final static int HEXADECIMAL = 0;
- public final static int OCTAL = 1;
- public final static int BINARY = 2;
- public final static int DECIMAL = 3;
- public final static int RAW = 4;
- public final static int NATURAL = 5;
-
- public final static int FLOAT = 10;
- public final static int ADDRESS = 11;
- public final static int INSTRUCTION = 12;
- public final static int CHAR = 13;
- public final static int STRING = 14;
- public final static int UNSIGNED = 15;
-
- // no instanciation.
- private MIFormat() {
- }
-
- /**
- * We are assuming that GDB will print the address in hex format
- * like:
- * 0xbfffe5f0 "hello"
- * (int *) 0xbfffe2b8
- *
- * @param buffer
- * @return
- */
- public static BigInteger decodeAdress(String buffer) {
- int radix = 10;
- int cursor = 0;
- int offset = 0;
- int len = buffer.length();
-
- if ((offset = buffer.indexOf("0x")) != -1 || //$NON-NLS-1$
- (offset = buffer.indexOf("0X")) != -1) { //$NON-NLS-1$
- radix = 16;
- cursor = offset + 2;
- }
-
- while (cursor < len && Character.digit(buffer.charAt(cursor), radix) != -1) {
- cursor++;
- }
-
- String s = buffer.substring(offset, cursor);
- return getBigInteger(s);
- }
-
- public static BigInteger getBigInteger(String address) {
- int index = 0;
- int radix = 10;
- boolean negative = false;
-
- // Handle zero length
- address = address.trim();
- if (address.length() == 0) {
- return BigInteger.ZERO;
- }
-
- // Handle minus sign, if present
- if (address.startsWith("-")) { //$NON-NLS-1$
- negative = true;
- index++;
- }
- if (address.startsWith("0x", index) || address.startsWith("0X", index)) { //$NON-NLS-1$ //$NON-NLS-2$
- index += 2;
- radix = 16;
- } else if (address.startsWith("#", index)) { //$NON-NLS-1$
- index ++;
- radix = 16;
- } else if (address.startsWith("0", index) && address.length() > 1 + index) { //$NON-NLS-1$
- index ++;
- radix = 8;
- }
-
- if (index > 0) {
- address = address.substring(index);
- }
- if (negative) {
- address = "-" + address; //$NON-NLS-1$
- }
- try {
- return new BigInteger(address, radix);
- } catch (NumberFormatException e) {
- // ...
- // What can we do ???
- }
- return BigInteger.ZERO;
- }
-}
diff --git a/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/MIInferior.java b/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/MIInferior.java
deleted file mode 100644
index 170228ded8c..00000000000
--- a/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/MIInferior.java
+++ /dev/null
@@ -1,359 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- * Hewlett-Packard Development Company - fix for bug 109733
- *******************************************************************************/
-package org.eclipse.cdt.debug.mi.core;
-
-import java.io.IOException;
-import java.io.InputStream;
-import java.io.OutputStream;
-import java.io.PipedInputStream;
-import java.io.PipedOutputStream;
-
-import org.eclipse.cdt.debug.mi.core.command.CommandFactory;
-import org.eclipse.cdt.debug.mi.core.command.CLIExecAbort;
-import org.eclipse.cdt.debug.mi.core.command.MIExecInterrupt;
-import org.eclipse.cdt.debug.mi.core.command.MIGDBShowExitCode;
-import org.eclipse.cdt.debug.mi.core.command.CLIInfoProgram;
-import org.eclipse.cdt.debug.mi.core.event.MIInferiorExitEvent;
-import org.eclipse.cdt.debug.mi.core.output.MIGDBShowExitCodeInfo;
-import org.eclipse.cdt.debug.mi.core.output.CLIInfoProgramInfo;
-
-/**
- */
-public class MIInferior extends Process {
-
- final static int SUSPENDED = 1;
- final static int RUNNING = 2;
- final static int TERMINATED = 4;
-
- boolean connected = false;
-
- boolean exitCodeKnown = false;
- int exitCode = 0;
- int state = 0;
-
- MISession session;
-
- OutputStream out;
- InputStream in;
-
- PipedOutputStream inPiped;
-
- PipedInputStream err;
- PipedOutputStream errPiped;
- IMITTY tty;
-
- int inferiorPID;
-
- public MIInferior(MISession mi, IMITTY p) {
- session = mi;
- tty = p;
- if (tty != null) {
- out = tty.getOutputStream();
- in = tty.getInputStream();
- }
- }
-
- /**
- * @see java.lang.Process#getOutputStream()
- */
- public OutputStream getOutputStream() {
- if (out == null) {
- out = new OutputStream() {
- public void write(int b) throws IOException {
- if (!isRunning()) {
- throw new IOException(MIPlugin.getResourceString("src.MIInferior.target_is_suspended")); //$NON-NLS-1$
- }
- OutputStream channel = session.getChannelOutputStream();
- if (channel == null) {
- throw new IOException(MIPlugin.getResourceString("src.MIInferior.No_session")); //$NON-NLS-1$
- }
- channel.write(b);
- }
- };
- }
- return out;
- }
-
- /**
- * @see java.lang.Process#getInputStream()
- */
- public InputStream getInputStream() {
- if (in == null) {
- try {
- inPiped = new PipedOutputStream();
- in = new PipedInputStream(inPiped);
- } catch (IOException e) {
- }
- }
- return in;
- }
-
- /**
- * @see java.lang.Process#getErrorStream()
- */
- public InputStream getErrorStream() {
- // FIXME: We do not have any err stream from gdb/mi
- // so this gdb err channel instead.
- if (err == null) {
- try {
- errPiped = new PipedOutputStream();
- err = new PipedInputStream(errPiped);
- } catch (IOException e) {
- }
- }
- return err;
- }
-
- public synchronized void waitForSync() throws InterruptedException {
- while (state != TERMINATED) {
- wait();
- }
- }
-
- /**
- * @see java.lang.Process#waitFor()
- */
- public int waitFor() throws InterruptedException {
- waitForSync();
- return exitValue();
- }
-
- /**
- * @see java.lang.Process#exitValue()
- */
- public int exitValue() {
- if (isTerminated()) {
- if (!session.isTerminated()) {
- if (!exitCodeKnown) {
- CommandFactory factory = session.getCommandFactory();
- MIGDBShowExitCode code = factory.createMIGDBShowExitCode();
- try {
- session.postCommand(code);
- MIGDBShowExitCodeInfo info = code.getMIGDBShowExitCodeInfo();
- exitCode = info.getCode();
- } catch (MIException e) {
- // no rethrown.
- }
- exitCodeKnown = true;
- }
- }
- return exitCode;
- }
- throw new IllegalThreadStateException();
- }
-
- /**
- * @see java.lang.Process#destroy()
- */
- public void destroy() {
- try {
- terminate();
- } catch (MIException e) {
- // do nothing.
- }
- }
-
- public void terminate() throws MIException {
- // An inferior will be destroy():interrupt and kill if
- // - For attach session:
- // the inferior was not disconnected yet (no need to try
- // to kill a disconnected program).
- // - For Program session:
- // if the inferior was not terminated.
- // - For PostMortem(Core): send event
- // else noop
- if ((session.isAttachSession() && isConnected()) || (session.isProgramSession() && !isTerminated())) {
- // Try to interrupt the inferior, first.
- if (isRunning()) {
- interrupt();
- }
- int token = 0;
- if (isSuspended()) {
- try {
- CommandFactory factory = session.getCommandFactory();
- CLIExecAbort abort = factory.createCLIExecAbort();
- session.postCommand0(abort, -1);
- // do not wait for the answer.
- //abort.getMIInfo();
- token = abort.getToken();
- } catch (MIException e) {
- // ignore the error
- }
- }
- setTerminated(token, true);
- } else if (session.isCoreSession() && !isTerminated()){
- setTerminated();
- }
- }
-
- public void interrupt() throws MIException {
- MIProcess gdb = session.getGDBProcess();
- // Check if they can handle the interrupt
- // Try the exec-interrupt; this will be for "gdb --async"
- CommandFactory factory = session.getCommandFactory();
- MIExecInterrupt interrupt = factory.createMIExecInterrupt();
- if (interrupt != null) {
- try {
- session.postCommand(interrupt);
- // call getMIInfo() even if we discard the value;
- interrupt.getMIInfo();
- // Allow (5 secs) for the interrupt to propagate.
- synchronized(this) {
- for (int i = 0;(state == RUNNING) && i < 5; i++) {
- try {
- wait(1000);
- } catch (InterruptedException e) {
- }
- }
- }
- } catch (MIException e) {
- }
- } else if (gdb.canInterrupt(this)) {
- gdb.interrupt(this);
- }
-
- // If we've failed throw an exception up.
- if (state == RUNNING) {
- throw new MIException(MIPlugin.getResourceString("src.MIInferior.Failed_to_interrupt")); //$NON-NLS-1$
- }
- }
-
- public boolean isSuspended() {
- return state == SUSPENDED;
- }
-
- public boolean isRunning() {
- return state == RUNNING;
- }
-
- public boolean isTerminated() {
- return state == TERMINATED;
- }
-
- public boolean isConnected() {
- return connected;
- }
-
- public synchronized void setConnected() {
- connected = true;
- }
-
- public synchronized void setDisconnected() {
- connected = false;
- }
-
- public synchronized void setSuspended() {
- state = SUSPENDED;
- notifyAll();
- }
-
- public synchronized void setRunning() {
- state = RUNNING;
- notifyAll();
- }
-
- public synchronized void setTerminated() {
- setTerminated(0, true);
- }
-
- synchronized void setTerminated(int token, boolean fireEvent) {
- state = TERMINATED;
- // Close the streams.
- try {
- if (inPiped != null) {
- inPiped.close();
- inPiped = null;
- }
- } catch (IOException e) {
- //e.printStackTrace();
- }
- try {
- if (errPiped != null) {
- errPiped.close();
- errPiped = null;
- }
- } catch (IOException e) {
- //e.printStackTrace();
- }
-
- // If tty is not null then we are using a master/slave terminal
- // emulation close the master to notify the slave.
- if (tty != null) {
- if (in != null) {
- try {
- in.close();
- } catch (IOException e) {
- //e.printStackTrace();
- }
- in = null;
- }
- if (out != null) {
- try {
- out.close();
- } catch (IOException e) {
- //e.printStackTrace();
- }
- out = null;
- }
- }
- if (fireEvent) {
- session.fireEvent(new MIInferiorExitEvent(session, token));
- }
- notifyAll();
- }
-
- public OutputStream getPipedOutputStream() {
- return inPiped;
- }
-
- public OutputStream getPipedErrorStream() {
- return errPiped;
- }
-
- public IMITTY getTTY() {
- return tty;
- }
-
- public void update() {
- if (getInferiorPID() == 0) {
- int pid = 0;
- // Do not try this on attach session.
- if (!isConnected()) {
- // Try to discover the pid
- CommandFactory factory = session.getCommandFactory();
- CLIInfoProgram prog = factory.createCLIInfoProgram();
- try {
- RxThread rxThread = session.getRxThread();
- rxThread.setEnableConsole(false);
- session.postCommand(prog);
- CLIInfoProgramInfo info = prog.getMIInfoProgramInfo();
- pid = info.getPID();
- } catch (MIException e) {
- // no rethrown.
- } finally {
- RxThread rxThread = session.getRxThread();
- rxThread.setEnableConsole(true);
- }
- }
- // We fail permantely.
- setInferiorPID((pid == 0) ? -1: pid);
- }
- }
-
- public void setInferiorPID(int pid) {
- inferiorPID = pid;
- }
-
- public int getInferiorPID() {
- return inferiorPID;
- }
-}
diff --git a/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/MIProcess.java b/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/MIProcess.java
deleted file mode 100644
index 998df6f4bc5..00000000000
--- a/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/MIProcess.java
+++ /dev/null
@@ -1,58 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.cdt.debug.mi.core;
-
-import java.io.InputStream;
-import java.io.OutputStream;
-
-/**
- * Check if we can interrupt the inferior.
- *
- */
-public interface MIProcess {
-
-
- public abstract boolean canInterrupt(MIInferior inferior);
-
- public abstract void interrupt(MIInferior inferior);
-
- /* (non-Javadoc)
- * @see java.lang.Process#destroy()
- */
- public void destroy();
-
- /* (non-Javadoc)
- * @see java.lang.Process#exitValue()
- */
- public int exitValue();
-
- /* (non-Javadoc)
- * @see java.lang.Process#getErrorStream()
- */
- public InputStream getErrorStream();
-
- /* (non-Javadoc)
- * @see java.lang.Process#getInputStream()
- */
- public InputStream getInputStream();
-
- /* (non-Javadoc)
- * @see java.lang.Process#getOutputStream()
- */
- public OutputStream getOutputStream();
-
- /* (non-Javadoc)
- * @see java.lang.Process#waitFor()
- */
- public int waitFor() throws InterruptedException;
-
-}
diff --git a/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/MISession.java b/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/MISession.java
deleted file mode 100644
index 67489b30480..00000000000
--- a/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/MISession.java
+++ /dev/null
@@ -1,840 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- * Hewlett-Packard Development Company - fix for bug 109733
- *******************************************************************************/
-package org.eclipse.cdt.debug.mi.core;
-
-import java.io.BufferedReader;
-import java.io.IOException;
-import java.io.InputStream;
-import java.io.InputStreamReader;
-import java.io.OutputStream;
-import java.io.PipedInputStream;
-import java.io.PipedOutputStream;
-import java.util.Observable;
-
-import org.eclipse.cdt.debug.mi.core.command.Command;
-import org.eclipse.cdt.debug.mi.core.command.CommandFactory;
-import org.eclipse.cdt.debug.mi.core.command.MIExecInterrupt;
-import org.eclipse.cdt.debug.mi.core.command.MIGDBExit;
-import org.eclipse.cdt.debug.mi.core.command.MIGDBSet;
-import org.eclipse.cdt.debug.mi.core.command.MIGDBShowExitCode;
-import org.eclipse.cdt.debug.mi.core.command.MIGDBShowPrompt;
-import org.eclipse.cdt.debug.mi.core.command.MIInterpreterExecConsole;
-import org.eclipse.cdt.debug.mi.core.command.MIVersion;
-import org.eclipse.cdt.debug.mi.core.event.MIEvent;
-import org.eclipse.cdt.debug.mi.core.event.MIGDBExitEvent;
-import org.eclipse.cdt.debug.mi.core.output.MIGDBShowInfo;
-import org.eclipse.cdt.debug.mi.core.output.MIOutput;
-import org.eclipse.cdt.debug.mi.core.output.MIParser;
-import org.eclipse.core.runtime.IProgressMonitor;
-import org.eclipse.core.runtime.NullProgressMonitor;
-
-/**
- * Represents a GDB/MI session.
- * Note that on GNU/Linux the target stream is not
- * preceded by the token '@' until this is fix, on GNU/Linux
- * there a good change to confuse the parser.
- */
-public class MISession extends Observable {
-
- /**
- * Normal program debuging.
- */
- public final static int PROGRAM = 0;
- /**
- * Attach to a running process debuging.
- */
- public final static int ATTACH = 1;
- /**
- * PostMortem analysis.
- */
- public final static int CORE = 2;
-
- boolean terminated;
- boolean useInterpreterExecConsole;
- boolean verboseMode = false;
-
- // hold the type of the session(post-mortem, attach etc ..)
- int sessionType;
-
- Process sessionProcess;
- MIProcess gdbProcess;
- InputStream inChannel;
- OutputStream outChannel;
-
- TxThread txThread;
- RxThread rxThread;
- EventThread eventThread;
-
- CommandQueue txQueue;
- CommandQueue rxQueue;
- Queue eventQueue;
-
- PipedInputStream miInConsolePipe;
- PipedOutputStream miOutConsolePipe;
- PipedInputStream miInLogPipe;
- PipedOutputStream miOutLogPipe;
-
-
- CommandFactory factory;
-
- MIParser parser;
-
- long cmdTimeout;
-
- MIInferior inferior;
-
- /**
- * @param process
- * @param tty
- * @param type
- * @param commandTimeout
- * @param launchTimeout
- * @param miVersion
- * @param monitor
- * @throws MIException
- * @deprecated
- */
- public MISession(MIProcess process, IMITTY tty, int type, int commandTimeout, int launchTimeout, String miVersion, IProgressMonitor monitor) throws MIException {
- this(process, tty, type, new CommandFactory(miVersion), commandTimeout, launchTimeout, monitor);
- }
-
-
- /**
- * Create the gdb session. Assume MIVersion 1
- *
- * @deprecated use the other constructors with the MIVersion
- * @param Process gdb Process.
- * @param pty Terminal to use for the inferior.
- * @param timeout time in milliseconds to wait for command response.
- * @param type the type of debugin session.
- * @deprecated
- */
- public MISession(MIProcess process, IMITTY tty, int commandTimeout, int type, int launchTimeout) throws MIException {
- this(process, tty, type, commandTimeout, launchTimeout, MIVersion.MI1, new NullProgressMonitor());
- if (useExecConsole()) {
- // if exec console is present, assume MI2 supported
- setCommandFactory(new CommandFactory(MIVersion.MI2));
- }
- }
-
- /**
- * Create the gdb session.
- *
- * @param type the type of debugging session.
- * @param commandFactory the MI command factory
- * @param Process gdb Process.
- * @param pty Terminal to use for the inferior.
- * @param timeout time in milliseconds to wait for command response.
- * @deprecated
- */
- public MISession(MIProcess process, IMITTY tty, int type, CommandFactory commandFactory, int commandTimeout, int launchTimeout, IProgressMonitor monitor) throws MIException {
- gdbProcess = process;
- inChannel = process.getInputStream();
- outChannel = process.getOutputStream();
-
- factory = commandFactory;
- cmdTimeout = commandTimeout;
-
- sessionType = type;
-
- parser = new MIParser();
-
- inferior = new MIInferior(this, tty);
-
- txQueue = new CommandQueue();
- rxQueue = new CommandQueue();
- eventQueue = new Queue();
-
- txThread = new TxThread(this);
- rxThread = new RxThread(this);
- eventThread = new EventThread(this);
-
- // initialize/setup
- setup(launchTimeout, new NullProgressMonitor());
- }
-
- /**
- * Constructor for MISession. Creates MI wrapper for the given gdb process.
- *
- * @param type the type of debugging session: <code>PROGRAM</code>, <code>ATTACH</code> or <code>CORE</code>
- * @param commandFactory the set of gdb/mi commands supported by given gdb
- * @param Process a gdb process
- * @param pty terminal to use for the inferior.
- * @param timeout time in milliseconds to wait for command response.
- *
- * @since 3.1
- */
- public MISession(MIProcess process, IMITTY tty, int type, CommandFactory commandFactory, int commandTimeout) throws MIException {
- gdbProcess = process;
- inChannel = process.getInputStream();
- outChannel = process.getOutputStream();
-
- factory = commandFactory;
- cmdTimeout = commandTimeout;
-
- sessionType = type;
-
- parser = new MIParser();
-
- inferior = new MIInferior(this, tty);
-
- txQueue = new CommandQueue();
- rxQueue = new CommandQueue();
- eventQueue = new Queue();
-
- txThread = new TxThread(this);
- rxThread = new RxThread(this);
- eventThread = new EventThread(this);
-
- setup();
-
- txThread.start();
- rxThread.start();
- eventThread.start();
- }
-
- /**
- * No need to pass a progress monitor and a launch timeout.
- * @since 3.1
- */
- protected void setup() throws MIException {
- // The Process may have terminated earlier because
- // of bad arguments etc .. check this here and bail out.
- try {
- gdbProcess.exitValue();
- InputStream err = gdbProcess.getErrorStream();
- BufferedReader reader = new BufferedReader(new InputStreamReader(err));
- String line = null;
- try {
- line = reader.readLine();
- reader.close();
- } catch (Exception e) {
- // the reader may throw a NPE.
- }
- if (line == null) {
- line = MIPlugin.getResourceString("src.MISession.Process_Terminated"); //$NON-NLS-1$
- }
- throw new MIException(line);
- } catch (IllegalThreadStateException e) {
- // Ok, it means the process is alive.
- }
- }
-
- /**
- * Initializes the gdb session.
- * @since 3.1
- */
- public void start() throws MIException {
- try {
- initialize();
- } catch (MIException exc) {
- // Kill the Transmition thread.
- if (txThread.isAlive()) {
- txThread.interrupt();
- }
- // Kill the Receiving Thread.
- if (rxThread.isAlive()) {
- rxThread.interrupt();
- }
- // Kill the event Thread.
- if (eventThread.isAlive()) {
- eventThread.interrupt();
- }
- // rethrow up the exception.
- throw exc;
- }
- }
-
- /**
- * @deprecated use <code>setup()</code> without parameters
- */
- protected void setup(int launchTimeout, IProgressMonitor monitor) throws MIException {
- // The Process may have terminated earlier because
- // of bad arguments etc .. check this here and bail out.
- try {
- gdbProcess.exitValue();
- InputStream err = gdbProcess.getErrorStream();
- BufferedReader reader = new BufferedReader(new InputStreamReader(err));
- String line = null;
- try {
- line = reader.readLine();
- reader.close();
- } catch (Exception e) {
- // the reader may throw a NPE.
- }
- if (line == null) {
- line = MIPlugin.getResourceString("src.MISession.Process_Terminated"); //$NON-NLS-1$
- }
- throw new MIException(line);
- } catch (IllegalThreadStateException e) {
- // Ok, it means the process is alive.
- }
-
- if (monitor.isCanceled()) {
- throw new MIException(MIPlugin.getResourceString("src.MISession.Process_Terminated")); //$NON-NLS-1$
- }
-
- txThread.start();
- rxThread.start();
- eventThread.start();
-
- try {
- if (monitor.isCanceled()) {
- throw new MIException(MIPlugin.getResourceString("src.MISession.Process_Terminated")); //$NON-NLS-1$
- }
-
- initialize(launchTimeout, monitor);
- } catch (MIException exc) {
- // Kill the Transmition thread.
- if (txThread.isAlive()) {
- txThread.interrupt();
- }
- // Kill the Receiving Thread.
- if (rxThread.isAlive()) {
- rxThread.interrupt();
- }
- // Kill the event Thread.
- if (eventThread.isAlive()) {
- eventThread.interrupt();
- }
- // rethrow up the exception.
- throw exc;
- }
- }
-
- /**
- * Turns off the "confirm" option of gdb.
- * Sets witdth and height of gdb session to 0.
- * @since 3.1
- */
- protected void initialize() throws MIException {
- // Disable a certain number of irritations from gdb.
- // Like confirmation and screen size.
- MIGDBSet confirm = getCommandFactory().createMIGDBSet(new String[]{"confirm", "off"}); //$NON-NLS-1$ //$NON-NLS-2$
- postCommand(confirm);
- confirm.getMIInfo();
-
- MIGDBSet width = getCommandFactory().createMIGDBSet(new String[]{"width", "0"}); //$NON-NLS-1$ //$NON-NLS-2$
- postCommand(width);
- width.getMIInfo();
-
- MIGDBSet height = getCommandFactory().createMIGDBSet(new String[]{"height", "0"}); //$NON-NLS-1$ //$NON-NLS-2$
- postCommand(height);
- height.getMIInfo();
-
- useInterpreterExecConsole = canUseInterpreterExecConsole();
-
- String prompt = getCLIPrompt();
- if (prompt != null) {
- getMIParser().cliPrompt = prompt;
- }
- }
-
- /**
- * @deprecated use <code>initialize()</code> without parameters
- */
- protected void initialize(int launchTimeout, IProgressMonitor monitor) throws MIException {
- // Disable a certain number of irritations from gdb.
- // Like confirmation and screen size.
- MIGDBSet confirm = getCommandFactory().createMIGDBSet(new String[]{"confirm", "off"}); //$NON-NLS-1$ //$NON-NLS-2$
- postCommand(confirm, launchTimeout);
- confirm.getMIInfo();
- if (monitor.isCanceled()) {
- throw new MIException(MIPlugin.getResourceString("src.MISession.Process_Terminated")); //$NON-NLS-1$
- }
-
- MIGDBSet width = getCommandFactory().createMIGDBSet(new String[]{"width", "0"}); //$NON-NLS-1$ //$NON-NLS-2$
- postCommand(width, launchTimeout);
- width.getMIInfo();
- if (monitor.isCanceled()) {
- throw new MIException(MIPlugin.getResourceString("src.MISession.Process_Terminated")); //$NON-NLS-1$
- }
-
- MIGDBSet height = getCommandFactory().createMIGDBSet(new String[]{"height", "0"}); //$NON-NLS-1$ //$NON-NLS-2$
- postCommand(height, launchTimeout);
- height.getMIInfo();
- if (monitor.isCanceled()) {
- throw new MIException(MIPlugin.getResourceString("src.MISession.Process_Terminated")); //$NON-NLS-1$
- }
-
- useInterpreterExecConsole = canUseInterpreterExecConsole();
- if (monitor.isCanceled()) {
- throw new MIException(MIPlugin.getResourceString("src.MISession.Process_Terminated")); //$NON-NLS-1$
- }
-
- String prompt = getCLIPrompt();
- if (monitor.isCanceled()) {
- throw new MIException(MIPlugin.getResourceString("src.MISession.Process_Terminated")); //$NON-NLS-1$
- }
- if (prompt != null) {
- getMIParser().cliPrompt = prompt;
- }
- }
-
- protected boolean canUseInterpreterExecConsole() {
- // Try to discover if "-interpreter-exec" is supported.
- try {
- MIInterpreterExecConsole echo = getCommandFactory().createMIInterpreterExecConsole("echo"); //$NON-NLS-1$
- postCommand(echo);
- echo.getMIInfo();
- return true;
- } catch (MIException e) {
- //
- }
- return false;
- }
-
- protected String getCLIPrompt() throws MIException {
- // Get GDB's prompt
- MIGDBShowPrompt prompt = getCommandFactory().createMIGDBShowPrompt();
- postCommand(prompt);
- MIGDBShowInfo infoPrompt = prompt.getMIGDBShowInfo();
- String value = infoPrompt.getValue();
- if (value != null && value.length() > 0) {
- return value.trim();
- }
- return null;
- }
-
- /**
- * get MI Console Stream.
- * The parser will make available the MI console stream output.
- */
- public InputStream getMIConsoleStream() {
- if (miInConsolePipe == null) {
- try {
- miOutConsolePipe = new PipedOutputStream();
- miInConsolePipe = new PipedInputStream(miOutConsolePipe);
- } catch (IOException e) {
- }
- }
- return miInConsolePipe;
- }
-
- /**
- * get MI Console Stream.
- * The parser will make available the MI console stream output.
- */
- public InputStream getMILogStream() {
- if (miInLogPipe == null) {
- try {
- miOutLogPipe = new PipedOutputStream();
- miInLogPipe = new PipedInputStream(miOutLogPipe);
- } catch (IOException e) {
- }
- }
- return miInLogPipe;
- }
-
- /**
- * For example the CDI/MI bridge uses the command
- * factory to create MI commands this allow overloading.
- */
- public CommandFactory getCommandFactory() {
- return factory;
- }
-
- /**
- * Set a new factory to use for command.
- */
- public void setCommandFactory(CommandFactory f) {
- factory = f;
- }
-
- /**
- * Return the MI parser.
- */
- public MIParser getMIParser() {
- return parser;
- }
-
- /**
- * Reset the MI parser.
- */
- public void setMIParser(MIParser p) {
- parser = p;
- }
-
- /**
- * Set the type of session this is.
- * Certain action will base on that, for example
- * the inferior will not try to kill/destroy a
- * attach session disconnected.
- */
- public int getSessionType() {
- return sessionType;
- }
-
- public void setSessionType(int type) {
- sessionType = type;
- }
-
- public boolean useExecConsole() {
- return useInterpreterExecConsole;
- }
-
- public boolean inPrimaryPrompt() {
- return rxThread.inPrimaryPrompt();
- }
-
- public boolean inSecondaryPrompt() {
- return rxThread.inSecondaryPrompt();
- }
- /**
- * The debug session is a program being debug.
- */
- public boolean isProgramSession() {
- return sessionType == PROGRAM;
- }
-
- /**
- * The debug session is a program being attach to.
- */
- public boolean isAttachSession() {
- return sessionType == ATTACH;
- }
-
- /**
- * The debug session is a core being analysed.
- */
- public boolean isCoreSession() {
- return sessionType == CORE;
- }
-
- /**
- * Reset the default Command Timeout.
- */
- public void setCommandTimeout(long timeout) {
- cmdTimeout = timeout;
- }
-
- /**
- * Return the default Command Timeout, default 10 secs.
- */
- public long getCommandTimeout() {
- return cmdTimeout;
- }
-
- /**
- * equivalent to:
- * postCommand(cmd, cmdTimeout)
- */
- public void postCommand(Command cmd) throws MIException {
- postCommand(cmd, cmdTimeout);
- }
-
- /**
- * Sends a command to gdb, and wait(timeout) for a response.
- * if timeout < 0 the wait will be skipped.
- *
- */
- public void postCommand(Command cmd, long timeout) throws MIException {
-
- // Test if we are in a sane state.
- if (!txThread.isAlive() || !rxThread.isAlive()) {
- throw new MIException(MIPlugin.getResourceString("src.MISession.Thread_Terminated")); //$NON-NLS-1$
- }
-
- // Test if we are in the right state?
- if (inferior.isRunning()) {
- // REMINDER: if we support -exec-interrupt
- // Let it throught:
- if (!(cmd instanceof MIExecInterrupt)) {
- throw new MIException(MIPlugin.getResourceString("src.MISession.Target_not_suspended")); //$NON-NLS-1$
- }
- }
-
- if (inferior.isTerminated()) {
- // the only thing that can call postCommand when the inferior is in a TERMINATED
- // state is MIGDBShowExitCode, for when MIInferior is computing error code.
- if (!(cmd instanceof MIGDBShowExitCode)) {
- throw new MIException(MIPlugin.getResourceString("src.MISession.Inferior_Terminated")); //$NON-NLS-1$
- }
- }
-
- if (isTerminated()) {
- throw new MIException(MIPlugin.getResourceString("src.MISession.Session_terminated")); //$NON-NLS-1$
- }
- postCommand0(cmd, timeout);
- }
-
- /**
- * if timeout < 0 the operation will not try to way for
- * answer from gdb.
- *
- * @param cmd
- * @param timeout
- * @throws MIException
- */
- public synchronized void postCommand0(Command cmd, long timeout) throws MIException {
- // TRACING: print the command;
- if (MIPlugin.getDefault().isDebugging()) {
- MIPlugin.getDefault().debugLog(cmd.toString());
- }
-
- if (isVerboseModeEnabled())
- writeToConsole(cmd.toString());
-
- txQueue.addCommand(cmd);
-
- // do not wait around the answer.
- if (timeout < 0) {
- return;
- }
- // Wait for the response or timedout
- synchronized (cmd) {
- // RxThread will set the MIOutput on the cmd
- // when the response arrive.
- while (cmd.getMIOutput() == null) {
- try {
- cmd.wait(timeout);
- if (cmd.getMIOutput() == null) {
- throw new MIException(MIPlugin.getResourceString("src.MISession.Target_not_responding")); //$NON-NLS-1$
- }
- } catch (InterruptedException e) {
- }
- }
- }
- }
-
- /**
- * Return the inferior "Process".
- */
- public MIInferior getMIInferior() {
- return inferior;
- }
-
- /**
- * Set the inferior "Process".
- */
- public void setMIInferior(MIInferior inferior) {
- this.inferior = inferior;
- }
-
- /**
- * Return the "gdb" Process.
- */
- public MIProcess getGDBProcess() {
- return gdbProcess;
- }
-
- /**
- * Return a "fake" Process that will
- * encapsulate the call input/output of gdb.
- */
- public Process getSessionProcess() {
- if (sessionProcess == null) {
- sessionProcess = new SessionProcess(this);
- }
- return sessionProcess;
- }
-
- /**
- * Check if the gdb session is terminated.
- */
- public boolean isTerminated() {
- return terminated;
- }
-
- /**
- * Terminate the MISession.
- */
- public void terminate() {
-
- // Sanity check.
- if (isTerminated()) {
- return;
- }
-
- terminated = true;
-
- // Destroy any MI Inferior(Process) and streams.
- inferior.destroy();
-
- // {in,out}Channel is use as predicate/condition
- // in the {RX,TX,Event}Thread to detect termination
- // and bail out. So they are set to null.
- InputStream inGDB = inChannel;
- inChannel = null;
- OutputStream outGDB = outChannel;
- outChannel = null;
-
- // Although we will close the pipe(). It is cleaner
- // to give a chance to gdb to cleanup.
- // send the exit(-gdb-exit). But we only wait a maximum of 2 sec.
- MIGDBExit exit = getCommandFactory().createMIGDBExit();
- try {
- postCommand0(exit, 2000);
- } catch (MIException e) {
- //ignore any exception at this point.
- }
-
- // Make sure gdb is killed.
- // FIX: the destroy() must be call before closing gdb streams
- // on windows if the order is not follow the close() will hang.
- if (gdbProcess != null) {
- gdbProcess.destroy();
- }
-
- // Close the input GDB prompt
- try {
- if (inGDB != null)
- inGDB.close();
- } catch (IOException e) {
- }
-
- // Close the output GDB prompt
- try {
- if (outGDB != null)
- outGDB.close();
- } catch (IOException e) {
- }
-
- // Destroy the MI console stream.
- try {
- miInConsolePipe = null;
- if (miOutConsolePipe != null) {
- miOutConsolePipe.close();
- }
- } catch (IOException e) {
- }
-
- // Destroy the MI log stream.
- try {
- miInLogPipe = null;
- if (miOutLogPipe != null) {
- miOutLogPipe.close();
- }
- } catch (IOException e) {
- }
-
- // Kill the Transmition thread.
- try {
- if (txThread.isAlive()) {
- txThread.interrupt();
- txThread.join(cmdTimeout);
- }
- } catch (InterruptedException e) {
- }
-
- // Kill the Receiving Thread.
- try {
- if (rxThread.isAlive()) {
- rxThread.interrupt();
- rxThread.join(cmdTimeout);
- }
- } catch (InterruptedException e) {
- }
-
- // Kill the event Thread ... if it is not us.
- if (!eventThread.equals(Thread.currentThread())) {
- // Kill the event Thread.
- try {
- if (eventThread.isAlive()) {
- eventThread.interrupt();
- eventThread.join(cmdTimeout);
- }
- } catch (InterruptedException e) {
- }
- }
-
- // Tell the observers that the session is terminated
- notifyObservers(new MIGDBExitEvent(this, 0));
-
- // Should not be necessary but just to be safe.
- deleteObservers();
- }
-
- /**
- * Notify the observers of new MI OOB events.
- */
- public void notifyObservers(Object arg) {
- setChanged();
- super.notifyObservers(arg);
- }
-
- OutputStream getConsolePipe() {
- if (miOutConsolePipe == null) {
- getMIConsoleStream();
- }
- return miOutConsolePipe;
- }
-
- OutputStream getLogPipe() {
- if (miOutLogPipe == null) {
- getMILogStream();
- }
- return miOutLogPipe;
- }
-
- CommandQueue getTxQueue() {
- return txQueue;
- }
-
- CommandQueue getRxQueue() {
- return rxQueue;
- }
-
- Queue getEventQueue() {
- return eventQueue;
- }
-
- public RxThread getRxThread() {
- return rxThread;
- }
-
- InputStream getChannelInputStream() {
- return inChannel;
- }
-
- OutputStream getChannelOutputStream() {
- return outChannel;
- }
-
- MIOutput parse(String buffer) {
- return parser.parse(buffer);
- }
-
- public void fireEvents(MIEvent[] events) {
- if (events != null && events.length > 0) {
- for (int i = 0; i < events.length; i++) {
- fireEvent(events[i]);
- }
- }
- }
-
- public void fireEvent(MIEvent event) {
- if (event != null) {
- getEventQueue().addItem(event);
- }
- }
-
- protected void writeToConsole(String text) {
- OutputStream console = getConsolePipe();
- if (console != null) {
- try {
- console.write(text.getBytes());
- console.flush();
- }
- catch(IOException e) {
- }
- }
- }
-
- public void enableVerboseMode(boolean enabled) {
- verboseMode = enabled;
- }
-
- public boolean isVerboseModeEnabled() {
- return verboseMode;
- }
-}
diff --git a/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/Queue.java b/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/Queue.java
deleted file mode 100644
index 639d8b64842..00000000000
--- a/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/Queue.java
+++ /dev/null
@@ -1,82 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.mi.core;
-
-import java.util.Collections;
-import java.util.LinkedList;
-import java.util.List;
-
-/**
- * Simple thread-safe Queue implemetation.
- */
-public class Queue {
-
- protected List list;
-
- public Queue() {
- list = Collections.synchronizedList(new LinkedList());
- }
-
- public Object removeItem() throws InterruptedException {
- //print("in removeItem() - entering");
- synchronized (list) {
- while (list.isEmpty()) {
- //print("in removeItem() - about to wait()");
- list.wait();
- //print("in removeItem() - done with wait()");
- }
-
- // extract the new first cmd
- Object item = list.remove(0);
-
- //print("in removeItem() - leaving");
- return item;
- }
- }
-
- public void addItem(Object item) {
- //print("in addItem() - entering");
- synchronized (list) {
- // There will always be room to add to this List
- // because it expands as needed.
- list.add(item);
- //print("in addItem - just added: '" + cmd + "'");
-
- // After adding, notify any and all waiting
- // threads that the list has changed.
- list.notifyAll();
- //print("in addItem() - just notified");
- }
- //print("in addItem() - leaving");
- }
-
- public Object[] clearItems() {
- Object[] array;
- synchronized (list) {
- array = list.toArray();
- list.clear();
- }
- return array;
- }
-
- public boolean isEmpty() {
- boolean empty;
- synchronized (list) {
- empty = list.isEmpty();
- }
- return empty;
- }
-
-// private static void print(String msg) {
-// String name = Thread.currentThread().getName();
-// System.out.println(name + ": " + msg);
-// }
-}
diff --git a/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/RxThread.java b/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/RxThread.java
deleted file mode 100644
index 6b5cd7de273..00000000000
--- a/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/RxThread.java
+++ /dev/null
@@ -1,542 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- * Norbert Ploett, Siemens AG - fix for bug 119370
- * Hewlett-Packard Development Company - fix for bug 109733 (null check in setPrompt)
- *******************************************************************************/
-package org.eclipse.cdt.debug.mi.core;
-
-import java.io.BufferedReader;
-import java.io.IOException;
-import java.io.InputStreamReader;
-import java.io.OutputStream;
-import java.util.ArrayList;
-import java.util.List;
-
-import org.eclipse.cdt.debug.mi.core.command.CLICommand;
-import org.eclipse.cdt.debug.mi.core.command.Command;
-import org.eclipse.cdt.debug.mi.core.command.MIExecContinue;
-import org.eclipse.cdt.debug.mi.core.command.MIExecFinish;
-import org.eclipse.cdt.debug.mi.core.command.MIExecNext;
-import org.eclipse.cdt.debug.mi.core.command.MIExecNextInstruction;
-import org.eclipse.cdt.debug.mi.core.command.MIExecReturn;
-import org.eclipse.cdt.debug.mi.core.command.MIExecStep;
-import org.eclipse.cdt.debug.mi.core.command.MIExecStepInstruction;
-import org.eclipse.cdt.debug.mi.core.command.MIExecUntil;
-import org.eclipse.cdt.debug.mi.core.command.MIInterpreterExecConsole;
-import org.eclipse.cdt.debug.mi.core.event.MIBreakpointHitEvent;
-import org.eclipse.cdt.debug.mi.core.event.MIErrorEvent;
-import org.eclipse.cdt.debug.mi.core.event.MIEvent;
-import org.eclipse.cdt.debug.mi.core.event.MIFunctionFinishedEvent;
-import org.eclipse.cdt.debug.mi.core.event.MIInferiorExitEvent;
-import org.eclipse.cdt.debug.mi.core.event.MIInferiorSignalExitEvent;
-import org.eclipse.cdt.debug.mi.core.event.MILocationReachedEvent;
-import org.eclipse.cdt.debug.mi.core.event.MIRunningEvent;
-import org.eclipse.cdt.debug.mi.core.event.MISharedLibEvent;
-import org.eclipse.cdt.debug.mi.core.event.MISignalEvent;
-import org.eclipse.cdt.debug.mi.core.event.MISteppingRangeEvent;
-import org.eclipse.cdt.debug.mi.core.event.MIStoppedEvent;
-import org.eclipse.cdt.debug.mi.core.event.MIWatchpointScopeEvent;
-import org.eclipse.cdt.debug.mi.core.event.MIWatchpointTriggerEvent;
-import org.eclipse.cdt.debug.mi.core.output.MIAsyncRecord;
-import org.eclipse.cdt.debug.mi.core.output.MIConsoleStreamOutput;
-import org.eclipse.cdt.debug.mi.core.output.MIConst;
-import org.eclipse.cdt.debug.mi.core.output.MIExecAsyncOutput;
-import org.eclipse.cdt.debug.mi.core.output.MILogStreamOutput;
-import org.eclipse.cdt.debug.mi.core.output.MINotifyAsyncOutput;
-import org.eclipse.cdt.debug.mi.core.output.MIOOBRecord;
-import org.eclipse.cdt.debug.mi.core.output.MIOutput;
-import org.eclipse.cdt.debug.mi.core.output.MIParser;
-import org.eclipse.cdt.debug.mi.core.output.MIResult;
-import org.eclipse.cdt.debug.mi.core.output.MIResultRecord;
-import org.eclipse.cdt.debug.mi.core.output.MIStatusAsyncOutput;
-import org.eclipse.cdt.debug.mi.core.output.MIStreamRecord;
-import org.eclipse.cdt.debug.mi.core.output.MITargetStreamOutput;
-import org.eclipse.cdt.debug.mi.core.output.MIValue;
-
-/**
- * Receiving thread of gdb response output.
- */
-public class RxThread extends Thread {
-
- final MISession session;
- List oobList;
- CLIProcessor cli;
- int prompt = 1; // 1 --> Primary prompt "(gdb)"; 2 --> Secondary Prompt ">"
- boolean fEnableConsole = true;
-
- public RxThread(MISession s) {
- super("MI RX Thread"); //$NON-NLS-1$
- session = s;
- cli = new CLIProcessor(session);
- oobList = new ArrayList();
- }
-
- /*
- * Get the response, parse the output, dispatch for OOB
- * search for the corresponding token in rxQueue for the ResultRecord.
- */
- public void run() {
- BufferedReader reader = new BufferedReader(new InputStreamReader(session.getChannelInputStream()));
- try {
- String line;
- while ((line = reader.readLine()) != null) {
- // TRACING: print the output.
- if (MIPlugin.getDefault().isDebugging()) {
- MIPlugin.getDefault().debugLog(line);
- }
-
- if (session.isVerboseModeEnabled())
- session.writeToConsole(line + "\n"); //$NON-NLS-1$
-
- setPrompt(line);
- processMIOutput(line + "\n"); //$NON-NLS-1$
- }
- } catch (IOException e) {
- //e.printStackTrace();
- }
- // This code should be executed when gdb been abruptly
- // or unxepectedly killed. This is detected by checking
- // if the channelInputStream is not null. In normal case
- // session.terminate() will set the channelInputStream to null.
- if (session.getChannelInputStream() != null) {
- Runnable cleanup = new Runnable() {
- public void run() {
- // Change the state of the inferior.
- session.getMIInferior().setTerminated();
- session.terminate();
- }
- };
- Thread clean = new Thread(cleanup, "GDB Died"); //$NON-NLS-1$
- clean.setDaemon(true);
- clean.start();
- }
- // Clear the queue and notify any command waiting, we are going down.
- CommandQueue rxQueue = session.getRxQueue();
- if (rxQueue != null) {
- Command[] cmds = rxQueue.clearCommands();
- for (int i = 0; i < cmds.length; i++) {
- synchronized (cmds[i]) {
- cmds[i].notifyAll();
- }
- }
- }
- }
-
- void setPrompt(String line) {
- MIParser parser = session.getMIParser();
- prompt = 0;
- // See https://bugs.eclipse.org/bugs/show_bug.cgi?id=109733
- if (line == null || parser == null)
- return;
- line = line.trim();
- if (line.equals(parser.primaryPrompt)) {
- prompt = 1;
- } else if (line.equals(parser.secondaryPrompt)) {
- prompt = 2;
- }
- }
-
- public boolean inPrimaryPrompt() {
- return prompt == 1;
- }
-
- public boolean inSecondaryPrompt() {
- return prompt == 2;
- }
-
- public void setEnableConsole(boolean enable) {
- fEnableConsole = enable;
- }
-
- public boolean isEnableConsole() {
- return fEnableConsole;
- }
-
- /**
- * Search for the command in the RxQueue, set the MIOutput
- * and notify() the other end.
- * Any OOBs are consider like event and dipatch to the
- * listeners/observers in different thread.
- */
- void processMIOutput(String buffer) {
- MIOutput response = session.parse(buffer);
- if (response != null) {
- List list = new ArrayList();
- CommandQueue rxQueue = session.getRxQueue();
-
- MIResultRecord rr = response.getMIResultRecord();
- if (rr != null) {
- int id = rr.getToken();
- Command cmd = rxQueue.removeCommand(id);
-
- // Clear the accumulate oobList on each new Result Command
- // response.
- MIOOBRecord[] oobRecords = new MIOOBRecord[oobList.size()];
- oobList.toArray(oobRecords);
-
- // Check if the state changed.
- String state = rr.getResultClass();
- if ("running".equals(state)) { //$NON-NLS-1$
- int type = 0;
- // Check the type of command
- // if it was a step instruction set state stepping
- if (cmd instanceof MIExecNext) {
- type = MIRunningEvent.NEXT;
- } else if (cmd instanceof MIExecNextInstruction) {
- type = MIRunningEvent.NEXTI;
- } else if (cmd instanceof MIExecStep) {
- type = MIRunningEvent.STEP;
- } else if (cmd instanceof MIExecStepInstruction) {
- type = MIRunningEvent.STEPI;
- } else if (cmd instanceof MIExecUntil) {
- type = MIRunningEvent.UNTIL;
- } else if (cmd instanceof MIExecFinish) {
- type = MIRunningEvent.FINISH;
- } else if (cmd instanceof MIExecReturn) {
- type = MIRunningEvent.RETURN;
- } else if (cmd instanceof MIExecContinue) {
- type = MIRunningEvent.CONTINUE;
- } else {
- type = MIRunningEvent.CONTINUE;
- }
- session.getMIInferior().setRunning();
- MIEvent event = new MIRunningEvent(session, id, type);
- if (cmd != null && cmd.isQuiet())
- event.setPropagate(false);
- list.add(event);
- } else if ("exit".equals(state)) { //$NON-NLS-1$
- // No need to do anything, terminate() will.
- session.getMIInferior().setTerminated();
- } else if ("connected".equals(state)) { //$NON-NLS-1$
- session.getMIInferior().setConnected();
- } else if ("error".equals(state)) { //$NON-NLS-1$
- if (session.getMIInferior().isRunning()) {
- session.getMIInferior().setSuspended();
- MIEvent event = new MIErrorEvent(session, rr, oobRecords);
- list.add(event);
- }
- } else if ("done".equals(state) && cmd instanceof CLICommand) { //$NON-NLS-1$
- // "done" usually mean that gdb returns after some CLI command
- // The result record may contains informaton specific to oob.
- // This will happen when CLI-Command is use, for example
- // doing "run" will block and return a breakpointhit
- processMIOOBRecord(rr, list);
- }
-
- // Set the accumulate console Stream
- response.setMIOOBRecords(oobRecords);
-
- // Notify the waiting command.
- // Notify any command waiting for a ResultRecord.
- if (cmd != null) {
- // Process the Command line to recognise patterns we may need to fire event.
- if (cmd instanceof CLICommand) {
- cli.processSettingChanges((CLICommand)cmd);
- } else if (cmd instanceof MIInterpreterExecConsole) {
- cli.processSettingChanges((MIInterpreterExecConsole)cmd);
- }
-
- synchronized (cmd) {
- cmd.setMIOutput(response);
- cmd.notifyAll();
- }
- }
-
- // Clear the accumulate oobList on each new Result Command response.
- oobList.clear();
-
- } else {
-
- // Process OOBs
- MIOOBRecord[] oobs = response.getMIOOBRecords();
- for (int i = 0; i < oobs.length; i++) {
- processMIOOBRecord(oobs[i], list);
- }
- }
-
- MIEvent[] events = (MIEvent[]) list.toArray(new MIEvent[list.size()]);
- session.fireEvents(events);
- } // if response != null
- }
-
- /**
- * Dispatch a thread to deal with the listeners.
- */
- void processMIOOBRecord(MIOOBRecord oob, List list) {
- if (oob instanceof MIAsyncRecord) {
- processMIOOBRecord((MIAsyncRecord) oob, list);
- oobList.clear();
- } else if (oob instanceof MIStreamRecord) {
- processMIOOBRecord((MIStreamRecord) oob);
- }
- }
-
- void processMIOOBRecord(MIAsyncRecord async, List list) {
- if (async instanceof MIExecAsyncOutput) {
- MIExecAsyncOutput exec = (MIExecAsyncOutput) async;
- // Change of state.
- String state = exec.getAsyncClass();
- if ("stopped".equals(state)) { //$NON-NLS-1$
- MIResult[] results = exec.getMIResults();
- for (int i = 0; i < results.length; i++) {
- String var = results[i].getVariable();
- MIValue val = results[i].getMIValue();
- if (var.equals("reason")) { //$NON-NLS-1$
- if (val instanceof MIConst) {
- String reason = ((MIConst) val).getString();
- MIEvent e = createEvent(reason, exec);
- if (e != null) {
- list.add(e);
- }
- }
- }
- }
-
- // GDB does not have reason when stopping on shared, hopefully
- // this will be fix in newer version meanwhile, we will use a hack
- // to cope. On most platform we can detect by looking at the
- // console stream for phrase:
- // ~"Stopped due to shared library event\n"
- //
- // Althought it is a _real_ bad idea to do this, we do not have
- // any other alternatives.
- if (list.isEmpty()) {
- String[] logs = getStreamRecords();
- for (int i = 0; i < logs.length; i++) {
- if (logs[i].equalsIgnoreCase("Stopped due to shared library event")) { //$NON-NLS-1$
- session.getMIInferior().setSuspended();
- MIEvent e = new MISharedLibEvent(session, exec);
- list.add(e);
- }
- }
- }
-
- // We were stopped for some unknown reason, for example
- // GDB for temporary breakpoints will not send the
- // "reason" ??? still fire a stopped event.
- if (list.isEmpty()) {
- session.getMIInferior().setSuspended();
- MIEvent e = new MIStoppedEvent(session, exec);
- list.add(e);
- }
- }
- } else if (async instanceof MIStatusAsyncOutput) {
- // Nothing done .. but what about +download??
- } else if (async instanceof MINotifyAsyncOutput) {
- // Nothing
- }
- }
-
- void processMIOOBRecord(MIStreamRecord stream) {
- if (stream instanceof MIConsoleStreamOutput) {
- OutputStream console = session.getConsolePipe();
- if (console != null) {
- MIConsoleStreamOutput out = (MIConsoleStreamOutput) stream;
- String str = out.getString();
- // Process the console stream too.
- setPrompt(str);
- if (str != null && isEnableConsole()) {
- try {
- console.write(str.getBytes());
- console.flush();
- } catch (IOException e) {
- }
- }
- }
- // Accumulate the Console Stream Output response for parsing.
- // Some commands will put valuable info in the Console Stream.
- oobList.add(stream);
- } else if (stream instanceof MITargetStreamOutput) {
- OutputStream target = session.getMIInferior().getPipedOutputStream();
- if (target != null) {
- MITargetStreamOutput out = (MITargetStreamOutput) stream;
- String str = out.getString();
- if (str != null) {
- try {
- target.write(str.getBytes());
- target.flush();
- } catch (IOException e) {
- }
- }
- }
- // Accumulate the Target Stream Output response for parsing.
- // Some commands, e.g. 'monitor' will put valuable info in the Console Stream.
- // This fixes bug 119370.
- oobList.add(stream);
- } else if (stream instanceof MILogStreamOutput) {
- // This is meant for the gdb console.
- OutputStream log = session.getLogPipe();
- if (log != null) {
- MILogStreamOutput out = (MILogStreamOutput) stream;
- String str = out.getString();
- if (str != null && isEnableConsole()) {
- try {
- log.write(str.getBytes());
- log.flush();
- } catch (IOException e) {
- }
- }
- }
- // Accumulate the Log Stream Output response for parsing.
- // Some commands will put valuable info in the Log Stream.
- oobList.add(stream);
- }
- }
-
- /**
- * Check for any info that we can gather form the console.
- */
- void processMIOOBRecord(MIResultRecord rr, List list) {
- MIResult[] results = rr.getMIResults();
- for (int i = 0; i < results.length; i++) {
- String var = results[i].getVariable();
- if (var.equals("reason")) { //$NON-NLS-1$
- MIValue value = results[i].getMIValue();
- if (value instanceof MIConst) {
- String reason = ((MIConst) value).getString();
- MIEvent event = createEvent(reason, rr);
- if (event != null) {
- list.add(event);
- }
- }
- }
- }
- // GDB does not have reason when stopping on shared, hopefully
- // this will be fix in newer version meanwhile, we will use a hack
- // to cope. On most platform we can detect this state by looking at the
- // console stream for the phrase:
- // ~"Stopped due to shared library event\n"
- //
- // Althought it is a _real_ bad idea to do this, we do not have
- // any other alternatives.
- if (list.isEmpty()) {
- String[] logs = getStreamRecords();
- for (int i = 0; i < logs.length; i++) {
- if (logs[i].equalsIgnoreCase("Stopped due to shared library event")) { //$NON-NLS-1$
- session.getMIInferior().setSuspended();
- MIEvent e = new MISharedLibEvent(session, rr);
- list.add(e);
- }
- }
- }
- // We were stopped for some unknown reason, for example
- // GDB for temporary breakpoints will not send the
- // "reason" ??? still fire a stopped event.
- if (list.isEmpty()) {
- if (session.getMIInferior().isRunning()) {
- session.getMIInferior().setSuspended();
- MIEvent event = new MIStoppedEvent(session, rr);
- session.fireEvent(event);
- }
- }
- }
-
- MIEvent createEvent(String reason, MIExecAsyncOutput exec) {
- return createEvent(reason, null, exec);
- }
-
- MIEvent createEvent(String reason, MIResultRecord rr) {
- return createEvent(reason, rr, null);
- }
-
- MIEvent createEvent(String reason, MIResultRecord rr, MIExecAsyncOutput exec) {
- MIEvent event = null;
- if ("breakpoint-hit".equals(reason)) { //$NON-NLS-1$
- if (exec != null) {
- event = new MIBreakpointHitEvent(session, exec);
- } else if (rr != null) {
- event = new MIBreakpointHitEvent(session, rr);
- }
- session.getMIInferior().setSuspended();
- } else if (
- "watchpoint-trigger".equals(reason) //$NON-NLS-1$
- || "read-watchpoint-trigger".equals(reason) //$NON-NLS-1$
- || "access-watchpoint-trigger".equals(reason)) { //$NON-NLS-1$
- if (exec != null) {
- event = new MIWatchpointTriggerEvent(session, exec);
- } else if (rr != null) {
- event = new MIWatchpointTriggerEvent(session, rr);
- }
- session.getMIInferior().setSuspended();
- } else if ("watchpoint-scope".equals(reason)) { //$NON-NLS-1$
- if (exec != null) {
- event = new MIWatchpointScopeEvent(session, exec);
- } else if (rr != null) {
- event = new MIWatchpointScopeEvent(session, rr);
- }
- session.getMIInferior().setSuspended();
- } else if ("end-stepping-range".equals(reason)) { //$NON-NLS-1$
- if (exec != null) {
- event = new MISteppingRangeEvent(session, exec);
- } else if (rr != null) {
- event = new MISteppingRangeEvent(session, rr);
- }
- session.getMIInferior().setSuspended();
- } else if ("signal-received".equals(reason)) { //$NON-NLS-1$
- if (exec != null) {
- event = new MISignalEvent(session, exec);
- } else if (rr != null) {
- event = new MISignalEvent(session, rr);
- }
- session.getMIInferior().setSuspended();
- } else if ("location-reached".equals(reason)) { //$NON-NLS-1$
- if (exec != null) {
- event = new MILocationReachedEvent(session, exec);
- } else if (rr != null) {
- event = new MILocationReachedEvent(session, rr);
- }
- session.getMIInferior().setSuspended();
- } else if ("function-finished".equals(reason)) { //$NON-NLS-1$
- if (exec != null) {
- event = new MIFunctionFinishedEvent(session, exec);
- } else if (rr != null) {
- event = new MIFunctionFinishedEvent(session, rr);
- }
- session.getMIInferior().setSuspended();
- } else if ("exited-normally".equals(reason) || "exited".equals(reason)) { //$NON-NLS-1$ //$NON-NLS-2$
- if (exec != null) {
- event = new MIInferiorExitEvent(session, exec);
- } else if (rr != null) {
- event = new MIInferiorExitEvent(session, rr);
- }
- session.getMIInferior().setTerminated();
- } else if ("exited-signalled".equals(reason)) { //$NON-NLS-1$
- if (exec != null) {
- event = new MIInferiorSignalExitEvent(session, exec);
- } else if (rr != null) {
- event = new MIInferiorSignalExitEvent(session, rr);
- }
- session.getMIInferior().setTerminated();
- } else if ("shlib-event".equals(reason)) { //$NON-NLS-1$
- if (exec != null) {
- event = new MISharedLibEvent(session, exec);
- } else if (rr != null) {
- event = new MISharedLibEvent(session, rr);
- }
- session.getMIInferior().setSuspended();
- }
- return event;
- }
-
- String[] getStreamRecords() {
- List streamRecords = new ArrayList();
- MIOOBRecord[] oobRecords = (MIOOBRecord[]) oobList.toArray(new MIOOBRecord[0]);
- for (int i = 0; i < oobRecords.length; i++) {
- if (oobRecords[i] instanceof MIStreamRecord) {
- String s = ((MIStreamRecord) oobRecords[i]).getString().trim();
- if (s != null && s.length() > 0) {
- streamRecords.add(s);
- }
- }
- }
- return (String[]) streamRecords.toArray(new String[0]);
- }
-
-}
diff --git a/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/SessionProcess.java b/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/SessionProcess.java
deleted file mode 100644
index 31407dc5f98..00000000000
--- a/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/SessionProcess.java
+++ /dev/null
@@ -1,120 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.mi.core;
-
-import java.io.IOException;
-import java.io.InputStream;
-import java.io.OutputStream;
-
-import org.eclipse.cdt.debug.mi.core.command.CLICommand;
-import org.eclipse.cdt.debug.mi.core.command.Command;
-import org.eclipse.cdt.debug.mi.core.command.CommandFactory;
-import org.eclipse.cdt.debug.mi.core.command.RawCommand;
-
-/**
- */
-public class SessionProcess extends Process {
-
- MISession session;
- OutputStream out;
-
- public SessionProcess(MISession s) {
- session = s;
- }
-
- /**
- * @see java.lang.Process#destroy()
- */
- public void destroy() {
- session.terminate();
- }
-
- /**
- * @see java.lang.Process#exitValue()
- */
- public int exitValue() {
- return session.getGDBProcess().exitValue();
- }
-
- /**
- * @see java.lang.Process#getErrorStream()
- */
- public InputStream getErrorStream() {
- return session.getMILogStream();
- }
-
- /**
- * @see java.lang.Process#getInputStream()
- */
- public InputStream getInputStream() {
- return session.getMIConsoleStream();
- }
-
- /**
- * @see java.lang.Process#getOutputStream()
- */
- public OutputStream getOutputStream() {
- if (out == null) {
- out = new OutputStream() {
- StringBuffer buf = new StringBuffer();
- public void write(int b) throws IOException {
- buf.append((char)b);
- if (b == '\n') {
- post();
- }
- }
-
- // Encapsulate the string sent to gdb in a fake
- // command and post it to the TxThread.
- public void post() throws IOException {
- // Throw away the newline.
- String str = buf.toString().trim();
- buf.setLength(0);
- Command cmd = null;
- // 1-
- // if We have the secondary prompt it means
- // that GDB is waiting for more feedback, use a RawCommand
- // 2-
- // Do not use the interpreterexec for stepping operation
- // the UI will fall out of step.
- // 3-
- // Normal Command Line Interface.
- boolean secondary = session.inSecondaryPrompt();
- if (secondary) {
- cmd = new RawCommand(str);
- } else if (session.useExecConsole() && str.length() > 0
- && !CLIProcessor.isSteppingOperation(str)) {
- CommandFactory factory = session.getCommandFactory();
- cmd = factory.createMIInterpreterExecConsole(str);
- } else {
- cmd = new CLICommand(str);
- }
- try {
- // Do not wait around for the answer.
- session.postCommand(cmd, -1);
- } catch (MIException e) {
- //e.printStackTrace();
- throw new IOException(e.getMessage());
- }
- }
- };
- }
- return out;
- }
-
- /**
- * @see java.lang.Process#waitFor()
- */
- public int waitFor() throws InterruptedException {
- return session.getGDBProcess().waitFor();
- }
-
-}
diff --git a/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/TxThread.java b/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/TxThread.java
deleted file mode 100644
index 08e79ac1262..00000000000
--- a/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/TxThread.java
+++ /dev/null
@@ -1,104 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.cdt.debug.mi.core;
-
-import java.io.IOException;
-import java.io.OutputStream;
-
-import org.eclipse.cdt.debug.mi.core.command.CLICommand;
-import org.eclipse.cdt.debug.mi.core.command.Command;
-import org.eclipse.cdt.debug.mi.core.command.MIInterpreterExecConsole;
-import org.eclipse.cdt.debug.mi.core.command.RawCommand;
-
-/**
- * Transmission command thread blocks on the command Queue
- * and wake cmd are available and push them to gdb out channel.
- */
-public class TxThread extends Thread {
-
- MISession session;
- CLIProcessor cli;
-
- public TxThread(MISession s) {
- super("MI TX Thread"); //$NON-NLS-1$
- session = s;
- cli = new CLIProcessor(session);
- }
-
- public void run () {
- try {
-
- // signal by the session of time to die.
- OutputStream out;
- while ((out = session.getChannelOutputStream()) != null) {
- Command cmd = null;
- CommandQueue txQueue = session.getTxQueue();
- // removeCommand() will block until a command is available.
- try {
- cmd = txQueue.removeCommand();
- } catch (InterruptedException e) {
- //e.printStackTrace();
- }
-
- if (cmd != null) {
- String str = cmd.toString();
- // if string is empty consider as a noop
- if (str.length() > 0) {
- // Move to the RxQueue only if RxThread is alive.
- Thread rx = session.getRxThread();
- if (rx != null && rx.isAlive() && !(cmd instanceof RawCommand)) {
- CommandQueue rxQueue = session.getRxQueue();
- rxQueue.addCommand(cmd);
- } else {
- // The RxThread is not running
- synchronized (cmd) {
- cmd.notifyAll();
- }
- }
-
- // Process the Command line to recognise patterns we may need to fire event.
- if (cmd instanceof CLICommand) {
- cli.processStateChanges((CLICommand)cmd);
- } else if (cmd instanceof MIInterpreterExecConsole) {
- cli.processStateChanges((MIInterpreterExecConsole)cmd);
- }
-
- // shove in the pipe
- if (out != null) {
- out.write(str.getBytes());
- out.flush();
- }
- } else {
- // String is empty consider as a noop
- synchronized (cmd) {
- cmd.notifyAll();
- }
- }
- }
- }
- } catch (IOException e) {
- //e.printStackTrace();
- }
-
- // Clear the queue and notify any command waiting, we are going down.
- CommandQueue txQueue = session.getTxQueue();
- if (txQueue != null) {
- Command[] cmds = txQueue.clearCommands();
- for (int i = 0; i < cmds.length; i++) {
- synchronized (cmds[i]) {
- cmds[i].notifyAll();
- }
- }
- }
- }
-
-}
diff --git a/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/CLICommand.java b/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/CLICommand.java
deleted file mode 100644
index c893408b73d..00000000000
--- a/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/CLICommand.java
+++ /dev/null
@@ -1,47 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.cdt.debug.mi.core.command;
-
-
-
-/**
- * Represents a CLI command.
- */
-public class CLICommand extends Command
-{
-
- String operation = ""; //$NON-NLS-1$
-
- public CLICommand(String oper) {
- operation = oper;
- }
-
- public void setOperation(String op) {
- operation = op;
- }
-
- public String getOperation() {
- return operation;
- }
-
- /**
- * Returns the text representation of this command.
- *
- * @return the text representation of this command
- */
- public String toString(){
- String str = getToken() + " " + operation; //$NON-NLS-1$
- if (str.endsWith("\n")) //$NON-NLS-1$
- return str;
- return str + "\n"; //$NON-NLS-1$
- }
-}
diff --git a/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/CLIExecAbort.java b/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/CLIExecAbort.java
deleted file mode 100644
index e8f8ba38711..00000000000
--- a/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/CLIExecAbort.java
+++ /dev/null
@@ -1,28 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.cdt.debug.mi.core.command;
-
-/**
- *
- * -exec-finish
- *
- * Asynchronous command. Resumes the execution of the inferior program
- * until the current function is exited. Displays the results returned by
- * the function.
- *
- */
-public class CLIExecAbort extends CLICommand
-{
- public CLIExecAbort() {
- super("kill"); //$NON-NLS-1$
- }
-}
diff --git a/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/CLIHandle.java b/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/CLIHandle.java
deleted file mode 100644
index 77f4167ab6b..00000000000
--- a/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/CLIHandle.java
+++ /dev/null
@@ -1,27 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.cdt.debug.mi.core.command;
-
-
-
-/**
- *
- * handle SIGUSR1 nostop noignore
- *
- */
-public class CLIHandle extends CLICommand {
-
- public CLIHandle(String arg) {
- super("handle " + arg); //$NON-NLS-1$
- }
-
-}
diff --git a/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/CLIInfoProgram.java b/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/CLIInfoProgram.java
deleted file mode 100644
index f7daf62729b..00000000000
--- a/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/CLIInfoProgram.java
+++ /dev/null
@@ -1,45 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.cdt.debug.mi.core.command;
-
-import org.eclipse.cdt.debug.mi.core.MIException;
-import org.eclipse.cdt.debug.mi.core.output.MIInfo;
-import org.eclipse.cdt.debug.mi.core.output.CLIInfoProgramInfo;
-import org.eclipse.cdt.debug.mi.core.output.MIOutput;
-
-/**
- *
- * info threads
- *
- */
-public class CLIInfoProgram extends CLICommand
-{
- public CLIInfoProgram() {
- super("info program"); //$NON-NLS-1$
- }
-
- public CLIInfoProgramInfo getMIInfoProgramInfo() throws MIException {
- return (CLIInfoProgramInfo)getMIInfo();
- }
-
- public MIInfo getMIInfo() throws MIException {
- MIInfo info = null;
- MIOutput out = getMIOutput();
- if (out != null) {
- info = new CLIInfoProgramInfo(out);
- if (info.isError()) {
- throwMIException(info, out);
- }
- }
- return info;
- }
-}
diff --git a/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/CLIInfoSharedLibrary.java b/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/CLIInfoSharedLibrary.java
deleted file mode 100644
index 238299be835..00000000000
--- a/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/CLIInfoSharedLibrary.java
+++ /dev/null
@@ -1,45 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.cdt.debug.mi.core.command;
-
-import org.eclipse.cdt.debug.mi.core.MIException;
-import org.eclipse.cdt.debug.mi.core.output.MIInfo;
-import org.eclipse.cdt.debug.mi.core.output.CLIInfoSharedLibraryInfo;
-import org.eclipse.cdt.debug.mi.core.output.MIOutput;
-
-/**
- *
- * info sharedlibrary
- *
- */
-public class CLIInfoSharedLibrary extends CLICommand
-{
- public CLIInfoSharedLibrary() {
- super("info sharedlibrary"); //$NON-NLS-1$
- }
-
- public CLIInfoSharedLibraryInfo getMIInfoSharedLibraryInfo() throws MIException {
- return (CLIInfoSharedLibraryInfo)getMIInfo();
- }
-
- public MIInfo getMIInfo() throws MIException {
- MIInfo info = null;
- MIOutput out = getMIOutput();
- if (out != null) {
- info = new CLIInfoSharedLibraryInfo(out);
- if (info.isError()) {
- throwMIException(info, out);
- }
- }
- return info;
- }
-}
diff --git a/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/CLIInfoSignals.java b/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/CLIInfoSignals.java
deleted file mode 100644
index e0cf445bbf4..00000000000
--- a/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/CLIInfoSignals.java
+++ /dev/null
@@ -1,49 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.cdt.debug.mi.core.command;
-
-import org.eclipse.cdt.debug.mi.core.MIException;
-import org.eclipse.cdt.debug.mi.core.output.MIInfo;
-import org.eclipse.cdt.debug.mi.core.output.CLIInfoSignalsInfo;
-import org.eclipse.cdt.debug.mi.core.output.MIOutput;
-
-/**
- *
- * info threads
- *
- */
-public class CLIInfoSignals extends CLICommand
-{
- public CLIInfoSignals() {
- super("info signals"); //$NON-NLS-1$
- }
-
- public CLIInfoSignals(String name) {
- super("info signal " + name); //$NON-NLS-1$
- }
-
- public CLIInfoSignalsInfo getMIInfoSignalsInfo() throws MIException {
- return (CLIInfoSignalsInfo)getMIInfo();
- }
-
- public MIInfo getMIInfo() throws MIException {
- MIInfo info = null;
- MIOutput out = getMIOutput();
- if (out != null) {
- info = new CLIInfoSignalsInfo(out);
- if (info.isError()) {
- throwMIException(info, out);
- }
- }
- return info;
- }
-}
diff --git a/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/CLIInfoThreads.java b/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/CLIInfoThreads.java
deleted file mode 100644
index 97f54527b52..00000000000
--- a/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/CLIInfoThreads.java
+++ /dev/null
@@ -1,45 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.cdt.debug.mi.core.command;
-
-import org.eclipse.cdt.debug.mi.core.MIException;
-import org.eclipse.cdt.debug.mi.core.output.MIInfo;
-import org.eclipse.cdt.debug.mi.core.output.CLIInfoThreadsInfo;
-import org.eclipse.cdt.debug.mi.core.output.MIOutput;
-
-/**
- *
- * info threads
- *
- */
-public class CLIInfoThreads extends CLICommand
-{
- public CLIInfoThreads() {
- super("info threads"); //$NON-NLS-1$
- }
-
- public CLIInfoThreadsInfo getMIInfoThreadsInfo() throws MIException {
- return (CLIInfoThreadsInfo)getMIInfo();
- }
-
- public MIInfo getMIInfo() throws MIException {
- MIInfo info = null;
- MIOutput out = getMIOutput();
- if (out != null) {
- info = new CLIInfoThreadsInfo(out);
- if (info.isError()) {
- throwMIException(info, out);
- }
- }
- return info;
- }
-}
diff --git a/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/CLIJump.java b/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/CLIJump.java
deleted file mode 100644
index f86ff186145..00000000000
--- a/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/CLIJump.java
+++ /dev/null
@@ -1,48 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.cdt.debug.mi.core.command;
-
-import org.eclipse.cdt.debug.mi.core.output.MIOutput;
-import org.eclipse.cdt.debug.mi.core.output.MIResultRecord;
-
-
-/**
- *
- * jump LINESPEC
- *
- */
-public class CLIJump extends CLICommand {
-
- MIOutput out;
-
- public CLIJump(String loc) {
- super("jump " + loc); //$NON-NLS-1$
- }
-
- /**
- * This is a CLI command contraly to
- * the -exec-continue or -exec-run
- * it does not return so we have to fake
- * a return value. We return "^running"
- */
- public MIOutput getMIOutput() {
- if (out == null) {
- out = new MIOutput();
- MIResultRecord rr = new MIResultRecord();
- rr.setToken(getToken());
- rr.setResultClass(MIResultRecord.RUNNING);
- out.setMIResultRecord(rr);
- }
- return out;
- }
-
-}
diff --git a/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/CLIPType.java b/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/CLIPType.java
deleted file mode 100644
index 70aca7a1d77..00000000000
--- a/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/CLIPType.java
+++ /dev/null
@@ -1,45 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.cdt.debug.mi.core.command;
-
-import org.eclipse.cdt.debug.mi.core.MIException;
-import org.eclipse.cdt.debug.mi.core.output.MIInfo;
-import org.eclipse.cdt.debug.mi.core.output.MIOutput;
-import org.eclipse.cdt.debug.mi.core.output.CLIPTypeInfo;
-
-/**
- *
- * ptype type
- *
- */
-public class CLIPType extends CLICommand
-{
- public CLIPType(String var) {
- super("ptype " + var); //$NON-NLS-1$
- }
-
- public CLIPTypeInfo getMIPtypeInfo() throws MIException {
- return (CLIPTypeInfo)getMIInfo();
- }
-
- public MIInfo getMIInfo() throws MIException {
- MIInfo info = null;
- MIOutput out = getMIOutput();
- if (out != null) {
- info = new CLIPTypeInfo(out);
- if (info.isError()) {
- throwMIException(info, out);
- }
- }
- return info;
- }
-}
diff --git a/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/CLISharedLibrary.java b/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/CLISharedLibrary.java
deleted file mode 100644
index 0e0c769a6e3..00000000000
--- a/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/CLISharedLibrary.java
+++ /dev/null
@@ -1,30 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.cdt.debug.mi.core.command;
-
-
-
-/**
- *
- * sharedlibrary filename
- *
- */
-public class CLISharedLibrary extends CLICommand {
-
- public CLISharedLibrary() {
- super("sharedlibrary"); //$NON-NLS-1$
- }
-
- public CLISharedLibrary(String name) {
- super("sharedlibrary " + name); //$NON-NLS-1$
- }
-}
diff --git a/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/CLISignal.java b/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/CLISignal.java
deleted file mode 100644
index 516ff7558f8..00000000000
--- a/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/CLISignal.java
+++ /dev/null
@@ -1,49 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.cdt.debug.mi.core.command;
-
-import org.eclipse.cdt.debug.mi.core.output.MIOutput;
-import org.eclipse.cdt.debug.mi.core.output.MIResultRecord;
-
-
-
-/**
- *
- * signal SIGUSR1
- *
- */
-public class CLISignal extends CLICommand {
-
- MIOutput out;
-
- public CLISignal(String arg) {
- super("signal " + arg); //$NON-NLS-1$
- }
-
- /**
- * This is a CLI command contraly to
- * the -exec-continue or -exec-run
- * it does not return so we have to fake
- * a return value. We return "^running"
- */
- public MIOutput getMIOutput() {
- if (out == null) {
- out = new MIOutput();
- MIResultRecord rr = new MIResultRecord();
- rr.setToken(getToken());
- rr.setResultClass(MIResultRecord.RUNNING);
- out.setMIResultRecord(rr);
- }
- return out;
- }
-
-}
diff --git a/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/CLITargetAttach.java b/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/CLITargetAttach.java
deleted file mode 100644
index c49ac888d4f..00000000000
--- a/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/CLITargetAttach.java
+++ /dev/null
@@ -1,27 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.cdt.debug.mi.core.command;
-
-/**
- *
- *
- * -target-attach PID | FILE
- *
- * Attach to a process PID or a file FILE outside of GDB.
- *
- */
-public class CLITargetAttach extends CLICommand
-{
- public CLITargetAttach(int pid) {
- super("attach " + Integer.toString(pid)); //$NON-NLS-1$
- }
-}
diff --git a/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/CLIWhatis.java b/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/CLIWhatis.java
deleted file mode 100644
index 79aefcdfc21..00000000000
--- a/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/CLIWhatis.java
+++ /dev/null
@@ -1,45 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.cdt.debug.mi.core.command;
-
-import org.eclipse.cdt.debug.mi.core.MIException;
-import org.eclipse.cdt.debug.mi.core.output.MIInfo;
-import org.eclipse.cdt.debug.mi.core.output.MIOutput;
-import org.eclipse.cdt.debug.mi.core.output.CLIWhatisInfo;
-
-/**
- *
- * whatis type
- *
- */
-public class CLIWhatis extends CLICommand
-{
- public CLIWhatis(String var) {
- super("whatis " + var); //$NON-NLS-1$
- }
-
- public CLIWhatisInfo getMIWhatisInfo() throws MIException {
- return (CLIWhatisInfo)getMIInfo();
- }
-
- public MIInfo getMIInfo() throws MIException {
- MIInfo info = null;
- MIOutput out = getMIOutput();
- if (out != null) {
- info = new CLIWhatisInfo(out);
- if (info.isError()) {
- throwMIException(info, out);
- }
- }
- return info;
- }
-}
diff --git a/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/Command.java b/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/Command.java
deleted file mode 100644
index 57bbac729e1..00000000000
--- a/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/Command.java
+++ /dev/null
@@ -1,115 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.cdt.debug.mi.core.command;
-
-import org.eclipse.cdt.debug.mi.core.MIException;
-import org.eclipse.cdt.debug.mi.core.output.MIInfo;
-import org.eclipse.cdt.debug.mi.core.output.MILogStreamOutput;
-import org.eclipse.cdt.debug.mi.core.output.MIOOBRecord;
-import org.eclipse.cdt.debug.mi.core.output.MIOutput;
-import org.eclipse.cdt.debug.mi.core.output.MIStreamRecord;
-
-/**
- * A base class for all mi requests.
- */
-public abstract class Command
-{
- private static int globalCounter;
-
- int token = 0;
- MIOutput output;
- boolean quiet = false;
-
- /**
- * A global counter for all command, the token
- * will be use to identify uniquely a command.
- * Unless the value wraps around which is unlikely.
- */
- private static synchronized int getUniqToken() {
- int count = ++globalCounter;
- // If we ever wrap around.
- if (count <= 0) {
- count = globalCounter = 1;
- }
- return count;
- }
-
- /**
- * Returns the identifier of this request.
- *
- * @return the identifier of this request
- */
- public int getToken() {
- if (token == 0) {
- token = getUniqToken();
- }
- return token;
- }
-
-// public void setToken(int token) {
-// this.token = token;
-// }
-
- public MIOutput getMIOutput() {
- return output;
- }
-
- public void setMIOutput(MIOutput mi) {
- output = mi;
- }
-
- /**
- * Parse the MIOutput generate after posting the command.
- */
- public MIInfo getMIInfo () throws MIException {
- MIInfo info = null;
- MIOutput out = getMIOutput();
- if (out != null) {
- info = new MIInfo(out);
- if (info.isError()) {
- throwMIException(info, out);
- }
- }
- return info;
- }
-
- /**
- * throw an MIException.
- */
- protected void throwMIException (MIInfo info, MIOutput out) throws MIException {
- String mesg = info.getErrorMsg().trim();
- StringBuffer sb = new StringBuffer();
- MIOOBRecord[] oobs = out.getMIOOBRecords();
- for (int i = 0; i < oobs.length; i++) {
- if (oobs[i] instanceof MILogStreamOutput) {
- MIStreamRecord o = (MIStreamRecord) oobs[i];
- String s = o.getString();
- if (!s.trim().equalsIgnoreCase(mesg)) {
- sb.append(s);
- }
- }
- }
- String details = sb.toString();
- if (details.trim().length() == 0) {
- details = mesg;
- }
- throw new MIException(mesg, details);
- }
-
- public boolean isQuiet() {
- return this.quiet;
- }
-
- public void setQuiet( boolean quiet ) {
- this.quiet = quiet;
- }
-}
diff --git a/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/CommandFactory.java b/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/CommandFactory.java
deleted file mode 100644
index 7934b9a8e1f..00000000000
--- a/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/CommandFactory.java
+++ /dev/null
@@ -1,425 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.cdt.debug.mi.core.command;
-
-
-/**
- * Factory to create GDB commands.
- */
-public class CommandFactory {
-
- String fMIVersion;
-
- protected CommandFactory() {
- }
-
- public CommandFactory(String miVersion) {
- fMIVersion = miVersion;
- }
-
- public void setMIVersion(String miVersion) {
- fMIVersion = miVersion;
- }
-
- public String getMIVersion() {
- return fMIVersion;
- }
-
- public MIBreakAfter createMIBreakAfter(int brknum, int count) {
- return new MIBreakAfter(getMIVersion(), brknum, count);
- }
-
- public MIBreakCondition createMIBreakCondition (int brknum, String expr) {
- return new MIBreakCondition(getMIVersion(), brknum, expr);
- }
-
- public MIBreakDelete createMIBreakDelete (int[] brknum) {
- return new MIBreakDelete(getMIVersion(), brknum);
- }
-
- public MIBreakDisable createMIBreakDisable(int[] brknum) {
- return new MIBreakDisable(getMIVersion(), brknum);
- }
-
- public MIBreakEnable createMIBreakEnable(int[] brknum) {
- return new MIBreakEnable(getMIVersion(), brknum);
- }
-
- public MIBreakInsert createMIBreakInsert(boolean isTemporary, boolean isHardware,
- String condition, int ignoreCount, String line, int tid) {
- return new MIBreakInsert(getMIVersion(), isTemporary, isHardware, condition, ignoreCount, line, tid);
- }
-
- public MIBreakInsert createMIBreakInsert(String func) {
- return new MIBreakInsert(getMIVersion(), func);
- }
-
- public MIBreakList createMIBreakList() {
- return new MIBreakList(getMIVersion());
- }
-
- public MIBreakWatch createMIBreakWatch(boolean access, boolean read, String expression) {
- return new MIBreakWatch(getMIVersion(), access, read, expression);
- }
-
- public MIDataDisassemble createMIDataDisassemble(String start, String end, boolean mixed) {
- return new MIDataDisassemble(getMIVersion(), start, end, mixed);
- }
-
- public MIDataDisassemble createMIDataDisassemble(String file, int linenum, int lines, boolean mixed) {
- return new MIDataDisassemble(getMIVersion(), file, linenum, lines, mixed);
- }
-
- public MIDataEvaluateExpression createMIDataEvaluateExpression(String expression) {
- return new MIDataEvaluateExpression(getMIVersion(), expression);
- }
-
- public MIDataListChangedRegisters createMIDataListChangedRegisters() {
- return new MIDataListChangedRegisters(getMIVersion());
- }
-
- public MIDataListRegisterNames createMIDataListRegisterNames() {
- return new MIDataListRegisterNames(getMIVersion());
- }
-
- public MIDataListRegisterNames createMIDataListRegisterNames(int[] regnos) {
- return new MIDataListRegisterNames(getMIVersion(), regnos);
- }
-
- public MIDataListRegisterValues createMIDataListRegisterValues(int fmt, int[] regnos) {
- return new MIDataListRegisterValues(getMIVersion(), fmt, regnos);
- }
-
- public MIDataWriteRegisterValues createMIDataWriteRegisterValues(int fmt, int[] regnos, String[] values) {
- return new MIDataWriteRegisterValues(getMIVersion(), fmt, regnos, values);
- }
-
- public MIDataReadMemory createMIDataReadMemory(long offset, String address,
- int wordFormat, int wordSize,
- int rows, int cols, Character asChar) {
- return new MIDataReadMemory(getMIVersion(), offset, address, wordFormat, wordSize,
- rows, cols, asChar);
- }
-
- public MIDataWriteMemory createMIDataWriteMemory(long offset, String address,
- int wordFormat, int wordSize,
- String value) {
- return new MIDataWriteMemory(getMIVersion(), offset, address, wordFormat, wordSize, value);
- }
-
- public MIEnvironmentCD createMIEnvironmentCD(String pathdir) {
- return new MIEnvironmentCD(getMIVersion(), pathdir);
- }
-
- public MIEnvironmentDirectory createMIEnvironmentDirectory(boolean reset, String[] pathdirs) {
- return new MIEnvironmentDirectory(getMIVersion(), reset, pathdirs);
- }
-
- public MIEnvironmentPath createMIEnvironmentPath(String[] paths) {
- return new MIEnvironmentPath(getMIVersion(), paths);
- }
-
- public MIEnvironmentPWD createMIEnvironmentPWD() {
- return new MIEnvironmentPWD(getMIVersion());
- }
-
- /**
- * @param params
- * @return
- */
- public MIGDBSetEnvironment createMIGDBSetEnvironment(String[] params) {
- return new MIGDBSetEnvironment(getMIVersion(), params);
- }
-
- public CLIExecAbort createCLIExecAbort() {
- return new CLIExecAbort();
- }
-
- public MIExecArguments createMIExecArguments(String[] args) {
- return new MIExecArguments(getMIVersion(), args);
- }
-
- public MIExecContinue createMIExecContinue() {
- return new MIExecContinue(getMIVersion());
- }
-
- public MIExecFinish createMIExecFinish() {
- return new MIExecFinish(getMIVersion());
- }
-
- public MIExecInterrupt createMIExecInterrupt() {
- // return null here to signal that we do not support
- // -exec-interrupt and to use to drop a signal to gdb
- // instead via the MIProcess class
- return null;
- }
-
- public MIExecNext createMIExecNext(int count) {
- return new MIExecNext(getMIVersion(), count);
- }
-
- public MIExecNextInstruction createMIExecNextInstruction(int count) {
- return new MIExecNextInstruction(getMIVersion(), count);
- }
-
- public MIExecReturn createMIExecReturn() {
- return new MIExecReturn(getMIVersion());
- }
-
- public MIExecReturn createMIExecReturn(String arg) {
- return new MIExecReturn(getMIVersion(), arg);
- }
-
- public MIExecRun createMIExecRun(String[] args) {
- return new MIExecRun(getMIVersion(), args);
- }
-
- public MIExecStep createMIExecStep(int count) {
- return new MIExecStep(getMIVersion(), count);
- }
-
- public MIExecStepInstruction createMIExecStepInstruction(int count) {
- return new MIExecStepInstruction(getMIVersion(), count);
- }
-
- public MIExecUntil createMIExecUntil(String location) {
- return new MIExecUntil(getMIVersion(), location);
- }
-
- public CLIJump createCLIJump(String location) {
- return new CLIJump(location);
- }
-
- public MIFileExecFile createMIFileExecFile(String file) {
- return new MIFileExecFile(getMIVersion(), file);
- }
-
- public MIFileSymbolFile createMIFileSymbolFile(String file) {
- return new MIFileSymbolFile(getMIVersion(), file);
- }
-
- public MIGDBExit createMIGDBExit() {
- return new MIGDBExit(getMIVersion());
- }
-
- public MIGDBSet createMIGDBSet(String[] params) {
- return new MIGDBSet(getMIVersion(), params);
- }
-
- public MIGDBSetAutoSolib createMIGDBSetAutoSolib(boolean set) {
- return new MIGDBSetAutoSolib(getMIVersion(), set);
- }
-
- public MIGDBSetStopOnSolibEvents createMIGDBSetStopOnSolibEvents(boolean set) {
- return new MIGDBSetStopOnSolibEvents(getMIVersion(), set);
- }
-
- public MIGDBSetSolibSearchPath createMIGDBSetSolibSearchPath(String[] params) {
- return new MIGDBSetSolibSearchPath(getMIVersion(), params);
- }
-
- public MIGDBSetBreakpointPending createMIGDBSetBreakpointPending(boolean set) {
- return new MIGDBSetBreakpointPending(getMIVersion(), set);
- }
-
- public MIGDBShow createMIGDBShow(String[] params) {
- return new MIGDBShow(getMIVersion(), params);
- }
-
- public MIGDBShowPrompt createMIGDBShowPrompt() {
- return new MIGDBShowPrompt(getMIVersion());
- }
-
- public MIGDBShowExitCode createMIGDBShowExitCode() {
- return new MIGDBShowExitCode(getMIVersion());
- }
-
- public MIGDBShowDirectories createMIGDBShowDirectories() {
- return new MIGDBShowDirectories(getMIVersion());
- }
-
- public MIGDBShowSolibSearchPath createMIGDBShowSolibSearchPath() {
- return new MIGDBShowSolibSearchPath(getMIVersion());
- }
-
- public MIGDBShowAddressSize createMIGDBShowAddressSize() {
- return new MIGDBShowAddressSize(getMIVersion());
- }
-
- public MIGDBShowEndian createMIGDBShowEndian() {
- return new MIGDBShowEndian(getMIVersion());
- }
-
- public MIStackInfoDepth createMIStackInfoDepth() {
- return new MIStackInfoDepth(getMIVersion());
- }
-
- public MIStackInfoDepth createMIStackInfoDepth(int depth) {
- return new MIStackInfoDepth(getMIVersion(), depth);
- }
-
- public MIStackListArguments createMIStackListArguments(boolean showValue) {
- return new MIStackListArguments(getMIVersion(), showValue);
- }
-
- public MIStackListArguments createMIStackListArguments(boolean showValue, int lowFrame, int highFrame) {
- return new MIStackListArguments(getMIVersion(), showValue, lowFrame, highFrame);
- }
-
- public MIStackListFrames createMIStackListFrames() {
- return new MIStackListFrames(getMIVersion());
- }
-
- public MIStackListFrames createMIStackListFrames(int lowFrame, int highFrame) {
- return new MIStackListFrames(getMIVersion(), lowFrame, highFrame);
- }
-
- public MIStackListLocals createMIStackListLocals(boolean showValues) {
- return new MIStackListLocals(getMIVersion(), showValues);
- }
-
- public MIStackSelectFrame createMIStackSelectFrame(int frameNum) {
- return new MIStackSelectFrame(getMIVersion(), frameNum);
- }
-
- public CLITargetAttach createCLITargetAttach(int pid) {
- return new CLITargetAttach(pid);
- }
-
- public MITargetDetach createMITargetDetach() {
- return new MITargetDetach(getMIVersion());
- }
-
- public MITargetDownload createMITargetDownload(String file) {
- return new MITargetDownload(getMIVersion(), file);
- }
-
- public MITargetSelect createMITargetSelect(String[] params) {
- return new MITargetSelect(getMIVersion(), params);
- }
-
- public MIThreadListIds createMIThreadListIds() {
- return new MIThreadListIds(getMIVersion());
- }
-
- public CLIInfoThreads createCLIInfoThreads() {
- return new CLIInfoThreads();
- }
-
- public MIThreadSelect createMIThreadSelect(int threadNum) {
- return new MIThreadSelect(getMIVersion(), threadNum);
- }
-
- public CLIInfoSharedLibrary createCLIInfoSharedLibrary() {
- return new CLIInfoSharedLibrary();
- }
-
- public CLISharedLibrary createCLISharedLibrary() {
- return new CLISharedLibrary();
- }
-
- public CLISharedLibrary createCLISharedLibrary(String name) {
- return new CLISharedLibrary(name);
- }
-
- public CLIWhatis createCLIWhatis(String name) {
- return new CLIWhatis(name);
- }
-
- public CLIInfoSignals createCLIInfoSignals() {
- return new CLIInfoSignals();
- }
-
- public CLIInfoSignals createCLIInfoSignals(String name) {
- return new CLIInfoSignals(name);
- }
-
- public CLIHandle createCLIHandle(String arg) {
- return new CLIHandle(arg);
- }
-
- public CLISignal createCLISignal(String arg) {
- return new CLISignal(arg);
- }
-
- public CLIPType createCLIPType(String name) {
- return new CLIPType(name);
- }
-
- public CLIInfoProgram createCLIInfoProgram() {
- return new CLIInfoProgram();
- }
-
- public MIVarCreate createMIVarCreate(String expression) {
- return new MIVarCreate(getMIVersion(), expression);
- }
-
- public MIVarCreate createMIVarCreate(String name, String frameAddr, String expression) {
- return new MIVarCreate(getMIVersion(), name, frameAddr, expression);
- }
-
- public MIVarDelete createMIVarDelete(String name) {
- return new MIVarDelete(getMIVersion(), name);
- }
-
- public MIVarSetFormat createMIVarSetFormat(String name, int format) {
- return new MIVarSetFormat(getMIVersion(), name, format);
- }
-
- public MIVarShowFormat createMIVarShowFormat(String name) {
- return new MIVarShowFormat(getMIVersion(), name);
- }
-
- public MIVarInfoNumChildren createMIVarInfoNumChildren(String name) {
- return new MIVarInfoNumChildren(getMIVersion(), name);
- }
-
- public MIVarListChildren createMIVarListChildren(String name) {
- return new MIVarListChildren(getMIVersion(), name);
- }
-
- public MIVarInfoType createMIVarInfoType(String name) {
- return new MIVarInfoType(getMIVersion(), name);
- }
-
- public MIVarInfoExpression createMIVarInfoExpression(String name) {
- return new MIVarInfoExpression(getMIVersion(), name);
- }
-
- public MIVarShowAttributes createMIVarShowAttributes(String name) {
- return new MIVarShowAttributes(getMIVersion(), name);
- }
-
- public MIVarEvaluateExpression createMIVarEvaluateExpression(String name) {
- return new MIVarEvaluateExpression(getMIVersion(), name);
- }
-
- public MIVarAssign createMIVarAssign(String name, String expr) {
- return new MIVarAssign(getMIVersion(), name, expr);
- }
-
- public MIVarUpdate createMIVarUpdate() {
- return new MIVarUpdate(getMIVersion());
- }
-
- public MIVarUpdate createMIVarUpdate(String name) {
- return new MIVarUpdate(getMIVersion(), name);
- }
-
- public MIInterpreterExecConsole createMIInterpreterExecConsole(String cmd) {
- return new MIInterpreterExecConsole(getMIVersion(), cmd);
- }
-
- public MIGDBSetNewConsole createMIGDBSetNewConsole() {
- return new MIGDBSetNewConsole(getMIVersion());
- }
-}
diff --git a/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/MIBreakAfter.java b/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/MIBreakAfter.java
deleted file mode 100644
index 781dea80b15..00000000000
--- a/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/MIBreakAfter.java
+++ /dev/null
@@ -1,33 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.cdt.debug.mi.core.command;
-
-
-
-/**
- *
- * -break-after NUMBER COUNT
- * The breakpoint number NUMBER is not in effect until it has been hit
- * COUNT times.
- *
- * Result:
- * ^done
- *
- */
-public class MIBreakAfter extends MICommand
-{
- public MIBreakAfter(String miVersion, int brknum, int count) {
- super(miVersion, "-break-after",new String[]{Integer.toString(brknum), //$NON-NLS-1$
- Integer.toString(count)});
-
- }
-}
diff --git a/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/MIBreakCondition.java b/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/MIBreakCondition.java
deleted file mode 100644
index 898e681d19c..00000000000
--- a/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/MIBreakCondition.java
+++ /dev/null
@@ -1,41 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.cdt.debug.mi.core.command;
-
-/**
- *
- *
- * -break-condition NUMBER EXPR
- *
- * Breakpoint NUMBER will stop the program only if the condition in
- * EXPR is true. The condition becomes part of the `-break-list' output
- * Result:
- * ^done
- */
-public class MIBreakCondition extends MICommand {
- public MIBreakCondition(String miVersion, int brknum, String expr) {
- super(miVersion, "-break-condition", new String[] { Integer.toString(brknum), expr }); //$NON-NLS-1$
- }
-
- /**
- * Do not do any munging on the string i.e. quoting spaces
- * etc .. doing this will break the command -break-condition.
- */
- protected String parametersToString() {
- String[] parameters = getParameters();
- StringBuffer buffer = new StringBuffer();
- for (int i = 0; i < parameters.length; i++) {
- buffer.append(' ').append(parameters[i]);
- }
- return buffer.toString().trim();
- }
-}
diff --git a/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/MIBreakDelete.java b/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/MIBreakDelete.java
deleted file mode 100644
index 1df2f8608b2..00000000000
--- a/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/MIBreakDelete.java
+++ /dev/null
@@ -1,37 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.cdt.debug.mi.core.command;
-
-/**
- *
- * -break-delete ( BREAKPOINT )+
- *
- * Delete the breakpoint(s) whose number(s) are specified in the
- * argument list. This is obviously reflected in the breakpoint list.
- *
- * Result:
- * ^done
- *
- */
-public class MIBreakDelete extends MICommand
-{
- public MIBreakDelete (String miVersion, int[] array) {
- super(miVersion, "-break-delete"); //$NON-NLS-1$
- if (array != null && array.length > 0) {
- String[] brkids = new String[array.length];
- for (int i = 0; i < array.length; i++) {
- brkids[i] = Integer.toString(array[i]);
- }
- setParameters(brkids);
- }
- }
-}
diff --git a/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/MIBreakDisable.java b/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/MIBreakDisable.java
deleted file mode 100644
index 7962b3f9620..00000000000
--- a/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/MIBreakDisable.java
+++ /dev/null
@@ -1,36 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.cdt.debug.mi.core.command;
-
-/**
- *
- * -break-disable ( BREAKPOINT )+
- *
- * Disable the named BREAKPOINT(s). The field `enabled' in the break
- * list is now set to `n' for the named BREAKPOINT(s).
- *
- * Result:
- * ^done
- */
-public class MIBreakDisable extends MICommand
-{
- public MIBreakDisable (String miVersion, int[] array) {
- super(miVersion, "-break-disable"); //$NON-NLS-1$
- if (array != null && array.length > 0) {
- String[] brkids = new String[array.length];
- for (int i = 0; i < array.length; i++) {
- brkids[i] = Integer.toString(array[i]);
- }
- setParameters(brkids);
- }
- }
-}
diff --git a/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/MIBreakEnable.java b/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/MIBreakEnable.java
deleted file mode 100644
index 8ddc4c2e291..00000000000
--- a/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/MIBreakEnable.java
+++ /dev/null
@@ -1,35 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.cdt.debug.mi.core.command;
-
-/**
- *
- * -break-enable ( BREAKPOINT )+
- *
- * Enable (previously disabled) BREAKPOINT(s).
- *
- * Result:
- * ^done
- */
-public class MIBreakEnable extends MICommand
-{
- public MIBreakEnable (String miVersion, int[] array) {
- super(miVersion, "-break-enable"); //$NON-NLS-1$
- if (array != null && array.length > 0) {
- String[] brkids = new String[array.length];
- for (int i = 0; i < array.length; i++) {
- brkids[i] = Integer.toString(array[i]);
- }
- setParameters(brkids);
- }
- }
-}
diff --git a/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/MIBreakInsert.java b/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/MIBreakInsert.java
deleted file mode 100644
index c337fc791ef..00000000000
--- a/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/MIBreakInsert.java
+++ /dev/null
@@ -1,137 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.cdt.debug.mi.core.command;
-
-import org.eclipse.cdt.debug.mi.core.MIException;
-import org.eclipse.cdt.debug.mi.core.output.MIBreakInsertInfo;
-import org.eclipse.cdt.debug.mi.core.output.MIInfo;
-import org.eclipse.cdt.debug.mi.core.output.MIOutput;
-
-/**
- *
- * -break-insert [ -t ] [ -h ] [ -r ]
- * [ -c CONDITION ] [ -i IGNORE-COUNT ]
- * [ -p THREAD ] [ LINE | ADDR ]
- *
- * If specified, LINE, can be one of:
- *
- * * function
- *
- * * filename:linenum
- *
- * * filename:function
- *
- * * *address
- *
- * The possible optional parameters of this command are:
- *
- * `-t'
- * Insert a tempoary breakpoint.
- *
- * `-h'
- * Insert a hardware breakpoint.
- *
- * `-c CONDITION'
- * Make the breakpoint conditional on CONDITION.
- *
- * `-i IGNORE-COUNT'
- * Initialize the IGNORE-COUNT.
- *
- * `-r'
- *
- * Insert a regular breakpoint in all the functions whose names match
- * the given regular expression. Other flags are not applicable to
- * regular expresson.
- *
- * The result is in the form:
- *
- * ^done,bkptno="NUMBER",func="FUNCNAME",
- * file="FILENAME",line="LINENO"
- *
- */
-public class MIBreakInsert extends MICommand
-{
- public MIBreakInsert(String miVersion, String func) {
- this(miVersion, false, false, null, 0, func, 0);
- }
-
- public MIBreakInsert(String miVersion, boolean isTemporary, boolean isHardware,
- String condition, int ignoreCount, String line, int tid) {
- super(miVersion, "-break-insert"); //$NON-NLS-1$
-
- int i = 0;
- if (isTemporary) {
- i++;
- }
- if (isHardware) {
- i++;
- }
- if (condition != null && condition.length() > 0) {
- i += 2;
- }
- if (ignoreCount > 0) {
- i += 2;
- }
- if (tid > 0) {
- i += 2;
- }
- String[] opts = new String[i];
-
- i = 0;
- if (isTemporary) {
- opts[i] = "-t"; //$NON-NLS-1$
- i++;
- }
- if (isHardware) {
- opts[i] = "-h"; //$NON-NLS-1$
- i++;
- }
- if (condition != null && condition.length() > 0) {
- opts[i] = "-c"; //$NON-NLS-1$
- i++;
- opts[i] = condition;
- i++;
- }
- if (ignoreCount > 0) {
- opts[i] = "-i"; //$NON-NLS-1$
- i++;
- opts[i] = Integer.toString(ignoreCount);
- i++;
- }
- if (tid > 0) {
- opts[i] = "-p"; //$NON-NLS-1$
- i++;
- opts[i] = Integer.toString(tid);
- }
-
- if (opts.length > 0) {
- setOptions(opts);
- }
- setParameters(new String[]{line});
- }
-
- public MIBreakInsertInfo getMIBreakInsertInfo() throws MIException {
- return (MIBreakInsertInfo)getMIInfo();
- }
-
- public MIInfo getMIInfo() throws MIException {
- MIInfo info = null;
- MIOutput out = getMIOutput();
- if (out != null) {
- info = new MIBreakInsertInfo(out);
- if (info.isError()) {
- throwMIException(info, out);
- }
- }
- return info;
- }
-}
diff --git a/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/MIBreakList.java b/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/MIBreakList.java
deleted file mode 100644
index 54aa279b5e6..00000000000
--- a/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/MIBreakList.java
+++ /dev/null
@@ -1,73 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.cdt.debug.mi.core.command;
-
-import org.eclipse.cdt.debug.mi.core.MIException;
-import org.eclipse.cdt.debug.mi.core.output.MIBreakListInfo;
-import org.eclipse.cdt.debug.mi.core.output.MIInfo;
-import org.eclipse.cdt.debug.mi.core.output.MIOutput;
-
-/**
- *
- * -break-list
- *
- * Displays the list of inserted breakpoints, showing the following
- * fields:
- *
- * `Number'
- * number of the breakpoint
- *
- * `Type'
- * type of the breakpoint: `breakpoint' or `watchpoint'
- *
- * `Disposition'
- * should the breakpoint be deleted or disabled when it is hit: `keep'
- * or `nokeep'
- *
- * `Enabled'
- * is the breakpoint enabled or no: `y' or `n'
- *
- * `Address'
- * memory location at which the breakpoint is set
- *
- * `What'
- * logical location of the breakpoint, expressed by function name,
- *
- * `Times'
- * number of times the breakpoint has been hit
- *
- * If there are no breakpoints or watchpoints, the `BreakpointTable'
- * `body' field is an empty list.
- *
- */
-public class MIBreakList extends MICommand
-{
- public MIBreakList (String miVersion) {
- super(miVersion, "-break-list"); //$NON-NLS-1$
- }
-
- public MIBreakListInfo getMIBreakListInfo() throws MIException {
- return (MIBreakListInfo)getMIInfo();
- }
-
- public MIInfo getMIInfo() throws MIException {
- MIInfo info = null;
- MIOutput out = getMIOutput();
- if (out != null) {
- info = new MIBreakListInfo(out);
- if (info.isError()) {
- throwMIException(info, out);
- }
- }
- return info;
- }
-}
diff --git a/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/MIBreakWatch.java b/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/MIBreakWatch.java
deleted file mode 100644
index b35de309305..00000000000
--- a/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/MIBreakWatch.java
+++ /dev/null
@@ -1,63 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.cdt.debug.mi.core.command;
-
-import org.eclipse.cdt.debug.mi.core.MIException;
-import org.eclipse.cdt.debug.mi.core.output.MIBreakWatchInfo;
-import org.eclipse.cdt.debug.mi.core.output.MIInfo;
-import org.eclipse.cdt.debug.mi.core.output.MIOutput;
-
-/**
- *
- * -break-watch [ -a | -r ]
- *
- * Create a watchpoint. With the `-a' option it will create an
- * "access" watchpoint, i.e. a watchpoint that triggers either on a read
- * from or on a write to the memory location. With the `-r' option, the
- * watchpoint created is a "read" watchpoint, i.e. it will trigger only
- * when the memory location is accessed for reading. Without either of
- * the options, the watchpoint created is a regular watchpoint, i.e. it
- * will trigger when the memory location is accessed for writing.
- *
- */
-public class MIBreakWatch extends MICommand
-{
- public MIBreakWatch (String miVersion, boolean access, boolean read, String expr) {
- super(miVersion, "-break-watch");//$NON-NLS-1$
- String[] opts = null;
- if (access) {
- opts = new String[] {"-a"}; //$NON-NLS-1$
- } else if (read) {
- opts = new String[] {"-r"}; //$NON-NLS-1$
- }
- if (opts != null) {
- setOptions(opts);
- }
- setParameters(new String[]{expr});
- }
-
- public MIBreakWatchInfo getMIBreakWatchInfo() throws MIException {
- return (MIBreakWatchInfo)getMIInfo();
- }
-
- public MIInfo getMIInfo() throws MIException {
- MIInfo info = null;
- MIOutput out = getMIOutput();
- if (out != null) {
- info = new MIBreakWatchInfo(out);
- if (info.isError()) {
- throwMIException(info, out);
- }
- }
- return info;
- }
-}
diff --git a/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/MICommand.java b/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/MICommand.java
deleted file mode 100644
index 395090c49af..00000000000
--- a/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/MICommand.java
+++ /dev/null
@@ -1,207 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.cdt.debug.mi.core.command;
-
-/**
- *
- * Represents a MI command.
- */
-public class MICommand extends Command {
- final static String[] empty = new String[0];
- String[] fOptions = empty;
- String[] fParameters = empty;
- String fOperation = new String();
- String fMIVersion;
-
- public MICommand(String miVersion, String oper) {
- this(miVersion, oper, empty);
- }
-
- public MICommand(String miVersion, String oper, String[] params) {
- this(miVersion, oper, empty, params);
- }
-
- public MICommand(String miVersion, String oper, String[] opt, String[] params) {
- fMIVersion = miVersion;
- fOperation = oper;
- fOptions = opt;
- fParameters = params;
- }
-
- /**
- * Return the MI version for this command
- * @return
- */
- public String getMIVersion() {
- return fMIVersion;
- }
-
- /**
- * Set the MI version for this command
- * @param miVersion
- */
- public void setMIVersion(String miVersion) {
- fMIVersion = miVersion;
- }
-
- /**
- * whether the MI version is "mi1"
- * @return
- */
- public boolean isMI1() {
- return MIVersion.MI1.equalsIgnoreCase(fMIVersion);
- }
-
- /**
- * whether the MI version is "mi2"
- * @return
- */
- public boolean isMI2() {
- return MIVersion.MI2.equalsIgnoreCase(fMIVersion);
- }
-
- /**
- * Returns the operation of this command.
- *
- * @return the operation of this command
- */
- public String getOperation() {
- return fOperation;
- }
-
- protected void setOperation(String op) {
- fOperation = op;
- }
-
- /**
- * Returns an array of command's options. An empty collection is
- * returned if there are no options.
- *
- * @return an array of command's options
- */
- public String[] getOptions() {
- return fOptions;
- }
-
- public void setOptions(String[] opt) {
- fOptions = opt;
- }
-
- /**
- * Returns an array of command's parameters. An empty collection is
- * returned if there are no parameters.
- *
- * @return an array of command's parameters
- */
- public String[] getParameters() {
- return fParameters;
- }
-
- public void setParameters(String[] p) {
- fParameters = p;
- }
-
- protected String optionsToString() {
- String[] options = getOptions();
- StringBuffer sb = new StringBuffer();
- if (options != null && options.length > 0) {
- for (int i = 0; i < options.length; i++) {
- String option = options[i];
- // If the option argument contains " or \ it must be escaped
- if (option.indexOf('"') != -1 || option.indexOf('\\') != -1) {
- StringBuffer buf = new StringBuffer();
- for (int j = 0; j < option.length(); j++) {
- char c = option.charAt(j);
- if (c == '"' || c == '\\') {
- buf.append('\\');
- }
- buf.append(c);
- }
- option = buf.toString();
- }
-
- // If the option contains a space according to
- // GDB/MI spec we must surround it with double quotes.
- if (option.indexOf('\t') != -1 || option.indexOf(' ') != -1) {
- sb.append(' ').append('"').append(option).append('"');
- } else {
- sb.append(' ').append(option);
- }
- }
- }
- return sb.toString().trim();
- }
-
- protected String parametersToString() {
- String[] parameters = getParameters();
- String[] options = getOptions();
- StringBuffer buffer = new StringBuffer();
- if (parameters != null && parameters.length > 0) {
- // According to GDB/MI spec
- // Add a "--" separator if any parameters start with "-"
- if (options != null && options.length > 0) {
- for (int i = 0; i < parameters.length; i++) {
- if (parameters[i].startsWith("-")) { //$NON-NLS-1$
- buffer.append('-').append('-');
- break;
- }
- }
- }
-
- StringBuffer sb = new StringBuffer();
- for (int i = 0; i < parameters.length; i++) {
- // We need to escape the double quotes and the backslash.
- sb.setLength(0);
- String param = parameters[i];
- for (int j = 0; j < param.length(); j++) {
- char c = param.charAt(j);
- if (c == '"' || c == '\\') {
- sb.append('\\');
- }
- sb.append(c);
- }
-
- // If the string contains spaces instead of escaping
- // surround the parameter with double quotes.
- if (containsWhitespace(param)) {
- sb.insert(0, '"');
- sb.append('"');
- }
- buffer.append(' ').append(sb);
- }
- }
- return buffer.toString().trim();
- }
-
- public String toString() {
- StringBuffer command = new StringBuffer(getToken() + getOperation());
- String opt = optionsToString();
- if (opt.length() > 0) {
- command.append(' ').append(opt);
- }
- String p = parametersToString();
- if (p.length() > 0) {
- command.append(' ').append(p);
- }
- command.append('\n');
- return command.toString();
- }
-
- protected boolean containsWhitespace(String s) {
- for (int i = 0; i < s.length(); i++) {
- if (Character.isWhitespace(s.charAt(i))) {
- return true;
- }
- }
- return false;
- }
-}
diff --git a/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/MIDataDisassemble.java b/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/MIDataDisassemble.java
deleted file mode 100644
index e112576e753..00000000000
--- a/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/MIDataDisassemble.java
+++ /dev/null
@@ -1,123 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.cdt.debug.mi.core.command;
-
-import org.eclipse.cdt.debug.mi.core.MIException;
-import org.eclipse.cdt.debug.mi.core.output.MIDataDisassembleInfo;
-import org.eclipse.cdt.debug.mi.core.output.MIInfo;
-import org.eclipse.cdt.debug.mi.core.output.MIOutput;
-
-/**
- *
- * -data-disassemble
- * [ -s START-ADDR -e END-ADDR ]
- * | [ -f FILENAME -l LINENUM [ -n LINES ] ]
- * -- MODE
- *
- *Where:
- *
- *`START-ADDR'
- * is the beginning address (or `$pc')
- *
- *`END-ADDR'
- * is the end address
- *
- *`FILENAME'
- * is the name of the file to disassemble
- *
- *`LINENUM'
- * is the line number to disassemble around
- *
- *`LINES'
- * is the the number of disassembly lines to be produced. If it is
- * -1, the whole function will be disassembled, in case no END-ADDR is
- * specified. If END-ADDR is specified as a non-zero value, and
- * LINES is lower than the number of disassembly lines between
- * START-ADDR and END-ADDR, only LINES lines are displayed; if LINES
- * is higher than the number of lines between START-ADDR and
- * END-ADDR, only the lines up to END-ADDR are displayed.
- *
- *`MODE'
- * is either 0 (meaning only disassembly) or 1 (meaning mixed source
- * and disassembly).
- *
- *Result
- *......
- *
- * The output for each instruction is composed of four fields:
- *
- * * Address
- *
- * * Func-name
- *
- * * Offset
- *
- * * Instruction
- *
- * Note that whatever included in the instruction field, is not
- *manipulated directely by GDB/MI, i.e. it is not possible to adjust its
- *format.
- *
- *
- */
-public class MIDataDisassemble extends MICommand
-{
- public MIDataDisassemble(String miVersion, String start, String end, boolean mode) {
- super(miVersion, "-data-disassemble"); //$NON-NLS-1$
- setOptions(new String[]{"-s", start, "-e", end}); //$NON-NLS-1$ //$NON-NLS-2$
- String mixed = "0"; //$NON-NLS-1$
- if (mode) {
- mixed = "1"; //$NON-NLS-1$
- }
- setParameters(new String[]{mixed});
- }
-
- public MIDataDisassemble(String miVersion, String file, int linenum, int lines, boolean mode) {
- super(miVersion, "-data-disassemble"); //$NON-NLS-1$
- setOptions(new String[]{"-f", file, "-l", //$NON-NLS-1$ //$NON-NLS-2$
- Integer.toString(linenum), "-n", Integer.toString(lines)}); //$NON-NLS-1$
- String mixed = "0"; //$NON-NLS-1$
- if (mode) {
- mixed = "1"; //$NON-NLS-1$
- }
- setParameters(new String[]{mixed});
- }
-
- public MIDataDisassembleInfo getMIDataDisassembleInfo() throws MIException {
- return (MIDataDisassembleInfo)getMIInfo();
- }
-
- public MIInfo getMIInfo() throws MIException {
- MIInfo info = null;
- MIOutput out = getMIOutput();
- if (out != null) {
- info = new MIDataDisassembleInfo(out);
- if (info.isError()) {
- throwMIException(info, out);
- }
- }
- return info;
- }
-
- /*
- * GDB the -data-disassemble uses "--" as a separator wit only the MODE
- * So override the MICommand
- */
- protected String parametersToString() {
- String[] parameters = getParameters();
- if (parameters != null && parameters.length > 0) {
- return "-- " + parameters[0]; //$NON-NLS-1$
- }
- return new String();
- }
-
-}
diff --git a/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/MIDataEvaluateExpression.java b/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/MIDataEvaluateExpression.java
deleted file mode 100644
index 69a58b38e30..00000000000
--- a/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/MIDataEvaluateExpression.java
+++ /dev/null
@@ -1,49 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.cdt.debug.mi.core.command;
-
-import org.eclipse.cdt.debug.mi.core.MIException;
-import org.eclipse.cdt.debug.mi.core.output.MIDataEvaluateExpressionInfo;
-import org.eclipse.cdt.debug.mi.core.output.MIInfo;
-import org.eclipse.cdt.debug.mi.core.output.MIOutput;
-
-/**
- *
- * -data-evaluate-expression EXPR
- *
- * Evaluate EXPR as an expression. The expression could contain an
- *inferior function call. The function call will execute synchronously.
- *If the expression contains spaces, it must be enclosed in double quotes.
- *
- */
-public class MIDataEvaluateExpression extends MICommand
-{
- public MIDataEvaluateExpression(String miVersion, String expr) {
- super(miVersion, "-data-evaluate-expression", new String[]{expr}); //$NON-NLS-1$
- }
-
- public MIDataEvaluateExpressionInfo getMIDataEvaluateExpressionInfo() throws MIException {
- return (MIDataEvaluateExpressionInfo)getMIInfo();
- }
-
- public MIInfo getMIInfo() throws MIException {
- MIInfo info = null;
- MIOutput out = getMIOutput();
- if (out != null) {
- info = new MIDataEvaluateExpressionInfo(out);
- if (info.isError()) {
- throwMIException(info, out);
- }
- }
- return info;
- }
-}
diff --git a/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/MIDataListChangedRegisters.java b/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/MIDataListChangedRegisters.java
deleted file mode 100644
index 08408f43ba2..00000000000
--- a/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/MIDataListChangedRegisters.java
+++ /dev/null
@@ -1,47 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.cdt.debug.mi.core.command;
-
-import org.eclipse.cdt.debug.mi.core.MIException;
-import org.eclipse.cdt.debug.mi.core.output.MIDataListChangedRegistersInfo;
-import org.eclipse.cdt.debug.mi.core.output.MIInfo;
-import org.eclipse.cdt.debug.mi.core.output.MIOutput;
-
-/**
- *
- * -data-list-changed-registers
- *
- * Display a list of the registers that have changed.
- *
- */
-public class MIDataListChangedRegisters extends MICommand
-{
- public MIDataListChangedRegisters(String miVersion) {
- super(miVersion, "-data-list-changed-registers" ); //$NON-NLS-1$
- }
-
- public MIDataListChangedRegistersInfo getMIDataListChangedRegistersInfo() throws MIException {
- return (MIDataListChangedRegistersInfo)getMIInfo();
- }
-
- public MIInfo getMIInfo() throws MIException {
- MIInfo info = null;
- MIOutput out = getMIOutput();
- if (out != null) {
- info = new MIDataListChangedRegistersInfo(out);
- if (info.isError()) {
- throwMIException(info, out);
- }
- }
- return info;
- }
-}
diff --git a/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/MIDataListRegisterNames.java b/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/MIDataListRegisterNames.java
deleted file mode 100644
index 44c9d53afe0..00000000000
--- a/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/MIDataListRegisterNames.java
+++ /dev/null
@@ -1,63 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.cdt.debug.mi.core.command;
-
-import org.eclipse.cdt.debug.mi.core.MIException;
-import org.eclipse.cdt.debug.mi.core.output.MIDataListRegisterNamesInfo;
-import org.eclipse.cdt.debug.mi.core.output.MIInfo;
-import org.eclipse.cdt.debug.mi.core.output.MIOutput;
-
-/**
- *
- * -data-list-register-names [ ( REGNO )+ ]
- *
- * Show a list of register names for the current target. If no
- * arguments are given, it shows a list of the names of all the registers.
- * If integer numbers are given as arguments, it will print a list of the
- * names of the registers corresponding to the arguments. To ensure
- * consistency between a register name and its number, the output list may
- * include empty register names.
- *
- */
-public class MIDataListRegisterNames extends MICommand
-{
- public MIDataListRegisterNames(String miVersion) {
- super(miVersion, "-data-list-register-names"); //$NON-NLS-1$
- }
-
- public MIDataListRegisterNames(String miVersion, int [] regnos) {
- this(miVersion);
- if (regnos != null && regnos.length > 0) {
- String[] array = new String[regnos.length];
- for (int i = 0; i < regnos.length; i++) {
- array[i] = Integer.toString(regnos[i]);
- }
- setParameters(array);
- }
- }
-
- public MIDataListRegisterNamesInfo getMIDataListRegisterNamesInfo() throws MIException {
- return (MIDataListRegisterNamesInfo)getMIInfo();
- }
-
- public MIInfo getMIInfo() throws MIException {
- MIInfo info = null;
- MIOutput out = getMIOutput();
- if (out != null) {
- info = new MIDataListRegisterNamesInfo(out);
- if (info.isError()) {
- throwMIException(info, out);
- }
- }
- return info;
- }
-}
diff --git a/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/MIDataListRegisterValues.java b/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/MIDataListRegisterValues.java
deleted file mode 100644
index 2a255572c69..00000000000
--- a/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/MIDataListRegisterValues.java
+++ /dev/null
@@ -1,94 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.cdt.debug.mi.core.command;
-
-import org.eclipse.cdt.debug.mi.core.MIException;
-import org.eclipse.cdt.debug.mi.core.MIFormat;
-import org.eclipse.cdt.debug.mi.core.output.MIDataListRegisterValuesInfo;
-import org.eclipse.cdt.debug.mi.core.output.MIInfo;
-import org.eclipse.cdt.debug.mi.core.output.MIOutput;
-
-/**
- *
- * -data-list-register-values FMT [ ( REGNO )*]
- *
- * Display the registers' contents. FMT is the format according to
- * which the registers' contents are to be returned, followed by an
- * optional list of numbers specifying the registers to display. A
- * missing list of numbers indicates that the contents of all the
- * registers must be returned.
- *
- */
-public class MIDataListRegisterValues extends MICommand
-{
- public MIDataListRegisterValues(String miVersion, int fmt) {
- this(miVersion, fmt, null);
- }
-
- public MIDataListRegisterValues(String miVersion, int fmt, int [] regnos) {
- super(miVersion, "-data-list-register-values"); //$NON-NLS-1$
-
- String format = "x"; //$NON-NLS-1$
- switch (fmt) {
- case MIFormat.NATURAL:
- format = "N"; //$NON-NLS-1$
- break;
-
- case MIFormat.RAW:
- format = "r"; //$NON-NLS-1$
- break;
-
- case MIFormat.DECIMAL:
- format = "d"; //$NON-NLS-1$
- break;
-
- case MIFormat.BINARY:
- format = "t"; //$NON-NLS-1$
- break;
-
- case MIFormat.OCTAL:
- format = "o"; //$NON-NLS-1$
- break;
-
- case MIFormat.HEXADECIMAL:
- default:
- format = "x"; //$NON-NLS-1$
- break;
- }
-
- setOptions(new String[]{format});
-
- if (regnos != null && regnos.length > 0) {
- String[] array = new String[regnos.length];
- for (int i = 0; i < regnos.length; i++) {
- array[i] = Integer.toString(regnos[i]);
- }
- setParameters(array);
- }
- }
-
- public MIDataListRegisterValuesInfo getMIDataListRegisterValuesInfo() throws MIException {
- return (MIDataListRegisterValuesInfo)getMIInfo();
- }
-
- public MIInfo getMIInfo() throws MIException {
- MIInfo info = null;
- MIOutput out = getMIOutput();
- if (out != null) {
- info = new MIDataListRegisterValuesInfo(out);
- if (info.isError()) {
- throwMIException(info, out);
- }
- }
- return info;
- }
-}
diff --git a/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/MIDataReadMemory.java b/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/MIDataReadMemory.java
deleted file mode 100644
index 26edb1590ec..00000000000
--- a/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/MIDataReadMemory.java
+++ /dev/null
@@ -1,153 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.cdt.debug.mi.core.command;
-
-import org.eclipse.cdt.debug.mi.core.MIException;
-import org.eclipse.cdt.debug.mi.core.MIFormat;
-import org.eclipse.cdt.debug.mi.core.output.MIDataReadMemoryInfo;
-import org.eclipse.cdt.debug.mi.core.output.MIInfo;
-import org.eclipse.cdt.debug.mi.core.output.MIOutput;
-
-/**
- *
- * -data-read-memory [ -o BYTE-OFFSET ]
- * ADDRESS WORD-FORMAT WORD-SIZE
- * NR-ROWS NR-COLS [ ASCHAR ]
- *
- * where:
- *
- * `ADDRESS'
- * An expression specifying the address of the first memory word to be
- * read. Complex expressions containing embedded white space should
- * be quoted using the C convention.
- *
- * `WORD-FORMAT'
- * The format to be used to print the memory words. The notation is
- * the same as for GDB's `print' command (*note Output formats:
- * Output Formats.).
- *
- * `WORD-SIZE'
- * The size of each memory word in bytes.
- *
- * `NR-ROWS'
- * The number of rows in the output table.
- *
- * `NR-COLS'
- * The number of columns in the output table.
- *
- * `ASCHAR'
- * If present, indicates that each row should include an ASCII dump.
- * The value of ASCHAR is used as a padding character when a byte is
- * not a member of the printable ASCII character set (printable ASCII
- * characters are those whose code is between 32 and 126,
- * inclusively).
- *
- * `BYTE-OFFSET'
- *
- *
- */
-public class MIDataReadMemory extends MICommand {
-
- public MIDataReadMemory(
- String miVersion,
- long offset,
- String address,
- int wordFormat,
- int wordSize,
- int rows,
- int cols,
- Character asChar) {
- super(miVersion, "-data-read-memory"); //$NON-NLS-1$
- if (offset != 0) {
- setOptions(new String[] { "-o", Long.toString(offset)}); //$NON-NLS-1$
- }
-
- String format = "x"; //$NON-NLS-1$
- switch (wordFormat) {
- case MIFormat.UNSIGNED :
- format = "u"; //$NON-NLS-1$
- break;
-
- case MIFormat.FLOAT :
- format = "f"; //$NON-NLS-1$
- break;
-
- case MIFormat.ADDRESS :
- format = "a"; //$NON-NLS-1$
- break;
-
- case MIFormat.INSTRUCTION :
- format = "i"; //$NON-NLS-1$
- break;
-
- case MIFormat.CHAR :
- format = "c"; //$NON-NLS-1$
- break;
-
- case MIFormat.STRING :
- format = "s"; //$NON-NLS-1$
- break;
-
- case MIFormat.DECIMAL :
- format = "d"; //$NON-NLS-1$
- break;
-
- case MIFormat.BINARY :
- format = "t"; //$NON-NLS-1$
- break;
-
- case MIFormat.OCTAL :
- format = "o"; //$NON-NLS-1$
- break;
-
- case MIFormat.HEXADECIMAL :
- default :
- format = "x"; //$NON-NLS-1$
- break;
- }
-
- if (asChar == null) {
- setParameters(
- new String[] {
- address,
- format,
- Integer.toString(wordSize),
- Integer.toString(rows),
- Integer.toString(cols)});
- } else {
- setParameters(
- new String[] {
- address,
- format,
- Integer.toString(wordSize),
- Integer.toString(rows),
- Integer.toString(cols),
- asChar.toString()});
- }
- }
-
- public MIDataReadMemoryInfo getMIDataReadMemoryInfo() throws MIException {
- return (MIDataReadMemoryInfo)getMIInfo();
- }
-
- public MIInfo getMIInfo() throws MIException {
- MIInfo info = null;
- MIOutput out = getMIOutput();
- if (out != null) {
- info = new MIDataReadMemoryInfo(out);
- if (info.isError()) {
- throwMIException(info, out);
- }
- }
- return info;
- }
-}
diff --git a/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/MIDataWriteMemory.java b/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/MIDataWriteMemory.java
deleted file mode 100644
index cbb75c377a6..00000000000
--- a/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/MIDataWriteMemory.java
+++ /dev/null
@@ -1,98 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.cdt.debug.mi.core.command;
-
-import org.eclipse.cdt.debug.mi.core.MIFormat;
-
-/**
- *
- * -data-write-memory [-o COLUMN_OFFSET] ADDR FORMAT WORD-SIZE VALUE.");
- *
- * where:
- *
- * DATA-MEMORY-WRITE:
- *
- * COLUMN_OFFSET: optional argument. Must be preceeded by '-o'. The
- * offset from the beginning of the memory grid row where the cell to
- * be written is.
- * ADDR: start address of the row in the memory grid where the memory
- * cell is, if OFFSET_COLUMN is specified. Otherwise, the address of
- * the location to write to.
- * FORMAT: a char indicating format for the ``word''. See
- * the ``x'' command.
- * WORD_SIZE: size of each ``word''; 1,2,4, or 8 bytes
- * VALUE: value to be written into the memory address.
- *
- * Writes VALUE into ADDR + (COLUMN_OFFSET * WORD_SIZE).
- *
- * Prints nothing.
- *
- */
-public class MIDataWriteMemory extends MICommand {
-
- public MIDataWriteMemory(String miVersion, long offset, String address, int wordFormat, int wordSize,
- String value) {
-
- super (miVersion, "-data-write-memory"); //$NON-NLS-1$
-
- if (offset != 0) {
- setOptions(new String[] { "-o", Long.toString(offset)}); //$NON-NLS-1$
- }
-
- String format = "x"; //$NON-NLS-1$
- switch (wordFormat) {
- case MIFormat.UNSIGNED :
- format = "u"; //$NON-NLS-1$
- break;
-
- case MIFormat.FLOAT :
- format = "f"; //$NON-NLS-1$
- break;
-
- case MIFormat.ADDRESS :
- format = "a"; //$NON-NLS-1$
- break;
-
- case MIFormat.INSTRUCTION :
- format = "i"; //$NON-NLS-1$
- break;
-
- case MIFormat.CHAR :
- format = "c"; //$NON-NLS-1$
- break;
-
- case MIFormat.STRING :
- format = "s"; //$NON-NLS-1$
- break;
-
- case MIFormat.DECIMAL :
- format = "d"; //$NON-NLS-1$
- break;
-
- case MIFormat.BINARY :
- format = "t"; //$NON-NLS-1$
- break;
-
- case MIFormat.OCTAL :
- format = "o"; //$NON-NLS-1$
- break;
-
- case MIFormat.HEXADECIMAL :
- default :
- format = "x"; //$NON-NLS-1$
- break;
- }
-
- setParameters(new String[] {address, format, Integer.toString(wordSize), value});
- }
-
-}
diff --git a/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/MIDataWriteRegisterValues.java b/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/MIDataWriteRegisterValues.java
deleted file mode 100644
index f9c9a813f52..00000000000
--- a/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/MIDataWriteRegisterValues.java
+++ /dev/null
@@ -1,72 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.cdt.debug.mi.core.command;
-
-import java.util.ArrayList;
-import java.util.List;
-
-import org.eclipse.cdt.debug.mi.core.MIFormat;
-
-/**
- *
- * Write given values into registers. The registers and values are
- * given as pairs. The corresponding MI command is
- * -data-write-register-values <format> [<regnum1> <value1>...<regnumN> <valueN>]
- *
- */
-public class MIDataWriteRegisterValues extends MICommand {
-
- public MIDataWriteRegisterValues(String miVersion, int fmt, int[] regnos, String[] values) {
- super(miVersion, "-data-write-register-values"); //$NON-NLS-1$
-
- String format = "x"; //$NON-NLS-1$
- switch (fmt) {
- case MIFormat.NATURAL:
- format = "N"; //$NON-NLS-1$
- break;
-
- case MIFormat.RAW:
- format = "r"; //$NON-NLS-1$
- break;
-
- case MIFormat.DECIMAL:
- format = "d"; //$NON-NLS-1$
- break;
-
- case MIFormat.BINARY:
- format = "t"; //$NON-NLS-1$
- break;
-
- case MIFormat.OCTAL:
- format = "o"; //$NON-NLS-1$
- break;
-
- case MIFormat.HEXADECIMAL:
- default:
- format = "x"; //$NON-NLS-1$
- break;
- }
-
- setOptions(new String[]{format});
-
- if (regnos != null && values != null) {
- List aList = new ArrayList(regnos.length);
- for (int i = 0; i < regnos.length && i < values.length; i++) {
- aList.add(Integer.toString(regnos[i]));
- aList.add(values[i]);
- }
- String[] array = (String[])aList.toArray(new String[0]);
- setParameters(array);
- }
- }
-
-}
diff --git a/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/MIEnvironmentCD.java b/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/MIEnvironmentCD.java
deleted file mode 100644
index 878eda88b63..00000000000
--- a/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/MIEnvironmentCD.java
+++ /dev/null
@@ -1,42 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.cdt.debug.mi.core.command;
-
-/**
- *
- *
- * -environment-cd PATHDIR
- *
- * Set GDB's working directory.
- *
- *
- */
-public class MIEnvironmentCD extends MICommand
-{
- public MIEnvironmentCD(String miVersion, String path) {
- super(miVersion, "-environment-cd", new String[]{path}); //$NON-NLS-1$
- }
-
- /**
- * !@*^%^$( sigh ... gdb for this command does not make any interpretation
- * So we must past the command verbatim without any changes.
- * (non-Javadoc)
- * @see org.eclipse.cdt.debug.mi.core.command.MICommand#parametersToString()
- */
- protected String parametersToString() {
- String[] parameters = getParameters();
- if (parameters != null && parameters.length == 1) {
- return parameters[0];
- }
- return super.parametersToString();
- }
-}
diff --git a/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/MIEnvironmentDirectory.java b/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/MIEnvironmentDirectory.java
deleted file mode 100644
index f91b751412f..00000000000
--- a/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/MIEnvironmentDirectory.java
+++ /dev/null
@@ -1,33 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2005 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.cdt.debug.mi.core.command;
-
-/**
- *
- * -environment-directory PATHDIR
- *
- * Add directory PATHDIR to beginning of search path for source files.
- *
- */
-public class MIEnvironmentDirectory extends MICommand
-{
- public MIEnvironmentDirectory(String miVersion, boolean reset, String[] paths) {
- super(miVersion, "-environment-directory", paths); //$NON-NLS-1$
- if (isMI2()) {
- // earlier version do no accept the "-r" option.
- if (reset) {
- setOptions(new String[] {"-r"}); //$NON-NLS-1$
- }
- }
- }
-
-}
diff --git a/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/MIEnvironmentPWD.java b/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/MIEnvironmentPWD.java
deleted file mode 100644
index 2d18cf1a721..00000000000
--- a/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/MIEnvironmentPWD.java
+++ /dev/null
@@ -1,44 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.cdt.debug.mi.core.command;
-
-import org.eclipse.cdt.debug.mi.core.MIException;
-import org.eclipse.cdt.debug.mi.core.output.MIEnvironmentPWDInfo;
-import org.eclipse.cdt.debug.mi.core.output.MIInfo;
-import org.eclipse.cdt.debug.mi.core.output.MIOutput;
-
-/**
- *
- * -environment-pwd
- *
- * Show the current working directory.
- *
- */
-public class MIEnvironmentPWD extends MICommand
-{
- public MIEnvironmentPWD(String miVersion) {
- super(miVersion, "-environment-pwd"); //$NON-NLS-1$
- }
-
- public MIInfo getMIInfo() throws MIException {
- MIInfo info = null;
- MIOutput out = getMIOutput();
- if (out != null) {
- info = new MIEnvironmentPWDInfo(out);
- if (info.isError()) {
- throwMIException(info, out);
- }
- }
- return info;
- }
-
-}
diff --git a/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/MIEnvironmentPath.java b/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/MIEnvironmentPath.java
deleted file mode 100644
index 6417c2299cb..00000000000
--- a/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/MIEnvironmentPath.java
+++ /dev/null
@@ -1,26 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.cdt.debug.mi.core.command;
-
-/**
- *
- * -environment-path ( PATHDIR )+
- *
- * Add directories PATHDIR to beginning of search path for object files.
- *
- */
-public class MIEnvironmentPath extends MICommand
-{
- public MIEnvironmentPath(String miVersion, String[] paths) {
- super(miVersion, "-environment-path", paths); //$NON-NLS-1$
- }
-}
diff --git a/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/MIExecArguments.java b/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/MIExecArguments.java
deleted file mode 100644
index b92ac6141dd..00000000000
--- a/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/MIExecArguments.java
+++ /dev/null
@@ -1,27 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.cdt.debug.mi.core.command;
-
-/**
- *
- * -exec-arguments ARGS
- *
- * Set the inferior program arguments, to be used in the next
- * `-exec-run'.
- *
- */
-public class MIExecArguments extends MICommand
-{
- public MIExecArguments(String miVersion, String[] args) {
- super(miVersion, "-exec-arguments", args); //$NON-NLS-1$
- }
-}
diff --git a/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/MIExecContinue.java b/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/MIExecContinue.java
deleted file mode 100644
index 083b20f132d..00000000000
--- a/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/MIExecContinue.java
+++ /dev/null
@@ -1,27 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.cdt.debug.mi.core.command;
-
-/**
- *
- * -exec-continue
- *
- * Asynchronous command. Resumes the execution of the inferior program
- * until a breakpoint is encountered, or until the inferior exits.
- *
- */
-public class MIExecContinue extends MICommand
-{
- public MIExecContinue(String miVersion) {
- super(miVersion, "-exec-continue"); //$NON-NLS-1$
- }
-}
diff --git a/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/MIExecFinish.java b/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/MIExecFinish.java
deleted file mode 100644
index dd5f2c48398..00000000000
--- a/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/MIExecFinish.java
+++ /dev/null
@@ -1,28 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.cdt.debug.mi.core.command;
-
-/**
- *
- * -exec-finish
- *
- * Asynchronous command. Resumes the execution of the inferior program
- * until the current function is exited. Displays the results returned by
- * the function.
- *
- */
-public class MIExecFinish extends MICommand
-{
- public MIExecFinish(String miVersion) {
- super(miVersion, "-exec-finish"); //$NON-NLS-1$
- }
-}
diff --git a/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/MIExecInterrupt.java b/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/MIExecInterrupt.java
deleted file mode 100644
index 1e0702de0bc..00000000000
--- a/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/MIExecInterrupt.java
+++ /dev/null
@@ -1,31 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.cdt.debug.mi.core.command;
-
-/**
- *
- * -exec-interrupt
- *
- * Asynchronous command. Interrupts the background execution of the
- * target. Note how the token associated with the stop message is the one
- * for the execution command that has been interrupted. The token for the
- * interrupt itself only appears in the `^done' output. If the user is
- * trying to interrupt a non-running program, an error message will be
- * printed.
- *
- */
-public class MIExecInterrupt extends MICommand
-{
- public MIExecInterrupt(String miVersion) {
- super(miVersion, "-exec-interrupt"); //$NON-NLS-1$
- }
-}
diff --git a/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/MIExecNext.java b/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/MIExecNext.java
deleted file mode 100644
index bf2cca380dd..00000000000
--- a/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/MIExecNext.java
+++ /dev/null
@@ -1,31 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.cdt.debug.mi.core.command;
-
-/**
- *
- * -exec-next
- *
- * Asynchronous command. Resumes execution of the inferior program,
- * stopping when the beginning of the next source line is reached.
- *
- */
-public class MIExecNext extends MICommand
-{
- public MIExecNext(String miVersion) {
- super(miVersion, "-exec-next"); //$NON-NLS-1$
- }
-
- public MIExecNext(String miVersion, int count) {
- super(miVersion, "-exec-next", new String[] { Integer.toString(count) }); //$NON-NLS-1$
- }
-}
diff --git a/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/MIExecNextInstruction.java b/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/MIExecNextInstruction.java
deleted file mode 100644
index 9939966b04e..00000000000
--- a/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/MIExecNextInstruction.java
+++ /dev/null
@@ -1,33 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.cdt.debug.mi.core.command;
-
-/**
- *
- * -exec-next-instruction
- *
- * Asynchronous command. Executes one machine instruction. If the
- * instruction is a function call continues until the function returns. If
- * the program stops at an instruction in the middle of a source line, the
- * address will be printed as well.
- *
- */
-public class MIExecNextInstruction extends MICommand
-{
- public MIExecNextInstruction(String miVersion) {
- super(miVersion, "-exec-next-instruction"); //$NON-NLS-1$
- }
-
- public MIExecNextInstruction(String miVersion, int count) {
- super(miVersion, "-exec-next-instruction", new String[] { Integer.toString(count) }); //$NON-NLS-1$
- }
-}
diff --git a/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/MIExecReturn.java b/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/MIExecReturn.java
deleted file mode 100644
index b44432892fe..00000000000
--- a/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/MIExecReturn.java
+++ /dev/null
@@ -1,32 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.cdt.debug.mi.core.command;
-
-/**
- *
- * -exec-return
- *
- * Makes current function return immediately. Doesn't execute the
- * inferior. Displays the new current frame.
- *
- */
-public class MIExecReturn extends MICommand
-{
- public MIExecReturn(String miVersion) {
- super(miVersion, "-exec-return"); //$NON-NLS-1$
- }
-
- public MIExecReturn(String miVersion, String arg) {
- super(miVersion, "-exec-run", new String[] { arg }); //$NON-NLS-1$
- }
-
-}
diff --git a/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/MIExecRun.java b/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/MIExecRun.java
deleted file mode 100644
index 1ac92773191..00000000000
--- a/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/MIExecRun.java
+++ /dev/null
@@ -1,32 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.cdt.debug.mi.core.command;
-
-/**
- *
- * -exec-run
- *
- * Asynchronous command. Starts execution of the inferior from the
- * beginning. The inferior executes until either a breakpoint is
- * encountered or the program exits.
- *
- */
-public class MIExecRun extends MICommand
-{
- public MIExecRun(String miVersion) {
- super(miVersion, "-exec-run"); //$NON-NLS-1$
- }
-
- public MIExecRun(String miVersion, String[] args) {
- super(miVersion, "-exec-run", args); //$NON-NLS-1$
- }
-}
diff --git a/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/MIExecStep.java b/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/MIExecStep.java
deleted file mode 100644
index 86d2fb9372a..00000000000
--- a/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/MIExecStep.java
+++ /dev/null
@@ -1,33 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.cdt.debug.mi.core.command;
-
-/**
- *
- * -exec-step
- *
- * Asynchronous command. Resumes execution of the inferior program,
- * stopping when the beginning of the next source line is reached, if the
- * next source line is not a function call. If it is, stop at the first
- * instruction of the called function.
- *
- */
-public class MIExecStep extends MICommand
-{
- public MIExecStep(String miVersion) {
- super(miVersion, "-exec-step"); //$NON-NLS-1$
- }
-
- public MIExecStep(String miVersion, int count) {
- super(miVersion, "-exec-step", new String[] { Integer.toString(count) }); //$NON-NLS-1$
- }
-}
diff --git a/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/MIExecStepInstruction.java b/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/MIExecStepInstruction.java
deleted file mode 100644
index ee4a6927c08..00000000000
--- a/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/MIExecStepInstruction.java
+++ /dev/null
@@ -1,36 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.cdt.debug.mi.core.command;
-
-
-
-/**
- *
- * -exec-step-instruction
-
- * Asynchronous command. Resumes the inferior which executes one
- * machine instruction. The output, once GDB has stopped, will vary
- * depending on whether we have stopped in the middle of a source line or
- * not. In the former case, the address at which the program stopped will
- * be printed as well.
- *
- */
-public class MIExecStepInstruction extends MICommand
-{
- public MIExecStepInstruction(String miVersion) {
- super(miVersion, "-exec-step-instruction"); //$NON-NLS-1$
- }
-
- public MIExecStepInstruction(String miVersion, int count) {
- super(miVersion, "-exec-step-instruction", new String[] { Integer.toString(count) }); //$NON-NLS-1$
- }
-}
diff --git a/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/MIExecUntil.java b/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/MIExecUntil.java
deleted file mode 100644
index 9bce50ab927..00000000000
--- a/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/MIExecUntil.java
+++ /dev/null
@@ -1,34 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.cdt.debug.mi.core.command;
-
-/**
- *
- * -exec-until [ LOCATION ]
- *
- * Asynchronous command. Executes the inferior until the LOCATION
- * specified in the argument is reached. If there is no argument, the
- * inferior executes until a source line greater than the current one is
- * reached. The reason for stopping in this case will be
- * `location-reached'.
- *
- */
-public class MIExecUntil extends MICommand
-{
- public MIExecUntil(String miVersion) {
- super(miVersion, "-exec-until"); //$NON-NLS-1$
- }
-
- public MIExecUntil(String miVersion, String loc) {
- super(miVersion, "-exec-until", new String[]{loc}); //$NON-NLS-1$
- }
-}
diff --git a/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/MIFileExecFile.java b/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/MIFileExecFile.java
deleted file mode 100644
index 7983656133d..00000000000
--- a/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/MIFileExecFile.java
+++ /dev/null
@@ -1,30 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.cdt.debug.mi.core.command;
-
-/**
- *
- * -file-exec-file FILE
- *
- * Specify the executable file to be debugged. Unlike
- * `-file-exec-and-symbols', the symbol table is _not_ read from this
- * file. If used without argument, GDB clears the information about the
- * executable file. No output is produced, except a completion
- * notification.
- *
- */
-public class MIFileExecFile extends MICommand
-{
- public MIFileExecFile(String miVersion, String file) {
- super(miVersion, "-file-exec-file", new String[]{file}); //$NON-NLS-1$
- }
-}
diff --git a/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/MIFileSymbolFile.java b/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/MIFileSymbolFile.java
deleted file mode 100644
index cc3ef957711..00000000000
--- a/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/MIFileSymbolFile.java
+++ /dev/null
@@ -1,28 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.cdt.debug.mi.core.command;
-
-/**
- *
- * -file-symbol-file FILE
- *
- * Read symbol table info from the specified FILE argument. When used
- * without arguments, clears GDB's symbol table info. No output is
- * produced, except for a completion notification.
- *
- */
-public class MIFileSymbolFile extends MICommand
-{
- public MIFileSymbolFile(String miVersion, String file) {
- super(miVersion, "-file-symbol-file", new String[]{file}); //$NON-NLS-1$
- }
-}
diff --git a/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/MIGDBExit.java b/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/MIGDBExit.java
deleted file mode 100644
index 44a682687f6..00000000000
--- a/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/MIGDBExit.java
+++ /dev/null
@@ -1,26 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.cdt.debug.mi.core.command;
-
-/**
- *
- * -gdb-exit
- *
- * Exit GDB immediately.
- *
- */
-public class MIGDBExit extends MICommand
-{
- public MIGDBExit(String miVersion) {
- super(miVersion, "-gdb-exit"); //$NON-NLS-1$
- }
-}
diff --git a/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/MIGDBSet.java b/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/MIGDBSet.java
deleted file mode 100644
index ee8daaad5b0..00000000000
--- a/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/MIGDBSet.java
+++ /dev/null
@@ -1,26 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.cdt.debug.mi.core.command;
-
-/**
- *
- * -gdb-set
- *
- * Set an internal GDB variable.
- *
- */
-public class MIGDBSet extends MICommand
-{
- public MIGDBSet(String miVersion, String[] params) {
- super(miVersion, "-gdb-set", params); //$NON-NLS-1$
- }
-}
diff --git a/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/MIGDBSetAutoSolib.java b/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/MIGDBSetAutoSolib.java
deleted file mode 100644
index 807ebf63d59..00000000000
--- a/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/MIGDBSetAutoSolib.java
+++ /dev/null
@@ -1,25 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.cdt.debug.mi.core.command;
-
-/**
- *
- * -gdb-set
- *
- * Set an internal GDB variable.
- *
- */
-public class MIGDBSetAutoSolib extends MIGDBSet {
- public MIGDBSetAutoSolib(String miVersion, boolean isSet) {
- super(miVersion, new String[] {"auto-solib-add", (isSet) ? "on" : "off"}); //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
- }
-}
diff --git a/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/MIGDBSetBreakpointPending.java b/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/MIGDBSetBreakpointPending.java
deleted file mode 100644
index 6d2843a8601..00000000000
--- a/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/MIGDBSetBreakpointPending.java
+++ /dev/null
@@ -1,25 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2005 QnX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * Qnx Software Systems - initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.cdt.debug.mi.core.command;
-
-/**
- *
- * MIGDBSetBreakpointPending
- *
- */
-public class MIGDBSetBreakpointPending extends MIGDBSet {
-
- public MIGDBSetBreakpointPending(String miVersion, boolean set) {
- super(miVersion, new String[] {"breakpoint", "pending", (set) ? "on" : "off"}); //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$ //$NON-NLS-4$
- }
-
-}
diff --git a/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/MIGDBSetEnvironment.java b/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/MIGDBSetEnvironment.java
deleted file mode 100644
index 87bae6b83a7..00000000000
--- a/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/MIGDBSetEnvironment.java
+++ /dev/null
@@ -1,52 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.cdt.debug.mi.core.command;
-
-/**
- *
- * -gdb-set
- *
- * Set an internal GDB variable.
- *
- */
-public class MIGDBSetEnvironment extends MIGDBSet {
-
- public MIGDBSetEnvironment(String miVersion, String[] paths) {
- super(miVersion, paths);
- // Overload the parameter
- String[] newPaths = new String[paths.length + 1];
- newPaths[0] = "environment"; //$NON-NLS-1$
- System.arraycopy(paths, 0, newPaths, 1, paths.length);
- setParameters(newPaths);
- }
-
- /**
- * According to the help.:
- * Set environment variable value to give the program.
- * Arguments are VAR VALUE where VAR is variable name and VALUE is value.
- * VALUES of environment variables are uninterpreted strings.
- * This does not affect the program until the next "run" command.
- *
- * So pass the strings raw without interpretation.
- */
- protected String parametersToString() {
- String[] parameters = getParameters();
- StringBuffer buffer = new StringBuffer();
- if (parameters != null) {
- for (int i = 0; i < parameters.length; i++) {
- buffer.append(' ').append(parameters[i]);
- }
- }
- return buffer.toString().trim();
- }
-
-}
diff --git a/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/MIGDBSetNewConsole.java b/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/MIGDBSetNewConsole.java
deleted file mode 100644
index cfb74d4fc55..00000000000
--- a/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/MIGDBSetNewConsole.java
+++ /dev/null
@@ -1,9 +0,0 @@
-package org.eclipse.cdt.debug.mi.core.command;
-
-public class MIGDBSetNewConsole extends MIGDBSet {
-
- public MIGDBSetNewConsole(String miVersion) {
- super(miVersion, new String[] {"new-console"}); //$NON-NLS-1$
- }
-
-}
diff --git a/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/MIGDBSetSolibSearchPath.java b/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/MIGDBSetSolibSearchPath.java
deleted file mode 100644
index f47fdabaaa0..00000000000
--- a/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/MIGDBSetSolibSearchPath.java
+++ /dev/null
@@ -1,37 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.cdt.debug.mi.core.command;
-
-/**
- *
- * -gdb-set
- *
- * Set an internal GDB variable.
- *
- */
-public class MIGDBSetSolibSearchPath extends MIGDBSet {
- public MIGDBSetSolibSearchPath(String miVersion, String[] paths) {
- super(miVersion, paths);
- // Overload the parameter
- String sep = System.getProperty("path.separator", ":"); //$NON-NLS-1$ //$NON-NLS-2$
- StringBuffer buffer = new StringBuffer();
- for (int i = 0; i < paths.length; i++) {
- if (buffer.length() == 0) {
- buffer.append(paths[i]);
- } else {
- buffer.append(sep).append(paths[i]);
- }
- }
- String[] p = new String [] {"solib-search-path", buffer.toString()}; //$NON-NLS-1$
- setParameters(p);
- }
-}
diff --git a/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/MIGDBSetStopOnSolibEvents.java b/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/MIGDBSetStopOnSolibEvents.java
deleted file mode 100644
index d52a128bee2..00000000000
--- a/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/MIGDBSetStopOnSolibEvents.java
+++ /dev/null
@@ -1,26 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.cdt.debug.mi.core.command;
-
-/**
- *
- * -gdb-set stop-on-solib-events
- *
- * Set an internal GDB variable.
- *
- */
-public class MIGDBSetStopOnSolibEvents extends MIGDBSet {
-
- public MIGDBSetStopOnSolibEvents(String miVersion, boolean isSet) {
- super(miVersion, new String[] {"stop-on-solib-events", (isSet) ? "1" : "0"}); //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
- }
-}
diff --git a/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/MIGDBShow.java b/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/MIGDBShow.java
deleted file mode 100644
index 8bbf07d91ec..00000000000
--- a/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/MIGDBShow.java
+++ /dev/null
@@ -1,46 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.cdt.debug.mi.core.command;
-
-import org.eclipse.cdt.debug.mi.core.MIException;
-import org.eclipse.cdt.debug.mi.core.output.MIGDBShowInfo;
-import org.eclipse.cdt.debug.mi.core.output.MIInfo;
-import org.eclipse.cdt.debug.mi.core.output.MIOutput;
-
-/**
- *
- * -gdb-show
- *
- * Show the current value of a GDB variable.
- *
- */
-public class MIGDBShow extends MICommand {
- public MIGDBShow(String miVersion, String[] params) {
- super(miVersion, "-gdb-show", params); //$NON-NLS-1$
- }
-
- public MIGDBShowInfo getMIGDBShowInfo() throws MIException {
- return (MIGDBShowInfo)getMIInfo();
- }
-
- public MIInfo getMIInfo() throws MIException {
- MIInfo info = null;
- MIOutput out = getMIOutput();
- if (out != null) {
- info = new MIGDBShowInfo(out);
- if (info.isError()) {
- throwMIException(info, out);
- }
- }
- return info;
- }
-}
diff --git a/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/MIGDBShowAddressSize.java b/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/MIGDBShowAddressSize.java
deleted file mode 100644
index 0d61c5491ca..00000000000
--- a/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/MIGDBShowAddressSize.java
+++ /dev/null
@@ -1,39 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2005 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.mi.core.command;
-
-import org.eclipse.cdt.debug.mi.core.MIException;
-import org.eclipse.cdt.debug.mi.core.output.MIGDBShowAddressSizeInfo;
-import org.eclipse.cdt.debug.mi.core.output.MIInfo;
-import org.eclipse.cdt.debug.mi.core.output.MIOutput;
-
-/**
- *
- */
-public class MIGDBShowAddressSize extends MIGDBShow {
-
- public MIGDBShowAddressSize (String miVersion) {
- super(miVersion, new String[] { "remoteaddresssize" }); //$NON-NLS-1$
- }
-
- public MIInfo getMIInfo() throws MIException {
- MIGDBShowAddressSizeInfo info = null;
- MIOutput out = getMIOutput();
- if (out != null) {
- info = new MIGDBShowAddressSizeInfo(out);
- if (info.isError()) {
- throwMIException(info, out);
- }
- }
- return info;
- }
-
-}
diff --git a/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/MIGDBShowDirectories.java b/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/MIGDBShowDirectories.java
deleted file mode 100644
index 20da64e6873..00000000000
--- a/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/MIGDBShowDirectories.java
+++ /dev/null
@@ -1,45 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.cdt.debug.mi.core.command;
-
-import org.eclipse.cdt.debug.mi.core.MIException;
-import org.eclipse.cdt.debug.mi.core.output.MIGDBShowDirectoriesInfo;
-import org.eclipse.cdt.debug.mi.core.output.MIInfo;
-import org.eclipse.cdt.debug.mi.core.output.MIOutput;
-
-/**
- *
- * -gdb-show directories
- *
- * Show the current value of a GDB variable(directories).
- *
- */
-public class MIGDBShowDirectories extends MIGDBShow {
- public MIGDBShowDirectories(String miVersion) {
- super(miVersion, new String[] { "directories" }); //$NON-NLS-1$
- }
-
- public MIGDBShowDirectoriesInfo getMIGDBShowDirectoriesInfo() throws MIException {
- return (MIGDBShowDirectoriesInfo)getMIInfo();
- }
- public MIInfo getMIInfo() throws MIException {
- MIInfo info = null;
- MIOutput out = getMIOutput();
- if (out != null) {
- info = new MIGDBShowDirectoriesInfo(out);
- if (info.isError()) {
- throwMIException(info, out);
- }
- }
- return info;
- }
-}
diff --git a/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/MIGDBShowEndian.java b/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/MIGDBShowEndian.java
deleted file mode 100644
index d207d834dce..00000000000
--- a/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/MIGDBShowEndian.java
+++ /dev/null
@@ -1,41 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2005 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.cdt.debug.mi.core.command;
-
-import org.eclipse.cdt.debug.mi.core.MIException;
-import org.eclipse.cdt.debug.mi.core.output.MIInfo;
-import org.eclipse.cdt.debug.mi.core.output.MIOutput;
-import org.eclipse.cdt.debug.mi.core.output.MIGDBShowEndianInfo;
-
-public class MIGDBShowEndian extends MIGDBShow {
-
- public MIGDBShowEndian(String miVersion) {
- super(miVersion, new String[] {"endian"}); //$NON-NLS-1$
- }
-
- public MIGDBShowEndianInfo getMIShowEndianInfo() throws MIException {
- return (MIGDBShowEndianInfo)getMIInfo();
- }
-
- public MIInfo getMIInfo() throws MIException {
- MIInfo info = null;
- MIOutput out = getMIOutput();
- if (out != null) {
- info = new MIGDBShowEndianInfo(out);
- if (info.isError()) {
- throwMIException(info, out);
- }
- }
- return info;
- }
-
-}
diff --git a/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/MIGDBShowExitCode.java b/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/MIGDBShowExitCode.java
deleted file mode 100644
index d2e68e99693..00000000000
--- a/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/MIGDBShowExitCode.java
+++ /dev/null
@@ -1,48 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.cdt.debug.mi.core.command;
-
-import org.eclipse.cdt.debug.mi.core.MIException;
-import org.eclipse.cdt.debug.mi.core.output.MIGDBShowExitCodeInfo;
-import org.eclipse.cdt.debug.mi.core.output.MIInfo;
-import org.eclipse.cdt.debug.mi.core.output.MIOutput;
-
-/**
- *
- *-data-evaluate-expression $_exitcode
- * ^done,value="10"
- *
- * Show the current value of a $_exitcode
- *
- */
-public class MIGDBShowExitCode extends MIDataEvaluateExpression {
-
- public MIGDBShowExitCode(String miVersion) {
- super(miVersion, "$_exitcode"); //$NON-NLS-1$
- }
-
- public MIGDBShowExitCodeInfo getMIGDBShowExitCodeInfo() throws MIException {
- return (MIGDBShowExitCodeInfo)getMIInfo();
- }
-
- public MIInfo getMIInfo() throws MIException {
- MIInfo info = null;
- MIOutput out = getMIOutput();
- if (out != null) {
- info = new MIGDBShowExitCodeInfo(out);
- if (info.isError()) {
- throwMIException(info, out);
- }
- }
- return info;
- }
-}
diff --git a/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/MIGDBShowPrompt.java b/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/MIGDBShowPrompt.java
deleted file mode 100644
index b30c23e1726..00000000000
--- a/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/MIGDBShowPrompt.java
+++ /dev/null
@@ -1,25 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.cdt.debug.mi.core.command;
-
-/**
- * -gdb-show prompt
- */
-public class MIGDBShowPrompt extends MIGDBShow {
-
- /**
- * @param params
- */
- public MIGDBShowPrompt(String miVersion) {
- super(miVersion, new String[] { "prompt" }); //$NON-NLS-1$
- }
-}
diff --git a/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/MIGDBShowSolibSearchPath.java b/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/MIGDBShowSolibSearchPath.java
deleted file mode 100644
index f44efbb5739..00000000000
--- a/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/MIGDBShowSolibSearchPath.java
+++ /dev/null
@@ -1,45 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.cdt.debug.mi.core.command;
-
-import org.eclipse.cdt.debug.mi.core.MIException;
-import org.eclipse.cdt.debug.mi.core.output.MIGDBShowSolibSearchPathInfo;
-import org.eclipse.cdt.debug.mi.core.output.MIInfo;
-import org.eclipse.cdt.debug.mi.core.output.MIOutput;
-
-/**
- *
- * -gdb-show directories
- *
- * Show the current value of a GDB variable(directories).
- *
- */
-public class MIGDBShowSolibSearchPath extends MIGDBShow {
- public MIGDBShowSolibSearchPath(String miVersion) {
- super(miVersion, new String[] { "solib-search-path" }); //$NON-NLS-1$
- }
-
- public MIGDBShowSolibSearchPathInfo getMIGDBShowSolibSearchPathInfo() throws MIException {
- return (MIGDBShowSolibSearchPathInfo)getMIInfo();
- }
- public MIInfo getMIInfo() throws MIException {
- MIInfo info = null;
- MIOutput out = getMIOutput();
- if (out != null) {
- info = new MIGDBShowSolibSearchPathInfo(out);
- if (info.isError()) {
- throwMIException(info, out);
- }
- }
- return info;
- }
-}
diff --git a/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/MIInterpreterExec.java b/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/MIInterpreterExec.java
deleted file mode 100644
index a1d0c6859a1..00000000000
--- a/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/MIInterpreterExec.java
+++ /dev/null
@@ -1,39 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2002, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.cdt.debug.mi.core.command;
-
-/**
- * MIInterpreterExec
- *
- * -interpreter-exec
- *
- * -interpreter-exec interpreter command
- *
- * Execute the specified command in the given interpreter.
- *
- * -interpreter-exec console "break main"
- * &"During symbol reading, couldn't parse type; debugger out of date?.\n"
- * &"During symbol reading, bad structure-type format.\n"
- * ~"Breakpoint 1 at 0x8074fc6: file ../../src/gdb/main.c, line 743.\n"
- * ^done
- *
- */
-public class MIInterpreterExec extends MICommand {
-
- /**
- * @param oper
- */
- public MIInterpreterExec(String miVersion, String interpreter, String cmd) {
- super(miVersion, "-interpreter-exec", new String[]{interpreter}, new String[] {cmd}); //$NON-NLS-1$
- }
-
-}
diff --git a/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/MIInterpreterExecConsole.java b/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/MIInterpreterExecConsole.java
deleted file mode 100644
index f13bfc19d11..00000000000
--- a/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/MIInterpreterExecConsole.java
+++ /dev/null
@@ -1,27 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2002, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.cdt.debug.mi.core.command;
-
-/**
- * MIInterpreterExecConsole
- */
-public class MIInterpreterExecConsole extends MIInterpreterExec {
-
- /**
- * @param interpreter
- * @param cmd
- */
- public MIInterpreterExecConsole(String miVersion, String cmd) {
- super(miVersion, "console", cmd); //$NON-NLS-1$
- }
-
-}
diff --git a/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/MIStackInfoDepth.java b/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/MIStackInfoDepth.java
deleted file mode 100644
index 8bb1bc5c61e..00000000000
--- a/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/MIStackInfoDepth.java
+++ /dev/null
@@ -1,52 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.cdt.debug.mi.core.command;
-
-import org.eclipse.cdt.debug.mi.core.MIException;
-import org.eclipse.cdt.debug.mi.core.output.MIInfo;
-import org.eclipse.cdt.debug.mi.core.output.MIOutput;
-import org.eclipse.cdt.debug.mi.core.output.MIStackInfoDepthInfo;
-
-/**
- *
- * -stack-info-depth [ MAX-DEPTH ]
- *
- * Return the depth of the stack. If the integer argument MAX-DEPTH is
- * specified, do not count beyond MAX-DEPTH frames.
- *
- */
-public class MIStackInfoDepth extends MICommand
-{
- public MIStackInfoDepth(String miVersion) {
- super(miVersion, "-stack-info-depth"); //$NON-NLS-1$
- }
-
- public MIStackInfoDepth(String miVersion, int maxDepth) {
- super(miVersion, "-stack-info-depth", new String[]{Integer.toString(maxDepth)}); //$NON-NLS-1$
- }
-
- public MIStackInfoDepthInfo getMIStackInfoDepthInfo() throws MIException {
- return (MIStackInfoDepthInfo)getMIInfo();
- }
-
- public MIInfo getMIInfo() throws MIException {
- MIInfo info = null;
- MIOutput out = getMIOutput();
- if (out != null) {
- info = new MIStackInfoDepthInfo(out);
- if (info.isError()) {
- throwMIException(info, out);
- }
- }
- return info;
- }
-}
diff --git a/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/MIStackListArguments.java b/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/MIStackListArguments.java
deleted file mode 100644
index e44848574ec..00000000000
--- a/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/MIStackListArguments.java
+++ /dev/null
@@ -1,72 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.cdt.debug.mi.core.command;
-
-import org.eclipse.cdt.debug.mi.core.MIException;
-import org.eclipse.cdt.debug.mi.core.output.MIInfo;
-import org.eclipse.cdt.debug.mi.core.output.MIOutput;
-import org.eclipse.cdt.debug.mi.core.output.MIStackListArgumentsInfo;
-
-/**
- *
- * -stack-list-arguments SHOW-VALUES
- * [ LOW-FRAME HIGH-FRAME ]
- *
- * Display a list of the arguments for the frames between LOW-FRAME and
- * HIGH-FRAME (inclusive). If LOW-FRAME and HIGH-FRAME are not provided,
- * list the arguments for the whole call stack.
- *
- * The SHOW-VALUES argument must have a value of 0 or 1. A value of 0
- * means that only the names of the arguments are listed, a value of 1
- * means that both names and values of the arguments are printed.
- *
- */
-public class MIStackListArguments extends MICommand
-{
- public MIStackListArguments(String miVersion, boolean showValues) {
- super(miVersion, "-stack-list-arguments"); //$NON-NLS-1$
- if (showValues) {
- setParameters(new String[]{"1"}); //$NON-NLS-1$
- } else {
- setParameters(new String[]{"0"}); //$NON-NLS-1$
- }
- }
-
- public MIStackListArguments(String miVersion, boolean showValues, int low, int high) {
- super(miVersion, "-stack-list-arguments"); //$NON-NLS-1$
- String[] params = new String[3];
- if (showValues) {
- params[0] = "1"; //$NON-NLS-1$
- } else {
- params[0] = "0"; //$NON-NLS-1$
- }
- params[1] = Integer.toString(low);
- params[2] = Integer.toString(high);
- setParameters(params);
- }
-
- public MIStackListArgumentsInfo getMIStackListArgumentsInfo() throws MIException {
- return (MIStackListArgumentsInfo)getMIInfo();
- }
-
- public MIInfo getMIInfo() throws MIException {
- MIInfo info = null;
- MIOutput out = getMIOutput();
- if (out != null) {
- info = new MIStackListArgumentsInfo(out);
- if (info.isError()) {
- throwMIException(info, out);
- }
- }
- return info;
- }
-}
diff --git a/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/MIStackListFrames.java b/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/MIStackListFrames.java
deleted file mode 100644
index 701f9aeb67c..00000000000
--- a/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/MIStackListFrames.java
+++ /dev/null
@@ -1,78 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.cdt.debug.mi.core.command;
-
-import org.eclipse.cdt.debug.mi.core.MIException;
-import org.eclipse.cdt.debug.mi.core.output.MIInfo;
-import org.eclipse.cdt.debug.mi.core.output.MIOutput;
-import org.eclipse.cdt.debug.mi.core.output.MIStackListFramesInfo;
-
-/**
- *
- * -stack-list-frames [ LOW-FRAME HIGH-FRAME ]
- *
- * List the frames currently on the stack. For each frame it displays
- * the following info:
- *
- * `LEVEL'
- * The frame number, 0 being the topmost frame, i.e. the innermost
- * function.
- *
- * `ADDR'
- * The `$pc' value for that frame.
- *
- * `FUNC'
- * Function name.
- *
- * `FILE'
- * File name of the source file where the function lives.
- *
- * `FULLNAME'
- * Absolute file name of the source file where the function lives.
- * @since gdb 6.4
- *
- * `LINE'
- * Line number corresponding to the `$pc'.
- *
- * If invoked without arguments, this command prints a backtrace for the
- * whole stack. If given two integer arguments, it shows the frames whose
- * levels are between the two arguments (inclusive). If the two arguments
- * are equal, it shows the single frame at the corresponding level.
- *
- */
-public class MIStackListFrames extends MICommand
-{
- public MIStackListFrames(String miVersion) {
- super(miVersion, "-stack-list-frames"); //$NON-NLS-1$
- }
-
- public MIStackListFrames(String miVersion, int low, int high) {
- super(miVersion, "-stack-list-frames", new String[]{Integer.toString(low), //$NON-NLS-1$
- Integer.toString(high)});
- }
-
- public MIStackListFramesInfo getMIStackListFramesInfo() throws MIException {
- return (MIStackListFramesInfo)getMIInfo();
- }
-
- public MIInfo getMIInfo() throws MIException {
- MIInfo info = null;
- MIOutput out = getMIOutput();
- if (out != null) {
- info = new MIStackListFramesInfo(out);
- if (info.isError()) {
- throwMIException(info, out);
- }
- }
- return info;
- }
-}
diff --git a/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/MIStackListLocals.java b/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/MIStackListLocals.java
deleted file mode 100644
index f4136a0e5f6..00000000000
--- a/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/MIStackListLocals.java
+++ /dev/null
@@ -1,54 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.cdt.debug.mi.core.command;
-
-import org.eclipse.cdt.debug.mi.core.MIException;
-import org.eclipse.cdt.debug.mi.core.output.MIInfo;
-import org.eclipse.cdt.debug.mi.core.output.MIOutput;
-import org.eclipse.cdt.debug.mi.core.output.MIStackListLocalsInfo;
-
-/**
- *
- * -stack-list-locals PRINT-VALUES
- *
- * Display the local variable names for the current frame. With an
- * argument of 0 prints only the names of the variables, with argument of 1
- * prints also their values.
- *
- */
-public class MIStackListLocals extends MICommand
-{
- public MIStackListLocals(String miVersion, boolean printValues) {
- super(miVersion, "-stack-list-locals"); //$NON-NLS-1$
- if (printValues) {
- setParameters(new String[]{"1"}); //$NON-NLS-1$
- } else {
- setParameters(new String[]{"0"}); //$NON-NLS-1$
- }
- }
-
- public MIStackListLocalsInfo getMIStackListLocalsInfo() throws MIException {
- return (MIStackListLocalsInfo)getMIInfo();
- }
-
- public MIInfo getMIInfo() throws MIException {
- MIInfo info = null;
- MIOutput out = getMIOutput();
- if (out != null) {
- info = new MIStackListLocalsInfo(out);
- if (info.isError()) {
- throwMIException(info, out);
- }
- }
- return info;
- }
-}
diff --git a/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/MIStackSelectFrame.java b/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/MIStackSelectFrame.java
deleted file mode 100644
index dcd993762d7..00000000000
--- a/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/MIStackSelectFrame.java
+++ /dev/null
@@ -1,29 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.cdt.debug.mi.core.command;
-
-
-
-/**
- *
- * -stack-select-frame FRAMENUM
- *
- * Change the current frame. Select a different frame FRAMENUM on the
- * stack.
- *
- */
-public class MIStackSelectFrame extends MICommand
-{
- public MIStackSelectFrame(String miVersion, int frameNum) {
- super(miVersion, "-stack-select-frame", new String[]{Integer.toString(frameNum)}); //$NON-NLS-1$
- }
-}
diff --git a/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/MITargetDetach.java b/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/MITargetDetach.java
deleted file mode 100644
index 757c80197c9..00000000000
--- a/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/MITargetDetach.java
+++ /dev/null
@@ -1,27 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.cdt.debug.mi.core.command;
-
-/**
- *
- *
- * -target-detach
- *
- * Disconnect from the remote target. There's no output.
- *
- */
-public class MITargetDetach extends MICommand
-{
- public MITargetDetach(String miVersion) {
- super(miVersion, "-target-detach"); //$NON-NLS-1$
- }
-}
diff --git a/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/MITargetDownload.java b/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/MITargetDownload.java
deleted file mode 100644
index 972e4d1bec5..00000000000
--- a/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/MITargetDownload.java
+++ /dev/null
@@ -1,38 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2002, 2005 RedHat Inc and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * RedHat Inc - initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.cdt.debug.mi.core.command;
-
-/**
- *
- * -target-download
- *
- * Load the executable to the remote target. This command takes no args.
- *
- *
- * Loads the executable onto the remote target. It prints out an
- * update message every half second, which includes the fields:
- *
- * +download,{section=".text",section-size="6668",total-size="9880"}
- * +download,{section=".text",section-sent="512",section-size="6668",
- * total-sent="512",total-size="9880"}
- *
- */
-public class MITargetDownload extends MICommand {
-
- public MITargetDownload(String miVersion) {
- super(miVersion, "-target-download"); //$NON-NLS-1$
- }
-
- public MITargetDownload(String miVersion, String file) {
- super(miVersion, "-target-download", new String[] { file }); //$NON-NLS-1$
- }
-}
diff --git a/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/MITargetSelect.java b/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/MITargetSelect.java
deleted file mode 100644
index b31d99e8e8c..00000000000
--- a/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/MITargetSelect.java
+++ /dev/null
@@ -1,39 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.cdt.debug.mi.core.command;
-
-/**
- *
- * -target-select TYPE PARAMETERS ...
- *
- * Connect GDB to the remote target. This command takes two args:
- *
- * `TYPE'
- * The type of target, for instance `async', `remote', etc.
- *
- * `PARAMETERS'
- * Device names, host names and the like. *Note Commands for
- * managing targets: Target Commands, for more details.
- *
- * The output is a connection notification, followed by the address at
- * which the target program is, in the following form:
- *
- * ^connected,addr="ADDRESS",func="FUNCTION NAME",
- * args=[ARG LIST]
- *
- */
-public class MITargetSelect extends MICommand
-{
- public MITargetSelect(String miVersion, String[] params) {
- super(miVersion, "-target-select", params); //$NON-NLS-1$
- }
-}
diff --git a/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/MIThreadListIds.java b/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/MIThreadListIds.java
deleted file mode 100644
index 0835fce8fc8..00000000000
--- a/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/MIThreadListIds.java
+++ /dev/null
@@ -1,48 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.cdt.debug.mi.core.command;
-
-import org.eclipse.cdt.debug.mi.core.MIException;
-import org.eclipse.cdt.debug.mi.core.output.MIInfo;
-import org.eclipse.cdt.debug.mi.core.output.MIOutput;
-import org.eclipse.cdt.debug.mi.core.output.MIThreadListIdsInfo;
-
-/**
- *
- * -thread-list-ids
- *
- * Produces a list of the currently known GDB thread ids. At the end
- * of the list it also prints the total number of such threads.
- *
- */
-public class MIThreadListIds extends MICommand
-{
- public MIThreadListIds(String miVersion) {
- super(miVersion, "-thread-list-ids"); //$NON-NLS-1$
- }
-
- public MIThreadListIdsInfo getMIThreadListIdsInfo() throws MIException {
- return (MIThreadListIdsInfo)getMIInfo();
- }
-
- public MIInfo getMIInfo() throws MIException {
- MIInfo info = null;
- MIOutput out = getMIOutput();
- if (out != null) {
- info = new MIThreadListIdsInfo(out);
- if (info.isError()) {
- throwMIException(info, out);
- }
- }
- return info;
- }
-}
diff --git a/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/MIThreadSelect.java b/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/MIThreadSelect.java
deleted file mode 100644
index fdfdf63939e..00000000000
--- a/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/MIThreadSelect.java
+++ /dev/null
@@ -1,48 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.cdt.debug.mi.core.command;
-
-import org.eclipse.cdt.debug.mi.core.MIException;
-import org.eclipse.cdt.debug.mi.core.output.MIInfo;
-import org.eclipse.cdt.debug.mi.core.output.MIOutput;
-import org.eclipse.cdt.debug.mi.core.output.MIThreadSelectInfo;
-
-/**
- *
- * -thread-select THREADNUM
- *
- * Make THREADNUM the current thread. It prints the number of the new
- * current thread, and the topmost frame for that thread.
- *
- */
-public class MIThreadSelect extends MICommand
-{
- public MIThreadSelect(String miVersion, int threadNum) {
- super(miVersion, "-thread-select", new String[]{Integer.toString(threadNum)}); //$NON-NLS-1$
- }
-
- public MIThreadSelectInfo getMIThreadSelectInfo() throws MIException {
- return (MIThreadSelectInfo)getMIInfo();
- }
-
- public MIInfo getMIInfo() throws MIException {
- MIInfo info = null;
- MIOutput out = getMIOutput();
- if (out != null) {
- info = new MIThreadSelectInfo(out);
- if (info.isError()) {
- throwMIException(info, out);
- }
- }
- return info;
- }
-}
diff --git a/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/MIVarAssign.java b/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/MIVarAssign.java
deleted file mode 100644
index e70796833c8..00000000000
--- a/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/MIVarAssign.java
+++ /dev/null
@@ -1,27 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.cdt.debug.mi.core.command;
-
-/**
- *
- * -var-assign NAME EXPRESSION
- *
- * Assigns the value of EXPRESSION to the variable object specified by
- * NAME. The object must be `editable'.
- *
- */
-public class MIVarAssign extends MICommand
-{
- public MIVarAssign(String miVersion, String name, String expression) {
- super(miVersion, "-var-assign", new String[]{name, expression}); //$NON-NLS-1$
- }
-}
diff --git a/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/MIVarCreate.java b/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/MIVarCreate.java
deleted file mode 100644
index 4660b81ee98..00000000000
--- a/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/MIVarCreate.java
+++ /dev/null
@@ -1,77 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.cdt.debug.mi.core.command;
-
-import org.eclipse.cdt.debug.mi.core.MIException;
-import org.eclipse.cdt.debug.mi.core.output.MIInfo;
-import org.eclipse.cdt.debug.mi.core.output.MIOutput;
-import org.eclipse.cdt.debug.mi.core.output.MIVarCreateInfo;
-
-/**
- *
- * -var-create {NAME | "-"}
- * {FRAME-ADDR | "*"} EXPRESSION
- *
- * This operation creates a variable object, which allows the
- * monitoring of a variable, the result of an expression, a memory cell or
- * a CPU register.
- *
- * The NAME parameter is the string by which the object can be
- * referenced. It must be unique. If `-' is specified, the varobj system
- * will generate a string "varNNNNNN" automatically. It will be unique
- * provided that one does not specify NAME on that format. The command
- * fails if a duplicate name is found.
- *
- * The frame under which the expression should be evaluated can be
- * specified by FRAME-ADDR. A `*' indicates that the current frame should
- * be used.
- *
- * EXPRESSION is any expression valid on the current language set (must
- * not begin with a `*'), or one of the following:
- *
- * * `*ADDR', where ADDR is the address of a memory cell
- *
- * * `*ADDR-ADDR' -- a memory address range (TBD)
- *
- * * `$REGNAME' -- a CPU register name
- *
- */
-public class MIVarCreate extends MICommand
-{
- public MIVarCreate(String miVersion, String expression) {
- this(miVersion, "-", "*", expression); //$NON-NLS-1$ //$NON-NLS-2$
- }
-
- public MIVarCreate(String miVersion, String name, String expression) {
- this(miVersion, name, "*", expression); //$NON-NLS-1$
- }
-
- public MIVarCreate(String miVersion, String name, String frameAddr, String expression) {
- super(miVersion, "-var-create", new String[]{name, frameAddr, expression}); //$NON-NLS-1$
- }
-
- public MIVarCreateInfo getMIVarCreateInfo() throws MIException {
- return (MIVarCreateInfo)getMIInfo();
- }
-
- public MIInfo getMIInfo() throws MIException {
- MIInfo info = null;
- MIOutput out = getMIOutput();
- if (out != null) {
- info = new MIVarCreateInfo(out);
- if (info.isError()) {
- throwMIException(info, out);
- }
- }
- return info;
- }
-}
diff --git a/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/MIVarDelete.java b/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/MIVarDelete.java
deleted file mode 100644
index 4db2ad8be1a..00000000000
--- a/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/MIVarDelete.java
+++ /dev/null
@@ -1,49 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.cdt.debug.mi.core.command;
-
-import org.eclipse.cdt.debug.mi.core.MIException;
-import org.eclipse.cdt.debug.mi.core.output.MIInfo;
-import org.eclipse.cdt.debug.mi.core.output.MIOutput;
-import org.eclipse.cdt.debug.mi.core.output.MIVarDeleteInfo;
-
-/**
- *
- * -var-delete NAME
- *
- * Deletes a previously created variable object and all of its children.
- *
- * Returns an error if the object NAME is not found.
- *
- */
-public class MIVarDelete extends MICommand
-{
- public MIVarDelete(String miVersion, String name) {
- super(miVersion, "-var-delete", new String[]{name}); //$NON-NLS-1$
- }
-
- public MIVarDeleteInfo getMIVarDeleteInfo() throws MIException {
- return (MIVarDeleteInfo)getMIInfo();
- }
-
- public MIInfo getMIInfo() throws MIException {
- MIInfo info = null;
- MIOutput out = getMIOutput();
- if (out != null) {
- info = new MIVarDeleteInfo(out);
- if (info.isError()) {
- throwMIException(info, out);
- }
- }
- return info;
- }
-}
diff --git a/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/MIVarEvaluateExpression.java b/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/MIVarEvaluateExpression.java
deleted file mode 100644
index 9ee716f4aed..00000000000
--- a/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/MIVarEvaluateExpression.java
+++ /dev/null
@@ -1,51 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.cdt.debug.mi.core.command;
-
-import org.eclipse.cdt.debug.mi.core.MIException;
-import org.eclipse.cdt.debug.mi.core.output.MIInfo;
-import org.eclipse.cdt.debug.mi.core.output.MIOutput;
-import org.eclipse.cdt.debug.mi.core.output.MIVarEvaluateExpressionInfo;
-
-/**
- *
- * -var-evaluate-expression NAME
- *
- * Evaluates the expression that is represented by the specified
- * variable object and returns its value as a string in the current format
- * specified for the object:
- *
- * value=VALUE
- *
- */
-public class MIVarEvaluateExpression extends MICommand {
- public MIVarEvaluateExpression(String miVersion, String expression) {
- super(miVersion, "-var-evaluate-expression", new String[] { expression }); //$NON-NLS-1$
- }
-
- public MIVarEvaluateExpressionInfo getMIVarEvaluateExpressionInfo()
- throws MIException {
- return (MIVarEvaluateExpressionInfo) getMIInfo();
- }
-
- public MIInfo getMIInfo() throws MIException {
- MIInfo info = null;
- MIOutput out = getMIOutput();
- if (out != null) {
- info = new MIVarEvaluateExpressionInfo(out);
- if (info.isError()) {
- throwMIException(info, out);
- }
- }
- return info;
- }
-}
diff --git a/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/MIVarInfoExpression.java b/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/MIVarInfoExpression.java
deleted file mode 100644
index cc3d1638593..00000000000
--- a/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/MIVarInfoExpression.java
+++ /dev/null
@@ -1,52 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.cdt.debug.mi.core.command;
-
-import org.eclipse.cdt.debug.mi.core.MIException;
-import org.eclipse.cdt.debug.mi.core.output.MIInfo;
-import org.eclipse.cdt.debug.mi.core.output.MIOutput;
-import org.eclipse.cdt.debug.mi.core.output.MIVarInfoExpressionInfo;
-
-/**
- *
- * -var-info-expression NAME
- *
- * Returns what is represented by the variable object NAME:
- *
- * lang=LANG-SPEC,exp=EXPRESSION
- *
- * where LANG-SPEC is `{"C" | "C++" | "Java"}'.
- *
- */
-public class MIVarInfoExpression extends MICommand
-{
- public MIVarInfoExpression(String miVersion, String name) {
- super(miVersion, "-var-info-expression", new String[]{name}); //$NON-NLS-1$
- }
-
- public MIVarInfoExpressionInfo getMIVarInfoExpressionInfo() throws MIException {
- return (MIVarInfoExpressionInfo)getMIInfo();
- }
-
- public MIInfo getMIInfo() throws MIException {
- MIInfo info = null;
- MIOutput out = getMIOutput();
- if (out != null) {
- info = new MIVarInfoExpressionInfo(out);
- if (info.isError()) {
- throwMIException(info, out);
- }
- }
- return info;
- }
-
-}
diff --git a/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/MIVarInfoNumChildren.java b/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/MIVarInfoNumChildren.java
deleted file mode 100644
index 4148217d673..00000000000
--- a/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/MIVarInfoNumChildren.java
+++ /dev/null
@@ -1,49 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.cdt.debug.mi.core.command;
-
-import org.eclipse.cdt.debug.mi.core.MIException;
-import org.eclipse.cdt.debug.mi.core.output.MIInfo;
-import org.eclipse.cdt.debug.mi.core.output.MIOutput;
-import org.eclipse.cdt.debug.mi.core.output.MIVarInfoNumChildrenInfo;
-
-/**
- *
- * -var-info-num-children NAME
- *
- * Returns the number of children of a variable object NAME:
- *
- * numchild=N
- *
- */
-public class MIVarInfoNumChildren extends MICommand
-{
- public MIVarInfoNumChildren(String miVersion, String name) {
- super(miVersion, "-var-info-num-children", new String[]{name}); //$NON-NLS-1$
- }
-
- public MIVarInfoNumChildrenInfo getMIVarInfoNumChildrenInfo() throws MIException {
- return (MIVarInfoNumChildrenInfo)getMIInfo();
- }
-
- public MIInfo getMIInfo() throws MIException {
- MIInfo info = null;
- MIOutput out = getMIOutput();
- if (out != null) {
- info = new MIVarInfoNumChildrenInfo(out);
- if (info.isError()) {
- throwMIException(info, out);
- }
- }
- return info;
- }
-}
diff --git a/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/MIVarInfoType.java b/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/MIVarInfoType.java
deleted file mode 100644
index 2c0d88b9791..00000000000
--- a/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/MIVarInfoType.java
+++ /dev/null
@@ -1,51 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.cdt.debug.mi.core.command;
-
-import org.eclipse.cdt.debug.mi.core.MIException;
-import org.eclipse.cdt.debug.mi.core.output.MIInfo;
-import org.eclipse.cdt.debug.mi.core.output.MIOutput;
-import org.eclipse.cdt.debug.mi.core.output.MIVarInfoTypeInfo;
-
-/**
- *
- * -var-info-type NAME
- *
- * Returns the type of the specified variable NAME. The type is
- * returned as a string in the same format as it is output by the GDB CLI:
- *
- * type=TYPENAME
- *
- */
-public class MIVarInfoType extends MICommand
-{
- public MIVarInfoType(String miVersion, String name) {
- super(miVersion, "-var-info-type", new String[]{name}); //$NON-NLS-1$
- }
-
- public MIVarInfoTypeInfo getMIVarInfoTypeInfo() throws MIException {
- return (MIVarInfoTypeInfo)getMIInfo();
- }
-
- public MIInfo getMIInfo() throws MIException {
- MIInfo info = null;
- MIOutput out = getMIOutput();
- if (out != null) {
- info = new MIVarInfoTypeInfo(out);
- if (info.isError()) {
- throwMIException(info, out);
- }
- }
- return info;
- }
-
-}
diff --git a/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/MIVarListChildren.java b/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/MIVarListChildren.java
deleted file mode 100644
index d347adee021..00000000000
--- a/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/MIVarListChildren.java
+++ /dev/null
@@ -1,50 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.cdt.debug.mi.core.command;
-
-import org.eclipse.cdt.debug.mi.core.MIException;
-import org.eclipse.cdt.debug.mi.core.output.MIInfo;
-import org.eclipse.cdt.debug.mi.core.output.MIOutput;
-import org.eclipse.cdt.debug.mi.core.output.MIVarListChildrenInfo;
-
-/**
- *
- * -var-list-children NAME
- *
- * Returns a list of the children of the specified variable object:
- *
- * numchild=N,children={{name=NAME,
- * numchild=N,type=TYPE},(repeats N times)}
- *
- */
-public class MIVarListChildren extends MICommand
-{
- public MIVarListChildren(String miVersion, String name) {
- super(miVersion, "-var-list-children", new String[]{name}); //$NON-NLS-1$
- }
-
- public MIVarListChildrenInfo getMIVarListChildrenInfo() throws MIException {
- return (MIVarListChildrenInfo)getMIInfo();
- }
-
- public MIInfo getMIInfo() throws MIException {
- MIInfo info = null;
- MIOutput out = getMIOutput();
- if (out != null) {
- info = new MIVarListChildrenInfo(out);
- if (info.isError()) {
- throwMIException(info, out);
- }
- }
- return info;
- }
-}
diff --git a/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/MIVarSetFormat.java b/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/MIVarSetFormat.java
deleted file mode 100644
index c7961ed880f..00000000000
--- a/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/MIVarSetFormat.java
+++ /dev/null
@@ -1,57 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.cdt.debug.mi.core.command;
-
-import org.eclipse.cdt.debug.mi.core.MIFormat;
-
-/**
- *
- * -var-set-format NAME FORMAT-SPEC
- *
- * Sets the output format for the value of the object NAME to be
- * FORMAT-SPEC.
- *
- * The syntax for the FORMAT-SPEC is as follows:
- *
- * FORMAT-SPEC ==>
- * {binary | decimal | hexadecimal | octal | natural}
- *
- */
-public class MIVarSetFormat extends MICommand
-{
- public MIVarSetFormat(String miVersion, String name, int fmt) {
- super(miVersion, "-var-set-format"); //$NON-NLS-1$
- String format = "hexadecimal"; //$NON-NLS-1$
- switch (fmt) {
- case MIFormat.NATURAL:
- format = "natural"; //$NON-NLS-1$
- break;
- case MIFormat.DECIMAL:
- format = "decimal"; //$NON-NLS-1$
- break;
- case MIFormat.BINARY:
- format = "binary"; //$NON-NLS-1$
- break;
- case MIFormat.OCTAL:
- format = "octal"; //$NON-NLS-1$
- break;
- /*
- case MIFormat.HEXADECIMAL:
- case MIFormat.RAW:
- default:
- format = "hexadecimal";
- break;
- */
- }
- setParameters(new String[]{name, format});
- }
-}
diff --git a/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/MIVarShowAttributes.java b/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/MIVarShowAttributes.java
deleted file mode 100644
index 09e7e22a39e..00000000000
--- a/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/MIVarShowAttributes.java
+++ /dev/null
@@ -1,51 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.cdt.debug.mi.core.command;
-
-import org.eclipse.cdt.debug.mi.core.MIException;
-import org.eclipse.cdt.debug.mi.core.output.MIInfo;
-import org.eclipse.cdt.debug.mi.core.output.MIOutput;
-import org.eclipse.cdt.debug.mi.core.output.MIVarShowAttributesInfo;
-
-/**
- *
- * -var-show-attributes NAME
- *
- * List attributes of the specified variable object NAME:
- *
- * status=ATTR [ ( ,ATTR )* ]
- *
- * where ATTR is `{ { editable | noneditable } | TBD }'.
- *
- */
-public class MIVarShowAttributes extends MICommand
-{
- public MIVarShowAttributes(String miVersion, String name) {
- super(miVersion, "-var-show-attributes", new String[]{name}); //$NON-NLS-1$
- }
-
- public MIVarShowAttributesInfo getMIVarShowAttributesInfo() throws MIException {
- return (MIVarShowAttributesInfo)getMIInfo();
- }
-
- public MIInfo getMIInfo() throws MIException {
- MIInfo info = null;
- MIOutput out = getMIOutput();
- if (out != null) {
- info = new MIVarShowAttributesInfo(out);
- if (info.isError()) {
- throwMIException(info, out);
- }
- }
- return info;
- }
-}
diff --git a/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/MIVarShowFormat.java b/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/MIVarShowFormat.java
deleted file mode 100644
index 04d84be20ea..00000000000
--- a/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/MIVarShowFormat.java
+++ /dev/null
@@ -1,29 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.cdt.debug.mi.core.command;
-
-/**
- *
- * -var-show-format NAME
- *
- * Returns the format used to display the value of the object NAME.
- *
- * FORMAT ==>
- * FORMAT-SPEC
- *
- */
-public class MIVarShowFormat extends MICommand
-{
- public MIVarShowFormat(String miVersion, String name) {
- super(miVersion, "-var-show-format", new String[]{name}); //$NON-NLS-1$
- }
-}
diff --git a/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/MIVarUpdate.java b/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/MIVarUpdate.java
deleted file mode 100644
index b4614f0bba1..00000000000
--- a/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/MIVarUpdate.java
+++ /dev/null
@@ -1,53 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.cdt.debug.mi.core.command;
-
-import org.eclipse.cdt.debug.mi.core.MIException;
-import org.eclipse.cdt.debug.mi.core.output.MIInfo;
-import org.eclipse.cdt.debug.mi.core.output.MIOutput;
-import org.eclipse.cdt.debug.mi.core.output.MIVarUpdateInfo;
-
-/**
- *
- * -var-update {NAME | "*"}
- *
- * Update the value of the variable object NAME by evaluating its
- * expression after fetching all the new values from memory or registers.
- * A `*' causes all existing variable objects to be updated.
- *
- */
-public class MIVarUpdate extends MICommand {
-
- public MIVarUpdate(String miVersion) {
- this(miVersion, "*"); //$NON-NLS-1$
- }
-
- public MIVarUpdate(String miVersion, String name) {
- super(miVersion, "-var-update", new String[] { name }); //$NON-NLS-1$
- }
-
- public MIVarUpdateInfo getMIVarUpdateInfo() throws MIException {
- return (MIVarUpdateInfo)getMIInfo();
- }
-
- public MIInfo getMIInfo() throws MIException {
- MIInfo info = null;
- MIOutput out = getMIOutput();
- if (out != null) {
- info = new MIVarUpdateInfo(out);
- if (info.isError()) {
- throwMIException(info, out);
- }
- }
- return info;
- }
-}
diff --git a/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/MIVersion.java b/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/MIVersion.java
deleted file mode 100644
index 3100be3bc93..00000000000
--- a/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/MIVersion.java
+++ /dev/null
@@ -1,31 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2005 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.cdt.debug.mi.core.command;
-
-/**
- * TODO: Make this an enum type.
- * MI Version constants.
- */
-public class MIVersion {
-
- public static final String MI1 = "mi1"; //$NON-NLS-1$
- public static final String MI2 = "mi2"; //$NON-NLS-1$
- public static final String MI3 = "mi3"; //$NON-NLS-1$
-
- public static int compare(String v1, String v2) {
- return v1.compareToIgnoreCase(v2);
- }
-
- public static boolean equals(String v1, String v2) {
- return v1.equalsIgnoreCase(v2);
- }
-}
diff --git a/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/RawCommand.java b/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/RawCommand.java
deleted file mode 100644
index 63af4eb7cee..00000000000
--- a/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/RawCommand.java
+++ /dev/null
@@ -1,44 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.cdt.debug.mi.core.command;
-
-import org.eclipse.cdt.debug.mi.core.output.MIOutput;
-
-/**
- */
-public class RawCommand extends Command {
-
- String fRaw;
-
- public RawCommand(String operation) {
- fRaw = operation;
- }
-
- /* (non-Javadoc)
- * @see java.lang.Object#toString()
- */
- public String toString() {
- if (fRaw == null) {
- fRaw = "\n"; //$NON-NLS-1$;
- } else if (! fRaw.endsWith("\n")) { //$NON-NLS-1$
- fRaw += "\n"; //$NON-NLS-1$
- }
- return fRaw;
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.cdt.debug.mi.core.command.Command#getMIOutput()
- */
- public MIOutput getMIOutput() {
- return new MIOutput();
- }
-}
diff --git a/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/factories/CommandFactoriesMessages.java b/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/factories/CommandFactoriesMessages.java
deleted file mode 100644
index dae1a690b32..00000000000
--- a/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/factories/CommandFactoriesMessages.java
+++ /dev/null
@@ -1,33 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.mi.core.command.factories;
-
-import java.util.MissingResourceException;
-import java.util.ResourceBundle;
-
-public class CommandFactoriesMessages {
-
- private static final String BUNDLE_NAME = "org.eclipse.cdt.debug.mi.core.command.factories.CommandFactoriesMessages"; //$NON-NLS-1$
-
- private static final ResourceBundle RESOURCE_BUNDLE = ResourceBundle.getBundle( BUNDLE_NAME );
-
- private CommandFactoriesMessages() {
- }
-
- public static String getString( String key ) {
- try {
- return RESOURCE_BUNDLE.getString( key );
- }
- catch( MissingResourceException e ) {
- return '!' + key + '!';
- }
- }
-}
diff --git a/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/factories/CommandFactoriesMessages.properties b/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/factories/CommandFactoriesMessages.properties
deleted file mode 100644
index 51b73c66f9b..00000000000
--- a/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/factories/CommandFactoriesMessages.properties
+++ /dev/null
@@ -1,11 +0,0 @@
-###############################################################################
-# Copyright (c) 2006 QNX Software Systems and others.
-# All rights reserved. This program and the accompanying materials
-# are made available under the terms of the Eclipse Public License v1.0
-# which accompanies this distribution, and is available at
-# http://www.eclipse.org/legal/epl-v10.html
-#
-# Contributors:
-# QNX Software Systems - initial API and implementation
-###############################################################################
-CommandFactoryDescriptor.0=Error instantiating command factory.
diff --git a/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/factories/CommandFactoryDescriptor.java b/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/factories/CommandFactoryDescriptor.java
deleted file mode 100644
index 548607817d8..00000000000
--- a/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/factories/CommandFactoryDescriptor.java
+++ /dev/null
@@ -1,136 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.mi.core.command.factories;
-
-import java.util.ArrayList;
-import java.util.HashSet;
-import java.util.List;
-import java.util.Set;
-import java.util.StringTokenizer;
-import org.eclipse.cdt.debug.mi.core.MIPlugin;
-import org.eclipse.cdt.debug.mi.core.command.CommandFactory;
-import org.eclipse.core.runtime.CoreException;
-import org.eclipse.core.runtime.IConfigurationElement;
-import org.eclipse.core.runtime.IStatus;
-import org.eclipse.core.runtime.Status;
-
-/**
- * A command factory descriptor wrappers a configuration
- * element for a <code>commandFactory</code> extension.
- */
-public class CommandFactoryDescriptor {
-
- private final static String IDENTIFIER = "id"; //$NON-NLS-1$
- private final static String CLASS = "class"; //$NON-NLS-1$
- private final static String NAME = "name"; //$NON-NLS-1$
- private final static String DEBUGGER_ID = "debuggerID"; //$NON-NLS-1$
- private final static String MI_VERSIONS = "miVersions"; //$NON-NLS-1$
- private final static String DESCRIPTION = "description"; //$NON-NLS-1$
- private final static String PLATFORMS = "platforms"; //$NON-NLS-1$
-
- /**
- * The configuration element of the extension.
- */
- private IConfigurationElement fElement;
-
- /**
- * The set of the platforms supported by this command factory.
- */
- private Set fPlatforms;
-
- /**
- * The mi levels supported by this command factory.
- */
- private String[] fMIVersions = new String[0];
-
- /**
- * Constructor for CommandFactoryDescriptor.
- */
- protected CommandFactoryDescriptor( IConfigurationElement element ) {
- fElement = element;
- }
-
- protected IConfigurationElement getConfigurationElement() {
- return fElement;
- }
-
- public String getIdentifier() {
- return getConfigurationElement().getAttribute( IDENTIFIER );
- }
-
- public String getName() {
- return getConfigurationElement().getAttribute( NAME );
- }
-
- public String getDebuggerIdentifier() {
- return getConfigurationElement().getAttribute( DEBUGGER_ID );
- }
-
- public String[] getMIVersions() {
- if ( fMIVersions.length == 0 ) {
- String miVersions = getConfigurationElement().getAttribute( MI_VERSIONS );
- if ( miVersions == null || miVersions.trim().length() == 0 )
- miVersions = "mi"; //$NON-NLS-1$
- StringTokenizer tokenizer = new StringTokenizer( miVersions, "," ); //$NON-NLS-1$
- List list = new ArrayList( tokenizer.countTokens() );
- while( tokenizer.hasMoreTokens() ) {
- list.add( tokenizer.nextToken().trim() );
- }
- fMIVersions = (String[])list.toArray( new String[list.size()] );
- }
- return fMIVersions;
- }
-
- public String getDescription() {
- String desc = getConfigurationElement().getAttribute( DESCRIPTION );
- if ( isEmpty( desc ) ) {
- desc =""; //$NON-NLS-1$
- }
- return desc;
- }
-
- protected Set getSupportedPlatforms() {
- if ( fPlatforms == null ) {
- String platforms = getConfigurationElement().getAttribute( PLATFORMS );
- if ( platforms == null ) {
- return new HashSet( 0 );
- }
- StringTokenizer tokenizer = new StringTokenizer( platforms, "," ); //$NON-NLS-1$
- fPlatforms = new HashSet( tokenizer.countTokens() );
- while( tokenizer.hasMoreTokens() ) {
- fPlatforms.add( tokenizer.nextToken().trim() );
- }
- }
- return fPlatforms;
- }
-
- public boolean supportsPlatform( String platform ) {
- Set all = getSupportedPlatforms();
- return all.isEmpty() || all.contains( "*" ) || all.contains( platform ); //$NON-NLS-1$
- }
-
- public String[] getSupportedPlatformList() {
- Set platforms = getSupportedPlatforms();
- return (String[])platforms.toArray( new String[platforms.size()] );
- }
-
- public CommandFactory getCommandFactory() throws CoreException {
- Object clazz = getConfigurationElement().createExecutableExtension( CLASS );
- if ( clazz instanceof CommandFactory ) {
- return (CommandFactory)clazz;
- }
- throw new CoreException( new Status( IStatus.ERROR, MIPlugin.getUniqueIdentifier(), -1, CommandFactoriesMessages.getString( "CommandFactoryDescriptor.0" ), null ) ); //$NON-NLS-1$
- }
-
- private boolean isEmpty( String str ) {
- return ( str == null || str.trim().length() == 0 );
- }
-}
diff --git a/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/factories/CommandFactoryManager.java b/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/factories/CommandFactoryManager.java
deleted file mode 100644
index ed119fef20d..00000000000
--- a/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/factories/CommandFactoryManager.java
+++ /dev/null
@@ -1,85 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.mi.core.command.factories;
-
-import java.util.ArrayList;
-import java.util.Iterator;
-import java.util.List;
-import org.eclipse.cdt.debug.mi.core.MIPlugin;
-import org.eclipse.cdt.debug.mi.core.command.CommandFactory;
-import org.eclipse.core.runtime.CoreException;
-import org.eclipse.core.runtime.IConfigurationElement;
-import org.eclipse.core.runtime.IExtensionPoint;
-import org.eclipse.core.runtime.Platform;
-
-/**
- * Manages command factories.
- */
-public class CommandFactoryManager {
-
- private List fDescriptors = null;
-
- public CommandFactoryDescriptor[] getDescriptors() {
- List factories = getDescriptorList();
- return (CommandFactoryDescriptor[])factories.toArray( new CommandFactoryDescriptor[factories.size()] );
- }
-
- public CommandFactoryDescriptor getDefaultDescriptor( String debuggerID ) {
- // TODO: temporary
- CommandFactoryDescriptor[] descriptors = getDescriptors( debuggerID );
- return descriptors[0];
- }
-
- public CommandFactoryDescriptor[] getDescriptors( String debuggerID ) {
- String platform = Platform.getOS();
- List all = getDescriptorList();
- ArrayList list = new ArrayList( all.size() );
- Iterator it = all.iterator();
- while( it.hasNext() ) {
- CommandFactoryDescriptor desc = (CommandFactoryDescriptor)it.next();
- if ( desc.getDebuggerIdentifier().equals( debuggerID ) && desc.supportsPlatform( platform ) ) {
- list.add( desc );
- }
- }
- return (CommandFactoryDescriptor[])list.toArray( new CommandFactoryDescriptor[list.size()] );
- }
-
- public CommandFactory getCommandFactory( String factoryID ) throws CoreException {
- List all = getDescriptorList();
- Iterator it = all.iterator();
- while( it.hasNext() ) {
- CommandFactoryDescriptor desc = (CommandFactoryDescriptor)it.next();
- if ( desc.getIdentifier().equals( factoryID ) ) {
- return desc.getCommandFactory();
- }
- }
- return null;
- }
-
- private List getDescriptorList() {
- if ( fDescriptors == null )
- initializeDescriptorList();
- return fDescriptors;
- }
-
- private synchronized void initializeDescriptorList() {
- if ( fDescriptors == null ) {
- IExtensionPoint extensionPoint = Platform.getExtensionRegistry().getExtensionPoint( MIPlugin.getUniqueIdentifier(), MIPlugin.EXTENSION_POINT_COMMAND_FACTORIES );
- IConfigurationElement[] infos = extensionPoint.getConfigurationElements();
- fDescriptors = new ArrayList( infos.length );
- for( int i = 0; i < infos.length; i++ ) {
- IConfigurationElement configurationElement = infos[i];
- CommandFactoryDescriptor factory = new CommandFactoryDescriptor( configurationElement );
- fDescriptors.add( factory );
- }
- }
- }
-}
diff --git a/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/factories/StandardCommandFactory.java b/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/factories/StandardCommandFactory.java
deleted file mode 100644
index 13341aeb516..00000000000
--- a/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/factories/StandardCommandFactory.java
+++ /dev/null
@@ -1,33 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.mi.core.command.factories;
-
-import org.eclipse.cdt.debug.mi.core.command.CommandFactory;
-
-/**
- * The "standard" command factory.
- */
-public class StandardCommandFactory extends CommandFactory {
-
- /**
- * Constructor for StandardCommandFactory.
- */
- public StandardCommandFactory() {
- super();
- }
-
- /**
- * Constructor for StandardCommandFactory.
- */
- public StandardCommandFactory( String miVersion ) {
- super( miVersion );
- }
-}
diff --git a/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/factories/linux/LinuxCLIInfoSharedLibrary.java b/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/factories/linux/LinuxCLIInfoSharedLibrary.java
deleted file mode 100644
index f1de8a84a84..00000000000
--- a/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/factories/linux/LinuxCLIInfoSharedLibrary.java
+++ /dev/null
@@ -1,37 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.mi.core.command.factories.linux;
-
-import org.eclipse.cdt.debug.mi.core.MIException;
-import org.eclipse.cdt.debug.mi.core.command.CLIInfoSharedLibrary;
-import org.eclipse.cdt.debug.mi.core.output.MIInfo;
-import org.eclipse.cdt.debug.mi.core.output.MIOutput;
-
-/**
- * Linux version of "info shared library".
- */
-public class LinuxCLIInfoSharedLibrary extends CLIInfoSharedLibrary {
-
- /* (non-Javadoc)
- * @see org.eclipse.cdt.debug.mi.core.command.CLIInfoSharedLibrary#getMIInfo()
- */
- public MIInfo getMIInfo() throws MIException {
- MIInfo info = null;
- MIOutput out = getMIOutput();
- if ( out != null ) {
- info = new LinuxCLIInfoSharedLibraryInfo( out );
- if ( info.isError() ) {
- throwMIException( info, out );
- }
- }
- return info;
- }
-}
diff --git a/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/factories/linux/LinuxCLIInfoSharedLibraryInfo.java b/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/factories/linux/LinuxCLIInfoSharedLibraryInfo.java
deleted file mode 100644
index 4f5f2f58649..00000000000
--- a/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/factories/linux/LinuxCLIInfoSharedLibraryInfo.java
+++ /dev/null
@@ -1,71 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.mi.core.command.factories.linux;
-
-import java.util.List;
-import org.eclipse.cdt.debug.mi.core.output.CLIInfoSharedLibraryInfo;
-import org.eclipse.cdt.debug.mi.core.output.MIOutput;
-import org.eclipse.cdt.debug.mi.core.output.MIShared;
-
-/**
- * Linux specific parser of the "info shared" output.
- */
-public class LinuxCLIInfoSharedLibraryInfo extends CLIInfoSharedLibraryInfo {
-
- /**
- * Constructor for LinuxCLIInfoSharedLibraryInfo.
- */
- public LinuxCLIInfoSharedLibraryInfo( MIOutput out ) {
- super( out );
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.cdt.debug.mi.core.output.CLIInfoSharedLibraryInfo#parseShared(java.lang.String, java.util.List)
- */
- protected void parseShared( String str, List aList ) {
- if ( str.length() > 0 && !str.startsWith( "From" ) ) { //$NON-NLS-1$
- // Pass the header
- int index = -1;
- String from = ""; //$NON-NLS-1$
- String to = ""; //$NON-NLS-1$
- boolean syms = false;
- String name = ""; //$NON-NLS-1$
- for( int i = 0; (index = str.lastIndexOf( ' ' )) != -1 || i <= 3; i++ ) {
- if ( index == -1 ) {
- index = 0;
- }
- String sub = str.substring( index ).trim();
- // move to previous column
- str = str.substring( 0, index ).trim();
- switch( i ) {
- case 0:
- name = sub;
- break;
- case 1:
- if ( sub.equalsIgnoreCase( "Yes" ) ) { //$NON-NLS-1$
- syms = true;
- }
- break;
- case 2: // second column is "To"
- to = sub;
- break;
- case 3: // first column is "From"
- from = sub;
- break;
- }
- }
- if ( name.length() > 0 ) {
- MIShared s = new MIShared( from, to, syms, name );
- aList.add( s );
- }
- }
- }
-}
diff --git a/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/factories/linux/StandardLinuxCommandFactory.java b/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/factories/linux/StandardLinuxCommandFactory.java
deleted file mode 100644
index cc42b57e251..00000000000
--- a/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/factories/linux/StandardLinuxCommandFactory.java
+++ /dev/null
@@ -1,72 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.mi.core.command.factories.linux;
-
-import org.eclipse.cdt.debug.mi.core.command.CLIInfoSharedLibrary;
-import org.eclipse.cdt.debug.mi.core.command.MIGDBSetNewConsole;
-import org.eclipse.cdt.debug.mi.core.command.factories.StandardCommandFactory;
-
-/**
- * Command factory for the standard gdb/mi protocol for Linux.
- */
-public class StandardLinuxCommandFactory extends StandardCommandFactory {
-
- /**
- * Constructor for StandardLinuxCommandFactory.
- */
- public StandardLinuxCommandFactory() {
- super();
- }
-
- /**
- * Constructor for StandardLinuxCommandFactory.
- */
- public StandardLinuxCommandFactory( String miVersion ) {
- super( miVersion );
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.cdt.debug.mi.core.command.CommandFactory#createCLIInfoSharedLibrary()
- */
- public CLIInfoSharedLibrary createCLIInfoSharedLibrary() {
- return new LinuxCLIInfoSharedLibrary();
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.cdt.debug.mi.core.command.CommandFactory#createMIGDBSetNewConsole()
- */
- public MIGDBSetNewConsole createMIGDBSetNewConsole() {
- // Suppress "set new-console" - returns error on Linux
- return new MIGDBSetNewConsole( getMIVersion() ) {
-
- /* (non-Javadoc)
- * @see org.eclipse.cdt.debug.mi.core.command.MICommand#getOperation()
- */
- public String getOperation() {
- return ""; //$NON-NLS-1$
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.cdt.debug.mi.core.command.MICommand#getOptions()
- */
- public String[] getOptions() {
- return new String[0];
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.cdt.debug.mi.core.command.MICommand#getParameters()
- */
- public String[] getParameters() {
- return new String[0];
- }
- };
- }
-}
diff --git a/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/factories/macos/MacOSMIEnvironmentCD.java b/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/factories/macos/MacOSMIEnvironmentCD.java
deleted file mode 100644
index b9905acb40b..00000000000
--- a/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/factories/macos/MacOSMIEnvironmentCD.java
+++ /dev/null
@@ -1,30 +0,0 @@
-/**********************************************************************
- * Copyright (c) 2006 Nokia and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * Nokia - Initial API and implementation
-***********************************************************************/
-package org.eclipse.cdt.debug.mi.core.command.factories.macos;
-
-import org.eclipse.cdt.debug.mi.core.command.MIEnvironmentCD;
-
-public class MacOSMIEnvironmentCD extends MIEnvironmentCD {
-
- public MacOSMIEnvironmentCD(String miVersion, String path) {
- super(miVersion, path);
- this.setOperation("cd");//$NON-NLS-1$
- }
-
- protected String parametersToString() {
- String[] parameters = getParameters();
- if (parameters != null && parameters.length == 1) {
- return '"' + parameters[0] + '"';
- }
- return super.parametersToString();
- }
-
-}
diff --git a/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/factories/macos/StandardMacOSCommandFactory.java b/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/factories/macos/StandardMacOSCommandFactory.java
deleted file mode 100644
index c4d3c6b0842..00000000000
--- a/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/factories/macos/StandardMacOSCommandFactory.java
+++ /dev/null
@@ -1,36 +0,0 @@
-/**********************************************************************
- * Copyright (c) 2006 Nokia and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * Nokia - Initial API and implementation
-***********************************************************************/
-package org.eclipse.cdt.debug.mi.core.command.factories.macos;
-
-import org.eclipse.cdt.debug.mi.core.command.MIEnvironmentCD;
-import org.eclipse.cdt.debug.mi.core.command.factories.StandardCommandFactory;
-
-public class StandardMacOSCommandFactory extends StandardCommandFactory {
-
- /**
- * Constructor for StandardMacOSCommandFactory.
- */
- public StandardMacOSCommandFactory() {
- super();
- }
-
- /**
- * Constructor for StandardMacOSCommandFactory.
- */
- public StandardMacOSCommandFactory( String miVersion ) {
- super( miVersion );
- }
-
- public MIEnvironmentCD createMIEnvironmentCD(String pathdir) {
- return new MacOSMIEnvironmentCD(getMIVersion(), pathdir);
- }
-
-}
diff --git a/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/factories/win32/CygwinCommandFactory.java b/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/factories/win32/CygwinCommandFactory.java
deleted file mode 100644
index 2244472aad4..00000000000
--- a/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/factories/win32/CygwinCommandFactory.java
+++ /dev/null
@@ -1,37 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.mi.core.command.factories.win32;
-
-import org.eclipse.cdt.debug.mi.core.command.MIEnvironmentDirectory;
-
-/**
- * Command factory for the gdb/mi protocol for CygWin environment.
- */
-public class CygwinCommandFactory extends StandardWinCommandFactory {
-
- /**
- * Constructor for CygwinCommandFactory.
- */
- public CygwinCommandFactory() {
- super();
- }
-
- /**
- * Constructor for CygwinCommandFactory.
- */
- public CygwinCommandFactory( String miVersion ) {
- super( miVersion );
- }
-
- public MIEnvironmentDirectory createMIEnvironmentDirectory(boolean reset, String[] pathdirs) {
- return new CygwinMIEnvironmentDirectory( getMIVersion(), reset, pathdirs );
- }
-}
diff --git a/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/factories/win32/CygwinMIEnvironmentCD.java b/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/factories/win32/CygwinMIEnvironmentCD.java
deleted file mode 100644
index 97d67dfb5ea..00000000000
--- a/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/factories/win32/CygwinMIEnvironmentCD.java
+++ /dev/null
@@ -1,52 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2002, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.cdt.debug.mi.core.command.factories.win32;
-
-import java.io.ByteArrayOutputStream;
-import java.io.IOException;
-import org.eclipse.cdt.core.CommandLauncher;
-import org.eclipse.core.runtime.Path;
-
-/**
- * CygwinMIEnvironmentCD
- */
-public class CygwinMIEnvironmentCD extends WinMIEnvironmentCD {
-
- CygwinMIEnvironmentCD( String miVersion, String path ) {
- super( miVersion, path );
- // Use the cygpath utility to convert the path
- CommandLauncher launcher = new CommandLauncher();
- ByteArrayOutputStream out = new ByteArrayOutputStream();
- ByteArrayOutputStream err = new ByteArrayOutputStream();
- String newPath = null;
- launcher.execute( new Path( "cygpath" ), //$NON-NLS-1$
- new String[]{ "-u", path }, //$NON-NLS-1$
- new String[0], new Path( "." ) ); //$NON-NLS-1$
- if ( launcher.waitAndRead( out, err ) == CommandLauncher.OK ) {
- newPath = out.toString();
- if ( newPath != null ) {
- newPath = newPath.trim();
- if ( newPath.length() > 0 ) {
- path = newPath;
- }
- }
- }
- try {
- out.close();
- err.close();
- }
- catch( IOException e ) {
- // ignore.
- }
- setParameters( new String[]{ path } );
- }
-}
diff --git a/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/factories/win32/CygwinMIEnvironmentDirectory.java b/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/factories/win32/CygwinMIEnvironmentDirectory.java
deleted file mode 100644
index 09572ac54fd..00000000000
--- a/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/factories/win32/CygwinMIEnvironmentDirectory.java
+++ /dev/null
@@ -1,99 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2002, 2006 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * IBM - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.mi.core.command.factories.win32;
-
-import java.io.ByteArrayOutputStream;
-import java.util.StringTokenizer;
-
-import org.eclipse.cdt.core.CommandLauncher;
-import org.eclipse.cdt.debug.mi.core.command.MIEnvironmentDirectory;
-import org.eclipse.core.runtime.Path;
-
-/**
- * Cygwin implementation of the MIEnvironmentDirectory command. In the cygwin
- * environment, the paths are DOS paths and need to be converted to cygwin
- * style paths before passing them to gdb.
- */
-public class CygwinMIEnvironmentDirectory extends MIEnvironmentDirectory {
-
- final static private int BUFFER_SIZE = 1000;
-
- /**
- * To prevent to call "cygpath" for each folder (see //bugs.eclipse.org/bugs/show_bug.cgi?id=107202)
- * we use the "-p" option of "cygpath".
- * We can not convert the whole path in one shot because the size of the spawner's buffer is limited to 2049,
- * so we divide the path's folders into groups.
- */
- CygwinMIEnvironmentDirectory(String miVersion, boolean reset, String[] paths) {
- super(miVersion, reset, paths);
-
- String[] newpaths = new String[paths.length];
- int index = 0;
- while(index < paths.length) {
- int length = 0;
- StringBuffer sb = new StringBuffer(BUFFER_SIZE);
- for (int i = index; i < paths.length; i++) {
- if (length + paths[i].length() < BUFFER_SIZE) {
- length += paths[i].length();
- newpaths[i] = paths[i];
- sb.append(paths[i]).append(';');
- ++length;
- }
- else {
- convertPath(sb, newpaths, index);
- index = i;
- break;
- }
- if (i == paths.length - 1) {
- convertPath(sb, newpaths, index);
- index = paths.length;
- break;
- }
- }
- }
- setParameters(newpaths);
- }
-
- /**
- * Converts a path to the cygwin path and stores the resulting
- * folders into the given array starting from <code>index</code>.
- */
- private void convertPath(StringBuffer sb, String[] paths, int index) {
- if (sb.charAt(sb.length() - 1) == ';')
- sb.deleteCharAt(sb.length() - 1);
- String result = convertPath0(sb.toString());
- StringTokenizer st = new StringTokenizer(result, ":"); //$NON-NLS-1$
- int j = index;
- while(st.hasMoreTokens()) {
- if (j >= paths.length)
- break;
- paths[j++] = st.nextToken();
- }
- }
-
- /**
- * Converts a windows type path into the cygwin type path using "cygpath"
- * with the "-p" option.
- */
- private String convertPath0(String path) {
- String result = path;
- CommandLauncher launcher = new CommandLauncher();
- ByteArrayOutputStream out = new ByteArrayOutputStream();
- launcher.execute(
- new Path("cygpath"), //$NON-NLS-1$
- new String[] { "-p", "-u", path }, //$NON-NLS-1$ //$NON-NLS-2$
- new String[0],
- new Path(".")); //$NON-NLS-1$
- if (launcher.waitAndRead(out, out) == CommandLauncher.OK)
- result = out.toString().trim();
- return result;
- }
-}
diff --git a/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/factories/win32/StandardWinCommandFactory.java b/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/factories/win32/StandardWinCommandFactory.java
deleted file mode 100644
index 2b8134075e9..00000000000
--- a/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/factories/win32/StandardWinCommandFactory.java
+++ /dev/null
@@ -1,142 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.mi.core.command.factories.win32;
-
-import org.eclipse.cdt.debug.mi.core.command.CLIInfoSharedLibrary;
-import org.eclipse.cdt.debug.mi.core.command.MIEnvironmentCD;
-import org.eclipse.cdt.debug.mi.core.command.MIGDBSetAutoSolib;
-import org.eclipse.cdt.debug.mi.core.command.MIGDBSetSolibSearchPath;
-import org.eclipse.cdt.debug.mi.core.command.MIGDBShowSolibSearchPath;
-import org.eclipse.cdt.debug.mi.core.command.factories.StandardCommandFactory;
-
-/**
- * Command factory for the standard gdb/mi protocol for Windows.
- */
-public class StandardWinCommandFactory extends StandardCommandFactory {
-
- /**
- * Constructor for StandardWinCommandFactory.
- */
- public StandardWinCommandFactory() {
- super();
- }
-
- /**
- * Constructor for StandardWinCommandFactory.
- */
- public StandardWinCommandFactory( String miVersion ) {
- super( miVersion );
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.cdt.debug.mi.core.command.CommandFactory#createMIEnvironmentCD(java.lang.String)
- */
- public MIEnvironmentCD createMIEnvironmentCD( String pathdir ) {
- return new WinMIEnvironmentCD( getMIVersion(), pathdir );
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.cdt.debug.mi.core.command.CommandFactory#createCLIInfoSharedLibrary()
- */
- public CLIInfoSharedLibrary createCLIInfoSharedLibrary() {
- return new WinCLIInfoSharedLibrary();
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.cdt.debug.mi.core.command.CommandFactory#createMIGDBSetAutoSolib(boolean)
- */
- public MIGDBSetAutoSolib createMIGDBSetAutoSolib( boolean set ) {
- // Suppress "set auto-solib" - returns error on Windows
- return new MIGDBSetAutoSolib( getMIVersion(), true ) {
-
- /* (non-Javadoc)
- * @see org.eclipse.cdt.debug.mi.core.command.MICommand#getOperation()
- */
- public String getOperation() {
- return ""; //$NON-NLS-1$
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.cdt.debug.mi.core.command.MICommand#getOptions()
- */
- public String[] getOptions() {
- return new String[0];
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.cdt.debug.mi.core.command.MICommand#getParameters()
- */
- public String[] getParameters() {
- return new String[0];
- }
- };
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.cdt.debug.mi.core.command.CommandFactory#createMIGDBShowSolibSearchPath()
- */
- public MIGDBShowSolibSearchPath createMIGDBShowSolibSearchPath() {
- // Suppress "show solib-search-path" - returns error on Windows
- return new MIGDBShowSolibSearchPath( getMIVersion() ) {
-
- /* (non-Javadoc)
- * @see org.eclipse.cdt.debug.mi.core.command.MICommand#getOperation()
- */
- public String getOperation() {
- return ""; //$NON-NLS-1$
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.cdt.debug.mi.core.command.MICommand#getOptions()
- */
- public String[] getOptions() {
- return new String[0];
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.cdt.debug.mi.core.command.MICommand#getParameters()
- */
- public String[] getParameters() {
- return new String[0];
- }
- };
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.cdt.debug.mi.core.command.CommandFactory#createMIGDBSetSolibSearchPath(java.lang.String[])
- */
- public MIGDBSetSolibSearchPath createMIGDBSetSolibSearchPath( String[] params ) {
- // Suppress "set solib-search-path" - returns error on Windows
- return new MIGDBSetSolibSearchPath( getMIVersion(), params ) {
-
- /* (non-Javadoc)
- * @see org.eclipse.cdt.debug.mi.core.command.MICommand#getOperation()
- */
- public String getOperation() {
- return ""; //$NON-NLS-1$
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.cdt.debug.mi.core.command.MICommand#getOptions()
- */
- public String[] getOptions() {
- return new String[0];
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.cdt.debug.mi.core.command.MICommand#getParameters()
- */
- public String[] getParameters() {
- return new String[0];
- }
- };
- }
-}
diff --git a/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/factories/win32/WinCLIInfoSharedLibrary.java b/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/factories/win32/WinCLIInfoSharedLibrary.java
deleted file mode 100644
index 0025c734d1a..00000000000
--- a/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/factories/win32/WinCLIInfoSharedLibrary.java
+++ /dev/null
@@ -1,37 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.mi.core.command.factories.win32;
-
-import org.eclipse.cdt.debug.mi.core.MIException;
-import org.eclipse.cdt.debug.mi.core.command.CLIInfoSharedLibrary;
-import org.eclipse.cdt.debug.mi.core.output.MIInfo;
-import org.eclipse.cdt.debug.mi.core.output.MIOutput;
-
-/**
- * Windows version of "info shared library".
- */
-public class WinCLIInfoSharedLibrary extends CLIInfoSharedLibrary {
-
- /* (non-Javadoc)
- * @see org.eclipse.cdt.debug.mi.core.command.CLIInfoSharedLibrary#getMIInfo()
- */
- public MIInfo getMIInfo() throws MIException {
- MIInfo info = null;
- MIOutput out = getMIOutput();
- if ( out != null ) {
- info = new WinCLIInfoSharedLibraryInfo( out );
- if ( info.isError() ) {
- throwMIException( info, out );
- }
- }
- return info;
- }
-}
diff --git a/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/factories/win32/WinCLIInfoSharedLibraryInfo.java b/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/factories/win32/WinCLIInfoSharedLibraryInfo.java
deleted file mode 100644
index 53ee5ef1802..00000000000
--- a/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/factories/win32/WinCLIInfoSharedLibraryInfo.java
+++ /dev/null
@@ -1,50 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.mi.core.command.factories.win32;
-
-import java.util.List;
-import org.eclipse.cdt.debug.mi.core.output.CLIInfoSharedLibraryInfo;
-import org.eclipse.cdt.debug.mi.core.output.MIOutput;
-import org.eclipse.cdt.debug.mi.core.output.MIShared;
-
-/**
- * Windows specific parser of the "info shared" output.
- */
-public class WinCLIInfoSharedLibraryInfo extends CLIInfoSharedLibraryInfo {
-
- public WinCLIInfoSharedLibraryInfo( MIOutput out ) {
- super( out );
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.cdt.debug.mi.core.output.CLIInfoSharedLibraryInfo#parseShared(java.lang.String, java.util.List)
- */
- protected void parseShared( String str, List aList ) {
- // skip the header (DLL Name)
- if ( !str.startsWith( "DLL" ) ) { //$NON-NLS-1$
- String from = ""; //$NON-NLS-1$
- String to = ""; //$NON-NLS-1$
- boolean syms = true;
- int index = str.lastIndexOf( ' ' );
- if ( index > 0 ) {
- String sub = str.substring( index ).trim();
- // Go figure they do not print the "0x" to indicate hexadecimal!!
- if ( !sub.startsWith( "0x" ) ) { //$NON-NLS-1$
- sub = "0x" + sub; //$NON-NLS-1$
- }
- from = sub;
- str = str.substring( 0, index ).trim();
- }
- MIShared s = new MIShared( from, to, syms, str.trim() );
- aList.add( s );
- }
- }
-}
diff --git a/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/factories/win32/WinMIEnvironmentCD.java b/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/factories/win32/WinMIEnvironmentCD.java
deleted file mode 100644
index b1bc4b04c7e..00000000000
--- a/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/factories/win32/WinMIEnvironmentCD.java
+++ /dev/null
@@ -1,50 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.mi.core.command.factories.win32;
-
-import org.eclipse.cdt.debug.mi.core.command.MIEnvironmentCD;
-
-/**
- * Comment for .
- */
-public class WinMIEnvironmentCD extends MIEnvironmentCD {
-
- public WinMIEnvironmentCD( String miVersion, String path ) {
- super( miVersion, path );
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.cdt.debug.mi.core.command.MICommand#parametersToString()
- */
- protected String parametersToString() {
- String[] params = getParameters();
- if ( params != null && params.length == 1 ) {
- StringBuffer sb = new StringBuffer();
- // We need to escape the double quotes and the backslash.
- String param = params[0];
- for( int j = 0; j < param.length(); j++ ) {
- char c = param.charAt( j );
- if ( c == '"' || c == '\\' ) {
- sb.append( '\\' );
- }
- sb.append( c );
- }
- // If the string contains spaces instead of escaping
- // surround the parameter with double quotes.
- if ( containsWhitespace( param ) ) {
- sb.insert( 0, '"' );
- sb.append( '"' );
- }
- return sb.toString().trim();
- }
- return super.parametersToString();
- }
-}
diff --git a/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/event/MIBreakpointChangedEvent.java b/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/event/MIBreakpointChangedEvent.java
deleted file mode 100644
index ded3a06ac81..00000000000
--- a/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/event/MIBreakpointChangedEvent.java
+++ /dev/null
@@ -1,37 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.mi.core.event;
-
-import org.eclipse.cdt.debug.mi.core.MISession;
-
-
-
-/**
- *
- */
-public class MIBreakpointChangedEvent extends MIChangedEvent {
-
- int no;
-
- public MIBreakpointChangedEvent(MISession source, int number) {
- this(source, 0, number);
- }
-
- public MIBreakpointChangedEvent(MISession source, int id, int number) {
- super(source, id);
- no = number;
- }
-
- public int getNumber() {
- return no;
- }
-
-}
diff --git a/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/event/MIBreakpointCreatedEvent.java b/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/event/MIBreakpointCreatedEvent.java
deleted file mode 100644
index d9a43d0a20c..00000000000
--- a/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/event/MIBreakpointCreatedEvent.java
+++ /dev/null
@@ -1,37 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.mi.core.event;
-
-import org.eclipse.cdt.debug.mi.core.MISession;
-
-
-
-/**
- *
- */
-public class MIBreakpointCreatedEvent extends MICreatedEvent {
-
- int no;
-
- public MIBreakpointCreatedEvent(MISession source, int number) {
- this(source, 0, number);
- }
-
- public MIBreakpointCreatedEvent(MISession source, int id, int number) {
- super(source, id);
- no = number;
- }
-
- public int getNumber() {
- return no;
- }
-
-}
diff --git a/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/event/MIBreakpointDeletedEvent.java b/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/event/MIBreakpointDeletedEvent.java
deleted file mode 100644
index 224a21be73d..00000000000
--- a/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/event/MIBreakpointDeletedEvent.java
+++ /dev/null
@@ -1,37 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.mi.core.event;
-
-import org.eclipse.cdt.debug.mi.core.MISession;
-
-
-
-/**
- *
- */
-public class MIBreakpointDeletedEvent extends MIDestroyedEvent {
-
- int no;
-
- public MIBreakpointDeletedEvent(MISession source, int number) {
- this(source, 0, number);
- }
-
- public MIBreakpointDeletedEvent(MISession source, int id, int number) {
- super(source, id);
- no = number;
- }
-
- public int getNumber() {
- return no;
- }
-
-}
diff --git a/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/event/MIBreakpointHitEvent.java b/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/event/MIBreakpointHitEvent.java
deleted file mode 100644
index 61f688fce88..00000000000
--- a/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/event/MIBreakpointHitEvent.java
+++ /dev/null
@@ -1,94 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.mi.core.event;
-
-import org.eclipse.cdt.debug.mi.core.MISession;
-import org.eclipse.cdt.debug.mi.core.output.MIConst;
-import org.eclipse.cdt.debug.mi.core.output.MIExecAsyncOutput;
-import org.eclipse.cdt.debug.mi.core.output.MIFrame;
-import org.eclipse.cdt.debug.mi.core.output.MIResult;
-import org.eclipse.cdt.debug.mi.core.output.MIResultRecord;
-import org.eclipse.cdt.debug.mi.core.output.MITuple;
-import org.eclipse.cdt.debug.mi.core.output.MIValue;
-
-/**
- * ^stopped,reason="breakpoint-hit",bkptno="1",thread-id="0",frame={addr="0x08048468",func="main",args=[{name="argc",value="1"},{name="argv",value="0xbffff18c"}],file="hello.c",line="4"}
- *
- */
-public class MIBreakpointHitEvent extends MIStoppedEvent {
-
- int bkptno;
- MIFrame frame;
-
- public MIBreakpointHitEvent(MISession source, MIExecAsyncOutput record) {
- super(source, record);
- parse();
- }
-
- public MIBreakpointHitEvent(MISession source, MIResultRecord record) {
- super(source, record);
- parse();
- }
-
- public int getNumber() {
- return bkptno;
- }
-
- public MIFrame getMIFrame() {
- return frame;
- }
-
- public String toString() {
- StringBuffer buffer = new StringBuffer();
- buffer.append("number=").append(bkptno).append('\n'); //$NON-NLS-1$
- buffer.append("thread-id=").append(getThreadId()).append('\n'); //$NON-NLS-1$
- buffer.append(frame.toString());
- return buffer.toString();
- }
-
- void parse () {
- MIResult[] results = null;
- MIExecAsyncOutput exec = getMIExecAsyncOutput();
- MIResultRecord rr = getMIResultRecord();
- if (exec != null) {
- results = exec.getMIResults();
- } else if (rr != null) {
- results = rr.getMIResults();
- }
- if (results != null) {
- for (int i = 0; i < results.length; i++) {
- String var = results[i].getVariable();
- MIValue value = results[i].getMIValue();
- String str = ""; //$NON-NLS-1$
- if (value != null && value instanceof MIConst) {
- str = ((MIConst)value).getString();
- }
-
- if (var.equals("bkptno")) { //$NON-NLS-1$
- try {
- bkptno = Integer.parseInt(str.trim());
- } catch (NumberFormatException e) {
- }
- } else if (var.equals("thread-id")) { //$NON-NLS-1$
- try {
- int id = Integer.parseInt(str.trim());
- setThreadId(id);
- } catch (NumberFormatException e) {
- }
- } else if (var.equals("frame")) { //$NON-NLS-1$
- if (value instanceof MITuple) {
- frame = new MIFrame((MITuple)value);
- }
- }
- }
- }
- }
-}
diff --git a/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/event/MIChangedEvent.java b/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/event/MIChangedEvent.java
deleted file mode 100644
index c7d886a93a5..00000000000
--- a/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/event/MIChangedEvent.java
+++ /dev/null
@@ -1,25 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.mi.core.event;
-
-import org.eclipse.cdt.debug.mi.core.MISession;
-
-
-
-/**
- * This can not be detected yet by gdb/mi.
- *
- */
-public abstract class MIChangedEvent extends MIEvent {
- public MIChangedEvent(MISession source, int id) {
- super(source, id);
- }
-}
diff --git a/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/event/MICreatedEvent.java b/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/event/MICreatedEvent.java
deleted file mode 100644
index 00c7e7036dc..00000000000
--- a/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/event/MICreatedEvent.java
+++ /dev/null
@@ -1,25 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.mi.core.event;
-
-import org.eclipse.cdt.debug.mi.core.MISession;
-
-
-
-/**
- * This can not be detected yet by gdb/mi.
- *
- */
-public abstract class MICreatedEvent extends MIEvent {
- public MICreatedEvent(MISession source, int id) {
- super(source, id);
- }
-}
diff --git a/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/event/MIDestroyedEvent.java b/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/event/MIDestroyedEvent.java
deleted file mode 100644
index 2f52bbfacbd..00000000000
--- a/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/event/MIDestroyedEvent.java
+++ /dev/null
@@ -1,25 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.mi.core.event;
-
-import org.eclipse.cdt.debug.mi.core.MISession;
-
-
-
-/**
- * This can not be detected yet by gdb/mi.
- *
- */
-public abstract class MIDestroyedEvent extends MIEvent {
- public MIDestroyedEvent(MISession source, int id) {
- super(source, id);
- }
-}
diff --git a/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/event/MIDetachedEvent.java b/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/event/MIDetachedEvent.java
deleted file mode 100644
index 47f83bac5c7..00000000000
--- a/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/event/MIDetachedEvent.java
+++ /dev/null
@@ -1,30 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.mi.core.event;
-
-import org.eclipse.cdt.debug.mi.core.MISession;
-
-
-
-/**
- *
- * ^running
- */
-public class MIDetachedEvent extends MIDestroyedEvent {
-
- public MIDetachedEvent(MISession source, int token) {
- super(source, token);
- }
-
- public String toString() {
- return "Detached"; //$NON-NLS-1$
- }
-}
diff --git a/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/event/MIErrorEvent.java b/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/event/MIErrorEvent.java
deleted file mode 100644
index 2555e00cebf..00000000000
--- a/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/event/MIErrorEvent.java
+++ /dev/null
@@ -1,80 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.mi.core.event;
-
-import org.eclipse.cdt.debug.mi.core.MISession;
-import org.eclipse.cdt.debug.mi.core.output.MIConst;
-import org.eclipse.cdt.debug.mi.core.output.MILogStreamOutput;
-import org.eclipse.cdt.debug.mi.core.output.MIOOBRecord;
-import org.eclipse.cdt.debug.mi.core.output.MIResult;
-import org.eclipse.cdt.debug.mi.core.output.MIResultRecord;
-import org.eclipse.cdt.debug.mi.core.output.MIStreamRecord;
-import org.eclipse.cdt.debug.mi.core.output.MIValue;
-
-
-
-/**
- * (gdb)
- * &"warning: Cannot insert breakpoint 2:\n"
- * &"Cannot access memory at address 0x8020a3\n"
- * 30^error,msg=3D"Cannot access memory at address 0x8020a3"=20
- */
-public class MIErrorEvent extends MIStoppedEvent {
-
- String msg = ""; //$NON-NLS-1$
- String log = ""; //$NON-NLS-1$
- MIOOBRecord[] oobs;
-
- public MIErrorEvent(MISession source, MIResultRecord rr, MIOOBRecord[] o) {
- super(source, rr);
- oobs = o;
- parse();
- }
-
- public String getMessage() {
- return msg;
- }
-
- public String getLogMessage() {
- return log;
- }
-
- void parse () {
- MIResultRecord rr = getMIResultRecord();
- if (rr != null) {
- MIResult[] results = rr.getMIResults();
- if (results != null) {
- for (int i = 0; i < results.length; i++) {
- String var = results[i].getVariable();
- MIValue value = results[i].getMIValue();
- String str = ""; //$NON-NLS-1$
- if (value instanceof MIConst) {
- str = ((MIConst)value).getString();
- }
-
- if (var.equals("msg")) { //$NON-NLS-1$
- msg = str;
- }
- }
- }
- if (oobs != null) {
- StringBuffer sb = new StringBuffer();
- for (int i = 0; i < oobs.length; i++) {
- if (oobs[i] instanceof MILogStreamOutput) {
- MIStreamRecord o = (MIStreamRecord)oobs[i];
- sb.append(o.getString());
- }
- }
- log = sb.toString();
- }
- }
- }
-}
diff --git a/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/event/MIEvent.java b/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/event/MIEvent.java
deleted file mode 100644
index f6501093d47..00000000000
--- a/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/event/MIEvent.java
+++ /dev/null
@@ -1,44 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.mi.core.event;
-
-import java.util.EventObject;
-
-import org.eclipse.cdt.debug.mi.core.MISession;
-
-/**
- */
-public abstract class MIEvent extends EventObject {
-
- int token;
- boolean propagate = true;
-
- public MIEvent(MISession session, int token) {
- super(session);
- this.token = token;
- }
-
- public int getToken() {
- return token;
- }
-
- public MISession getMISession() {
- return (MISession)getSource();
- }
-
- public boolean propagate() {
- return propagate;
- }
-
- public void setPropagate( boolean propagate ) {
- this.propagate = propagate;
- }
-}
diff --git a/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/event/MIFunctionFinishedEvent.java b/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/event/MIFunctionFinishedEvent.java
deleted file mode 100644
index 035cd3d9443..00000000000
--- a/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/event/MIFunctionFinishedEvent.java
+++ /dev/null
@@ -1,106 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.mi.core.event;
-
-import org.eclipse.cdt.debug.mi.core.MISession;
-import org.eclipse.cdt.debug.mi.core.output.MIConst;
-import org.eclipse.cdt.debug.mi.core.output.MIExecAsyncOutput;
-import org.eclipse.cdt.debug.mi.core.output.MIFrame;
-import org.eclipse.cdt.debug.mi.core.output.MIResult;
-import org.eclipse.cdt.debug.mi.core.output.MIResultRecord;
-import org.eclipse.cdt.debug.mi.core.output.MITuple;
-import org.eclipse.cdt.debug.mi.core.output.MIValue;
-
-/**
- * *stopped,reason="function-finished",thread-id="0",frame={addr="0x0804855a",func="main",args=[{name="argc",value="1"},{name="argv",value="0xbffff18c"}],file="hello.c",line="17"},gdb-result-var="$1",return-value="10"
- */
-public class MIFunctionFinishedEvent extends MIStoppedEvent {
-
- String gdbResult = ""; //$NON-NLS-1$
- String returnValue = ""; //$NON-NLS-1$
- String returnType = ""; //$NON-NLS-1$
-
- public MIFunctionFinishedEvent(MISession source, MIExecAsyncOutput async) {
- super(source, async);
- parse();
- }
-
- public MIFunctionFinishedEvent(MISession source, MIResultRecord record) {
- super(source, record);
- parse();
- }
-
- public String getGDBResultVar() {
- return gdbResult;
- }
-
- public String getReturnValue() {
- return returnValue;
- }
-
- public String getReturnType() {
- return returnType;
- }
-
- public String toString() {
- StringBuffer buffer = new StringBuffer();
- buffer.append("gdb-result-var=" + gdbResult + "\n"); //$NON-NLS-1$//$NON-NLS-2$
- buffer.append("return-value=" + returnValue + "\n"); //$NON-NLS-1$//$NON-NLS-2$
- buffer.append("return-type=" + returnType + "\n"); //$NON-NLS-1$//$NON-NLS-2$
- buffer.append("thread-id=").append(getThreadId()).append('\n'); //$NON-NLS-1$
- MIFrame f = getFrame();
- if (f != null) {
- buffer.append(f.toString());
- }
- return buffer.toString();
- }
-
- void parse () {
- MIExecAsyncOutput exec = getMIExecAsyncOutput();
- MIResultRecord rr = getMIResultRecord();
-
- MIResult[] results = null;
- if (exec != null) {
- results = exec.getMIResults();
- } else if (rr != null) {
- results = rr.getMIResults();
- }
- if (results != null) {
- for (int i = 0; i < results.length; i++) {
- String var = results[i].getVariable();
- MIValue value = results[i].getMIValue();
- String str = ""; //$NON-NLS-1$
- if (value instanceof MIConst) {
- str = ((MIConst)value).getString();
- }
-
- if (var.equals("gdb-result-var")) { //$NON-NLS-1$
- gdbResult = str;
- } else if (var.equals("return-value")) { //$NON-NLS-1$
- returnValue = str;
- } else if (var.equals("return-type")) { //$NON-NLS-1$
- returnType = str;
- } else if (var.equals("thread-id")) { //$NON-NLS-1$
- try {
- int id = Integer.parseInt(str.trim());
- setThreadId(id);
- } catch (NumberFormatException e) {
- }
- } else if (var.equals("frame")) { //$NON-NLS-1$
- if (value instanceof MITuple) {
- MIFrame f = new MIFrame((MITuple)value);
- setFrame(f);
- }
- }
- }
- }
- }
-}
diff --git a/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/event/MIGDBExitEvent.java b/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/event/MIGDBExitEvent.java
deleted file mode 100644
index acd34f57fdd..00000000000
--- a/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/event/MIGDBExitEvent.java
+++ /dev/null
@@ -1,25 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.mi.core.event;
-
-import org.eclipse.cdt.debug.mi.core.MISession;
-
-
-
-/**
- * Gdb Session terminated.
- */
-public class MIGDBExitEvent extends MIDestroyedEvent {
-
- public MIGDBExitEvent(MISession source, int token) {
- super(source, token);
- }
-}
diff --git a/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/event/MIInferiorCreatedEvent.java b/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/event/MIInferiorCreatedEvent.java
deleted file mode 100644
index 59f8fbd7a64..00000000000
--- a/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/event/MIInferiorCreatedEvent.java
+++ /dev/null
@@ -1,29 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2002, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.cdt.debug.mi.core.event;
-
-import org.eclipse.cdt.debug.mi.core.MISession;
-
-/**
- * MIInferiorCreatedEvent
- */
-public class MIInferiorCreatedEvent extends MICreatedEvent {
-
- /**
- * @param source
- * @param id
- */
- public MIInferiorCreatedEvent(MISession source, int id) {
- super(source, id);
- }
-
-}
diff --git a/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/event/MIInferiorExitEvent.java b/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/event/MIInferiorExitEvent.java
deleted file mode 100644
index 5b7abbc63ff..00000000000
--- a/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/event/MIInferiorExitEvent.java
+++ /dev/null
@@ -1,82 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.mi.core.event;
-
-import org.eclipse.cdt.debug.mi.core.MISession;
-import org.eclipse.cdt.debug.mi.core.output.MIConst;
-import org.eclipse.cdt.debug.mi.core.output.MIExecAsyncOutput;
-import org.eclipse.cdt.debug.mi.core.output.MIResult;
-import org.eclipse.cdt.debug.mi.core.output.MIResultRecord;
-import org.eclipse.cdt.debug.mi.core.output.MIValue;
-
-
-
-/**
- * *stopped,reason="exited-normally"
- * *stopped,reason="exited",exit-code="04"
- * ^done,reason="exited",exit-code="04"
- *
- */
-public class MIInferiorExitEvent extends MIDestroyedEvent {
-
- int code = 0;
-
- MIExecAsyncOutput exec = null;
- MIResultRecord rr = null;
-
- public MIInferiorExitEvent(MISession source, int token) {
- super(source, token);
- }
-
- public MIInferiorExitEvent(MISession source, MIExecAsyncOutput async) {
- super(source, async.getToken());
- exec = async;
- parse();
- }
-
- public MIInferiorExitEvent(MISession source, MIResultRecord record) {
- super(source, record.getToken());
- rr = record;
- parse();
- }
-
- public int getExitCode() {
- return code;
- }
-
- void parse () {
- MIResult[] results = null;
- if (exec != null) {
- results = exec.getMIResults();
- } else if (rr != null) {
- results = rr.getMIResults();
- }
-
- if (results != null) {
- for (int i = 0; i < results.length; i++) {
- String var = results[i].getVariable();
- MIValue value = results[i].getMIValue();
- String str = ""; //$NON-NLS-1$
- if (value instanceof MIConst) {
- str = ((MIConst)value).getString();
- }
-
- if (var.equals("exit-code")) { //$NON-NLS-1$
- try {
- code = Integer.decode(str.trim()).intValue();
- } catch (NumberFormatException e) {
- }
- }
- }
- }
- }
-
-}
diff --git a/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/event/MIInferiorSignalExitEvent.java b/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/event/MIInferiorSignalExitEvent.java
deleted file mode 100644
index 906699ea0af..00000000000
--- a/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/event/MIInferiorSignalExitEvent.java
+++ /dev/null
@@ -1,85 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.mi.core.event;
-
-import org.eclipse.cdt.debug.mi.core.MISession;
-import org.eclipse.cdt.debug.mi.core.output.MIConst;
-import org.eclipse.cdt.debug.mi.core.output.MIExecAsyncOutput;
-import org.eclipse.cdt.debug.mi.core.output.MIResult;
-import org.eclipse.cdt.debug.mi.core.output.MIResultRecord;
-import org.eclipse.cdt.debug.mi.core.output.MIValue;
-
-/**
- * signal 2
- * "signal 2\n"
- * ^done,reason="exited-signalled",signal-name="SIGINT",signal-meaning="Interrupt"
- *
- */
-public class MIInferiorSignalExitEvent extends MIDestroyedEvent {
-
- String sigName = ""; //$NON-NLS-1$
- String sigMeaning = ""; //$NON-NLS-1$
-
- MIExecAsyncOutput exec = null;
- MIResultRecord rr = null;
-
- public MIInferiorSignalExitEvent(MISession source, MIExecAsyncOutput async) {
- super(source, async.getToken());
- exec = async;
- parse();
- }
-
- public MIInferiorSignalExitEvent(MISession source, MIResultRecord record) {
- super(source, record.getToken());
- rr = record;
- parse();
- }
-
- public String getName() {
- return sigName;
- }
-
- public String getMeaning() {
- return sigMeaning;
- }
-
- public String toString() {
- StringBuffer buffer = new StringBuffer();
- buffer.append("signal-name=" + sigName + "\n"); //$NON-NLS-1$//$NON-NLS-2$
- buffer.append("signal-meaning=" + sigMeaning + "\n"); //$NON-NLS-1$//$NON-NLS-2$
- return buffer.toString();
- }
-
- void parse () {
- MIResult[] results = null;
- if (exec != null) {
- results = exec.getMIResults();
- } else if (rr != null) {
- results = rr.getMIResults();
- }
- if (results != null) {
- for (int i = 0; i < results.length; i++) {
- String var = results[i].getVariable();
- MIValue value = results[i].getMIValue();
- String str = ""; //$NON-NLS-1$
- if (value instanceof MIConst) {
- str = ((MIConst)value).getString();
- }
-
- if (var.equals("signal-name")) { //$NON-NLS-1$
- sigName = str;
- } else if (var.equals("signal-meaning")) { //$NON-NLS-1$
- sigMeaning = str;
- }
- }
- }
- }
-}
diff --git a/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/event/MILocationReachedEvent.java b/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/event/MILocationReachedEvent.java
deleted file mode 100644
index 79540d9a84c..00000000000
--- a/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/event/MILocationReachedEvent.java
+++ /dev/null
@@ -1,81 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.mi.core.event;
-
-import org.eclipse.cdt.debug.mi.core.MISession;
-import org.eclipse.cdt.debug.mi.core.output.MIConst;
-import org.eclipse.cdt.debug.mi.core.output.MIExecAsyncOutput;
-import org.eclipse.cdt.debug.mi.core.output.MIFrame;
-import org.eclipse.cdt.debug.mi.core.output.MIResult;
-import org.eclipse.cdt.debug.mi.core.output.MIResultRecord;
-import org.eclipse.cdt.debug.mi.core.output.MITuple;
-import org.eclipse.cdt.debug.mi.core.output.MIValue;
-
-/**
- * *stopped,reason="location-reached",thread-id="0",frame={addr="0x0804858e",func="main2",args=[],file="hello.c",line="27"}
- */
-public class MILocationReachedEvent extends MIStoppedEvent {
-
- public MILocationReachedEvent(MISession source, MIExecAsyncOutput async) {
- super(source, async);
- parse();
- }
-
- public MILocationReachedEvent(MISession source, MIResultRecord record) {
- super(source, record);
- parse();
- }
-
- public String toString() {
- StringBuffer buffer = new StringBuffer();
- buffer.append("thread-id=").append(getThreadId()).append('\n'); //$NON-NLS-1$
- MIFrame f = getFrame();
- if (f != null) {
- buffer.append(f.toString());
- }
- return buffer.toString();
- }
-
- void parse () {
- MIResult[] results = null;
- MIExecAsyncOutput exec = getMIExecAsyncOutput();
- MIResultRecord rr = getMIResultRecord();
-
- if (exec != null) {
- results = exec.getMIResults();
- } else if (rr != null) {
- results = rr.getMIResults();
- }
- if (results != null) {
- for (int i = 0; i < results.length; i++) {
- String var = results[i].getVariable();
- MIValue value = results[i].getMIValue();
- String str = ""; //$NON-NLS-1$
- if (value instanceof MIConst) {
- str = ((MIConst)value).getString();
- }
-
- if (var.equals("thread-id")) { //$NON-NLS-1$
- try {
- int id = Integer.parseInt(str.trim());
- setThreadId(id);
- } catch (NumberFormatException e) {
- }
- } else if (var.equals("frame")) { //$NON-NLS-1$
- if (value instanceof MITuple) {
- MIFrame f = new MIFrame((MITuple)value);
- setFrame(f);
- }
- }
- }
- }
- }
-}
diff --git a/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/event/MIMemoryChangedEvent.java b/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/event/MIMemoryChangedEvent.java
deleted file mode 100644
index 32142332237..00000000000
--- a/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/event/MIMemoryChangedEvent.java
+++ /dev/null
@@ -1,37 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.mi.core.event;
-
-import java.math.BigInteger;
-
-import org.eclipse.cdt.debug.mi.core.MISession;
-
-/**
- * This can not be detected yet by gdb/mi.
- *
- */
-public class MIMemoryChangedEvent extends MIChangedEvent {
-
- BigInteger[] addresses;
-
- public MIMemoryChangedEvent(MISession source, BigInteger[] addrs) {
- this(source, 0, addrs);
- }
-
- public MIMemoryChangedEvent(MISession source, int token, BigInteger[] addrs) {
- super(source, token);
- addresses = addrs;
- }
-
- public BigInteger[] getAddresses() {
- return addresses;
- }
-}
diff --git a/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/event/MIMemoryCreatedEvent.java b/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/event/MIMemoryCreatedEvent.java
deleted file mode 100644
index 2cf2db807e5..00000000000
--- a/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/event/MIMemoryCreatedEvent.java
+++ /dev/null
@@ -1,46 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.mi.core.event;
-
-import java.math.BigInteger;
-
-import org.eclipse.cdt.debug.mi.core.MISession;
-
-
-
-/**
- * This can not be detected yet by gdb/mi.
- *
- */
-public class MIMemoryCreatedEvent extends MICreatedEvent {
-
- BigInteger address;
- long totalBytes;
-
- public MIMemoryCreatedEvent(MISession source, BigInteger addr, long total) {
- this(source, 0, addr, total);
- }
-
- public MIMemoryCreatedEvent(MISession source, int token, BigInteger addr, long total) {
- super(source, token);
- address = addr;
- totalBytes = total;
- }
-
- public BigInteger getAddress() {
- return address;
- }
-
- public long getLength() {
- return totalBytes;
- }
-
-}
diff --git a/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/event/MIRegisterChangedEvent.java b/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/event/MIRegisterChangedEvent.java
deleted file mode 100644
index 1d9bf6eb34a..00000000000
--- a/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/event/MIRegisterChangedEvent.java
+++ /dev/null
@@ -1,39 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.mi.core.event;
-
-import org.eclipse.cdt.debug.mi.core.MISession;
-
-
-
-/**
- * This can not be detected yet by gdb/mi.
- *
- */
-public class MIRegisterChangedEvent extends MIChangedEvent {
-
- String regName;
- int regno;
-
- public MIRegisterChangedEvent(MISession source, int token, String name, int no) {
- super(source, token);
- regName = name;
- regno = no;
- }
-
- public String getName() {
- return regName;
- }
-
- public int getNumber() {
- return regno;
- }
-}
diff --git a/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/event/MIRegisterCreatedEvent.java b/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/event/MIRegisterCreatedEvent.java
deleted file mode 100644
index 580fd44ba34..00000000000
--- a/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/event/MIRegisterCreatedEvent.java
+++ /dev/null
@@ -1,44 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.mi.core.event;
-
-import org.eclipse.cdt.debug.mi.core.MISession;
-
-
-
-/**
- * This can not be detected yet by gdb/mi.
- *
- */
-public class MIRegisterCreatedEvent extends MICreatedEvent {
-
- String regName;
- int regno;
-
- public MIRegisterCreatedEvent(MISession source, String name, int number) {
- this(source, 0, name, number);
- }
-
- public MIRegisterCreatedEvent(MISession source, int token, String name, int number) {
- super(source, token);
- regName = name;
- regno = number;
- }
-
- public String getName() {
- return regName;
- }
-
- public int getNumber() {
- return regno;
- }
-
-}
diff --git a/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/event/MIRunningEvent.java b/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/event/MIRunningEvent.java
deleted file mode 100644
index 545af972c1c..00000000000
--- a/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/event/MIRunningEvent.java
+++ /dev/null
@@ -1,46 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.mi.core.event;
-
-import org.eclipse.cdt.debug.mi.core.MISession;
-
-
-
-/**
- *
- * ^running
- */
-public class MIRunningEvent extends MIEvent {
-
- public static final int CONTINUE = 0;
- public static final int NEXT = 1;
- public static final int NEXTI = 2;
- public static final int STEP = 3;
- public static final int STEPI = 4;
- public static final int FINISH = 5;
- public static final int UNTIL = 6;
- public static final int RETURN = 7;
-
- int type;
-
- public MIRunningEvent(MISession source, int token, int t) {
- super(source, token);
- type = t;
- }
-
- public int getType() {
- return type;
- }
-
- public String toString() {
- return "Running"; //$NON-NLS-1$
- }
-}
diff --git a/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/event/MISharedLibChangedEvent.java b/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/event/MISharedLibChangedEvent.java
deleted file mode 100644
index 91a487fc998..00000000000
--- a/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/event/MISharedLibChangedEvent.java
+++ /dev/null
@@ -1,37 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.mi.core.event;
-
-import org.eclipse.cdt.debug.mi.core.MISession;
-
-
-
-/**
- *
- */
-public class MISharedLibChangedEvent extends MIChangedEvent {
-
- String filename;
-
- public MISharedLibChangedEvent(MISession source, String name) {
- this(source, 0, name);
- }
-
- public MISharedLibChangedEvent(MISession source, int id, String name) {
- super(source, id);
- filename = name;
- }
-
- public String getName() {
- return filename;
- }
-
-}
diff --git a/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/event/MISharedLibCreatedEvent.java b/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/event/MISharedLibCreatedEvent.java
deleted file mode 100644
index e2c8aff21ab..00000000000
--- a/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/event/MISharedLibCreatedEvent.java
+++ /dev/null
@@ -1,37 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.mi.core.event;
-
-import org.eclipse.cdt.debug.mi.core.MISession;
-
-
-
-/**
- *
- */
-public class MISharedLibCreatedEvent extends MICreatedEvent {
-
- String filename;
-
- public MISharedLibCreatedEvent(MISession source, String name) {
- this(source, 0, name);
- }
-
- public MISharedLibCreatedEvent(MISession source, int id, String name) {
- super(source, id);
- filename = name;
- }
-
- public String getName() {
- return filename;
- }
-
-}
diff --git a/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/event/MISharedLibEvent.java b/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/event/MISharedLibEvent.java
deleted file mode 100644
index 30cca3c4656..00000000000
--- a/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/event/MISharedLibEvent.java
+++ /dev/null
@@ -1,34 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.mi.core.event;
-
-import org.eclipse.cdt.debug.mi.core.MISession;
-import org.eclipse.cdt.debug.mi.core.output.MIExecAsyncOutput;
-import org.eclipse.cdt.debug.mi.core.output.MIResultRecord;
-
-
-
-/**
- *
- */
-public class MISharedLibEvent extends MIStoppedEvent {
-
- public MISharedLibEvent(MISession source, MIExecAsyncOutput async) {
- super(source, async);
- parse();
- }
-
- public MISharedLibEvent(MISession source, MIResultRecord record) {
- super(source, record);
- parse();
- }
-
-}
diff --git a/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/event/MISharedLibUnloadedEvent.java b/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/event/MISharedLibUnloadedEvent.java
deleted file mode 100644
index 5e8f4384beb..00000000000
--- a/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/event/MISharedLibUnloadedEvent.java
+++ /dev/null
@@ -1,35 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.mi.core.event;
-
-import org.eclipse.cdt.debug.mi.core.MISession;
-
-/**
- *
- */
-public class MISharedLibUnloadedEvent extends MIDestroyedEvent {
-
- String filename;
-
- public MISharedLibUnloadedEvent(MISession source, String name) {
- this(source, 0, name);
- }
-
- public MISharedLibUnloadedEvent(MISession source, int id, String name) {
- super(source, id);
- filename = name;
- }
-
- public String getName() {
- return filename;
- }
-
-}
diff --git a/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/event/MISignalChangedEvent.java b/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/event/MISignalChangedEvent.java
deleted file mode 100644
index 190e0c2211b..00000000000
--- a/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/event/MISignalChangedEvent.java
+++ /dev/null
@@ -1,37 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.mi.core.event;
-
-import org.eclipse.cdt.debug.mi.core.MISession;
-
-
-
-/**
- *
- */
-public class MISignalChangedEvent extends MIChangedEvent {
-
- String name;
-
- public MISignalChangedEvent(MISession source, String n) {
- this(source, 0, n);
- }
-
- public MISignalChangedEvent(MISession source, int id, String n) {
- super(source, id);
- name = n;
- }
-
- public String getName() {
- return name;
- }
-
-}
diff --git a/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/event/MISignalEvent.java b/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/event/MISignalEvent.java
deleted file mode 100644
index 08d0c001343..00000000000
--- a/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/event/MISignalEvent.java
+++ /dev/null
@@ -1,99 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.mi.core.event;
-
-import org.eclipse.cdt.debug.mi.core.MISession;
-import org.eclipse.cdt.debug.mi.core.output.MIConst;
-import org.eclipse.cdt.debug.mi.core.output.MIExecAsyncOutput;
-import org.eclipse.cdt.debug.mi.core.output.MIFrame;
-import org.eclipse.cdt.debug.mi.core.output.MIResult;
-import org.eclipse.cdt.debug.mi.core.output.MIResultRecord;
-import org.eclipse.cdt.debug.mi.core.output.MITuple;
-import org.eclipse.cdt.debug.mi.core.output.MIValue;
-
-/**
- * *stopped,reason="signal-received",signal-name="SIGINT",signal-meaning="Interrupt",thread-id="0",frame={addr="0x400e18e1",func="__libc_nanosleep",args=[],file="__libc_nanosleep",line="-1"}
- *
- */
-public class MISignalEvent extends MIStoppedEvent {
-
- String sigName = ""; //$NON-NLS-1$
- String sigMeaning = ""; //$NON-NLS-1$
-
- public MISignalEvent(MISession source, MIExecAsyncOutput async) {
- super(source, async);
- parse();
- }
-
- public MISignalEvent(MISession source, MIResultRecord record) {
- super(source, record);
- parse();
- }
-
- public String getName() {
- return sigName;
- }
-
- public String getMeaning() {
- return sigMeaning;
- }
-
- public String toString() {
- StringBuffer buffer = new StringBuffer();
- buffer.append("signal-name=" + sigName + "\n"); //$NON-NLS-1$ //$NON-NLS-2$
- buffer.append("signal-meaning=" + sigMeaning + "\n"); //$NON-NLS-1$ //$NON-NLS-2$
- buffer.append("thread-id=").append(getThreadId()).append('\n'); //$NON-NLS-1$
- MIFrame f = getFrame();
- if (f != null) {
- buffer.append(f.toString());
- }
- return buffer.toString();
- }
-
- void parse () {
- MIExecAsyncOutput exec = getMIExecAsyncOutput();
- MIResultRecord rr = getMIResultRecord();
-
- MIResult[] results = null;
- if (exec != null) {
- results = exec.getMIResults();
- } else if (rr != null) {
- results = rr.getMIResults();
- }
- if (results != null) {
- for (int i = 0; i < results.length; i++) {
- String var = results[i].getVariable();
- MIValue value = results[i].getMIValue();
- String str = ""; //$NON-NLS-1$
- if (value instanceof MIConst) {
- str = ((MIConst)value).getString();
- }
-
- if (var.equals("signal-name")) { //$NON-NLS-1$
- sigName = str;
- } else if (var.equals("signal-meaning")) { //$NON-NLS-1$
- sigMeaning = str;
- } else if (var.equals("thread-id")) { //$NON-NLS-1$
- try {
- int id = Integer.parseInt(str.trim());
- setThreadId(id);
- } catch (NumberFormatException e) {
- }
- } else if (var.equals("frame")) { //$NON-NLS-1$
- if (value instanceof MITuple) {
- MIFrame f = new MIFrame((MITuple)value);
- setFrame(f);
- }
- }
- }
- }
- }
-}
diff --git a/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/event/MISteppingRangeEvent.java b/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/event/MISteppingRangeEvent.java
deleted file mode 100644
index d2f0cf0a838..00000000000
--- a/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/event/MISteppingRangeEvent.java
+++ /dev/null
@@ -1,80 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.mi.core.event;
-
-import org.eclipse.cdt.debug.mi.core.MISession;
-import org.eclipse.cdt.debug.mi.core.output.MIConst;
-import org.eclipse.cdt.debug.mi.core.output.MIExecAsyncOutput;
-import org.eclipse.cdt.debug.mi.core.output.MIFrame;
-import org.eclipse.cdt.debug.mi.core.output.MIResult;
-import org.eclipse.cdt.debug.mi.core.output.MIResultRecord;
-import org.eclipse.cdt.debug.mi.core.output.MITuple;
-import org.eclipse.cdt.debug.mi.core.output.MIValue;
-
-/**
- *
- * *stopped,reason="end-stepping-range",thread-id="0",frame={addr="0x08048538",func="main",args=[{name="argc",value="1"},{name="argv",value="0xbffff18c"}],file="hello.c",line="13"}
- */
-public class MISteppingRangeEvent extends MIStoppedEvent {
-
- public MISteppingRangeEvent(MISession source, MIExecAsyncOutput async) {
- super(source, async);
- parse();
- }
-
- public MISteppingRangeEvent(MISession source, MIResultRecord record) {
- super(source, record);
- parse();
- }
-
- public String toString() {
- StringBuffer buffer = new StringBuffer();
- buffer.append("thread-id=").append(getThreadId()).append('\n'); //$NON-NLS-1$
- MIFrame f = getFrame();
- if (f != null) {
- buffer.append(getFrame().toString());
- }
- return buffer.toString();
- }
-
- void parse () {
- MIResult[] results = null;
- MIExecAsyncOutput exec = getMIExecAsyncOutput();
- MIResultRecord rr = getMIResultRecord();
- if (exec != null) {
- results = exec.getMIResults();
- } else if (rr != null) {
- results = rr.getMIResults();
- }
- if (results != null) {
- for (int i = 0; i < results.length; i++) {
- String var = results[i].getVariable();
- MIValue value = results[i].getMIValue();
-
- if (var.equals("thread-id")) { //$NON-NLS-1$
- if (value instanceof MIConst) {
- String str = ((MIConst)value).getString();
- try {
- int id = Integer.parseInt(str.trim());
- setThreadId(id);
- } catch (NumberFormatException e) {
- }
- }
- } else if (var.equals("frame")) { //$NON-NLS-1$
- if (value instanceof MITuple) {
- MIFrame f = new MIFrame((MITuple)value);
- setFrame(f);
- }
- }
- }
- }
- }
-}
diff --git a/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/event/MIStoppedEvent.java b/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/event/MIStoppedEvent.java
deleted file mode 100644
index 331e4f4ff5b..00000000000
--- a/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/event/MIStoppedEvent.java
+++ /dev/null
@@ -1,99 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.mi.core.event;
-
-import org.eclipse.cdt.debug.mi.core.MISession;
-import org.eclipse.cdt.debug.mi.core.output.MIConst;
-import org.eclipse.cdt.debug.mi.core.output.MIExecAsyncOutput;
-import org.eclipse.cdt.debug.mi.core.output.MIFrame;
-import org.eclipse.cdt.debug.mi.core.output.MIResult;
-import org.eclipse.cdt.debug.mi.core.output.MIResultRecord;
-import org.eclipse.cdt.debug.mi.core.output.MITuple;
-import org.eclipse.cdt.debug.mi.core.output.MIValue;
-
-
-
-/**
- * *stopped
- *
- */
-public class MIStoppedEvent extends MIEvent {
-
- private int threadId;
- private MIFrame frame;
- private MIExecAsyncOutput exec;
- private MIResultRecord rr;
-
- public MIStoppedEvent(MISession source, MIExecAsyncOutput record) {
- super(source, record.getToken());
- exec = record;
- parse();
- }
-
- public MIStoppedEvent(MISession source, MIResultRecord record) {
- super(source, record.getToken());
- rr = record;
- parse();
- }
-
- public int getThreadId() {
- return threadId;
- }
-
- public void setThreadId(int id) {
- threadId = id;
- }
-
- public MIFrame getFrame() {
- return frame;
- }
-
- public void setFrame(MIFrame f) {
- frame = f;
- }
-
- public MIExecAsyncOutput getMIExecAsyncOutput() {
- return exec;
- }
-
- public MIResultRecord getMIResultRecord() {
- return rr;
- }
-
- void parse () {
- MIResult[] results = null;
- if (exec != null) {
- results = exec.getMIResults();
- } else if (rr != null) {
- results = rr.getMIResults();
- }
- if (results != null) {
- for (int i = 0; i < results.length; i++) {
- String var = results[i].getVariable();
- MIValue value = results[i].getMIValue();
-
- if (var.equals("thread-id")) { //$NON-NLS-1$
- if (value instanceof MIConst) {
- String str = ((MIConst)value).getString();
- try {
- threadId = Integer.parseInt(str.trim());
- } catch (NumberFormatException e) {
- }
- }
- } else if (var.equals("frame")) { //$NON-NLS-1$
- if (value instanceof MITuple) {
- frame = new MIFrame((MITuple)value);
- }
- }
- }
- }
- }
-}
diff --git a/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/event/MIThreadCreatedEvent.java b/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/event/MIThreadCreatedEvent.java
deleted file mode 100644
index 15ff143f371..00000000000
--- a/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/event/MIThreadCreatedEvent.java
+++ /dev/null
@@ -1,36 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.mi.core.event;
-
-import org.eclipse.cdt.debug.mi.core.MISession;
-
-
-/**
- * This can not be detected yet by gdb/mi.
- *
- */
-public class MIThreadCreatedEvent extends MICreatedEvent {
-
- int tid;
-
- public MIThreadCreatedEvent(MISession source, int id) {
- this(source, 0, id);
- }
-
- public MIThreadCreatedEvent(MISession source, int token, int id) {
- super(source, token);
- tid = id;
- }
-
- public int getId() {
- return tid;
- }
-}
diff --git a/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/event/MIThreadExitEvent.java b/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/event/MIThreadExitEvent.java
deleted file mode 100644
index 32b2e3a0f6f..00000000000
--- a/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/event/MIThreadExitEvent.java
+++ /dev/null
@@ -1,36 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.mi.core.event;
-
-import org.eclipse.cdt.debug.mi.core.MISession;
-
-
-/**
- * This can not be detected yet by gdb/mi.
- *
- */
-public class MIThreadExitEvent extends MIDestroyedEvent {
-
- int tid;
-
- public MIThreadExitEvent(MISession source, int id) {
- this(source, 0, id);
- }
-
- public MIThreadExitEvent(MISession source, int token, int id) {
- super(source, token);
- tid = id;
- }
-
- public int getId() {
- return tid;
- }
-}
diff --git a/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/event/MIVarChangedEvent.java b/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/event/MIVarChangedEvent.java
deleted file mode 100644
index e3084c707e8..00000000000
--- a/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/event/MIVarChangedEvent.java
+++ /dev/null
@@ -1,38 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.mi.core.event;
-
-import org.eclipse.cdt.debug.mi.core.MISession;
-
-
-
-/**
- * This can not be detected yet by gdb/mi.
- *
- */
-public class MIVarChangedEvent extends MIChangedEvent {
-
- String varName;
-
- public MIVarChangedEvent(MISession source, String var) {
- this(source, 0, var);
- }
-
- public MIVarChangedEvent(MISession source, int token, String var) {
- super(source, token);
- varName = var;
- }
-
- public String getVarName() {
- return varName;
- }
-
-}
diff --git a/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/event/MIVarCreatedEvent.java b/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/event/MIVarCreatedEvent.java
deleted file mode 100644
index 9cdea25ce56..00000000000
--- a/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/event/MIVarCreatedEvent.java
+++ /dev/null
@@ -1,39 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.mi.core.event;
-
-import org.eclipse.cdt.debug.mi.core.MISession;
-
-
-
-/**
- * This can not be detected yet by gdb/mi.
- *
- */
-public class MIVarCreatedEvent extends MICreatedEvent {
-
- String varName;
-
- public MIVarCreatedEvent(MISession source, String var) {
- super(source, 0);
- varName = var;
- }
-
- public MIVarCreatedEvent(MISession source, int token, String var) {
- super(source, token);
- varName = var;
- }
-
- public String getVarName() {
- return varName;
- }
-
-}
diff --git a/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/event/MIVarDeletedEvent.java b/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/event/MIVarDeletedEvent.java
deleted file mode 100644
index c2fbec222d5..00000000000
--- a/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/event/MIVarDeletedEvent.java
+++ /dev/null
@@ -1,38 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.mi.core.event;
-
-import org.eclipse.cdt.debug.mi.core.MISession;
-
-
-
-/**
- * This can not be detected yet by gdb/mi.
- *
- */
-public class MIVarDeletedEvent extends MIDestroyedEvent {
-
- String varName;
-
- public MIVarDeletedEvent(MISession source, String var) {
- this(source, 0, var);
- }
-
- public MIVarDeletedEvent(MISession source, int token, String var) {
- super(source, token);
- varName = var;
- }
-
- public String getVarName() {
- return varName;
- }
-
-}
diff --git a/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/event/MIWatchpointScopeEvent.java b/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/event/MIWatchpointScopeEvent.java
deleted file mode 100644
index dfaf6c300eb..00000000000
--- a/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/event/MIWatchpointScopeEvent.java
+++ /dev/null
@@ -1,85 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.mi.core.event;
-
-import org.eclipse.cdt.debug.mi.core.MISession;
-import org.eclipse.cdt.debug.mi.core.output.MIConst;
-import org.eclipse.cdt.debug.mi.core.output.MIExecAsyncOutput;
-import org.eclipse.cdt.debug.mi.core.output.MIFrame;
-import org.eclipse.cdt.debug.mi.core.output.MIResult;
-import org.eclipse.cdt.debug.mi.core.output.MIResultRecord;
-import org.eclipse.cdt.debug.mi.core.output.MITuple;
-import org.eclipse.cdt.debug.mi.core.output.MIValue;
-
-/**
- * *stopped,reason="watchpoint-trigger",wpt={number="2",exp="i"},value={old="0",new="1"},thread-id="0",frame={addr="0x08048534",func="main",args=[{name="argc",value="1"},{name="argv",value="0xbffff18c"}],file="hello.c",line="10"}
- *
- */
-public class MIWatchpointScopeEvent extends MIStoppedEvent {
-
- int number;
-
- public MIWatchpointScopeEvent(MISession source, MIExecAsyncOutput async) {
- super(source, async);
- parse();
- }
-
- public MIWatchpointScopeEvent(MISession source, MIResultRecord record) {
- super(source, record);
- parse();
- }
-
- public int getNumber() {
- return number;
- }
-
- void parse() {
- MIExecAsyncOutput exec = getMIExecAsyncOutput();
- MIResultRecord rr = getMIResultRecord();
-
- MIResult[] results = null;
- if (exec != null) {
- results = exec.getMIResults();
- } else if (rr != null) {
- results = rr.getMIResults();
- }
- if (results != null) {
- for (int i = 0; i < results.length; i++) {
- String var = results[i].getVariable();
- MIValue value = results[i].getMIValue();
-
- if (var.equals("wpnum")) { //$NON-NLS-1$
- if (value instanceof MIConst) {
- String str = ((MIConst) value).getString();
- try {
- number = Integer.parseInt(str.trim());
- } catch (NumberFormatException e) {
- }
- }
- } else if (var.equals("thread-id")) { //$NON-NLS-1$
- if (value instanceof MIConst) {
- String str = ((MIConst) value).getString();
- try {
- int id = Integer.parseInt(str.trim());
- setThreadId(id);
- } catch (NumberFormatException e) {
- }
- }
- } else if (var.equals("frame")) { //$NON-NLS-1$
- if (value instanceof MITuple) {
- MIFrame f = new MIFrame((MITuple) value);
- setFrame(f);
- }
- }
- }
- }
- }
-}
diff --git a/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/event/MIWatchpointTriggerEvent.java b/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/event/MIWatchpointTriggerEvent.java
deleted file mode 100644
index 965e932dd8d..00000000000
--- a/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/event/MIWatchpointTriggerEvent.java
+++ /dev/null
@@ -1,156 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.mi.core.event;
-
-import org.eclipse.cdt.debug.mi.core.MISession;
-import org.eclipse.cdt.debug.mi.core.output.MIConst;
-import org.eclipse.cdt.debug.mi.core.output.MIExecAsyncOutput;
-import org.eclipse.cdt.debug.mi.core.output.MIFrame;
-import org.eclipse.cdt.debug.mi.core.output.MIResult;
-import org.eclipse.cdt.debug.mi.core.output.MIResultRecord;
-import org.eclipse.cdt.debug.mi.core.output.MITuple;
-import org.eclipse.cdt.debug.mi.core.output.MIValue;
-
-/**
- * *stopped,reason="watchpoint-trigger",wpt={number="2",exp="i"},value={old="0",new="1"},thread-id="0",frame={addr="0x08048534",func="main",args=[{name="argc",value="1"},{name="argv",value="0xbffff18c"}],file="hello.c",line="10"}
- *
- */
-public class MIWatchpointTriggerEvent extends MIStoppedEvent {
-
- int number;
- String exp = ""; //$NON-NLS-1$
- String oldValue = ""; //$NON-NLS-1$
- String newValue = ""; //$NON-NLS-1$
-
- public MIWatchpointTriggerEvent(MISession source, MIExecAsyncOutput async) {
- super(source, async);
- parse();
- }
-
- public MIWatchpointTriggerEvent(MISession source, MIResultRecord record) {
- super(source, record);
- parse();
- }
-
- public int getNumber() {
- return number;
- }
-
- public String getExpression() {
- return exp;
- }
-
- public String getOldValue() {
- return oldValue;
- }
-
- public String getNewValue() {
- return newValue;
- }
-
-
- public String toString() {
- StringBuffer buffer = new StringBuffer();
- buffer.append("number=").append(number).append('\n'); //$NON-NLS-1$
- buffer.append("expression=" + exp + "\n"); //$NON-NLS-1$//$NON-NLS-2$
- buffer.append("old=" + oldValue + "\n"); //$NON-NLS-1$//$NON-NLS-2$
- buffer.append("new=" + newValue + "\n"); //$NON-NLS-1$//$NON-NLS-2$
- buffer.append("thread-id=").append(getThreadId()).append('\n'); //$NON-NLS-1$
- MIFrame f = getFrame();
- if (f != null) {
- buffer.append(f.toString());
- }
- return buffer.toString();
- }
-
- void parse() {
- MIResult[] results = null;
- MIExecAsyncOutput exec = getMIExecAsyncOutput();
- MIResultRecord rr = getMIResultRecord();
- if (exec != null) {
- results = exec.getMIResults();
- } else if (rr != null) {
- results = rr.getMIResults();
- }
- if (results != null) {
- for (int i = 0; i < results.length; i++) {
- String var = results[i].getVariable();
- MIValue value = results[i].getMIValue();
-
- if (var.equals("wpt") || var.equals("hw-awpt") || var.equals("hw-rwpt")) { //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
- if (value instanceof MITuple) {
- parseWPT((MITuple) value);
- }
- } else if (var.equals("value")) { //$NON-NLS-1$
- if (value instanceof MITuple) {
- parseValue((MITuple) value);
- }
- } else if (var.equals("thread-id")) { //$NON-NLS-1$
- if (value instanceof MIConst) {
- String str = ((MIConst) value).getString();
- try {
- int id = Integer.parseInt(str.trim());
- setThreadId(id);
- } catch (NumberFormatException e) {
- }
- }
- } else if (var.equals("frame")) { //$NON-NLS-1$
- if (value instanceof MITuple) {
- MIFrame f = new MIFrame((MITuple) value);
- setFrame(f);
- }
- }
- }
- }
- }
-
- void parseWPT(MITuple tuple) {
- MIResult[] results = tuple.getMIResults();
- for (int i = 0; i < results.length; i++) {
- String var = results[i].getVariable();
- MIValue value = results[i].getMIValue();
-
- if (var.equals("number")) { //$NON-NLS-1$
- if (value instanceof MIConst) {
- String str = ((MIConst) value).getString();
- try {
- number = Integer.parseInt(str);
- } catch (NumberFormatException e) {
- }
- }
- } else if (var.equals("exp")) { //$NON-NLS-1$
- if (value instanceof MIConst) {
- exp = ((MIConst) value).getString();
- }
- }
- }
- }
-
- void parseValue(MITuple tuple) {
- MIResult[] results = tuple.getMIResults();
- for (int i = 0; i < results.length; i++) {
- String var = results[i].getVariable();
- MIValue value = results[i].getMIValue();
- String str = ""; //$NON-NLS-1$
- if (value instanceof MIConst) {
- str = ((MIConst) value).getString();
- }
-
- if (var.equals("old")) { //$NON-NLS-1$
- oldValue = str;
- } else if (var.equals("new")) { //$NON-NLS-1$
- newValue = str;
- } else if (var.equals("value")) { //$NON-NLS-1$
- oldValue = newValue = str;
- }
- }
- }
-}
diff --git a/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/output/CLIInfoProgramInfo.java b/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/output/CLIInfoProgramInfo.java
deleted file mode 100644
index 3fe8cc6f3f5..00000000000
--- a/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/output/CLIInfoProgramInfo.java
+++ /dev/null
@@ -1,76 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.mi.core.output;
-
-import java.util.StringTokenizer;
-
-
-/**
- * GDB/MI info program parsing.
-(gdb)
-info program
-&"info program\n"
-~"\tUsing the running image of child process 21301.\n"
-~"Program stopped at 0x804853f.\n"
-~"It stopped at breakpoint 1.\n"
-~"Type \"info stack\" or \"info registers\" for more information.\n"
-^done
-(gdb)
-
- */
-public class CLIInfoProgramInfo extends MIInfo {
-
- int pid;
-
- public CLIInfoProgramInfo(MIOutput out) {
- super(out);
- parse();
- }
-
- public int getPID() {
- return pid;
- }
-
- void parse() {
- if (isDone()) {
- MIOutput out = getMIOutput();
- MIOOBRecord[] oobs = out.getMIOOBRecords();
- for (int i = 0; i < oobs.length; i++) {
- if (oobs[i] instanceof MIConsoleStreamOutput) {
- MIStreamRecord cons = (MIStreamRecord) oobs[i];
- String str = cons.getString();
- // We are interested in the signal info
- parseLine(str);
- }
- }
- }
- }
-
- void parseLine(String str) {
- if (str != null && str.length() > 0) {
- str = str.replace('.', ' ');
- str = str.trim();
- if (str.startsWith("Using")) { //$NON-NLS-1$
- StringTokenizer st = new StringTokenizer(str);
- while (st.hasMoreTokens()) {
- String s = st.nextToken();
- if (Character.isDigit(s.charAt(0))) {
- try {
- pid = Integer.decode(s).intValue();
- break;
- } catch (NumberFormatException e) {
- }
- }
- }
- }
- }
- }
-}
diff --git a/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/output/CLIInfoSharedLibraryInfo.java b/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/output/CLIInfoSharedLibraryInfo.java
deleted file mode 100644
index fafb73af866..00000000000
--- a/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/output/CLIInfoSharedLibraryInfo.java
+++ /dev/null
@@ -1,192 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.mi.core.output;
-
-import java.util.ArrayList;
-import java.util.List;
-
-/**
- *
- */
-public class CLIInfoSharedLibraryInfo extends MIInfo {
-
- MIShared[] shared;
- boolean isUnixFormat = true;
- boolean hasProcessHeader = false;
-
- // HP-UX shared library view
- private boolean isHPUXFormat;
- static String mergestr=null;
-
- public CLIInfoSharedLibraryInfo(MIOutput out) {
- super(out);
- parse();
- }
-
- public MIShared[] getMIShared() {
- return shared;
- }
-
- void parse() {
- List aList = new ArrayList();
- if (isDone()) {
- MIOutput out = getMIOutput();
- MIOOBRecord[] oobs = out.getMIOOBRecords();
- for (int i = 0; i < oobs.length; i++) {
- if (oobs[i] instanceof MIConsoleStreamOutput) {
- MIStreamRecord cons = (MIStreamRecord) oobs[i];
- String str = cons.getString();
- // We are interested in the shared info
- parseShared(str.trim(), aList);
- }
- }
- }
- shared = new MIShared[aList.size()];
- for (int i = 0; i < aList.size(); i++) {
- shared[i] = (MIShared) aList.get(i);
- }
- }
-
- protected void parseShared(String str, List aList) {
- if (!hasProcessHeader) {
- // Process the header and choose a type.
- if (str.startsWith("DLL")) { //$NON-NLS-1$
- // Cygwin info shared
- isUnixFormat = false;
- } else if(str.startsWith("Shared Object Libraries")) { //$NON-NLS-1$
- // HP-UX shared library view
- isHPUXFormat = true;
- }
- hasProcessHeader = true;
- } else if (isHPUXFormat) {
- // FIX : HP-UX shared library view
- if(str.startsWith("0x")) { //$NON-NLS-1$
- //merging...
- mergestr +=" "+str; //$NON-NLS-1$
- parseHPUXShared(mergestr, aList);
- return;
- } else if(str.startsWith("tstart")) { //$NON-NLS-1$
- return;
- } else {
- // new shareed library entry...;
- mergestr = new String(str);
- return;
- }
- } else if (isUnixFormat) {
- parseUnixShared(str, aList);
- } else {
- parseWinShared(str, aList);
- }
- }
-
- /**
- * We do the parsing backward because on some Un*x system, the To or the From
- * and even the "Sym Read" can be empty....
- * @param str
- * @param aList
- */
- void parseUnixShared(String str, List aList) {
- if (str.length() > 0) {
- // Pass the header
- int index = -1;
- String from = ""; //$NON-NLS-1$
- String to = ""; //$NON-NLS-1$
- boolean syms = false;
- String name = ""; //$NON-NLS-1$
-
- for (int i = 0;(index = str.lastIndexOf(' ')) != -1 || i <= 3; i++) {
- if (index == -1) {
- index = 0;
- }
- String sub = str.substring(index).trim();
- // move to previous column
- str = str.substring(0, index).trim();
- switch (i) {
- case 0 :
- name = sub;
- break;
- case 1 :
- if (sub.equalsIgnoreCase("Yes")) { //$NON-NLS-1$
- syms = true;
- }
- break;
- case 2 : // second column is "To"
- to = sub;
- break;
- case 3 : // first column is "From"
- from = sub;
- break;
- }
- }
- if (name.length() > 0) {
- MIShared s = new MIShared(from, to, syms, name);
- aList.add(s);
- }
- }
- }
-
- // FIX : HP-UX shared library view
- void parseHPUXShared(String str, List aList) {
- if (str.length() > 0) {
- // Pass the header
- int index = -1;
- String from = ""; //$NON-NLS-1$
- String to = ""; //$NON-NLS-1$
- boolean syms = false;
- String name = ""; //$NON-NLS-1$
-
- for (int i = 0;(index = str.indexOf(' ')) != -1 || i < 3; i++)
- {
- if (index == -1) {
- index = 0;
- }
-
- String sub = str.substring(0,index).trim();
- str= str.substring(index).trim();
- switch (i) {
- case 0 :
- name = sub;
- break;
- case 2 : // second column is "To"
- to = sub;
- break;
- case 1 : // first column is "From"
- from = sub;
- break;
- }
- }
- syms=true;
- if (name.length() > 0) {
- MIShared s = new MIShared(from, to, syms, name);
- aList.add(s);
- }
- }
- } // end fo fix
-
- void parseWinShared(String str, List aList) {
- String from = ""; //$NON-NLS-1$
- String to = ""; //$NON-NLS-1$
- boolean syms = true;
-
- int index = str.lastIndexOf(' ');
- if (index > 0) {
- String sub = str.substring(index).trim();
- // Go figure they do not print the "0x" to indicate hexadecimal!!
- if (!sub.startsWith("0x")) { //$NON-NLS-1$
- sub = "0x" + sub; //$NON-NLS-1$
- }
- from = sub;
- str = str.substring(0, index).trim();
- }
- MIShared s = new MIShared(from, to, syms, str.trim());
- aList.add(s);
- }
-}
diff --git a/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/output/CLIInfoSignalsInfo.java b/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/output/CLIInfoSignalsInfo.java
deleted file mode 100644
index b39ed41acf4..00000000000
--- a/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/output/CLIInfoSignalsInfo.java
+++ /dev/null
@@ -1,115 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.mi.core.output;
-
-import java.util.ArrayList;
-import java.util.List;
-import java.util.StringTokenizer;
-
-/**
- * GDB/MI signal table parsing.
- info signals
- &"info signals\n"
- ~"Signal Stop\tPrint\tPass to program\tDescription\n"
- ~"\n"
- ~"SIGHUP Yes\tYes\tYes\t\tHangup\n"
- ~"SIGINT Yes\tYes\tNo\t\tInterrupt\n"
- ~"SIGQUIT Yes\tYes\tYes\t\tQuit\n"
- ~"SIGILL Yes\tYes\tYes\t\tIllegal instruction\n"
- ~"SIGTRAP Yes\tYes\tNo\t\tTrace/breakpoint trap\n"
- ~"SIGABRT Yes\tYes\tYes\t\tAborted\n"
- ~"SIGEMT Yes\tYes\tYes\t\tEmulation trap\n"
- */
-public class CLIInfoSignalsInfo extends MIInfo {
-
- MISigHandle[] signals;
-
- public CLIInfoSignalsInfo(MIOutput out) {
- super(out);
- parse();
- }
-
- public MISigHandle[] getMISignals() {
- return signals;
- }
-
- void parse() {
- List aList = new ArrayList();
- if (isDone()) {
- MIOutput out = getMIOutput();
- MIOOBRecord[] oobs = out.getMIOOBRecords();
- for (int i = 0; i < oobs.length; i++) {
- if (oobs[i] instanceof MIConsoleStreamOutput) {
- MIStreamRecord cons = (MIStreamRecord) oobs[i];
- String str = cons.getString();
- // We are interested in the signal info
- parseSignal(str.trim(), aList);
- }
- }
- }
- signals = new MISigHandle[aList.size()];
- for (int i = 0; i < aList.size(); i++) {
- signals[i] = (MISigHandle)aList.get(i);
- }
- }
-
- void parseSignal(String str, List aList) {
- if (str.length() > 0) {
- // Pass the header and th tailer.
- // ~"Signal Stop\tPrint\tPass to program\tDescription\n"
- // ~"Use the \"handle\" command to change these tables.\n"
- if (!str.startsWith("Signal ") && !str.startsWith("Use ")) { //$NON-NLS-1$ //$NON-NLS-2$
- String signal = ""; //$NON-NLS-1$
- boolean stop = false;
- boolean print = false;
- boolean pass = false;
- String desc = ""; //$NON-NLS-1$
-
- StringTokenizer tokenizer = new StringTokenizer(str);
- for (int i = 0; tokenizer.hasMoreTokens(); i++) {
- String sub = null;
- if (i == 4) {
- sub = tokenizer.nextToken("\n"); //$NON-NLS-1$
- } else {
- sub = tokenizer.nextToken();
- }
- switch (i) {
- case 0: // first column is "Signal"
- signal = sub;
- break;
- case 1: // second column is "Stop"
- stop = getBoolean(sub);
- break;
- case 2: // third column is "Print"
- print = getBoolean(sub);
- break;
- case 3: // third column is "Pass to Program"
- pass = getBoolean(sub);
- break;
- case 4: // last column is "Description"
- desc = sub;
- break;
- }
- }
- MISigHandle s = new MISigHandle(signal, stop, print, pass, desc.trim());
- aList.add(s);
- }
- }
- }
-
- static boolean getBoolean(String value) {
- if (value != null && value.equalsIgnoreCase("Yes")) { //$NON-NLS-1$
- return true;
- }
- return false;
- }
-
-}
diff --git a/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/output/CLIInfoThreadsInfo.java b/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/output/CLIInfoThreadsInfo.java
deleted file mode 100644
index ac2785c0b3f..00000000000
--- a/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/output/CLIInfoThreadsInfo.java
+++ /dev/null
@@ -1,93 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.mi.core.output;
-
-import java.util.ArrayList;
-import java.util.Arrays;
-import java.util.List;
-
-/**
- * GDB/MI thread list parsing.
-~"\n"
-~" 2 Thread 2049 (LWP 29354) "
-~"* 1 Thread 1024 (LWP 29353) "
-
- */
-public class CLIInfoThreadsInfo extends MIInfo {
-
- protected int[] threadIds;
- protected int currentThreadId;
-
- public CLIInfoThreadsInfo(MIOutput out) {
- super(out);
- parse();
- }
-
- public int[] getThreadIds() {
- return threadIds;
- }
-
- public String[] getThreadNames() {
- return null;
- }
-
- public int getCurrentThread() {
- return currentThreadId;
- }
-
- protected void parse() {
- List aList = new ArrayList();
- if (isDone()) {
- MIOutput out = getMIOutput();
- MIOOBRecord[] oobs = out.getMIOOBRecords();
- for (int i = 0; i < oobs.length; i++) {
- if (oobs[i] instanceof MIConsoleStreamOutput) {
- MIStreamRecord cons = (MIStreamRecord) oobs[i];
- String str = cons.getString();
- // We are interested in finding the current thread
- parseThreadInfo(str.trim(), aList);
- }
- }
- }
- threadIds = new int[aList.size()];
- for (int i = 0; i < aList.size(); i++) {
- threadIds[i] = ((Integer) aList.get(i)).intValue();
- }
- Arrays.sort(threadIds);
- }
-
- protected void parseThreadInfo(String str, List aList) {
- if (str.length() > 0) {
- boolean isCurrentThread = false;
- // Discover the current thread
- if (str.charAt(0) == '*') {
- isCurrentThread = true;
- str = str.substring(1).trim();
- }
- // Fetch the threadId
- if (str.length() > 0 && Character.isDigit(str.charAt(0))) {
- int i = 1;
- while (i < str.length() && Character.isDigit(str.charAt(i))) {
- i++;
- }
- String number = str.substring(0, i);
- try {
- Integer num = Integer.valueOf(number);
- aList.add(num);
- if (isCurrentThread) {
- currentThreadId = num.intValue();
- }
- } catch (NumberFormatException e) {
- }
- }
- }
- }
-}
diff --git a/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/output/CLIPTypeInfo.java b/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/output/CLIPTypeInfo.java
deleted file mode 100644
index 2a01e0829e6..00000000000
--- a/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/output/CLIPTypeInfo.java
+++ /dev/null
@@ -1,54 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.mi.core.output;
-
-/**
- * GDB/MI whatis parsing.
- */
-public class CLIPTypeInfo extends MIInfo {
-
- String type;
-
- public CLIPTypeInfo(MIOutput out) {
- super(out);
- parse();
- }
-
- public String getType() {
- return type;
- }
-
- void parse() {
- StringBuffer buffer = new StringBuffer();
- if (isDone()) {
- MIOutput out = getMIOutput();
- MIOOBRecord[] oobs = out.getMIOOBRecords();
- for (int i = 0; i < oobs.length; i++) {
- if (oobs[i] instanceof MIConsoleStreamOutput) {
- MIStreamRecord cons = (MIStreamRecord) oobs[i];
- String str = cons.getString();
- // We are interested in the shared info
- if (str != null) {
- str = str.trim();
- if (str.startsWith ("type")) { //$NON-NLS-1$
- int equal = str.indexOf('=');
- if (equal > 0) {
- str = str.substring(equal + 1);
- }
- }
- buffer.append(str);
- }
- }
- }
- }
- type = buffer.toString().trim();
- }
-}
diff --git a/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/output/CLIWhatisInfo.java b/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/output/CLIWhatisInfo.java
deleted file mode 100644
index 1be47995732..00000000000
--- a/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/output/CLIWhatisInfo.java
+++ /dev/null
@@ -1,54 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.mi.core.output;
-
-/**
- * GDB/MI whatis parsing.
- */
-public class CLIWhatisInfo extends MIInfo {
-
- String type;
-
- public CLIWhatisInfo(MIOutput out) {
- super(out);
- parse();
- }
-
- public String getType() {
- return type;
- }
-
- void parse() {
- StringBuffer buffer = new StringBuffer();
- if (isDone()) {
- MIOutput out = getMIOutput();
- MIOOBRecord[] oobs = out.getMIOOBRecords();
- for (int i = 0; i < oobs.length; i++) {
- if (oobs[i] instanceof MIConsoleStreamOutput) {
- MIStreamRecord cons = (MIStreamRecord) oobs[i];
- String str = cons.getString();
- // We are interested in the shared info
- if (str != null) {
- str = str.trim();
- if (str.startsWith ("type")) { //$NON-NLS-1$
- int equal = str.indexOf('=');
- if (equal > 0) {
- str = str.substring(equal + 1);
- }
- }
- buffer.append(str);
- }
- }
- }
- }
- type = buffer.toString().trim();
- }
-}
diff --git a/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/output/MIArg.java b/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/output/MIArg.java
deleted file mode 100644
index 60372a79ccc..00000000000
--- a/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/output/MIArg.java
+++ /dev/null
@@ -1,130 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.cdt.debug.mi.core.output;
-
-import java.util.ArrayList;
-import java.util.List;
-
-
-/**
- * Represents a set name=value.
- */
-public class MIArg {
- String name;
- String value;
-
- public MIArg(String name, String value) {
- this.name = name;
- this.value = value;
- }
-
- public String getName() {
- return name;
- }
-
- public String getValue() {
- return value;
- }
-
- /**
- * Parsing a MIList of the form:
- * [{name="xxx",value="yyy"},{name="xxx",value="yyy"},..]
- * [name="xxx",name="xxx",..]
- * [{name="xxx"},{name="xxx"}]
- */
- public static MIArg[] getMIArgs(MIList miList) {
- List aList = new ArrayList();
- MIValue[] values = miList.getMIValues();
- for (int i = 0; i < values.length; i++) {
- if (values[i] instanceof MITuple) {
- MIArg arg = getMIArg((MITuple)values[i]);
- if (arg != null) {
- aList.add(arg);
- }
- }
- }
- MIResult[] results = miList.getMIResults();
- for (int i = 0; i < results.length; i++) {
- MIValue value = results[i].getMIValue();
- if (value instanceof MIConst) {
- String str = ((MIConst)value).getCString();
- aList.add(new MIArg(str, "")); //$NON-NLS-1$
- }
- }
- return ((MIArg[])aList.toArray(new MIArg[aList.size()]));
- }
-
- /**
- * Parsing a MITuple of the form:
- * {{name="xxx",value="yyy"},{name="xxx",value="yyy"},..}
- * {name="xxx",name="xxx",..}
- * {{name="xxx"},{name="xxx"}}
- */
- public static MIArg[] getMIArgs(MITuple miTuple) {
- List aList = new ArrayList();
- MIValue[] values = miTuple.getMIValues();
- for (int i = 0; i < values.length; i++) {
- if (values[i] instanceof MITuple) {
- MIArg arg = getMIArg((MITuple)values[i]);
- if (arg != null) {
- aList.add(arg);
- }
- }
- }
- MIResult[] results = miTuple.getMIResults();
- for (int i = 0; i < results.length; i++) {
- MIValue value = results[i].getMIValue();
- if (value instanceof MIConst) {
- String str = ((MIConst)value).getCString();
- aList.add(new MIArg(str, "")); //$NON-NLS-1$
- }
- }
- return ((MIArg[])aList.toArray(new MIArg[aList.size()]));
- }
- /**
- * Parsing a MITuple of the form:
- * {name="xxx",value="yyy"}
- * {name="xxx"}
- */
- public static MIArg getMIArg(MITuple tuple) {
- MIResult[] args = tuple.getMIResults();
- MIArg arg = null;
- if (args.length > 0) {
- // Name
- String aName = ""; //$NON-NLS-1$
- MIValue value = args[0].getMIValue();
- if (value != null && value instanceof MIConst) {
- aName = ((MIConst)value).getCString();
- } else {
- aName = ""; //$NON-NLS-1$
- }
-
- // Value
- String aValue = ""; //$NON-NLS-1$
- if (args.length == 2) {
- value = args[1].getMIValue();
- if (value != null && value instanceof MIConst) {
- aValue = ((MIConst)value).getCString();
- } else {
- aValue = ""; //$NON-NLS-1$
- }
- }
-
- arg = new MIArg(aName, aValue);
- }
- return arg;
- }
-
- public String toString() {
- return name + "=" + value; //$NON-NLS-1$
- }
-}
diff --git a/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/output/MIAsm.java b/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/output/MIAsm.java
deleted file mode 100644
index 945207797ba..00000000000
--- a/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/output/MIAsm.java
+++ /dev/null
@@ -1,116 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.mi.core.output;
-
-/**
- * Represent a GDB Tuple MI assembly response.
- */
-public class MIAsm {
- String address;
- String function = ""; //$NON-NLS-1$
- String opcode = ""; //$NON-NLS-1$
- String args = ""; //$NON-NLS-1$
- long offset;
-
- public MIAsm (MITuple tuple) {
- parse(tuple);
- }
-
- public String getAddress() {
- return address;
- }
-
- public String getFunction() {
- return function;
- }
-
- public long getOffset() {
- return offset;
- }
-
- public String getInstruction() {
- return opcode + " " + args; //$NON-NLS-1$
- }
-
- public String toString() {
- StringBuffer buffer = new StringBuffer();
- buffer.append('{');
- buffer.append("address=\"" + address +"\""); //$NON-NLS-1$//$NON-NLS-2$
- buffer.append(",func-name=\"" + function + "\""); //$NON-NLS-1$//$NON-NLS-2$
- buffer.append(",offset=\"").append(offset).append('"'); //$NON-NLS-1$
- buffer.append(",inst=\"" + getInstruction() + "\""); //$NON-NLS-1$//$NON-NLS-2$
- buffer.append('}');
- return buffer.toString();
- }
-
- void parse(MITuple tuple) {
- MIResult[] results = tuple.getMIResults();
- for (int i = 0; i < results.length; i++) {
- String var = results[i].getVariable();
- MIValue value = results[i].getMIValue();
- String str = ""; //$NON-NLS-1$
-
- if (value != null && value instanceof MIConst) {
- str = ((MIConst)value).getCString();
- }
-
- if (var.equals("address")) { //$NON-NLS-1$
- try {
- address = str.trim();
- } catch (NumberFormatException e) {
- }
- } else if (var.equals("func-name")) { //$NON-NLS-1$
- function = str;
- } else if (var.equals("offset")) { //$NON-NLS-1$
- try {
- offset = Long.decode(str.trim()).longValue();
- } catch (NumberFormatException e) {
- }
- } else if (var.equals("inst")) { //$NON-NLS-1$
- /* for the instruction, we do not want the C string but the
- translated string since the only thing we are doing is
- displaying it. */
- str = ((MIConst)value).getString();
-
- char chars[] = str.toCharArray();
- int index = 0;
-
- // count the non-whitespace characters.
- while( (index < chars.length) && (chars[index] > '\u0020'))
- index++;
-
- opcode = str.substring( 0, index );
-
- // skip any whitespace characters
- while( index < chars.length && chars[index] >= '\u0000' && chars[index] <= '\u0020')
- index++;
-
- // guard no argument
- if( index < chars.length )
- args = str.substring( index );
- }
- }
- }
-
- /**
- * @return String
- */
- public String getArgs() {
- return args;
- }
-
- /**
- * @return String
- */
- public String getOpcode() {
- return opcode;
- }
-}
diff --git a/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/output/MIAsyncRecord.java b/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/output/MIAsyncRecord.java
deleted file mode 100644
index 0ab0425095c..00000000000
--- a/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/output/MIAsyncRecord.java
+++ /dev/null
@@ -1,74 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.cdt.debug.mi.core.output;
-
-/**
- * base Abstract class for the OOB stream MI responses.
- */
-public abstract class MIAsyncRecord extends MIOOBRecord {
-
- final static MIResult[] nullResults = new MIResult[0];
-
- MIResult[] results = null;
- String asynClass = ""; //$NON-NLS-1$
- int token = 0;
-
- public int getToken() {
- return token;
- }
-
- public void setToken(int t) {
- token = t;
- }
-
- public String getAsyncClass() {
- return asynClass;
- }
-
- public void setAsyncClass(String a) {
- asynClass = a;
- }
-
- public MIResult[] getMIResults() {
- if (results == null) {
- return nullResults;
- }
- return results;
- }
-
- public void setMIResults(MIResult[] res) {
- results = res;
- }
-
- public String toString() {
- StringBuffer buffer = new StringBuffer();
- if (token != 0) {
- buffer.append(token);
- }
- if (this instanceof MIExecAsyncOutput) {
- buffer.append('*');
- } else if (this instanceof MIStatusAsyncOutput) {
- buffer.append('+');
- } else if (this instanceof MINotifyAsyncOutput) {
- buffer.append('=');
- }
- buffer.append(asynClass);
- if (results != null) {
- for (int i = 0; i < results.length; i++) {
- buffer.append(',');
- buffer.append(results.toString());
- }
- }
- buffer.append('\n');
- return buffer.toString();
- }
-}
diff --git a/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/output/MIBreakInsertInfo.java b/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/output/MIBreakInsertInfo.java
deleted file mode 100644
index 278863a7421..00000000000
--- a/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/output/MIBreakInsertInfo.java
+++ /dev/null
@@ -1,86 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.cdt.debug.mi.core.output;
-
-import java.util.ArrayList;
-import java.util.List;
-
-
-/**
- * -break-insert main
- * ^done,bkpt={number="1",type="breakpoint",disp="keep",enabled="y",addr="0x08048468",func="main",file="hello.c",line="4",times="0"}
- * -break-insert -a p
- * ^done,hw-awpt={number="2",exp="p"}
- * -break-watch -r p
- * ^done,hw-rwpt={number="4",exp="p"}
- * -break-watch p
- * ^done,wpt={number="6",exp="p"}
- */
-public class MIBreakInsertInfo extends MIInfo {
-
- MIBreakpoint[] breakpoints;
-
- void parse() {
- List aList = new ArrayList(1);
- if (isDone()) {
- MIOutput out = getMIOutput();
- MIResultRecord rr = out.getMIResultRecord();
- if (rr != null) {
- MIResult[] results = rr.getMIResults();
- for (int i = 0; i < results.length; i++) {
- String var = results[i].getVariable();
- MIValue val = results[i].getMIValue();
- MIBreakpoint bpt = null;
- if (var.equals("wpt")) { //$NON-NLS-1$
- if (val instanceof MITuple) {
- bpt = new MIBreakpoint((MITuple)val);
- bpt.setEnabled(true);
- bpt.setWriteWatchpoint(true);
- }
- } else if (var.equals("bkpt")) { //$NON-NLS-1$
- if (val instanceof MITuple) {
- bpt = new MIBreakpoint((MITuple)val);
- bpt.setEnabled(true);
- }
- } else if (var.equals("hw-awpt")) { //$NON-NLS-1$
- if (val instanceof MITuple) {
- bpt = new MIBreakpoint((MITuple)val);
- bpt.setAccessWatchpoint(true);
- bpt.setEnabled(true);
- }
- } else if (var.equals("hw-rwpt")) { //$NON-NLS-1$
- if (val instanceof MITuple) {
- bpt = new MIBreakpoint((MITuple)val);
- bpt.setReadWatchpoint(true);
- bpt.setEnabled(true);
- }
- }
- if (bpt != null) {
- aList.add(bpt);
- }
- }
- }
- }
- breakpoints = (MIBreakpoint[])aList.toArray(new MIBreakpoint[aList.size()]);
- }
-
- public MIBreakInsertInfo(MIOutput record) {
- super(record);
- }
-
- public MIBreakpoint[] getMIBreakpoints() {
- if (breakpoints == null) {
- parse();
- }
- return breakpoints;
- }
-}
diff --git a/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/output/MIBreakListInfo.java b/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/output/MIBreakListInfo.java
deleted file mode 100644
index 20aeb7206c2..00000000000
--- a/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/output/MIBreakListInfo.java
+++ /dev/null
@@ -1,84 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.mi.core.output;
-
-import java.util.ArrayList;
-import java.util.List;
-
-
-/**
- * A -break-list result-record is the form:
- * <pre>
- * ^done,BreakpointTable={nr_rows="1",nr_cols="6",hdr=[..],body=[brkpt={},brkpt={}]}
- *-break-list
-^done,BreakpointTable={nr_rows="6",nr_cols="6",hdr=[{width="3",alignment="-1",col_name="number",colhdr="Num"},{width="14",alignment="-1",col_name="type",colhdr="Type"},{width="4",alignment="-1",col_name="disp",colhdr="Disp"},{width="3",alignment="-1",col_name="enabled",colhdr="Enb"},{width="10",alignment="-1",col_name="addr",colhdr="Address"},{width="40",alignment="2",col_name="what",colhdr="What"}],body=[bkpt={number="1",type="breakpoint",disp="keep",enabled="y",addr="0x0804846b",func="main",file="hello.c",line="4",times="0"},bkpt={number="2",type="breakpoint",disp="del",enabled="y",addr="0x0804846b",func="main",file="hello.c",line="4",times="0"},bkpt={number="3",type="breakpoint",disp="keep",enabled="y",addr="0x0804846b",func="main",file="hello.c",line="4",cond="1",times="0"},bkpt={number="4",type="hw breakpoint",disp="keep",enabled="y",addr="0x0804846b",func="main",file="hello.c",line="4",times="0"},bkpt={number="5",type="breakpoint",disp="keep",enabled="y",addr="0x0804846b",func="main",file="hello.c",line="4",thread="0",thread="0",times="0"},bkpt={number="6",type="breakpoint",disp="keep",enabled="y",addr="0x0804846b",func="main",file="hello.c",line="4",thread="1",thread="1",times="0"}]}
- * </pre>
- */
-public class MIBreakListInfo extends MIInfo {
-
- MIBreakpoint[] breakpoints;
-
- public MIBreakListInfo(MIOutput rr) {
- super(rr);
- }
-
- public MIBreakpoint[] getMIBreakpoints() {
- if (breakpoints == null) {
- parse();
- }
- return breakpoints;
- }
-
- void parse() {
- List aList = new ArrayList(1);
- if (isDone()) {
- MIOutput out = getMIOutput();
- MIResultRecord rr = out.getMIResultRecord();
- if (rr != null) {
- MIResult[] results = rr.getMIResults();
- for (int i = 0; i < results.length; i++) {
- String var = results[i].getVariable();
- if (var.equals("BreakpointTable")) { //$NON-NLS-1$
- parseTable(results[i].getMIValue(), aList);
- }
- }
- }
- }
- breakpoints = (MIBreakpoint[])aList.toArray(new MIBreakpoint[aList.size()]);
- }
-
- void parseTable(MIValue val, List aList) {
- if (val instanceof MITuple) {
- MIResult[] table = ((MITuple)val).getMIResults();
- for (int j = 0; j < table.length; j++) {
- String variable = table[j].getVariable();
- if (variable.equals("body")) { //$NON-NLS-1$
- parseBody(table[j].getMIValue(), aList);
- }
- }
- }
- }
-
- void parseBody(MIValue body, List aList) {
- if (body instanceof MIList) {
- MIResult[] bkpts = ((MIList)body).getMIResults();
- for (int i = 0; i < bkpts.length; i++) {
- String b = bkpts[i].getVariable();
- if (b.equals("bkpt")) { //$NON-NLS-1$
- MIValue value = bkpts[i].getMIValue();
- if (value instanceof MITuple) {
- aList.add(new MIBreakpoint((MITuple)value));
- }
- }
- }
- }
- }
-}
diff --git a/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/output/MIBreakWatchInfo.java b/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/output/MIBreakWatchInfo.java
deleted file mode 100644
index dcbf26ddda3..00000000000
--- a/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/output/MIBreakWatchInfo.java
+++ /dev/null
@@ -1,24 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.cdt.debug.mi.core.output;
-
-
-/**
- * -break-watch buf
- * ^done,wpt={number="2",exp="buf"}
- */
-public class MIBreakWatchInfo extends MIBreakInsertInfo {
-
- public MIBreakWatchInfo(MIOutput rr) {
- super(rr);
- }
-}
diff --git a/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/output/MIBreakpoint.java b/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/output/MIBreakpoint.java
deleted file mode 100644
index db987cf4a08..00000000000
--- a/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/output/MIBreakpoint.java
+++ /dev/null
@@ -1,266 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.cdt.debug.mi.core.output;
-
-/**
- * Contain info about the GDB/MI breakpoint info.
- *<ul>
- * <li>
- * -break-insert main
- * ^done,bkpt={number="1",type="breakpoint",disp="keep",enabled="y",addr="0x0804846b",func="main",file="hello.c",line="4",times="0"}
- * (gdb)
- * </li>
- * <li>
- * -break-insert -t main
- * ^done,bkpt={number="2",type="breakpoint",disp="del",enabled="y",addr="0x0804846b",func="main",file="hello.c",line="4",times="0"}
- * </li>
- * <li>
- * -break-insert -c 1 main
-^done,bkpt={number="3",type="breakpoint",disp="keep",enabled="y",addr="0x0804846b",func="main",file="hello.c",line="4",cond="1",times="0"}
- * </li>
- * <li>
- * -break-insert -h main
- * ^done,bkpt={number="4",type="hw breakpoint",disp="keep",enabled="y",addr="0x0804846b",func="main",file="hello.c",line="4",times="0"}
- * <li>
- * -break-insert -p 0 main
- * ^done,bkpt={number="5",type="breakpoint",disp="keep",enabled="y",addr="0x0804846b",func="main",file="hello.c",line="4",thread="0",thread="0",times="0"}
- * </li>
- * <li>
- * -break-insert -a p
- * ^done,hw-awpt={number="2",exp="p"}
- * </li>
- * <li>
- * -break-watch -r p
- * ^done,hw-rwpt={number="4",exp="p"}
- * </li>
- * <li>
- * -break-watch p
- * ^done,wpt={number="6",exp="p"}
- * </li>
- *</ul>
- */
-public class MIBreakpoint {
-
- int number;
- String type = ""; //$NON-NLS-1$
- String disp = ""; //$NON-NLS-1$
- boolean enabled;
- String address;
- String func = ""; //$NON-NLS-1$
- String file = ""; //$NON-NLS-1$
- int line;
- String cond = ""; //$NON-NLS-1$
- int times;
- String what = ""; //$NON-NLS-1$
- String threadId = ""; //$NON-NLS-1$
- int ignore;
-
- boolean isWpt;
- boolean isAWpt;
- boolean isRWpt;
- boolean isWWpt;
- boolean isHdw;
-
- public MIBreakpoint(MITuple tuple) {
- parse(tuple);
- }
-
- public int getNumber() {
- return number;
- }
-
- public void setNumber(int num) {
- number = num;
- }
-
- public String getType() {
- return type;
- }
-
- public boolean isTemporary() {
- return getDisposition().equals("del"); //$NON-NLS-1$
- }
-
- public boolean isWatchpoint() {
- return isWpt;
- }
-
- public void setWatchpoint(boolean w) {
- isWpt = w;
- }
-
- public boolean isHardware() {
- return isHdw;
- }
-
- public void setHardware(boolean hd) {
- isWpt = hd;
- isHdw = hd;
- }
-
- public boolean isAccessWatchpoint() {
- return isAWpt;
- }
-
- public void setAccessWatchpoint(boolean a) {
- isWpt = a;
- isAWpt = a;
- }
-
- public boolean isReadWatchpoint() {
- return isRWpt;
- }
-
- public void setReadWatchpoint(boolean r) {
- isWpt = r;
- isRWpt = r;
- }
-
- public boolean isWriteWatchpoint() {
- return isWWpt;
- }
-
- public void setWriteWatchpoint(boolean w) {
- isWpt = w;
- isWWpt = w;
- }
-
- public String getDisposition() {
- return disp;
- }
-
- public boolean isEnabled() {
- return enabled;
- }
-
- public void setEnabled(boolean e) {
- enabled = e;
- }
-
- public String getAddress() {
- return address;
- }
-
- public String getFunction() {
- return func;
- }
-
- public String getFile() {
- return file;
- }
-
- public int getLine() {
- return line;
- }
-
- public int getTimes() {
- return times;
- }
-
- public String getWhat() {
- return what;
- }
-
- public int getIgnoreCount() {
- return ignore;
- }
-
- public String getCondition() {
- return cond;
- }
-
- public String getThreadId() {
- return threadId;
- }
-
- void parse(MITuple tuple) {
- MIResult[] results = tuple.getMIResults();
- for (int i = 0; i < results.length; i++) {
- String var = results[i].getVariable();
- MIValue value = results[i].getMIValue();
- String str = ""; //$NON-NLS-1$
- if (value != null && value instanceof MIConst) {
- str = ((MIConst)value).getCString();
- }
-
- if (var.equals("number")) { //$NON-NLS-1$
- try {
- number = Integer.parseInt(str.trim());
- } catch (NumberFormatException e) {
- }
- } else if (var.equals("type")) { //$NON-NLS-1$
- type = str;
- //type="hw watchpoint"
- if (type.startsWith("hw")) { //$NON-NLS-1$
- isHdw = true;
- isWWpt = true;
- isWpt = true;
- }
- //type="acc watchpoint"
- if (type.startsWith("acc")) { //$NON-NLS-1$
- isWWpt = true;
- isRWpt = true;
- isWpt = true;
- }
- //type="read watchpoint"
- if (type.startsWith("read")) { //$NON-NLS-1$
- isRWpt = true;
- isWpt = true;
- }
- // ??
- if (type.equals("watchpoint")) { //$NON-NLS-1$
- isWpt = true;
- }
- // type="breakpoint"
- // default ok.
- } else if (var.equals("disp")) { //$NON-NLS-1$
- disp = str;
- } else if (var.equals("enabled")) { //$NON-NLS-1$
- enabled = str.equals("y"); //$NON-NLS-1$
- } else if (var.equals("addr")) { //$NON-NLS-1$
- try {
- address = str.trim();
- } catch (NumberFormatException e) {
- }
- } else if (var.equals("func")) { //$NON-NLS-1$
- func = str;
- } else if (var.equals("file")) { //$NON-NLS-1$
- file = str;
- } else if (var.equals("thread")) { //$NON-NLS-1$
- threadId = str;
- } else if (var.equals("line")) { //$NON-NLS-1$
- try {
- line = Integer.parseInt(str.trim());
- } catch (NumberFormatException e) {
- }
- } else if (var.equals("times")) { //$NON-NLS-1$
- try {
- times = Integer.parseInt(str.trim());
- } catch (NumberFormatException e) {
- }
- } else if (var.equals("what") || var.equals("exp")) { //$NON-NLS-1$ //$NON-NLS-2$
- what = str;
- } else if (var.equals("ignore")) { //$NON-NLS-1$
- try {
- ignore = Integer.parseInt(str.trim());
- } catch (NumberFormatException e) {
- }
- } else if (var.equals("cond")) { //$NON-NLS-1$
- cond = str;
- }
- }
- }
-
- public void setFile(String file) {
- this.file = file;
- }
-}
diff --git a/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/output/MIConsoleStreamOutput.java b/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/output/MIConsoleStreamOutput.java
deleted file mode 100644
index 6fd8894dc61..00000000000
--- a/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/output/MIConsoleStreamOutput.java
+++ /dev/null
@@ -1,18 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.cdt.debug.mi.core.output;
-
-/**
- * @see MIStreamRecord
- */
-public class MIConsoleStreamOutput extends MIStreamRecord {
-}
diff --git a/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/output/MIConst.java b/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/output/MIConst.java
deleted file mode 100644
index bc32352adad..00000000000
--- a/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/output/MIConst.java
+++ /dev/null
@@ -1,122 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.cdt.debug.mi.core.output;
-
-/**
- * GDB/MI const value represents a ios-c string.
- */
-public class MIConst extends MIValue {
- String cstring = ""; //$NON-NLS-1$
-
- public String getCString() {
- return cstring;
- }
-
- public void setCString(String str) {
- cstring = str;
- }
-
- /**
- * Translate gdb c-string.
- */
- public String getString() {
- return getString(cstring);
- }
-
- public static String getString(String str) {
- StringBuffer buffer = new StringBuffer();
- boolean escape = false;
- for (int i = 0; i < str.length(); i++) {
- char c = str.charAt(i);
- if (c == '\\') {
- if (escape) {
- buffer.append(c);
- escape = false;
- } else {
- escape = true;
- }
- } else {
- if (escape) {
- if (isIsoCSpecialChar(c)) {
- buffer.append(isoC(c));
- } else {
- buffer.append('\\');
- buffer.append(c);
- }
- } else {
- buffer.append(c);
- }
- escape = false;
- }
- }
-
- // If escape is still true it means that the
- // last char was an '\'.
- if (escape) {
- buffer.append('\\');
- }
-
- return buffer.toString();
- }
-
- public String toString() {
- return getCString();
- }
-
- /**
- * Assuming that the precedent character was the
- * escape sequence '\'
- */
- private static String isoC(char c) {
- String s = new Character(c).toString();
- if (c == '"') {
- s = "\""; //$NON-NLS-1$
- } else if (c == '\'') {
- s = "\'"; //$NON-NLS-1$
- } else if (c == '?') {
- s = "?"; //$NON-NLS-1$
- } else if (c == 'a') {
- s = "\007"; //$NON-NLS-1$
- } else if (c == 'b') {
- s = "\b"; //$NON-NLS-1$
- } else if (c == 'f') {
- s = "\f"; //$NON-NLS-1$
- } else if (c == 'n') {
- s = System.getProperty("line.separator", "\n"); //$NON-NLS-1$ //$NON-NLS-2$ $NON-NLS-2$
- } else if (c == 'r') {
- s = "\r"; //$NON-NLS-1$
- } else if (c == 't') {
- s = "\t"; //$NON-NLS-1$
- } else if (c == 'v') {
- s = "\013"; //$NON-NLS-1$
- }
- return s;
- }
-
- private static boolean isIsoCSpecialChar(char c) {
- switch (c) {
- case '"':
- case '\'':
- case '?':
- case 'a':
- case 'b':
- case 'f':
- case 'n':
- case 'r':
- case 't':
- case 'v':
- return true;
- }
- return false;
-
- }
-}
diff --git a/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/output/MIDataDisassembleInfo.java b/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/output/MIDataDisassembleInfo.java
deleted file mode 100644
index 44e5771d504..00000000000
--- a/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/output/MIDataDisassembleInfo.java
+++ /dev/null
@@ -1,121 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.cdt.debug.mi.core.output;
-
-import java.util.ArrayList;
-import java.util.List;
-
-/**
- * GDB/MI disassemble parsing response.
- */
-public class MIDataDisassembleInfo extends MIInfo {
-
- MISrcAsm[] src_asm;
- MIAsm[] asm;
- boolean mixed;
-
- public MIDataDisassembleInfo(MIOutput rr) {
- super(rr);
- mixed = false;
- parse();
- }
-
- public MIAsm[] getMIAsms() {
- return asm;
- }
-
- public boolean isMixed() {
- return mixed;
- }
-
- public MISrcAsm[] getMISrcAsms() {
- return src_asm;
- }
-
- public String toString() {
- StringBuffer buffer = new StringBuffer();
- buffer.append("asm_insns=["); //$NON-NLS-1$
-
- if (isMixed()) {
- MISrcAsm[] array = getMISrcAsms();
- for (int i = 0; i < array.length; i++) {
- if (i != 0) {
- buffer.append(',');
- }
- buffer.append(array[i].toString());
- }
- } else {
- MIAsm[] array = getMIAsms();
- for (int i = 0; i < array.length; i++) {
- if (i != 0) {
- buffer.append(',');
- }
- buffer.append(array[i].toString());
- }
- }
- buffer.append("]"); //$NON-NLS-1$
- return buffer.toString();
- }
-
- void parse() {
- List asmList = new ArrayList();
- List srcList = new ArrayList();
- if (isDone()) {
- MIOutput out = getMIOutput();
- MIResultRecord rr = out.getMIResultRecord();
- if (rr != null) {
- MIResult[] results = rr.getMIResults();
- for (int i = 0; i < results.length; i++) {
- String var = results[i].getVariable();
- if (var.equals("asm_insns")) { //$NON-NLS-1$
- MIValue value = results[i].getMIValue();
- if (value instanceof MIList) {
- parse((MIList)value, srcList, asmList);
- }
- }
- }
- }
- }
- src_asm = (MISrcAsm[])srcList.toArray(new MISrcAsm[srcList.size()]);
- asm = (MIAsm[])asmList.toArray(new MIAsm[asmList.size()]);
- }
-
- void parse(MIList list, List srcList, List asmList) {
- // src and assenbly is different
-
- // Mixed mode.
- MIResult[] results = list.getMIResults();
- if (results != null && results.length > 0) {
- for (int i = 0; i < results.length; i++) {
- String var = results[i].getVariable();
- if (var.equals("src_and_asm_line")) { //$NON-NLS-1$
- MIValue value = results[i].getMIValue();
- if (value instanceof MITuple) {
- srcList.add(new MISrcAsm((MITuple)value));
- }
- }
- }
- mixed = true;
- }
-
- // Non Mixed with source
- MIValue[] values = list.getMIValues();
- if (values != null && values.length > 0) {
- for (int i = 0; i < values.length; i++) {
- if (values[i] instanceof MITuple) {
- asmList.add(new MIAsm((MITuple)values[i]));
- }
- }
- mixed = false;
- }
- }
-}
diff --git a/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/output/MIDataEvaluateExpressionInfo.java b/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/output/MIDataEvaluateExpressionInfo.java
deleted file mode 100644
index f798092be18..00000000000
--- a/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/output/MIDataEvaluateExpressionInfo.java
+++ /dev/null
@@ -1,52 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.cdt.debug.mi.core.output;
-
-
-/**
- * GDB/MI Data evalue expression parsing response.
- */
-public class MIDataEvaluateExpressionInfo extends MIInfo{
-
- String expr;
-
- public MIDataEvaluateExpressionInfo(MIOutput rr) {
- super(rr);
- }
-
- public String getExpression() {
- if (expr == null) {
- parse();
- }
- return expr;
- }
-
- void parse() {
- expr = ""; //$NON-NLS-1$
- if (isDone()) {
- MIOutput out = getMIOutput();
- MIResultRecord rr = out.getMIResultRecord();
- if (rr != null) {
- MIResult[] results = rr.getMIResults();
- for (int i = 0; i < results.length; i++) {
- String var = results[i].getVariable();
- if (var.equals("value")) { //$NON-NLS-1$
- MIValue value = results[i].getMIValue();
- if (value instanceof MIConst) {
- expr = ((MIConst)value).getCString();
- }
- }
- }
- }
- }
- }
-}
diff --git a/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/output/MIDataListChangedRegistersInfo.java b/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/output/MIDataListChangedRegistersInfo.java
deleted file mode 100644
index cbd19733ff5..00000000000
--- a/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/output/MIDataListChangedRegistersInfo.java
+++ /dev/null
@@ -1,73 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.mi.core.output;
-
-import java.util.ArrayList;
-import java.util.List;
-
-/**
- * GDB/MI data list changed registers response parsing.
- */
-public class MIDataListChangedRegistersInfo extends MIInfo {
-
- int[] registers;
-
- public MIDataListChangedRegistersInfo(MIOutput rr) {
- super(rr);
- }
-
- public int[] getRegisterNumbers() {
- if (registers == null) {
- parse();
- }
- return registers;
- }
-
- void parse() {
- List aList = new ArrayList();
- if (isDone()) {
- MIOutput out = getMIOutput();
- MIResultRecord rr = out.getMIResultRecord();
- if (rr != null) {
- MIResult[] results = rr.getMIResults();
- for (int i = 0; i < results.length; i++) {
- String var = results[i].getVariable();
- if (var.equals("changed-registers")) { //$NON-NLS-1$
- MIValue value = results[i].getMIValue();
- if (value instanceof MIList) {
- parseRegisters((MIList)value, aList);
- }
- }
- }
- }
- }
- registers = new int[aList.size()];
- for (int i = 0; i < aList.size(); i++) {
- String str = (String)aList.get(i);
- try {
- registers[i] = Integer.parseInt(str.trim());
- } catch (NumberFormatException e) {
- }
- }
- }
-
- void parseRegisters(MIList list, List aList) {
- MIValue[] values = list.getMIValues();
- for (int i = 0; i < values.length; i++) {
- if (values[i] instanceof MIConst) {
- String str = ((MIConst)values[i]).getCString();
- if (str != null && str.length() > 0) {
- aList.add(str);
- }
- }
- }
- }
-}
diff --git a/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/output/MIDataListRegisterNamesInfo.java b/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/output/MIDataListRegisterNamesInfo.java
deleted file mode 100644
index d9fc474be3b..00000000000
--- a/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/output/MIDataListRegisterNamesInfo.java
+++ /dev/null
@@ -1,90 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.cdt.debug.mi.core.output;
-
-import java.util.ArrayList;
-import java.util.List;
-
-/**
- * GDB/MI data list regiter names response extraction.
- */
-public class MIDataListRegisterNamesInfo extends MIInfo {
-
- String[] names;
- protected int realNameCount = 0;
-
- public MIDataListRegisterNamesInfo(MIOutput rr) {
- super(rr);
- }
-
- /**
- * @return the list of register names. This list can include 0 length
- * strings in the case where the underlying GDB has a sparse set of
- * registers. They are returned as 0 length strings
- */
- public String[] getRegisterNames() {
- if (names == null) {
- parse();
- }
- return names;
- }
-
- void parse() {
- List aList = new ArrayList();
- if (isDone()) {
- MIOutput out = getMIOutput();
- MIResultRecord rr = out.getMIResultRecord();
- if (rr != null) {
- MIResult[] results = rr.getMIResults();
- for (int i = 0; i < results.length; i++) {
- String var = results[i].getVariable();
- if (var.equals("register-names")) { //$NON-NLS-1$
- MIValue value = results[i].getMIValue();
- if (value instanceof MIList) {
- parseRegisters((MIList) value, aList);
- }
- }
- }
- }
- }
- names = (String[]) aList.toArray(new String[aList.size()]);
- }
-
- void parseRegisters(MIList list, List aList) {
- MIValue[] values = list.getMIValues();
- for (int i = 0; i < values.length; i++) {
- if (values[i] instanceof MIConst) {
- String str = ((MIConst) values[i]).getCString();
-
- /* this cannot filter nulls because index is critical in retreival
- * and index is assigned in the layers above. The MI spec allows
- * empty returns, for some register names. */
- if (str != null && str.length() > 0) {
- realNameCount++;
- aList.add(str);
- } else {
- aList.add(""); //$NON-NLS-1$
- }
- }
- }
- }
-
- /**
- * @return the number of non-null and non-empty names in the
- * register list
- */
- public int getNumRealNames() {
- if (names == null)
- parse();
- return realNameCount;
- }
-}
diff --git a/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/output/MIDataListRegisterValuesInfo.java b/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/output/MIDataListRegisterValuesInfo.java
deleted file mode 100644
index 619ca219fc3..00000000000
--- a/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/output/MIDataListRegisterValuesInfo.java
+++ /dev/null
@@ -1,53 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.cdt.debug.mi.core.output;
-
-/**
- * GDB/MI data list register values extraction.
- */
-public class MIDataListRegisterValuesInfo extends MIInfo {
-
- MIRegisterValue[] registers;
-
- public MIDataListRegisterValuesInfo(MIOutput rr) {
- super(rr);
- }
-
- public MIRegisterValue[] getMIRegisterValues() {
- if (registers == null) {
- parse();
- }
- return registers;
- }
-
- void parse() {
- if (isDone()) {
- MIOutput out = getMIOutput();
- MIResultRecord rr = out.getMIResultRecord();
- if (rr != null) {
- MIResult[] results = rr.getMIResults();
- for (int i = 0; i < results.length; i++) {
- String var = results[i].getVariable();
- if (var.equals("register-values")) { //$NON-NLS-1$
- MIValue value = results[i].getMIValue();
- if (value instanceof MIList) {
- registers = MIRegisterValue.getMIRegisterValues((MIList)value);
- }
- }
- }
- }
- }
- if (registers == null) {
- registers = new MIRegisterValue[0];
- }
- }
-}
diff --git a/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/output/MIDataReadMemoryInfo.java b/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/output/MIDataReadMemoryInfo.java
deleted file mode 100644
index bd224814edd..00000000000
--- a/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/output/MIDataReadMemoryInfo.java
+++ /dev/null
@@ -1,154 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.cdt.debug.mi.core.output;
-
-
-
-/**
- * GDB/MI data read memor info extraction.
- */
-public class MIDataReadMemoryInfo extends MIInfo {
-
- String addr;
- long nextRow;
- long prevRow;
- long nextPage;
- long prevPage;
- long numBytes;
- long totalBytes;
- MIMemory[] memories;
-
-
- public MIDataReadMemoryInfo(MIOutput rr) {
- super(rr);
- parse();
- }
-
- public String getAddress() {
- return addr;
- }
-
- public long getNumberBytes() {
- return numBytes;
- }
-
- public long getTotalBytes() {
- return totalBytes;
- }
-
- public long getNextRow() {
- return nextRow;
- }
-
- public long getPreviousRow() {
- return prevRow;
- }
-
- public long getNextPage() {
- return nextPage;
- }
-
- public long getPreviousPage() {
- return prevPage;
- }
-
- public MIMemory[] getMemories() {
- return memories;
- }
-/*
- public String toString() {
- MIMemory[] mem = getMemories();
- StringBuffer buffer = new StringBuffer();
- for (int i = 0; i < mem.length; i++) {
- buffer.append(Long.toHexString(mem[i].getAddress()));
- buffer.append(":");
- long[] data = mem[i].getData();
- for (int j = 0; j < data.length; j++) {
- buffer.append(" ").append(Long.toHexString(data[j]));
- }
- buffer.append("\t").append(mem[i].getAscii());
- }
- return buffer.toString();
- }
-*/
- void parse() {
- if (isDone()) {
- MIOutput out = getMIOutput();
- MIResultRecord rr = out.getMIResultRecord();
- if (rr != null) {
- MIResult[] results = rr.getMIResults();
- for (int i = 0; i < results.length; i++) {
- String var = results[i].getVariable();
- MIValue value = results[i].getMIValue();
- String str = ""; //$NON-NLS-1$
- if (value != null && value instanceof MIConst) {
- str = ((MIConst)value).getCString();
- }
-
- if (var.equals("addr")) { //$NON-NLS-1$
- try {
- addr = str.trim();
- } catch (NumberFormatException e) {
- }
- } else if (var.equals("nr-bytes")) { //$NON-NLS-1$
- try {
- numBytes = Long.decode(str.trim()).longValue();
- } catch (NumberFormatException e) {
- }
- } else if (var.equals("total-bytes")) { //$NON-NLS-1$
- try {
- totalBytes = Long.decode(str.trim()).longValue();
- } catch (NumberFormatException e) {
- }
- } else if (var.equals("next-row")) { //$NON-NLS-1$
- try {
- nextRow = Long.decode(str.trim()).longValue();
- } catch (NumberFormatException e) {
- }
- } else if (var.equals("prev-row")) { //$NON-NLS-1$
- try {
- prevRow = Long.decode(str.trim()).longValue();
- } catch (NumberFormatException e) {
- }
- } else if (var.equals("next-page")) { //$NON-NLS-1$
- try {
- nextPage = Long.decode(str.trim()).longValue();
- } catch (NumberFormatException e) {
- }
- } else if (var.equals("prev-page")) { //$NON-NLS-1$
- try {
- prevPage = Long.decode(str.trim()).longValue();
- } catch (NumberFormatException e) {
- }
- } else if (var.equals("memory")) { //$NON-NLS-1$
- if (value instanceof MIList) {
- parseMemory((MIList)value);
- }
- }
- }
- }
- }
- if (memories == null) {
- memories = new MIMemory[0];
- }
- }
-
- void parseMemory(MIList list) {
- MIValue[] values = list.getMIValues();
- memories = new MIMemory[values.length];
- for (int i = 0; i < values.length; i++) {
- if (values[i] instanceof MITuple) {
- memories[i] = new MIMemory((MITuple)values[i]);
- }
- }
- }
-}
diff --git a/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/output/MIEnvironmentPWDInfo.java b/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/output/MIEnvironmentPWDInfo.java
deleted file mode 100644
index 6fd9bd04b6f..00000000000
--- a/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/output/MIEnvironmentPWDInfo.java
+++ /dev/null
@@ -1,55 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.cdt.debug.mi.core.output;
-
-
-
-
-/**
- * GDB/MI environment PWD info extraction.
- */
-public class MIEnvironmentPWDInfo extends MIInfo {
-
- String pwd = ""; //$NON-NLS-1$
-
- public MIEnvironmentPWDInfo(MIOutput o) {
- super(o);
- parse();
- }
-
- public String getWorkingDirectory() {
- return pwd;
- }
-
- void parse() {
- if (isDone()) {
- MIOutput out = getMIOutput();
- MIOOBRecord[] oobs = out.getMIOOBRecords();
- for (int i = 0; i < oobs.length; i++) {
- if (oobs[i] instanceof MIConsoleStreamOutput) {
- MIStreamRecord cons = (MIStreamRecord)oobs[i];
- String str = cons.getString();
- if (str.startsWith("Working directory")) { //$NON-NLS-1$
- int len = "Working directory".length(); //$NON-NLS-1$
- str = str.substring(len).trim();
- len = str.indexOf('.');
- if (len != -1) {
- str = str.substring(0, len);
- }
- pwd = str;
- }
- }
- }
- }
- }
-
-}
diff --git a/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/output/MIExecAsyncOutput.java b/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/output/MIExecAsyncOutput.java
deleted file mode 100644
index 74fc3ccc4a7..00000000000
--- a/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/output/MIExecAsyncOutput.java
+++ /dev/null
@@ -1,17 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.mi.core.output;
-
-/**
- * @see MIAsyncRecord
- */
-public class MIExecAsyncOutput extends MIAsyncRecord {
-}
diff --git a/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/output/MIFrame.java b/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/output/MIFrame.java
deleted file mode 100644
index 8c50848e15f..00000000000
--- a/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/output/MIFrame.java
+++ /dev/null
@@ -1,134 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.mi.core.output;
-
-/**
- * GDB/MI Frame tuple parsing.
- */
-public class MIFrame {
-
- int level;
- String addr;
- String func = ""; //$NON-NLS-1$
- String file = ""; //$NON-NLS-1$
- // since gdb 6.4
- String fullname = ""; //$NON-NLS-1$
- int line;
- MIArg[] args = new MIArg[0];
-
- public MIFrame(MITuple tuple) {
- parse(tuple);
- }
-
- public MIArg[] getArgs() {
- return args;
- }
-
- public String getFile() {
- String fname = getFullname();
- return ( fname.length() != 0 ) ? fname : file;
- }
-
- public String getFullname() {
- return fullname;
- }
-
- public String getFunction() {
- return func;
- }
-
- public int getLine() {
- return line;
- }
-
- public String getAddress() {
- return addr;
- }
-
- public int getLevel() {
- return level;
- }
-
- public String toString() {
- StringBuffer buffer = new StringBuffer();
- buffer.append("level=\"" + level + "\""); //$NON-NLS-1$//$NON-NLS-2$
- buffer.append(",addr=\"" + addr + "\""); //$NON-NLS-1$//$NON-NLS-2$
- buffer.append(",func=\"" + func + "\""); //$NON-NLS-1$//$NON-NLS-2$
- buffer.append(",file=\"" + file + "\""); //$NON-NLS-1$//$NON-NLS-2$
- buffer.append(",line=\"").append(line).append('"'); //$NON-NLS-1$
- buffer.append(",args=["); //$NON-NLS-1$
- for (int i = 0; i < args.length; i++) {
- if (i != 0) {
- buffer.append(',');
- }
- buffer.append("{name=\"" + args[i].getName() + "\"");//$NON-NLS-1$//$NON-NLS-2$
- buffer.append(",value=\"" + args[i].getValue() + "\"}");//$NON-NLS-1$//$NON-NLS-2$
- }
- buffer.append(']');
- return buffer.toString();
- }
-
- void parse(MITuple tuple) {
- MIResult[] results = tuple.getMIResults();
- for (int i = 0; i < results.length; i++) {
- String var = results[i].getVariable();
- MIValue value = results[i].getMIValue();
- String str = ""; //$NON-NLS-1$
- if (value != null && value instanceof MIConst) {
- str = ((MIConst)value).getCString();
- }
-
- if (var.equals("level")) { //$NON-NLS-1$
- try {
- level = Integer.parseInt(str.trim());
- } catch (NumberFormatException e) {
- }
- } else if (var.equals("addr")) { //$NON-NLS-1$
- try {
- addr = str.trim();
- } catch (NumberFormatException e) {
- }
- } else if (var.equals("func")) { //$NON-NLS-1$
- func = null;
- if ( str != null ) {
- str = str.trim();
- if ( str.equals( "??" ) ) //$NON-NLS-1$
- func = ""; //$NON-NLS-1$
- else
- {
- // In some situations gdb returns the function names that include parameter types.
- // To make the presentation consistent truncate the parameters. PR 46592
- int end = str.indexOf( '(' );
- if ( end != -1 )
- func = str.substring( 0, end );
- else
- func = str;
- }
- }
- } else if (var.equals("file")) { //$NON-NLS-1$
- file = str;
- } else if (var.equals("fullname")) { //$NON-NLS-1$
- fullname = str;
- } else if (var.equals("line")) { //$NON-NLS-1$
- try {
- line = Integer.parseInt(str.trim());
- } catch (NumberFormatException e) {
- }
- } else if (var.equals("args")) { //$NON-NLS-1$
- if (value instanceof MIList) {
- args = MIArg.getMIArgs((MIList)value);
- } else if (value instanceof MITuple) {
- args = MIArg.getMIArgs((MITuple)value);
- }
- }
- }
- }
-}
diff --git a/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/output/MIGDBShowAddressSizeInfo.java b/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/output/MIGDBShowAddressSizeInfo.java
deleted file mode 100644
index 46fd274c27b..00000000000
--- a/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/output/MIGDBShowAddressSizeInfo.java
+++ /dev/null
@@ -1,35 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2005 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - initial API and implementation
- *******************************************************************************/
-/*
- * Created on Jun 7, 2004
- *
- * To change the template for this generated file go to
- * Window&gt;Preferences&gt;Java&gt;Code Generation&gt;Code and Comments
- */
-package org.eclipse.cdt.debug.mi.core.output;
-
-/**
- * @author root
- *
- * To change the template for this generated type comment go to
- * Window&gt;Preferences&gt;Java&gt;Code Generation&gt;Code and Comments
- */
-public class MIGDBShowAddressSizeInfo extends MIGDBShowInfo {
-
- public MIGDBShowAddressSizeInfo(MIOutput o) {
- super(o);
- }
-
- public int getAddressSize()
- {
- return Integer.parseInt(getValue());
- }
-}
diff --git a/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/output/MIGDBShowDirectoriesInfo.java b/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/output/MIGDBShowDirectoriesInfo.java
deleted file mode 100644
index 008aa4d3d26..00000000000
--- a/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/output/MIGDBShowDirectoriesInfo.java
+++ /dev/null
@@ -1,65 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.mi.core.output;
-
-import java.util.StringTokenizer;
-
-
-/**
- * GDB/MI show parsing.
- * (gdb)
- * -gdb-show directories
- * ~"Source directories searched: /tmp:$cdir:$cwd\n"
- * ^done
- */
-public class MIGDBShowDirectoriesInfo extends MIInfo {
-
- String[] dirs = new String[0];
-
- public MIGDBShowDirectoriesInfo(MIOutput o) {
- super(o);
- parse();
- }
-
- public String[] getDirectories() {
- return dirs;
- }
-
- void parse() {
- if (isDone()) {
- MIOutput out = getMIOutput();
- MIOOBRecord[] oobs = out.getMIOOBRecords();
- for (int i = 0; i < oobs.length; i++) {
- if (oobs[i] instanceof MIConsoleStreamOutput) {
- MIStreamRecord cons = (MIStreamRecord)oobs[i];
- String str = cons.getString();
- if (str.startsWith("Source directories searched:")) { //$NON-NLS-1$
- int j = str.indexOf(':');
- if (j != -1) {
- String sub = str.substring(j + 1).trim();
- parseDirectories(sub);
- }
- }
- }
- }
- }
- }
-
- void parseDirectories(String d) {
- String sep = System.getProperty("path.separator", ":"); //$NON-NLS-1$ //$NON-NLS-2$
- StringTokenizer st = new StringTokenizer(d, sep);
- int count = st.countTokens();
- dirs = new String[count];
- for (int i = 0; st.hasMoreTokens() && i < count; i++) {
- dirs[i] = st.nextToken();
- }
- }
-}
diff --git a/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/output/MIGDBShowEndianInfo.java b/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/output/MIGDBShowEndianInfo.java
deleted file mode 100644
index 7fb986b7b3a..00000000000
--- a/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/output/MIGDBShowEndianInfo.java
+++ /dev/null
@@ -1,55 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2005 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.cdt.debug.mi.core.output;
-
-/**
- * -gdb-show endian
- * ~"The target endianness is set automatically (currently little endian)\n"
- * ^done
- * &"show endian\n"
- *
- */
-public class MIGDBShowEndianInfo extends MIInfo {
-
- boolean littleEndian;
-
- public MIGDBShowEndianInfo(MIOutput out) {
- super(out);
- parse();
- }
-
- public boolean isLittleEndian() {
- return littleEndian;
- }
-
- void parse() {
- if (isDone()) {
- MIOutput out = getMIOutput();
- MIOOBRecord[] oobs = out.getMIOOBRecords();
- for (int i = 0; i < oobs.length; i++) {
- if (oobs[i] instanceof MIConsoleStreamOutput) {
- MIStreamRecord cons = (MIStreamRecord) oobs[i];
- String str = cons.getString();
- // We are interested in the stream info
- parseLine(str);
- }
- }
- }
- }
-
- void parseLine(String str) {
- if (str != null && str.length() > 0) {
- littleEndian = (str.indexOf("little") != -1); //$NON-NLS-1$
- }
- }
-
-}
diff --git a/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/output/MIGDBShowExitCodeInfo.java b/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/output/MIGDBShowExitCodeInfo.java
deleted file mode 100644
index 62416676589..00000000000
--- a/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/output/MIGDBShowExitCodeInfo.java
+++ /dev/null
@@ -1,39 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.mi.core.output;
-
-
-
-
-/**
- * GDB/MI show parsing.
- * (gdb)
- * -data-evaluate-expression $_exitcode
- * ^done,value="10"
- * (gdb)
- */
-public class MIGDBShowExitCodeInfo extends MIDataEvaluateExpressionInfo {
-
- public MIGDBShowExitCodeInfo(MIOutput o) {
- super(o);
- }
-
- public int getCode() {
- int code = 0;
- String exp = getExpression();
- try {
- code = Integer.parseInt(exp);
- } catch (NumberFormatException e) {
- }
- return code;
- }
-
-}
diff --git a/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/output/MIGDBShowInfo.java b/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/output/MIGDBShowInfo.java
deleted file mode 100644
index e0ba76984ca..00000000000
--- a/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/output/MIGDBShowInfo.java
+++ /dev/null
@@ -1,50 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.mi.core.output;
-
-
-
-
-/**
- * GDB/MI show parsing.
- */
-public class MIGDBShowInfo extends MIInfo {
-
- String value = ""; //$NON-NLS-1$
-
- public MIGDBShowInfo(MIOutput o) {
- super(o);
- parse();
- }
-
- public String getValue() {
- return value;
- }
-
- void parse() {
- if (isDone()) {
- MIOutput out = getMIOutput();
- MIResultRecord rr = out.getMIResultRecord();
- if (rr != null) {
- MIResult[] results = rr.getMIResults();
- for (int i = 0; i < results.length; i++) {
- String var = results[i].getVariable();
- if (var.equals("value")) { //$NON-NLS-1$
- MIValue val = results[i].getMIValue();
- if (val instanceof MIConst) {
- value = ((MIConst)val).getString();
- }
- }
- }
- }
- }
- }
-}
diff --git a/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/output/MIGDBShowSolibSearchPathInfo.java b/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/output/MIGDBShowSolibSearchPathInfo.java
deleted file mode 100644
index d141e822ab8..00000000000
--- a/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/output/MIGDBShowSolibSearchPathInfo.java
+++ /dev/null
@@ -1,52 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.mi.core.output;
-
-import java.util.StringTokenizer;
-
-
-/**
- * GDB/MI show parsing.
- * -gdb-show solib-search-path
- * ^done,value=""
- * (gdb)
- * -gdb-set solib-search-path /tmp:/lib
- * ^done
- * (gdb)
- * -gdb-show solib-search-path
- * ^done,value="/tmp:/lib"
- */
-public class MIGDBShowSolibSearchPathInfo extends MIGDBShowInfo {
-
- String[] dirs = null;
-
- public MIGDBShowSolibSearchPathInfo(MIOutput o) {
- super(o);
- }
-
- public String[] getDirectories() {
- if (dirs == null) {
- String val = getValue();
- parseDirectories(val);
- }
- return dirs;
- }
-
- void parseDirectories(String d) {
- String sep = System.getProperty("path.separator", ":"); //$NON-NLS-1$ //$NON-NLS-2$
- StringTokenizer st = new StringTokenizer(d, sep);
- int count = st.countTokens();
- dirs = new String[count];
- for (int i = 0; st.hasMoreTokens() && i < count; i++) {
- dirs[i] = st.nextToken();
- }
- }
-}
diff --git a/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/output/MIInfo.java b/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/output/MIInfo.java
deleted file mode 100644
index 036fc473ea9..00000000000
--- a/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/output/MIInfo.java
+++ /dev/null
@@ -1,85 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.mi.core.output;
-
-/**
- * Base class for teh parsing/info GDB/MI classes.
- */
-public class MIInfo {
-
- MIOutput miOutput;
-
- public MIInfo(MIOutput record) {
- miOutput = record;
- }
-
- public MIOutput getMIOutput () {
- return miOutput;
- }
-
- public boolean isDone() {
- return isResultClass(MIResultRecord.DONE);
- }
-
- public boolean isRunning() {
- return isResultClass(MIResultRecord.RUNNING);
- }
-
- public boolean isConnected() {
- return isResultClass(MIResultRecord.CONNECTED);
- }
-
- public boolean isError() {
- return isResultClass(MIResultRecord.ERROR);
- }
-
- public boolean isExit() {
- return isResultClass(MIResultRecord.EXIT);
- }
-
- public String toString() {
- if (miOutput != null) {
- return miOutput.toString();
- }
- return ""; //$NON-NLS-1$
- }
-
- boolean isResultClass(String rc) {
- if (miOutput != null) {
- MIResultRecord rr = miOutput.getMIResultRecord();
- if (rr != null) {
- String clazz = rr.getResultClass();
- return clazz.equals(rc);
- }
- }
- return false;
- }
-
- public String getErrorMsg() {
- if (miOutput != null) {
- MIResultRecord rr = miOutput.getMIResultRecord();
- if (rr != null) {
- MIResult[] results = rr.getMIResults();
- for (int i = 0; i < results.length; i++) {
- String var = results[i].getVariable();
- if (var.equals("msg")) { //$NON-NLS-1$
- MIValue value = results[i].getMIValue();
- if (value instanceof MIConst) {
- String s = ((MIConst)value).getCString();
- return s;
- }
- }
- }
- }
- }
- return ""; //$NON-NLS-1$
- }
-}
diff --git a/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/output/MIList.java b/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/output/MIList.java
deleted file mode 100644
index 566e17131c7..00000000000
--- a/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/output/MIList.java
+++ /dev/null
@@ -1,58 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.mi.core.output;
-
-/**
- * GDB/MI list semantic.
- */
-public class MIList extends MIValue {
-
- final static MIResult[] nullResults = new MIResult[0];
- final static MIValue[] nullValues = new MIValue[0];
-
- MIResult[] results = nullResults;
- MIValue[] values = nullValues;
-
- public MIResult[] getMIResults() {
- return results;
- }
-
- public void setMIResults(MIResult[] res) {
- results = res;
- }
-
- public MIValue[] getMIValues() {
- return values;
- }
-
- public void setMIValues(MIValue[] vals) {
- values = vals;
- }
-
- public String toString() {
- StringBuffer buffer = new StringBuffer();
- buffer.append('[');
- for (int i = 0; i < results.length; i++) {
- if (i != 0) {
- buffer.append(',');
- }
- buffer.append(results[i].toString());
- }
- for (int i = 0; i < values.length; i++) {
- if (i != 0) {
- buffer.append(',');
- }
- buffer.append(values[i].toString());
- }
- buffer.append(']');
- return buffer.toString();
- }
-}
diff --git a/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/output/MILogStreamOutput.java b/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/output/MILogStreamOutput.java
deleted file mode 100644
index 0fd2c2adc38..00000000000
--- a/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/output/MILogStreamOutput.java
+++ /dev/null
@@ -1,18 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.mi.core.output;
-
-/**
- * @see MIStreamRecord
- */
-public class MILogStreamOutput extends MIStreamRecord {
-
-}
diff --git a/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/output/MIMemory.java b/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/output/MIMemory.java
deleted file mode 100644
index 55f03b76815..00000000000
--- a/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/output/MIMemory.java
+++ /dev/null
@@ -1,107 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2005 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.mi.core.output;
-
-import java.util.ArrayList;
-import java.util.List;
-
-/**
- * GDB/MI memory parsing.
- */
-public class MIMemory {
- String addr;
- long [] data = new long[0];
- List badOffsets = new ArrayList();
- String ascii = ""; //$NON-NLS-1$
-
- public MIMemory(MITuple tuple) {
- parse(tuple);
- }
-
- public String getAddress() {
- return addr;
- }
-
- public long [] getData() {
- return data;
- }
-
- public int[] getBadOffsets() {
- int[] data = new int[badOffsets.size()];
- for (int i = 0; i < data.length; ++i) {
- Integer o = (Integer)badOffsets.get(i);
- data[i] = o.intValue();
- }
- return data;
- }
-
- public String getAscii() {
- return ascii;
- }
-
- public String toSting() {
- StringBuffer buffer = new StringBuffer();
- buffer.append("addr=\"" + addr + "\""); //$NON-NLS-1$ //$NON-NLS-2$
- buffer.append("data=["); //$NON-NLS-1$
- for (int i = 0 ; i < data.length; i++) {
- if (i != 0) {
- buffer.append(',');
- }
- buffer.append('"').append(Long.toHexString(data[i])).append('"');
- }
- buffer.append(']');
- if (ascii.length() > 0) {
- buffer.append(",ascii=\"" + ascii + "\""); //$NON-NLS-1$ //$NON-NLS-2$
- }
- return buffer.toString();
- }
-
- void parse(MITuple tuple) {
- MIResult[] results = tuple.getMIResults();
- for (int i = 0; i < results.length; i++) {
- String var = results[i].getVariable();
- MIValue value = results[i].getMIValue();
- String str = ""; //$NON-NLS-1$
- if (value != null && value instanceof MIConst) {
- str = ((MIConst)value).getCString();
- }
-
- if (var.equals("addr")) { //$NON-NLS-1$
- try {
- addr = str.trim();
- } catch (NumberFormatException e) {
- }
- } else if (var.equals("data")) { //$NON-NLS-1$
- if (value != null && value instanceof MIList) {
- parseData((MIList)value);
- }
- } else if (var.equals("ascii")) { //$NON-NLS-1$
- ascii = str;
- }
- }
- }
-
- void parseData(MIList list) {
- MIValue[] values = list.getMIValues();
- data = new long[values.length];
- for (int i = 0; i < values.length; i++) {
- if (values[i] instanceof MIConst) {
- String str = ((MIConst)values[i]).getCString();
- try {
- data[i] = Long.decode(str.trim()).longValue();
- } catch (NumberFormatException e) {
- badOffsets.add(new Integer(i));
- data[i] = 0;
- }
- }
- }
- }
-}
diff --git a/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/output/MINotifyAsyncOutput.java b/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/output/MINotifyAsyncOutput.java
deleted file mode 100644
index 053e46ca2a1..00000000000
--- a/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/output/MINotifyAsyncOutput.java
+++ /dev/null
@@ -1,17 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.mi.core.output;
-
-/**
- * @see MIAsyncRecord
- */
-public class MINotifyAsyncOutput extends MIAsyncRecord {
-}
diff --git a/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/output/MIOOBRecord.java b/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/output/MIOOBRecord.java
deleted file mode 100644
index 6fcea72ac31..00000000000
--- a/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/output/MIOOBRecord.java
+++ /dev/null
@@ -1,17 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.mi.core.output;
-
-/**
- * @see MIOOBRecord
- */
-public abstract class MIOOBRecord {
-}
diff --git a/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/output/MIOutput.java b/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/output/MIOutput.java
deleted file mode 100644
index c30ae6c6887..00000000000
--- a/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/output/MIOutput.java
+++ /dev/null
@@ -1,49 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.mi.core.output;
-
-/**
- * GDB/MI response.
- */
-public class MIOutput {
-
- public static final MIOOBRecord[] nullOOBRecord = new MIOOBRecord[0];
- MIResultRecord rr = null;
- MIOOBRecord[] oobs = nullOOBRecord;
-
-
- public MIResultRecord getMIResultRecord() {
- return rr;
- }
-
- public void setMIResultRecord(MIResultRecord res) {
- rr = res ;
- }
-
- public MIOOBRecord[] getMIOOBRecords() {
- return oobs;
- }
-
- public void setMIOOBRecords(MIOOBRecord [] bands) {
- oobs = bands;
- }
-
- public String toString() {
- StringBuffer buffer = new StringBuffer();
- for (int i = 0; i < oobs.length; i++) {
- buffer.append(oobs[i].toString());
- }
- if (rr != null) {
- buffer.append(rr.toString());
- }
- return buffer.toString();
- }
-}
diff --git a/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/output/MIParser.java b/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/output/MIParser.java
deleted file mode 100644
index dbb778bc151..00000000000
--- a/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/output/MIParser.java
+++ /dev/null
@@ -1,564 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.mi.core.output;
-
-import java.util.ArrayList;
-import java.util.List;
-import java.util.StringTokenizer;
-
-/**
-<pre>
-`OUTPUT :'
- `( OUT-OF-BAND-RECORD )* [ RESULT-RECORD ] "(gdb)" NL'
-
-`RESULT-RECORD :'
- ` [ TOKEN ] "^" RESULT-CLASS ( "," RESULT )* NL'
-
-`OUT-OF-BAND-RECORD :'
- `ASYNC-RECORD | STREAM-RECORD'
-
-`ASYNC-RECORD :'
- `EXEC-ASYNC-OUTPUT | STATUS-ASYNC-OUTPUT | NOTIFY-ASYNC-OUTPUT'
-
-`EXEC-ASYNC-OUTPUT :'
- `[ TOKEN ] "*" ASYNC-OUTPUT'
-
-`STATUS-ASYNC-OUTPUT :'
- `[ TOKEN ] "+" ASYNC-OUTPUT'
-
-`NOTIFY-ASYNC-OUTPUT :'
- `[ TOKEN ] "=" ASYNC-OUTPUT'
-
-`ASYNC-OUTPUT :'
- `ASYNC-CLASS ( "," RESULT )* NL'
-
-`RESULT-CLASS :'
- `"done" | "running" | "connected" | "error" | "exit"'
-
-`ASYNC-CLASS :'
- `"stopped" | OTHERS' (where OTHERS will be added depending on the
- needs--this is still in development).
-
-`RESULT :'
- ` VARIABLE "=" VALUE'
-
-`VARIABLE :'
- ` STRING '
-
-`VALUE :'
- ` CONST | TUPLE | LIST '
-
-`CONST :'
- `C-STRING'
-
-`TUPLE :'
- ` "{}" | "{" RESULT ( "," RESULT )* "}" '
-
-`LIST :'
- ` "[]" | "[" VALUE ( "," VALUE )* "]" | "[" RESULT ( "," RESULT )*
- "]" '
-
-`STREAM-RECORD :'
- `CONSOLE-STREAM-OUTPUT | TARGET-STREAM-OUTPUT | LOG-STREAM-OUTPUT'
-
-`CONSOLE-STREAM-OUTPUT :'
- `"~" C-STRING'
-
-`TARGET-STREAM-OUTPUT :'
- `"@" C-STRING'
-
-`LOG-STREAM-OUTPUT :'
- `"&" C-STRING'
-
-`NL :'
- `CR | CR-LF'
-
-`TOKEN :'
- _any sequence of digits_.
-
-`C-STRING :'
- `""" SEVEN-BIT-ISO-C-STRING-CONTENT """'
-</pre>
- */
-public class MIParser {
-
- public String primaryPrompt = "(gdb)"; //$NON-NLS-1$
- public String cliPrompt = primaryPrompt;
- public String secondaryPrompt = ">"; //$NON-NLS-1$
-
- /**
- * Point of entry to create an AST for MI.
- *
- * @param buffer Output from MI Channel.
- * @return MIOutput
- * @see MIOutput
- */
- public MIOutput parse(String buffer) {
- MIOutput mi = new MIOutput();
- MIResultRecord rr = null;
- List oobs = new ArrayList(1);
- int id = -1;
-
- StringTokenizer st = new StringTokenizer(buffer, "\n"); //$NON-NLS-1$
- while (st.hasMoreTokens()) {
- StringBuffer token = new StringBuffer(st.nextToken());
-
- // Fetch the Token/Id
- if (token.length() > 0 && Character.isDigit(token.charAt(0))) {
- int i = 1;
- while (i < token.length() && Character.isDigit(token.charAt(i))) {
- i++;
- }
- String numbers = token.substring(0, i);
- try {
- id = Integer.parseInt(numbers);
- } catch (NumberFormatException e) {
- }
- // Consume the token.
- token.delete(0, i);
- }
-
- // ResultRecord ||| Out-Of-Band Records
- if (token.length() > 0) {
- if (token.charAt(0) == '^') {
- token.deleteCharAt(0);
- rr = processMIResultRecord(token, id);
- } else if (startsWith(token, primaryPrompt)) {
- //break; // Do nothing.
- } else {
- MIOOBRecord band = processMIOOBRecord(token, id);
- if (band != null) {
- oobs.add(band);
- }
- }
- }
- }
- MIOOBRecord[] bands = (MIOOBRecord[]) oobs.toArray(new MIOOBRecord[oobs.size()]);
- mi.setMIOOBRecords(bands);
- mi.setMIResultRecord(rr);
- return mi;
- }
-
- /**
- * Assuming '^' was deleted from the Result Record.
- */
- private MIResultRecord processMIResultRecord(StringBuffer buffer, int id) {
- MIResultRecord rr = new MIResultRecord();
- rr.setToken(id);
- if (buffer.toString().startsWith(MIResultRecord.DONE)) {
- rr.setResultClass(MIResultRecord.DONE);
- buffer.delete(0, MIResultRecord.DONE.length());
- } else if (buffer.toString().startsWith(MIResultRecord.ERROR)) {
- rr.setResultClass(MIResultRecord.ERROR);
- buffer.delete(0, MIResultRecord.ERROR.length());
- } else if (buffer.toString().startsWith(MIResultRecord.EXIT)) {
- rr.setResultClass(MIResultRecord.EXIT);
- buffer.delete(0, MIResultRecord.EXIT.length());
- } else if (buffer.toString().startsWith(MIResultRecord.RUNNING)) {
- rr.setResultClass(MIResultRecord.RUNNING);
- buffer.delete(0, MIResultRecord.RUNNING.length());
- } else if (buffer.toString().startsWith(MIResultRecord.CONNECTED)) {
- rr.setResultClass(MIResultRecord.CONNECTED);
- buffer.delete(0, MIResultRecord.CONNECTED.length());
- } else {
- // FIXME:
- // Error throw an exception?
- }
-
- // Results are separated by commas.
- if (buffer.length() > 0 && buffer.charAt(0) == ',') {
- buffer.deleteCharAt(0);
- MIResult[] res = processMIResults(new FSB(buffer));
- rr.setMIResults(res);
- }
- return rr;
- }
-
- /**
- * Find OutOfBand Records depending on the starting token.
- */
- private MIOOBRecord processMIOOBRecord(StringBuffer buffer, int id) {
- MIOOBRecord oob = null;
- char c = buffer.charAt(0);
- if (c == '*' || c == '+' || c == '=') {
- // Consume the first char
- buffer.deleteCharAt(0);
- MIAsyncRecord async = null;
- switch (c) {
- case '*' :
- async = new MIExecAsyncOutput();
- break;
-
- case '+' :
- async = new MIStatusAsyncOutput();
- break;
-
- case '=' :
- async = new MINotifyAsyncOutput();
- break;
- }
- async.setToken(id);
- // Extract the Async-Class
- int i = buffer.toString().indexOf(',');
- if (i != -1) {
- String asyncClass = buffer.substring(0, i);
- async.setAsyncClass(asyncClass);
- // Consume the async-class and the comma
- buffer.delete(0, i + 1);
- } else {
- async.setAsyncClass(buffer.toString().trim());
- buffer.setLength(0);
- }
- MIResult[] res = processMIResults(new FSB(buffer));
- async.setMIResults(res);
- oob = async;
- } else if (c == '~' || c == '@' || c == '&') {
- // Consume the first char
- buffer.deleteCharAt(0);
- MIStreamRecord stream = null;
- switch (c) {
- case '~' :
- stream = new MIConsoleStreamOutput();
- break;
-
- case '@' :
- stream = new MITargetStreamOutput();
- break;
-
- case '&' :
- stream = new MILogStreamOutput();
- break;
- }
- // translateCString() assumes that the leading " is deleted
- if (buffer.length() > 0 && buffer.charAt(0) == '"') {
- buffer.deleteCharAt(0);
- }
- stream.setCString(translateCString(new FSB(buffer)));
- oob = stream;
- } else {
- // Badly format MI line, just pass it to the user as target stream
- MIStreamRecord stream = new MITargetStreamOutput();
- stream.setCString(buffer.toString() + "\n"); //$NON-NLS-1$
- oob = stream;
- }
- return oob;
- }
-
- /**
- * Assuming that the usual leading comma was consumed.
- * Extract the MI Result comma seperated responses.
- */
- private MIResult[] processMIResults(FSB buffer) {
- List aList = new ArrayList();
- MIResult result = processMIResult(buffer);
- if (result != null) {
- aList.add(result);
- }
- while (buffer.length() > 0 && buffer.charAt(0) == ',') {
- buffer.deleteCharAt(0);
- result = processMIResult(buffer);
- if (result != null) {
- aList.add(result);
- }
- }
- return (MIResult[]) aList.toArray(new MIResult[aList.size()]);
- }
-
- /**
- * Construct the MIResult. Characters will be consume/delete
- * moving forward constructing the AST.
- */
- private MIResult processMIResult(FSB buffer) {
- MIResult result = new MIResult();
- int equal;
- if (buffer.length() > 0 && Character.isLetter(buffer.charAt(0)) && (equal = buffer.indexOf('=')) != -1) {
- String variable = buffer.substring(0, equal);
- result.setVariable(variable);
- buffer.delete(0, equal + 1);
- MIValue value = processMIValue(buffer);
- result.setMIValue(value);
- } else if(buffer.length()>0 && buffer.charAt(0)=='"') {
- // This an error but we just swallow it and move on.
- MIValue value = processMIValue(buffer);
- result.setMIValue(value);
- } else {
- result.setVariable(buffer.toString());
- result.setMIValue(new MIConst()); // Empty string:???
- buffer.setLength(0);
- }
- return result;
- }
-
- /**
- * Find a MIValue implementation or return null.
- */
- private MIValue processMIValue(FSB buffer) {
- MIValue value = null;
- if (buffer.length() > 0) {
- if (buffer.charAt(0) == '{') {
- buffer.deleteCharAt(0);
- value = processMITuple(buffer);
- } else if (buffer.charAt(0) == '[') {
- buffer.deleteCharAt(0);
- value = processMIList(buffer);
- } else if (buffer.charAt(0) == '"') {
- buffer.deleteCharAt(0);
- MIConst cnst = new MIConst();
- cnst.setCString(translateCString(buffer));
- value = cnst;
- }
- }
- return value;
- }
-
- /**
- * Assuming the starting '{' was deleted form the StringBuffer,
- * go to the closing '}' consuming/deleting all the characters.
- * This is usually call by processMIvalue();
- */
- private MIValue processMITuple(FSB buffer) {
- MITuple tuple = new MITuple();
- List valueList = new ArrayList();
- List resultList = new ArrayList();
- // Catch closing '}'
- while (buffer.length() > 0 && buffer.charAt(0) != '}') {
- // Try for the MIValue first
- MIValue value = processMIValue(buffer);
- if (value != null) {
- valueList.add(value);
- } else {
- MIResult result = processMIResult(buffer);
- if (result != null) {
- resultList.add(result);
- }
- }
- if (buffer.length() > 0 && buffer.charAt(0) == ',') {
- buffer.deleteCharAt(0);
- }
- }
- if (buffer.length() > 0 && buffer.charAt(0) == '}') {
- buffer.deleteCharAt(0);
- }
- MIValue[] values = (MIValue[]) valueList.toArray(new MIValue[valueList.size()]);
- MIResult[] res = (MIResult[]) resultList.toArray(new MIResult[resultList.size()]);
- tuple.setMIValues(values);
- tuple.setMIResults(res);
- return tuple;
- }
-
- /**
- * Assuming the leading '[' was deleted, find the closing
- * ']' consuming/delete chars from the StringBuffer.
- */
- private MIValue processMIList(FSB buffer) {
- MIList list = new MIList();
- List valueList = new ArrayList();
- List resultList = new ArrayList();
- // catch closing ']'
- while (buffer.length() > 0 && buffer.charAt(0) != ']') {
- // Try for the MIValue first
- MIValue value = processMIValue(buffer);
- if (value != null) {
- valueList.add(value);
- } else {
- MIResult result = processMIResult(buffer);
- if (result != null) {
- resultList.add(result);
- }
- }
- if (buffer.length() > 0 && buffer.charAt(0) == ',') {
- buffer.deleteCharAt(0);
- }
- }
- if (buffer.length() > 0 && buffer.charAt(0) == ']') {
- buffer.deleteCharAt(0);
- }
- MIValue[] values = (MIValue[]) valueList.toArray(new MIValue[valueList.size()]);
- MIResult[] res = (MIResult[]) resultList.toArray(new MIResult[resultList.size()]);
- list.setMIValues(values);
- list.setMIResults(res);
- return list;
- }
-
- /*
- * MI C-String rather MICOnst values are enclose in double quotes
- * and any double quotes or backslash in the string are escaped.
- * Assuming the starting double quote was removed.
- * This method will stop at the closing double quote remove the extra
- * backslach escaping and return the string __without__ the enclosing double quotes
- * The orignal StringBuffer will move forward.
- */
- private String translateCString(FSB buffer) {
- boolean escape = false;
- boolean closingQuotes = false;
-
- StringBuffer sb = new StringBuffer();
-
- int index = 0;
- for (; index < buffer.length() && !closingQuotes; index++) {
- char c = buffer.charAt(index);
- if (c == '\\') {
- if (escape) {
- sb.append(c);
- escape = false;
- } else {
- escape = true;
- }
- } else if (c == '"') {
- if (escape) {
- sb.append(c);
- escape = false;
- } else {
- // Bail out.
- closingQuotes = true;
- }
- } else {
- if (escape) {
- sb.append('\\');
- }
- sb.append(c);
- escape = false;
- }
- }
- buffer.delete(0, index);
- return sb.toString();
- }
-
- /**
- * Tests if this string starts with the specified prefix beginning
- * a specified index.
- *
- * @param value the string.
- * @param prefix the prefix.
- * @return <code>true</code> if prefix starts value.
- */
- public boolean startsWith(StringBuffer value, String prefix) {
- int vlen = value.length();
- int plen = prefix.length();
-
- if (vlen < plen) {
- return false;
- }
- for (int i = 0; i < plen; i++) {
- if (value.charAt(i) != prefix.charAt(i)) {
- return false;
- }
- }
- return true;
- }
-
- /**
- * Fast String Buffer class. MIParser does a lot
- * of deleting off the front of a string, that's clearly
- * an order N operation for StringBuffer which makes
- * the MIParser an order N^2 operation. There are "issues"
- * with this for large arrays. Use of FSB rather than String
- * Buffer makes MIParser N rather than N^2 because FSB can
- * delete from the front in constant time.
- */
- public class FSB {
- StringBuffer buf;
- int pos;
- boolean shared;
-
- public FSB(StringBuffer buf) {
- this.buf = buf;
- pos = 0;
- shared = false;
- }
-
- public FSB(FSB fbuf) {
- pos = fbuf.pos;
- buf = fbuf.buf;
- shared = true;
- }
-
- public int length() {
- int res = buf.length() - pos;
- if (res < 0)
- return 0;
-
- return res;
- }
-
- public char charAt(int index) {
- return buf.charAt(index + pos);
- }
-
- private void resolveCopy() {
- if (shared) {
- buf = new StringBuffer(buf.toString());
- shared = false;
- }
- }
-
- public FSB deleteCharAt(int index) {
- if (index == 0) {
- pos++;
- } else {
- resolveCopy();
- buf = buf.deleteCharAt(pos + index);
- }
-
- return this;
- }
-
- public FSB delete(int start, int end) {
- if (start == 0) {
- pos = pos + end - start;
- } else {
- resolveCopy();
- buf.delete(start + pos, end + pos);
- }
-
- return this;
- }
-
- public void setLength(int a) {
- if (a == 0)
- pos = buf.length();
- else {
- // panic! fortunately we don't do this.
- }
- }
-
- public String substring(int start, int end) {
- return buf.substring(start + pos, end + pos);
- }
-
- public String toString() {
- return buf.substring(pos, buf.length());
- }
-
- int indexOf(char c) {
- int len = buf.length();
- for (int i = pos; i < len; i++) {
- if (buf.charAt(i) == c)
- return i - pos;
- }
-
- return -1;
- }
-
- boolean startsWith(String s) {
- int len = Math.min(s.length(), length());
- if (len < s.length())
- return false;
-
- for (int i = 0; i < len; i++) {
- if (s.charAt(i) != buf.charAt(pos + i))
- return false;
- }
-
- return true;
- }
- }
-}
diff --git a/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/output/MIRegisterValue.java b/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/output/MIRegisterValue.java
deleted file mode 100644
index c29f548f6c4..00000000000
--- a/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/output/MIRegisterValue.java
+++ /dev/null
@@ -1,97 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.mi.core.output;
-
-import java.util.ArrayList;
-import java.util.List;
-
-
-
-/**
- * GDB/MI register response parsing.
- */
-public class MIRegisterValue {
- int number;
- String value;
-
- public MIRegisterValue(int n, String v) {
- number = n;
- value = v;
- }
-
- public int getNumber() {
- return number;
- }
-
- public String getValue() {
- return value;
- }
-
- public String toString() {
- StringBuffer buffer = new StringBuffer();
- buffer.append("number=\"").append(number).append('"'); //$NON-NLS-1$
- buffer.append(',').append("value=\"" + value + "\""); //$NON-NLS-1$ //$NON-NLS-2$
- return buffer.toString();
- }
-
- /**
- * Parsing a MIList of the form:
- * [{number="1",value="0xffff"},{number="xxx",value="yyy"},..]
- */
- public static MIRegisterValue[] getMIRegisterValues(MIList miList) {
- List aList = new ArrayList();
- MIValue[] values = miList.getMIValues();
- for (int i = 0; i < values.length; i++) {
- if (values[i] instanceof MITuple) {
- MIRegisterValue reg = getMIRegisterValue((MITuple)values[i]);
- if (reg != null) {
- aList.add(reg);
- }
- }
- }
- return ((MIRegisterValue[])aList.toArray(new MIRegisterValue[aList.size()]));
- }
-
- /**
- * Parsing a MITuple of the form:
- * {number="xxx",value="yyy"}
- */
- public static MIRegisterValue getMIRegisterValue(MITuple tuple) {
- MIResult[] args = tuple.getMIResults();
- MIRegisterValue arg = null;
- if (args.length == 2) {
- // Name
- String aName = ""; //$NON-NLS-1$
- MIValue value = args[0].getMIValue();
- if (value != null && value instanceof MIConst) {
- aName = ((MIConst)value).getCString();
- } else {
- aName = ""; //$NON-NLS-1$
- }
-
- // Value
- String aValue = ""; //$NON-NLS-1$
- value = args[1].getMIValue();
- if (value != null && value instanceof MIConst) {
- aValue = ((MIConst)value).getCString();
- } else {
- aValue = ""; //$NON-NLS-1$
- }
-
- try {
- int reg = Integer.parseInt(aName.trim());
- arg = new MIRegisterValue(reg, aValue.trim());
- } catch (NumberFormatException e) {
- }
- }
- return arg;
- }
-}
diff --git a/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/output/MIResult.java b/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/output/MIResult.java
deleted file mode 100644
index 3e3fd974713..00000000000
--- a/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/output/MIResult.java
+++ /dev/null
@@ -1,50 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.mi.core.output;
-
-/**
- * GDB/MI result sematic (Variable=Value)
- */
-public class MIResult {
- String variable = ""; //$NON-NLS-1$
- MIValue value = null;
-
- public String getVariable() {
- return variable;
- }
-
- public void setVariable(String var) {
- variable = var;
- }
-
- public MIValue getMIValue() {
- return value;
- }
-
- public void setMIValue(MIValue val) {
- value = val;
- }
-
- public String toString() {
- StringBuffer buffer = new StringBuffer();
- buffer.append(variable);
- if (value != null) {
- String v = value.toString();
- buffer.append('=');
- if (v.charAt(0) == '[' || v.charAt(0) =='{') {
- buffer.append(v);
- } else {
- buffer.append("\"" + value.toString() + "\""); //$NON-NLS-1$ //$NON-NLS-2$
- }
- }
- return buffer.toString();
- }
-}
diff --git a/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/output/MIResultRecord.java b/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/output/MIResultRecord.java
deleted file mode 100644
index 9619f886908..00000000000
--- a/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/output/MIResultRecord.java
+++ /dev/null
@@ -1,63 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.mi.core.output;
-
-/**
- * GDB/MI ResultRecord.
- */
-public class MIResultRecord {
-
- public final static String DONE ="done"; //$NON-NLS-1$
- public final static String RUNNING ="running"; //$NON-NLS-1$
- public final static String CONNECTED ="connected"; //$NON-NLS-1$
- public final static String ERROR ="error"; //$NON-NLS-1$
- public final static String EXIT ="exit"; //$NON-NLS-1$
-
- static final MIResult[] nullResults = new MIResult[0];
- MIResult[] results = nullResults;
- String resultClass = ""; //$NON-NLS-1$
- int token = -1;
-
- public int getToken() {
- return token;
- }
-
- public void setToken(int t) {
- token = t;
- }
-
- /**
- */
- public String getResultClass() {
- return resultClass;
- }
-
- public void setResultClass(String type) {
- resultClass = type;
- }
-
- public MIResult[] getMIResults() {
- return results;
- }
-
- public void setMIResults(MIResult[] res) {
- results = res;
- }
-
- public String toString() {
- StringBuffer buffer = new StringBuffer();
- buffer.append(token).append('^').append(resultClass);
- for (int i = 0; i < results.length; i++) {
- buffer.append(',').append(results[i].toString());
- }
- return buffer.toString();
- }
-}
diff --git a/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/output/MIShared.java b/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/output/MIShared.java
deleted file mode 100644
index 868d566e388..00000000000
--- a/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/output/MIShared.java
+++ /dev/null
@@ -1,51 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.mi.core.output;
-
-
-/**
- * GDB/MI shared information
- */
-public class MIShared {
-
- String from;
- String to;
- boolean isread;
- String name;
-
- public MIShared (String start, String end, boolean read, String location) {
- from = start;
- to = end;
- isread = read;
- name = location;
- }
-
- public String getFrom() {
- return from;
- }
-
- public String getTo() {
- return to;
- }
-
- public boolean isRead() {
- return isread;
- }
-
- public String getName() {
- return name;
- }
-
- public void setSymbolsRead(boolean read) {
- isread = read;
- }
-
-}
diff --git a/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/output/MISigHandle.java b/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/output/MISigHandle.java
deleted file mode 100644
index ad0864481d0..00000000000
--- a/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/output/MISigHandle.java
+++ /dev/null
@@ -1,58 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.mi.core.output;
-
-
-/**
- * GDB/MI shared information
- */
-public class MISigHandle {
-
- String signal = ""; //$NON-NLS-1$
- boolean stop;
- boolean print;
- boolean pass;
- String description = ""; //$NON-NLS-1$
-
- public MISigHandle (String name, boolean stp, boolean prnt, boolean ps, String desc) {
- signal = name;
- stop = stp;
- print = prnt;
- pass = ps;
- description = desc;
- }
-
- public String getName() {
- return signal;
- }
-
- public boolean isStop() {
- return stop;
- }
-
- public boolean isPrint() {
- return print;
- }
-
- public boolean isPass() {
- return pass;
- }
-
- public void handle(boolean isIgnore, boolean isStop) {
- pass = !isIgnore;
- stop = isStop;
- }
-
- public String getDescription() {
- return description;
- }
-
-}
diff --git a/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/output/MISrcAsm.java b/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/output/MISrcAsm.java
deleted file mode 100644
index 37bb5e2b68b..00000000000
--- a/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/output/MISrcAsm.java
+++ /dev/null
@@ -1,90 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.mi.core.output;
-
-import java.util.ArrayList;
-import java.util.List;
-
-/**
- * Represent a GDB Tuple MI assembly response.
- */
-public class MISrcAsm {
- int line;
- String file = ""; //$NON-NLS-1$
- MIAsm[] asm;
-
- public MISrcAsm(MITuple tuple) {
- parse(tuple);
- }
-
- public int getLine() {
- return line;
- }
-
- public String getFile() {
- return file;
- }
-
- public MIAsm[] getMIAsms() {
- return asm;
- }
-
- public String toString() {
- StringBuffer buffer = new StringBuffer();
- buffer.append("src_and_asm_line={"); //$NON-NLS-1$
- buffer.append("line=\"").append(line).append('"'); //$NON-NLS-1$
- buffer.append(",file=\"" + file + "\","); //$NON-NLS-1$ //$NON-NLS-2$
- buffer.append("line_asm_insn=["); //$NON-NLS-1$
- for (int i = 0; i < asm.length; i++) {
- if (i != 0) {
- buffer.append(',');
- }
- buffer.append(asm[i].toString());
- }
- buffer.append(']');
- buffer.append('}');
- return buffer.toString();
- }
-
- void parse(MITuple tuple) {
- List aList = new ArrayList();
- MIResult[] results = tuple.getMIResults();
- for (int i = 0; i < results.length; i++) {
- String var = results[i].getVariable();
- MIValue value = results[i].getMIValue();
- String str = ""; //$NON-NLS-1$
-
- if (value != null && value instanceof MIConst) {
- str = ((MIConst)value).getCString();
- }
-
- if (var.equals("line_asm_insn")) { //$NON-NLS-1$
- if (value instanceof MIList) {
- MIList list = (MIList)value;
- MIValue[] values = list.getMIValues();
- for (int j = 0; j < values.length; j++) {
- if (values[j] instanceof MITuple) {
- aList.add(new MIAsm((MITuple)values[j]));
- }
- }
- }
- } if (var.equals("line")) { //$NON-NLS-1$
- try {
- line = Integer.parseInt(str.trim());
- } catch (NumberFormatException e) {
- }
- } else if (var.equals("file")) { //$NON-NLS-1$
- file = str;
- }
- }
- asm = (MIAsm[])aList.toArray(new MIAsm[aList.size()]);
- }
-}
diff --git a/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/output/MIStackInfoDepthInfo.java b/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/output/MIStackInfoDepthInfo.java
deleted file mode 100644
index b5581a5585b..00000000000
--- a/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/output/MIStackInfoDepthInfo.java
+++ /dev/null
@@ -1,52 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.cdt.debug.mi.core.output;
-
-/**
- * GDB/MI stack info depth parsing.
- */
-public class MIStackInfoDepthInfo extends MIInfo {
-
- int depth;
-
- public MIStackInfoDepthInfo(MIOutput out) {
- super(out);
- parse();
- }
-
- public int getDepth() {
- return depth;
- }
-
- void parse() {
- if (isDone()) {
- MIOutput out = getMIOutput();
- MIResultRecord rr = out.getMIResultRecord();
- if (rr != null) {
- MIResult[] results = rr.getMIResults();
- for (int i = 0; i < results.length; i++) {
- String var = results[i].getVariable();
- if (var.equals("depth")) { //$NON-NLS-1$
- MIValue val = results[i].getMIValue();
- if (val instanceof MIConst) {
- String str = ((MIConst)val).getCString();
- try {
- depth = Integer.parseInt(str.trim());
- } catch (NumberFormatException e) {
- }
- }
- }
- }
- }
- }
- }
-}
diff --git a/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/output/MIStackListArgumentsInfo.java b/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/output/MIStackListArgumentsInfo.java
deleted file mode 100644
index c4aaaf7f68c..00000000000
--- a/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/output/MIStackListArgumentsInfo.java
+++ /dev/null
@@ -1,83 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.cdt.debug.mi.core.output;
-
-import java.util.ArrayList;
-import java.util.List;
-
-
-/**
- * GDB/MI stack list arguments parsing.
- */
-public class MIStackListArgumentsInfo extends MIInfo {
-
- MIFrame[] frames;
-
- public MIStackListArgumentsInfo(MIOutput out) {
- super(out);
- }
-
- public MIFrame[] getMIFrames() {
- if (frames == null) {
- parse();
- }
- return frames;
- }
-
- void parse() {
- List aList = new ArrayList(1);
- if (isDone()) {
- MIOutput out = getMIOutput();
- MIResultRecord rr = out.getMIResultRecord();
- if (rr != null) {
- MIResult[] results = rr.getMIResults();
- for (int i = 0; i < results.length; i++) {
- String var = results[i].getVariable();
- if (var.equals("stack-args")) { //$NON-NLS-1$
- MIValue val = results[i].getMIValue();
- if (val instanceof MIList) {
- parseStack((MIList)val, aList);
- } else if (val instanceof MITuple) {
- parseStack((MITuple)val, aList);
- }
- }
- }
- }
- }
- frames = (MIFrame[])aList.toArray(new MIFrame[aList.size()]);
- }
-
- void parseStack(MIList miList, List aList) {
- MIResult[] results = miList.getMIResults();
- for (int i = 0; i < results.length; i++) {
- String var = results[i].getVariable();
- if (var.equals("frame")) { //$NON-NLS-1$
- MIValue value = results[i].getMIValue();
- if (value instanceof MITuple) {
- aList.add (new MIFrame((MITuple)value));
- }
- }
- }
- }
- void parseStack(MITuple miTuple, List aList) {
- MIResult[] results = miTuple.getMIResults();
- for (int i = 0; i < results.length; i++) {
- String var = results[i].getVariable();
- if (var.equals("frame")) { //$NON-NLS-1$
- MIValue value = results[i].getMIValue();
- if (value instanceof MITuple) {
- aList.add (new MIFrame((MITuple)value));
- }
- }
- }
- }
-}
diff --git a/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/output/MIStackListFramesInfo.java b/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/output/MIStackListFramesInfo.java
deleted file mode 100644
index 88aa6a6d73c..00000000000
--- a/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/output/MIStackListFramesInfo.java
+++ /dev/null
@@ -1,84 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.mi.core.output;
-
-import java.util.ArrayList;
-import java.util.List;
-
-
-/**
- * GDB/MI stack list frames info.
- */
-public class MIStackListFramesInfo extends MIInfo {
-
- MIFrame[] frames;
-
- public MIStackListFramesInfo(MIOutput out) {
- super(out);
- }
-
- public MIFrame[] getMIFrames() {
- if (frames == null) {
- parse();
- }
- return frames;
- }
-
- void parse() {
- List aList = new ArrayList(1);
- if (isDone()) {
- MIOutput out = getMIOutput();
- MIResultRecord rr = out.getMIResultRecord();
- if (rr != null) {
- MIResult[] results = rr.getMIResults();
- for (int i = 0; i < results.length; i++) {
- String var = results[i].getVariable();
- if (var.equals("stack")) { //$NON-NLS-1$
- MIValue val = results[i].getMIValue();
- if (val instanceof MIList) {
- parseStack((MIList)val, aList);
- } else if (val instanceof MITuple) {
- parseStack((MITuple)val, aList);
- }
- }
- }
- }
- }
- frames = (MIFrame[])aList.toArray(new MIFrame[aList.size()]);
- }
-
- void parseStack(MIList miList, List aList) {
- MIResult[] results = miList.getMIResults();
- for (int i = 0; i < results.length; i++) {
- String var = results[i].getVariable();
- if (var.equals("frame")) { //$NON-NLS-1$
- MIValue value = results[i].getMIValue();
- if (value instanceof MITuple) {
- aList.add (new MIFrame((MITuple)value));
- }
- }
- }
- }
-
- // Old gdb use tuple instead of a list.
- void parseStack(MITuple tuple, List aList) {
- MIResult[] results = tuple.getMIResults();
- for (int i = 0; i < results.length; i++) {
- String var = results[i].getVariable();
- if (var.equals("frame")) { //$NON-NLS-1$
- MIValue value = results[i].getMIValue();
- if (value instanceof MITuple) {
- aList.add (new MIFrame((MITuple)value));
- }
- }
- }
- }
-}
diff --git a/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/output/MIStackListLocalsInfo.java b/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/output/MIStackListLocalsInfo.java
deleted file mode 100644
index c8e2ba8d630..00000000000
--- a/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/output/MIStackListLocalsInfo.java
+++ /dev/null
@@ -1,63 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.cdt.debug.mi.core.output;
-
-
-
-/**
- * GDB/MI stack list locals parsing.
- * -stack-list-locals 1
- * ^done,locals=[{name="p",value="0x8048600 \"ghislaine\""},{name="buf",value="\"'\", 'x' <repeats 24 times>, \"i,xxxxxxxxx\", 'a' <repeats 24 times>"},{name="buf2",value="\"\\\"?'\\\\()~\""},{name="buf3",value="\"alain\""},{name="buf4",value="\"\\t\\t\\n\\f\\r\""},{name="i",value="0"}]
- *
- * On MacOS X 10.4 this returns a tuple:
- * ^done,locals={{name="p",value="0x8048600 \"ghislaine\""},{name="buf",value="\"'\", 'x' <repeats 24 times>, \"i,xxxxxxxxx\", 'a' <repeats 24 times>"},{name="buf2",value="\"\\\"?'\\\\()~\""},{name="buf3",value="\"alain\""},{name="buf4",value="\"\\t\\t\\n\\f\\r\""},{name="i",value="0"}}
- */
-public class MIStackListLocalsInfo extends MIInfo {
-
- MIArg[] locals;
-
- public MIStackListLocalsInfo(MIOutput out) {
- super(out);
- parse();
- }
-
- public MIArg[] getLocals() {
- if (locals == null) {
- parse();
- }
- return locals;
- }
-
- void parse() {
- if (isDone()) {
- MIOutput out = getMIOutput();
- MIResultRecord rr = out.getMIResultRecord();
- if (rr != null) {
- MIResult[] results = rr.getMIResults();
- for (int i = 0; i < results.length; i++) {
- String var = results[i].getVariable();
- if (var.equals("locals")) { //$NON-NLS-1$
- MIValue value = results[i].getMIValue();
- if (value instanceof MIList) {
- locals = MIArg.getMIArgs((MIList)value);
- } else if (value instanceof MITuple) {
- locals = MIArg.getMIArgs((MITuple)value);
- }
- }
- }
- }
- }
- if (locals == null) {
- locals = new MIArg[0];
- }
- }
-}
diff --git a/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/output/MIStatusAsyncOutput.java b/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/output/MIStatusAsyncOutput.java
deleted file mode 100644
index 8d7b3286c12..00000000000
--- a/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/output/MIStatusAsyncOutput.java
+++ /dev/null
@@ -1,18 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.mi.core.output;
-
-/**
- * @see MIAsyncRecord
- */
-public class MIStatusAsyncOutput extends MIAsyncRecord {
-
-}
diff --git a/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/output/MIStreamRecord.java b/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/output/MIStreamRecord.java
deleted file mode 100644
index 2c8983fb454..00000000000
--- a/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/output/MIStreamRecord.java
+++ /dev/null
@@ -1,42 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.mi.core.output;
-
-/**
- * GDB/MI stream record response.
- */
-public abstract class MIStreamRecord extends MIOOBRecord {
-
- String cstring = ""; //$NON-NLS-1$
-
- public String getCString() {
- return cstring;
- }
-
- public void setCString(String str) {
- cstring = str;
- }
-
- public String getString () {
- return MIConst.getString(getCString());
- }
-
- public String toString() {
- if (this instanceof MIConsoleStreamOutput) {
- return "~\"" + cstring + "\"\n"; //$NON-NLS-1$ //$NON-NLS-2$
- } else if (this instanceof MITargetStreamOutput) {
- return "@\"" + cstring + "\"\n"; //$NON-NLS-1$ //$NON-NLS-2$
- } else if (this instanceof MILogStreamOutput) {
- return "&\"" + cstring + "\"\n"; //$NON-NLS-1$ //$NON-NLS-2$
- }
- return "\"" + cstring + "\"\n"; //$NON-NLS-1$ //$NON-NLS-2$
- }
-}
diff --git a/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/output/MITargetStreamOutput.java b/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/output/MITargetStreamOutput.java
deleted file mode 100644
index 59fe4839f33..00000000000
--- a/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/output/MITargetStreamOutput.java
+++ /dev/null
@@ -1,19 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.mi.core.output;
-
-/**
- * @see MIStreamRecord
- */
-public class MITargetStreamOutput extends MIStreamRecord {
-
- public static final String startTag = "@"; //$NON-NLS-1$
-}
diff --git a/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/output/MIThreadListIdsInfo.java b/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/output/MIThreadListIdsInfo.java
deleted file mode 100644
index d8e47cd9807..00000000000
--- a/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/output/MIThreadListIdsInfo.java
+++ /dev/null
@@ -1,70 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.mi.core.output;
-
-/**
- * GDB/MI thread list parsing.
- */
-public class MIThreadListIdsInfo extends MIInfo {
-
- int[] threadIds;
-
- public MIThreadListIdsInfo(MIOutput out) {
- super(out);
- }
-
- public int[] getThreadIds() {
- if (threadIds == null) {
- parse();
- }
- return threadIds;
- }
-
- void parse() {
- if (isDone()) {
- MIOutput out = getMIOutput();
- MIResultRecord rr = out.getMIResultRecord();
- if (rr != null) {
- MIResult[] results = rr.getMIResults();
- for (int i = 0; i < results.length; i++) {
- String var = results[i].getVariable();
- if (var.equals("thread-ids")) { //$NON-NLS-1$
- MIValue val = results[i].getMIValue();
- if (val instanceof MITuple) {
- parseThreadIds((MITuple)val);
- }
- }
- }
- }
- }
- if (threadIds == null) {
- threadIds = new int[0];
- }
- }
-
- void parseThreadIds(MITuple tuple) {
- MIResult[] results = tuple.getMIResults();
- threadIds = new int[results.length];
- for (int i = 0; i < results.length; i++) {
- String var = results[i].getVariable();
- if (var.equals("thread-id")) { //$NON-NLS-1$
- MIValue value = results[i].getMIValue();
- if (value instanceof MIConst) {
- String str = ((MIConst)value).getCString();
- try {
- threadIds[i] = Integer.parseInt(str.trim());
- } catch (NumberFormatException e) {
- }
- }
- }
- }
- }
-}
diff --git a/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/output/MIThreadSelectInfo.java b/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/output/MIThreadSelectInfo.java
deleted file mode 100644
index c0b817d2807..00000000000
--- a/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/output/MIThreadSelectInfo.java
+++ /dev/null
@@ -1,61 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.mi.core.output;
-
-/**
- * GDB/MI thread select parsing.
- */
-public class MIThreadSelectInfo extends MIInfo {
-
- int threadId;
- MIFrame frame;
-
- public MIThreadSelectInfo(MIOutput out) {
- super(out);
- parse();
- }
-
- public int getNewThreadId() {
- return threadId;
- }
-
- public MIFrame getFrame() {
- return frame;
- }
-
- void parse() {
- if (isDone()) {
- MIOutput out = getMIOutput();
- MIResultRecord rr = out.getMIResultRecord();
- if (rr != null) {
- MIResult[] results = rr.getMIResults();
- for (int i = 0; i < results.length; i++) {
- String var = results[i].getVariable();
- if (var.equals("new-thread-id")) { //$NON-NLS-1$
- MIValue value = results[i].getMIValue();
- if (value instanceof MIConst) {
- String str = ((MIConst)value).getCString();
- try {
- threadId = Integer.parseInt(str.trim());
- } catch (NumberFormatException e) {
- }
- }
- } else if (var.equals("frame")) { //$NON-NLS-1$
- MIValue value = results[i].getMIValue();
- if (value instanceof MITuple) {
- frame = new MIFrame((MITuple)value);
- }
- }
- }
- }
- }
- }
-}
diff --git a/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/output/MITuple.java b/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/output/MITuple.java
deleted file mode 100644
index e3b324decad..00000000000
--- a/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/output/MITuple.java
+++ /dev/null
@@ -1,57 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.mi.core.output;
-
-/**
- * GDB/MI tuple value.
- */
-public class MITuple extends MIValue {
-
- final static MIResult[] nullResults = new MIResult[0];
- final static MIValue[] nullValues = new MIValue[0];
- MIResult[] results = nullResults;
- MIValue[] values = nullValues;
-
- public MIResult[] getMIResults() {
- return results;
- }
-
- public void setMIResults(MIResult[] res) {
- results = res;
- }
-
- public MIValue[] getMIValues() {
- return values;
- }
-
- public void setMIValues(MIValue[] vals) {
- values = vals;
- }
-
- public String toString() {
- StringBuffer buffer = new StringBuffer();
- buffer.append('{');
- for (int i = 0; i < results.length; i++) {
- if (i != 0) {
- buffer.append(',');
- }
- buffer.append(results[i].toString());
- }
- for (int i = 0; i < values.length; i++) {
- if (i != 0) {
- buffer.append(',');
- }
- buffer.append(values[i].toString());
- }
- buffer.append('}');
- return buffer.toString();
- }
-}
diff --git a/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/output/MIValue.java b/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/output/MIValue.java
deleted file mode 100644
index d89c7b0b36f..00000000000
--- a/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/output/MIValue.java
+++ /dev/null
@@ -1,17 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.mi.core.output;
-
-/**
- * GDB/MI value.
- */
-public abstract class MIValue {
-}
diff --git a/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/output/MIVar.java b/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/output/MIVar.java
deleted file mode 100644
index ba3323fcaca..00000000000
--- a/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/output/MIVar.java
+++ /dev/null
@@ -1,77 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.mi.core.output;
-
-/**
- * GDB/MI var-list-children
- * -var-list-children var2
- * ^done,numchild="6",children={child={name="var2.0",exp="0",numchild="0",type="char"},child={name="var2.1",exp="1",numchild="0",type="char"},child={name="var2.2",exp="2",numchild="0",type="char"},child={name="var2.3",exp="3",numchild="0",type="char"},child={name="var2.4",exp="4",numchild="0",type="char"},child={name="var2.5",exp="5",numchild="0",type="char"}}
- *
- */
-public class MIVar {
-
- String name = ""; //$NON-NLS-1$
- String type = ""; //$NON-NLS-1$
- String exp = ""; //$NON-NLS-1$
- int numchild;
-
-
- public MIVar(String n, int num, String t) {
- name = n;
- numchild = num;
- type = t;
- }
-
- public MIVar(MITuple tuple) {
- parse(tuple);
- }
-
- public String getVarName() {
- return name;
- }
-
- public String getType() {
- return type;
- }
-
- public int getNumChild() {
- return numchild;
- }
-
- public String getExp() {
- return exp;
- }
-
- void parse(MITuple tuple) {
- MIResult[] results = tuple.getMIResults();
- for (int i = 0; i < results.length; i++) {
- String var = results[i].getVariable();
- MIValue value = results[i].getMIValue();
- String str = ""; //$NON-NLS-1$
- if (value != null && value instanceof MIConst) {
- str = ((MIConst)value).getCString();
- }
-
- if (var.equals("numchild")) { //$NON-NLS-1$
- try {
- numchild = Integer.parseInt(str.trim());
- } catch (NumberFormatException e) {
- }
- } else if (var.equals("name")) { //$NON-NLS-1$
- name = str;
- } else if (var.equals("type")) { //$NON-NLS-1$
- type = str;
- } else if (var.equals("exp")) { //$NON-NLS-1$
- exp = str;
- }
- }
- }
-}
diff --git a/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/output/MIVarChange.java b/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/output/MIVarChange.java
deleted file mode 100644
index 1eb5b4926df..00000000000
--- a/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/output/MIVarChange.java
+++ /dev/null
@@ -1,45 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.mi.core.output;
-
-/**
- * GDB/MI var-update.
- */
-
-public class MIVarChange {
- String name;
- boolean inScope;
- boolean changed;
-
- public MIVarChange(String n) {
- name = n;
- }
-
- public String getVarName() {
- return name;
- }
-
- public boolean isInScope() {
- return inScope;
- }
-
- public boolean isChanged() {
- return changed;
- }
-
- public void setInScope(boolean b) {
- inScope = b;
- }
-
- public void setChanged(boolean c) {
- changed = c;
- }
-}
diff --git a/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/output/MIVarCreateInfo.java b/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/output/MIVarCreateInfo.java
deleted file mode 100644
index bf00512ba82..00000000000
--- a/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/output/MIVarCreateInfo.java
+++ /dev/null
@@ -1,66 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.mi.core.output;
-
-
-/**
- * GDB/MI var-create.
- * -var-create "-" * buf3
- * ^done,name="var1",numchild="6",type="char [6]"
- */
-public class MIVarCreateInfo extends MIInfo {
-
- String name = ""; //$NON-NLS-1$
- int numChild;
- String type = ""; //$NON-NLS-1$
- MIVar child;
-
- public MIVarCreateInfo(MIOutput record) {
- super(record);
- parse();
- }
-
- public MIVar getMIVar() {
- if (child == null) {
- child = new MIVar(name, numChild, type);
- }
- return child;
- }
-
- void parse() {
- if (isDone()) {
- MIOutput out = getMIOutput();
- MIResultRecord rr = out.getMIResultRecord();
- if (rr != null) {
- MIResult[] results = rr.getMIResults();
- for (int i = 0; i < results.length; i++) {
- String var = results[i].getVariable();
- MIValue value = results[i].getMIValue();
- String str = ""; //$NON-NLS-1$
- if (value instanceof MIConst) {
- str = ((MIConst)value).getString();
- }
-
- if (var.equals("name")) { //$NON-NLS-1$
- name = str;
- } else if (var.equals("numchild")) { //$NON-NLS-1$
- try {
- numChild = Integer.parseInt(str.trim());
- } catch (NumberFormatException e) {
- }
- } else if (var.equals("type")) { //$NON-NLS-1$
- type = str;
- }
- }
- }
- }
- }
-}
diff --git a/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/output/MIVarDeleteInfo.java b/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/output/MIVarDeleteInfo.java
deleted file mode 100644
index 5e20244a74d..00000000000
--- a/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/output/MIVarDeleteInfo.java
+++ /dev/null
@@ -1,52 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.mi.core.output;
-
-
-/**
- * GDB/MI var-delete.
- */
-public class MIVarDeleteInfo extends MIInfo {
-
- int ndeleted;
-
- public MIVarDeleteInfo(MIOutput record) {
- super(record);
- parse();
- }
-
- public int getNumberDeleted () {
- return ndeleted;
- }
-
- void parse() {
- if (isDone()) {
- MIOutput out = getMIOutput();
- MIResultRecord rr = out.getMIResultRecord();
- if (rr != null) {
- MIResult[] results = rr.getMIResults();
- for (int i = 0; i < results.length; i++) {
- String var = results[i].getVariable();
- if (var.equals("ndeleted")) { //$NON-NLS-1$
- MIValue value = results[i].getMIValue();
- if (value instanceof MIConst) {
- String str = ((MIConst)value).getString();
- try {
- ndeleted = Integer.parseInt(str.trim());
- } catch (NumberFormatException e) {
- }
- }
- }
- }
- }
- }
- }
-}
diff --git a/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/output/MIVarEvaluateExpressionInfo.java b/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/output/MIVarEvaluateExpressionInfo.java
deleted file mode 100644
index 8031aafb530..00000000000
--- a/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/output/MIVarEvaluateExpressionInfo.java
+++ /dev/null
@@ -1,47 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.mi.core.output;
-
-/**
- * GDB/MI var-evalute-expression
- */
-public class MIVarEvaluateExpressionInfo extends MIInfo {
-
- String value = ""; //$NON-NLS-1$
-
- public MIVarEvaluateExpressionInfo(MIOutput record) {
- super(record);
- parse();
- }
-
- public String getValue () {
- return value;
- }
-
- void parse() {
- if (isDone()) {
- MIOutput out = getMIOutput();
- MIResultRecord rr = out.getMIResultRecord();
- if (rr != null) {
- MIResult[] results = rr.getMIResults();
- for (int i = 0; i < results.length; i++) {
- String var = results[i].getVariable();
- if (var.equals("value")) { //$NON-NLS-1$
- MIValue val = results[i].getMIValue();
- if (val instanceof MIConst) {
- value = ((MIConst)val).getCString();
- }
- }
- }
- }
- }
- }
-}
diff --git a/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/output/MIVarInfoExpressionInfo.java b/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/output/MIVarInfoExpressionInfo.java
deleted file mode 100644
index 37631620c48..00000000000
--- a/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/output/MIVarInfoExpressionInfo.java
+++ /dev/null
@@ -1,57 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.mi.core.output;
-
-/**
- * GDB/MI var-info-expression.
- */
-public class MIVarInfoExpressionInfo extends MIInfo {
-
- String lang = ""; //$NON-NLS-1$
- String exp = ""; //$NON-NLS-1$
-
- public MIVarInfoExpressionInfo(MIOutput record) {
- super(record);
- parse();
- }
-
- public String getLanguage () {
- return lang;
- }
-
- public String getExpression() {
- return exp;
- }
-
- void parse() {
- if (isDone()) {
- MIOutput out = getMIOutput();
- MIResultRecord rr = out.getMIResultRecord();
- if (rr != null) {
- MIResult[] results = rr.getMIResults();
- for (int i = 0; i < results.length; i++) {
- String var = results[i].getVariable();
- MIValue value = results[i].getMIValue();
- String str = ""; //$NON-NLS-1$
- if (value instanceof MIConst) {
- str = ((MIConst)value).getString();
- }
-
- if (var.equals("lang")) { //$NON-NLS-1$
- lang = str;
- } else if (var.equals("exp")) { //$NON-NLS-1$
- exp = str;
- }
- }
- }
- }
- }
-}
diff --git a/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/output/MIVarInfoNumChildrenInfo.java b/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/output/MIVarInfoNumChildrenInfo.java
deleted file mode 100644
index 7200cfe4f39..00000000000
--- a/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/output/MIVarInfoNumChildrenInfo.java
+++ /dev/null
@@ -1,54 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.cdt.debug.mi.core.output;
-
-
-/**
- * GDB/MI var-info-num-children.
- */
-public class MIVarInfoNumChildrenInfo extends MIInfo {
-
- int children;
-
- public MIVarInfoNumChildrenInfo(MIOutput record) {
- super(record);
- parse();
- }
-
- public int getChildNumber() {
- return children;
- }
-
- void parse() {
- if (isDone()) {
- MIOutput out = getMIOutput();
- MIResultRecord rr = out.getMIResultRecord();
- if (rr != null) {
- MIResult[] results = rr.getMIResults();
- for (int i = 0; i < results.length; i++) {
- String var = results[i].getVariable();
-
- if (var.equals("numchild")) { //$NON-NLS-1$
- MIValue value = results[i].getMIValue();
- if (value instanceof MIConst) {
- String str = ((MIConst)value).getString();
- try {
- children = Integer.parseInt(str.trim());
- } catch (NumberFormatException e) {
- }
- }
- }
- }
- }
- }
- }
-}
diff --git a/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/output/MIVarInfoTypeInfo.java b/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/output/MIVarInfoTypeInfo.java
deleted file mode 100644
index 9ebf6af7965..00000000000
--- a/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/output/MIVarInfoTypeInfo.java
+++ /dev/null
@@ -1,48 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.mi.core.output;
-
-
-/**
- * GDB/MI var-info-type
- */
-public class MIVarInfoTypeInfo extends MIInfo {
-
- String type = ""; //$NON-NLS-1$
-
- public MIVarInfoTypeInfo(MIOutput record) {
- super(record);
- parse();
- }
-
- public String getType() {
- return type;
- }
-
- void parse() {
- if (isDone()) {
- MIOutput out = getMIOutput();
- MIResultRecord rr = out.getMIResultRecord();
- if (rr != null) {
- MIResult[] results = rr.getMIResults();
- for (int i = 0; i < results.length; i++) {
- String var = results[i].getVariable();
- if (var.equals("type")) { //$NON-NLS-1$
- MIValue value = results[i].getMIValue();
- if (value instanceof MIConst) {
- type = ((MIConst)value).getString();
- }
- }
- }
- }
- }
- }
-}
diff --git a/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/output/MIVarListChildrenInfo.java b/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/output/MIVarListChildrenInfo.java
deleted file mode 100644
index 3ccdd6d9c29..00000000000
--- a/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/output/MIVarListChildrenInfo.java
+++ /dev/null
@@ -1,88 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.mi.core.output;
-
-import java.util.ArrayList;
-import java.util.List;
-
-/**
- * GDB/MI var-list-children
- * -var-list-children var2
- * ^done,numchild="6",children={child={name="var2.0",exp="0",numchild="0",type="char"},child={name="var2.1",exp="1",numchild="0",type="char"},child={name="var2.2",exp="2",numchild="0",type="char"},child={name="var2.3",exp="3",numchild="0",type="char"},child={name="var2.4",exp="4",numchild="0",type="char"},child={name="var2.5",exp="5",numchild="0",type="char"}}
- *
- */
-public class MIVarListChildrenInfo extends MIInfo {
-
- MIVar[] children;
- int numchild;
-
- public MIVarListChildrenInfo(MIOutput record) {
- super(record);
- parse();
- }
-
- public MIVar[] getMIVars() {
- return children;
- }
-
- void parse() {
- List aList = new ArrayList();
- if (isDone()) {
- MIOutput out = getMIOutput();
- MIResultRecord rr = out.getMIResultRecord();
- if (rr != null) {
- MIResult[] results = rr.getMIResults();
- for (int i = 0; i < results.length; i++) {
- String var = results[i].getVariable();
- MIValue value = results[i].getMIValue();
-
- if (var.equals("numchild")) { //$NON-NLS-1$
- if (value instanceof MIConst) {
- String str = ((MIConst)value).getString();
- try {
- numchild = Integer.parseInt(str.trim());
- } catch (NumberFormatException e) {
- }
- }
- } else if (var.equals("children")) { //$NON-NLS-1$
- parseChildren(value, aList);
- }
- }
- }
- }
- children = (MIVar[])aList.toArray(new MIVar[aList.size()]);
- }
-
- /*
- * Some gdb MacOSX do not return a MITuple so we have
- * to check for different format.
- * See PR 81019
- */
- void parseChildren(MIValue val, List aList) {
- MIResult[] results = null;
- if (val instanceof MITuple) {
- results = ((MITuple)val).getMIResults();
- } else if (val instanceof MIList) {
- results = ((MIList)val).getMIResults();
- }
- if (results != null) {
- for (int i = 0; i < results.length; i++) {
- String var = results[i].getVariable();
- if (var.equals("child")) { //$NON-NLS-1$
- MIValue value = results[i].getMIValue();
- if (value instanceof MITuple) {
- aList.add(new MIVar((MITuple)value));
- }
- }
- }
- }
- }
-}
diff --git a/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/output/MIVarShowAttributesInfo.java b/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/output/MIVarShowAttributesInfo.java
deleted file mode 100644
index 0798489d573..00000000000
--- a/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/output/MIVarShowAttributesInfo.java
+++ /dev/null
@@ -1,51 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.mi.core.output;
-
-/**
- * GDB/MI var-show-attributes
- */
-public class MIVarShowAttributesInfo extends MIInfo {
-
- String attr = ""; //$NON-NLS-1$
-
- public MIVarShowAttributesInfo(MIOutput record) {
- super(record);
- parse();
- }
-
- public String getAttributes () {
- return attr;
- }
-
- public boolean isEditable() {
- return attr.equals("editable"); //$NON-NLS-1$
- }
-
- void parse() {
- if (isDone()) {
- MIOutput out = getMIOutput();
- MIResultRecord rr = out.getMIResultRecord();
- if (rr != null) {
- MIResult[] results = rr.getMIResults();
- for (int i = 0; i < results.length; i++) {
- String var = results[i].getVariable();
- if (var.equals("attr")) { //$NON-NLS-1$
- MIValue value = results[i].getMIValue();
- if (value instanceof MIConst) {
- attr = ((MIConst)value).getString();
- }
- }
- }
- }
- }
- }
-}
diff --git a/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/output/MIVarShowFormatInfo.java b/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/output/MIVarShowFormatInfo.java
deleted file mode 100644
index 3d6043fb76f..00000000000
--- a/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/output/MIVarShowFormatInfo.java
+++ /dev/null
@@ -1,60 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.mi.core.output;
-
-import org.eclipse.cdt.debug.mi.core.MIFormat;
-
-/**
- * GDB/MI var-show-format
- */
-public class MIVarShowFormatInfo extends MIInfo {
-
- int format = MIFormat.NATURAL;
-
- public MIVarShowFormatInfo(MIOutput record) {
- super(record);
- parse();
- }
-
- public int getFormat() {
- return format;
- }
-
- void parse() {
- if (isDone()) {
- MIOutput out = getMIOutput();
- MIResultRecord rr = out.getMIResultRecord();
- if (rr != null) {
- MIResult[] results = rr.getMIResults();
- for (int i = 0; i < results.length; i++) {
- String var = results[i].getVariable();
- if (var.equals("name")) { //$NON-NLS-1$
- MIValue value = results[i].getMIValue();
- if (value instanceof MIConst) {
- String str = ((MIConst)value).getString();
- if ("binary".equals(str)) { //$NON-NLS-1$
- format = MIFormat.BINARY;
- } else if ("decimal".equals(str)) { //$NON-NLS-1$
- format = MIFormat.DECIMAL;
- } else if ("hexadecimal".equals(str)) { //$NON-NLS-1$
- format = MIFormat.HEXADECIMAL;
- } else if ("octal".equals(str)) { //$NON-NLS-1$
- format = MIFormat.OCTAL;
- } else if ("natural".equals(str)) { //$NON-NLS-1$
- format = MIFormat.NATURAL;
- }
- }
- }
- }
- }
- }
- }
-}
diff --git a/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/output/MIVarUpdateInfo.java b/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/output/MIVarUpdateInfo.java
deleted file mode 100644
index fa8553760b0..00000000000
--- a/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/output/MIVarUpdateInfo.java
+++ /dev/null
@@ -1,103 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.mi.core.output;
-
-import java.util.ArrayList;
-import java.util.List;
-
-/**
- * GDB/MI var-update.
- * -var-update *
- * ^done,changelist={name="var3",in_scope="true",type_changed="false",name="var2",in_scope="true",type_changed="false"}
- */
-public class MIVarUpdateInfo extends MIInfo {
-
- MIVarChange[] changeList;
-
- public MIVarUpdateInfo(MIOutput record) {
- super(record);
- parse();
- }
-
- public MIVarChange[] getMIVarChanges() {
- return changeList;
- }
-
- void parse() {
- List aList = new ArrayList();
- if (isDone()) {
- MIOutput out = getMIOutput();
- MIResultRecord rr = out.getMIResultRecord();
- if (rr != null) {
- MIResult[] results = rr.getMIResults();
- for (int i = 0; i < results.length; i++) {
- String var = results[i].getVariable();
- if (var.equals("changelist")) { //$NON-NLS-1$
- MIValue value = results[i].getMIValue();
- if (value instanceof MITuple) {
- parseChangeList((MITuple)value, aList);
- } else if (value instanceof MIList) {
- parseChangeList((MIList)value, aList);
- }
- }
- }
- }
- }
- changeList = (MIVarChange[])aList.toArray(new MIVarChange[aList.size()]);
- }
-
- /**
- * For MI2 the format is now a MIList.
- * @param tuple
- * @param aList
- */
- void parseChangeList(MIList miList, List aList) {
- MIValue[] values = miList.getMIValues();
- for (int i = 0; i < values.length; ++i) {
- if (values[i] instanceof MITuple) {
- parseChangeList((MITuple)values[i], aList);
- } else if (values[i] instanceof MIList) {
- parseChangeList((MIList)values[i], aList);
- }
- }
- }
-
- void parseChangeList(MITuple tuple, List aList) {
- MIResult[] results = tuple.getMIResults();
- MIVarChange change = null;
- for (int i = 0; i < results.length; i++) {
- String var = results[i].getVariable();
- MIValue value = results[i].getMIValue();
- if (value instanceof MITuple) {
- parseChangeList((MITuple)value, aList);
- }
- else
- {
- String str = ""; //$NON-NLS-1$
- if (value instanceof MIConst) {
- str = ((MIConst)value).getString();
- }
- if (var.equals("name")) { //$NON-NLS-1$
- change = new MIVarChange(str);
- aList.add(change);
- } else if (var.equals("in_scope")) { //$NON-NLS-1$
- if (change != null) {
- change.setInScope("true".equals(str)); //$NON-NLS-1$
- }
- } else if (var.equals("type_changed")) { //$NON-NLS-1$
- if (change != null) {
- change.setChanged("true".equals(str)); //$NON-NLS-1$
- }
- }
- }
- }
- }
-}
diff --git a/debug/org.eclipse.cdt.debug.mi.core/plugin.properties b/debug/org.eclipse.cdt.debug.mi.core/plugin.properties
deleted file mode 100644
index d6140c2fc28..00000000000
--- a/debug/org.eclipse.cdt.debug.mi.core/plugin.properties
+++ /dev/null
@@ -1,23 +0,0 @@
-###############################################################################
-# Copyright (c) 2000, 2006 QNX Software Systems and others.
-# All rights reserved. This program and the accompanying materials
-# are made available under the terms of the Eclipse Public License v1.0
-# which accompanies this distribution, and is available at
-# http://www.eclipse.org/legal/epl-v10.html
-#
-# Contributors:
-# QNX Software Systems - Initial API and implementation
-###############################################################################
-pluginName=C/C++ Development Tools GDB/MI CDI Debugger Core
-providerName=Eclipse.org
-
-GDBDebugger.name=gdb Debugger
-CygwinGDBDebugger.name=Cygwin gdb Debugger
-GDBServer.name=gdbserver Debugger
-GDBMIDebugger.name=gdb/mi
-
-StandardCommandFactory.name=Standard
-StandardLinuxCommandFactory.name=Standard (Linux)
-StandardWindowsCommandFactory.name=Standard (Windows)
-StandardMacOSCommandFactory.name=Standard (Mac OS)
-CygWinCommandFactory.name=CygWin
diff --git a/debug/org.eclipse.cdt.debug.mi.core/plugin.xml b/debug/org.eclipse.cdt.debug.mi.core/plugin.xml
deleted file mode 100644
index 5859e7ba65b..00000000000
--- a/debug/org.eclipse.cdt.debug.mi.core/plugin.xml
+++ /dev/null
@@ -1,118 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<?eclipse version="3.0"?>
-<plugin>
- <extension-point id="commandFactories" name="gdb/mi Command Factories" schema="schema/commandFactories.exsd"/>
-
- <extension
- point="org.eclipse.cdt.debug.core.CDebugger">
- <debugger
- class="org.eclipse.cdt.debug.mi.core.GDBCDIDebugger2"
- cpu="native"
- id="org.eclipse.cdt.debug.mi.core.CDebuggerNew"
- modes="run,core,attach"
- name="%GDBMIDebugger.name"
- platform="*">
- </debugger>
- <debugger
- platform="win32"
- name="%CygwinGDBDebugger.name"
- modes="run,core,attach"
- cpu="native"
- class="org.eclipse.cdt.debug.mi.core.CygwinGDBCDIDebugger2"
- id="org.eclipse.cdt.debug.mi.core.CygwinCDebugger">
- </debugger>
- <debugger
- platform="*"
- name="%GDBServer.name"
- modes="run"
- cpu="*"
- class="org.eclipse.cdt.debug.mi.core.GDBServerCDIDebugger2"
- id="org.eclipse.cdt.debug.mi.core.GDBServerCDebugger">
- </debugger>
- <debugger
- class="org.eclipse.cdt.debug.mi.core.GDBCDIDebugger2"
- cpu="native"
- id="org.eclipse.cdt.debug.mi.core.CDebugger"
- modes="run,core,attach"
- name="%GDBDebugger.name"
- platform="*"/>
- </extension>
- <extension
- point="org.eclipse.core.runtime.preferences">
- <initializer class="org.eclipse.cdt.debug.mi.core.MIPreferenceInitializer"/>
- </extension>
- <extension
- point="org.eclipse.cdt.debug.mi.core.commandFactories">
- <commandFactory
- class="org.eclipse.cdt.debug.mi.core.command.factories.win32.StandardWinCommandFactory"
- debuggerID="org.eclipse.cdt.debug.mi.core.CDebuggerNew"
- id="org.eclipse.cdt.debug.mi.core.standardWinCommandFactory"
- miVersions="mi,mi1,mi2"
- name="%StandardWindowsCommandFactory.name"
- platforms="win32"/>
- <commandFactory
- class="org.eclipse.cdt.debug.mi.core.command.factories.win32.CygwinCommandFactory"
- debuggerID="org.eclipse.cdt.debug.mi.core.CDebuggerNew"
- id="org.eclipse.cdt.debug.mi.core.cygwinCommandFactory"
- miVersions="mi,mi1,mi2"
- name="%CygWinCommandFactory.name"
- platforms="win32"/>
- <commandFactory
- class="org.eclipse.cdt.debug.mi.core.command.factories.linux.StandardLinuxCommandFactory"
- debuggerID="org.eclipse.cdt.debug.mi.core.CDebuggerNew"
- id="org.eclipse.cdt.debug.mi.core.standardLinuxCommandFactory"
- miVersions="mi,mi1,mi2"
- name="%StandardLinuxCommandFactory.name"
- platforms="linux"/>
- <commandFactory
- class="org.eclipse.cdt.debug.mi.core.command.factories.macos.StandardMacOSCommandFactory"
- debuggerID="org.eclipse.cdt.debug.mi.core.CDebuggerNew"
- id="org.eclipse.cdt.debug.mi.core.standardMacOSCommandFactory"
- miVersions="mi,mi1,mi2"
- name="%StandardMacOSCommandFactory.name"
- platforms="macosx"/>
- <commandFactory
- class="org.eclipse.cdt.debug.mi.core.command.factories.StandardCommandFactory"
- debuggerID="org.eclipse.cdt.debug.mi.core.CDebuggerNew"
- id="org.eclipse.cdt.debug.mi.core.standardCommandFactory"
- miVersions="mi,mi1,mi2"
- name="%StandardCommandFactory.name"
- platforms="*"/>
- <commandFactory
- class="org.eclipse.cdt.debug.mi.core.command.factories.StandardCommandFactory"
- debuggerID="org.eclipse.cdt.debug.mi.core.GDBServerCDebugger"
- id="org.eclipse.cdt.debug.mi.core.standardCommandFactory"
- miVersions="mi,mi1,mi2"
- name="%StandardCommandFactory.name"
- platforms="*"/>
- <commandFactory
- class="org.eclipse.cdt.debug.mi.core.command.factories.win32.StandardWinCommandFactory"
- debuggerID="org.eclipse.cdt.debug.mi.core.GDBServerCDebugger"
- id="org.eclipse.cdt.debug.mi.core.standardWinCommandFactory"
- miVersions="mi,mi1,mi2"
- name="%StandardWindowsCommandFactory.name"
- platforms="win32"/>
- <commandFactory
- class="org.eclipse.cdt.debug.mi.core.command.factories.win32.CygwinCommandFactory"
- debuggerID="org.eclipse.cdt.debug.mi.core.GDBServerCDebugger"
- id="org.eclipse.cdt.debug.mi.core.cygwinCommandFactory"
- miVersions="mi,mi1,mi2"
- name="%CygWinCommandFactory.name"
- platforms="win32"/>
- <commandFactory
- class="org.eclipse.cdt.debug.mi.core.command.factories.linux.StandardLinuxCommandFactory"
- debuggerID="org.eclipse.cdt.debug.mi.core.GDBServerCDebugger"
- id="org.eclipse.cdt.debug.mi.core.standardLinuxCommandFactory"
- miVersions="mi,mi1,mi2"
- name="%StandardLinuxCommandFactory.name"
- platforms="linux"/>
- <commandFactory
- class="org.eclipse.cdt.debug.mi.core.command.factories.macos.StandardMacOSCommandFactory"
- debuggerID="org.eclipse.cdt.debug.mi.core.GDBServerCDebugger"
- id="org.eclipse.cdt.debug.mi.core.standardMacOSCommandFactory"
- miVersions="mi,mi1,mi2"
- name="%StandardMacOSCommandFactory.name"
- platforms="macosx"/>
- </extension>
-
-</plugin>
diff --git a/debug/org.eclipse.cdt.debug.mi.core/schema/commandFactories.exsd b/debug/org.eclipse.cdt.debug.mi.core/schema/commandFactories.exsd
deleted file mode 100644
index 84a7736b1fa..00000000000
--- a/debug/org.eclipse.cdt.debug.mi.core/schema/commandFactories.exsd
+++ /dev/null
@@ -1,161 +0,0 @@
-<?xml version='1.0' encoding='UTF-8'?>
-<!-- Schema file written by PDE -->
-<schema targetNamespace="org.eclipse.cdt.debug.mi.core">
-<annotation>
- <appInfo>
- <meta.schema plugin="org.eclipse.cdt.debug.mi.core" id="commandFactories" name="gdb/mi Command Factories"/>
- </appInfo>
- <documentation>
- Allows the contributions of modified gdb/mi command sets.
- </documentation>
- </annotation>
-
- <element name="extension">
- <complexType>
- <sequence>
- <element ref="commandFactory" minOccurs="1" maxOccurs="unbounded"/>
- </sequence>
- <attribute name="point" type="string" use="required">
- <annotation>
- <documentation>
- a fully qualified identifier of the target extension point
- </documentation>
- </annotation>
- </attribute>
- <attribute name="id" type="string">
- <annotation>
- <documentation>
- an optional identifier of the extension instance
- </documentation>
- </annotation>
- </attribute>
- <attribute name="name" type="string">
- <annotation>
- <documentation>
- an optional name of the extension instance
- </documentation>
- <appInfo>
- <meta.attribute translatable="true"/>
- </appInfo>
- </annotation>
- </attribute>
- </complexType>
- </element>
-
- <element name="commandFactory">
- <complexType>
- <attribute name="id" type="string" use="required">
- <annotation>
- <documentation>
- specifies a unique identifier for this command factory.
- </documentation>
- </annotation>
- </attribute>
- <attribute name="class" type="string" use="required">
- <annotation>
- <documentation>
- specifies a fully qualified name of a Java class that extends &amp;lt;code&amp;gt;CommandFactory&amp;lt;/code&amp;gt;
- </documentation>
- <appInfo>
- <meta.attribute kind="java" basedOn="org.eclipse.cdt.debug.mi.core.command.CommandFactory"/>
- </appInfo>
- </annotation>
- </attribute>
- <attribute name="debuggerID" type="string" use="required">
- <annotation>
- <documentation>
- specifies the identifier of the debugger this command factory is contributed to.
- </documentation>
- </annotation>
- </attribute>
- <attribute name="name" type="string" use="required">
- <annotation>
- <documentation>
- specifies the name of this command factory that will appear in the launch dialog.
- </documentation>
- </annotation>
- </attribute>
- <attribute name="description" type="string">
- <annotation>
- <documentation>
- specifies the description of this command factory.
- </documentation>
- </annotation>
- </attribute>
- <attribute name="platforms" type="string">
- <annotation>
- <documentation>
- specifies a comma separated list of supported platforms.
- </documentation>
- </annotation>
- </attribute>
- <attribute name="miVersions" type="string">
- <annotation>
- <documentation>
- specifies a comma separated list of mi levels supported by this command factory.
- </documentation>
- </annotation>
- </attribute>
- </complexType>
- </element>
-
- <annotation>
- <appInfo>
- <meta.section type="since"/>
- </appInfo>
- <documentation>
- 3.1
- </documentation>
- </annotation>
-
- <annotation>
- <appInfo>
- <meta.section type="examples"/>
- </appInfo>
- <documentation>
- The following is an example of a command factory extension point:
-
-&lt;extension point=&quot;org.eclipse.cdt.debug.mi.core.commandFactories&quot;&gt;
- &lt;commandFactory
- class=&quot;org.eclipse.cdt.debug.mi.core.command.factories.win32.CygwinCommandFactory&quot;
- debuggerID=&quot;org.eclipse.cdt.debug.mi.core.CDebuggerNew&quot;
- id=&quot;org.eclipse.cdt.debug.mi.core.cygwinCommandFactory&quot;
- miVersions=&quot;mi,mi1,mi2&quot;
- name=&quot;CygWin&quot;
- platforms=&quot;win32&quot;/&gt;
-&lt;/extension&gt;
- </documentation>
- </annotation>
-
- <annotation>
- <appInfo>
- <meta.section type="apiInfo"/>
- </appInfo>
- <documentation>
- Value of the attribute class must be a fully qualified name of a Java class that extends the class org.eclipse.cdt.debug.mi.core.command.CommandFactory.
- </documentation>
- </annotation>
-
- <annotation>
- <appInfo>
- <meta.section type="implementation"/>
- </appInfo>
- <documentation>
-
- </documentation>
- </annotation>
-
- <annotation>
- <appInfo>
- <meta.section type="copyright"/>
- </appInfo>
- <documentation>
- Copyright (c) 2004, 2005 QNX Software Systems and others.
-All rights reserved. This program and the accompanying materials
-are made available under the terms of the Eclipse Public License v1.0
-which accompanies this distribution, and is available at
-http://www.eclipse.org/legal/epl-v10.html
- </documentation>
- </annotation>
-
-</schema>
diff --git a/debug/org.eclipse.cdt.debug.mi.core/src/org/eclipse/cdt/debug/mi/core/AbstractGDBCDIDebugger.java b/debug/org.eclipse.cdt.debug.mi.core/src/org/eclipse/cdt/debug/mi/core/AbstractGDBCDIDebugger.java
deleted file mode 100644
index d766fc05e9f..00000000000
--- a/debug/org.eclipse.cdt.debug.mi.core/src/org/eclipse/cdt/debug/mi/core/AbstractGDBCDIDebugger.java
+++ /dev/null
@@ -1,217 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.mi.core;
-
-import java.io.File;
-import java.text.DateFormat;
-import java.text.MessageFormat;
-import java.util.Date;
-import java.util.Map;
-import org.eclipse.cdt.core.IBinaryParser.IBinaryObject;
-import org.eclipse.cdt.debug.core.ICDIDebugger2;
-import org.eclipse.cdt.debug.core.ICDTLaunchConfigurationConstants;
-import org.eclipse.cdt.debug.core.cdi.CDIException;
-import org.eclipse.cdt.debug.core.cdi.ICDISession;
-import org.eclipse.cdt.debug.core.cdi.ICDISessionConfiguration;
-import org.eclipse.cdt.debug.core.cdi.model.ICDITarget;
-import org.eclipse.cdt.debug.mi.core.cdi.Session;
-import org.eclipse.cdt.debug.mi.core.cdi.model.Target;
-import org.eclipse.cdt.debug.mi.core.command.CommandFactory;
-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.MultiStatus;
-import org.eclipse.core.runtime.NullProgressMonitor;
-import org.eclipse.core.runtime.OperationCanceledException;
-import org.eclipse.core.runtime.Path;
-import org.eclipse.core.runtime.Status;
-import org.eclipse.debug.core.ILaunch;
-import org.eclipse.debug.core.ILaunchConfiguration;
-import org.eclipse.debug.core.model.IProcess;
-
-/**
- * Base class for the gdb/mi-based <code>ICDIDebugger</code> extension point
- * implementations.
- */
-abstract public class AbstractGDBCDIDebugger implements ICDIDebugger2 {
-
- /* (non-Javadoc)
- * @see org.eclipse.cdt.debug.core.ICDIDebugger#createDebuggerSession(org.eclipse.debug.core.ILaunch, org.eclipse.cdt.core.IBinaryParser.IBinaryObject, org.eclipse.core.runtime.IProgressMonitor)
- */
- public ICDISession createDebuggerSession( ILaunch launch, IBinaryObject exe, IProgressMonitor monitor ) throws CoreException {
- return createSession( launch, exe.getPath().toFile(), monitor );
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.cdt.debug.core.ICDIDebugger2#createSession(org.eclipse.debug.core.ILaunch, java.io.File, org.eclipse.core.runtime.IProgressMonitor)
- */
- public ICDISession createSession( ILaunch launch, File executable, IProgressMonitor monitor ) throws CoreException {
- boolean failed = false;
- if ( monitor == null ) {
- monitor = new NullProgressMonitor();
- }
- if ( monitor.isCanceled() ) {
- throw new OperationCanceledException();
- }
- boolean verboseMode = verboseMode( launch.getLaunchConfiguration() );
- Session session = createGDBSession( launch, executable, monitor );
- if ( session != null ) {
- try {
- ICDITarget[] targets = session.getTargets();
- for( int i = 0; i < targets.length; i++ ) {
- Process debugger = session.getSessionProcess( targets[i] );
- if ( debugger != null ) {
- IProcess debuggerProcess = createGDBProcess( (Target)targets[i], launch, debugger, renderDebuggerProcessLabel( launch ), null );
- launch.addProcess( debuggerProcess );
- }
- ((Target)targets[i]).enableVerboseMode( verboseMode );
- ((Target)targets[i]).getMISession().start();
- }
- doStartSession( launch, session, monitor );
- }
- catch( MIException e ) {
- failed = true;
- throw newCoreException( e );
- }
- catch( CoreException e ) {
- failed = true;
- throw e;
- }
- finally {
- try {
- if ( (failed || monitor.isCanceled()) && session != null )
- session.terminate();
- }
- catch( CDIException e1 ) {
- }
- }
- }
- return session;
- }
-
- protected Session createGDBSession( ILaunch launch, File executable, IProgressMonitor monitor ) throws CoreException {
- Session session = null;
- IPath gdbPath = getGDBPath( launch );
- ILaunchConfiguration config = launch.getLaunchConfiguration();
- CommandFactory factory = getCommandFactory( config );
- String[] extraArgs = getExtraArguments( config );
- boolean usePty = usePty( config );
- try {
- session = MIPlugin.getDefault().createSession( getSessionType( config ), gdbPath.toOSString(), factory, executable, extraArgs, usePty, monitor );
- ICDISessionConfiguration sessionConfig = getSessionConfiguration( session );
- if ( sessionConfig != null ) {
- session.setConfiguration( sessionConfig );
- }
- }
- catch( OperationCanceledException e ) {
- }
- catch( Exception e ) {
- // Catch all wrap them up and rethrow
- if ( e instanceof CoreException ) {
- throw (CoreException)e;
- }
- throw newCoreException( e );
- }
- return session;
- }
-
- protected int getSessionType( ILaunchConfiguration config ) throws CoreException {
- String debugMode = config.getAttribute( ICDTLaunchConfigurationConstants.ATTR_DEBUGGER_START_MODE, ICDTLaunchConfigurationConstants.DEBUGGER_MODE_RUN );
- if ( ICDTLaunchConfigurationConstants.DEBUGGER_MODE_RUN.equals( debugMode ) )
- return MISession.PROGRAM;
- if ( ICDTLaunchConfigurationConstants.DEBUGGER_MODE_ATTACH.equals( debugMode ) )
- return MISession.ATTACH;
- if ( ICDTLaunchConfigurationConstants.DEBUGGER_MODE_CORE.equals( debugMode ) )
- return MISession.CORE;
- throw newCoreException( MIPlugin.getResourceString( "src.AbstractGDBCDIDebugger.0" ) + debugMode, null ); //$NON-NLS-1$
- }
-
- protected String[] getExtraArguments( ILaunchConfiguration config ) throws CoreException {
- return new String[0];
- }
-
- protected boolean usePty( ILaunchConfiguration config ) throws CoreException {
- return config.getAttribute( ICDTLaunchConfigurationConstants.ATTR_USE_TERMINAL, true );
- }
-
- abstract protected CommandFactory getCommandFactory( ILaunchConfiguration config ) throws CoreException;
-
- protected void doStartSession( ILaunch launch, Session session, IProgressMonitor monitor ) throws CoreException {
- }
-
- protected String renderDebuggerProcessLabel( ILaunch launch ) {
- String format = "{0} ({1})"; //$NON-NLS-1$
- String timestamp = DateFormat.getInstance().format( new Date( System.currentTimeMillis() ) );
- String label = MIPlugin.getResourceString( "src.AbstractGDBCDIDebugger.2" ); //$NON-NLS-1$
- try {
- IPath path = getGDBPath( launch );
- label = path.toOSString();
- }
- catch( CoreException e ) {
- }
- return MessageFormat.format( format, new String[]{ label, timestamp } );
- }
-
- protected IPath getGDBPath( ILaunch launch ) throws CoreException {
- ILaunchConfiguration config = launch.getLaunchConfiguration();
- return new Path( config.getAttribute( IMILaunchConfigurationConstants.ATTR_DEBUG_NAME, IMILaunchConfigurationConstants.DEBUGGER_DEBUG_NAME_DEFAULT ) );
- }
-
- protected ICDISessionConfiguration getSessionConfiguration( ICDISession session ) {
- return null;
- }
-
- /**
- * Throws a core exception with an error status object built from
- * the lower level exception and error code.
- *
- * @param exception lower level exception associated with the error,
- * or <code>null</code> if none
- * @param code error code
- */
- protected CoreException newCoreException( Throwable exception ) {
- String message = MIPlugin.getResourceString( "src.AbstractGDBCDIDebugger.1" ); //$NON-NLS-1$
- return newCoreException( message, exception );
- }
-
- /**
- * Throws a core exception with an error status object built from the given
- * message, lower level exception, and error code.
- *
- * @param message the status message
- * @param exception lower level exception associated with the error,
- * or <code>null</code> if none
- * @param code error code
- */
- protected CoreException newCoreException( String message, Throwable exception ) {
- int code = ICDTLaunchConfigurationConstants.ERR_INTERNAL_ERROR;
- String ID = MIPlugin.getUniqueIdentifier();
- MultiStatus status = new MultiStatus( ID, code, message, exception );
- status.add( new Status( IStatus.ERROR, ID, code, exception == null ? new String() : exception.getLocalizedMessage(), exception ) );
- return new CoreException( status );
- }
-
- protected IProcess createGDBProcess( Target target, ILaunch launch, Process process, String label, Map attributes ) {
- return new GDBProcess( target, launch, process, label, attributes );
- }
-
- protected boolean verboseMode( ILaunchConfiguration config ) {
- boolean result = IMILaunchConfigurationConstants.DEBUGGER_VERBOSE_MODE_DEFAULT;
- try {
- return config.getAttribute( IMILaunchConfigurationConstants.ATTR_DEBUGGER_VERBOSE_MODE, result );
- }
- catch( CoreException e ) {
- // use default
- }
- return result;
- }
-}
diff --git a/debug/org.eclipse.cdt.debug.mi.core/src/org/eclipse/cdt/debug/mi/core/CygwinGDBCDIDebugger.java b/debug/org.eclipse.cdt.debug.mi.core/src/org/eclipse/cdt/debug/mi/core/CygwinGDBCDIDebugger.java
deleted file mode 100644
index abcaf269c6d..00000000000
--- a/debug/org.eclipse.cdt.debug.mi.core/src/org/eclipse/cdt/debug/mi/core/CygwinGDBCDIDebugger.java
+++ /dev/null
@@ -1,87 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.cdt.debug.mi.core;
-
-import org.eclipse.cdt.core.IBinaryParser.IBinaryObject;
-import org.eclipse.cdt.debug.core.cdi.model.ICDITarget;
-import org.eclipse.cdt.debug.mi.core.cdi.Session;
-import org.eclipse.cdt.debug.mi.core.cdi.model.Target;
-import org.eclipse.cdt.debug.mi.core.command.CommandFactory;
-import org.eclipse.cdt.debug.mi.core.command.MIGDBSet;
-import org.eclipse.cdt.debug.mi.core.command.factories.win32.CygwinCommandFactory;
-import org.eclipse.cdt.debug.mi.core.output.MIInfo;
-import org.eclipse.core.runtime.CoreException;
-import org.eclipse.core.runtime.IProgressMonitor;
-import org.eclipse.debug.core.ILaunchConfiguration;
-
-/**
- * Cygwin debugger extension point.
- */
-public class CygwinGDBCDIDebugger extends GDBCDIDebugger {
-
- protected void initializeLibraries(ILaunchConfiguration config, Session session) throws CoreException {
- // the "search-solib-path" and "stop-on-solib-events" options are not supported in CygWin
- }
-
- public Session createLaunchSession(ILaunchConfiguration config, IBinaryObject exe, IProgressMonitor monitor) throws CoreException {
- Session session = super.createLaunchSession(config, exe, monitor);
- ICDITarget[] targets = session.getTargets();
- for (int i = 0; i < targets.length; ++i) {
- Target target = (Target)targets[i];
- MISession miSession = target.getMISession();
- String miVersion = miSession.getCommandFactory().getMIVersion();
- miSession.setCommandFactory(new CygwinCommandFactory(miVersion));
- // For windows we need to start the inferior in a new console window
- // to separate the Inferior std{in,out,err} from gdb std{in,out,err}
- try {
- CommandFactory factory = miSession.getCommandFactory();
- MIGDBSet set = factory.createMIGDBSet(new String[] { "new-console" }); //$NON-NLS-1$
- miSession.postCommand(set);
- MIInfo info = set.getMIInfo();
- if (info == null) {
- throw new MIException(MIPlugin.getResourceString("src.common.No_answer")); //$NON-NLS-1$
- }
- } catch (MIException e) {
- // We ignore this exception, for example
- // on GNU/Linux the new-console is an error.
- }
- }
- return session;
- }
-
- public Session createAttachSession(ILaunchConfiguration config, IBinaryObject exe, IProgressMonitor monitor) throws CoreException {
- Session session = super.createAttachSession(config, exe, monitor);
- ICDITarget[] targets = session.getTargets();
- for (int i = 0; i < targets.length; ++i) {
- Target target = (Target)targets[i];
- MISession miSession = target.getMISession();
- String miVersion = miSession.getCommandFactory().getMIVersion();
- miSession.setCommandFactory(new CygwinCommandFactory(miVersion));
- }
- initializeLibraries(config, session);
- return session;
- }
-
- public Session createCoreSession(ILaunchConfiguration config, IBinaryObject exe, IProgressMonitor monitor) throws CoreException {
- Session session = super.createCoreSession(config, exe, monitor);
- ICDITarget[] targets = session.getTargets();
- for (int i = 0; i < targets.length; ++i) {
- Target target = (Target)targets[i];
- MISession miSession = target.getMISession();
- String miVersion = miSession.getCommandFactory().getMIVersion();
- miSession.setCommandFactory(new CygwinCommandFactory(miVersion));
- }
- initializeLibraries(config, session);
- return session;
- }
-
-}
diff --git a/debug/org.eclipse.cdt.debug.mi.core/src/org/eclipse/cdt/debug/mi/core/CygwinGDBCDIDebugger2.java b/debug/org.eclipse.cdt.debug.mi.core/src/org/eclipse/cdt/debug/mi/core/CygwinGDBCDIDebugger2.java
deleted file mode 100644
index cece7626fc1..00000000000
--- a/debug/org.eclipse.cdt.debug.mi.core/src/org/eclipse/cdt/debug/mi/core/CygwinGDBCDIDebugger2.java
+++ /dev/null
@@ -1,64 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.mi.core;
-
-import org.eclipse.cdt.debug.mi.core.cdi.Session;
-import org.eclipse.cdt.debug.mi.core.command.CommandFactory;
-import org.eclipse.cdt.debug.mi.core.command.MIGDBSetNewConsole;
-import org.eclipse.cdt.debug.mi.core.command.factories.win32.CygwinCommandFactory;
-import org.eclipse.cdt.debug.mi.core.output.MIInfo;
-import org.eclipse.core.runtime.CoreException;
-import org.eclipse.core.runtime.IProgressMonitor;
-import org.eclipse.debug.core.ILaunch;
-import org.eclipse.debug.core.ILaunchConfiguration;
-
-/**
- * Cygwin debugger extension point.
- */
-public class CygwinGDBCDIDebugger2 extends GDBCDIDebugger2 {
-
- /* (non-Javadoc)
- * @see org.eclipse.cdt.debug.mi.core.GDBCDIDebugger2#getCommandFactory(org.eclipse.debug.core.ILaunchConfiguration)
- */
- protected CommandFactory getCommandFactory( ILaunchConfiguration config ) throws CoreException {
- return new CygwinCommandFactory( getMIVersion( config ) );
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.cdt.debug.mi.core.GDBCDIDebugger2#doStartSession(org.eclipse.debug.core.ILaunch, org.eclipse.cdt.debug.mi.core.cdi.Session, org.eclipse.core.runtime.IProgressMonitor)
- */
- protected void doStartSession( ILaunch launch, Session session, IProgressMonitor monitor ) throws CoreException {
- // For windows we need to start the inferior in a new console window
- // to separate the Inferior std{in,out,err} from gdb std{in,out,err}
- MISession miSession = getMISession( session );
- try {
- CommandFactory factory = miSession.getCommandFactory();
- MIGDBSetNewConsole newConsole = factory.createMIGDBSetNewConsole();
- miSession.postCommand( newConsole );
- MIInfo info = newConsole.getMIInfo();
- if ( info == null ) {
- throw new MIException( MIPlugin.getResourceString( "src.common.No_answer" ) ); //$NON-NLS-1$
- }
- }
- catch( MIException e ) {
- // We ignore this exception, for example
- // on GNU/Linux the new-console is an error.
- }
- super.doStartSession( launch, session, monitor );
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.cdt.debug.mi.core.GDBCDIDebugger2#initializeLibraries(org.eclipse.debug.core.ILaunchConfiguration, org.eclipse.cdt.debug.mi.core.cdi.Session)
- */
- protected void initializeLibraries( ILaunchConfiguration config, Session session ) throws CoreException {
- // the "search-solib-path" and "stop-on-solib-events" options are not supported in CygWin
- }
-}
diff --git a/debug/org.eclipse.cdt.debug.mi.core/src/org/eclipse/cdt/debug/mi/core/CygwinGDBDebugger.java b/debug/org.eclipse.cdt.debug.mi.core/src/org/eclipse/cdt/debug/mi/core/CygwinGDBDebugger.java
deleted file mode 100644
index 7eeb6040f8e..00000000000
--- a/debug/org.eclipse.cdt.debug.mi.core/src/org/eclipse/cdt/debug/mi/core/CygwinGDBDebugger.java
+++ /dev/null
@@ -1,138 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2002, 2006 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * IBM - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.mi.core;
-
-import org.eclipse.cdt.debug.core.cdi.CDIException;
-import org.eclipse.cdt.debug.core.cdi.ICDISession;
-import org.eclipse.cdt.debug.core.cdi.model.ICDITarget;
-import org.eclipse.cdt.debug.mi.core.cdi.Session;
-import org.eclipse.cdt.debug.mi.core.cdi.model.Target;
-import org.eclipse.cdt.debug.mi.core.command.CommandFactory;
-import org.eclipse.cdt.debug.mi.core.command.MIGDBSet;
-import org.eclipse.cdt.debug.mi.core.command.factories.win32.CygwinCommandFactory;
-import org.eclipse.cdt.debug.mi.core.output.MIInfo;
-import org.eclipse.core.resources.IFile;
-import org.eclipse.core.runtime.IPath;
-import org.eclipse.debug.core.ILaunchConfiguration;
-
-/**
- * Cygwin GDB Debugger overrides the GDB Debugger to apply the Cygwin
- * Command Factory to the MI Session.
- */
-public class CygwinGDBDebugger extends GDBDebugger {
-
- protected void initializeLibraries(ILaunchConfiguration config, Session session) throws CDIException {
- // the "search-solib-path" and "stop-on-solib-events" options are not supported in CygWin
- }
-
- public ICDISession createLaunchSession(ILaunchConfiguration config, IFile exe) throws CDIException {
- Session session = null;
- boolean failed = false;
- try {
- session = (Session) super.createLaunchSession(config, exe);
- ICDITarget[] targets = session.getTargets();
- for (int i = 0; i < targets.length; ++i) {
- Target target = (Target)targets[i];
- MISession miSession = target.getMISession();
- String miVersion = miSession.getCommandFactory().getMIVersion();
- miSession.setCommandFactory(new CygwinCommandFactory(miVersion));
- // For windows we need to start the inferior in a new console window
- // to separate the Inferior std{in,out,err} from gdb std{in,out,err}
- try {
- CommandFactory factory = miSession.getCommandFactory();
- MIGDBSet set = factory.createMIGDBSet(new String[] { "new-console" }); //$NON-NLS-1$
- miSession.postCommand(set);
- MIInfo info = set.getMIInfo();
- if (info == null) {
- throw new MIException(MIPlugin.getResourceString("src.common.No_answer")); //$NON-NLS-1$
- }
- } catch (MIException e) {
- // We ignore this exception, for example
- // on GNU/Linux the new-console is an error.
- }
- }
- return session;
- } catch (CDIException e) {
- failed = true;
- throw e;
- } finally {
- if (failed) {
- if (session != null) {
- try {
- session.terminate();
- } catch (Exception ex) {
- // ignore the exception here.
- }
- }
- }
- }
- }
-
- public ICDISession createAttachSession(ILaunchConfiguration config, IFile exe, int pid) throws CDIException {
- Session session = null;
- boolean failed = false;
- try {
- session = (Session) super.createAttachSession(config, exe, pid);
- ICDITarget[] targets = session.getTargets();
- for (int i = 0; i < targets.length; ++i) {
- Target target = (Target)targets[i];
- MISession miSession = target.getMISession();
- String miVersion = miSession.getCommandFactory().getMIVersion();
- miSession.setCommandFactory(new CygwinCommandFactory(miVersion));
- }
- initializeLibraries(config, session);
- return session;
- } catch (CDIException e) {
- failed = true;
- throw e;
- } finally {
- if (failed) {
- if (session != null) {
- try {
- session.terminate();
- } catch (Exception ex) {
- // ignore the exception here.
- }
- }
- }
- }
- }
-
- public ICDISession createCoreSession(ILaunchConfiguration config, IFile exe, IPath corefile) throws CDIException {
- Session session = null;
- boolean failed = false;
- try {
- session = (Session) super.createCoreSession(config, exe, corefile);
- ICDITarget[] targets = session.getTargets();
- for (int i = 0; i < targets.length; ++i) {
- Target target = (Target)targets[i];
- MISession miSession = target.getMISession();
- String miVersion = miSession.getCommandFactory().getMIVersion();
- miSession.setCommandFactory(new CygwinCommandFactory(miVersion));
- }
- initializeLibraries(config, session);
- return session;
- } catch (CDIException e) {
- failed = true;
- throw e;
- } finally {
- if (failed) {
- if (session != null) {
- try {
- session.terminate();
- } catch (Exception ex) {
- // ignore the exception here.
- }
- }
- }
- }
- }
-}
diff --git a/debug/org.eclipse.cdt.debug.mi.core/src/org/eclipse/cdt/debug/mi/core/GDBCDIDebugger.java b/debug/org.eclipse.cdt.debug.mi.core/src/org/eclipse/cdt/debug/mi/core/GDBCDIDebugger.java
deleted file mode 100644
index 6566ef61222..00000000000
--- a/debug/org.eclipse.cdt.debug.mi.core/src/org/eclipse/cdt/debug/mi/core/GDBCDIDebugger.java
+++ /dev/null
@@ -1,303 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- * Joanne Woo (jwoo@mvista.com) - bug #118900
- *******************************************************************************/
-
-package org.eclipse.cdt.debug.mi.core;
-
-import java.io.File;
-import java.text.DateFormat;
-import java.text.MessageFormat;
-import java.util.Collections;
-import java.util.Date;
-import java.util.List;
-
-import org.eclipse.cdt.core.IBinaryParser.IBinaryObject;
-import org.eclipse.cdt.debug.core.ICDIDebugger;
-import org.eclipse.cdt.debug.core.ICDTLaunchConfigurationConstants;
-import org.eclipse.cdt.debug.core.cdi.CDIException;
-import org.eclipse.cdt.debug.core.cdi.ICDISession;
-import org.eclipse.cdt.debug.core.cdi.model.ICDITarget;
-import org.eclipse.cdt.debug.mi.core.cdi.Session;
-import org.eclipse.cdt.debug.mi.core.cdi.SharedLibraryManager;
-import org.eclipse.cdt.debug.mi.core.cdi.model.Target;
-import org.eclipse.core.resources.IProject;
-import org.eclipse.core.resources.ResourcesPlugin;
-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.MultiStatus;
-import org.eclipse.core.runtime.NullProgressMonitor;
-import org.eclipse.core.runtime.OperationCanceledException;
-import org.eclipse.core.runtime.Path;
-import org.eclipse.core.runtime.Status;
-import org.eclipse.debug.core.DebugPlugin;
-import org.eclipse.debug.core.ILaunch;
-import org.eclipse.debug.core.ILaunchConfiguration;
-import org.eclipse.debug.core.model.IProcess;
-
-/**
- * Implementing cdebugger extension point
- */
-public class GDBCDIDebugger implements ICDIDebugger {
-
- ILaunch fLaunch;
-
- /* (non-Javadoc)
- * @see org.eclipse.cdt.debug.core.ICDIDebugger#createDebuggerSession(org.eclipse.debug.core.ILaunch, org.eclipse.cdt.core.IBinaryParser.IBinaryExecutable, org.eclipse.core.runtime.IProgressMonitor)
- */
- public ICDISession createDebuggerSession(ILaunch launch, IBinaryObject exe, IProgressMonitor monitor)
- throws CoreException {
- fLaunch = launch;
- ILaunchConfiguration config = launch.getLaunchConfiguration();
- Session dsession = null;
- String debugMode = config.getAttribute(ICDTLaunchConfigurationConstants.ATTR_DEBUGGER_START_MODE,
- ICDTLaunchConfigurationConstants.DEBUGGER_MODE_RUN);
-
- if (monitor == null) {
- monitor = new NullProgressMonitor();
- }
- if (monitor.isCanceled()) {
- throw new OperationCanceledException();
- }
-
- if (debugMode.equals(ICDTLaunchConfigurationConstants.DEBUGGER_MODE_RUN)) {
- dsession = createLaunchSession(config, exe, monitor);
- } else if (debugMode.equals(ICDTLaunchConfigurationConstants.DEBUGGER_MODE_ATTACH)) {
- dsession = createAttachSession(config, exe, monitor);
- } else if (debugMode.equals(ICDTLaunchConfigurationConstants.DEBUGGER_MODE_CORE)) {
- dsession = createCoreSession(config, exe, monitor);
- }
- if (dsession != null) {
- ICDITarget[] dtargets = dsession.getTargets();
- for (int i = 0; i < dtargets.length; i++) {
- Process debugger = dsession.getSessionProcess(dtargets[i]);
- if (debugger != null) {
- IProcess debuggerProcess = DebugPlugin.newProcess(launch, debugger, renderDebuggerProcessLabel(config));
- launch.addProcess(debuggerProcess);
- }
- }
- }
-
- return dsession;
- }
-
- public Session createLaunchSession(ILaunchConfiguration config, IBinaryObject exe, IProgressMonitor monitor) throws CoreException {
- Session session = null;
- boolean failed = false;
- try {
- String gdb = config.getAttribute(IMILaunchConfigurationConstants.ATTR_DEBUG_NAME, "gdb"); //$NON-NLS-1$
- String miVersion = getMIVersion(config);
- boolean usePty = config.getAttribute(ICDTLaunchConfigurationConstants.ATTR_USE_TERMINAL, true);
- File cwd = getProjectPath(config).toFile();
- String gdbinit = config.getAttribute(IMILaunchConfigurationConstants.ATTR_GDB_INIT, IMILaunchConfigurationConstants.DEBUGGER_GDB_INIT_DEFAULT);
- if (usePty) {
- session = MIPlugin.getDefault().createCSession(gdb, miVersion, exe.getPath().toFile(), cwd, gdbinit, monitor);
- } else {
- session = MIPlugin.getDefault().createCSession(gdb, miVersion, exe.getPath().toFile(), cwd, gdbinit, null, monitor);
- }
- initializeLibraries(config, session);
- return session;
- } catch (Exception e) {
- // Catch all wrap them up and rethrow
- failed = true;
- if (e instanceof CoreException) {
- throw (CoreException)e;
- }
- throw newCoreException(e);
- } finally {
- if (failed) {
- if (session != null) {
- try {
- session.terminate();
- } catch (Exception ex) {
- // ignore the exception here.
- }
- }
- }
- }
- }
-
- public Session createAttachSession(ILaunchConfiguration config, IBinaryObject exe, IProgressMonitor monitor) throws CoreException {
- Session session = null;
- boolean failed = false;
- try {
- String gdb = config.getAttribute(IMILaunchConfigurationConstants.ATTR_DEBUG_NAME, "gdb"); //$NON-NLS-1$
- String miVersion = getMIVersion(config);
- int pid = config.getAttribute(ICDTLaunchConfigurationConstants.ATTR_ATTACH_PROCESS_ID, -1);
- File cwd = getProjectPath(config).toFile();
- String gdbinit = config.getAttribute(IMILaunchConfigurationConstants.ATTR_GDB_INIT, IMILaunchConfigurationConstants.DEBUGGER_GDB_INIT_DEFAULT);
- File exeFile = exe != null ? exe.getPath().toFile() : null;
- session = MIPlugin.getDefault().createCSession(gdb, miVersion, exeFile, pid, null, cwd, gdbinit, monitor);
- initializeLibraries(config, session);
- return session;
- } catch (Exception e) {
- // Catch all wrap them up and rethrow
- failed = true;
- if (e instanceof CoreException) {
- throw (CoreException)e;
- }
- throw newCoreException(e);
- } finally {
- if (failed) {
- if (session != null) {
- try {
- session.terminate();
- } catch (Exception ex) {
- // ignore the exception here.
- }
- }
- }
- }
- }
-
- public Session createCoreSession(ILaunchConfiguration config, IBinaryObject exe, IProgressMonitor monitor) throws CoreException {
- Session session = null;
- boolean failed = false;
- try {
- String gdb = config.getAttribute(IMILaunchConfigurationConstants.ATTR_DEBUG_NAME, "gdb"); //$NON-NLS-1$
- String miVersion = getMIVersion(config);
- File cwd = getProjectPath(config).toFile();
- IPath coreFile = new Path(config.getAttribute(ICDTLaunchConfigurationConstants.ATTR_COREFILE_PATH, (String)null));
- String gdbinit = config.getAttribute(IMILaunchConfigurationConstants.ATTR_GDB_INIT, IMILaunchConfigurationConstants.DEBUGGER_GDB_INIT_DEFAULT);
- session = MIPlugin.getDefault().createCSession(gdb, miVersion, exe.getPath().toFile(), coreFile.toFile(), cwd, gdbinit, monitor);
- initializeLibraries(config, session);
- session.getSharedLibraryManager().update();
- return session;
- } catch (Exception e) {
- // Catch all wrap them up and rethrow
- failed = true;
- if (e instanceof CoreException) {
- throw (CoreException)e;
- }
- throw newCoreException(e);
- } finally {
- if (failed) {
- if (session != null) {
- try {
- session.terminate();
- } catch (Exception ex) {
- // ignore the exception here.
- }
- }
- }
- }
- }
-
- protected void initializeLibraries(ILaunchConfiguration config, Session session) throws CoreException {
- try {
- SharedLibraryManager sharedMgr = session.getSharedLibraryManager();
- boolean autolib = config.getAttribute(IMILaunchConfigurationConstants.ATTR_DEBUGGER_AUTO_SOLIB, IMILaunchConfigurationConstants.DEBUGGER_AUTO_SOLIB_DEFAULT);
- boolean stopOnSolibEvents = config.getAttribute(IMILaunchConfigurationConstants.ATTR_DEBUGGER_STOP_ON_SOLIB_EVENTS, IMILaunchConfigurationConstants.DEBUGGER_STOP_ON_SOLIB_EVENTS_DEFAULT);
- List p = config.getAttribute(IMILaunchConfigurationConstants.ATTR_DEBUGGER_SOLIB_PATH, Collections.EMPTY_LIST);
- ICDITarget[] dtargets = session.getTargets();
- for (int i = 0; i < dtargets.length; ++i) {
- Target target = (Target)dtargets[i];
- try {
- sharedMgr.setAutoLoadSymbols(target, autolib);
- sharedMgr.setStopOnSolibEvents(target, stopOnSolibEvents);
- // The idea is that if the user set autolib, by default
- // we provide with the capability of deferred breakpoints
- // And we set setStopOnSolib events for them(but they should not see those things.
- //
- // If the user explicitly set stopOnSolibEvents well it probably
- // means that they wanted to see those events so do no do deferred breakpoints.
- if (autolib && !stopOnSolibEvents) {
- sharedMgr.setStopOnSolibEvents(target, true);
- sharedMgr.setDeferredBreakpoint(target, true);
- }
- } catch (CDIException e) {
- // Ignore this error
- // it seems to be a real problem on many gdb platform
- }
- if (p.size() > 0) {
- String[] oldPaths = sharedMgr.getSharedLibraryPaths(target);
- String[] paths = new String[oldPaths.length + p.size()];
- System.arraycopy(p.toArray(new String[p.size()]), 0, paths, 0, p.size());
- System.arraycopy(oldPaths, 0, paths, p.size(), oldPaths.length);
- sharedMgr.setSharedLibraryPaths(target, paths);
- }
- }
- } catch (CDIException e) {
- throw newCoreException(MIPlugin.getResourceString("src.GDBDebugger.Error_initializing_shared_lib_options") + e.getMessage(), e); //$NON-NLS-1$
- }
- }
-
- public static IPath getProjectPath(ILaunchConfiguration configuration) throws CoreException {
- String projectName = getProjectName(configuration);
- if (projectName != null) {
- projectName = projectName.trim();
- if (projectName.length() > 0) {
- IProject project = ResourcesPlugin.getWorkspace().getRoot().getProject(projectName);
- IPath p = project.getLocation();
- if (p != null) {
- return p;
- }
- }
- }
- return Path.EMPTY;
- }
-
- public static String getProjectName(ILaunchConfiguration configuration) throws CoreException {
- return configuration.getAttribute(ICDTLaunchConfigurationConstants.ATTR_PROJECT_NAME, (String)null);
- }
-
- protected ILaunch getLauch() {
- return fLaunch;
- }
-
- protected String renderDebuggerProcessLabel(ILaunchConfiguration config) {
- String format = "{0} ({1})"; //$NON-NLS-1$
- String timestamp = DateFormat.getInstance().format(new Date(System.currentTimeMillis()));
- String label = MIPlugin.getResourceString("src.GDBDebugger.Debugger_process"); //$NON-NLS-1$
- try {
- label = config.getAttribute(IMILaunchConfigurationConstants.ATTR_DEBUG_NAME, "gdb"); //$NON-NLS-1$
- }
- catch( CoreException e ) {
- }
- return MessageFormat.format(format, new String[]{label, timestamp}); //$NON-NLS-1$
- }
-
- /**
- * Throws a core exception with an error status object built from the given
- * message, lower level exception, and error code.
- *
- * @param message
- * the status message
- * @param exception
- * lower level exception associated with the error, or
- * <code>null</code> if none
- * @param code
- * error code
- */
- protected CoreException newCoreException(Throwable exception) {
- String message = MIPlugin.getResourceString("src.GDBDebugger.Error_creating_session") + exception.getMessage();//$NON-NLS-1$
- int code = ICDTLaunchConfigurationConstants.ERR_INTERNAL_ERROR;
- String ID = MIPlugin.getUniqueIdentifier();
- String exMessage = ((exception==null)||(exception.getLocalizedMessage()==null)) ? new String() : exception.getLocalizedMessage();
- MultiStatus status = new MultiStatus(ID, code, message, exception);
- status.add(new Status(IStatus.ERROR, ID, code, exMessage, exception));
- return new CoreException(status);
- }
-
- protected CoreException newCoreException(String message, Throwable exception) {
- int code = ICDTLaunchConfigurationConstants.ERR_INTERNAL_ERROR;
- String ID = MIPlugin.getUniqueIdentifier();
- String exMessage = ((exception==null)||(exception.getLocalizedMessage()==null)) ? new String() : exception.getLocalizedMessage();
- MultiStatus status = new MultiStatus(ID, code, message, exception);
- status.add(new Status(IStatus.ERROR, ID, code, exMessage, exception));
- return new CoreException(status);
- }
-
- protected String getMIVersion( ILaunchConfiguration config ) {
- return MIPlugin.getMIVersion( config );
- }
-}
diff --git a/debug/org.eclipse.cdt.debug.mi.core/src/org/eclipse/cdt/debug/mi/core/GDBCDIDebugger2.java b/debug/org.eclipse.cdt.debug.mi.core/src/org/eclipse/cdt/debug/mi/core/GDBCDIDebugger2.java
deleted file mode 100644
index 986c084afc4..00000000000
--- a/debug/org.eclipse.cdt.debug.mi.core/src/org/eclipse/cdt/debug/mi/core/GDBCDIDebugger2.java
+++ /dev/null
@@ -1,246 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.mi.core;
-
-import java.io.File;
-import java.text.MessageFormat;
-import java.util.ArrayList;
-import java.util.Collections;
-import java.util.List;
-
-import org.eclipse.cdt.debug.core.ICDTLaunchConfigurationConstants;
-import org.eclipse.cdt.debug.core.cdi.CDIException;
-import org.eclipse.cdt.debug.core.cdi.model.ICDITarget;
-import org.eclipse.cdt.debug.mi.core.cdi.Session;
-import org.eclipse.cdt.debug.mi.core.cdi.SharedLibraryManager;
-import org.eclipse.cdt.debug.mi.core.cdi.model.Target;
-import org.eclipse.cdt.debug.mi.core.command.CLITargetAttach;
-import org.eclipse.cdt.debug.mi.core.command.CommandFactory;
-import org.eclipse.cdt.debug.mi.core.command.MIGDBSetNewConsole;
-import org.eclipse.cdt.debug.mi.core.output.MIInfo;
-import org.eclipse.core.resources.IProject;
-import org.eclipse.core.resources.ResourcesPlugin;
-import org.eclipse.core.runtime.CoreException;
-import org.eclipse.core.runtime.IPath;
-import org.eclipse.core.runtime.IProgressMonitor;
-import org.eclipse.core.runtime.OperationCanceledException;
-import org.eclipse.core.runtime.Path;
-import org.eclipse.debug.core.ILaunch;
-import org.eclipse.debug.core.ILaunchConfiguration;
-
-/**
- * Implementing the cdebugger extension point for basic launch configurations.
- */
-public class GDBCDIDebugger2 extends AbstractGDBCDIDebugger {
-
- protected String[] getExtraArguments( ILaunchConfiguration config ) throws CoreException {
- String debugMode = config.getAttribute( ICDTLaunchConfigurationConstants.ATTR_DEBUGGER_START_MODE, ICDTLaunchConfigurationConstants.DEBUGGER_MODE_RUN );
- if ( ICDTLaunchConfigurationConstants.DEBUGGER_MODE_RUN.equals( debugMode ) )
- return getRunArguments( config );
- if ( ICDTLaunchConfigurationConstants.DEBUGGER_MODE_ATTACH.equals( debugMode ) )
- return getAttachArguments( config );
- if ( ICDTLaunchConfigurationConstants.DEBUGGER_MODE_CORE.equals( debugMode ) )
- return getCoreArguments( config );
- return new String[0];
- }
-
- protected String[] getRunArguments( ILaunchConfiguration config ) throws CoreException {
- return new String[]{ getWorkingDirectory( config ), getCommandFile( config ) };
- }
-
- protected String[] getAttachArguments( ILaunchConfiguration config ) throws CoreException {
- return new String[]{ getWorkingDirectory( config ), getCommandFile( config ) };
- }
-
- protected String[] getCoreArguments( ILaunchConfiguration config ) throws CoreException {
- IPath coreFile = new Path( config.getAttribute( ICDTLaunchConfigurationConstants.ATTR_COREFILE_PATH, (String)null ) );
- return new String[]{ getWorkingDirectory( config ), getCommandFile( config ), "-c", coreFile.toFile().getAbsolutePath() }; //$NON-NLS-1$
- }
-
- protected CommandFactory getCommandFactory( ILaunchConfiguration config ) throws CoreException {
- String factoryID = MIPlugin.getCommandFactory( config );
- CommandFactory factory = MIPlugin.getDefault().getCommandFactoryManager().getCommandFactory( factoryID );
- String miVersion = getMIVersion( config );
- if ( factory != null ) {
- factory.setMIVersion( miVersion );
- }
- return ( factory != null ) ? factory : new CommandFactory( miVersion );
- }
-
- public static IPath getProjectPath( ILaunchConfiguration configuration ) throws CoreException {
- String projectName = getProjectName( configuration );
- if ( projectName != null ) {
- projectName = projectName.trim();
- if ( projectName.length() > 0 ) {
- IProject project = ResourcesPlugin.getWorkspace().getRoot().getProject( projectName );
- IPath p = project.getLocation();
- if ( p != null ) {
- return p;
- }
- }
- }
- return Path.EMPTY;
- }
-
- public static String getProjectName( ILaunchConfiguration configuration ) throws CoreException {
- return configuration.getAttribute( ICDTLaunchConfigurationConstants.ATTR_PROJECT_NAME, (String)null );
- }
-
- protected String getMIVersion( ILaunchConfiguration config ) {
- return MIPlugin.getMIVersion( config );
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.cdt.debug.mi.core.AbstractGDBCDIDebugger#doStartSession(org.eclipse.debug.core.ILaunch, org.eclipse.cdt.debug.mi.core.cdi.Session, org.eclipse.core.runtime.IProgressMonitor)
- */
- protected void doStartSession( ILaunch launch, Session session, IProgressMonitor monitor ) throws CoreException {
- ILaunchConfiguration config = launch.getLaunchConfiguration();
- initializeLibraries( config, session );
- if ( monitor.isCanceled() ) {
- throw new OperationCanceledException();
- }
- String debugMode = config.getAttribute( ICDTLaunchConfigurationConstants.ATTR_DEBUGGER_START_MODE, ICDTLaunchConfigurationConstants.DEBUGGER_MODE_RUN );
- if ( ICDTLaunchConfigurationConstants.DEBUGGER_MODE_RUN.equals( debugMode ) )
- startLocalGDBSession( config, session, monitor );
- if ( ICDTLaunchConfigurationConstants.DEBUGGER_MODE_ATTACH.equals( debugMode ) )
- startAttachGDBSession( config, session, monitor );
- if ( ICDTLaunchConfigurationConstants.DEBUGGER_MODE_CORE.equals( debugMode ) )
- startCoreGDBSession( config, session, monitor );
- }
-
- protected void startLocalGDBSession( ILaunchConfiguration config, Session session, IProgressMonitor monitor ) throws CoreException {
- // TODO: need a better solution for new-console
- MISession miSession = getMISession( session );
- try {
- CommandFactory factory = miSession.getCommandFactory();
- MIGDBSetNewConsole newConsole = factory.createMIGDBSetNewConsole();
- miSession.postCommand( newConsole );
- MIInfo info = newConsole.getMIInfo();
- if ( info == null ) {
- throw new MIException( MIPlugin.getResourceString( "src.common.No_answer" ) ); //$NON-NLS-1$
- }
- }
- catch( MIException e ) {
- // We ignore this exception, for example
- // on GNU/Linux the new-console is an error.
- }
- }
-
- protected void startAttachGDBSession( ILaunchConfiguration config, Session session, IProgressMonitor monitor ) throws CoreException {
- MISession miSession = getMISession( session );
- CommandFactory factory = miSession.getCommandFactory();
- int pid = -1;
- try {
- pid = config.getAttribute( ICDTLaunchConfigurationConstants.ATTR_ATTACH_PROCESS_ID, -1 );
- }
- catch( CoreException e ) {
- throw newCoreException( MIPlugin.getResourceString( "src.GDBCDIDebugger2.0" ), e ); //$NON-NLS-1$
- }
- if ( pid <= 0 ) {
- throw newCoreException( MIPlugin.getResourceString( "src.GDBCDIDebugger2.1" ), null ); //$NON-NLS-1$
- }
- try {
- CLITargetAttach attach = factory.createCLITargetAttach( pid );
- miSession.postCommand( attach );
- MIInfo info = attach.getMIInfo();
- if ( info == null ) {
- throw new MIException( MIPlugin.getResourceString( "src.common.No_answer" ) ); //$NON-NLS-1$
- }
- miSession.getMIInferior().setInferiorPID( pid );
- // @@@ for attach we nee to manually set the connected state
- // attach does not send the ^connected ack
- miSession.getMIInferior().setConnected();
- }
- catch( MIException e ) {
- throw newCoreException( MessageFormat.format( MIPlugin.getResourceString( "src.GDBCDIDebugger2.2" ), new Integer[] { new Integer( pid ) } ), e ); //$NON-NLS-1$
- }
- // @@@ We have to set the suspended state manually
- miSession.getMIInferior().setSuspended();
- miSession.getMIInferior().update();
- }
-
- protected void startCoreGDBSession( ILaunchConfiguration config, Session session, IProgressMonitor monitor ) throws CoreException {
- getMISession( session ).getMIInferior().setSuspended();
- try {
- session.getSharedLibraryManager().update();
- }
- catch( CDIException e ) {
- throw newCoreException( e );
- }
- }
-
- protected MISession getMISession( Session session ) {
- ICDITarget[] targets = session.getTargets();
- if ( targets.length == 0 || !(targets[0] instanceof Target) )
- return null;
- return ((Target)targets[0]).getMISession();
- }
-
- protected void initializeLibraries( ILaunchConfiguration config, Session session ) throws CoreException {
- try {
- SharedLibraryManager sharedMgr = session.getSharedLibraryManager();
- boolean autolib = config.getAttribute( IMILaunchConfigurationConstants.ATTR_DEBUGGER_AUTO_SOLIB, IMILaunchConfigurationConstants.DEBUGGER_AUTO_SOLIB_DEFAULT );
- boolean stopOnSolibEvents = config.getAttribute( IMILaunchConfigurationConstants.ATTR_DEBUGGER_STOP_ON_SOLIB_EVENTS, IMILaunchConfigurationConstants.DEBUGGER_STOP_ON_SOLIB_EVENTS_DEFAULT );
- List p = config.getAttribute( IMILaunchConfigurationConstants.ATTR_DEBUGGER_SOLIB_PATH, Collections.EMPTY_LIST );
- ICDITarget[] dtargets = session.getTargets();
- for( int i = 0; i < dtargets.length; ++i ) {
- Target target = (Target)dtargets[i];
- try {
- sharedMgr.setAutoLoadSymbols( target, autolib );
- sharedMgr.setStopOnSolibEvents( target, stopOnSolibEvents );
- sharedMgr.setDeferredBreakpoint( target, false );
- // The idea is that if the user set autolib, by default
- // we provide with the capability of deferred breakpoints
- // And we set setStopOnSolib events for them(but they should not see those things.
- //
- // If the user explicitly set stopOnSolibEvents well it probably
- // means that they wanted to see those events so do no do deferred breakpoints.
- if ( autolib && !stopOnSolibEvents ) {
- sharedMgr.setStopOnSolibEvents( target, true );
- sharedMgr.setDeferredBreakpoint( target, true );
- }
- }
- catch( CDIException e ) {
- // Ignore this error
- // it seems to be a real problem on many gdb platform
- }
- if ( p.size() > 0 ) {
- String[] oldPaths = sharedMgr.getSharedLibraryPaths( target );
- String[] paths = new String[oldPaths.length + p.size()];
- System.arraycopy( p.toArray( new String[p.size()] ), 0, paths, 0, p.size() );
- System.arraycopy( oldPaths, 0, paths, p.size(), oldPaths.length );
- sharedMgr.setSharedLibraryPaths( target, paths );
- }
- // use file names instead of full paths
- File[] autoSolibs = MICoreUtils.getAutoSolibs( config );
- ArrayList libs = new ArrayList( autoSolibs.length );
- for ( int j = 0; j < autoSolibs.length; ++j )
- libs.add( new File( autoSolibs[j].getName() ) );
- sharedMgr.autoLoadSymbols( (File[])libs.toArray( new File[libs.size()] ) );
- if ( !autolib && !stopOnSolibEvents )
- sharedMgr.setDeferredBreakpoint( target, libs.size() > 0 );
- }
- }
- catch( CDIException e ) {
- throw newCoreException( MIPlugin.getResourceString( "src.GDBDebugger.Error_initializing_shared_lib_options" ) + e.getMessage(), e ); //$NON-NLS-1$
- }
- }
-
- protected String getWorkingDirectory( ILaunchConfiguration config ) throws CoreException {
- File cwd = getProjectPath( config ).toFile();
- return "--cd=" + cwd.getAbsolutePath(); //$NON-NLS-1$
- }
-
- protected String getCommandFile( ILaunchConfiguration config ) throws CoreException {
- String gdbinit = config.getAttribute( IMILaunchConfigurationConstants.ATTR_GDB_INIT, IMILaunchConfigurationConstants.DEBUGGER_GDB_INIT_DEFAULT );
- return (gdbinit != null && gdbinit.length() > 0) ? "--command=" + gdbinit : "--nx"; //$NON-NLS-1$ //$NON-NLS-2$
- }
-}
diff --git a/debug/org.eclipse.cdt.debug.mi.core/src/org/eclipse/cdt/debug/mi/core/GDBDebugger.java b/debug/org.eclipse.cdt.debug.mi.core/src/org/eclipse/cdt/debug/mi/core/GDBDebugger.java
deleted file mode 100644
index 24ff881dfb6..00000000000
--- a/debug/org.eclipse.cdt.debug.mi.core/src/org/eclipse/cdt/debug/mi/core/GDBDebugger.java
+++ /dev/null
@@ -1,171 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.mi.core;
-
-import java.io.File;
-import java.io.IOException;
-import java.util.Collections;
-import java.util.List;
-
-import org.eclipse.cdt.debug.core.ICDTLaunchConfigurationConstants;
-import org.eclipse.cdt.debug.core.ICDebugger;
-import org.eclipse.cdt.debug.core.cdi.CDIException;
-import org.eclipse.cdt.debug.core.cdi.ICDISession;
-import org.eclipse.cdt.debug.core.cdi.model.ICDITarget;
-import org.eclipse.cdt.debug.mi.core.cdi.Session;
-import org.eclipse.cdt.debug.mi.core.cdi.SharedLibraryManager;
-import org.eclipse.cdt.debug.mi.core.cdi.model.Target;
-import org.eclipse.core.resources.IFile;
-import org.eclipse.core.runtime.CoreException;
-import org.eclipse.core.runtime.IPath;
-import org.eclipse.debug.core.ILaunchConfiguration;
-
-public class GDBDebugger implements ICDebugger {
-
- protected void initializeLibraries(ILaunchConfiguration config, Session session) throws CDIException {
- try {
- SharedLibraryManager mgr = session.getSharedLibraryManager();
- boolean autolib = config.getAttribute(IMILaunchConfigurationConstants.ATTR_DEBUGGER_AUTO_SOLIB, IMILaunchConfigurationConstants.DEBUGGER_AUTO_SOLIB_DEFAULT);
- boolean stopOnSolibEvents = config.getAttribute(IMILaunchConfigurationConstants.ATTR_DEBUGGER_STOP_ON_SOLIB_EVENTS, IMILaunchConfigurationConstants.DEBUGGER_STOP_ON_SOLIB_EVENTS_DEFAULT);
- List p = config.getAttribute(IMILaunchConfigurationConstants.ATTR_DEBUGGER_SOLIB_PATH, Collections.EMPTY_LIST);
- ICDITarget[] dtargets = session.getTargets();
- for (int i = 0; i < dtargets.length; ++i) {
- Target target = (Target)dtargets[i];
- try {
- mgr.setAutoLoadSymbols(target, autolib);
- mgr.setStopOnSolibEvents(target, stopOnSolibEvents);
- // The idea is that if the user set autolib, by default
- // we provide with the capability of deferred breakpoints
- // And we set setStopOnSolib events for them(but they should not see those things.
- //
- // If the user explicitly set stopOnSolibEvents well it probably
- // means that they wanted to see those events so do no do deferred breakpoints.
- if (autolib && !stopOnSolibEvents) {
- mgr.setStopOnSolibEvents(target, true);
- mgr.setDeferredBreakpoint(target, true);
- }
- } catch (CDIException e) {
- // Ignore this error
- // it seems to be a real problem on many gdb platform
- }
- if (p.size() > 0) {
- String[] oldPaths = mgr.getSharedLibraryPaths(target);
- String[] paths = new String[oldPaths.length + p.size()];
- System.arraycopy(p.toArray(new String[p.size()]), 0, paths, 0, p.size());
- System.arraycopy(oldPaths, 0, paths, p.size(), oldPaths.length);
- mgr.setSharedLibraryPaths(target, paths);
- }
- }
- } catch (CoreException e) {
- throw new CDIException(MIPlugin.getResourceString("src.GDBDebugger.Error_initializing_shared_lib_options") + e.getMessage()); //$NON-NLS-1$
- }
- }
-
- public ICDISession createLaunchSession(ILaunchConfiguration config, IFile exe) throws CDIException {
- Session session = null;
- boolean failed = false;
- try {
- String gdb = config.getAttribute(IMILaunchConfigurationConstants.ATTR_DEBUG_NAME, "gdb"); //$NON-NLS-1$
- String miVersion = config.getAttribute(ICDTLaunchConfigurationConstants.ATTR_DEBUGGER_PROTOCOL, "mi"); //$NON-NLS-1$
- File cwd = exe.getProject().getLocation().toFile();
- String gdbinit = config.getAttribute(IMILaunchConfigurationConstants.ATTR_GDB_INIT, IMILaunchConfigurationConstants.DEBUGGER_GDB_INIT_DEFAULT);
- session = MIPlugin.getDefault().createCSession(gdb, miVersion, exe.getLocation().toFile(), cwd, gdbinit, null);
- initializeLibraries(config, session);
- return session;
- } catch (IOException e) {
- failed = true;
- throw new CDIException(MIPlugin.getResourceString("src.GDBDebugger.Error_creating_session") + e.getMessage()); //$NON-NLS-1$
- } catch (MIException e) {
- failed = true;
- throw new CDIException(MIPlugin.getResourceString("src.GDBDebugger.Error_creating_session") + e.getMessage()); //$NON-NLS-1$
- } catch (CoreException e) {
- failed = true;
- throw new CDIException(MIPlugin.getResourceString("src.GDBDebugger.Error_creating_session") + e.getMessage()); //$NON-NLS-1$
- } finally {
- if (failed) {
- if (session != null) {
- try {
- session.terminate();
- } catch (Exception ex) {
- // ignore the exception here.
- }
- }
- }
- }
- }
-
- public ICDISession createAttachSession(ILaunchConfiguration config, IFile exe, int pid) throws CDIException {
- Session session = null;
- boolean failed = false;
- try {
- String gdb = config.getAttribute(IMILaunchConfigurationConstants.ATTR_DEBUG_NAME, "gdb"); //$NON-NLS-1$
- String miVersion = config.getAttribute(ICDTLaunchConfigurationConstants.ATTR_DEBUGGER_PROTOCOL, "mi"); //$NON-NLS-1$
- File cwd = exe.getProject().getLocation().toFile();
- String gdbinit = config.getAttribute(IMILaunchConfigurationConstants.ATTR_GDB_INIT, IMILaunchConfigurationConstants.DEBUGGER_GDB_INIT_DEFAULT);
- session = MIPlugin.getDefault().createCSession(gdb, miVersion, exe.getLocation().toFile(), pid, null, cwd, gdbinit, null);
- initializeLibraries(config, session);
- return session;
- } catch (IOException e) {
- failed = true;
- throw new CDIException(MIPlugin.getResourceString("src.GDBDebugger.Error_creating_session") + e.getMessage()); //$NON-NLS-1$
- } catch (MIException e) {
- failed = true;
- throw new CDIException(MIPlugin.getResourceString("src.GDBDebugger.Error_creating_session") + e.getMessage()); //$NON-NLS-1$
- } catch (CoreException e) {
- failed = true;
- throw new CDIException(MIPlugin.getResourceString("src.GDBDebugger.Error_creating_session") + e.getMessage()); //$NON-NLS-1$
- } finally {
- if (failed) {
- if (session != null) {
- try {
- session.terminate();
- } catch (Exception ex) {
- // ignore the exception here.
- }
- }
- }
- }
- }
-
- public ICDISession createCoreSession(ILaunchConfiguration config, IFile exe, IPath corefile) throws CDIException {
- Session session = null;
- boolean failed = false;
- try {
- String gdb = config.getAttribute(IMILaunchConfigurationConstants.ATTR_DEBUG_NAME, "gdb"); //$NON-NLS-1$
- String miVersion = config.getAttribute(ICDTLaunchConfigurationConstants.ATTR_DEBUGGER_PROTOCOL, "mi"); //$NON-NLS-1$
- File cwd = exe.getProject().getLocation().toFile();
- String gdbinit = config.getAttribute(IMILaunchConfigurationConstants.ATTR_GDB_INIT, IMILaunchConfigurationConstants.DEBUGGER_GDB_INIT_DEFAULT);
- session = MIPlugin.getDefault().createCSession(gdb, miVersion, exe.getLocation().toFile(), corefile.toFile(), cwd, gdbinit, null);
- initializeLibraries(config, session);
- return session;
- } catch (IOException e) {
- failed = true;
- throw new CDIException(MIPlugin.getResourceString("src.GDBDebugger.Error_creating_session") + e.getMessage()); //$NON-NLS-1$
- } catch (MIException e) {
- failed = true;
- throw new CDIException(MIPlugin.getResourceString("src.GDBDebugger.Error_creating_session") + e.getMessage()); //$NON-NLS-1$
- } catch (CoreException e) {
- failed = true;
- throw new CDIException(MIPlugin.getResourceString("src.GDBDebugger.Error_creating_session") + e.getMessage()); //$NON-NLS-1$
- } finally {
- if (failed) {
- if (session != null) {
- try {
- session.terminate();
- } catch (Exception ex) {
- // ignore the exception here.
- }
- }
- }
- }
- }
-
-}
diff --git a/debug/org.eclipse.cdt.debug.mi.core/src/org/eclipse/cdt/debug/mi/core/GDBProcess.java b/debug/org.eclipse.cdt.debug.mi.core/src/org/eclipse/cdt/debug/mi/core/GDBProcess.java
deleted file mode 100644
index bb7e5ce15dc..00000000000
--- a/debug/org.eclipse.cdt.debug.mi.core/src/org/eclipse/cdt/debug/mi/core/GDBProcess.java
+++ /dev/null
@@ -1,30 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.mi.core;
-
-import java.util.Map;
-import org.eclipse.cdt.debug.mi.core.cdi.model.Target;
-import org.eclipse.debug.core.ILaunch;
-import org.eclipse.debug.core.model.RuntimeProcess;
-
-public class GDBProcess extends RuntimeProcess {
-
- private Target fTarget;
-
- public GDBProcess( Target target, ILaunch launch, Process process, String name, Map attributes ) {
- super( launch, process, name, attributes );
- fTarget = target;
- }
-
- public Target getTarget() {
- return fTarget;
- }
-}
diff --git a/debug/org.eclipse.cdt.debug.mi.core/src/org/eclipse/cdt/debug/mi/core/GDBServerCDIDebugger.java b/debug/org.eclipse.cdt.debug.mi.core/src/org/eclipse/cdt/debug/mi/core/GDBServerCDIDebugger.java
deleted file mode 100644
index 979ec8523cd..00000000000
--- a/debug/org.eclipse.cdt.debug.mi.core/src/org/eclipse/cdt/debug/mi/core/GDBServerCDIDebugger.java
+++ /dev/null
@@ -1,120 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.cdt.debug.mi.core;
-
-import java.io.File;
-import org.eclipse.cdt.core.IBinaryParser.IBinaryObject;
-import org.eclipse.cdt.debug.core.cdi.model.ICDITarget;
-import org.eclipse.cdt.debug.mi.core.cdi.Session;
-import org.eclipse.cdt.debug.mi.core.cdi.model.Target;
-import org.eclipse.cdt.debug.mi.core.command.CommandFactory;
-import org.eclipse.cdt.debug.mi.core.command.MIGDBSet;
-import org.eclipse.cdt.debug.mi.core.command.MITargetSelect;
-import org.eclipse.cdt.debug.mi.core.output.MIInfo;
-import org.eclipse.core.runtime.CoreException;
-import org.eclipse.core.runtime.IProgressMonitor;
-import org.eclipse.core.runtime.Preferences;
-import org.eclipse.debug.core.ILaunchConfiguration;
-
-/**
- * Implementing cdebugger extension point
- */
-public class GDBServerCDIDebugger extends GDBCDIDebugger {
-
- /* (non-Javadoc)
- * @see org.eclipse.cdt.debug.mi.core.GDBCDIDebugger#createLaunchSession(org.eclipse.debug.core.ILaunchConfiguration, org.eclipse.cdt.core.IBinaryParser.IBinaryExecutable, org.eclipse.core.runtime.IProgressMonitor)
- */
- public Session createLaunchSession(ILaunchConfiguration config, IBinaryObject exe, IProgressMonitor monitor)
- throws CoreException {
- Session session = null;
- boolean failed = false;
- try {
- String gdb = config.getAttribute(IMILaunchConfigurationConstants.ATTR_DEBUG_NAME, "gdb"); //$NON-NLS-1$
- String miVersion = getMIVersion(config);
- File cwd = getProjectPath(config).toFile();
- String gdbinit = config.getAttribute(IMILaunchConfigurationConstants.ATTR_GDB_INIT, IMILaunchConfigurationConstants.DEBUGGER_GDB_INIT_DEFAULT);
- if (config.getAttribute(IGDBServerMILaunchConfigurationConstants.ATTR_REMOTE_TCP, false)) {
- String remote = config.getAttribute(IGDBServerMILaunchConfigurationConstants.ATTR_HOST, "invalid"); //$NON-NLS-1$
- remote += ":"; //$NON-NLS-1$
- remote += config.getAttribute(IGDBServerMILaunchConfigurationConstants.ATTR_PORT, "invalid"); //$NON-NLS-1$
- String[] args = new String[] {"remote", remote}; //$NON-NLS-1$
- session = MIPlugin.getDefault().createCSession(gdb, miVersion, exe.getPath().toFile(), 0, args, cwd, gdbinit, monitor);
- } else {
- MIPlugin plugin = MIPlugin.getDefault();
- Preferences prefs = plugin.getPluginPreferences();
- int launchTimeout = prefs.getInt(IMIConstants.PREF_REQUEST_LAUNCH_TIMEOUT);
-
- String remote = config.getAttribute(IGDBServerMILaunchConfigurationConstants.ATTR_DEV, "invalid"); //$NON-NLS-1$
- String remoteBaud = config.getAttribute(IGDBServerMILaunchConfigurationConstants.ATTR_DEV_SPEED, "invalid"); //$NON-NLS-1$
- session = MIPlugin.getDefault().createCSession(gdb, miVersion, exe.getPath().toFile(), -1, null, cwd, gdbinit, monitor);
- ICDITarget[] targets = session.getTargets();
- for (int i = 0; i < targets.length; ++i) {
- Target target = (Target)targets[i];
- MISession miSession = target.getMISession();
- CommandFactory factory = miSession.getCommandFactory();
- MIGDBSet setRemoteBaud = factory.createMIGDBSet(new String[]{"remotebaud", remoteBaud}); //$NON-NLS-1$
- // Set serial line parameters
- miSession.postCommand(setRemoteBaud, launchTimeout);
- MIInfo info = setRemoteBaud.getMIInfo();
- if (info == null) {
- throw new MIException (MIPlugin.getResourceString("src.GDBServerDebugger.Can_not_set_Baud")); //$NON-NLS-1$
- }
- MITargetSelect select = factory.createMITargetSelect(new String[] {"remote", remote}); //$NON-NLS-1$
- miSession.postCommand(select, launchTimeout);
- select.getMIInfo();
- if (info == null) {
- throw new MIException (MIPlugin.getResourceString("src.common.No_answer")); //$NON-NLS-1$
- }
- }
- }
- initializeLibraries(config, session);
- return session;
- } catch (Exception e) {
- // Catch all wrap them up and rethrow
- failed = true;
- if (e instanceof CoreException) {
- throw (CoreException)e;
- }
- throw newCoreException(e);
- } finally {
- if (failed) {
- if (session != null) {
- try {
- session.terminate();
- } catch (Exception ex) {
- // ignore the exception here.
- }
- }
- }
- }
-
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.cdt.debug.mi.core.GDBCDIDebugger#createAttachSession(org.eclipse.debug.core.ILaunchConfiguration, org.eclipse.cdt.core.IBinaryParser.IBinaryExecutable, org.eclipse.core.runtime.IProgressMonitor)
- */
- public Session createAttachSession(ILaunchConfiguration config, IBinaryObject exe, IProgressMonitor monitor)
- throws CoreException {
- String msg = MIPlugin.getResourceString("src.GDBServerDebugger.GDBServer_attaching_unsupported"); //$NON-NLS-1$
- throw newCoreException(msg, null);
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.cdt.debug.mi.core.GDBCDIDebugger#createCoreSession(org.eclipse.debug.core.ILaunchConfiguration, org.eclipse.cdt.core.IBinaryParser.IBinaryExecutable, org.eclipse.core.runtime.IProgressMonitor)
- */
- public Session createCoreSession(ILaunchConfiguration config, IBinaryObject exe, IProgressMonitor monitor)
- throws CoreException {
- String msg = MIPlugin.getResourceString("src.GDBServerDebugger.GDBServer_corefiles_unsupported"); //$NON-NLS-1$
- throw newCoreException(msg, null);
- }
-
-}
diff --git a/debug/org.eclipse.cdt.debug.mi.core/src/org/eclipse/cdt/debug/mi/core/GDBServerCDIDebugger2.java b/debug/org.eclipse.cdt.debug.mi.core/src/org/eclipse/cdt/debug/mi/core/GDBServerCDIDebugger2.java
deleted file mode 100644
index 766c8dec293..00000000000
--- a/debug/org.eclipse.cdt.debug.mi.core/src/org/eclipse/cdt/debug/mi/core/GDBServerCDIDebugger2.java
+++ /dev/null
@@ -1,134 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.mi.core;
-
-import org.eclipse.cdt.debug.core.ICDTLaunchConfigurationConstants;
-import org.eclipse.cdt.debug.core.cdi.model.ICDITarget;
-import org.eclipse.cdt.debug.mi.core.cdi.Session;
-import org.eclipse.cdt.debug.mi.core.cdi.model.Target;
-import org.eclipse.cdt.debug.mi.core.command.CommandFactory;
-import org.eclipse.cdt.debug.mi.core.command.MIGDBSet;
-import org.eclipse.cdt.debug.mi.core.command.MITargetSelect;
-import org.eclipse.cdt.debug.mi.core.output.MIInfo;
-import org.eclipse.core.runtime.CoreException;
-import org.eclipse.core.runtime.IProgressMonitor;
-import org.eclipse.core.runtime.OperationCanceledException;
-import org.eclipse.debug.core.ILaunch;
-import org.eclipse.debug.core.ILaunchConfiguration;
-
-/**
- * Implementing the cdebugger extension point for gdbserver.
- */
-public class GDBServerCDIDebugger2 extends GDBCDIDebugger2 {
-
- /* (non-Javadoc)
- * @see org.eclipse.cdt.debug.mi.core.GDBCDIDebugger2#doStartSession(org.eclipse.debug.core.ILaunch, org.eclipse.cdt.debug.mi.core.cdi.Session, org.eclipse.core.runtime.IProgressMonitor)
- */
- protected void doStartSession( ILaunch launch, Session session, IProgressMonitor monitor ) throws CoreException {
- ILaunchConfiguration config = launch.getLaunchConfiguration();
- initializeLibraries( config, session );
- if ( monitor.isCanceled() ) {
- throw new OperationCanceledException();
- }
- String debugMode = config.getAttribute( ICDTLaunchConfigurationConstants.ATTR_DEBUGGER_START_MODE, ICDTLaunchConfigurationConstants.DEBUGGER_MODE_RUN );
- if ( ICDTLaunchConfigurationConstants.DEBUGGER_MODE_RUN.equals( debugMode ) )
- startGDBServerSession( config, session, monitor );
- if ( ICDTLaunchConfigurationConstants.DEBUGGER_MODE_ATTACH.equals( debugMode ) ) {
- String msg = MIPlugin.getResourceString( "src.GDBServerDebugger.GDBServer_attaching_unsupported" ); //$NON-NLS-1$
- throw newCoreException( msg, null );
- }
- if ( ICDTLaunchConfigurationConstants.DEBUGGER_MODE_CORE.equals( debugMode ) ) {
- String msg = MIPlugin.getResourceString( "src.GDBServerDebugger.GDBServer_corefiles_unsupported" ); //$NON-NLS-1$
- throw newCoreException( msg, null );
- }
- }
-
- protected void startGDBServerSession( ILaunchConfiguration config, Session session, IProgressMonitor monitor ) throws CoreException {
- if ( monitor.isCanceled() ) {
- throw new OperationCanceledException();
- }
- ICDITarget[] targets = session.getTargets();
- int launchTimeout = MIPlugin.getLaunchTimeout();
- boolean tcpConnection = config.getAttribute( IGDBServerMILaunchConfigurationConstants.ATTR_REMOTE_TCP, false );
- // Set serial line parameters
- if ( !tcpConnection ) {
- String remoteBaud = config.getAttribute( IGDBServerMILaunchConfigurationConstants.ATTR_DEV_SPEED, "invalid" ); //$NON-NLS-1$
- for( int i = 0; i < targets.length; ++i ) {
- if ( monitor.isCanceled() ) {
- throw new OperationCanceledException();
- }
- Target target = (Target)targets[i];
- MISession miSession = target.getMISession();
- CommandFactory factory = miSession.getCommandFactory();
- MIGDBSet setRemoteBaud = factory.createMIGDBSet( new String[]{ "remotebaud", remoteBaud } ); //$NON-NLS-1$
- // Set serial line parameters
- MIInfo info = null;
- MIException ex = null;
- try {
- // shouldn't we use the command timeout instead?
- miSession.postCommand( setRemoteBaud, launchTimeout );
- info = setRemoteBaud.getMIInfo();
- }
- catch( MIException e ) {
- ex = e;
- }
- if ( info == null ) {
- throw newCoreException( MIPlugin.getResourceString( "src.GDBServerDebugger.Can_not_set_Baud" ), ex ); //$NON-NLS-1$
- }
- }
- }
- for( int i = 0; i < targets.length; ++i ) {
- if ( monitor.isCanceled() ) {
- throw new OperationCanceledException();
- }
- Target target = (Target)targets[i];
- MISession miSession = target.getMISession();
- CommandFactory factory = miSession.getCommandFactory();
- String[] targetParams = getTargetParams( config, tcpConnection );
- MITargetSelect select = factory.createMITargetSelect( targetParams );
- MIInfo info = null;
- MIException ex = null;
- try {
- miSession.postCommand( select, launchTimeout );
- info = select.getMIInfo();
- }
- catch( MIException e ) {
- ex = e;
- }
- if ( info == null ) {
- throw newCoreException( MIPlugin.getResourceString( "src.GDBServerCDIDebugger.target_selection_failed" ), ex ); //$NON-NLS-1$
- }
- // @@@ We have to set the suspended state manually
- miSession.getMIInferior().setSuspended();
- miSession.getMIInferior().update();
- }
- }
-
- protected String[] getTargetParams( ILaunchConfiguration config, boolean tcpConnection ) throws CoreException {
- String remote = null;
- if ( tcpConnection ) {
- remote = config.getAttribute( IGDBServerMILaunchConfigurationConstants.ATTR_HOST, "invalid" ); //$NON-NLS-1$
- remote += ":"; //$NON-NLS-1$
- remote += config.getAttribute( IGDBServerMILaunchConfigurationConstants.ATTR_PORT, "invalid" ); //$NON-NLS-1$
- }
- else {
- remote = config.getAttribute( IGDBServerMILaunchConfigurationConstants.ATTR_DEV, "invalid" ); //$NON-NLS-1$
- }
- return new String[]{ "remote", remote }; //$NON-NLS-1$
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.cdt.debug.mi.core.AbstractGDBCDIDebugger#usePty(org.eclipse.debug.core.ILaunchConfiguration)
- */
- protected boolean usePty( ILaunchConfiguration config ) throws CoreException {
- return false;
- }
-}
diff --git a/debug/org.eclipse.cdt.debug.mi.core/src/org/eclipse/cdt/debug/mi/core/GDBServerDebugger.java b/debug/org.eclipse.cdt.debug.mi.core/src/org/eclipse/cdt/debug/mi/core/GDBServerDebugger.java
deleted file mode 100644
index b68ac359a5e..00000000000
--- a/debug/org.eclipse.cdt.debug.mi.core/src/org/eclipse/cdt/debug/mi/core/GDBServerDebugger.java
+++ /dev/null
@@ -1,135 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * Monta Vista - initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.cdt.debug.mi.core;
-
-import java.io.File;
-import java.io.IOException;
-import java.util.ArrayList;
-import java.util.List;
-
-import org.eclipse.cdt.debug.core.ICDTLaunchConfigurationConstants;
-import org.eclipse.cdt.debug.core.ICDebugger;
-import org.eclipse.cdt.debug.core.cdi.CDIException;
-import org.eclipse.cdt.debug.core.cdi.ICDISession;
-import org.eclipse.cdt.debug.core.cdi.model.ICDITarget;
-import org.eclipse.cdt.debug.mi.core.cdi.Session;
-import org.eclipse.cdt.debug.mi.core.cdi.SharedLibraryManager;
-import org.eclipse.cdt.debug.mi.core.cdi.model.Target;
-import org.eclipse.cdt.debug.mi.core.command.CommandFactory;
-import org.eclipse.cdt.debug.mi.core.command.MIGDBSet;
-import org.eclipse.cdt.debug.mi.core.command.MITargetSelect;
-import org.eclipse.cdt.debug.mi.core.output.MIInfo;
-import org.eclipse.core.resources.IFile;
-import org.eclipse.core.runtime.CoreException;
-import org.eclipse.core.runtime.IPath;
-import org.eclipse.core.runtime.Preferences;
-import org.eclipse.debug.core.ILaunchConfiguration;
-
-public class GDBServerDebugger implements ICDebugger {
-
- void initializeLibraries(ILaunchConfiguration config, Session session) throws CDIException {
- try {
- SharedLibraryManager mgr = session.getSharedLibraryManager();
- boolean autolib = config.getAttribute(IMILaunchConfigurationConstants.ATTR_DEBUGGER_AUTO_SOLIB, IMILaunchConfigurationConstants.DEBUGGER_AUTO_SOLIB_DEFAULT);
- List p = config.getAttribute(IMILaunchConfigurationConstants.ATTR_DEBUGGER_SOLIB_PATH, new ArrayList(1));
- ICDITarget[] dtargets = session.getTargets();
- for (int i = 0; i < dtargets.length; ++i) {
- Target target = (Target)dtargets[i];
- try {
- mgr.setAutoLoadSymbols(target, autolib);
- } catch (CDIException e) {
- // ignore this one, cause problems for many gdb.
- }
- if (p.size() > 0) {
- String[] paths = (String[])p.toArray(new String[0]);
- mgr.setSharedLibraryPaths(target, paths);
- }
- }
- } catch (CoreException e) {
- throw new CDIException(MIPlugin.getResourceString("src.GDBServerDebugger.Error_initializing") + e.getMessage()); //$NON-NLS-1$
- }
- }
-
- public ICDISession createLaunchSession(ILaunchConfiguration config, IFile exe) throws CDIException {
- Session session = null;
- boolean failed = false;
- try {
- String gdb = config.getAttribute(IMILaunchConfigurationConstants.ATTR_DEBUG_NAME, "gdb"); //$NON-NLS-1$
- String miVersion = config.getAttribute(ICDTLaunchConfigurationConstants.ATTR_DEBUGGER_PROTOCOL, "mi"); //$NON-NLS-1$
- File cwd = exe.getProject().getLocation().toFile();
- String gdbinit = config.getAttribute(IMILaunchConfigurationConstants.ATTR_GDB_INIT, IMILaunchConfigurationConstants.DEBUGGER_GDB_INIT_DEFAULT);
- if (config.getAttribute(IGDBServerMILaunchConfigurationConstants.ATTR_REMOTE_TCP, false)) {
- String remote = config.getAttribute(IGDBServerMILaunchConfigurationConstants.ATTR_HOST, "invalid"); //$NON-NLS-1$
- remote += ":"; //$NON-NLS-1$
- remote += config.getAttribute(IGDBServerMILaunchConfigurationConstants.ATTR_PORT, "invalid"); //$NON-NLS-1$
- String[] args = new String[] {"remote", remote}; //$NON-NLS-1$
- session = MIPlugin.getDefault().createCSession(gdb, miVersion, exe.getLocation().toFile(), 0, args, cwd, gdbinit, null);
- } else {
- MIPlugin plugin = MIPlugin.getDefault();
- Preferences prefs = plugin.getPluginPreferences();
- int launchTimeout = prefs.getInt(IMIConstants.PREF_REQUEST_LAUNCH_TIMEOUT);
-
- String remote = config.getAttribute(IGDBServerMILaunchConfigurationConstants.ATTR_DEV, "invalid"); //$NON-NLS-1$
- String remoteBaud = config.getAttribute(IGDBServerMILaunchConfigurationConstants.ATTR_DEV_SPEED, "invalid"); //$NON-NLS-1$
- session = MIPlugin.getDefault().createCSession(gdb, miVersion, exe.getLocation().toFile(), -1, null, cwd, gdbinit, null);
- ICDITarget[] targets = session.getTargets();
- for (int i = 0; i < targets.length; ++i) {
- Target target = (Target)targets[i];
- MISession miSession = target.getMISession();
- CommandFactory factory = miSession.getCommandFactory();
- MIGDBSet setRemoteBaud = factory.createMIGDBSet(new String[]{"remotebaud", remoteBaud}); //$NON-NLS-1$
- // Set serial line parameters
- miSession.postCommand(setRemoteBaud, launchTimeout);
- MIInfo info = setRemoteBaud.getMIInfo();
- if (info == null) {
- throw new MIException (MIPlugin.getResourceString("src.GDBServerDebugger.Can_not_set_Baud")); //$NON-NLS-1$
- }
- MITargetSelect select = factory.createMITargetSelect(new String[] {"remote", remote}); //$NON-NLS-1$
- miSession.postCommand(select, launchTimeout);
- select.getMIInfo();
- if (info == null) {
- throw new MIException (MIPlugin.getResourceString("src.common.No_answer")); //$NON-NLS-1$
- }
- }
- }
- initializeLibraries(config, session);
- return session;
- } catch (IOException e) {
- failed = true;
- throw new CDIException(MIPlugin.getResourceString("src.GDBServerDebugger.Error_initializing") + e.getMessage()); //$NON-NLS-1$
- } catch (MIException e) {
- failed = true;
- throw new CDIException(MIPlugin.getResourceString("src.GDBServerDebugger.Error_initializing") + e.getMessage()); //$NON-NLS-1$
- } catch (CoreException e) {
- failed = true;
- throw new CDIException(MIPlugin.getResourceString("src.GDBServerDebugger.Error_initializing") + e.getMessage()); //$NON-NLS-1$
- } finally {
- if (failed) {
- if (session != null) {
- try {
- session.terminate();
- } catch (Exception ex) {
- // ignore the exception here.
- }
- }
- }
- }
- }
-
- public ICDISession createAttachSession(ILaunchConfiguration config, IFile exe, int pid) throws CDIException {
- throw new CDIException(MIPlugin.getResourceString("src.GDBServerDebugger.GDBServer_attaching_unsupported")); //$NON-NLS-1$
- }
-
- public ICDISession createCoreSession(ILaunchConfiguration config, IFile exe, IPath corefile) throws CDIException {
- throw new CDIException(MIPlugin.getResourceString("src.GDBServerDebugger.GDBServer_corefiles_unsupported")); //$NON-NLS-1$
- }
-}
diff --git a/debug/org.eclipse.cdt.debug.mi.core/src/org/eclipse/cdt/debug/mi/core/IGDBServerMILaunchConfigurationConstants.java b/debug/org.eclipse.cdt.debug.mi.core/src/org/eclipse/cdt/debug/mi/core/IGDBServerMILaunchConfigurationConstants.java
deleted file mode 100644
index 8aaa289fa4e..00000000000
--- a/debug/org.eclipse.cdt.debug.mi.core/src/org/eclipse/cdt/debug/mi/core/IGDBServerMILaunchConfigurationConstants.java
+++ /dev/null
@@ -1,25 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * Monta Vista - initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.cdt.debug.mi.core;
-
-
-public interface IGDBServerMILaunchConfigurationConstants extends IMILaunchConfigurationConstants {
-
- /**
- * Launch configuration attribute key. The "remote target xxx" value.
- */
- public static final String ATTR_REMOTE_TCP = MIPlugin.getUniqueIdentifier() + ".REMOTE_TCP"; //$NON-NLS-1$
- public static final String ATTR_HOST = MIPlugin.getUniqueIdentifier() + ".HOST"; //$NON-NLS-1$
- public static final String ATTR_PORT = MIPlugin.getUniqueIdentifier() + ".PORT"; //$NON-NLS-1$
- public static final String ATTR_DEV = MIPlugin.getUniqueIdentifier() + ".DEV"; //$NON-NLS-1$
- public static final String ATTR_DEV_SPEED = MIPlugin.getUniqueIdentifier() + ".DEV_SPEED"; //$NON-NLS-1$
-}
diff --git a/debug/org.eclipse.cdt.debug.mi.core/src/org/eclipse/cdt/debug/mi/core/IMIConstants.java b/debug/org.eclipse.cdt.debug.mi.core/src/org/eclipse/cdt/debug/mi/core/IMIConstants.java
deleted file mode 100644
index ffd7ed651eb..00000000000
--- a/debug/org.eclipse.cdt.debug.mi.core/src/org/eclipse/cdt/debug/mi/core/IMIConstants.java
+++ /dev/null
@@ -1,66 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2005 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.mi.core;
-
-/**
- *
- * Constant definitions for GDB MI plug-in.
- *
- * @since Oct 4, 2002
- */
-public interface IMIConstants
-{
- /**
- * MI plug-in identifier (value <code>"org.eclipse.cdt.debug.mi"</code>).
- */
- public static final String PLUGIN_ID = MIPlugin.getUniqueIdentifier();
-
- /**
- * Preference key for default MI request timeout value.
- */
- public static final String PREF_REQUEST_TIMEOUT = PLUGIN_ID + ".PREF_REQUEST_TIMEOUT"; //$NON-NLS-1$
-
- /**
- * Preference key for default MI launch request timeout value.
- */
- public static final String PREF_REQUEST_LAUNCH_TIMEOUT = PLUGIN_ID + ".PREF_REQUEST_LAUNCH_TIMEOUT"; //$NON-NLS-1$
-
- /**
- * The default MI request timeout when no preference is set.
- */
- public static final int DEF_REQUEST_LAUNCH_TIMEOUT = 30000;
-
- /**
- * The default MI request timeout when no preference is set.
- */
- public static final int DEF_REQUEST_TIMEOUT = 10000;
-
- /**
- * The minimum value the MI request timeout can have.
- */
- public static final int MIN_REQUEST_TIMEOUT = 100;
-
- /**
- * The maximum value the MI request timeout can have.
- */
- public static final int MAX_REQUEST_TIMEOUT = Integer.MAX_VALUE;
-
- /**
- * Boolean preference controlling whether the shared library manager will be
- * refreshed every time when the execution of program stops.
- */
- public static final String PREF_SHARED_LIBRARIES_AUTO_REFRESH = PLUGIN_ID + ".SharedLibraries.auto_refresh"; //$NON-NLS-1$
-
- /**
- * The default value of the for <code>PREF_SHARED_LIBRARIES_AUTO_REFRESH</code> property
- */
- public static final boolean DEF_PREF_SHARED_LIBRARIES_AUTO_REFRESH = true;
-}
diff --git a/debug/org.eclipse.cdt.debug.mi.core/src/org/eclipse/cdt/debug/mi/core/IMILaunchConfigurationConstants.java b/debug/org.eclipse.cdt.debug.mi.core/src/org/eclipse/cdt/debug/mi/core/IMILaunchConfigurationConstants.java
deleted file mode 100644
index afe413d02dc..00000000000
--- a/debug/org.eclipse.cdt.debug.mi.core/src/org/eclipse/cdt/debug/mi/core/IMILaunchConfigurationConstants.java
+++ /dev/null
@@ -1,86 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.mi.core;
-
-public interface IMILaunchConfigurationConstants {
- /**
- * Launch configuration attribute key. The value is the name of
- * the Debuger associated with a C/C++ launch configuration.
- */
- public static final String ATTR_DEBUG_NAME = MIPlugin.getUniqueIdentifier() + ".DEBUG_NAME"; //$NON-NLS-1$
-
- /**
- * Launch configuration attribute key. Boolean value to set the gdb command file
- * Debuger/gdb/MI property.
- */
- public static final String ATTR_GDB_INIT = MIPlugin.getUniqueIdentifier() + ".GDB_INIT"; //$NON-NLS-1$
-
- /**
- * Launch configuration attribute key. Boolean value to set the 'automatically load shared library symbols' flag of the debugger.
- */
- public static final String ATTR_DEBUGGER_AUTO_SOLIB = MIPlugin.getUniqueIdentifier() + ".AUTO_SOLIB"; //$NON-NLS-1$
-
- /**
- * Launch configuration attribute key. Boolean value to set the 'stop on shared library events' flag of the debugger.
- */
- public static final String ATTR_DEBUGGER_STOP_ON_SOLIB_EVENTS = MIPlugin.getUniqueIdentifier() + ".STOP_ON_SOLIB_EVENTS"; //$NON-NLS-1$
-
- /**
- * Launch configuration attribute key. The value is a List (array of String) of directories for the search path of shared libraries.
- */
- public static final String ATTR_DEBUGGER_SOLIB_PATH = MIPlugin.getUniqueIdentifier() + ".SOLIB_PATH"; //$NON-NLS-1$
-
- /**
- * Launch configuration attribute key. The value is a List (array of String) of shared libraries to load symbols automatically.
- */
- public static final String ATTR_DEBUGGER_AUTO_SOLIB_LIST = MIPlugin.getUniqueIdentifier() + ".AUTO_SOLIB_LIST"; //$NON-NLS-1$
-
- /**
- * Launch configuration attribute value. The key is ATTR_DEBUG_NAME.
- */
- public static final String DEBUGGER_DEBUG_NAME_DEFAULT = "gdb"; //$NON-NLS-1$
-
- /**
- * Launch configuration attribute value. The key is ATTR_GDB_INIT.
- */
- public static final String DEBUGGER_GDB_INIT_DEFAULT = ".gdbinit"; //$NON-NLS-1$
-
- /**
- * Launch configuration attribute value. The key is ATTR_DEBUGGER_AUTO_SOLIB.
- */
- public static final boolean DEBUGGER_AUTO_SOLIB_DEFAULT = true;
-
- /**
- * Launch configuration attribute value. The key is ATTR_DEBUGGER_STOP_ON_SOLIB_EVENTS.
- */
- public static final boolean DEBUGGER_STOP_ON_SOLIB_EVENTS_DEFAULT = false;
-
- /**
- * Launch configuration attribute key. The value is a string specifying the identifier of the command factory to use.
- */
- public static final String ATTR_DEBUGGER_COMMAND_FACTORY = MIPlugin.getUniqueIdentifier() + ".commandFactory"; //$NON-NLS-1$
-
- /**
- * Launch configuration attribute key. The value is a string specifying the protocol to
- * use. For now only "mi", "mi1", "m2", "mi3" are supported.
- */
- public static final String ATTR_DEBUGGER_PROTOCOL = MIPlugin.getUniqueIdentifier() + ".protocol"; //$NON-NLS-1$
-
- /**
- * Launch configuration attribute key. The value is a boolean specifying the mode of the gdb console.
- */
- public static final String ATTR_DEBUGGER_VERBOSE_MODE = MIPlugin.getUniqueIdentifier() + ".verboseMode"; //$NON-NLS-1$
-
- /**
- * Launch configuration attribute value. The key is ATTR_DEBUGGER_VERBOSE_MODE.
- */
- public static final boolean DEBUGGER_VERBOSE_MODE_DEFAULT = false;
-}
diff --git a/debug/org.eclipse.cdt.debug.mi.core/src/org/eclipse/cdt/debug/mi/core/MICoreUtils.java b/debug/org.eclipse.cdt.debug.mi.core/src/org/eclipse/cdt/debug/mi/core/MICoreUtils.java
deleted file mode 100644
index 14e5d9d252a..00000000000
--- a/debug/org.eclipse.cdt.debug.mi.core/src/org/eclipse/cdt/debug/mi/core/MICoreUtils.java
+++ /dev/null
@@ -1,35 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.mi.core;
-
-import java.io.File;
-import java.util.ArrayList;
-import java.util.Collections;
-import java.util.Iterator;
-import java.util.List;
-import org.eclipse.core.runtime.CoreException;
-import org.eclipse.debug.core.ILaunchConfiguration;
-
-/**
- * Utility methods.
- */
-public class MICoreUtils {
-
- public static File[] getAutoSolibs( ILaunchConfiguration configuration ) throws CoreException {
- List autoSolibs = configuration.getAttribute( IMILaunchConfigurationConstants.ATTR_DEBUGGER_AUTO_SOLIB_LIST, Collections.EMPTY_LIST );
- List list = new ArrayList( autoSolibs.size() );
- Iterator it = autoSolibs.iterator();
- while( it.hasNext() ) {
- list.add( new File( (String)it.next() ) );
- }
- return (File[])list.toArray( new File[list.size()] );
- }
-}
diff --git a/debug/org.eclipse.cdt.debug.mi.core/src/org/eclipse/cdt/debug/mi/core/MIPlugin.java b/debug/org.eclipse.cdt.debug.mi.core/src/org/eclipse/cdt/debug/mi/core/MIPlugin.java
deleted file mode 100644
index 9f5cc997dae..00000000000
--- a/debug/org.eclipse.cdt.debug.mi.core/src/org/eclipse/cdt/debug/mi/core/MIPlugin.java
+++ /dev/null
@@ -1,599 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.mi.core;
-
-import java.io.File;
-import java.io.IOException;
-import java.io.InputStream;
-import java.io.OutputStream;
-import java.text.MessageFormat;
-import java.util.ArrayList;
-import java.util.Arrays;
-import java.util.MissingResourceException;
-import java.util.ResourceBundle;
-import org.eclipse.cdt.debug.core.CDebugCorePlugin;
-import org.eclipse.cdt.debug.core.ICDTLaunchConfigurationConstants;
-import org.eclipse.cdt.debug.core.ICDebugConfiguration;
-import org.eclipse.cdt.debug.core.ICDebugConstants;
-import org.eclipse.cdt.debug.mi.core.cdi.Session;
-import org.eclipse.cdt.debug.mi.core.command.CLITargetAttach;
-import org.eclipse.cdt.debug.mi.core.command.CommandFactory;
-import org.eclipse.cdt.debug.mi.core.command.MIStackListFrames;
-import org.eclipse.cdt.debug.mi.core.command.MITargetSelect;
-import org.eclipse.cdt.debug.mi.core.command.factories.CommandFactoryManager;
-import org.eclipse.cdt.debug.mi.core.output.MIInfo;
-import org.eclipse.cdt.utils.pty.PTY;
-import org.eclipse.core.runtime.CoreException;
-import org.eclipse.core.runtime.IProgressMonitor;
-import org.eclipse.core.runtime.NullProgressMonitor;
-import org.eclipse.core.runtime.Plugin;
-import org.eclipse.core.runtime.Preferences;
-import org.eclipse.debug.core.ILaunchConfiguration;
-import org.osgi.framework.BundleContext;
-
-/**
- * GDB/MI Plugin.
- */
-public class MIPlugin extends Plugin {
-
- /**
- * The plug-in identifier of the Java core support
- * (value <code>"org.eclipse.jdt.core"</code>).
- */
- public static final String PLUGIN_ID = "org.eclipse.cdt.debug.mi.core" ; //$NON-NLS-1$
-
- /**
- * Simple identifier constant (value <code>"commandFactories"</code>)
- * for the "gdb/mi command factories" extension point.
- *
- * @since 3.1
- */
- public static final String EXTENSION_POINT_COMMAND_FACTORIES = "commandFactories"; //$NON-NLS-1$
-
- //The shared instance.
- private static MIPlugin plugin;
-
- // GDB command
- private static final String GDB = "gdb"; //$NON-NLS-1$
-
- /**
- * The singleton command factory manager.
- */
- private CommandFactoryManager fCommandFactoryManager;
-
- private static ResourceBundle fgResourceBundle;
- static {
- try {
- fgResourceBundle = ResourceBundle.getBundle("org.eclipse.cdt.debug.mi.core.MIPluginResources"); //$NON-NLS-1$
- } catch (MissingResourceException x) {
- fgResourceBundle = null;
- }
- }
- /**
- * The constructor
- * @see org.eclipse.core.runtime.Plugin#Plugin()
- */
- public MIPlugin() {
- super();
- plugin = this;
- }
-
- /**
- * Returns the singleton.
- */
- public static MIPlugin getDefault() {
- return plugin;
- }
-
- /**
- * Method createMISession.
- * @param Process
- * @param PTY
- * @param int
- * @param int
- * @throws MIException
- * @return MISession
- *
- * @deprecated
- */
- public MISession createMISession(MIProcess process, IMITTY pty, int timeout, int type, int launchTimeout, String miVersion, IProgressMonitor monitor) throws MIException {
- return new MISession(process, pty, type, timeout, launchTimeout, miVersion, monitor);
- }
-
- /**
- * Method createMISession.
- * @param Process
- * @param PTY
- * @param type
- * @throws MIException
- * @return MISession
- *
- * @deprecated
- */
- public MISession createMISession(MIProcess process, IMITTY pty, int type, String miVersion, IProgressMonitor monitor) throws MIException {
- MIPlugin miPlugin = getDefault();
- Preferences prefs = miPlugin.getPluginPreferences();
- int timeout = prefs.getInt(IMIConstants.PREF_REQUEST_TIMEOUT);
- int launchTimeout = prefs.getInt(IMIConstants.PREF_REQUEST_LAUNCH_TIMEOUT);
- return createMISession(process, pty, timeout, type, launchTimeout, miVersion, monitor);
- }
-
- private MISession createMISession0(int type, MIProcess process, CommandFactory commandFactory, IMITTY pty, int timeout) throws MIException {
- return new MISession(process, pty, type, commandFactory, timeout);
- }
-
- /**
- * Method createCSession; Create an new PTY instance and launch gdb in mi for local debug.
- *
- * @param program
- * @return ICDISession
- * @throws MIException
- *
- * @deprecated use <code>createSession</code>
- */
- public Session createCSession(String gdb, String miVersion, File program, File cwd, String gdbinit, IProgressMonitor monitor) throws IOException, MIException {
- IMITTY pty = null;
- boolean failed = false;
-
- try {
- PTY pseudo = new PTY();
- pty = new MITTYAdapter(pseudo);
- } catch (IOException e) {
- // Should we not print/log this ?
- }
-
- try {
- return createCSession(gdb, miVersion, program, cwd, gdbinit, pty, monitor);
- } catch (IOException exc) {
- failed = true;
- throw exc;
- } catch (MIException exc) {
- failed = true;
- throw exc;
- } finally {
- if (failed) {
- // Shutdown the pty console.
- if (pty != null) {
- try {
- OutputStream out = pty.getOutputStream();
- if (out != null) {
- out.close();
- }
- InputStream in = pty.getInputStream();
- if (in != null) {
- in.close();
- }
- } catch (IOException e) {
- }
- }
- }
- }
- }
-
- /**
- * Method createCSession; lauch gdb in mi mode for local debugging
- * @param program
- * @return ICDISession
- * @throws IOException
- *
- * @deprecated use <code>createSession</code>
- */
- public Session createCSession(String gdb, String miVersion, File program, File cwd, String gdbinit, IMITTY pty, IProgressMonitor monitor) throws IOException, MIException {
- if (gdb == null || gdb.length() == 0) {
- gdb = GDB;
- }
-
- String commandFile = (gdbinit != null && gdbinit.length() > 0) ? "--command="+gdbinit : "--nx"; //$NON-NLS-1$ //$NON-NLS-2$
-
- if (monitor == null) {
- monitor = new NullProgressMonitor();
- }
-
- String[] args;
- if (pty != null) {
- if (program == null) {
- args = new String[] {gdb, "--cd="+cwd.getAbsolutePath(), commandFile, "-q", "-nw", "-tty", pty.getSlaveName(), "-i", miVersion}; //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$ //$NON-NLS-4$ //$NON-NLS-5$
- } else {
- args = new String[] {gdb, "--cd="+cwd.getAbsolutePath(), commandFile, "-q", "-nw", "-tty", pty.getSlaveName(), "-i", miVersion, program.getAbsolutePath()}; //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$ //$NON-NLS-4$ //$NON-NLS-5$
- }
- } else {
- if (program == null) {
- args = new String[] {gdb, "--cd="+cwd.getAbsolutePath(), commandFile, "-q", "-nw", "-i", miVersion}; //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$ //$NON-NLS-4$
- } else {
- args = new String[] {gdb, "--cd="+cwd.getAbsolutePath(), commandFile, "-q", "-nw", "-i", miVersion, program.getAbsolutePath()}; //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$ //$NON-NLS-4$
- }
- }
-
- int launchTimeout = MIPlugin.getDefault().getPluginPreferences().getInt(IMIConstants.PREF_REQUEST_LAUNCH_TIMEOUT);
- MIProcess pgdb = new MIProcessAdapter(args, launchTimeout, monitor);
-
- if (MIPlugin.getDefault().isDebugging()) {
- StringBuffer sb = new StringBuffer();
- for (int i = 0; i < args.length; ++i) {
- sb.append(args[i]);
- sb.append(' ');
- }
- MIPlugin.getDefault().debugLog(sb.toString());
- }
-
- MISession session;
- try {
- session = createMISession(pgdb, pty, MISession.PROGRAM, miVersion, monitor);
- } catch (MIException e) {
- pgdb.destroy();
- throw e;
- }
- // Try to detect if we have been attach/connected via "target remote localhost:port"
- // or "attach" and set the state to be suspended.
- try {
- CommandFactory factory = session.getCommandFactory();
- MIStackListFrames frames = factory.createMIStackListFrames();
- session.postCommand(frames);
- MIInfo info = frames.getMIInfo();
- if (info == null) {
- pgdb.destroy();
- throw new MIException(getResourceString("src.common.No_answer")); //$NON-NLS-1$
- }
- //@@@ We have to manually set the suspended state since we have some stackframes
- session.getMIInferior().setSuspended();
- session.getMIInferior().update();
- } catch (MIException e) {
- // If an exception is thrown that means ok
- // we did not attach/connect to any target.
- }
- return new Session(session, false);
- }
-
- /**
- * Method createCSession; Post mortem debug with a core file.
- * @param program
- * @param core
- * @return ICDISession
- * @throws IOException
- *
- * @deprecated use <code>createSession</code>
- */
- public Session createCSession(String gdb, String miVersion, File program, File core, File cwd, String gdbinit, IProgressMonitor monitor) throws IOException, MIException {
- if (gdb == null || gdb.length() == 0) {
- gdb = GDB;
- }
-
- String commandFile = (gdbinit != null && gdbinit.length() > 0) ? "--command="+gdbinit : "--nx"; //$NON-NLS-1$ //$NON-NLS-2$
-
- if (monitor == null) {
- monitor = new NullProgressMonitor();
- }
-
- String[] args;
- if (program == null) {
- args = new String[] {gdb, "--cd="+cwd.getAbsolutePath(), commandFile, "--quiet", "-nw", "-i", miVersion, "-c", core.getAbsolutePath()}; //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$ //$NON-NLS-4$ //$NON-NLS-5$
- } else {
- args = new String[] {gdb, "--cd="+cwd.getAbsolutePath(), commandFile, "--quiet", "-nw", "-i", miVersion, "-c", core.getAbsolutePath(), program.getAbsolutePath()}; //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$ //$NON-NLS-4$ //$NON-NLS-5$
- }
-
- int launchTimeout = MIPlugin.getDefault().getPluginPreferences().getInt(IMIConstants.PREF_REQUEST_LAUNCH_TIMEOUT);
- MIProcess pgdb = new MIProcessAdapter(args, launchTimeout, monitor);
-
- if (MIPlugin.getDefault().isDebugging()) {
- StringBuffer sb = new StringBuffer();
- for (int i = 0; i < args.length; ++i) {
- sb.append(args[i]);
- sb.append(' ');
- }
- MIPlugin.getDefault().debugLog(sb.toString());
- }
-
- MISession session;
- try {
- session = createMISession(pgdb, null, MISession.CORE, miVersion, monitor);
- //@@@ We have to manually set the suspended state when doing post-mortem
- session.getMIInferior().setSuspended();
- } catch (MIException e) {
- pgdb.destroy();
- throw e;
- }
- return new Session(session);
- }
-
- /**
- * Method createCSession; remote debuging by selectin a target.
- * @param program
- * @param pid
- * @return ICDISession
- * @throws IOException
- *
- * @deprecated use <code>createSession</code>
- */
- public Session createCSession(String gdb, String miVersion, File program, int pid, String[] targetParams, File cwd, String gdbinit, IProgressMonitor monitor) throws IOException, MIException {
- if (gdb == null || gdb.length() == 0) {
- gdb = GDB;
- }
-
- String commandFile = (gdbinit != null && gdbinit.length() > 0) ? "--command="+gdbinit : "--nx"; //$NON-NLS-1$ //$NON-NLS-2$
-
- if (monitor == null) {
- monitor = new NullProgressMonitor();
- }
-
- String[] args;
- if (program == null) {
- args = new String[] {gdb, "--cd="+cwd.getAbsolutePath(), commandFile, "--quiet", "-nw", "-i", miVersion}; //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$ //$NON-NLS-4$
- } else {
- args = new String[] {gdb, "--cd="+cwd.getAbsolutePath(), commandFile, "--quiet", "-nw", "-i", miVersion, program.getAbsolutePath()}; //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$ //$NON-NLS-4$
- }
-
- int launchTimeout = MIPlugin.getDefault().getPluginPreferences().getInt(IMIConstants.PREF_REQUEST_LAUNCH_TIMEOUT);
- MIProcess pgdb = new MIProcessAdapter(args, launchTimeout, monitor);
-
- if (MIPlugin.getDefault().isDebugging()) {
- StringBuffer sb = new StringBuffer();
- for (int i = 0; i < args.length; ++i) {
- sb.append(args[i]);
- sb.append(' ');
- }
- MIPlugin.getDefault().debugLog(sb.toString());
- }
-
- MISession session;
- try {
- session = createMISession(pgdb, null, MISession.ATTACH, miVersion, monitor);
- } catch (MIException e) {
- pgdb.destroy();
- throw e;
- }
- CommandFactory factory = session.getCommandFactory();
- try {
- if (targetParams != null && targetParams.length > 0) {
- MITargetSelect target = factory.createMITargetSelect(targetParams);
- session.postCommand(target);
- MIInfo info = target.getMIInfo();
- if (info == null) {
- throw new MIException(getResourceString("src.common.No_answer")); //$NON-NLS-1$
- }
- }
- if (pid > 0) {
- CLITargetAttach attach = factory.createCLITargetAttach(pid);
- session.postCommand(attach);
- MIInfo info = attach.getMIInfo();
- if (info == null) {
- throw new MIException(getResourceString("src.common.No_answer")); //$NON-NLS-1$
- }
- session.getMIInferior().setInferiorPID(pid);
- // @@@ for attach we nee to manually set the connected state
- // attach does not send the ^connected ack
- session.getMIInferior().setConnected();
- }
- } catch (MIException e) {
- if(session != null)
- session.terminate();
-
- pgdb.destroy();
- throw e;
- }
- //@@@ We have to manually set the suspended state when we attach
- session.getMIInferior().setSuspended();
- session.getMIInferior().update();
- return new Session(session, true);
- }
-
- /**
- * Starts a process by executing the following command:
- * gdb -q -nw -i <mi_version>(extracted from the command factory)
- * -tty<pty_name> (if <code>usePTY</code> is <code>true</code>)
- * extraArgs program (if <code>program</code> is not <code>null</code>)
- *
- * @param sessionType the type of debugging session:
- * <code>MISession.PROGRAM</code>,
- * <code>MISession.ATTACH</code>
- * or <code>MISession.CORE</code>
- * @param gdb the name of the gdb file
- * @param factory the command set supported by gdb
- * @param program a program to debug or <code>null</code>
- * @param extraArgs arguments to pass to gdb
- * @param usePty whether to use pty or not
- * @param monitor a progress monitor
- * @return an instance of <code>ICDISession</code>
- * @throws IOException
- * @throws MIException
- */
- public Session createSession(int sessionType, String gdb, CommandFactory factory, File program, String[] extraArgs, boolean usePty, IProgressMonitor monitor) throws IOException, MIException {
- if (monitor == null) {
- monitor = new NullProgressMonitor();
- }
-
- if (gdb == null || gdb.length() == 0) {
- gdb = GDB;
- }
-
- IMITTY pty = null;
-
- if (usePty) {
- try {
- PTY pseudo = new PTY();
- pty = new MITTYAdapter(pseudo);
- } catch (IOException e) {
- // Should we not print/log this ?
- }
- }
-
- ArrayList argList = new ArrayList(extraArgs.length + 8);
- argList.add(gdb);
- argList.add("-q"); //$NON-NLS-1$
- argList.add("-nw"); //$NON-NLS-1$
- argList.add("-i"); //$NON-NLS-1$
- argList.add(factory.getMIVersion());
- if (pty != null) {
- argList.add("-tty"); //$NON-NLS-1$
- argList.add(pty.getSlaveName());
- }
- argList.addAll(Arrays.asList(extraArgs));
- if (program != null) {
- argList.add(program.getAbsolutePath());
- }
- String[] args = (String[])argList.toArray(new String[argList.size()]);
- int launchTimeout = MIPlugin.getDefault().getPluginPreferences().getInt(IMIConstants.PREF_REQUEST_LAUNCH_TIMEOUT);
-
- MISession miSession = null;
- MIProcess pgdb = null;
- boolean failed = false;
- try {
- pgdb = new MIProcessAdapter(args, launchTimeout, monitor);
-
- if (MIPlugin.getDefault().isDebugging()) {
- StringBuffer sb = new StringBuffer();
- for (int i = 0; i < args.length; ++i) {
- sb.append(args[i]);
- sb.append(' ');
- }
- MIPlugin.getDefault().debugLog(sb.toString());
- }
-
- miSession = createMISession0(sessionType, pgdb, factory, pty, getCommandTimeout());
- } catch (MIException e) {
- failed = true;
- throw e;
- } catch(IOException e ) {
- failed = true;
- throw e;
- } finally {
- if (failed) {
- // Kill gdb
- if ( pgdb != null )
- pgdb.destroy();
- // Shutdown the pty console.
- if (pty != null) {
- try {
- OutputStream out = pty.getOutputStream();
- if (out != null) {
- out.close();
- }
- InputStream in = pty.getInputStream();
- if (in != null) {
- in.close();
- }
- } catch (IOException e) {
- }
- }
- }
- }
-
- return new Session(miSession);
- }
-
- /**
- * Convenience method which returns the unique identifier of this plugin.
- */
- public static String getUniqueIdentifier() {
- if (getDefault() == null) {
- // If the default instance is not yet initialized,
- // return a static identifier. This identifier must
- // match the plugin id defined in plugin.xml
- return PLUGIN_ID;
- }
- return getDefault().getBundle().getSymbolicName();
- }
-
- public void debugLog(String message) {
- if (getDefault().isDebugging()) {
- // Time stamp
- message = MessageFormat.format( "[{0}] {1}", new Object[] { new Long( System.currentTimeMillis() ), message } ); //$NON-NLS-1$
- // This is to verbose for a log file, better use the console.
- // getDefault().getLog().log(StatusUtil.newStatus(Status.ERROR, message, null));
- // ALERT:FIXME: For example for big buffers say 4k length,
- // the console will simply blows taking down eclipse.
- // This seems only to happen in Eclipse-gtk and Eclipse-motif
- // on GNU/Linux, so we break the lines in smaller chunks.
- while (message.length() > 100) {
- String partial = message.substring(0, 100);
- message = message.substring(100);
- System.out.println(partial + "\\"); //$NON-NLS-1$
- }
- if (message.endsWith("\n")) { //$NON-NLS-1$
- System.out.print(message);
- } else {
- System.out.println(message);
- }
- }
- }
- public static String getResourceString(String key) {
- try {
- return fgResourceBundle.getString(key);
- } catch (MissingResourceException e) {
- return '!' + key + '!';
- } catch (NullPointerException e) {
- return '#' + key + '#';
- }
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.core.runtime.Plugin#startup()
- */
- public void start(BundleContext context) throws Exception {
- super.start(context);
- ICDebugConfiguration dc = CDebugCorePlugin.getDefault().getDefaultDefaultDebugConfiguration();
- if (dc == null) {
- CDebugCorePlugin.getDefault().getPluginPreferences().setDefault(ICDebugConstants.PREF_DEFAULT_DEBUGGER_TYPE, "org.eclipse.cdt.debug.mi.core.CDebuggerNew"); //$NON-NLS-1$
- }
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.core.runtime.Plugin#shutdown()
- */
- public void stop(BundleContext context) throws Exception {
- savePluginPreferences();
- super.stop(context);
- }
-
- public static int getCommandTimeout() {
- Preferences prefs = getDefault().getPluginPreferences();
- return prefs.getInt(IMIConstants.PREF_REQUEST_TIMEOUT);
- }
-
- public static int getLaunchTimeout() {
- Preferences prefs = plugin.getPluginPreferences();
- return prefs.getInt(IMIConstants.PREF_REQUEST_LAUNCH_TIMEOUT);
- }
-
- public static String getMIVersion( ILaunchConfiguration config ) {
- String miVersion = ""; //$NON-NLS-1$
- try {
- miVersion = config.getAttribute( IMILaunchConfigurationConstants.ATTR_DEBUGGER_PROTOCOL, "" ); //$NON-NLS-1$
- }
- catch( CoreException e ) {
- }
- if ( miVersion.length() == 0 ) {
- try {
- miVersion = config.getAttribute( ICDTLaunchConfigurationConstants.ATTR_DEBUGGER_PROTOCOL, "mi" ); //$NON-NLS-1$
- }
- catch( CoreException e ) {
- miVersion = "mi"; //$NON-NLS-1$
- }
- }
- return miVersion;
- }
-
- public static String getCommandFactory( ILaunchConfiguration config ) {
- String commandFactory = ""; //$NON-NLS-1$
- try {
- commandFactory = config.getAttribute( IMILaunchConfigurationConstants.ATTR_DEBUGGER_COMMAND_FACTORY, "" ); //$NON-NLS-1$
- }
- catch( CoreException e ) {
- }
- return commandFactory;
- }
-
- public CommandFactoryManager getCommandFactoryManager() {
- if ( fCommandFactoryManager == null ) {
- fCommandFactoryManager = new CommandFactoryManager();
- }
- return fCommandFactoryManager;
- }
-}
diff --git a/debug/org.eclipse.cdt.debug.mi.core/src/org/eclipse/cdt/debug/mi/core/MIPluginResources.properties b/debug/org.eclipse.cdt.debug.mi.core/src/org/eclipse/cdt/debug/mi/core/MIPluginResources.properties
deleted file mode 100644
index 969a465e6c3..00000000000
--- a/debug/org.eclipse.cdt.debug.mi.core/src/org/eclipse/cdt/debug/mi/core/MIPluginResources.properties
+++ /dev/null
@@ -1,39 +0,0 @@
-###############################################################################
-# Copyright (c) 2003, 2006 QNX Software Systems and others.
-# All rights reserved. This program and the accompanying materials
-# are made available under the terms of the Eclipse Public License v1.0
-# which accompanies this distribution, and is available at
-# http://www.eclipse.org/legal/epl-v10.html
-#
-# Contributors:
-# QNX Software Systems - initial API and implementation
-###############################################################################
-
-src.common.No_answer=No answer
-src.GDBCDIDebugger2.0=Unable to get pid.
-src.GDBCDIDebugger2.1=Invalid pid.
-src.GDBCDIDebugger2.2=Attach to process {0} failed.
-src.GDBServerDebugger.Error_initializing=Error initializing:
-src.GDBServerDebugger.Can_not_set_Baud=Can not set Baud
-src.GDBServerDebugger.GDBServer_attaching_unsupported=GDBServer does not support attaching
-src.GDBServerDebugger.GDBServer_corefiles_unsupported=GDBServer does not support core files
-src.GDBServerCDIDebugger.target_selection_failed=Target selection failed.
-src.GDBDebugger.Error_initializing_shared_lib_options=Error initializing shared library options:
-src.GDBDebugger.Error_creating_session=Error creating session:
-src.GDBDebugger.Error_launch_timeout=Launch timeout
-src.GDBDebugger.Error_launch_cancel=Launch cancel
-src.GDBDebugger.Debugger_process=Debugger Process
-src.MISession.Process_Terminated=Process Terminated
-src.MISession.Thread_Terminated={R,T}xThread terminated
-src.MISession.Target_not_suspended=Target is not suspended
-src.MISession.Session_terminated=Session terminated
-src.MISession.Inferior_Terminated=Inferior terminated
-src.MISession.Target_not_responding=Target is not responding (timed out)
-src.CygwinGDBDebugger.Error_init_shared_lib_options=Error initializing shared library options:
-src.MIInferior.target_is_suspended=target is suspended
-src.MIInferior.No_session=No MI Session
-src.MIInferior.Failed_to_interrupt=Failed to interrupt
-
-src.AbstractGDBCDIDebugger.0=Invalid session type:
-src.AbstractGDBCDIDebugger.1=Error creating session
-src.AbstractGDBCDIDebugger.2=Debugger Process
diff --git a/debug/org.eclipse.cdt.debug.mi.core/src/org/eclipse/cdt/debug/mi/core/MIPreferenceInitializer.java b/debug/org.eclipse.cdt.debug.mi.core/src/org/eclipse/cdt/debug/mi/core/MIPreferenceInitializer.java
deleted file mode 100644
index 9ac45d2d385..00000000000
--- a/debug/org.eclipse.cdt.debug.mi.core/src/org/eclipse/cdt/debug/mi/core/MIPreferenceInitializer.java
+++ /dev/null
@@ -1,32 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004, 2005 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.mi.core;
-
-import org.eclipse.core.runtime.preferences.AbstractPreferenceInitializer;
-
-public class MIPreferenceInitializer extends AbstractPreferenceInitializer {
-
- /**
- * Constructor for MIPreferenceInitializer.
- */
- public MIPreferenceInitializer() {
- super();
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.core.runtime.preferences.AbstractPreferenceInitializer#initializeDefaultPreferences()
- */
- public void initializeDefaultPreferences() {
- MIPlugin.getDefault().getPluginPreferences().setDefault(IMIConstants.PREF_REQUEST_TIMEOUT, IMIConstants.DEF_REQUEST_TIMEOUT);
- MIPlugin.getDefault().getPluginPreferences().setDefault(IMIConstants.PREF_REQUEST_LAUNCH_TIMEOUT, IMIConstants.DEF_REQUEST_LAUNCH_TIMEOUT);
- MIPlugin.getDefault().getPluginPreferences().setDefault(IMIConstants.PREF_SHARED_LIBRARIES_AUTO_REFRESH, IMIConstants.DEF_PREF_SHARED_LIBRARIES_AUTO_REFRESH);
- }
-}
diff --git a/debug/org.eclipse.cdt.debug.mi.core/src/org/eclipse/cdt/debug/mi/core/MIProcessAdapter.java b/debug/org.eclipse.cdt.debug.mi.core/src/org/eclipse/cdt/debug/mi/core/MIProcessAdapter.java
deleted file mode 100644
index c6afb261245..00000000000
--- a/debug/org.eclipse.cdt.debug.mi.core/src/org/eclipse/cdt/debug/mi/core/MIProcessAdapter.java
+++ /dev/null
@@ -1,207 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.cdt.debug.mi.core;
-
-import java.io.BufferedReader;
-import java.io.IOException;
-import java.io.InputStream;
-import java.io.InputStreamReader;
-import java.io.OutputStream;
-import java.io.Reader;
-
-import org.eclipse.cdt.utils.spawner.ProcessFactory;
-import org.eclipse.cdt.utils.spawner.Spawner;
-import org.eclipse.core.runtime.IProgressMonitor;
-import org.eclipse.core.runtime.OperationCanceledException;
-
-/**
- */
-public class MIProcessAdapter implements MIProcess {
-
- Process fGDBProcess;
- private static final int ONE_SECOND = 1000;
-
- public MIProcessAdapter(String[] args, IProgressMonitor monitor) throws IOException {
- this(args, 0, monitor);
- }
-
- public MIProcessAdapter(String[] args, int launchTimeout, IProgressMonitor monitor) throws IOException {
- fGDBProcess = getGDBProcess(args, launchTimeout, monitor);
- }
-
- /**
- * Do some basic synchronisation, gdb may take some time to load for
- * whatever reasons and we need to be able to let the user bailout.
- *
- * @param args
- * @return Process
- * @throws IOException
- */
- protected Process getGDBProcess(String[] args, int launchTimeout, IProgressMonitor monitor) throws IOException {
- final Process pgdb = ProcessFactory.getFactory().exec(args);
- Thread syncStartup = new Thread("GDB Start") { //$NON-NLS-1$
- public void run() {
- try {
- String line;
- InputStream stream = pgdb.getInputStream();
- Reader r = new InputStreamReader(stream);
- BufferedReader reader = new BufferedReader(r);
- while ((line = reader.readLine()) != null) {
- line = line.trim();
- //System.out.println("GDB " + line);
- if (line.endsWith("(gdb)")) { //$NON-NLS-1$
- break;
- }
- }
- } catch (Exception e) {
- // Do nothing, ignore the errors
- }
- }
- };
- syncStartup.start();
-
- int timepass = 0;
- if (launchTimeout <= 0) {
- // Simulate we are waiting forever.
- launchTimeout = Integer.MAX_VALUE;
- }
-
- // To respect the IProgressMonitor we can not use wait/notify
- // instead we have to loop and check for the monitor to allow to cancel the thread.
- // The monitor is check every 1 second delay;
- for (timepass = 0; timepass < launchTimeout; timepass += ONE_SECOND) {
- if (syncStartup.isAlive() && !monitor.isCanceled()) {
- try {
- Thread.sleep(ONE_SECOND);
- } catch (InterruptedException e) {
- // ignore
- }
- } else {
- break;
- }
- }
- try {
- syncStartup.interrupt();
- syncStartup.join(ONE_SECOND);
- } catch (InterruptedException e) {
- // ignore
- }
- if (monitor.isCanceled()) {
- pgdb.destroy();
- throw new OperationCanceledException();
- } else if (timepass > launchTimeout) {
- pgdb.destroy();
- String message = MIPlugin.getResourceString("src.GDBDebugger.Error_launch_timeout"); //$NON-NLS-1$
- throw new IOException(message);
- }
- return pgdb;
- }
-
- /*
- * (non-Javadoc)
- *
- * @see org.eclipse.cdt.debug.mi.core.MIProcess#canInterrupt()
- */
- public boolean canInterrupt(MIInferior inferior) {
- return fGDBProcess instanceof Spawner;
- }
-
- /*
- * (non-Javadoc)
- *
- * @see org.eclipse.cdt.debug.mi.core.MIProcess#interrupt()
- */
- public void interrupt(MIInferior inferior) {
- if (fGDBProcess instanceof Spawner) {
- Spawner gdbSpawner = (Spawner) fGDBProcess;
- gdbSpawner.interrupt();
- synchronized (inferior) {
- // Allow (5 secs) for the interrupt to propagate.
- for (int i = 0; inferior.isRunning() && i < 5; i++) {
- try {
- inferior.wait(1000);
- } catch (InterruptedException e) {
- }
- }
- }
- // If we are still running try to drop the sig to the PID
- if (inferior.isRunning() && inferior.getInferiorPID() > 0) {
- // lets try something else.
- gdbSpawner.raise(inferior.getInferiorPID(), gdbSpawner.INT);
- synchronized (inferior) {
- for (int i = 0; inferior.isRunning() && i < 5; i++) {
- try {
- inferior.wait(1000);
- } catch (InterruptedException e) {
- }
- }
- }
- }
- }
-
- }
-
- /*
- * (non-Javadoc)
- *
- * @see java.lang.Process#exitValue()
- */
- public int exitValue() {
- return fGDBProcess.exitValue();
- }
-
- /*
- * (non-Javadoc)
- *
- * @see java.lang.Process#waitFor()
- */
- public int waitFor() throws InterruptedException {
- return fGDBProcess.waitFor();
- }
-
- /*
- * (non-Javadoc)
- *
- * @see java.lang.Process#destroy()
- */
- public void destroy() {
- fGDBProcess.destroy();
- }
-
- /*
- * (non-Javadoc)
- *
- * @see java.lang.Process#getErrorStream()
- */
- public InputStream getErrorStream() {
- return fGDBProcess.getErrorStream();
- }
-
- /*
- * (non-Javadoc)
- *
- * @see java.lang.Process#getInputStream()
- */
- public InputStream getInputStream() {
- return fGDBProcess.getInputStream();
- }
-
- /*
- * (non-Javadoc)
- *
- * @see java.lang.Process#getOutputStream()
- */
- public OutputStream getOutputStream() {
- return fGDBProcess.getOutputStream();
- }
-
-}
diff --git a/debug/org.eclipse.cdt.debug.mi.core/src/org/eclipse/cdt/debug/mi/core/MITTYAdapter.java b/debug/org.eclipse.cdt.debug.mi.core/src/org/eclipse/cdt/debug/mi/core/MITTYAdapter.java
deleted file mode 100644
index e632e659c32..00000000000
--- a/debug/org.eclipse.cdt.debug.mi.core/src/org/eclipse/cdt/debug/mi/core/MITTYAdapter.java
+++ /dev/null
@@ -1,52 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.cdt.debug.mi.core;
-
-import java.io.InputStream;
-import java.io.OutputStream;
-
-import org.eclipse.cdt.utils.pty.PTY;
-
-/**
- * Adapt the PTY code to IMITTY
- *
- */
-public class MITTYAdapter implements IMITTY {
-
- PTY fPty;
-
- public MITTYAdapter(PTY pty) {
- fPty = pty;
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.cdt.debug.mi.core.IMITTY#getSlaveName()
- */
- public String getSlaveName() {
- return fPty.getSlaveName();
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.cdt.debug.mi.core.IMITTY#getOutputStream()
- */
- public OutputStream getOutputStream() {
- return fPty.getOutputStream();
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.cdt.debug.mi.core.IMITTY#getInputStream()
- */
- public InputStream getInputStream() {
- return fPty.getInputStream();
- }
-
-}
diff --git a/debug/org.eclipse.cdt.debug.mi.ui/.classpath b/debug/org.eclipse.cdt.debug.mi.ui/.classpath
deleted file mode 100644
index 065ac06e197..00000000000
--- a/debug/org.eclipse.cdt.debug.mi.ui/.classpath
+++ /dev/null
@@ -1,7 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<classpath>
- <classpathentry kind="src" path="src"/>
- <classpathentry kind="con" path="org.eclipse.pde.core.requiredPlugins"/>
- <classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER"/>
- <classpathentry kind="output" path="bin"/>
-</classpath>
diff --git a/debug/org.eclipse.cdt.debug.mi.ui/.cvsignore b/debug/org.eclipse.cdt.debug.mi.ui/.cvsignore
deleted file mode 100644
index ba077a4031a..00000000000
--- a/debug/org.eclipse.cdt.debug.mi.ui/.cvsignore
+++ /dev/null
@@ -1 +0,0 @@
-bin
diff --git a/debug/org.eclipse.cdt.debug.mi.ui/.project b/debug/org.eclipse.cdt.debug.mi.ui/.project
deleted file mode 100644
index d50943d5462..00000000000
--- a/debug/org.eclipse.cdt.debug.mi.ui/.project
+++ /dev/null
@@ -1,28 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<projectDescription>
- <name>org.eclipse.cdt.debug.mi.ui</name>
- <comment></comment>
- <projects>
- </projects>
- <buildSpec>
- <buildCommand>
- <name>org.eclipse.jdt.core.javabuilder</name>
- <arguments>
- </arguments>
- </buildCommand>
- <buildCommand>
- <name>org.eclipse.pde.ManifestBuilder</name>
- <arguments>
- </arguments>
- </buildCommand>
- <buildCommand>
- <name>org.eclipse.pde.SchemaBuilder</name>
- <arguments>
- </arguments>
- </buildCommand>
- </buildSpec>
- <natures>
- <nature>org.eclipse.jdt.core.javanature</nature>
- <nature>org.eclipse.pde.PluginNature</nature>
- </natures>
-</projectDescription>
diff --git a/debug/org.eclipse.cdt.debug.mi.ui/.settings/org.eclipse.core.resources.prefs b/debug/org.eclipse.cdt.debug.mi.ui/.settings/org.eclipse.core.resources.prefs
deleted file mode 100644
index bc6813d787d..00000000000
--- a/debug/org.eclipse.cdt.debug.mi.ui/.settings/org.eclipse.core.resources.prefs
+++ /dev/null
@@ -1,3 +0,0 @@
-#Mon Nov 08 18:15:08 EST 2004
-eclipse.preferences.version=1
-encoding//src/org/eclipse/cdt/debug/mi/internal/ui/propertypages/PropertyMessages.properties=8859_1
diff --git a/debug/org.eclipse.cdt.debug.mi.ui/ChangeLog b/debug/org.eclipse.cdt.debug.mi.ui/ChangeLog
deleted file mode 100644
index bded9c2603d..00000000000
--- a/debug/org.eclipse.cdt.debug.mi.ui/ChangeLog
+++ /dev/null
@@ -1,370 +0,0 @@
-2006-09-11 Mikhail Khodjaiants
- Bug 156114: GDB options layout problem.
- Applied patch from Vladimir Prus (vladimir@codesourcery.com).
- * StandardGDBDebuggerPage.java
-
-2006-04-16 Mikhail Khodjaiants
- Bug 113107: Make trace logs more readily available.
- * MIUIMessages.properties
- * StandardGDBDebuggerPage.java
-
-2006-04-13 Mikhail Khodjaiants
- Bug 113107: Make trace logs more readily available.
- Implementation of the "Verbose Mode" action.
- * MANIFEST.MF
- * plugin.properties
- * plugin.xml
- + VerboseModeActionDelegate.java
- + icons/obj16/verbose_mode_co.gif
-
-2006-04-11 Mikhail Khodjaiants
- Bug 119740: allow to specify only a subset of shared objects that we want symbols to be loaded for.
- Sort the shared library list.
- * SolibSearchPathBlock.java
-
-2006-04-11 Mikhail Khodjaiants
- Bug 119740: allow to specify only a subset of shared objects that we want symbols to be loaded for.
- Use set instead of list when collecting the shared library names: different libraries can have same soname.
- * SolibSearchPathBlock.java
-
-2006-04-11 Mikhail Khodjaiants
- Bug 119740: allow to specify only a subset of shared objects that we want symbols to be loaded for.
- Use soname instead of shared library name.
- * SolibSearchPathBlock.java
-
-2006-04-10 Mikhail Khodjaiants
- Bug 119740: allow to specify only a subset of shared objects that we want symbols to be loaded for.
- * MANIFEST.MF
- * GDBDebuggerPage.java
- * MIUIMessages.properties
- * SolibSearchPathBlock.java
- * StandardGDBDebuggerPage.java
- - IPathProvider.java
- * MIUIUtils.java
-
-2006-03-31 Mikhail Khodjaiants
- Replaced internal org.eclipse.cdt.debug.internal.ui.SWTUtil class.
- + SWTUtil.java
- * ListDialogField.java
- * SelectionButtonDialogField.java
- * StringButtonDialogField.java
-
-2006-03-01 Mikhail Khodjaiants
- Select the first available command factory when a new launch configuration is created.
- * StandardGDBDebuggerPage.java
-
-2006-02-08 Mikhail Khodjaiants
- Bug 114793: Add an extension point to contribute command factories.
- GDBServerDebuggerPage should extend StandardGDBDebuggerPage.
- * GDBServerDebuggerPage.java
-
-2006-02-06 Mikhail Khodjaiants
- Bug 114793: Add an extension point to contribute command factories.
- * MIUIMessages.properties
- + StandardGDBDebuggerPage.java
- * plugin.xml
-
-2006-02-03 Mikhail Khodjaiants
- The "ICDebuggerPage" interface and "AbstractCDebuggerPage" class are added.
- All extensions of the "CDebuggerPage" extension point must implement "ICDebuggerPage".
- * GDBDebuggerPage.java
-
-2005-12-27 Mikhail Khodjaiants
- Cleanup.
- * MIUIPlugin.java
-
-2005-12-27 Mikhail Khodjaiants
- Bug 109526: Support Eclipse-LazyStart and deprecate Eclipse-AutoStart.
- * MANIFEST.MF
-
-2005-12-20 Mikhail Khodjaiants
- Bug 120390: Avoiding .gdbinit
- * GDBDebuggerPage.java
-
-2005-09-06 Mikhail Khodjaiants
- Cleanup: replaced "new Boolean" by the static Boolean objects (Java 1.4).
- * GDBSolibBlock.java
-
-2005-09-06 Mikhail Khodjaiants
- Bug 108636: mi level selection option should be moved to the gdb page.
- * MIUIMessages.properties
- * GDBDebuggerPage.java
-
-2005-09-02 Mikhail Khodjaiants
- Bug 108723: Create a separate tab for gdb server's conection options.
- * GDBDebuggerPage.java
- * GDBServerDebuggerPage.java
- * MIUIMessages.properties
- * SerialPortSettingsBlock.java
- * TCPSettingsBlock.java
- * SolibSearchPathBlock.java
-
-2005-07-22 Alain Magloire
- Fix the copyright.
-
-2005-04-13 Alain Magloire
- Fix PR 91002
- * src/org/eclipse/cdt/debug/mi/internal/preferences/MIPreferencePage.java
-
-2005-04-07 Mikhail Khodjaiants
- Removed unused icons.
- - icons/full/clcl16/auto_solib_co.gif
- - icons/full/dlcl16/auto_solib_co.gif
- - icons/full/elcl16/auto_solib_co.gif
-
-2005-03-09 Mikhail Khodjaiants
- Fix for bug 87546: Obsolete debug MI settings in Preference need to be removed.
- * MIPreferencePage.java
- * PreferenceMessages.properties
- * OptionsPropertyPage.java
- * PropertyMessages.properties
-
-2005-03-03 Mikhail Khodjaiants
- Conflicting methods.
- * SolibSearchPathBlock.java
-
-2005-01-11 Mikhail Khodjaiants
- Replaced deprecated methods and constants.
- * MIPreferencePage.java
-
-2005-01-11 Mikhail Khodjaiants
- Replaced deprecated methods and constants.
- * ListDialogField.java
- * SelectionButtonDialogField.java
- * StringButtonDialogField.java
-
-2004-11-11 Mikhail Khodjaiants
- Fix for bug 75627: Incorrect limit to port numbers.
- * TCPSettingsBlock.java
-
-2004-11-08 Mikhail Khodjaiants
- Added the "Automatically refresh registers" and "Automatically refresh shared libraries"
- preferences and properties.
- * ActionFilterAdapterFactory.java: new
- * GDBTargetActionFilter.java: new
- * PreferenceMessages.properties
- * MIPreferencePage.java
- * org.eclipse.cdt.debug.mi.internal.ui.propertypages: new package
- * PropertyMessages.properties
- * OptionsPropertyPage.java
- * PropertyMessages.java
- * plugin.properties
- * plugin.xml
-
-2004-10-29 Alain Magloire
- Changes to the CDI interface
- * SeAutoSolibActionDelegate.java
-
-2004-08-23 Mikhail Khodjaiants
- Added API to allow the access to the internal MI UI components by client plugins.
- Changed the "Solib search path" component.
- Reformatting and cleanup.
- * MIUIMessages.properties
- * CygwinDebuggerPage.java
- * GDBDebuggerPage.java
- * GDBServerDebuggerPage.java
- * GDBSolibBlock.java
- * IMIHelpContextIds.java
- * IMILaunchConfigurationComponent.java: new
- * IMIUIConstants.java
- * IPathProvider.java: new
- * MIUIUtils.java: new
- * PixelConverter.java
- * SerialPortSettingsBlock.java
- * SolibSearchPathBlock.java
- * TCPSettingsBlock.java
- * SetAutoSolibActionDelegate.java
- * MIPreferencePage.java
-
-2004-07-14 Mikhail Khodjaiants
- Wrong fix. Falling back.
- * GDBSolibBlock.java
-
-2004-07-14 Alain Magloire
-
- Wrong call the to the Button widget it should have been
- setSelection() not setEnabled()
-
- * src/org/eclipse/cdt/debug/mi/internal/ui/GDBSolibBlock.java
-
-2004-07-02 Mikhail Khodjaiants
- Fix for bug 68934: Debug into dll doesn't work.
- The "solib-search-path" and "stop-on-solib-events" options are not supported by gdb on CygWin.
- Removed the "Shared Libraries" tab from the "Debugger" page of the laaunch configuration dialog
- for the "CygWin Debugger" type.
- * CygwinDebuggerPage.java
-
-2004-06-22 Mikhail Khodjaiants
- Replaced global resource bundles by messages.
-
-2004-06-21 Mikhail Khodjaiants
- Fix for bug 60872. Accessibility: Run/Debug configuration dialog has duplicate mnemonics.
- * MIUIMessages.properties
- * MIUIPluginResources.properties
-
-2004-05-21 Mikhail Khodjaiants
- Removed dependencies on the compatibility plugin and replaced deprecated classes and methods.
- Warning cleanup.
- * GDBServerDebuggerPage.java
- * IMIUIConstants.java
- * MIUIPlugin.java
- * SerialPortSettingsBlock.java
- * TCPSettingsBlock.java
- * SelectionButtonDialogFieldGroup.java
- * plugin.xml
-
-2004-04-29 Mikhail Khodjaiants
- Fix for bug 59083: Two short cut keys in one sentence.
- * MIUIPluginResources.properties
-
-2004-03-11 Tanya Wolff
- Externalized strings and marked non translatable as such.
- * CygwinDebuggerPage.java
- * GDBDebuggerPage.java
- * GDBServerDebuggerPage.java
- * GDBSolibBlock.java
- * MIUIPlugin.java
- * SolibSearchPathBlock.java
- * TCPSettingsBlock.java
- * MIUIPluginResources.properties
- * SetAutoSolibActionDelegate.java
- * MIPreferencePage.java
-
-2003-12-17 Mikhail Khodjaiants
- Fix for bug 49061: Different values are used as default for the "Load shared library symbols automatically" option.
- * GDBSolibBlock.java
-
-2003-12-01 Mikhail Khodjaiants
- Fix for PR 47230: Need a shared library search path editing capability for GDBServerDebugger.
- Implemented 'GDBServerDebuggerPage' as an extension of 'GDBDebuggerPage'.
- Added two new control blocks - "TCP Connection" and "Serial Connection".
- * src/org/eclipse/cdt/debug/mi/internal/ui/GDBDebuggerPage.java
- * src/org/eclipse/cdt/debug/mi/internal/ui/GDBServerDebuggerPage.java
- * src/org/eclipse/cdt/debug/mi/internal/ui/SerialPortSettingsBlock.java: new
- * src/org/eclipse/cdt/debug/mi/internal/ui/TCPSettingsBlock.java: new
-
-2003-11-26 Mikhail Khodjaiants
- Cleanup.
- * GDBServerDebuggerPage.java
- * ComboDialogField.java
-
-2003-11-20 Mikhail Khodjaiants
- Removed dependencies on internal packages from other cdt plugins.
- * src/org/eclipse/cdt/debug/mi/internal/ui/PixelConverter.java: added
- * src/org/eclipse/cdt/debug/mi/internal/ui/SolibSearchPathBlock.java
-
-2003-11-19 Mikhail Khodjaiants
-
- Fix for PR 45533: MIException while creating MISession can leave an orphan gdb process.
- * src/org/eclipse/cdt/debug/mi/internal/ui/preferences/MIPreferencePage.java:
- added a text field for the launch timeout.
-
-2003-11-06 Alain Magloire
-
- Patch from Ashish Karkare(TimeSys)
- *src/org/eclipse/cdt/debug/mi/internal/ui/GDBServerDebuggerPage.java
- Add a new Combo that helps select a reasonable line speed, and storing
- the selected value as a configuration attribute.
-
-2003-09-29 Mikhail Khodjaiants
- Improved the layout of the 'Shared Libraries' component.
- * SolibSearchPathBlock.java
-
-2003-09-11 Mikhail Khodjaiants
- Moving the shared library search paths block to mi UI.
- * SolibSearchPathBlock.java: new
- * GDBSolibBlock.java
-
-2003-09-11 Mikhail Khodjaiants
- Added the 'org.eclipse.cdt.debug.mi.internal.ui.dialogfields' package.
- * CheckedListDialogField.java: new
- * ComboDialogField.java: new
- * DialogField.java: new
- * IDialogFieldListener.java: new
- * IListAdapter.java: new
- * IStringButtonAdapter.java: new
- * LayoutUtil.java: new
- * ListDialogField.java: new
- * SelectionButtonDialogField.java: new
- * SelectionButtonDialogFieldGroup.java: new
- * Separator.java: new
- * StringButtonDialogField.java: new
- * StringButtonStatusDialogField.java: new
- * StringDialogField.java: new
-
-2003-09-09 Mikhail Khodjaiants
- New UI for the 'Debugger' page of launch configuration.
- * CygwinDebuggerPage.java
- * GDBDebuggerPage.java
- * GDBSolibBlock.java
-
-2003-04-07 Mikhail Khodjaiants
- Replaced 'toString()' by 'getMessage()' for CDI exceptions.
- * SetAutoSolibActionDelegate.java
-
-2004-04-04 Alain Magloire
-
- Code from Monta Vista to do a GDBServer launch.
- The GDBServer launch page.
-
- * src/org/eclipse/cdt/debug/mi/internal/ui/GDBServerDebuggerPager.java:
- * plugin.xml
-
-2003-03-26 Mikhail Khodjaiants
- Cosmetic changes in the 'MIPreferencePage' class.
- * MIPreferencePage.java
-
-2003-02-12 Mikhail Khodjaiants
- Changes in the 'Automatically Load Symbols' action because of the removal of the
- 'setAutoSolib' method from ICDISharedLibraryManager.
- * SetAutoSolibActionDelegate.java
- * plugin.xml
-
-2003-02-11 Mikhail Khodjaiants
- The 'Automatically Load Symbols' action is added to the 'Shared Libraries' view.
- * SetAutoSolibActionDelegate.java: new
- * plugin.properties
- * plugin.xml
- * icons/full/clcl16/auto_solib_co.gif: new
- * icons/full/dlcl16/auto_solib_co.gif: new
- * icons/full/elcl16/auto_solib_co.gif: new
-
-2003-02-11 Mikhail Khodjaiants
- New package 'org.eclipse.cdt.debug.mi.internal.ui.actions' is added.
-
-2003-02-06 Alain Magloire
-
- * src/.../internal/ui/CygwinDebuggerPage.java (updateLaunchConfigurationDialog):
- New method to increase visibility for inner classes.
- (getShell): New method to increase visibility for inner classes.
- (fGDBCommandText): Change scope to protected.
- (fGDBInitText) Change scope to protected.
- * src/.../internal/ui/GDBDebuggerPage.java: Ditto.
-
-2003-01-24 David Inglis
-
- * src/.../internal/ui/CDebuggerPage.java (removed)
- * src/.../internal/ui/GDBDebuggerPage.java (added)
- rename class plus small layout fix.
-
- * plugin.xml
- * src/.../internal/ui/CygwinDebuggerPage.java (added)
- make Cywin use its own debug page and remove the auto load solib option.
-
-2003-01-17 David Inglis
- * src/.../internal/ui/CDebuggerPage.java
- Added some browse buttons and new text field for gdbinit file.
-
-2003-01-03 Alain Magloire
-
- * build.properties: Patch from Judy Green.
-
-2003-01-03 Alain Magloire
-
- * src/org/eclipse./cdt/debug/mi/internal/ui/CDebuggerPage.java (setDefaults):
- Set autosolib to true by default.
-
-2002-11-26 Doug Schaefer
-
- * plugin.xml:
- Added new debugPage for Cygwin GDB.
diff --git a/debug/org.eclipse.cdt.debug.mi.ui/META-INF/MANIFEST.MF b/debug/org.eclipse.cdt.debug.mi.ui/META-INF/MANIFEST.MF
deleted file mode 100644
index 3884b6f42e8..00000000000
--- a/debug/org.eclipse.cdt.debug.mi.ui/META-INF/MANIFEST.MF
+++ /dev/null
@@ -1,27 +0,0 @@
-Manifest-Version: 1.0
-Bundle-ManifestVersion: 2
-Bundle-Name: %pluginName
-Bundle-SymbolicName: org.eclipse.cdt.debug.mi.ui; singleton:=true
-Bundle-Version: 4.0.0.qualifier
-Bundle-Activator: org.eclipse.cdt.debug.mi.internal.ui.MIUIPlugin
-Bundle-Vendor: %providerName
-Bundle-Localization: plugin
-Export-Package: org.eclipse.cdt.debug.mi.internal.ui,
- org.eclipse.cdt.debug.mi.internal.ui.actions,
- org.eclipse.cdt.debug.mi.internal.ui.dialogfields,
- org.eclipse.cdt.debug.mi.internal.ui.preferences,
- org.eclipse.cdt.debug.mi.internal.ui.propertypages,
- org.eclipse.cdt.debug.mi.ui
-Require-Bundle: org.eclipse.core.resources;bundle-version="[3.2.0,4.0.0)",
- org.eclipse.ui;bundle-version="[3.2.0,4.0.0)",
- org.eclipse.cdt.debug.mi.core;bundle-version="[4.0.0,5.0.0)",
- org.eclipse.cdt.debug.ui;bundle-version="[4.0.0,5.0.0)",
- org.eclipse.cdt.debug.core;bundle-version="[4.0.0,5.0.0)",
- org.eclipse.cdt.core;bundle-version="[4.0.0,5.0.0)",
- org.eclipse.cdt.ui;bundle-version="[4.0.0,5.0.0)",
- org.eclipse.debug.core;bundle-version="[3.2.0,4.0.0)",
- org.eclipse.debug.ui;bundle-version="[3.2.0,4.0.0)",
- org.eclipse.core.runtime;bundle-version="[3.2.0,4.0.0)",
- org.eclipse.ui.console;bundle-version="[3.1.100,4.0.0)",
- org.eclipse.jface.text;bundle-version="[3.2.0,4.0.0)"
-Eclipse-LazyStart: true
diff --git a/debug/org.eclipse.cdt.debug.mi.ui/about.html b/debug/org.eclipse.cdt.debug.mi.ui/about.html
deleted file mode 100644
index 9c7ba0a57bc..00000000000
--- a/debug/org.eclipse.cdt.debug.mi.ui/about.html
+++ /dev/null
@@ -1,24 +0,0 @@
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml"><head>
-<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"><title>About</title></head>
-
-<body lang="EN-US">
-<h2>About This Content</h2>
-
-<p>May 2, 2006</p>
-<h3>License</h3>
-
-<p>The Eclipse Foundation makes available all content in this plug-in ("Content"). Unless otherwise
-indicated below, the Content is provided to you under the terms and conditions of the
-Eclipse Public License Version 1.0 ("EPL"). A copy of the EPL is available
-at <a href="http://www.eclipse.org/legal/epl-v10.html">http://www.eclipse.org/legal/epl-v10.html</a>.
-For purposes of the EPL, "Program" will mean the Content.</p>
-
-<p>If you did not receive this Content directly from the Eclipse Foundation, the Content is
-being redistributed by another party ("Redistributor") and different terms and conditions may
-apply to your use of any object code in the Content. Check the Redistributor's license that was
-provided with the Content. If no such license exists, contact the Redistributor. Unless otherwise
-indicated below, the terms and conditions of the EPL still apply to any source code in the Content
-and such source code may be obtained at <a href="http://www.eclipse.org/">http://www.eclipse.org</a>.</p>
-
-</body></html> \ No newline at end of file
diff --git a/debug/org.eclipse.cdt.debug.mi.ui/build.properties b/debug/org.eclipse.cdt.debug.mi.ui/build.properties
deleted file mode 100644
index 80485f9499b..00000000000
--- a/debug/org.eclipse.cdt.debug.mi.ui/build.properties
+++ /dev/null
@@ -1,18 +0,0 @@
-###############################################################################
-# Copyright (c) 2003, 2006 QNX Software Systems and others.
-# All rights reserved. This program and the accompanying materials
-# are made available under the terms of the Eclipse Public License v1.0
-# which accompanies this distribution, and is available at
-# http://www.eclipse.org/legal/epl-v10.html
-#
-# Contributors:
-# QNX Software Systems - initial API and implementation
-###############################################################################
-
-bin.includes = plugin.xml,\
- plugin.properties,\
- about.html,\
- icons/,\
- .,\
- META-INF/
-source.. = src/
diff --git a/debug/org.eclipse.cdt.debug.mi.ui/icons/obj16/save_console.gif b/debug/org.eclipse.cdt.debug.mi.ui/icons/obj16/save_console.gif
deleted file mode 100644
index 03c57ef6f7c..00000000000
--- a/debug/org.eclipse.cdt.debug.mi.ui/icons/obj16/save_console.gif
+++ /dev/null
Binary files differ
diff --git a/debug/org.eclipse.cdt.debug.mi.ui/icons/obj16/verbose_mode_co.gif b/debug/org.eclipse.cdt.debug.mi.ui/icons/obj16/verbose_mode_co.gif
deleted file mode 100644
index ea13622821c..00000000000
--- a/debug/org.eclipse.cdt.debug.mi.ui/icons/obj16/verbose_mode_co.gif
+++ /dev/null
Binary files differ
diff --git a/debug/org.eclipse.cdt.debug.mi.ui/plugin.properties b/debug/org.eclipse.cdt.debug.mi.ui/plugin.properties
deleted file mode 100644
index a499633036d..00000000000
--- a/debug/org.eclipse.cdt.debug.mi.ui/plugin.properties
+++ /dev/null
@@ -1,22 +0,0 @@
-###############################################################################
-# Copyright (c) 2000, 2006 QNX Software Systems and others.
-# All rights reserved. This program and the accompanying materials
-# are made available under the terms of the Eclipse Public License v1.0
-# which accompanies this distribution, and is available at
-# http://www.eclipse.org/legal/epl-v10.html
-#
-# Contributors:
-# QNX Software Systems - Initial API and implementation
-###############################################################################
-pluginName=C/C++ Development Tools GDB/MI CDI Debugger UI
-providerName=Eclipse.org
-
-MIPreferencePage.name=GDB MI
-
-SetAutoSolibAction.label=Automatically Load Shared Libraries
-SetAutoSolibAction.tooltip=Automatically Load Shared Libraries On/Off
-
-TargetOptionsPage.label=GDB/MI Options
-
-VerboseMode.label=Verbose Mode
-VerboseMode.tooltip=Verbose Mode For gdb Console
diff --git a/debug/org.eclipse.cdt.debug.mi.ui/plugin.xml b/debug/org.eclipse.cdt.debug.mi.ui/plugin.xml
deleted file mode 100644
index f8c8305f36c..00000000000
--- a/debug/org.eclipse.cdt.debug.mi.ui/plugin.xml
+++ /dev/null
@@ -1,86 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<?eclipse version="3.0"?>
-<plugin>
-
- <extension
- point="org.eclipse.cdt.debug.ui.CDebuggerPage">
- <debuggerPage
- class="org.eclipse.cdt.debug.mi.internal.ui.GDBDebuggerPage"
- debuggerID="org.eclipse.cdt.debug.mi.core.CDebugger"
- id="org.eclipse.cdt.debug.mi.GDBDebuggerPage">
- </debuggerPage>
- <debuggerPage
- class="org.eclipse.cdt.debug.mi.internal.ui.CygwinDebuggerPage"
- debuggerID="org.eclipse.cdt.debug.mi.core.CygwinCDebugger"
- id="org.eclipse.cdt.debug.mi.CygwinDebuggerPage">
- </debuggerPage>
- <debuggerPage
- class="org.eclipse.cdt.debug.mi.internal.ui.GDBServerDebuggerPage"
- debuggerID="org.eclipse.cdt.debug.mi.core.GDBServerCDebugger"
- id="org.eclipse.cdt.debug.mi.GDBServerDebuggerPage">
- </debuggerPage>
- <debuggerPage
- class="org.eclipse.cdt.debug.mi.internal.ui.StandardGDBDebuggerPage"
- debuggerID="org.eclipse.cdt.debug.mi.core.CDebuggerNew"
- id="org.eclipse.cdt.debug.mi.GDBDebuggerPageNew"/>
- </extension>
- <extension
- point="org.eclipse.ui.preferencePages">
- <page
- name="%MIPreferencePage.name"
- category="org.eclipse.cdt.debug.ui.CDebugPreferencePage"
- class="org.eclipse.cdt.debug.mi.internal.ui.preferences.MIPreferencePage"
- id="org.eclipse.cdt.debug.mi.ui.MIPreferencePage">
- </page>
- </extension>
- <extension
- point="org.eclipse.ui.propertyPages">
- <page
- objectClass="org.eclipse.cdt.debug.core.model.ICDebugTarget"
- class="org.eclipse.cdt.debug.mi.internal.ui.propertypages.OptionsPropertyPage"
- name="%TargetOptionsPage.label"
- id="org.eclipse.cdt.debug.mi.ui.propertypages.target.options">
- <filter
- value="isGDBTarget"
- name="GDBTargetActionFilter"/>
- </page>
- </extension>
- <extension
- point="org.eclipse.core.runtime.adapters">
- <factory
- class="org.eclipse.cdt.debug.mi.internal.ui.ActionFilterAdapterFactory"
- adaptableType="org.eclipse.cdt.debug.core.model.ICDebugTarget">
- <adapter type="org.eclipse.ui.IActionFilter"/>
- </factory>
- </extension>
- <extension
- point="org.eclipse.ui.popupMenus">
- <objectContribution
- adaptable="false"
- id="org.eclipse.cdt.debug.mi.ui.gdbProcessActions"
- objectClass="org.eclipse.cdt.debug.mi.core.GDBProcess">
- <action
- class="org.eclipse.cdt.debug.mi.internal.ui.actions.VerboseModeActionDelegate"
- enablesFor="1"
- helpContextId="verbose_mode_console_action_context"
- icon="icons/obj16/verbose_mode_co.gif"
- id="org.eclipse.cdt.debug.mi.ui.verboseModeAction"
- label="%VerboseMode.label"
- menubarPath="renderGroup"
- state="false"
- style="toggle"
- tooltip="%VerboseMode.tooltip"/>
- </objectContribution>
- </extension>
- <extension
- point="org.eclipse.ui.console.consolePageParticipants">
- <consolePageParticipant
- class="org.eclipse.cdt.debug.mi.ui.console.MiConsolePageParticipant"
- id="org.eclipse.cdt.debug.mi.ui.console.miConsolePageParticipant">
- <enablement>
- <instanceof value="org.eclipse.debug.internal.ui.views.console.ProcessConsole"/>
- </enablement>
- </consolePageParticipant>
- </extension>
-
-</plugin>
diff --git a/debug/org.eclipse.cdt.debug.mi.ui/src/org/eclipse/cdt/debug/mi/internal/ui/ActionFilterAdapterFactory.java b/debug/org.eclipse.cdt.debug.mi.ui/src/org/eclipse/cdt/debug/mi/internal/ui/ActionFilterAdapterFactory.java
deleted file mode 100644
index 2aa761d4bda..00000000000
--- a/debug/org.eclipse.cdt.debug.mi.ui/src/org/eclipse/cdt/debug/mi/internal/ui/ActionFilterAdapterFactory.java
+++ /dev/null
@@ -1,45 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.mi.internal.ui;
-
-import org.eclipse.cdt.debug.core.model.ICDebugTarget;
-import org.eclipse.core.runtime.IAdapterFactory;
-import org.eclipse.ui.IActionFilter;
-
-/**
- * The UI adapter factory for GDB/MI Debug extensions
- */
-public class ActionFilterAdapterFactory implements IAdapterFactory {
-
- /* (non-Javadoc)
- * @see org.eclipse.core.runtime.IAdapterFactory#getAdapter(java.lang.Object, java.lang.Class)
- */
- public Object getAdapter( Object adaptableObject, Class adapterType ) {
- if ( adapterType.isInstance( adaptableObject ) ) {
- return adaptableObject;
- }
- if ( adapterType == IActionFilter.class ) {
- if ( adaptableObject instanceof ICDebugTarget ) {
- return new GDBTargetActionFilter();
- }
- }
- return null;
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.core.runtime.IAdapterFactory#getAdapterList()
- */
- public Class[] getAdapterList() {
- return new Class[] {
- IActionFilter.class
- };
- }
-}
diff --git a/debug/org.eclipse.cdt.debug.mi.ui/src/org/eclipse/cdt/debug/mi/internal/ui/CygwinDebuggerPage.java b/debug/org.eclipse.cdt.debug.mi.ui/src/org/eclipse/cdt/debug/mi/internal/ui/CygwinDebuggerPage.java
deleted file mode 100644
index 561c8ed16f0..00000000000
--- a/debug/org.eclipse.cdt.debug.mi.ui/src/org/eclipse/cdt/debug/mi/internal/ui/CygwinDebuggerPage.java
+++ /dev/null
@@ -1,30 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.mi.internal.ui;
-
-import org.eclipse.swt.widgets.TabFolder;
-
-/**
- * CygWin-specific extension of <code>GDBDebuggerPage</code>.
- */
-public class CygwinDebuggerPage extends GDBDebuggerPage {
-
- public String getName() {
- return MIUIMessages.getString( "CygwinDebuggerPage.0" ); //$NON-NLS-1$
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.cdt.debug.mi.internal.ui.GDBDebuggerPage#createTabs(org.eclipse.swt.widgets.TabFolder)
- */
- public void createTabs( TabFolder tabFolder ) {
- createMainTab( tabFolder );
- }
-}
diff --git a/debug/org.eclipse.cdt.debug.mi.ui/src/org/eclipse/cdt/debug/mi/internal/ui/GDBDebuggerPage.java b/debug/org.eclipse.cdt.debug.mi.ui/src/org/eclipse/cdt/debug/mi/internal/ui/GDBDebuggerPage.java
deleted file mode 100644
index 109547ac2ff..00000000000
--- a/debug/org.eclipse.cdt.debug.mi.ui/src/org/eclipse/cdt/debug/mi/internal/ui/GDBDebuggerPage.java
+++ /dev/null
@@ -1,334 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.mi.internal.ui;
-
-import java.io.File;
-import java.util.Observable;
-import java.util.Observer;
-import org.eclipse.cdt.debug.mi.core.IMILaunchConfigurationConstants;
-import org.eclipse.cdt.debug.mi.core.MIPlugin;
-import org.eclipse.cdt.debug.mi.ui.IMILaunchConfigurationComponent;
-import org.eclipse.cdt.debug.mi.ui.MIUIUtils;
-import org.eclipse.cdt.debug.ui.AbstractCDebuggerPage;
-import org.eclipse.cdt.utils.ui.controls.ControlFactory;
-import org.eclipse.core.runtime.CoreException;
-import org.eclipse.debug.core.ILaunchConfiguration;
-import org.eclipse.debug.core.ILaunchConfigurationWorkingCopy;
-import org.eclipse.swt.SWT;
-import org.eclipse.swt.events.ModifyEvent;
-import org.eclipse.swt.events.ModifyListener;
-import org.eclipse.swt.events.SelectionAdapter;
-import org.eclipse.swt.events.SelectionEvent;
-import org.eclipse.swt.events.SelectionListener;
-import org.eclipse.swt.layout.GridData;
-import org.eclipse.swt.layout.GridLayout;
-import org.eclipse.swt.widgets.Button;
-import org.eclipse.swt.widgets.Combo;
-import org.eclipse.swt.widgets.Composite;
-import org.eclipse.swt.widgets.FileDialog;
-import org.eclipse.swt.widgets.Label;
-import org.eclipse.swt.widgets.Shell;
-import org.eclipse.swt.widgets.TabFolder;
-import org.eclipse.swt.widgets.TabItem;
-import org.eclipse.swt.widgets.Text;
-
-/**
- * The dynamic tab for gdb-based debugger implementations.
- */
-public class GDBDebuggerPage extends AbstractCDebuggerPage implements Observer {
-
- final private static String DEFAULT_MI_PROTOCOL = MIUIMessages.getString( "GDBDebuggerPage.12" ); //$NON-NLS-1$
- final protected String[] protocolItems = new String[] { DEFAULT_MI_PROTOCOL, "mi1", "mi2", "mi3" }; //$NON-NLS-1$//$NON-NLS-2$ //$NON-NLS-3$
-
- protected TabFolder fTabFolder;
-
- protected Text fGDBCommandText;
-
- protected Text fGDBInitText;
-
- protected Combo fProtocolCombo;
-
- private IMILaunchConfigurationComponent fSolibBlock;
-
- private boolean fIsInitializing = false;
-
- public void createControl( Composite parent ) {
- Composite comp = new Composite( parent, SWT.NONE );
- comp.setLayout( new GridLayout() );
- comp.setLayoutData( new GridData( GridData.FILL_BOTH ) );
- fTabFolder = new TabFolder( comp, SWT.NONE );
- fTabFolder.setLayoutData( new GridData( GridData.FILL_BOTH | GridData.GRAB_VERTICAL ) );
- createTabs( fTabFolder );
- fTabFolder.setSelection( 0 );
- setControl( parent );
- }
-
- public void setDefaults( ILaunchConfigurationWorkingCopy configuration ) {
- configuration.setAttribute( IMILaunchConfigurationConstants.ATTR_DEBUG_NAME, "gdb" ); //$NON-NLS-1$
- configuration.setAttribute( IMILaunchConfigurationConstants.ATTR_GDB_INIT, IMILaunchConfigurationConstants.DEBUGGER_GDB_INIT_DEFAULT );
- configuration.setAttribute( IMILaunchConfigurationConstants.ATTR_DEBUGGER_PROTOCOL, "mi" ); //$NON-NLS-1$
- if ( fSolibBlock != null )
- fSolibBlock.setDefaults( configuration );
- }
-
- public boolean isValid( ILaunchConfiguration launchConfig ) {
- boolean valid = fGDBCommandText.getText().length() != 0;
- if ( valid ) {
- setErrorMessage( null );
- setMessage( null );
- }
- else {
- setErrorMessage( MIUIMessages.getString( "GDBDebuggerPage.0" ) ); //$NON-NLS-1$
- setMessage( null );
- }
- return valid;
- }
-
- public void initializeFrom( ILaunchConfiguration configuration ) {
- setInitializing( true );
- String gdbCommand = "gdb"; //$NON-NLS-1$
- String gdbInit = IMILaunchConfigurationConstants.DEBUGGER_GDB_INIT_DEFAULT;
- try {
- gdbCommand = configuration.getAttribute( IMILaunchConfigurationConstants.ATTR_DEBUG_NAME, "gdb" ); //$NON-NLS-1$
- }
- catch( CoreException e ) {
- }
- try {
- gdbInit = configuration.getAttribute( IMILaunchConfigurationConstants.ATTR_GDB_INIT, IMILaunchConfigurationConstants.DEBUGGER_GDB_INIT_DEFAULT );
- }
- catch( CoreException e ) {
- }
- String miVersion = MIPlugin.getMIVersion( configuration );
- if ( miVersion.compareTo( "mi" ) == 0 ) { //$NON-NLS-1$
- miVersion = DEFAULT_MI_PROTOCOL;
- }
- if ( fSolibBlock != null )
- fSolibBlock.initializeFrom( configuration );
- fGDBCommandText.setText( gdbCommand );
- fGDBInitText.setText( gdbInit );
- int index = 0;
- if ( miVersion.length() > 0 ) {
- for( int i = 0; i < protocolItems.length; ++i ) {
- if ( protocolItems[i].equals( miVersion ) ) {
- index = i;
- break;
- }
- }
- }
- fProtocolCombo.select( index );
- setInitializing( false );
- }
-
- public void performApply( ILaunchConfigurationWorkingCopy configuration ) {
- String str = fGDBCommandText.getText();
- str.trim();
- configuration.setAttribute( IMILaunchConfigurationConstants.ATTR_DEBUG_NAME, str );
- str = fGDBInitText.getText();
- str.trim();
- configuration.setAttribute( IMILaunchConfigurationConstants.ATTR_GDB_INIT, str );
- str = fProtocolCombo.getText();
- if ( str.compareTo( DEFAULT_MI_PROTOCOL ) == 0 ) {
- str = "mi"; //$NON-NLS-1$
- }
- configuration.setAttribute( IMILaunchConfigurationConstants.ATTR_DEBUGGER_PROTOCOL, str );
- if ( fSolibBlock != null )
- fSolibBlock.performApply( configuration );
- }
-
- public String getName() {
- return MIUIMessages.getString( "GDBDebuggerPage.1" ); //$NON-NLS-1$
- }
-
- /**
- * @see org.eclipse.debug.ui.AbstractLaunchConfigurationTab#getShell()
- */
- protected Shell getShell() {
- return super.getShell();
- }
-
- /**
- * @see org.eclipse.debug.ui.AbstractLaunchConfigurationTab#updateLaunchConfigurationDialog()
- */
- protected void updateLaunchConfigurationDialog() {
- super.updateLaunchConfigurationDialog();
- }
-
- /*
- * (non-Javadoc)
- *
- * @see java.util.Observer#update(java.util.Observable, java.lang.Object)
- */
- public void update( Observable o, Object arg ) {
- if ( !isInitializing() )
- updateLaunchConfigurationDialog();
- }
-
- public IMILaunchConfigurationComponent createSolibBlock( Composite parent ) {
- IMILaunchConfigurationComponent block = MIUIUtils.createGDBSolibBlock( true, true );
- block.createControl( parent );
- return block;
- }
-
- public void createTabs( TabFolder tabFolder ) {
- createMainTab( tabFolder );
- createSolibTab( tabFolder );
- }
-
- public void createMainTab( TabFolder tabFolder ) {
- TabItem tabItem = new TabItem( tabFolder, SWT.NONE );
- tabItem.setText( MIUIMessages.getString( "GDBDebuggerPage.2" ) ); //$NON-NLS-1$
- Composite comp = ControlFactory.createCompositeEx( tabFolder, 1, GridData.FILL_BOTH );
- ((GridLayout)comp.getLayout()).makeColumnsEqualWidth = false;
- comp.setFont( tabFolder.getFont() );
- tabItem.setControl( comp );
- Composite subComp = ControlFactory.createCompositeEx( comp, 3, GridData.FILL_HORIZONTAL );
- ((GridLayout)subComp.getLayout()).makeColumnsEqualWidth = false;
- subComp.setFont( tabFolder.getFont() );
- Label label = ControlFactory.createLabel( subComp, MIUIMessages.getString( "GDBDebuggerPage.3" ) ); //$NON-NLS-1$
- GridData gd = new GridData();
- // gd.horizontalSpan = 2;
- label.setLayoutData( gd );
- fGDBCommandText = ControlFactory.createTextField( subComp, SWT.SINGLE | SWT.BORDER );
- fGDBCommandText.addModifyListener( new ModifyListener() {
-
- public void modifyText( ModifyEvent evt ) {
- if ( !isInitializing() )
- updateLaunchConfigurationDialog();
- }
- } );
- Button button = createPushButton( subComp, MIUIMessages.getString( "GDBDebuggerPage.4" ), null ); //$NON-NLS-1$
- button.addSelectionListener( new SelectionAdapter() {
-
- public void widgetSelected( SelectionEvent evt ) {
- handleGDBButtonSelected();
- updateLaunchConfigurationDialog();
- }
-
- private void handleGDBButtonSelected() {
- FileDialog dialog = new FileDialog( getShell(), SWT.NONE );
- dialog.setText( MIUIMessages.getString( "GDBDebuggerPage.5" ) ); //$NON-NLS-1$
- String gdbCommand = fGDBCommandText.getText().trim();
- int lastSeparatorIndex = gdbCommand.lastIndexOf( File.separator );
- if ( lastSeparatorIndex != -1 ) {
- dialog.setFilterPath( gdbCommand.substring( 0, lastSeparatorIndex ) );
- }
- String res = dialog.open();
- if ( res == null ) {
- return;
- }
- fGDBCommandText.setText( res );
- }
- } );
- label = ControlFactory.createLabel( subComp, MIUIMessages.getString( "GDBDebuggerPage.6" ) ); //$NON-NLS-1$
- gd = new GridData();
- // gd.horizontalSpan = 2;
- label.setLayoutData( gd );
- fGDBInitText = ControlFactory.createTextField( subComp, SWT.SINGLE | SWT.BORDER );
- gd = new GridData( GridData.FILL_HORIZONTAL );
- fGDBInitText.setLayoutData( gd );
- fGDBInitText.addModifyListener( new ModifyListener() {
-
- public void modifyText( ModifyEvent evt ) {
- if ( !isInitializing() )
- updateLaunchConfigurationDialog();
- }
- } );
- button = createPushButton( subComp, MIUIMessages.getString( "GDBDebuggerPage.7" ), null ); //$NON-NLS-1$
- button.addSelectionListener( new SelectionAdapter() {
-
- public void widgetSelected( SelectionEvent evt ) {
- handleGDBInitButtonSelected();
- updateLaunchConfigurationDialog();
- }
-
- private void handleGDBInitButtonSelected() {
- FileDialog dialog = new FileDialog( getShell(), SWT.NONE );
- dialog.setText( MIUIMessages.getString( "GDBDebuggerPage.8" ) ); //$NON-NLS-1$
- String gdbCommand = fGDBInitText.getText().trim();
- int lastSeparatorIndex = gdbCommand.lastIndexOf( File.separator );
- if ( lastSeparatorIndex != -1 ) {
- dialog.setFilterPath( gdbCommand.substring( 0, lastSeparatorIndex ) );
- }
- String res = dialog.open();
- if ( res == null ) {
- return;
- }
- fGDBInitText.setText( res );
- }
- } );
- label = ControlFactory.createLabel( subComp, MIUIMessages.getString( "GDBDebuggerPage.9" ), //$NON-NLS-1$
- 200, SWT.DEFAULT, SWT.WRAP );
- gd = new GridData( GridData.FILL_HORIZONTAL );
- gd.horizontalSpan = 3;
- gd.widthHint = 200;
- label.setLayoutData( gd );
- createProtocolCombo( subComp );
- }
-
- public void createSolibTab( TabFolder tabFolder ) {
- TabItem tabItem = new TabItem( tabFolder, SWT.NONE );
- tabItem.setText( MIUIMessages.getString( "GDBDebuggerPage.10" ) ); //$NON-NLS-1$
- Composite comp = ControlFactory.createCompositeEx( fTabFolder, 1, GridData.FILL_BOTH );
- comp.setFont( tabFolder.getFont() );
- tabItem.setControl( comp );
- fSolibBlock = createSolibBlock( comp );
- if ( fSolibBlock instanceof Observable )
- ((Observable)fSolibBlock).addObserver( this );
- }
-
- /*
- * (non-Javadoc)
- *
- * @see org.eclipse.debug.ui.ILaunchConfigurationTab#dispose()
- */
- public void dispose() {
- if ( fSolibBlock != null ) {
- if ( fSolibBlock instanceof Observable )
- ((Observable)fSolibBlock).deleteObserver( this );
- fSolibBlock.dispose();
- }
- super.dispose();
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.debug.ui.ILaunchConfigurationTab#activated(org.eclipse.debug.core.ILaunchConfigurationWorkingCopy)
- */
- public void activated( ILaunchConfigurationWorkingCopy workingCopy ) {
- // Override the default behavior
- }
-
- protected boolean isInitializing() {
- return fIsInitializing;
- }
-
- private void setInitializing( boolean isInitializing ) {
- fIsInitializing = isInitializing;
- }
-
- protected void createProtocolCombo( Composite parent ) {
- Label label = new Label( parent, SWT.NONE );
- label.setText( MIUIMessages.getString( "GDBDebuggerPage.11" ) ); //$NON-NLS-1$
- fProtocolCombo = new Combo( parent, SWT.READ_ONLY | SWT.DROP_DOWN );
- fProtocolCombo.setItems( protocolItems );
- fProtocolCombo.addSelectionListener( new SelectionListener() {
-
- public void widgetDefaultSelected( SelectionEvent e ) {
- if ( !isInitializing() )
- updateLaunchConfigurationDialog();
- }
-
- public void widgetSelected( SelectionEvent e ) {
- if ( !isInitializing() )
- updateLaunchConfigurationDialog();
- }
- } );
- }
-}
diff --git a/debug/org.eclipse.cdt.debug.mi.ui/src/org/eclipse/cdt/debug/mi/internal/ui/GDBServerDebuggerPage.java b/debug/org.eclipse.cdt.debug.mi.ui/src/org/eclipse/cdt/debug/mi/internal/ui/GDBServerDebuggerPage.java
deleted file mode 100644
index cdaed648dcf..00000000000
--- a/debug/org.eclipse.cdt.debug.mi.ui/src/org/eclipse/cdt/debug/mi/internal/ui/GDBServerDebuggerPage.java
+++ /dev/null
@@ -1,185 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.mi.internal.ui;
-
-import org.eclipse.cdt.debug.mi.core.IGDBServerMILaunchConfigurationConstants;
-import org.eclipse.cdt.debug.mi.internal.ui.dialogfields.ComboDialogField;
-import org.eclipse.cdt.debug.mi.internal.ui.dialogfields.DialogField;
-import org.eclipse.cdt.debug.mi.internal.ui.dialogfields.IDialogFieldListener;
-import org.eclipse.cdt.debug.mi.internal.ui.dialogfields.LayoutUtil;
-import org.eclipse.cdt.utils.ui.controls.ControlFactory;
-import org.eclipse.core.runtime.CoreException;
-import org.eclipse.debug.core.ILaunchConfiguration;
-import org.eclipse.debug.core.ILaunchConfigurationWorkingCopy;
-import org.eclipse.swt.SWT;
-import org.eclipse.swt.custom.StackLayout;
-import org.eclipse.swt.layout.GridData;
-import org.eclipse.swt.layout.GridLayout;
-import org.eclipse.swt.widgets.Composite;
-import org.eclipse.swt.widgets.TabFolder;
-import org.eclipse.swt.widgets.TabItem;
-
-/**
- * The dynamic debugger tab for remote launches using gdb server.
- */
-public class GDBServerDebuggerPage extends StandardGDBDebuggerPage {
-
- private final static String CONNECTION_TCP = MIUIMessages.getString( "GDBServerDebuggerPage.0" ); //$NON-NLS-1$
-
- private final static String CONNECTION_SERIAL = MIUIMessages.getString( "GDBServerDebuggerPage.1" ); //$NON-NLS-1$
-
- private ComboDialogField fConnectionField;
-
- private String[] fConnections = new String[]{ CONNECTION_TCP, CONNECTION_SERIAL };
-
- private TCPSettingsBlock fTCPBlock;
-
- private SerialPortSettingsBlock fSerialBlock;
-
- private Composite fConnectionStack;
-
- private boolean fIsInitializing = false;
-
- public GDBServerDebuggerPage() {
- super();
- fConnectionField = createConnectionField();
- fTCPBlock = new TCPSettingsBlock();
- fSerialBlock = new SerialPortSettingsBlock();
- fTCPBlock.addObserver( this );
- fSerialBlock.addObserver( this );
- }
-
- protected void createConnectionTab( TabFolder tabFolder ) {
- TabItem tabItem = new TabItem( tabFolder, SWT.NONE );
- tabItem.setText( MIUIMessages.getString( "GDBServerDebuggerPage.10" ) ); //$NON-NLS-1$
- Composite comp1 = ControlFactory.createCompositeEx( tabFolder, 1, GridData.FILL_BOTH );
- ((GridLayout)comp1.getLayout()).makeColumnsEqualWidth = false;
- comp1.setFont( tabFolder.getFont() );
- tabItem.setControl( comp1 );
- Composite comp = ControlFactory.createCompositeEx( comp1, 2, GridData.FILL_BOTH );
- ((GridLayout)comp.getLayout()).makeColumnsEqualWidth = false;
- comp.setFont( comp1.getFont() );
- fConnectionField.doFillIntoGrid( comp, 2 );
- ((GridData)fConnectionField.getComboControl( null ).getLayoutData()).horizontalAlignment = GridData.BEGINNING;
- PixelConverter converter = new PixelConverter( comp );
- LayoutUtil.setWidthHint( fConnectionField.getComboControl( null ), converter.convertWidthInCharsToPixels( 15 ) );
- fConnectionStack = ControlFactory.createCompositeEx( comp, 1, GridData.FILL_BOTH );
- StackLayout stackLayout = new StackLayout();
- fConnectionStack.setLayout( stackLayout );
- ((GridData)fConnectionStack.getLayoutData()).horizontalSpan = 2;
- fTCPBlock.createBlock( fConnectionStack );
- fSerialBlock.createBlock( fConnectionStack );
- }
-
- private ComboDialogField createConnectionField() {
- ComboDialogField field = new ComboDialogField( SWT.DROP_DOWN | SWT.READ_ONLY );
- field.setLabelText( MIUIMessages.getString( "GDBServerDebuggerPage.9" ) ); //$NON-NLS-1$
- field.setItems( fConnections );
- field.setDialogFieldListener( new IDialogFieldListener() {
-
- public void dialogFieldChanged( DialogField f ) {
- if ( !isInitializing() )
- connectionTypeChanged();
- }
- } );
- return field;
- }
-
- protected void connectionTypeChanged() {
- connectionTypeChanged0();
- updateLaunchConfigurationDialog();
- }
-
- private void connectionTypeChanged0() {
- ((StackLayout)fConnectionStack.getLayout()).topControl = null;
- int index = fConnectionField.getSelectionIndex();
- if ( index >= 0 && index < fConnections.length ) {
- String[] connTypes = fConnectionField.getItems();
- if ( CONNECTION_TCP.equals( connTypes[index] ) )
- ((StackLayout)fConnectionStack.getLayout()).topControl = fTCPBlock.getControl();
- else if ( CONNECTION_SERIAL.equals( connTypes[index] ) )
- ((StackLayout)fConnectionStack.getLayout()).topControl = fSerialBlock.getControl();
- }
- fConnectionStack.layout();
- }
-
- public boolean isValid( ILaunchConfiguration launchConfig ) {
- if ( super.isValid( launchConfig ) ) {
- setErrorMessage( null );
- setMessage( null );
- int index = fConnectionField.getSelectionIndex();
- if ( index >= 0 && index < fConnections.length ) {
- String[] connTypes = fConnectionField.getItems();
- if ( CONNECTION_TCP.equals( connTypes[index] ) ) {
- if ( !fTCPBlock.isValid( launchConfig ) ) {
- setErrorMessage( fTCPBlock.getErrorMessage() );
- return false;
- }
- }
- else if ( CONNECTION_SERIAL.equals( connTypes[index] ) ) {
- if ( !fSerialBlock.isValid( launchConfig ) ) {
- setErrorMessage( fSerialBlock.getErrorMessage() );
- return false;
- }
- }
- return true;
- }
- }
- return false;
- }
-
- public void initializeFrom( ILaunchConfiguration configuration ) {
- setInitializing( true );
- super.initializeFrom( configuration );
- boolean isTcp = false;
- try {
- isTcp = configuration.getAttribute( IGDBServerMILaunchConfigurationConstants.ATTR_REMOTE_TCP, false );
- }
- catch( CoreException e ) {
- }
- fTCPBlock.initializeFrom( configuration );
- fSerialBlock.initializeFrom( configuration );
- fConnectionField.selectItem( (isTcp) ? 0 : 1 );
- connectionTypeChanged0();
- setInitializing( false );
- }
-
- public void performApply( ILaunchConfigurationWorkingCopy configuration ) {
- super.performApply( configuration );
- if ( fConnectionField != null )
- configuration.setAttribute( IGDBServerMILaunchConfigurationConstants.ATTR_REMOTE_TCP, fConnectionField.getSelectionIndex() == 0 );
- fTCPBlock.performApply( configuration );
- fSerialBlock.performApply( configuration );
- }
-
- public void setDefaults( ILaunchConfigurationWorkingCopy configuration ) {
- super.setDefaults( configuration );
- configuration.setAttribute( IGDBServerMILaunchConfigurationConstants.ATTR_REMOTE_TCP, false );
- fTCPBlock.setDefaults( configuration );
- fSerialBlock.setDefaults( configuration );
- }
-
- protected boolean isInitializing() {
- return fIsInitializing;
- }
-
- private void setInitializing( boolean isInitializing ) {
- fIsInitializing = isInitializing;
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.cdt.debug.mi.internal.ui.GDBDebuggerPage#createTabs(org.eclipse.swt.widgets.TabFolder)
- */
- public void createTabs( TabFolder tabFolder ) {
- super.createTabs( tabFolder );
- createConnectionTab( tabFolder );
- }
-}
diff --git a/debug/org.eclipse.cdt.debug.mi.ui/src/org/eclipse/cdt/debug/mi/internal/ui/GDBSolibBlock.java b/debug/org.eclipse.cdt.debug.mi.ui/src/org/eclipse/cdt/debug/mi/internal/ui/GDBSolibBlock.java
deleted file mode 100644
index ba2bd14862c..00000000000
--- a/debug/org.eclipse.cdt.debug.mi.ui/src/org/eclipse/cdt/debug/mi/internal/ui/GDBSolibBlock.java
+++ /dev/null
@@ -1,192 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.mi.internal.ui;
-
-import java.util.Map;
-import java.util.Observable;
-import java.util.Observer;
-import org.eclipse.cdt.debug.core.ICDTLaunchConfigurationConstants;
-import org.eclipse.cdt.debug.mi.core.IMILaunchConfigurationConstants;
-import org.eclipse.cdt.debug.mi.ui.IMILaunchConfigurationComponent;
-import org.eclipse.cdt.utils.ui.controls.ControlFactory;
-import org.eclipse.core.runtime.CoreException;
-import org.eclipse.debug.core.ILaunchConfiguration;
-import org.eclipse.debug.core.ILaunchConfigurationWorkingCopy;
-import org.eclipse.swt.events.SelectionAdapter;
-import org.eclipse.swt.events.SelectionEvent;
-import org.eclipse.swt.layout.GridData;
-import org.eclipse.swt.layout.GridLayout;
-import org.eclipse.swt.widgets.Button;
-import org.eclipse.swt.widgets.Composite;
-import org.eclipse.swt.widgets.Control;
-
-/**
- * The content of the <code>Shared Libraries</code> tab of the <code>GDBDebuggerPage</code>.
- */
-public class GDBSolibBlock extends Observable implements IMILaunchConfigurationComponent, Observer {
-
- private IMILaunchConfigurationComponent fSolibSearchPathBlock;
-
- private Button fAutoSoLibButton;
-
- private Button fStopOnSolibEventsButton;
-
- private Composite fControl;
-
- private boolean fAutoSolib = false;
-
- private boolean fStopOnSolibEvents = false;
-
- public GDBSolibBlock( IMILaunchConfigurationComponent solibSearchBlock, boolean autoSolib, boolean stopOnSolibEvents ) {
- super();
- fSolibSearchPathBlock = solibSearchBlock;
- fAutoSolib = autoSolib;
- fStopOnSolibEvents = stopOnSolibEvents;
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.cdt.debug.mi.internal.ui.IMILaunchConfigurationComponent#createControl(org.eclipse.swt.widgets.Composite)
- */
- public void createControl( Composite parent ) {
- Composite subComp = ControlFactory.createCompositeEx( parent, 1, GridData.FILL_HORIZONTAL );
- ((GridLayout)subComp.getLayout()).makeColumnsEqualWidth = false;
- ((GridLayout)subComp.getLayout()).marginHeight = 0;
- ((GridLayout)subComp.getLayout()).marginWidth = 0;
- if ( fSolibSearchPathBlock != null ) {
- fSolibSearchPathBlock.createControl( subComp );
- if ( fSolibSearchPathBlock instanceof Observable )
- ((Observable)fSolibSearchPathBlock).addObserver( this );
- }
- if ( fAutoSolib ) {
- fAutoSoLibButton = ControlFactory.createCheckBox( subComp, MIUIMessages.getString( "GDBSolibBlock.0" ) ); //$NON-NLS-1$
- fAutoSoLibButton.addSelectionListener( new SelectionAdapter() {
-
- public void widgetSelected( SelectionEvent e ) {
- updateButtons();
- changed();
- }
- } );
- }
- if ( fStopOnSolibEvents ) {
- fStopOnSolibEventsButton = ControlFactory.createCheckBox( subComp, MIUIMessages.getString( "GDBSolibBlock.1" ) ); //$NON-NLS-1$
- fStopOnSolibEventsButton.addSelectionListener( new SelectionAdapter() {
-
- public void widgetSelected( SelectionEvent e ) {
- updateButtons();
- changed();
- }
- } );
- }
- fControl = subComp;
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.cdt.debug.mi.internal.ui.IMILaunchConfigurationComponent#initializeFrom(org.eclipse.debug.core.ILaunchConfiguration)
- */
- public void initializeFrom( ILaunchConfiguration configuration ) {
- if ( fSolibSearchPathBlock != null )
- fSolibSearchPathBlock.initializeFrom( configuration );
- try {
- if ( fAutoSoLibButton != null )
- fAutoSoLibButton.setSelection( configuration.getAttribute( IMILaunchConfigurationConstants.ATTR_DEBUGGER_AUTO_SOLIB, IMILaunchConfigurationConstants.DEBUGGER_AUTO_SOLIB_DEFAULT ) );
- if ( fStopOnSolibEventsButton != null )
- fStopOnSolibEventsButton.setSelection( configuration.getAttribute( IMILaunchConfigurationConstants.ATTR_DEBUGGER_STOP_ON_SOLIB_EVENTS, IMILaunchConfigurationConstants.DEBUGGER_STOP_ON_SOLIB_EVENTS_DEFAULT ) );
- initializeButtons( configuration );
- updateButtons();
- }
- catch( CoreException e ) {
- }
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.cdt.debug.mi.internal.ui.IMILaunchConfigurationComponent#performApply(org.eclipse.debug.core.ILaunchConfigurationWorkingCopy)
- */
- public void performApply( ILaunchConfigurationWorkingCopy configuration ) {
- if ( fSolibSearchPathBlock != null )
- fSolibSearchPathBlock.performApply( configuration );
- try {
- Map attrs = configuration.getAttributes();
- if ( fAutoSoLibButton != null )
- attrs.put( IMILaunchConfigurationConstants.ATTR_DEBUGGER_AUTO_SOLIB, Boolean.valueOf( fAutoSoLibButton.getSelection() ) );
- if ( fStopOnSolibEventsButton != null )
- attrs.put( IMILaunchConfigurationConstants.ATTR_DEBUGGER_STOP_ON_SOLIB_EVENTS, Boolean.valueOf( fStopOnSolibEventsButton.getSelection() ) );
- configuration.setAttributes( attrs );
- }
- catch( CoreException e ) {
- }
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.cdt.debug.mi.internal.ui.IMILaunchConfigurationComponent#setDefaults(org.eclipse.debug.core.ILaunchConfigurationWorkingCopy)
- */
- public void setDefaults( ILaunchConfigurationWorkingCopy configuration ) {
- if ( fSolibSearchPathBlock != null )
- fSolibSearchPathBlock.setDefaults( configuration );
- configuration.setAttribute( IMILaunchConfigurationConstants.ATTR_DEBUGGER_AUTO_SOLIB, IMILaunchConfigurationConstants.DEBUGGER_AUTO_SOLIB_DEFAULT );
- configuration.setAttribute( IMILaunchConfigurationConstants.ATTR_DEBUGGER_STOP_ON_SOLIB_EVENTS, IMILaunchConfigurationConstants.DEBUGGER_STOP_ON_SOLIB_EVENTS_DEFAULT );
- }
-
- protected void updateButtons() {
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.cdt.debug.mi.internal.ui.IMILaunchConfigurationComponent#dispose()
- */
- public void dispose() {
- deleteObservers();
- if ( fSolibSearchPathBlock != null ) {
- if ( fSolibSearchPathBlock instanceof Observable )
- ((Observable)fSolibSearchPathBlock).deleteObserver( this );
- fSolibSearchPathBlock.dispose();
- }
- }
-
- /*
- * (non-Javadoc)
- *
- * @see java.util.Observer#update(java.util.Observable, java.lang.Object)
- */
- public void update( Observable o, Object arg ) {
- changed();
- }
-
- protected void changed() {
- setChanged();
- notifyObservers();
- }
-
- protected void initializeButtons( ILaunchConfiguration configuration ) {
- try {
- boolean enable = !ICDTLaunchConfigurationConstants.DEBUGGER_MODE_CORE.equals( configuration.getAttribute( ICDTLaunchConfigurationConstants.ATTR_DEBUGGER_START_MODE, "" ) ); //$NON-NLS-1$
- if ( fAutoSoLibButton != null )
- fAutoSoLibButton.setEnabled( enable );
- if ( fStopOnSolibEventsButton != null )
- fStopOnSolibEventsButton.setEnabled( enable );
- }
- catch( CoreException e ) {
- }
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.cdt.debug.mi.internal.ui.IMILaunchConfigurationComponent#getControl()
- */
- public Control getControl() {
- return fControl;
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.cdt.debug.mi.internal.ui.IMILaunchConfigurationComponent#isValid(org.eclipse.debug.core.ILaunchConfiguration)
- */
- public boolean isValid( ILaunchConfiguration launchConfig ) {
- // TODO Auto-generated method stub
- return false;
- }
-}
diff --git a/debug/org.eclipse.cdt.debug.mi.ui/src/org/eclipse/cdt/debug/mi/internal/ui/GDBTargetActionFilter.java b/debug/org.eclipse.cdt.debug.mi.ui/src/org/eclipse/cdt/debug/mi/internal/ui/GDBTargetActionFilter.java
deleted file mode 100644
index ec02bca3b01..00000000000
--- a/debug/org.eclipse.cdt.debug.mi.ui/src/org/eclipse/cdt/debug/mi/internal/ui/GDBTargetActionFilter.java
+++ /dev/null
@@ -1,34 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.mi.internal.ui;
-
-import org.eclipse.cdt.debug.core.cdi.ICDISession;
-import org.eclipse.cdt.debug.core.model.ICDebugTarget;
-import org.eclipse.cdt.debug.mi.core.cdi.Session;
-import org.eclipse.ui.IActionFilter;
-
-/**
- * Comment for .
- */
-public class GDBTargetActionFilter implements IActionFilter {
-
- /* (non-Javadoc)
- * @see org.eclipse.ui.IActionFilter#testAttribute(java.lang.Object, java.lang.String, java.lang.String)
- */
- public boolean testAttribute( Object target, String name, String value ) {
- if ( target instanceof ICDebugTarget ) {
- if ( name.equals( "GDBTargetActionFilter" ) && value.equals( "isGDBTarget" ) ) { //$NON-NLS-1$//$NON-NLS-2$
- return ( ((ICDebugTarget)target).getAdapter( ICDISession.class ) instanceof Session );
- }
- }
- return false;
- }
-}
diff --git a/debug/org.eclipse.cdt.debug.mi.ui/src/org/eclipse/cdt/debug/mi/internal/ui/IMIHelpContextIds.java b/debug/org.eclipse.cdt.debug.mi.ui/src/org/eclipse/cdt/debug/mi/internal/ui/IMIHelpContextIds.java
deleted file mode 100644
index 60f8ed427b8..00000000000
--- a/debug/org.eclipse.cdt.debug.mi.ui/src/org/eclipse/cdt/debug/mi/internal/ui/IMIHelpContextIds.java
+++ /dev/null
@@ -1,25 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.mi.internal.ui;
-
-/**
- * Help context ids for the C/C++ debug ui.
- * <p>
- * This interface contains constants only; it is not intended to be implemented or extended.
- * </p>
- */
-public interface IMIHelpContextIds {
-
- public static final String PREFIX = IMIUIConstants.PLUGIN_ID + "."; //$NON-NLS-1$
-
- // Preference pages
- public static final String MI_PREFERENCE_PAGE = PREFIX + "mi_preference_page_context"; //$NON-NLS-1$
-}
diff --git a/debug/org.eclipse.cdt.debug.mi.ui/src/org/eclipse/cdt/debug/mi/internal/ui/IMIUIConstants.java b/debug/org.eclipse.cdt.debug.mi.ui/src/org/eclipse/cdt/debug/mi/internal/ui/IMIUIConstants.java
deleted file mode 100644
index fc8d73d242d..00000000000
--- a/debug/org.eclipse.cdt.debug.mi.ui/src/org/eclipse/cdt/debug/mi/internal/ui/IMIUIConstants.java
+++ /dev/null
@@ -1,22 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.mi.internal.ui;
-
-/**
- * Constant definitions for MI UI plug-in.
- */
-public interface IMIUIConstants {
-
- /**
- * Plug-in identifier (value <code>"org.eclipse.cdt.debug.mi.ui"</code>).
- */
- public static final String PLUGIN_ID = MIUIPlugin.getUniqueIdentifier();
-}
diff --git a/debug/org.eclipse.cdt.debug.mi.ui/src/org/eclipse/cdt/debug/mi/internal/ui/MIUIMessages.java b/debug/org.eclipse.cdt.debug.mi.ui/src/org/eclipse/cdt/debug/mi/internal/ui/MIUIMessages.java
deleted file mode 100644
index 9fa393dcd06..00000000000
--- a/debug/org.eclipse.cdt.debug.mi.ui/src/org/eclipse/cdt/debug/mi/internal/ui/MIUIMessages.java
+++ /dev/null
@@ -1,33 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.mi.internal.ui;
-
-import java.util.MissingResourceException;
-import java.util.ResourceBundle;
-
-public class MIUIMessages {
-
- private static final String BUNDLE_NAME = "org.eclipse.cdt.debug.mi.internal.ui.MIUIMessages";//$NON-NLS-1$
-
- private static final ResourceBundle RESOURCE_BUNDLE = ResourceBundle.getBundle( BUNDLE_NAME );
-
- private MIUIMessages() {
- }
-
- public static String getString( String key ) {
- try {
- return RESOURCE_BUNDLE.getString( key );
- }
- catch( MissingResourceException e ) {
- return '!' + key + '!';
- }
- }
-}
diff --git a/debug/org.eclipse.cdt.debug.mi.ui/src/org/eclipse/cdt/debug/mi/internal/ui/MIUIMessages.properties b/debug/org.eclipse.cdt.debug.mi.ui/src/org/eclipse/cdt/debug/mi/internal/ui/MIUIMessages.properties
deleted file mode 100644
index 33a935a0087..00000000000
--- a/debug/org.eclipse.cdt.debug.mi.ui/src/org/eclipse/cdt/debug/mi/internal/ui/MIUIMessages.properties
+++ /dev/null
@@ -1,74 +0,0 @@
-###############################################################################
-# Copyright (c) 2003, 2006 QNX Software Systems and others.
-# All rights reserved. This program and the accompanying materials
-# are made available under the terms of the Eclipse Public License v1.0
-# which accompanies this distribution, and is available at
-# http://www.eclipse.org/legal/epl-v10.html
-#
-# Contributors:
-# QNX Software Systems - initial API and implementation
-###############################################################################
-
-CygwinDebuggerPage.0=Cygwin GDB Debugger Options
-GDBDebuggerPage.0=Debugger executable must be specified.
-GDBDebuggerPage.1=GDB Debugger Options
-GDBDebuggerPage.2=Main
-GDBDebuggerPage.3=GDB debugger:
-GDBDebuggerPage.4=&Browse...
-GDBDebuggerPage.5=GDB Debugger
-GDBDebuggerPage.6=GDB command file:
-GDBDebuggerPage.7=B&rowse...
-GDBDebuggerPage.8=GDB Command File
-GDBDebuggerPage.9=(Warning: Some commands in this file may interfere with the startup operation of the debugger, for example "run".)
-GDBDebuggerPage.10=Shared Libraries
-GDBDebuggerPage.11=Protocol:
-GDBDebuggerPage.12=Default
-StandardGDBDebuggerPage.0=Debugger executable must be specified.
-StandardGDBDebuggerPage.1=GDB Debugger Options
-StandardGDBDebuggerPage.2=Main
-StandardGDBDebuggerPage.3=GDB debugger:
-StandardGDBDebuggerPage.4=&Browse...
-StandardGDBDebuggerPage.5=GDB Debugger
-StandardGDBDebuggerPage.6=GDB command file:
-StandardGDBDebuggerPage.7=B&rowse...
-StandardGDBDebuggerPage.8=GDB Command File
-StandardGDBDebuggerPage.9=(Warning: Some commands in this file may interfere with the startup operation of the debugger, for example "run".)
-StandardGDBDebuggerPage.10=Shared Libraries
-StandardGDBDebuggerPage.11=Protocol:
-StandardGDBDebuggerPage.12=GDB command set:
-StandardGDBDebuggerPage.13=Verbose console mode
-GDBServerDebuggerPage.0=TCP
-GDBServerDebuggerPage.1=Serial
-GDBServerDebuggerPage.10=Connection
-GDBServerDebuggerPage.2=Main
-GDBServerDebuggerPage.3=GDB debugger
-GDBServerDebuggerPage.4=&Browse...
-GDBServerDebuggerPage.5=GDB Debugger
-GDBServerDebuggerPage.6=GDB command file:
-GDBServerDebuggerPage.7=B&rowse...
-GDBServerDebuggerPage.8=GDB Command File
-GDBServerDebuggerPage.9=Type:
-GDBSolibBlock.0=Load shared library symbols automatically
-GDBSolibBlock.1=Stop on shared library events
-SerialPortSettingsBlock.0=Device:
-SerialPortSettingsBlock.1=Speed:
-SerialPortSettingsBlock.2=Device must be specified.
-SerialPortSettingsBlock.3=Invalid device.
-SerialPortSettingsBlock.4=Speed must be specified.
-SolibSearchPathBlock.0=Add...
-SolibSearchPathBlock.1=Up
-SolibSearchPathBlock.2=Down
-SolibSearchPathBlock.3=Remove
-SolibSearchPathBlock.4=Directories:
-SolibSearchPathBlock.5=Select directory that contains shared library.
-SolibSearchPathBlock.6=Select From List
-SolibSearchPathBlock.7=Select Libraries
-SolibSearchPathBlock.8=Select libraries to load symbols automatically.
-SolibSearchPathBlock.9=No libraries found.
-SolibSearchPathBlock.Add_Directory=Add Directory
-TCPSettingsBlock.0=Host name or IP address:
-TCPSettingsBlock.1=Port number:
-TCPSettingsBlock.2=Host name or IP address must be specified.
-TCPSettingsBlock.3=Invalid host name or IP address.
-TCPSettingsBlock.4=Port number must be specified.
-TCPSettingsBlock.5=Invalid port number.
diff --git a/debug/org.eclipse.cdt.debug.mi.ui/src/org/eclipse/cdt/debug/mi/internal/ui/MIUIPlugin.java b/debug/org.eclipse.cdt.debug.mi.ui/src/org/eclipse/cdt/debug/mi/internal/ui/MIUIPlugin.java
deleted file mode 100644
index cfa926e2ecd..00000000000
--- a/debug/org.eclipse.cdt.debug.mi.ui/src/org/eclipse/cdt/debug/mi/internal/ui/MIUIPlugin.java
+++ /dev/null
@@ -1,67 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2002, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.cdt.debug.mi.internal.ui;
-
-import org.eclipse.core.resources.IWorkspace;
-import org.eclipse.core.resources.ResourcesPlugin;
-import org.eclipse.ui.plugin.AbstractUIPlugin;
-
-/**
- * The main plugin class to be used in the desktop.
- */
-public class MIUIPlugin extends AbstractUIPlugin {
-
- /**
- * The plug-in identifier (value <code>"org.eclipse.cdt.debug.mi.ui"</code>).
- */
- public static final String PLUGIN_ID = "org.eclipse.cdt.debug.mi.ui" ; //$NON-NLS-1$
-
- //The shared instance.
- private static MIUIPlugin plugin;
-
- /**
- * The constructor.
- */
- public MIUIPlugin() {
- super();
- plugin = this;
- }
-
- /**
- * Returns the shared instance.
- */
- public static MIUIPlugin getDefault() {
- return plugin;
- }
-
- /**
- * Returns the workspace instance.
- */
- public static IWorkspace getWorkspace() {
- return ResourcesPlugin.getWorkspace();
- }
-
- /**
- * Convenience method which returns the unique identifier of this plugin.
- *
- * @return the unique identifier of this plugin
- */
- public static String getUniqueIdentifier() {
- if ( getDefault() == null ) {
- // If the default instance is not yet initialized,
- // return a static identifier. This identifier must
- // match the plugin id defined in plugin.xml
- return PLUGIN_ID;
- }
- return getDefault().getBundle().getSymbolicName();
- }
-}
diff --git a/debug/org.eclipse.cdt.debug.mi.ui/src/org/eclipse/cdt/debug/mi/internal/ui/PixelConverter.java b/debug/org.eclipse.cdt.debug.mi.ui/src/org/eclipse/cdt/debug/mi/internal/ui/PixelConverter.java
deleted file mode 100644
index 009158570ac..00000000000
--- a/debug/org.eclipse.cdt.debug.mi.ui/src/org/eclipse/cdt/debug/mi/internal/ui/PixelConverter.java
+++ /dev/null
@@ -1,56 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * IBM Corporation - Initial implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.mi.internal.ui;
-
-import org.eclipse.jface.dialogs.Dialog;
-import org.eclipse.swt.graphics.FontMetrics;
-import org.eclipse.swt.graphics.GC;
-import org.eclipse.swt.widgets.Control;
-
-public class PixelConverter {
-
- private FontMetrics fFontMetrics;
-
- public PixelConverter( Control control ) {
- GC gc = new GC( control );
- gc.setFont( control.getFont() );
- fFontMetrics = gc.getFontMetrics();
- gc.dispose();
- }
-
- /**
- * @see org.eclipse.jface.dialogs.DialogPage#convertHeightInCharsToPixels(int)
- */
- public int convertHeightInCharsToPixels( int chars ) {
- return Dialog.convertHeightInCharsToPixels( fFontMetrics, chars );
- }
-
- /**
- * @see org.eclipse.jface.dialogs.DialogPage#convertHorizontalDLUsToPixels(int)
- */
- public int convertHorizontalDLUsToPixels( int dlus ) {
- return Dialog.convertHorizontalDLUsToPixels( fFontMetrics, dlus );
- }
-
- /**
- * @see org.eclipse.jface.dialogs.DialogPage#convertVerticalDLUsToPixels(int)
- */
- public int convertVerticalDLUsToPixels( int dlus ) {
- return Dialog.convertVerticalDLUsToPixels( fFontMetrics, dlus );
- }
-
- /**
- * @see org.eclipse.jface.dialogs.DialogPage#convertWidthInCharsToPixels(int)
- */
- public int convertWidthInCharsToPixels( int chars ) {
- return Dialog.convertWidthInCharsToPixels( fFontMetrics, chars );
- }
-}
diff --git a/debug/org.eclipse.cdt.debug.mi.ui/src/org/eclipse/cdt/debug/mi/internal/ui/SWTUtil.java b/debug/org.eclipse.cdt.debug.mi.ui/src/org/eclipse/cdt/debug/mi/internal/ui/SWTUtil.java
deleted file mode 100644
index 3b67ba6885d..00000000000
--- a/debug/org.eclipse.cdt.debug.mi.ui/src/org/eclipse/cdt/debug/mi/internal/ui/SWTUtil.java
+++ /dev/null
@@ -1,100 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2005, 2006 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.mi.internal.ui;
-
-import org.eclipse.cdt.debug.internal.ui.PixelConverter;
-import org.eclipse.jface.dialogs.IDialogConstants;
-import org.eclipse.jface.util.Assert;
-import org.eclipse.swt.SWT;
-import org.eclipse.swt.dnd.DragSource;
-import org.eclipse.swt.dnd.DropTarget;
-import org.eclipse.swt.layout.GridData;
-import org.eclipse.swt.widgets.Button;
-import org.eclipse.swt.widgets.Caret;
-import org.eclipse.swt.widgets.Control;
-import org.eclipse.swt.widgets.Display;
-import org.eclipse.swt.widgets.Menu;
-import org.eclipse.swt.widgets.ScrollBar;
-import org.eclipse.swt.widgets.Shell;
-import org.eclipse.swt.widgets.Widget;
-
-/**
- * Utility class to simplify access to some SWT resources.
- */
-public class SWTUtil {
-
- /**
- * Returns the standard display to be used. The method first checks, if the
- * thread calling this method has an associated disaply. If so, this
- * display is returned. Otherwise the method returns the default display.
- */
- public static Display getStandardDisplay() {
- Display display;
- display = Display.getCurrent();
- if ( display == null )
- display = Display.getDefault();
- return display;
- }
-
- /**
- * Returns the shell for the given widget. If the widget doesn't represent
- * a SWT object that manage a shell, <code>null</code> is returned.
- *
- * @return the shell for the given widget
- */
- public static Shell getShell(Widget widget) {
- if ( widget instanceof Control )
- return ((Control)widget).getShell();
- if ( widget instanceof Caret )
- return ((Caret)widget).getParent().getShell();
- if ( widget instanceof DragSource )
- return ((DragSource)widget).getControl().getShell();
- if ( widget instanceof DropTarget )
- return ((DropTarget)widget).getControl().getShell();
- if ( widget instanceof Menu )
- return ((Menu)widget).getParent().getShell();
- if ( widget instanceof ScrollBar )
- return ((ScrollBar)widget).getParent().getShell();
- return null;
- }
-
- /**
- * Returns a width hint for a button control.
- */
- public static int getButtonWidthHint( Button button ) {
- PixelConverter converter = new PixelConverter( button );
- int widthHint = converter.convertHorizontalDLUsToPixels( IDialogConstants.BUTTON_WIDTH );
- return Math.max( widthHint, button.computeSize( SWT.DEFAULT, SWT.DEFAULT, true ).x );
- }
-
- /**
- * Returns a height hint for a button control.
- */
-// public static int getButtonHeigthHint( Button button ) {
-// PixelConverter converter = new PixelConverter( button );
-// return converter.convertVerticalDLUsToPixels( IDialogConstants.BUTTON_HEIGHT );
-// }
-
- /**
- * Sets width and height hint for the button control. <b>Note:</b> This
- * is a NOP if the button's layout data is not an instance of <code>GridData</code>.
- *
- * @param the button for which to set the dimension hint
- */
- public static void setButtonDimensionHint( Button button ) {
- Assert.isNotNull( button );
- Object gd = button.getLayoutData();
- if ( gd instanceof GridData ) {
- ((GridData)gd).widthHint = getButtonWidthHint( button );
- ((GridData)gd).horizontalAlignment = GridData.FILL;
- }
- }
-}
diff --git a/debug/org.eclipse.cdt.debug.mi.ui/src/org/eclipse/cdt/debug/mi/internal/ui/SerialPortSettingsBlock.java b/debug/org.eclipse.cdt.debug.mi.ui/src/org/eclipse/cdt/debug/mi/internal/ui/SerialPortSettingsBlock.java
deleted file mode 100644
index eb6475c5190..00000000000
--- a/debug/org.eclipse.cdt.debug.mi.ui/src/org/eclipse/cdt/debug/mi/internal/ui/SerialPortSettingsBlock.java
+++ /dev/null
@@ -1,204 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.cdt.debug.mi.internal.ui;
-
-import java.util.Observable;
-import org.eclipse.cdt.debug.mi.core.IGDBServerMILaunchConfigurationConstants;
-import org.eclipse.cdt.debug.mi.internal.ui.dialogfields.ComboDialogField;
-import org.eclipse.cdt.debug.mi.internal.ui.dialogfields.DialogField;
-import org.eclipse.cdt.debug.mi.internal.ui.dialogfields.IDialogFieldListener;
-import org.eclipse.cdt.debug.mi.internal.ui.dialogfields.LayoutUtil;
-import org.eclipse.cdt.debug.mi.internal.ui.dialogfields.StringDialogField;
-import org.eclipse.cdt.utils.ui.controls.ControlFactory;
-import org.eclipse.core.runtime.CoreException;
-import org.eclipse.debug.core.ILaunchConfiguration;
-import org.eclipse.debug.core.ILaunchConfigurationWorkingCopy;
-import org.eclipse.swt.SWT;
-import org.eclipse.swt.layout.GridData;
-import org.eclipse.swt.layout.GridLayout;
-import org.eclipse.swt.widgets.Composite;
-import org.eclipse.swt.widgets.Control;
-import org.eclipse.swt.widgets.Shell;
-
-public class SerialPortSettingsBlock extends Observable {
-
- private final static String DEFAULT_ASYNC_DEVICE = "/dev/ttyS0"; //$NON-NLS-1$
-
- private final static String DEFAULT_ASYNC_DEVICE_SPEED = "115200"; //$NON-NLS-1$
-
- private Shell fShell;
-
- private StringDialogField fDeviceField;
-
- private ComboDialogField fSpeedField;
-
- private String fSpeedChoices[] = { "9600", "19200", "38400", "57600", "115200" }; //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$ //$NON-NLS-4$ //$NON-NLS-5$
-
- private Control fControl;
-
- private String fErrorMessage = null;
-
- public SerialPortSettingsBlock() {
- super();
- fDeviceField = createDeviceField();
- fSpeedField = createSpeedField();
- }
-
- public void createBlock( Composite parent ) {
- fShell = parent.getShell();
- Composite comp = ControlFactory.createCompositeEx( parent, 2, GridData.FILL_BOTH );
- ((GridLayout)comp.getLayout()).makeColumnsEqualWidth = false;
- ((GridLayout)comp.getLayout()).marginHeight = 0;
- ((GridLayout)comp.getLayout()).marginWidth = 0;
- comp.setFont( parent.getFont() );
- PixelConverter converter = new PixelConverter( comp );
- fDeviceField.doFillIntoGrid( comp, 2 );
- LayoutUtil.setWidthHint( fDeviceField.getTextControl( null ), converter.convertWidthInCharsToPixels( 20 ) );
- fSpeedField.doFillIntoGrid( comp, 2 );
- ((GridData)fSpeedField.getComboControl( null ).getLayoutData()).horizontalAlignment = GridData.BEGINNING;
- setControl( comp );
- }
-
- protected Shell getShell() {
- return fShell;
- }
-
- public void dispose() {
- deleteObservers();
- }
-
- public void initializeFrom( ILaunchConfiguration configuration ) {
- initializeDevice( configuration );
- initializeSpeed( configuration );
- }
-
- public void setDefaults( ILaunchConfigurationWorkingCopy configuration ) {
- configuration.setAttribute( IGDBServerMILaunchConfigurationConstants.ATTR_DEV, DEFAULT_ASYNC_DEVICE );
- configuration.setAttribute( IGDBServerMILaunchConfigurationConstants.ATTR_DEV_SPEED, DEFAULT_ASYNC_DEVICE_SPEED );
- }
-
- public void performApply( ILaunchConfigurationWorkingCopy configuration ) {
- if ( fDeviceField != null )
- configuration.setAttribute( IGDBServerMILaunchConfigurationConstants.ATTR_DEV, fDeviceField.getText().trim() );
- if ( fSpeedField != null ) {
- int index = fSpeedField.getSelectionIndex();
- configuration.setAttribute( IGDBServerMILaunchConfigurationConstants.ATTR_DEV_SPEED, getSpeedItem( index ) );
- }
- }
-
- private StringDialogField createDeviceField() {
- StringDialogField field = new StringDialogField();
- field.setLabelText( MIUIMessages.getString( "SerialPortSettingsBlock.0" ) ); //$NON-NLS-1$
- field.setDialogFieldListener( new IDialogFieldListener() {
-
- public void dialogFieldChanged( DialogField f ) {
- deviceFieldChanged();
- }
- } );
- return field;
- }
-
- private ComboDialogField createSpeedField() {
- ComboDialogField field = new ComboDialogField( SWT.DROP_DOWN | SWT.READ_ONLY );
- field.setLabelText( MIUIMessages.getString( "SerialPortSettingsBlock.1" ) ); //$NON-NLS-1$
- field.setItems( fSpeedChoices );
- field.setDialogFieldListener( new IDialogFieldListener() {
-
- public void dialogFieldChanged( DialogField f ) {
- speedFieldChanged();
- }
- } );
- return field;
- }
-
- protected void deviceFieldChanged() {
- updateErrorMessage();
- setChanged();
- notifyObservers();
- }
-
- protected void speedFieldChanged() {
- updateErrorMessage();
- setChanged();
- notifyObservers();
- }
-
- private void initializeDevice( ILaunchConfiguration configuration ) {
- if ( fDeviceField != null ) {
- try {
- fDeviceField.setText( configuration.getAttribute( IGDBServerMILaunchConfigurationConstants.ATTR_DEV, DEFAULT_ASYNC_DEVICE ) );
- }
- catch( CoreException e ) {
- }
- }
- }
-
- private void initializeSpeed( ILaunchConfiguration configuration ) {
- if ( fSpeedField != null ) {
- int index = 0;
- try {
- index = getSpeedItemIndex( configuration.getAttribute( IGDBServerMILaunchConfigurationConstants.ATTR_DEV_SPEED, DEFAULT_ASYNC_DEVICE_SPEED ) );
- }
- catch( CoreException e ) {
- }
- fSpeedField.selectItem( index );
- }
- }
-
- private String getSpeedItem( int index ) {
- return (index >= 0 && index < fSpeedChoices.length) ? fSpeedChoices[index] : null;
- }
-
- private int getSpeedItemIndex( String item ) {
- for( int i = 0; i < fSpeedChoices.length; ++i )
- if ( fSpeedChoices[i].equals( item ) )
- return i;
- return 0;
- }
-
- public Control getControl() {
- return fControl;
- }
-
- protected void setControl( Control control ) {
- fControl = control;
- }
-
- public boolean isValid( ILaunchConfiguration configuration ) {
- updateErrorMessage();
- return (getErrorMessage() == null);
- }
-
- private void updateErrorMessage() {
- setErrorMessage( null );
- if ( fDeviceField != null && fSpeedField != null ) {
- if ( fDeviceField.getText().trim().length() == 0 )
- setErrorMessage( MIUIMessages.getString( "SerialPortSettingsBlock.2" ) ); //$NON-NLS-1$
- else if ( !deviceIsValid( fDeviceField.getText().trim() ) )
- setErrorMessage( MIUIMessages.getString( "SerialPortSettingsBlock.3" ) ); //$NON-NLS-1$
- else if ( fSpeedField.getSelectionIndex() < 0 )
- setErrorMessage( MIUIMessages.getString( "SerialPortSettingsBlock.4" ) ); //$NON-NLS-1$
- }
- }
-
- public String getErrorMessage() {
- return fErrorMessage;
- }
-
- private void setErrorMessage( String string ) {
- fErrorMessage = string;
- }
-
- private boolean deviceIsValid( String hostName ) {
- return true;
- }
-}
diff --git a/debug/org.eclipse.cdt.debug.mi.ui/src/org/eclipse/cdt/debug/mi/internal/ui/SolibSearchPathBlock.java b/debug/org.eclipse.cdt.debug.mi.ui/src/org/eclipse/cdt/debug/mi/internal/ui/SolibSearchPathBlock.java
deleted file mode 100644
index 3a803fe4b91..00000000000
--- a/debug/org.eclipse.cdt.debug.mi.ui/src/org/eclipse/cdt/debug/mi/internal/ui/SolibSearchPathBlock.java
+++ /dev/null
@@ -1,589 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.mi.internal.ui;
-
-import java.io.File;
-import java.io.IOException;
-import java.lang.reflect.InvocationTargetException;
-import java.util.ArrayList;
-import java.util.Arrays;
-import java.util.Collections;
-import java.util.HashSet;
-import java.util.Iterator;
-import java.util.List;
-import java.util.Observable;
-import java.util.Set;
-import org.eclipse.cdt.core.CCorePlugin;
-import org.eclipse.cdt.core.IBinaryParser;
-import org.eclipse.cdt.core.ICExtensionReference;
-import org.eclipse.cdt.core.IBinaryParser.IBinaryFile;
-import org.eclipse.cdt.core.IBinaryParser.IBinaryShared;
-import org.eclipse.cdt.debug.core.ICDTLaunchConfigurationConstants;
-import org.eclipse.cdt.debug.mi.core.IMILaunchConfigurationConstants;
-import org.eclipse.cdt.debug.mi.core.MICoreUtils;
-import org.eclipse.cdt.debug.mi.internal.ui.dialogfields.DialogField;
-import org.eclipse.cdt.debug.mi.internal.ui.dialogfields.IDialogFieldListener;
-import org.eclipse.cdt.debug.mi.internal.ui.dialogfields.IListAdapter;
-import org.eclipse.cdt.debug.mi.internal.ui.dialogfields.LayoutUtil;
-import org.eclipse.cdt.debug.mi.internal.ui.dialogfields.ListDialogField;
-import org.eclipse.cdt.debug.mi.ui.IMILaunchConfigurationComponent;
-import org.eclipse.cdt.utils.ui.controls.ControlFactory;
-import org.eclipse.core.resources.IProject;
-import org.eclipse.core.resources.ResourcesPlugin;
-import org.eclipse.core.runtime.CoreException;
-import org.eclipse.core.runtime.IPath;
-import org.eclipse.core.runtime.IProgressMonitor;
-import org.eclipse.core.runtime.Path;
-import org.eclipse.debug.core.ILaunchConfiguration;
-import org.eclipse.debug.core.ILaunchConfigurationWorkingCopy;
-import org.eclipse.jface.dialogs.Dialog;
-import org.eclipse.jface.dialogs.IDialogConstants;
-import org.eclipse.jface.dialogs.ProgressMonitorDialog;
-import org.eclipse.jface.operation.IRunnableContext;
-import org.eclipse.jface.operation.IRunnableWithProgress;
-import org.eclipse.jface.viewers.ILabelProvider;
-import org.eclipse.jface.viewers.ISelection;
-import org.eclipse.jface.viewers.ITreeContentProvider;
-import org.eclipse.jface.viewers.LabelProvider;
-import org.eclipse.jface.viewers.Viewer;
-import org.eclipse.jface.viewers.ViewerSorter;
-import org.eclipse.jface.window.Window;
-import org.eclipse.swt.SWT;
-import org.eclipse.swt.events.ModifyEvent;
-import org.eclipse.swt.events.ModifyListener;
-import org.eclipse.swt.events.SelectionAdapter;
-import org.eclipse.swt.events.SelectionEvent;
-import org.eclipse.swt.layout.GridData;
-import org.eclipse.swt.layout.GridLayout;
-import org.eclipse.swt.widgets.Button;
-import org.eclipse.swt.widgets.Composite;
-import org.eclipse.swt.widgets.Control;
-import org.eclipse.swt.widgets.DirectoryDialog;
-import org.eclipse.swt.widgets.Shell;
-import org.eclipse.swt.widgets.Text;
-import org.eclipse.ui.dialogs.CheckedTreeSelectionDialog;
-
-/**
- * The UI component to access the shared libraries search path.
- */
-public class SolibSearchPathBlock extends Observable implements IMILaunchConfigurationComponent, IDialogFieldListener {
-
- class AddDirectoryDialog extends Dialog {
-
- protected Text fText;
-
- private Button fBrowseButton;
-
- private IPath fValue;
-
- /**
- * Constructor for AddDirectoryDialog.
- */
- public AddDirectoryDialog( Shell parentShell ) {
- super( parentShell );
- }
-
- protected Control createDialogArea( Composite parent ) {
- Composite composite = (Composite)super.createDialogArea( parent );
-
- Composite subComp = ControlFactory.createCompositeEx( composite, 2, GridData.FILL_HORIZONTAL );
- ((GridLayout)subComp.getLayout()).makeColumnsEqualWidth = false;
- GridData data = new GridData( GridData.GRAB_HORIZONTAL | GridData.GRAB_VERTICAL | GridData.HORIZONTAL_ALIGN_FILL | GridData.VERTICAL_ALIGN_CENTER );
- data.widthHint = convertHorizontalDLUsToPixels( IDialogConstants.MINIMUM_MESSAGE_AREA_WIDTH );
- subComp.setLayoutData( data );
- subComp.setFont( parent.getFont() );
-
- fText = new Text( subComp, SWT.SINGLE | SWT.BORDER );
- fText.setLayoutData( new GridData( GridData.GRAB_HORIZONTAL | GridData.HORIZONTAL_ALIGN_FILL ) );
- fText.addModifyListener( new ModifyListener() {
-
- public void modifyText( ModifyEvent e ) {
- updateOKButton();
- }
- } );
-
- fBrowseButton = ControlFactory.createPushButton( subComp, MIUIMessages.getString( "GDBServerDebuggerPage.7" ) ); //$NON-NLS-1$
- data = new GridData();
- data.horizontalAlignment = GridData.FILL;
- data.widthHint = convertHorizontalDLUsToPixels( IDialogConstants.BUTTON_WIDTH );
- fBrowseButton.setLayoutData( data );
- fBrowseButton.addSelectionListener( new SelectionAdapter() {
-
- public void widgetSelected( SelectionEvent evt ) {
- DirectoryDialog dialog = new DirectoryDialog( AddDirectoryDialog.this.getShell() );
- dialog.setMessage( MIUIMessages.getString( "SolibSearchPathBlock.5" ) ); //$NON-NLS-1$
- String res = dialog.open();
- if ( res != null ) {
- fText.setText( res );
- }
- }
- } );
-
- applyDialogFont( composite );
- return composite;
- }
-
- protected void configureShell( Shell newShell ) {
- super.configureShell( newShell );
- newShell.setText( MIUIMessages.getString( "SolibSearchPathBlock.Add_Directory" ) ); //$NON-NLS-1$
- }
-
- public IPath getValue() {
- return fValue;
- }
-
- private void setValue( String value ) {
- fValue = ( value != null ) ? new Path( value ) : null;
- }
-
- protected void buttonPressed( int buttonId ) {
- if ( buttonId == IDialogConstants.OK_ID ) {
- setValue( fText.getText() );
- }
- else {
- setValue( null );
- }
- super.buttonPressed( buttonId );
- }
-
- protected void updateOKButton() {
- Button okButton = getButton( IDialogConstants.OK_ID );
- String text = fText.getText();
- okButton.setEnabled( isValid( text ) );
- }
-
- protected boolean isValid( String text ) {
- return ( text.trim().length() > 0 );
- }
-
- protected Control createButtonBar( Composite parent ) {
- Control control = super.createButtonBar( parent );
- updateOKButton();
- return control;
- }
- }
-
- private Composite fControl;
-
- public class SolibSearchPathListDialogField extends ListDialogField {
-
- public SolibSearchPathListDialogField( IListAdapter adapter, String[] buttonLabels, ILabelProvider lprovider ) {
- super( adapter, buttonLabels, lprovider );
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.cdt.debug.internal.ui.dialogfields.ListDialogField#managedButtonPressed(int)
- */
- protected boolean managedButtonPressed( int index ) {
- boolean result = super.managedButtonPressed( index );
- if ( result )
- buttonPressed( index );
- return result;
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.cdt.debug.mi.internal.ui.dialogfields.ListDialogField#getManagedButtonState(org.eclipse.jface.viewers.ISelection, int)
- */
- protected boolean getManagedButtonState( ISelection sel, int index ) {
- if ( index > 3 )
- return getButtonState( sel, index );
- return super.getManagedButtonState( sel, index );
- }
- }
-
- private static String[] fgStaticButtonLabels = new String[] {
- MIUIMessages.getString( "SolibSearchPathBlock.0" ), //$NON-NLS-1$
- MIUIMessages.getString( "SolibSearchPathBlock.1" ), //$NON-NLS-1$
- MIUIMessages.getString( "SolibSearchPathBlock.2" ), //$NON-NLS-1$
- MIUIMessages.getString( "SolibSearchPathBlock.3" ), //$NON-NLS-1$
- MIUIMessages.getString( "SolibSearchPathBlock.6" ), //$NON-NLS-1$
- null, // separator
- };
-
- private IProject fProject;
-
- private Shell fShell;
-
- private SolibSearchPathListDialogField fDirList;
-
- private IListAdapter fCustomListAdapter;
-
- private File[] fAutoSolibs = new File[0];
-
- public SolibSearchPathBlock() {
- this( new String[0], null );
- }
-
- public SolibSearchPathBlock( String[] customButtonLabels, IListAdapter customListAdapter ) {
- super();
- fCustomListAdapter = customListAdapter;
- int length = fgStaticButtonLabels.length;
- if ( customButtonLabels.length > 0 )
- length += customButtonLabels.length;
- String[] buttonLabels = new String[length];
- System.arraycopy( fgStaticButtonLabels, 0, buttonLabels, 0, fgStaticButtonLabels.length );
- if ( length > fgStaticButtonLabels.length ) {
- for ( int i = fgStaticButtonLabels.length; i < length; ++i )
- buttonLabels[i] = customButtonLabels[i - fgStaticButtonLabels.length];
- }
- IListAdapter listAdapter = new IListAdapter() {
- public void customButtonPressed( DialogField field, int index ) {
- buttonPressed( index );
- }
- public void selectionChanged( DialogField field ) {
- }
- };
- ILabelProvider lp = new LabelProvider() {
- public String getText( Object element ) {
- if ( element instanceof IPath )
- return ((IPath)element).toOSString();
- return super.getText( element );
- }
- };
- fDirList = new SolibSearchPathListDialogField( listAdapter, buttonLabels, lp );
- fDirList.setLabelText( MIUIMessages.getString( "SolibSearchPathBlock.4" ) ); //$NON-NLS-1$
- fDirList.setUpButtonIndex( 1 );
- fDirList.setDownButtonIndex( 2 );
- fDirList.setRemoveButtonIndex( 3 );
-
- fDirList.setDialogFieldListener(this);
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.cdt.debug.mi.internal.ui.IMILaunchConfigurationComponent#createControl(org.eclipse.swt.widgets.Composite)
- */
- public void createControl( Composite parent ) {
- fShell = parent.getShell();
- Composite comp = ControlFactory.createCompositeEx( parent, 2, GridData.FILL_BOTH );
- ((GridLayout)comp.getLayout()).makeColumnsEqualWidth = false;
- ((GridLayout)comp.getLayout()).marginHeight = 0;
- ((GridLayout)comp.getLayout()).marginWidth = 0;
- comp.setFont( parent.getFont() );
- PixelConverter converter = new PixelConverter( comp );
- fDirList.doFillIntoGrid( comp, 3 );
- LayoutUtil.setHorizontalSpan( fDirList.getLabelControl( null ), 2 );
- LayoutUtil.setWidthHint( fDirList.getLabelControl( null ), converter.convertWidthInCharsToPixels( 30 ) );
- LayoutUtil.setHorizontalGrabbing( fDirList.getListControl( null ) );
- fControl = comp;
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.cdt.debug.mi.internal.ui.IMILaunchConfigurationComponent#initializeFrom(org.eclipse.debug.core.ILaunchConfiguration)
- */
- public void initializeFrom( ILaunchConfiguration configuration ) {
- IProject project = null;
- try {
- String projectName = configuration.getAttribute( ICDTLaunchConfigurationConstants.ATTR_PROJECT_NAME, (String)null );
- if ( projectName != null ) {
- projectName = projectName.trim();
- if ( projectName.length() > 0 ) {
- project = ResourcesPlugin.getWorkspace().getRoot().getProject( projectName );
- }
- }
- }
- catch( CoreException e ) {
- }
- setProject( project );
-
- if ( fDirList != null ) {
- try {
- List values = configuration.getAttribute( IMILaunchConfigurationConstants.ATTR_DEBUGGER_SOLIB_PATH, Collections.EMPTY_LIST );
- ArrayList paths = new ArrayList( values.size() );
- Iterator it = values.iterator();
- while( it.hasNext() ) {
- paths.add( new Path( (String)it.next() ) );
- }
- fDirList.addElements( paths );
- }
- catch( CoreException e ) {
- }
- }
-
- try {
- fAutoSolibs = MICoreUtils.getAutoSolibs( configuration );
- }
- catch( CoreException e ) {
- }
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.cdt.debug.mi.internal.ui.IMILaunchConfigurationComponent#setDefaults(org.eclipse.debug.core.ILaunchConfigurationWorkingCopy)
- */
- public void setDefaults( ILaunchConfigurationWorkingCopy configuration ) {
- configuration.setAttribute( IMILaunchConfigurationConstants.ATTR_DEBUGGER_SOLIB_PATH, Collections.EMPTY_LIST );
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.cdt.debug.mi.internal.ui.IMILaunchConfigurationComponent#performApply(org.eclipse.debug.core.ILaunchConfigurationWorkingCopy)
- */
- public void performApply( ILaunchConfigurationWorkingCopy configuration ) {
- if ( fDirList != null ) {
- List elements = fDirList.getElements();
- ArrayList values = new ArrayList( elements.size() );
- Iterator it = elements.iterator();
- while( it.hasNext() ) {
- values.add( ((IPath)it.next()).toOSString() );
- }
- configuration.setAttribute( IMILaunchConfigurationConstants.ATTR_DEBUGGER_SOLIB_PATH, values );
- }
- ArrayList autoLibs = new ArrayList( fAutoSolibs.length );
- for ( int i = 0; i < fAutoSolibs.length; ++i )
- autoLibs.add( fAutoSolibs[i].getPath() );
- configuration.setAttribute( IMILaunchConfigurationConstants.ATTR_DEBUGGER_AUTO_SOLIB_LIST, autoLibs );
- }
-
- protected void buttonPressed( int index ) {
- boolean changed = false;
- if ( index == 0 ) { // Add button
- changed = addDirectory();
- }
- else if ( index == 4 ) { //Select from list
- changed = selectFromList();
- }
- else if ( index >= fgStaticButtonLabels.length && fCustomListAdapter != null ) {
- fCustomListAdapter.customButtonPressed( fDirList, index );
- changed = true;
- }
- if ( changed ) {
- setChanged();
- notifyObservers();
- }
- }
-
- protected boolean getButtonState( ISelection sel, int index ) {
- if ( index == 4 ) { // select from list
- return ( !sel.isEmpty() );
- }
- return true;
- }
-
- protected Shell getShell() {
- return fShell;
- }
-
- private boolean addDirectory() {
- boolean changed = false;
- AddDirectoryDialog dialog = new AddDirectoryDialog( getShell() );
- dialog.open();
- IPath result = dialog.getValue();
- if ( result != null && !contains( result ) ) {
- fDirList.addElement( result );
- changed = true;
- }
- return changed;
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.cdt.debug.mi.internal.ui.IMILaunchConfigurationComponent#dispose()
- */
- public void dispose() {
- deleteObservers();
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.cdt.debug.mi.internal.ui.IMILaunchConfigurationComponent#getControl()
- */
- public Control getControl() {
- return fControl;
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.cdt.debug.mi.internal.ui.IMILaunchConfigurationComponent#isValid(org.eclipse.debug.core.ILaunchConfiguration)
- */
- public boolean isValid( ILaunchConfiguration launchConfig ) {
- // TODO Auto-generated method stub
- return false;
- }
-
- private boolean contains( IPath path ) {
- List list = fDirList.getElements();
- Iterator it = list.iterator();
- while( it.hasNext() ) {
- IPath p = (IPath)it.next();
- if ( p.toFile().equals( path.toFile() ) )
- return true;
- }
- return false;
- }
-
- protected IProject getProject() {
- return fProject;
- }
-
- private void setProject( IProject project ) {
- fProject = project;
- }
-
- protected boolean selectFromList() {
- boolean changed = false;
- List dirList = fDirList.getSelectedElements();
- final HashSet libs = new HashSet( 10 );
- if ( generateLibraryList( (IPath[])dirList.toArray( new IPath[dirList.size()] ), libs ) ) {
- ITreeContentProvider cp = new ITreeContentProvider() {
-
- public Object[] getChildren( Object parentElement ) {
- return getElements( parentElement );
- }
-
- public Object getParent( Object element ) {
- if ( libs.contains( element ) )
- return libs;
- return null;
- }
-
- public boolean hasChildren( Object element ) {
- return false;
- }
-
- public Object[] getElements( Object inputElement ) {
- if ( inputElement instanceof Set ) {
- return ((Set)inputElement).toArray();
- }
- return new Object[0];
- }
-
- public void dispose() {
- }
-
- public void inputChanged( Viewer viewer, Object oldInput, Object newInput ) {
- }
- };
-
- LabelProvider lp = new LabelProvider() {
-
- public String getText( Object element ) {
- if ( element instanceof File )
- return ((File)element).getName();
- return super.getText( element );
- }
- };
- CheckedTreeSelectionDialog dialog = new CheckedTreeSelectionDialog( getShell(), lp, cp );
- dialog.setTitle( MIUIMessages.getString( "SolibSearchPathBlock.7" ) ); //$NON-NLS-1$
- dialog.setMessage( MIUIMessages.getString( "SolibSearchPathBlock.8" ) ); //$NON-NLS-1$
- dialog.setEmptyListMessage( MIUIMessages.getString( "SolibSearchPathBlock.9" ) ); //$NON-NLS-1$
- dialog.setSorter( new ViewerSorter() );
- dialog.setInput( libs );
- dialog.setInitialElementSelections( Arrays.asList( fAutoSolibs ) );
- if ( dialog.open() == Window.OK ) {
- Object[] result = dialog.getResult();
- fAutoSolibs = (File[])Arrays.asList( result ).toArray( new File[result.length] );
- changed = true;
- }
- }
- return changed;
- }
-
- private boolean generateLibraryList( final IPath[] paths, final Set libs ) {
- boolean result = true;
-
- IRunnableWithProgress runnable = new IRunnableWithProgress() {
- public void run( IProgressMonitor monitor ) throws InvocationTargetException, InterruptedException {
-
- for ( int i = 0; i < paths.length; ++i ) {
- File dir = paths[i].toFile();
- if ( dir.exists() && dir.isDirectory() ) {
- File[] all = dir.listFiles();
- for ( int j = 0; j < all.length; ++j ) {
- if ( monitor.isCanceled() ) {
- throw new InterruptedException();
- }
- monitor.subTask( all[j].getPath() );
- String libName = getSharedLibraryName( all[j] );
- if ( libName != null ) {
- libs.add( new File( libName ) );
- }
- }
- }
- }
- }
- };
- try {
- IRunnableContext context = new ProgressMonitorDialog( getShell() );
- context.run( true, true, runnable );
- }
- catch( InvocationTargetException e ) {
- }
- catch( InterruptedException e ) {
- result = false;
- }
- return result;
- }
-
- protected String getSharedLibraryName( File file ) {
- if ( !file.isFile() )
- return null;
- IProject project = getProject();
- if ( project != null ) {
- IPath fullPath = new Path( file.getPath() );
- try {
- ICExtensionReference[] binaryParsersExt = CCorePlugin.getDefault().getBinaryParserExtensions( project );
- for( int i = 0; i < binaryParsersExt.length; i++ ) {
- IBinaryParser parser = (IBinaryParser)binaryParsersExt[i].createExtension();
- try {
- IBinaryFile bin = parser.getBinary( fullPath );
- if ( bin instanceof IBinaryShared ) {
- String soname = ((IBinaryShared)bin).getSoName();
- return ( soname.length() != 0 ) ? soname : file.getName();
- }
- }
- catch( IOException e ) {
- }
- }
- }
- catch( CoreException e ) {
- }
- return null;
- }
- // no project: for now
- IPath path = new Path( file.getPath() );
- String name = path.lastSegment();
- String extension = path.getFileExtension();
- if ( extension != null && (extension.compareTo( "so" ) == 0 || extension.compareToIgnoreCase( "dll" ) == 0) ) //$NON-NLS-1$ //$NON-NLS-2$
- return name;
- return ( name.indexOf( ".so." ) >= 0 ) ? name : null; //$NON-NLS-1$
- }
-
- protected boolean isSharedLibrary( File file ) {
- if ( !file.isFile() )
- return false;
- IProject project = getProject();
- if ( project != null ) {
- IPath fullPath = new Path( file.getPath() );
- try {
- ICExtensionReference[] binaryParsersExt = CCorePlugin.getDefault().getBinaryParserExtensions( project );
- for( int i = 0; i < binaryParsersExt.length; i++ ) {
- IBinaryParser parser = (IBinaryParser)binaryParsersExt[i].createExtension();
- try {
- IBinaryFile bin = parser.getBinary( fullPath );
- return ( bin instanceof IBinaryShared );
- }
- catch( IOException e ) {
- }
- }
- }
- catch( CoreException e ) {
- }
- return false;
- }
- // no project: for now
- IPath path = new Path( file.getPath() );
- String extension = path.getFileExtension();
- if ( extension != null && (extension.compareTo( "so" ) == 0 || extension.compareToIgnoreCase( "dll" ) == 0) ) //$NON-NLS-1$ //$NON-NLS-2$
- return true;
- String name = path.lastSegment();
- return ( name.indexOf( ".so." ) >= 0 ); //$NON-NLS-1$
- }
-
- public void dialogFieldChanged(DialogField field) {
- setChanged();
- notifyObservers();
- }
-}
diff --git a/debug/org.eclipse.cdt.debug.mi.ui/src/org/eclipse/cdt/debug/mi/internal/ui/StandardGDBDebuggerPage.java b/debug/org.eclipse.cdt.debug.mi.ui/src/org/eclipse/cdt/debug/mi/internal/ui/StandardGDBDebuggerPage.java
deleted file mode 100644
index 6621f3844b3..00000000000
--- a/debug/org.eclipse.cdt.debug.mi.ui/src/org/eclipse/cdt/debug/mi/internal/ui/StandardGDBDebuggerPage.java
+++ /dev/null
@@ -1,499 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- * Vadimir Prus (vladimir@codesourcery.com) - bug 156114: GDB options layout
- * problem
- *******************************************************************************/
-package org.eclipse.cdt.debug.mi.internal.ui;
-
-import java.io.File;
-import java.io.IOException;
-import java.util.Arrays;
-import java.util.Comparator;
-import java.util.Observable;
-import java.util.Observer;
-import org.eclipse.cdt.debug.mi.core.IMILaunchConfigurationConstants;
-import org.eclipse.cdt.debug.mi.core.MIPlugin;
-import org.eclipse.cdt.debug.mi.core.command.factories.CommandFactoryDescriptor;
-import org.eclipse.cdt.debug.mi.ui.IMILaunchConfigurationComponent;
-import org.eclipse.cdt.debug.mi.ui.MIUIUtils;
-import org.eclipse.cdt.debug.ui.AbstractCDebuggerPage;
-import org.eclipse.cdt.utils.ui.controls.ControlFactory;
-import org.eclipse.cdt.utils.Platform;
-import org.eclipse.core.runtime.CoreException;
-import org.eclipse.debug.core.ILaunchConfiguration;
-import org.eclipse.debug.core.ILaunchConfigurationWorkingCopy;
-import org.eclipse.swt.SWT;
-import org.eclipse.swt.events.ModifyEvent;
-import org.eclipse.swt.events.ModifyListener;
-import org.eclipse.swt.events.SelectionAdapter;
-import org.eclipse.swt.events.SelectionEvent;
-import org.eclipse.swt.events.SelectionListener;
-import org.eclipse.swt.layout.GridData;
-import org.eclipse.swt.layout.GridLayout;
-import org.eclipse.swt.widgets.Button;
-import org.eclipse.swt.widgets.Combo;
-import org.eclipse.swt.widgets.Composite;
-import org.eclipse.swt.widgets.Control;
-import org.eclipse.swt.widgets.FileDialog;
-import org.eclipse.swt.widgets.Label;
-import org.eclipse.swt.widgets.Shell;
-import org.eclipse.swt.widgets.TabFolder;
-import org.eclipse.swt.widgets.TabItem;
-import org.eclipse.swt.widgets.Text;
-
-/**
- * The dynamic tab for gdb-based debugger implementations.
- */
-public class StandardGDBDebuggerPage extends AbstractCDebuggerPage implements Observer {
-
- private final static String DEFAULT_MI_VERSION = "mi"; //$NON-NLS-1$
-
- protected TabFolder fTabFolder;
-
- protected Text fGDBCommandText;
-
- protected Text fGDBInitText;
-
- protected Combo fCommandFactoryCombo;
-
- protected Combo fProtocolCombo;
-
- protected Button fVerboseModeButton;
-
- private IMILaunchConfigurationComponent fSolibBlock;
-
- private CommandFactoryDescriptor[] fCommandFactoryDescriptors;
-
- private boolean fIsInitializing = false;
-
- private static boolean gdb64ExistsIsCached = false;
-
- private static boolean cachedGdb64Exists;
-
- public void createControl( Composite parent ) {
- Composite comp = new Composite( parent, SWT.NONE );
- comp.setLayout( new GridLayout() );
- comp.setLayoutData( new GridData( GridData.FILL_BOTH ) );
- fTabFolder = new TabFolder( comp, SWT.NONE );
- fTabFolder.setLayoutData( new GridData( GridData.FILL_BOTH | GridData.GRAB_VERTICAL ) );
- createTabs( fTabFolder );
- fTabFolder.setSelection( 0 );
- setControl( parent );
- }
-
- public void setDefaults( ILaunchConfigurationWorkingCopy configuration ) {
- configuration.setAttribute( IMILaunchConfigurationConstants.ATTR_DEBUG_NAME, defaultGdbCommand());
- configuration.setAttribute( IMILaunchConfigurationConstants.ATTR_GDB_INIT, IMILaunchConfigurationConstants.DEBUGGER_GDB_INIT_DEFAULT );
- configuration.setAttribute( IMILaunchConfigurationConstants.ATTR_DEBUGGER_COMMAND_FACTORY, MIPlugin.getDefault().getCommandFactoryManager().getDefaultDescriptor( getDebuggerIdentifier() ).getIdentifier() );
- configuration.setAttribute( IMILaunchConfigurationConstants.ATTR_DEBUGGER_VERBOSE_MODE, IMILaunchConfigurationConstants.DEBUGGER_VERBOSE_MODE_DEFAULT );
- if ( fSolibBlock != null )
- fSolibBlock.setDefaults( configuration );
- }
-
- private static String defaultGdbCommand() {
- String gdbCommand = null;
-
- if (Platform.getOS().equals(Platform.OS_LINUX) &&
- Platform.getOSArch().equals("ppc64")) {
- // On SLES 9 and 10 for ppc64 arch, there is a separate
- // 64-bit capable gdb called gdb64. It can
- // also debug 32-bit executables, so let's see if it exists.
- if (!gdb64ExistsIsCached) {
- Process unameProcess;
- int interruptedRetryCount = 5;
-
- String cmd[] = {"gdb64", "--version"};
-
- gdb64ExistsIsCached = true;
-
- while (interruptedRetryCount >= 0) {
- try {
- unameProcess = Runtime.getRuntime().exec(cmd);
- int exitStatus = unameProcess.waitFor();
-
- cachedGdb64Exists = (exitStatus == 0);
- break;
- } catch (IOException e) {
- cachedGdb64Exists = false;
- break;
- } catch (InterruptedException e) {
- // Never should get here, really. The chances of the command being interrupted
- // are very small
- cachedGdb64Exists = false;
- interruptedRetryCount--;
- }
- }
- }
- if (cachedGdb64Exists) {
- gdbCommand = "gdb64"; //$NON-NLS-1$
- } else {
- gdbCommand = IMILaunchConfigurationConstants.DEBUGGER_DEBUG_NAME_DEFAULT;
- }
- } else {
- gdbCommand = IMILaunchConfigurationConstants.DEBUGGER_DEBUG_NAME_DEFAULT;
- }
- return gdbCommand;
- }
-
-
- public boolean isValid( ILaunchConfiguration launchConfig ) {
- boolean valid = fGDBCommandText.getText().length() != 0;
- if ( valid ) {
- setErrorMessage( null );
- setMessage( null );
- }
- else {
- setErrorMessage( MIUIMessages.getString( "StandardGDBDebuggerPage.0" ) ); //$NON-NLS-1$
- setMessage( null );
- }
- return valid;
- }
-
- public void initializeFrom( ILaunchConfiguration configuration ) {
- setInitializing( true );
- String gdbCommand = defaultGdbCommand();
- String gdbInit = IMILaunchConfigurationConstants.DEBUGGER_GDB_INIT_DEFAULT;
- try {
- gdbCommand = configuration.getAttribute( IMILaunchConfigurationConstants.ATTR_DEBUG_NAME, defaultGdbCommand());
- }
- catch( CoreException e ) {
- }
- try {
- gdbInit = configuration.getAttribute( IMILaunchConfigurationConstants.ATTR_GDB_INIT, IMILaunchConfigurationConstants.DEBUGGER_GDB_INIT_DEFAULT );
- }
- catch( CoreException e ) {
- }
- if ( fSolibBlock != null )
- fSolibBlock.initializeFrom( configuration );
- fGDBCommandText.setText( gdbCommand );
- fGDBInitText.setText( gdbInit );
-
- String debuggerID = getDebuggerIdentifier();
- fCommandFactoryDescriptors = MIPlugin.getDefault().getCommandFactoryManager().getDescriptors( debuggerID );
- Arrays.sort( fCommandFactoryDescriptors,
- new Comparator() {
- public int compare( Object arg0, Object arg1 ) {
- return ((CommandFactoryDescriptor)arg0).getName().compareTo( ((CommandFactoryDescriptor)arg1).getName() );
- }
- } );
- String[] descLabels = new String[fCommandFactoryDescriptors.length];
- String commandFactoryId = MIPlugin.getCommandFactory( configuration );
- int index = -1;
- for( int i = 0; i < fCommandFactoryDescriptors.length; ++i ) {
- descLabels[i] = fCommandFactoryDescriptors[i].getName();
- if ( fCommandFactoryDescriptors[i].getIdentifier().equals( commandFactoryId ) )
- index = i;
- }
- fCommandFactoryCombo.setItems( descLabels );
- if ( index < 0 ) {
- index = 0;
- }
-
- //It may be the case that we can't match up any identifier with any installed debuggers associated
- //with this debuggerID (ie fCommandFactoryDescriptors.length == 0) for example when importing a
- //launch from different environments that use CDT debugging. In this case we try and soldier on
- //using the defaults as much as is realistic.
- String[] miVersions = new String[0];
- if(index < fCommandFactoryDescriptors.length) {
- fCommandFactoryCombo.select( index );
- miVersions = fCommandFactoryDescriptors[index].getMIVersions();
- }
- fProtocolCombo.setItems( miVersions );
- if ( miVersions.length == 0 ) {
- miVersions = new String[] { DEFAULT_MI_VERSION };
- }
- String mi = DEFAULT_MI_VERSION;
- try {
- mi = configuration.getAttribute( IMILaunchConfigurationConstants.ATTR_DEBUGGER_PROTOCOL, DEFAULT_MI_VERSION );
- }
- catch( CoreException e ) {
- // use default
- }
- int miIndex = 0;
- for ( int i = 0; i < miVersions.length; ++i ) {
- if ( miVersions[i].equals( mi ) ) {
- miIndex = i;
- break;
- }
- }
- fProtocolCombo.select( miIndex );
- boolean verboseMode = IMILaunchConfigurationConstants.DEBUGGER_VERBOSE_MODE_DEFAULT;
- try {
- verboseMode = configuration.getAttribute( IMILaunchConfigurationConstants.ATTR_DEBUGGER_VERBOSE_MODE, IMILaunchConfigurationConstants.DEBUGGER_VERBOSE_MODE_DEFAULT );
- }
- catch( CoreException e ) {
- // use default
- }
- fVerboseModeButton.setSelection( verboseMode );
-
- // We've populated combos, which affects their preferred size, and so must relayout things.
- Control changed[] = { fCommandFactoryCombo, fProtocolCombo };
- ((Composite) getControl()).layout( changed );
-
- setInitializing( false );
- }
-
- public void performApply( ILaunchConfigurationWorkingCopy configuration ) {
- String str = fGDBCommandText.getText();
- str.trim();
- configuration.setAttribute( IMILaunchConfigurationConstants.ATTR_DEBUG_NAME, str );
- str = fGDBInitText.getText();
- str.trim();
- configuration.setAttribute( IMILaunchConfigurationConstants.ATTR_GDB_INIT, str );
- str = fCommandFactoryCombo.getText();
- int index = fCommandFactoryCombo.indexOf( str );
- str = ( index < 0 ) ? "" : fCommandFactoryDescriptors[index].getIdentifier(); //$NON-NLS-1$
- configuration.setAttribute( IMILaunchConfigurationConstants.ATTR_DEBUGGER_COMMAND_FACTORY, str );
- str = fProtocolCombo.getText();
- configuration.setAttribute( IMILaunchConfigurationConstants.ATTR_DEBUGGER_PROTOCOL, str );
- if ( fSolibBlock != null )
- fSolibBlock.performApply( configuration );
- configuration.setAttribute( IMILaunchConfigurationConstants.ATTR_DEBUGGER_VERBOSE_MODE, fVerboseModeButton.getSelection() );
- }
-
- public String getName() {
- return MIUIMessages.getString( "StandardGDBDebuggerPage.1" ); //$NON-NLS-1$
- }
-
- /**
- * @see org.eclipse.debug.ui.AbstractLaunchConfigurationTab#getShell()
- */
- protected Shell getShell() {
- return super.getShell();
- }
-
- /**
- * @see org.eclipse.debug.ui.AbstractLaunchConfigurationTab#updateLaunchConfigurationDialog()
- */
- protected void updateLaunchConfigurationDialog() {
- super.updateLaunchConfigurationDialog();
- }
-
- /*
- * (non-Javadoc)
- *
- * @see java.util.Observer#update(java.util.Observable, java.lang.Object)
- */
- public void update( Observable o, Object arg ) {
- if ( !isInitializing() )
- updateLaunchConfigurationDialog();
- }
-
- public IMILaunchConfigurationComponent createSolibBlock( Composite parent ) {
- IMILaunchConfigurationComponent block = MIUIUtils.createGDBSolibBlock( true, true );
- block.createControl( parent );
- return block;
- }
-
- public void createTabs( TabFolder tabFolder ) {
- createMainTab( tabFolder );
- createSolibTab( tabFolder );
- }
-
- public void createMainTab( TabFolder tabFolder ) {
- TabItem tabItem = new TabItem( tabFolder, SWT.NONE );
- tabItem.setText( MIUIMessages.getString( "StandardGDBDebuggerPage.2" ) ); //$NON-NLS-1$
- Composite comp = ControlFactory.createCompositeEx( tabFolder, 1, GridData.FILL_BOTH );
- ((GridLayout)comp.getLayout()).makeColumnsEqualWidth = false;
- comp.setFont( tabFolder.getFont() );
- tabItem.setControl( comp );
- Composite subComp = ControlFactory.createCompositeEx( comp, 3, GridData.FILL_HORIZONTAL );
- ((GridLayout)subComp.getLayout()).makeColumnsEqualWidth = false;
- subComp.setFont( tabFolder.getFont() );
- Label label = ControlFactory.createLabel( subComp, MIUIMessages.getString( "StandardGDBDebuggerPage.3" ) ); //$NON-NLS-1$
- GridData gd = new GridData();
-// gd.horizontalSpan = 2;
- label.setLayoutData( gd );
- fGDBCommandText = ControlFactory.createTextField( subComp, SWT.SINGLE | SWT.BORDER );
- fGDBCommandText.addModifyListener( new ModifyListener() {
-
- public void modifyText( ModifyEvent evt ) {
- if ( !isInitializing() )
- updateLaunchConfigurationDialog();
- }
- } );
- Button button = createPushButton( subComp, MIUIMessages.getString( "StandardGDBDebuggerPage.4" ), null ); //$NON-NLS-1$
- button.addSelectionListener( new SelectionAdapter() {
-
- public void widgetSelected( SelectionEvent evt ) {
- handleGDBButtonSelected();
- updateLaunchConfigurationDialog();
- }
-
- private void handleGDBButtonSelected() {
- FileDialog dialog = new FileDialog( getShell(), SWT.NONE );
- dialog.setText( MIUIMessages.getString( "StandardGDBDebuggerPage.5" ) ); //$NON-NLS-1$
- String gdbCommand = fGDBCommandText.getText().trim();
- int lastSeparatorIndex = gdbCommand.lastIndexOf( File.separator );
- if ( lastSeparatorIndex != -1 ) {
- dialog.setFilterPath( gdbCommand.substring( 0, lastSeparatorIndex ) );
- }
- String res = dialog.open();
- if ( res == null ) {
- return;
- }
- fGDBCommandText.setText( res );
- }
- } );
- label = ControlFactory.createLabel( subComp, MIUIMessages.getString( "StandardGDBDebuggerPage.6" ) ); //$NON-NLS-1$
- gd = new GridData();
-// gd.horizontalSpan = 2;
- label.setLayoutData( gd );
- fGDBInitText = ControlFactory.createTextField( subComp, SWT.SINGLE | SWT.BORDER );
- gd = new GridData( GridData.FILL_HORIZONTAL );
- fGDBInitText.setLayoutData( gd );
- fGDBInitText.addModifyListener( new ModifyListener() {
-
- public void modifyText( ModifyEvent evt ) {
- if ( !isInitializing() )
- updateLaunchConfigurationDialog();
- }
- } );
- button = createPushButton( subComp, MIUIMessages.getString( "StandardGDBDebuggerPage.7" ), null ); //$NON-NLS-1$
- button.addSelectionListener( new SelectionAdapter() {
-
- public void widgetSelected( SelectionEvent evt ) {
- handleGDBInitButtonSelected();
- updateLaunchConfigurationDialog();
- }
-
- private void handleGDBInitButtonSelected() {
- FileDialog dialog = new FileDialog( getShell(), SWT.NONE );
- dialog.setText( MIUIMessages.getString( "StandardGDBDebuggerPage.8" ) ); //$NON-NLS-1$
- String gdbCommand = fGDBInitText.getText().trim();
- int lastSeparatorIndex = gdbCommand.lastIndexOf( File.separator );
- if ( lastSeparatorIndex != -1 ) {
- dialog.setFilterPath( gdbCommand.substring( 0, lastSeparatorIndex ) );
- }
- String res = dialog.open();
- if ( res == null ) {
- return;
- }
- fGDBInitText.setText( res );
- }
- } );
- label = ControlFactory.createLabel( subComp, MIUIMessages.getString( "StandardGDBDebuggerPage.9" ), //$NON-NLS-1$
- 200, SWT.DEFAULT, SWT.WRAP );
- gd = new GridData( GridData.FILL_HORIZONTAL );
- gd.horizontalSpan = 3;
- gd.widthHint = 200;
- label.setLayoutData( gd );
-
- Composite options = ControlFactory.createCompositeEx( subComp, 2, GridData.FILL_HORIZONTAL );
- gd = new GridData( GridData.FILL_HORIZONTAL );
- gd.horizontalSpan = 3;
- options.setLayoutData( gd );
- createCommandFactoryCombo( options );
- createProtocolCombo( options );
- createVerboseModeButton( subComp );
- }
-
- public void createSolibTab( TabFolder tabFolder ) {
- TabItem tabItem = new TabItem( tabFolder, SWT.NONE );
- tabItem.setText( MIUIMessages.getString( "StandardGDBDebuggerPage.10" ) ); //$NON-NLS-1$
- Composite comp = ControlFactory.createCompositeEx( fTabFolder, 1, GridData.FILL_BOTH );
- comp.setFont( tabFolder.getFont() );
- tabItem.setControl( comp );
- fSolibBlock = createSolibBlock( comp );
- if ( fSolibBlock instanceof Observable )
- ((Observable)fSolibBlock).addObserver( this );
- }
-
- /*
- * (non-Javadoc)
- *
- * @see org.eclipse.debug.ui.ILaunchConfigurationTab#dispose()
- */
- public void dispose() {
- if ( fSolibBlock != null ) {
- if ( fSolibBlock instanceof Observable )
- ((Observable)fSolibBlock).deleteObserver( this );
- fSolibBlock.dispose();
- }
- super.dispose();
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.debug.ui.ILaunchConfigurationTab#activated(org.eclipse.debug.core.ILaunchConfigurationWorkingCopy)
- */
- public void activated( ILaunchConfigurationWorkingCopy workingCopy ) {
- // Override the default behavior
- }
-
- protected boolean isInitializing() {
- return fIsInitializing;
- }
-
- private void setInitializing( boolean isInitializing ) {
- fIsInitializing = isInitializing;
- }
-
- protected void createCommandFactoryCombo( Composite parent ) {
- Label label = new Label( parent, SWT.NONE );
- label.setText( MIUIMessages.getString( "StandardGDBDebuggerPage.12" ) ); //$NON-NLS-1$
- fCommandFactoryCombo = new Combo( parent, SWT.READ_ONLY | SWT.DROP_DOWN );
- fCommandFactoryCombo.addSelectionListener( new SelectionListener() {
-
- public void widgetDefaultSelected( SelectionEvent e ) {
- if ( !isInitializing() )
- updateLaunchConfigurationDialog();
- }
-
- public void widgetSelected( SelectionEvent e ) {
- if ( !isInitializing() )
- updateLaunchConfigurationDialog();
- }
- } );
- }
-
- protected void createProtocolCombo( Composite parent ) {
- Label label = new Label( parent, SWT.NONE );
- label.setText( MIUIMessages.getString( "StandardGDBDebuggerPage.11" ) ); //$NON-NLS-1$
- fProtocolCombo = new Combo( parent, SWT.READ_ONLY | SWT.DROP_DOWN );
- fProtocolCombo.addSelectionListener( new SelectionListener() {
-
- public void widgetDefaultSelected( SelectionEvent e ) {
- if ( !isInitializing() )
- updateLaunchConfigurationDialog();
- }
-
- public void widgetSelected( SelectionEvent e ) {
- if ( !isInitializing() )
- updateLaunchConfigurationDialog();
- }
- } );
- }
-
- protected String getCurrentCommandFactoryID() {
- String name = fCommandFactoryCombo.getText();
- for ( int i = 0; i < fCommandFactoryDescriptors.length; ++i ) {
- if ( fCommandFactoryDescriptors[i].getName().equals( name ) ) {
- return fCommandFactoryDescriptors[i].getIdentifier();
- }
- }
- return ""; //$NON-NLS-1$
- }
-
- protected void createVerboseModeButton( Composite parent ) {
- fVerboseModeButton = createCheckButton( parent, MIUIMessages.getString( "StandardGDBDebuggerPage.13" ) ); //$NON-NLS-1$
- fVerboseModeButton.addSelectionListener( new SelectionListener() {
-
- public void widgetDefaultSelected( SelectionEvent e ) {
- if ( !isInitializing() )
- updateLaunchConfigurationDialog();
- }
-
- public void widgetSelected( SelectionEvent e ) {
- if ( !isInitializing() )
- updateLaunchConfigurationDialog();
- }
- } );
- }
-}
diff --git a/debug/org.eclipse.cdt.debug.mi.ui/src/org/eclipse/cdt/debug/mi/internal/ui/TCPSettingsBlock.java b/debug/org.eclipse.cdt.debug.mi.ui/src/org/eclipse/cdt/debug/mi/internal/ui/TCPSettingsBlock.java
deleted file mode 100644
index cd143f71f9c..00000000000
--- a/debug/org.eclipse.cdt.debug.mi.ui/src/org/eclipse/cdt/debug/mi/internal/ui/TCPSettingsBlock.java
+++ /dev/null
@@ -1,197 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.cdt.debug.mi.internal.ui;
-
-import java.util.Observable;
-import org.eclipse.cdt.debug.mi.core.IGDBServerMILaunchConfigurationConstants;
-import org.eclipse.cdt.debug.mi.internal.ui.dialogfields.DialogField;
-import org.eclipse.cdt.debug.mi.internal.ui.dialogfields.IDialogFieldListener;
-import org.eclipse.cdt.debug.mi.internal.ui.dialogfields.LayoutUtil;
-import org.eclipse.cdt.debug.mi.internal.ui.dialogfields.StringDialogField;
-import org.eclipse.cdt.utils.ui.controls.ControlFactory;
-import org.eclipse.core.runtime.CoreException;
-import org.eclipse.debug.core.ILaunchConfiguration;
-import org.eclipse.debug.core.ILaunchConfigurationWorkingCopy;
-import org.eclipse.swt.layout.GridData;
-import org.eclipse.swt.layout.GridLayout;
-import org.eclipse.swt.widgets.Composite;
-import org.eclipse.swt.widgets.Control;
-import org.eclipse.swt.widgets.Shell;
-
-public class TCPSettingsBlock extends Observable {
-
- private final static String DEFAULT_HOST_NAME = "localhost"; //$NON-NLS-1$
-
- private final static String DEFAULT_PORT_NUMBER = "10000"; //$NON-NLS-1$
-
- private Shell fShell;
-
- private StringDialogField fHostNameField;
-
- private StringDialogField fPortNumberField;
-
- private Control fControl;
-
- private String fErrorMessage = null;
-
- public TCPSettingsBlock() {
- super();
- fHostNameField = createHostNameField();
- fPortNumberField = createPortNumberField();
- }
-
- public void createBlock( Composite parent ) {
- fShell = parent.getShell();
- Composite comp = ControlFactory.createCompositeEx( parent, 2, GridData.FILL_BOTH );
- ((GridLayout)comp.getLayout()).makeColumnsEqualWidth = false;
- ((GridLayout)comp.getLayout()).marginHeight = 0;
- ((GridLayout)comp.getLayout()).marginWidth = 0;
- comp.setFont( parent.getFont() );
- PixelConverter converter = new PixelConverter( comp );
- fHostNameField.doFillIntoGrid( comp, 2 );
- LayoutUtil.setWidthHint( fHostNameField.getTextControl( null ), converter.convertWidthInCharsToPixels( 20 ) );
- fPortNumberField.doFillIntoGrid( comp, 2 );
- ((GridData)fPortNumberField.getTextControl( null ).getLayoutData()).horizontalAlignment = GridData.BEGINNING;
- LayoutUtil.setWidthHint( fPortNumberField.getTextControl( null ), converter.convertWidthInCharsToPixels( 10 ) );
- setControl( comp );
- }
-
- protected Shell getShell() {
- return fShell;
- }
-
- public void dispose() {
- deleteObservers();
- }
-
- public void initializeFrom( ILaunchConfiguration configuration ) {
- initializeHostName( configuration );
- initializePortNumber( configuration );
- }
-
- public void setDefaults( ILaunchConfigurationWorkingCopy configuration ) {
- configuration.setAttribute( IGDBServerMILaunchConfigurationConstants.ATTR_HOST, DEFAULT_HOST_NAME );
- configuration.setAttribute( IGDBServerMILaunchConfigurationConstants.ATTR_PORT, DEFAULT_PORT_NUMBER );
- }
-
- public void performApply( ILaunchConfigurationWorkingCopy configuration ) {
- if ( fHostNameField != null )
- configuration.setAttribute( IGDBServerMILaunchConfigurationConstants.ATTR_HOST, fHostNameField.getText().trim() );
- if ( fPortNumberField != null )
- configuration.setAttribute( IGDBServerMILaunchConfigurationConstants.ATTR_PORT, fPortNumberField.getText().trim() );
- }
-
- private StringDialogField createHostNameField() {
- StringDialogField field = new StringDialogField();
- field.setLabelText( MIUIMessages.getString( "TCPSettingsBlock.0" ) ); //$NON-NLS-1$
- field.setDialogFieldListener( new IDialogFieldListener() {
-
- public void dialogFieldChanged( DialogField f ) {
- hostNameFieldChanged();
- }
- } );
- return field;
- }
-
- private StringDialogField createPortNumberField() {
- StringDialogField field = new StringDialogField();
- field.setLabelText( MIUIMessages.getString( "TCPSettingsBlock.1" ) ); //$NON-NLS-1$
- field.setDialogFieldListener( new IDialogFieldListener() {
-
- public void dialogFieldChanged( DialogField f ) {
- portNumberFieldChanged();
- }
- } );
- return field;
- }
-
- protected void hostNameFieldChanged() {
- updateErrorMessage();
- setChanged();
- notifyObservers();
- }
-
- protected void portNumberFieldChanged() {
- updateErrorMessage();
- setChanged();
- notifyObservers();
- }
-
- private void initializeHostName( ILaunchConfiguration configuration ) {
- if ( fHostNameField != null ) {
- try {
- fHostNameField.setText( configuration.getAttribute( IGDBServerMILaunchConfigurationConstants.ATTR_HOST, DEFAULT_HOST_NAME ) );
- }
- catch( CoreException e ) {
- }
- }
- }
-
- private void initializePortNumber( ILaunchConfiguration configuration ) {
- if ( fPortNumberField != null ) {
- try {
- fPortNumberField.setText( configuration.getAttribute( IGDBServerMILaunchConfigurationConstants.ATTR_PORT, DEFAULT_PORT_NUMBER ) );
- }
- catch( CoreException e ) {
- }
- }
- }
-
- public Control getControl() {
- return fControl;
- }
-
- protected void setControl( Control control ) {
- fControl = control;
- }
-
- public boolean isValid( ILaunchConfiguration configuration ) {
- updateErrorMessage();
- return (getErrorMessage() == null);
- }
-
- private void updateErrorMessage() {
- setErrorMessage( null );
- if ( fHostNameField != null && fPortNumberField != null ) {
- if ( fHostNameField.getText().trim().length() == 0 )
- setErrorMessage( MIUIMessages.getString( "TCPSettingsBlock.2" ) ); //$NON-NLS-1$
- else if ( !hostNameIsValid( fHostNameField.getText().trim() ) )
- setErrorMessage( MIUIMessages.getString( "TCPSettingsBlock.3" ) ); //$NON-NLS-1$
- else if ( fPortNumberField.getText().trim().length() == 0 )
- setErrorMessage( MIUIMessages.getString( "TCPSettingsBlock.4" ) ); //$NON-NLS-1$
- else if ( !portNumberIsValid( fPortNumberField.getText().trim() ) )
- setErrorMessage( MIUIMessages.getString( "TCPSettingsBlock.5" ) ); //$NON-NLS-1$
- }
- }
-
- public String getErrorMessage() {
- return fErrorMessage;
- }
-
- private void setErrorMessage( String string ) {
- fErrorMessage = string;
- }
-
- private boolean hostNameIsValid( String hostName ) {
- return true;
- }
-
- private boolean portNumberIsValid( String portNumber ) {
- try {
- int port = Integer.parseInt( portNumber );
- return ( port > 0 && port <= 0xFFFF );
- }
- catch( NumberFormatException e ) {
- return false;
- }
- }
-}
diff --git a/debug/org.eclipse.cdt.debug.mi.ui/src/org/eclipse/cdt/debug/mi/internal/ui/actions/ActionMessages.java b/debug/org.eclipse.cdt.debug.mi.ui/src/org/eclipse/cdt/debug/mi/internal/ui/actions/ActionMessages.java
deleted file mode 100644
index 88b4e5ba22b..00000000000
--- a/debug/org.eclipse.cdt.debug.mi.ui/src/org/eclipse/cdt/debug/mi/internal/ui/actions/ActionMessages.java
+++ /dev/null
@@ -1,33 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.mi.internal.ui.actions;
-
-import java.util.MissingResourceException;
-import java.util.ResourceBundle;
-
-public class ActionMessages {
-
- private static final String BUNDLE_NAME = "org.eclipse.cdt.debug.mi.internal.ui.actions.ActionMessages";//$NON-NLS-1$
-
- private static final ResourceBundle RESOURCE_BUNDLE = ResourceBundle.getBundle( BUNDLE_NAME );
-
- private ActionMessages() {
- }
-
- public static String getString( String key ) {
- try {
- return RESOURCE_BUNDLE.getString( key );
- }
- catch( MissingResourceException e ) {
- return '!' + key + '!';
- }
- }
-}
diff --git a/debug/org.eclipse.cdt.debug.mi.ui/src/org/eclipse/cdt/debug/mi/internal/ui/actions/ActionMessages.properties b/debug/org.eclipse.cdt.debug.mi.ui/src/org/eclipse/cdt/debug/mi/internal/ui/actions/ActionMessages.properties
deleted file mode 100644
index 5dd0f84d4fe..00000000000
--- a/debug/org.eclipse.cdt.debug.mi.ui/src/org/eclipse/cdt/debug/mi/internal/ui/actions/ActionMessages.properties
+++ /dev/null
@@ -1,13 +0,0 @@
-###############################################################################
-# Copyright (c) 2003, 2006 QNX Software Systems and others.
-# All rights reserved. This program and the accompanying materials
-# are made available under the terms of the Eclipse Public License v1.0
-# which accompanies this distribution, and is available at
-# http://www.eclipse.org/legal/epl-v10.html
-#
-# Contributors:
-# QNX Software Systems - initial API and implementation
-###############################################################################
-
-SetAutoSolibActionDelegate.0=Exceptions occurred attempting to set 'Automatically Load Symbols' mode.
-SetAutoSolibActionDelegate.1=Set 'Automatically Load Symbols' mode failed.
diff --git a/debug/org.eclipse.cdt.debug.mi.ui/src/org/eclipse/cdt/debug/mi/internal/ui/actions/SetAutoSolibActionDelegate.java b/debug/org.eclipse.cdt.debug.mi.ui/src/org/eclipse/cdt/debug/mi/internal/ui/actions/SetAutoSolibActionDelegate.java
deleted file mode 100644
index 167ebf1d17e..00000000000
--- a/debug/org.eclipse.cdt.debug.mi.ui/src/org/eclipse/cdt/debug/mi/internal/ui/actions/SetAutoSolibActionDelegate.java
+++ /dev/null
@@ -1,261 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.mi.internal.ui.actions;
-
-import org.eclipse.cdt.debug.core.cdi.CDIException;
-import org.eclipse.cdt.debug.core.cdi.ICDISession;
-import org.eclipse.cdt.debug.core.cdi.model.ICDITarget;
-import org.eclipse.cdt.debug.mi.core.MIPlugin;
-import org.eclipse.cdt.debug.mi.core.cdi.Session;
-import org.eclipse.cdt.debug.mi.core.cdi.SharedLibraryManager;
-import org.eclipse.cdt.debug.mi.core.cdi.model.Target;
-import org.eclipse.cdt.debug.ui.CDebugUIPlugin;
-import org.eclipse.core.runtime.IAdaptable;
-import org.eclipse.core.runtime.IStatus;
-import org.eclipse.core.runtime.Status;
-import org.eclipse.debug.core.DebugException;
-import org.eclipse.debug.core.model.IDebugElement;
-import org.eclipse.debug.ui.DebugUITools;
-import org.eclipse.debug.ui.IDebugUIConstants;
-import org.eclipse.jface.action.IAction;
-import org.eclipse.jface.viewers.ISelection;
-import org.eclipse.swt.custom.BusyIndicator;
-import org.eclipse.swt.widgets.Display;
-import org.eclipse.ui.IPartListener;
-import org.eclipse.ui.ISelectionListener;
-import org.eclipse.ui.IViewActionDelegate;
-import org.eclipse.ui.IViewPart;
-import org.eclipse.ui.IWorkbenchPart;
-import org.eclipse.ui.IWorkbenchWindow;
-
-/**
- * The delegate for the "Automatically Load Symbols" action.
- */
-public class SetAutoSolibActionDelegate implements IViewActionDelegate, ISelectionListener, IPartListener {
-
- private IViewPart fView = null;
-
- private IAction fAction;
-
- private IStatus fStatus = null;
-
- /**
- * Constructor for SetAutoSolibActionDelegate.
- */
- public SetAutoSolibActionDelegate() {
- super();
- }
-
- /*
- * (non-Javadoc)
- *
- * @see org.eclipse.ui.IViewActionDelegate#init(IViewPart)
- */
- public void init( IViewPart view ) {
- fView = view;
- view.getSite().getPage().addPartListener( this );
- view.getSite().getPage().addSelectionListener( IDebugUIConstants.ID_DEBUG_VIEW, this );
- }
-
- /*
- * (non-Javadoc)
- *
- * @see org.eclipse.ui.ISelectionListener#selectionChanged(IWorkbenchPart, ISelection)
- */
- public void selectionChanged( IWorkbenchPart part, ISelection selection ) {
- if ( part.getSite().getId().equals( IDebugUIConstants.ID_DEBUG_VIEW ) ) {
- update( getAction() );
- }
- }
-
- /*
- * (non-Javadoc)
- *
- * @see org.eclipse.ui.IActionDelegate#run(IAction)
- */
- public void run( IAction action ) {
- BusyIndicator.showWhile( Display.getCurrent(), new Runnable() {
-
- public void run() {
- try {
- doAction( DebugUITools.getDebugContext() );
- setStatus( null );
- }
- catch( DebugException e ) {
- setStatus( e.getStatus() );
- }
- }
- } );
- if ( getStatus() != null && !getStatus().isOK() ) {
- IWorkbenchWindow window = CDebugUIPlugin.getActiveWorkbenchWindow();
- if ( window != null ) {
- CDebugUIPlugin.errorDialog( getErrorDialogMessage(), getStatus() );
- }
- else {
- CDebugUIPlugin.log( getStatus() );
- }
- }
- update( action );
- }
-
- /*
- * (non-Javadoc)
- *
- * @see org.eclipse.ui.IActionDelegate#selectionChanged(IAction, ISelection)
- */
- public void selectionChanged( IAction action, ISelection selection ) {
- setAction( action );
- if ( getView() != null ) {
- update( action );
- }
- }
-
- protected void update( IAction action ) {
- if ( action != null ) {
- IAdaptable element = DebugUITools.getDebugContext();
- action.setEnabled( getEnableStateForSelection( element ) );
- action.setChecked( getCheckStateForSelection( element ) );
- }
- }
-
- /*
- * (non-Javadoc)
- *
- * @see org.eclipse.ui.IPartListener#partActivated(IWorkbenchPart)
- */
- public void partActivated( IWorkbenchPart part ) {
- }
-
- /*
- * (non-Javadoc)
- *
- * @see org.eclipse.ui.IPartListener#partBroughtToTop(IWorkbenchPart)
- */
- public void partBroughtToTop( IWorkbenchPart part ) {
- }
-
- /*
- * (non-Javadoc)
- *
- * @see org.eclipse.ui.IPartListener#partClosed(IWorkbenchPart)
- */
- public void partClosed( IWorkbenchPart part ) {
- if ( part.equals( getView() ) ) {
- dispose();
- }
- }
-
- /*
- * (non-Javadoc)
- *
- * @see org.eclipse.ui.IPartListener#partDeactivated(IWorkbenchPart)
- */
- public void partDeactivated( IWorkbenchPart part ) {
- }
-
- /*
- * (non-Javadoc)
- *
- * @see org.eclipse.ui.IPartListener#partOpened(IWorkbenchPart)
- */
- public void partOpened( IWorkbenchPart part ) {
- }
-
- protected IViewPart getView() {
- return fView;
- }
-
- protected void setView( IViewPart viewPart ) {
- fView = viewPart;
- }
-
- protected void setAction( IAction action ) {
- fAction = action;
- }
-
- protected IAction getAction() {
- return fAction;
- }
-
- protected void dispose() {
- if ( getView() != null ) {
- getView().getViewSite().getPage().removeSelectionListener( IDebugUIConstants.ID_DEBUG_VIEW, this );
- getView().getViewSite().getPage().removePartListener( this );
- }
- }
-
- protected boolean getCheckStateForSelection( IAdaptable element ) {
- SharedLibraryManager slm = getSharedLibraryManager( element );
- Target target = getTarget(element);
- if ( slm != null && target != null) {
- try {
- return slm.isAutoLoadSymbols(target);
- } catch( CDIException e ) {
- }
- }
- return false;
- }
-
- protected boolean getEnableStateForSelection( IAdaptable element ) {
- return (element instanceof IDebugElement && ((IDebugElement)element).getDebugTarget().isSuspended() && getSharedLibraryManager( element ) != null);
- }
-
- protected String getStatusMessage() {
- return ActionMessages.getString( "SetAutoSolibActionDelegate.0" ); //$NON-NLS-1$
- }
-
- protected String getErrorDialogMessage() {
- return ActionMessages.getString( "SetAutoSolibActionDelegate.1" ); //$NON-NLS-1$
- }
-
- protected void setStatus( IStatus status ) {
- fStatus = status;
- }
-
- protected IStatus getStatus() {
- return fStatus;
- }
-
- protected void doAction( IAdaptable element ) throws DebugException {
- if ( getView() == null )
- return;
- SharedLibraryManager slm = getSharedLibraryManager( element );
- Target target = getTarget(element);
- if ( slm != null && target != null && getAction() != null ) {
- try {
- slm.setAutoLoadSymbols( target, getAction().isChecked() );
- }
- catch( CDIException e ) {
- getAction().setChecked( !getAction().isChecked() );
- throw new DebugException( new Status( IStatus.ERROR, MIPlugin.getUniqueIdentifier(), DebugException.TARGET_REQUEST_FAILED, e.getMessage(), null ) );
- }
- }
- }
-
- private SharedLibraryManager getSharedLibraryManager( IAdaptable element ) {
- if ( element != null ) {
- ICDISession session = (ICDISession)element.getAdapter( ICDISession.class );
- if ( session instanceof Session )
- return ((Session)session).getSharedLibraryManager();
- }
- return null;
- }
-
- private Target getTarget( IAdaptable element ) {
- if (element != null) {
- ICDITarget target = (ICDITarget)element.getAdapter( ICDITarget.class );
- if (target instanceof Target) {
- return (Target)target;
- }
- }
- return null;
- }
-}
diff --git a/debug/org.eclipse.cdt.debug.mi.ui/src/org/eclipse/cdt/debug/mi/internal/ui/actions/VerboseModeActionDelegate.java b/debug/org.eclipse.cdt.debug.mi.ui/src/org/eclipse/cdt/debug/mi/internal/ui/actions/VerboseModeActionDelegate.java
deleted file mode 100644
index 944308f4b05..00000000000
--- a/debug/org.eclipse.cdt.debug.mi.ui/src/org/eclipse/cdt/debug/mi/internal/ui/actions/VerboseModeActionDelegate.java
+++ /dev/null
@@ -1,53 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.mi.internal.ui.actions;
-
-import org.eclipse.cdt.debug.mi.core.GDBProcess;
-import org.eclipse.cdt.debug.mi.ui.console.VerboseModeChangedEvent;
-import org.eclipse.jface.action.IAction;
-import org.eclipse.jface.viewers.ISelection;
-import org.eclipse.jface.viewers.IStructuredSelection;
-import org.eclipse.ui.IObjectActionDelegate;
-import org.eclipse.ui.IWorkbenchPart;
-import org.eclipse.ui.actions.ActionDelegate;
-
-public class VerboseModeActionDelegate extends ActionDelegate implements IObjectActionDelegate {
-
- private GDBProcess fProcess;
-
- /* (non-Javadoc)
- * @see org.eclipse.ui.IObjectActionDelegate#setActivePart(org.eclipse.jface.action.IAction, org.eclipse.ui.IWorkbenchPart)
- */
- public void setActivePart( IAction action, IWorkbenchPart targetPart ) {
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.ui.actions.ActionDelegate#run(org.eclipse.jface.action.IAction)
- */
- public void run( IAction action ) {
- if ( fProcess != null ) {
- boolean enabled = fProcess.getTarget().isVerboseModeEnabled();
- fProcess.getTarget().enableVerboseMode( !enabled );
- fProcess.getTarget().getMISession().notifyObservers(new VerboseModeChangedEvent(fProcess.getTarget().getMISession(),0));
- }
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.ui.actions.ActionDelegate#selectionChanged(org.eclipse.jface.action.IAction, org.eclipse.jface.viewers.ISelection)
- */
- public void selectionChanged( IAction action, ISelection selection ) {
- IStructuredSelection s = (IStructuredSelection)selection;
- fProcess = ( !s.isEmpty() ) ? (GDBProcess)s.getFirstElement() : null;
- action.setEnabled( fProcess != null && !fProcess.isTerminated());
- action.setChecked( fProcess != null && fProcess.getTarget().isVerboseModeEnabled() );
- }
-
-}
diff --git a/debug/org.eclipse.cdt.debug.mi.ui/src/org/eclipse/cdt/debug/mi/internal/ui/dialogfields/CheckedListDialogField.java b/debug/org.eclipse.cdt.debug.mi.ui/src/org/eclipse/cdt/debug/mi/internal/ui/dialogfields/CheckedListDialogField.java
deleted file mode 100644
index a48277cafcc..00000000000
--- a/debug/org.eclipse.cdt.debug.mi.ui/src/org/eclipse/cdt/debug/mi/internal/ui/dialogfields/CheckedListDialogField.java
+++ /dev/null
@@ -1,222 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.mi.internal.ui.dialogfields;
-
-import java.util.ArrayList;
-import java.util.List;
-
-import org.eclipse.jface.util.Assert;
-import org.eclipse.jface.viewers.CheckStateChangedEvent;
-import org.eclipse.jface.viewers.CheckboxTableViewer;
-import org.eclipse.jface.viewers.ICheckStateListener;
-import org.eclipse.jface.viewers.ILabelProvider;
-import org.eclipse.jface.viewers.ISelection;
-import org.eclipse.jface.viewers.TableViewer;
-import org.eclipse.swt.SWT;
-import org.eclipse.swt.widgets.Composite;
-import org.eclipse.swt.widgets.Control;
-import org.eclipse.swt.widgets.Table;
-
-/**
- * A list with checkboxes and a button bar. Typical buttons are 'Check All' and 'Uncheck All'.
- * List model is independend of widget creation.
- * DialogFields controls are: Label, List and Composite containing buttons.
- */
-public class CheckedListDialogField extends ListDialogField {
-
- private int fCheckAllButtonIndex;
- private int fUncheckAllButtonIndex;
-
- private List fCheckElements;
-
- public CheckedListDialogField(IListAdapter adapter, String[] customButtonLabels, ILabelProvider lprovider) {
- super(adapter, customButtonLabels, lprovider);
- fCheckElements= new ArrayList();
-
- fCheckAllButtonIndex= -1;
- fUncheckAllButtonIndex= -1;
- }
-
- /**
- * Sets the index of the 'check' button in the button label array passed in the constructor.
- * The behaviour of the button marked as the check button will then be handled internally.
- * (enable state, button invocation behaviour)
- */
- public void setCheckAllButtonIndex(int checkButtonIndex) {
- Assert.isTrue(checkButtonIndex < fButtonLabels.length);
- fCheckAllButtonIndex= checkButtonIndex;
- }
-
- /**
- * Sets the index of the 'uncheck' button in the button label array passed in the constructor.
- * The behaviour of the button marked as the uncheck button will then be handled internally.
- * (enable state, button invocation behaviour)
- */
- public void setUncheckAllButtonIndex(int uncheckButtonIndex) {
- Assert.isTrue(uncheckButtonIndex < fButtonLabels.length);
- fUncheckAllButtonIndex= uncheckButtonIndex;
- }
-
-
- /*
- * @see ListDialogField#createTableViewer
- */
- protected TableViewer createTableViewer(Composite parent) {
- Table table= new Table(parent, SWT.CHECK + getListStyle());
- CheckboxTableViewer tableViewer= new CheckboxTableViewer(table);
- tableViewer.addCheckStateListener(new ICheckStateListener() {
- public void checkStateChanged(CheckStateChangedEvent e) {
- doCheckStateChanged(e);
- }
- });
- return tableViewer;
- }
-
-
- /*
- * @see ListDialogField#getListControl
- */
- public Control getListControl(Composite parent) {
- Control control= super.getListControl(parent);
- if (parent != null) {
- ((CheckboxTableViewer)fTable).setCheckedElements(fCheckElements.toArray());
- }
- return control;
- }
-
- /*
- * @see DialogField#dialogFieldChanged
- * Hooks in to get element changes to update check model.
- */
- public void dialogFieldChanged() {
- for (int i= fCheckElements.size() -1; i >= 0; i--) {
- if (!fElements.contains(fCheckElements.get(i))) {
- fCheckElements.remove(i);
- }
- }
- super.dialogFieldChanged();
- }
-
- private void checkStateChanged() {
- //call super and do not update check model
- super.dialogFieldChanged();
- }
-
- /**
- * Gets the checked elements.
- */
- public List getCheckedElements() {
- return new ArrayList(fCheckElements);
- }
-
- /**
- * Returns true if the element is checked.
- */
- public boolean isChecked(Object obj) {
- return fCheckElements.contains(obj);
- }
-
- /**
- * Sets the checked elements.
- */
- public void setCheckedElements(List list) {
- fCheckElements= new ArrayList(list);
- if (fTable != null) {
- ((CheckboxTableViewer)fTable).setCheckedElements(list.toArray());
- }
- checkStateChanged();
- }
-
- /**
- * Sets the checked state of an element.
- */
- public void setChecked(Object object, boolean state) {
- setCheckedWithoutUpdate(object, state);
- checkStateChanged();
- }
-
- /**
- * Sets the checked state of an element. no dialog changed listener informed
- */
- public void setCheckedWithoutUpdate(Object object, boolean state) {
- if (state) {
- if (!fCheckElements.contains(object)) {
- fCheckElements.add(object);
- }
- }
- else {
- if (fCheckElements.contains(object)) {
- fCheckElements.remove(object);
- }
- }
- if (fTable != null) {
- ((CheckboxTableViewer)fTable).setChecked(object, state);
- }
- }
-
- /**
- * Sets the check state of all elements
- */
- public void checkAll(boolean state) {
- if (state) {
- fCheckElements= getElements();
- } else {
- fCheckElements.clear();
- }
- if (fTable != null) {
- ((CheckboxTableViewer)fTable).setAllChecked(state);
- }
- checkStateChanged();
- }
-
-
- protected void doCheckStateChanged(CheckStateChangedEvent e) {
- if (e.getChecked()) {
- fCheckElements.add(e.getElement());
- } else {
- fCheckElements.remove(e.getElement());
- }
- checkStateChanged();
- }
-
- // ------ enable / disable management
-
- /*
- * @see ListDialogField#getManagedButtonState
- */
- protected boolean getManagedButtonState(ISelection sel, int index) {
- if (index == fCheckAllButtonIndex) {
- return !fElements.isEmpty();
- } else if (index == fUncheckAllButtonIndex) {
- return !fElements.isEmpty();
- }
- return super.getManagedButtonState(sel, index);
- }
-
- /*
- * @see ListDialogField#extraButtonPressed
- */
- protected boolean managedButtonPressed(int index) {
- if (index == fCheckAllButtonIndex) {
- checkAll(true);
- } else if (index == fUncheckAllButtonIndex) {
- checkAll(false);
- } else {
- return super.managedButtonPressed(index);
- }
- return true;
- }
-
-
-
-
-
-} \ No newline at end of file
diff --git a/debug/org.eclipse.cdt.debug.mi.ui/src/org/eclipse/cdt/debug/mi/internal/ui/dialogfields/ComboDialogField.java b/debug/org.eclipse.cdt.debug.mi.ui/src/org/eclipse/cdt/debug/mi/internal/ui/dialogfields/ComboDialogField.java
deleted file mode 100644
index e4be6c8267f..00000000000
--- a/debug/org.eclipse.cdt.debug.mi.ui/src/org/eclipse/cdt/debug/mi/internal/ui/dialogfields/ComboDialogField.java
+++ /dev/null
@@ -1,226 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.mi.internal.ui.dialogfields;
-
-import org.eclipse.swt.events.ModifyEvent;
-import org.eclipse.swt.events.ModifyListener;
-import org.eclipse.swt.events.SelectionEvent;
-import org.eclipse.swt.events.SelectionListener;
-import org.eclipse.swt.layout.GridData;
-import org.eclipse.swt.widgets.Combo;
-import org.eclipse.swt.widgets.Composite;
-import org.eclipse.swt.widgets.Control;
-import org.eclipse.swt.widgets.Label;
-
-/**
- * Dialog field containing a label and a combo control.
- */
-public class ComboDialogField extends DialogField {
-
- private String fText;
- private int fSelectionIndex;
- private String[] fItems;
- private Combo fComboControl;
- private ModifyListener fModifyListener;
- private int fFlags;
-
- public ComboDialogField(int flags) {
- super();
- fText= ""; //$NON-NLS-1$
- fItems= new String[0];
- fFlags= flags;
- fSelectionIndex= -1;
- }
-
- // ------- layout helpers
-
- /*
- * @see DialogField#doFillIntoGrid
- */
- public Control[] doFillIntoGrid(Composite parent, int nColumns) {
- assertEnoughColumns(nColumns);
-
- Label label= getLabelControl(parent);
- label.setLayoutData(gridDataForLabel(1));
- Combo combo= getComboControl(parent);
- combo.setLayoutData(gridDataForCombo(nColumns - 1));
-
- return new Control[] { label, combo };
- }
-
- /*
- * @see DialogField#getNumberOfControls
- */
- public int getNumberOfControls() {
- return 2;
- }
-
- protected static GridData gridDataForCombo(int span) {
- GridData gd= new GridData();
- gd.horizontalAlignment= GridData.FILL;
- gd.grabExcessHorizontalSpace= false;
- gd.horizontalSpan= span;
- return gd;
- }
-
- // ------- focus methods
-
- /*
- * @see DialogField#setFocus
- */
- public boolean setFocus() {
- if (isOkToUse(fComboControl)) {
- fComboControl.setFocus();
- }
- return true;
- }
-
- // ------- ui creation
-
- /**
- * Creates or returns the created combo control.
- * @param parent The parent composite or <code>null</code> when the widget has
- * already been created.
- */
- public Combo getComboControl(Composite parent) {
- if (fComboControl == null) {
- assertCompositeNotNull(parent);
- fModifyListener= new ModifyListener() {
- public void modifyText(ModifyEvent e) {
- doModifyText(e);
- }
- };
- SelectionListener selectionListener= new SelectionListener() {
- public void widgetSelected(SelectionEvent e) {
- doSelectionChanged(e);
- }
-
- public void widgetDefaultSelected(SelectionEvent e) {
- }
- };
-
- fComboControl= new Combo(parent, fFlags);
- // moved up due to 1GEUNW2
- fComboControl.setItems(fItems);
- if (fSelectionIndex != -1) {
- fComboControl.select(fSelectionIndex);
- } else {
- fComboControl.setText(fText);
- }
- fComboControl.setFont(parent.getFont());
- fComboControl.addModifyListener(fModifyListener);
- fComboControl.addSelectionListener(selectionListener);
- fComboControl.setEnabled(isEnabled());
- }
- return fComboControl;
- }
-
- protected void doModifyText(ModifyEvent e) {
- if (isOkToUse(fComboControl)) {
- fText= fComboControl.getText();
- fSelectionIndex= fComboControl.getSelectionIndex();
- }
- dialogFieldChanged();
- }
-
- protected void doSelectionChanged(SelectionEvent e) {
- if (isOkToUse(fComboControl)) {
- fItems= fComboControl.getItems();
- fText= fComboControl.getText();
- fSelectionIndex= fComboControl.getSelectionIndex();
- }
- dialogFieldChanged();
- }
-
- // ------ enable / disable management
-
- /*
- * @see DialogField#updateEnableState
- */
- protected void updateEnableState() {
- super.updateEnableState();
- if (isOkToUse(fComboControl)) {
- fComboControl.setEnabled(isEnabled());
- }
- }
-
- // ------ text access
-
- /**
- * Gets the combo items.
- */
- public String[] getItems() {
- return fItems;
- }
-
- /**
- * Sets the combo items. Triggers a dialog-changed event.
- */
- public void setItems(String[] items) {
- fItems= items;
- if (isOkToUse(fComboControl)) {
- fComboControl.setItems(items);
- }
- dialogFieldChanged();
- }
-
- /**
- * Gets the text.
- */
- public String getText() {
- return fText;
- }
-
- /**
- * Sets the text. Triggers a dialog-changed event.
- */
- public void setText(String text) {
- fText= text;
- if (isOkToUse(fComboControl)) {
- fComboControl.setText(text);
- } else {
- dialogFieldChanged();
- }
- }
-
- /**
- * Selects an item.
- */
- public void selectItem(int index) {
- if (isOkToUse(fComboControl)) {
- fComboControl.select(index);
- } else {
- if (index >= 0 && index < fItems.length) {
- fText= fItems[index];
- fSelectionIndex= index;
- }
- }
- dialogFieldChanged();
- }
-
- public int getSelectionIndex() {
- return fSelectionIndex;
- }
-
-
- /**
- * Sets the text without triggering a dialog-changed event.
- */
- public void setTextWithoutUpdate(String text) {
- fText= text;
- if (isOkToUse(fComboControl)) {
- fComboControl.removeModifyListener(fModifyListener);
- fComboControl.setText(text);
- fComboControl.addModifyListener(fModifyListener);
- }
- }
-
-} \ No newline at end of file
diff --git a/debug/org.eclipse.cdt.debug.mi.ui/src/org/eclipse/cdt/debug/mi/internal/ui/dialogfields/DialogField.java b/debug/org.eclipse.cdt.debug.mi.ui/src/org/eclipse/cdt/debug/mi/internal/ui/dialogfields/DialogField.java
deleted file mode 100644
index 52565f414d7..00000000000
--- a/debug/org.eclipse.cdt.debug.mi.ui/src/org/eclipse/cdt/debug/mi/internal/ui/dialogfields/DialogField.java
+++ /dev/null
@@ -1,227 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.mi.internal.ui.dialogfields;
-
-import org.eclipse.jface.util.Assert;
-import org.eclipse.swt.SWT;
-import org.eclipse.swt.layout.GridData;
-import org.eclipse.swt.widgets.Composite;
-import org.eclipse.swt.widgets.Control;
-import org.eclipse.swt.widgets.Display;
-import org.eclipse.swt.widgets.Label;
-
-/**
- * Base class of all dialog fields.
- * Dialog fields manage controls together with the model, independed
- * from the creation time of the widgets.
- * - support for automated layouting.
- * - enable / disable, set focus a concept of the base class.
- *
- * DialogField have a label.
- */
-public class DialogField {
-
- private Label fLabel;
- protected String fLabelText;
-
- private IDialogFieldListener fDialogFieldListener;
-
- private boolean fEnabled;
-
- public DialogField() {
- fEnabled= true;
- fLabel= null;
- fLabelText= ""; //$NON-NLS-1$
- }
-
- /**
- * Sets the label of the dialog field.
- */
- public void setLabelText(String labeltext) {
- fLabelText= labeltext;
- }
-
- // ------ change listener
-
- /**
- * Defines the listener for this dialog field.
- */
- public final void setDialogFieldListener(IDialogFieldListener listener) {
- fDialogFieldListener= listener;
- }
-
- /**
- * Programatical invocation of a dialog field change.
- */
- public void dialogFieldChanged() {
- if (fDialogFieldListener != null) {
- fDialogFieldListener.dialogFieldChanged(this);
- }
- }
-
- // ------- focus management
-
- /**
- * Tries to set the focus to the dialog field.
- * Returns <code>true</code> if the dialog field can take focus.
- * To be reimplemented by dialog field implementors.
- */
- public boolean setFocus() {
- return false;
- }
-
- /**
- * Posts <code>setFocus</code> to the display event queue.
- */
- public void postSetFocusOnDialogField(Display display) {
- if (display != null) {
- display.asyncExec(
- new Runnable() {
- public void run() {
- setFocus();
- }
- }
- );
- }
- }
-
- // ------- layout helpers
-
- /**
- * Creates all controls of the dialog field and fills it to a composite.
- * The composite is assumed to have <code>MGridLayout</code> as
- * layout.
- * The dialog field will adjust its controls' spans to the number of columns given.
- * To be reimplemented by dialog field implementors.
- */
- public Control[] doFillIntoGrid(Composite parent, int nColumns) {
- assertEnoughColumns(nColumns);
-
- Label label= getLabelControl(parent);
- label.setLayoutData(gridDataForLabel(nColumns));
-
- return new Control[] { label };
- }
-
- /**
- * Returns the number of columns of the dialog field.
- * To be reimplemented by dialog field implementors.
- */
- public int getNumberOfControls() {
- return 1;
- }
-
- protected static GridData gridDataForLabel(int span) {
- GridData gd= new GridData(GridData.HORIZONTAL_ALIGN_FILL);
- gd.horizontalSpan= span;
- return gd;
- }
-
- // ------- ui creation
-
- /**
- * Creates or returns the created label widget.
- * @param parent The parent composite or <code>null</code> if the widget has
- * already been created.
- */
- public Label getLabelControl(Composite parent) {
- if (fLabel == null) {
- assertCompositeNotNull(parent);
-
- fLabel= new Label(parent, SWT.LEFT | SWT.WRAP);
- fLabel.setFont(parent.getFont());
- fLabel.setEnabled(fEnabled);
- if (fLabelText != null && !"".equals(fLabelText)) { //$NON-NLS-1$
- fLabel.setText(fLabelText);
- } else {
- // XXX: to avoid a 16 pixel wide empty label - revisit
- fLabel.setText("."); //$NON-NLS-1$
- fLabel.setVisible(false);
- }
- }
- return fLabel;
- }
-
- /**
- * Creates a spacer control.
- * @param parent The parent composite
- */
- public static Control createEmptySpace(Composite parent) {
- return createEmptySpace(parent, 1);
- }
-
- /**
- * Creates a spacer control with the given span.
- * The composite is assumed to have <code>MGridLayout</code> as
- * layout.
- * @param parent The parent composite
- */
- public static Control createEmptySpace(Composite parent, int span) {
- Label label= new Label(parent, SWT.LEFT);
- GridData gd= new GridData();
- gd.horizontalAlignment= GridData.BEGINNING;
- gd.grabExcessHorizontalSpace= false;
- gd.horizontalSpan= span;
- gd.horizontalIndent= 0;
- gd.widthHint= 0;
- gd.heightHint= 0;
- label.setLayoutData(gd);
- return label;
- }
-
- /**
- * Tests is the control is not <code>null</code> and not disposed.
- */
- protected final boolean isOkToUse(Control control) {
- return (control != null) && !(control.isDisposed());
- }
-
- // --------- enable / disable management
-
- /**
- * Sets the enable state of the dialog field.
- */
- public final void setEnabled(boolean enabled) {
- if (enabled != fEnabled) {
- fEnabled= enabled;
- updateEnableState();
- }
- }
-
- /**
- * Called when the enable state changed.
- * To be extended by dialog field implementors.
- */
- protected void updateEnableState() {
- if (fLabel != null) {
- fLabel.setEnabled(fEnabled);
- }
- }
-
- /**
- * Gets the enable state of the dialog field.
- */
- public final boolean isEnabled() {
- return fEnabled;
- }
-
- protected final void assertCompositeNotNull(Composite comp) {
- Assert.isNotNull(comp, "uncreated control requested with composite null"); //$NON-NLS-1$
- }
-
- protected final void assertEnoughColumns(int nColumns) {
- Assert.isTrue(nColumns >= getNumberOfControls(), "given number of columns is too small"); //$NON-NLS-1$
- }
-
-
-
-
-} \ No newline at end of file
diff --git a/debug/org.eclipse.cdt.debug.mi.ui/src/org/eclipse/cdt/debug/mi/internal/ui/dialogfields/IDialogFieldListener.java b/debug/org.eclipse.cdt.debug.mi.ui/src/org/eclipse/cdt/debug/mi/internal/ui/dialogfields/IDialogFieldListener.java
deleted file mode 100644
index f170d4ca469..00000000000
--- a/debug/org.eclipse.cdt.debug.mi.ui/src/org/eclipse/cdt/debug/mi/internal/ui/dialogfields/IDialogFieldListener.java
+++ /dev/null
@@ -1,23 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.mi.internal.ui.dialogfields;
-
-/**
- * Change listener used by <code>DialogField</code>
- */
-public interface IDialogFieldListener {
-
- /**
- * The dialog field has changed.
- */
- void dialogFieldChanged(DialogField field);
-
-} \ No newline at end of file
diff --git a/debug/org.eclipse.cdt.debug.mi.ui/src/org/eclipse/cdt/debug/mi/internal/ui/dialogfields/IListAdapter.java b/debug/org.eclipse.cdt.debug.mi.ui/src/org/eclipse/cdt/debug/mi/internal/ui/dialogfields/IListAdapter.java
deleted file mode 100644
index 7f7a841a6fc..00000000000
--- a/debug/org.eclipse.cdt.debug.mi.ui/src/org/eclipse/cdt/debug/mi/internal/ui/dialogfields/IListAdapter.java
+++ /dev/null
@@ -1,28 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.mi.internal.ui.dialogfields;
-
-/**
- * Change listener used by <code>ListDialogField</code> and <code>CheckedListDialogField</code>
- */
-public interface IListAdapter {
-
- /**
- * A button from the button bar has been pressed.
- */
- void customButtonPressed(DialogField field, int index);
-
- /**
- * The selection of the list has changed.
- */
- void selectionChanged(DialogField field);
-
-} \ No newline at end of file
diff --git a/debug/org.eclipse.cdt.debug.mi.ui/src/org/eclipse/cdt/debug/mi/internal/ui/dialogfields/IStringButtonAdapter.java b/debug/org.eclipse.cdt.debug.mi.ui/src/org/eclipse/cdt/debug/mi/internal/ui/dialogfields/IStringButtonAdapter.java
deleted file mode 100644
index b65936e45d9..00000000000
--- a/debug/org.eclipse.cdt.debug.mi.ui/src/org/eclipse/cdt/debug/mi/internal/ui/dialogfields/IStringButtonAdapter.java
+++ /dev/null
@@ -1,20 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.mi.internal.ui.dialogfields;
-
-/**
- * Change listener used by <code>StringButtonDialogField</code>
- */
-public interface IStringButtonAdapter {
-
- void changeControlPressed(DialogField field);
-
-} \ No newline at end of file
diff --git a/debug/org.eclipse.cdt.debug.mi.ui/src/org/eclipse/cdt/debug/mi/internal/ui/dialogfields/LayoutUtil.java b/debug/org.eclipse.cdt.debug.mi.ui/src/org/eclipse/cdt/debug/mi/internal/ui/dialogfields/LayoutUtil.java
deleted file mode 100644
index 963dd16cda2..00000000000
--- a/debug/org.eclipse.cdt.debug.mi.ui/src/org/eclipse/cdt/debug/mi/internal/ui/dialogfields/LayoutUtil.java
+++ /dev/null
@@ -1,140 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.mi.internal.ui.dialogfields;
-
-import org.eclipse.swt.SWT;
-import org.eclipse.swt.layout.GridData;
-import org.eclipse.swt.layout.GridLayout;
-import org.eclipse.swt.widgets.Composite;
-import org.eclipse.swt.widgets.Control;
-
-public class LayoutUtil {
-
- /**
- * Calculates the number of columns needed by field editors
- */
- public static int getNumberOfColumns(DialogField[] editors) {
- int nCulumns= 0;
- for (int i= 0; i < editors.length; i++) {
- nCulumns= Math.max(editors[i].getNumberOfControls(), nCulumns);
- }
- return nCulumns;
- }
-
- /**
- * Creates a composite and fills in the given editors.
- * @param labelOnTop Defines if the label of all fields should be on top of the fields
- */
- public static void doDefaultLayout(Composite parent, DialogField[] editors, boolean labelOnTop) {
- doDefaultLayout(parent, editors, labelOnTop, 0, 0, 0, 0);
- }
-
- /**
- * Creates a composite and fills in the given editors.
- * @param labelOnTop Defines if the label of all fields should be on top of the fields
- * @param minWidth The minimal width of the composite
- * @param minHeight The minimal height of the composite
- */
- public static void doDefaultLayout(Composite parent, DialogField[] editors, boolean labelOnTop, int minWidth, int minHeight) {
- doDefaultLayout(parent, editors, labelOnTop, minWidth, minHeight, 0, 0);
- }
-
- /**
- * Creates a composite and fills in the given editors.
- * @param labelOnTop Defines if the label of all fields should be on top of the fields
- * @param minWidth The minimal width of the composite
- * @param minHeight The minimal height of the composite
- * @param marginWidth The margin width to be used by the composite
- * @param marginHeight The margin height to be used by the composite
- * @deprecated
- */
- public static void doDefaultLayout(Composite parent, DialogField[] editors, boolean labelOnTop, int minWidth, int minHeight, int marginWidth, int marginHeight) {
- int nCulumns= getNumberOfColumns(editors);
- Control[][] controls= new Control[editors.length][];
- for (int i= 0; i < editors.length; i++) {
- controls[i]= editors[i].doFillIntoGrid(parent, nCulumns);
- }
- if (labelOnTop) {
- nCulumns--;
- modifyLabelSpans(controls, nCulumns);
- }
- GridLayout layout= new GridLayout();
- if (marginWidth != SWT.DEFAULT) {
- layout.marginWidth= marginWidth;
- }
- if (marginHeight != SWT.DEFAULT) {
- layout.marginHeight= marginHeight;
- }
- layout.numColumns= nCulumns;
- parent.setLayout(layout);
- }
-
- private static void modifyLabelSpans(Control[][] controls, int nCulumns) {
- for (int i= 0; i < controls.length; i++) {
- setHorizontalSpan(controls[i][0], nCulumns);
- }
- }
-
- /**
- * Sets the span of a control. Assumes that GridData is used.
- */
- public static void setHorizontalSpan(Control control, int span) {
- Object ld= control.getLayoutData();
- if (ld instanceof GridData) {
- ((GridData)ld).horizontalSpan= span;
- } else if (span != 1) {
- GridData gd= new GridData();
- gd.horizontalSpan= span;
- control.setLayoutData(gd);
- }
- }
-
- /**
- * Sets the width hint of a control. Assumes that GridData is used.
- */
- public static void setWidthHint(Control control, int widthHint) {
- Object ld= control.getLayoutData();
- if (ld instanceof GridData) {
- ((GridData)ld).widthHint= widthHint;
- }
- }
-
- /**
- * Sets the heigthHint hint of a control. Assumes that GridData is used.
- */
- public static void setHeigthHint(Control control, int heigthHint) {
- Object ld= control.getLayoutData();
- if (ld instanceof GridData) {
- ((GridData)ld).heightHint= heigthHint;
- }
- }
-
- /**
- * Sets the horizontal indent of a control. Assumes that GridData is used.
- */
- public static void setHorizontalIndent(Control control, int horizontalIndent) {
- Object ld= control.getLayoutData();
- if (ld instanceof GridData) {
- ((GridData)ld).horizontalIndent= horizontalIndent;
- }
- }
-
- /**
- * Sets the horizontal indent of a control. Assumes that GridData is used.
- */
- public static void setHorizontalGrabbing(Control control) {
- Object ld= control.getLayoutData();
- if (ld instanceof GridData) {
- ((GridData)ld).grabExcessHorizontalSpace= true;
- }
- }
-
-} \ No newline at end of file
diff --git a/debug/org.eclipse.cdt.debug.mi.ui/src/org/eclipse/cdt/debug/mi/internal/ui/dialogfields/ListDialogField.java b/debug/org.eclipse.cdt.debug.mi.ui/src/org/eclipse/cdt/debug/mi/internal/ui/dialogfields/ListDialogField.java
deleted file mode 100644
index d7d180a4818..00000000000
--- a/debug/org.eclipse.cdt.debug.mi.ui/src/org/eclipse/cdt/debug/mi/internal/ui/dialogfields/ListDialogField.java
+++ /dev/null
@@ -1,771 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2005, 2006 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.mi.internal.ui.dialogfields;
-
-
-import java.util.ArrayList;
-import java.util.Iterator;
-import java.util.List;
-import org.eclipse.cdt.debug.mi.internal.ui.PixelConverter;
-import org.eclipse.cdt.debug.mi.internal.ui.SWTUtil;
-import org.eclipse.jface.util.Assert;
-import org.eclipse.jface.viewers.ILabelProvider;
-import org.eclipse.jface.viewers.ISelection;
-import org.eclipse.jface.viewers.ISelectionChangedListener;
-import org.eclipse.jface.viewers.IStructuredContentProvider;
-import org.eclipse.jface.viewers.IStructuredSelection;
-import org.eclipse.jface.viewers.SelectionChangedEvent;
-import org.eclipse.jface.viewers.StructuredSelection;
-import org.eclipse.jface.viewers.TableViewer;
-import org.eclipse.jface.viewers.Viewer;
-import org.eclipse.jface.viewers.ViewerSorter;
-import org.eclipse.swt.SWT;
-import org.eclipse.swt.events.SelectionEvent;
-import org.eclipse.swt.events.SelectionListener;
-import org.eclipse.swt.layout.GridData;
-import org.eclipse.swt.layout.GridLayout;
-import org.eclipse.swt.widgets.Button;
-import org.eclipse.swt.widgets.Composite;
-import org.eclipse.swt.widgets.Control;
-import org.eclipse.swt.widgets.Display;
-import org.eclipse.swt.widgets.Label;
-import org.eclipse.swt.widgets.Table;
-
-/**
- * A list with a button bar.
- * Typical buttons are 'Add', 'Remove', 'Up' and 'Down'.
- * List model is independend of widget creation.
- * DialogFields controls are: Label, List and Composite containing buttons.
- */
-public class ListDialogField extends DialogField {
-
- protected TableViewer fTable;
- protected ILabelProvider fLabelProvider;
- protected ListViewerAdapter fListViewerAdapter;
- protected List fElements;
- protected ViewerSorter fViewerSorter;
-
- protected String[] fButtonLabels;
- private Button[] fButtonControls;
-
- private boolean[] fButtonsEnabled;
-
- private int fRemoveButtonIndex;
- private int fUpButtonIndex;
- private int fDownButtonIndex;
-
- private Label fLastSeparator;
-
- protected Table fTableControl;
- private Composite fButtonsControl;
- private ISelection fSelectionWhenEnabled;
-
- private IListAdapter fListAdapter;
-
- private Object fParentElement;
-
- /**
- * Creates the <code>ListDialogField</code>.
- * @param adapter A listener for button invocation, selection changes.
- * @param buttonLabels The labels of all buttons: <code>null</code> is a valid array entry and
- * marks a separator.
- * @param lprovider The label provider to render the table entries
- */
- public ListDialogField(IListAdapter adapter, String[] buttonLabels, ILabelProvider lprovider) {
- super();
- fListAdapter= adapter;
-
- fLabelProvider= lprovider;
- fListViewerAdapter= new ListViewerAdapter();
- fParentElement= this;
-
- fElements= new ArrayList(10);
-
- fButtonLabels= buttonLabels;
- if (fButtonLabels != null) {
- int nButtons= fButtonLabels.length;
- fButtonsEnabled= new boolean[nButtons];
- for (int i= 0; i < nButtons; i++) {
- fButtonsEnabled[i]= true;
- }
- }
-
- fTable= null;
- fTableControl= null;
- fButtonsControl= null;
-
- fRemoveButtonIndex= -1;
- fUpButtonIndex= -1;
- fDownButtonIndex= -1;
- }
-
- /**
- * Sets the index of the 'remove' button in the button label array passed in the constructor.
- * The behaviour of the button marked as the 'remove' button will then be handled internally.
- * (enable state, button invocation behaviour)
- */
- public void setRemoveButtonIndex(int removeButtonIndex) {
- Assert.isTrue(removeButtonIndex < fButtonLabels.length);
- fRemoveButtonIndex= removeButtonIndex;
- }
-
- /**
- * Sets the index of the 'up' button in the button label array passed in the constructor.
- * The behaviour of the button marked as the 'up' button will then be handled internally.
- * (enable state, button invocation behaviour)
- */
- public void setUpButtonIndex(int upButtonIndex) {
- Assert.isTrue(upButtonIndex < fButtonLabels.length);
- fUpButtonIndex= upButtonIndex;
- }
-
- /**
- * Sets the index of the 'down' button in the button label array passed in the constructor.
- * The behaviour of the button marked as the 'down' button will then be handled internally.
- * (enable state, button invocation behaviour)
- */
- public void setDownButtonIndex(int downButtonIndex) {
- Assert.isTrue(downButtonIndex < fButtonLabels.length);
- fDownButtonIndex= downButtonIndex;
- }
-
- /**
- * Sets the viewerSorter.
- * @param viewerSorter The viewerSorter to set
- */
- public void setViewerSorter(ViewerSorter viewerSorter) {
- fViewerSorter= viewerSorter;
- }
-
- // ------ adapter communication
-
- private void buttonPressed(int index) {
- if (!managedButtonPressed(index)) {
- fListAdapter.customButtonPressed(this, index);
- }
- }
-
- /**
- * Checks if the button pressed is handled internally
- * @return Returns true if button has been handled.
- */
- protected boolean managedButtonPressed(int index) {
- if (index == fRemoveButtonIndex) {
- remove();
- } else if (index == fUpButtonIndex) {
- up();
- } else if (index == fDownButtonIndex) {
- down();
- } else {
- return false;
- }
- return true;
- }
-
-
- // ------ layout helpers
-
- /*
- * @see DialogField#doFillIntoGrid
- */
- public Control[] doFillIntoGrid(Composite parent, int nColumns) {
- PixelConverter converter= new PixelConverter(parent);
-
- assertEnoughColumns(nColumns);
-
- Label label= getLabelControl(parent);
- GridData gd= gridDataForLabel(1);
- gd.verticalAlignment= GridData.BEGINNING;
- label.setLayoutData(gd);
-
- Control list= getListControl(parent);
- gd= new GridData();
- gd.horizontalAlignment= GridData.FILL;
- gd.grabExcessHorizontalSpace= false;
- gd.verticalAlignment= GridData.FILL;
- gd.grabExcessVerticalSpace= true;
- gd.horizontalSpan= nColumns - 2;
- gd.widthHint= converter.convertWidthInCharsToPixels(50);
- gd.heightHint= converter.convertHeightInCharsToPixels(6);
-
- list.setLayoutData(gd);
-
- Composite buttons= getButtonBox(parent);
- gd= new GridData();
- gd.horizontalAlignment= GridData.FILL;
- gd.grabExcessHorizontalSpace= false;
- gd.verticalAlignment= GridData.FILL;
- gd.grabExcessVerticalSpace= true;
- gd.horizontalSpan= 1;
- buttons.setLayoutData(gd);
-
- return new Control[] { label, list, buttons };
- }
-
- /*
- * @see DialogField#getNumberOfControls
- */
- public int getNumberOfControls() {
- return 3;
- }
-
- /**
- * Sets the minimal width of the buttons. Must be called after widget creation.
- */
- public void setButtonsMinWidth(int minWidth) {
- if (fLastSeparator != null) {
- ((GridData)fLastSeparator.getLayoutData()).widthHint= minWidth;
- }
- }
-
-
- // ------ ui creation
-
- /**
- * Returns the list control. When called the first time, the control will be created.
- * @param The parent composite when called the first time, or <code>null</code>
- * after.
- */
- public Control getListControl(Composite parent) {
- if (fTableControl == null) {
- assertCompositeNotNull(parent);
-
- fTable= createTableViewer(parent);
- fTable.setContentProvider(fListViewerAdapter);
- fTable.setLabelProvider(fLabelProvider);
- fTable.addSelectionChangedListener(fListViewerAdapter);
-
- fTableControl= (Table)fTable.getControl();
-
- fTable.setInput(fParentElement);
-
- if (fViewerSorter != null) {
- fTable.setSorter(fViewerSorter);
- }
-
- fTableControl.setEnabled(isEnabled());
- if (fSelectionWhenEnabled != null) {
- postSetSelection(fSelectionWhenEnabled);
- }
- }
- return fTableControl;
- }
-
- /**
- * Returns the internally used table viewer.
- */
- public TableViewer getTableViewer() {
- return fTable;
- }
-
- /*
- * Subclasses may override to specify a different style.
- */
- protected int getListStyle(){
- return SWT.BORDER + SWT.MULTI + SWT.H_SCROLL + SWT.V_SCROLL;
- }
-
- protected TableViewer createTableViewer(Composite parent) {
- Table table= new Table(parent, getListStyle());
- return new TableViewer(table);
- }
-
- protected Button createButton(Composite parent, String label, SelectionListener listener) {
- Button button= new Button(parent, SWT.PUSH);
- button.setText(label);
- button.addSelectionListener(listener);
- GridData gd= new GridData();
- gd.horizontalAlignment= GridData.FILL;
- gd.grabExcessHorizontalSpace= true;
- gd.verticalAlignment= GridData.BEGINNING;
- gd.widthHint = SWTUtil.getButtonWidthHint(button);
-
- button.setLayoutData(gd);
- return button;
- }
-
- private Label createSeparator(Composite parent) {
- Label separator= new Label(parent, SWT.NONE);
- separator.setVisible(false);
- GridData gd= new GridData();
- gd.horizontalAlignment= GridData.FILL;
- gd.verticalAlignment= GridData.BEGINNING;
- gd.heightHint= 4;
- separator.setLayoutData(gd);
- return separator;
- }
-
- /**
- * Returns the composite containing the buttons. When called the first time, the control
- * will be created.
- * @param The parent composite when called the first time, or <code>null</code>
- * after.
- */
- public Composite getButtonBox(Composite parent) {
- if (fButtonsControl == null) {
- assertCompositeNotNull(parent);
-
- SelectionListener listener= new SelectionListener() {
- public void widgetDefaultSelected(SelectionEvent e) {
- doButtonSelected(e);
- }
- public void widgetSelected(SelectionEvent e) {
- doButtonSelected(e);
- }
- };
-
- Composite contents= new Composite(parent, SWT.NULL);
- GridLayout layout= new GridLayout();
- layout.marginWidth= 0;
- layout.marginHeight= 0;
- contents.setLayout(layout);
-
- if (fButtonLabels != null) {
- fButtonControls= new Button[fButtonLabels.length];
- for (int i= 0; i < fButtonLabels.length; i++) {
- String currLabel= fButtonLabels[i];
- if (currLabel != null) {
- fButtonControls[i]= createButton(contents, currLabel, listener);
- fButtonControls[i].setEnabled(isEnabled() && fButtonsEnabled[i]);
- } else {
- fButtonControls[i]= null;
- createSeparator(contents);
- }
- }
- }
-
- fLastSeparator= createSeparator(contents);
-
- updateButtonState();
- fButtonsControl= contents;
- }
-
- return fButtonsControl;
- }
-
- protected void doButtonSelected(SelectionEvent e) {
- if (fButtonControls != null) {
- for (int i= 0; i < fButtonControls.length; i++) {
- if (e.widget == fButtonControls[i]) {
- buttonPressed(i);
- return;
- }
- }
- }
- }
-
- // ------ enable / disable management
-
- /*
- * @see DialogField#dialogFieldChanged
- */
- public void dialogFieldChanged() {
- super.dialogFieldChanged();
- updateButtonState();
- }
-
- /*
- * Updates the enable state of the all buttons
- */
- protected void updateButtonState() {
- if (fButtonControls != null) {
- ISelection sel= fTable.getSelection();
- for (int i= 0; i < fButtonControls.length; i++) {
- Button button= fButtonControls[i];
- if (isOkToUse(button)) {
- boolean extraState= getManagedButtonState(sel, i);
- button.setEnabled(isEnabled() && extraState && fButtonsEnabled[i]);
- }
- }
- }
- }
-
- protected boolean getManagedButtonState(ISelection sel, int index) {
- if (index == fRemoveButtonIndex) {
- return !sel.isEmpty();
- } else if (index == fUpButtonIndex) {
- return !sel.isEmpty() && canMoveUp();
- } else if (index == fDownButtonIndex) {
- return !sel.isEmpty() && canMoveDown();
- }
- return true;
- }
-
- /*
- * @see DialogField#updateEnableState
- */
- protected void updateEnableState() {
- super.updateEnableState();
-
- boolean enabled= isEnabled();
- if (isOkToUse(fTableControl)) {
- if (!enabled) {
- fSelectionWhenEnabled= fTable.getSelection();
- selectElements(null);
- } else {
- selectElements(fSelectionWhenEnabled);
- fSelectionWhenEnabled= null;
- }
- fTableControl.setEnabled(enabled);
- }
- updateButtonState();
- }
-
- /**
- * Sets a button enabled or disabled.
- */
- public void enableButton(int index, boolean enable) {
- if (fButtonsEnabled != null && index < fButtonsEnabled.length) {
- fButtonsEnabled[index]= enable;
- updateButtonState();
- }
- }
-
- // ------ model access
-
- /**
- * Sets the elements shown in the list.
- */
- public void setElements(List elements) {
- fElements= new ArrayList(elements);
- if (fTable != null) {
- fTable.refresh();
- }
- dialogFieldChanged();
- }
-
- /**
- * Gets the elements shown in the list.
- * The list returned is a copy, so it can be modified by the user.
- */
- public List getElements() {
- return new ArrayList(fElements);
- }
-
- /**
- * Gets the elements shown at the given index.
- */
- public Object getElement(int index) {
- return fElements.get(index);
- }
-
- /**
- * Replace an element.
- */
- public void replaceElement(Object oldElement, Object newElement) throws IllegalArgumentException {
- int idx= fElements.indexOf(oldElement);
- if (idx != -1) {
- if (oldElement.equals(newElement) || fElements.contains(newElement)) {
- return;
- }
- fElements.set(idx, newElement);
- if (fTable != null) {
- List selected= getSelectedElements();
- if (selected.remove(oldElement)) {
- selected.add(newElement);
- }
- fTable.refresh();
- selectElements(new StructuredSelection(selected));
- }
- dialogFieldChanged();
- } else {
- throw new IllegalArgumentException();
- }
- }
-
- /**
- * Adds an element at the end of the list.
- */
- public void addElement(Object element) {
- if (fElements.contains(element)) {
- return;
- }
- fElements.add(element);
- if (fTable != null) {
- fTable.add(element);
- }
- dialogFieldChanged();
- }
-
- /**
- * Adds elements at the end of the list.
- */
- public void addElements(List elements) {
- int nElements= elements.size();
-
- if (nElements > 0) {
- // filter duplicated
- ArrayList elementsToAdd= new ArrayList(nElements);
-
- for (int i= 0; i < nElements; i++) {
- Object elem= elements.get(i);
- if (!fElements.contains(elem)) {
- elementsToAdd.add(elem);
- }
- }
- fElements.addAll(elementsToAdd);
- if (fTable != null) {
- fTable.add(elementsToAdd.toArray());
- }
- dialogFieldChanged();
- }
- }
-
- /**
- * Adds an element at a position.
- */
- public void insertElementAt(Object element, int index) {
- if (fElements.contains(element)) {
- return;
- }
- fElements.add(index, element);
- if (fTable != null) {
- fTable.add(element);
- }
-
- dialogFieldChanged();
- }
-
-
- /**
- * Adds an element at a position.
- */
- public void removeAllElements() {
- if (fElements.size() > 0) {
- fElements.clear();
- if (fTable != null) {
- fTable.refresh();
- }
- dialogFieldChanged();
- }
- }
-
- /**
- * Removes an element from the list.
- */
- public void removeElement(Object element) throws IllegalArgumentException {
- if (fElements.remove(element)) {
- if (fTable != null) {
- fTable.remove(element);
- }
- dialogFieldChanged();
- } else {
- throw new IllegalArgumentException();
- }
- }
-
- /**
- * Removes elements from the list.
- */
- public void removeElements(List elements) {
- if (elements.size() > 0) {
- fElements.removeAll(elements);
- if (fTable != null) {
- fTable.remove(elements.toArray());
- }
- dialogFieldChanged();
- }
- }
-
- /**
- * Gets the number of elements
- */
- public int getSize() {
- return fElements.size();
- }
-
-
- public void selectElements(ISelection selection) {
- fSelectionWhenEnabled= selection;
- if (fTable != null) {
- fTable.setSelection(selection, true);
- }
- }
-
- public void selectFirstElement() {
- Object element= null;
- if (fViewerSorter != null) {
- Object[] arr= fElements.toArray();
- fViewerSorter.sort(fTable, arr);
- if (arr.length > 0) {
- element= arr[0];
- }
- } else {
- if (fElements.size() > 0) {
- element= fElements.get(0);
- }
- }
- if (element != null) {
- selectElements(new StructuredSelection(element));
- }
- }
-
-
- public void postSetSelection(final ISelection selection) {
- if (isOkToUse(fTableControl)) {
- Display d= fTableControl.getDisplay();
- d.asyncExec(new Runnable() {
- public void run() {
- if (isOkToUse(fTableControl)) {
- selectElements(selection);
- }
- }
- });
- }
- }
-
- /**
- * Refreshes the table.
- */
- public void refresh() {
- fTable.refresh();
- }
-
- // ------- list maintenance
-
- private List moveUp(List elements, List move) {
- int nElements= elements.size();
- List res= new ArrayList(nElements);
- Object floating= null;
- for (int i= 0; i < nElements; i++) {
- Object curr= elements.get(i);
- if (move.contains(curr)) {
- res.add(curr);
- } else {
- if (floating != null) {
- res.add(floating);
- }
- floating= curr;
- }
- }
- if (floating != null) {
- res.add(floating);
- }
- return res;
- }
-
- private void moveUp(List toMoveUp) {
- if (toMoveUp.size() > 0) {
- setElements(moveUp(fElements, toMoveUp));
- fTable.reveal(toMoveUp.get(0));
- }
- }
-
- private void moveDown(List toMoveDown) {
- if (toMoveDown.size() > 0) {
- setElements(reverse(moveUp(reverse(fElements), toMoveDown)));
- fTable.reveal(toMoveDown.get(toMoveDown.size() - 1));
- }
- }
-
- private List reverse(List p) {
- List reverse= new ArrayList(p.size());
- for (int i= p.size()-1; i >= 0; i--) {
- reverse.add(p.get(i));
- }
- return reverse;
- }
-
-
- private void remove() {
- removeElements(getSelectedElements());
- }
-
- private void up() {
- moveUp(getSelectedElements());
- }
-
- private void down() {
- moveDown(getSelectedElements());
- }
-
- private boolean canMoveUp() {
- if (isOkToUse(fTableControl)) {
- int[] indc= fTableControl.getSelectionIndices();
- for (int i= 0; i < indc.length; i++) {
- if (indc[i] != i) {
- return true;
- }
- }
- }
- return false;
- }
-
- private boolean canMoveDown() {
- if (isOkToUse(fTableControl)) {
- int[] indc= fTableControl.getSelectionIndices();
- int k= fElements.size() - 1;
- for (int i= indc.length - 1; i >= 0 ; i--, k--) {
- if (indc[i] != k) {
- return true;
- }
- }
- }
- return false;
- }
-
- /**
- * Returns the selected elements.
- */
- public List getSelectedElements() {
- List result= new ArrayList();
- if (fTable != null) {
- ISelection selection= fTable.getSelection();
- if (selection instanceof IStructuredSelection) {
- Iterator iter= ((IStructuredSelection)selection).iterator();
- while (iter.hasNext()) {
- result.add(iter.next());
- }
- }
- }
- return result;
- }
-
- // ------- ListViewerAdapter
-
- private class ListViewerAdapter implements IStructuredContentProvider, ISelectionChangedListener {
-
- // ------- ITableContentProvider Interface ------------
-
- public void inputChanged(Viewer viewer, Object oldInput, Object newInput) {
- // will never happen
- }
-
- public boolean isDeleted(Object element) {
- return false;
- }
-
- public void dispose() {
- }
-
- public Object[] getElements(Object obj) {
- return fElements.toArray();
- }
-
- // ------- ISelectionChangedListener Interface ------------
-
- public void selectionChanged(SelectionChangedEvent event) {
- doListSelected(event);
- }
-
- }
-
-
- protected void doListSelected(SelectionChangedEvent event) {
- updateButtonState();
- if (fListAdapter != null) {
- fListAdapter.selectionChanged(this);
- }
- }
-
-
-
-}
diff --git a/debug/org.eclipse.cdt.debug.mi.ui/src/org/eclipse/cdt/debug/mi/internal/ui/dialogfields/SelectionButtonDialogField.java b/debug/org.eclipse.cdt.debug.mi.ui/src/org/eclipse/cdt/debug/mi/internal/ui/dialogfields/SelectionButtonDialogField.java
deleted file mode 100644
index 6e1ea5432b2..00000000000
--- a/debug/org.eclipse.cdt.debug.mi.ui/src/org/eclipse/cdt/debug/mi/internal/ui/dialogfields/SelectionButtonDialogField.java
+++ /dev/null
@@ -1,190 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2005, 2006 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.mi.internal.ui.dialogfields;
-
-import org.eclipse.cdt.debug.mi.internal.ui.SWTUtil;
-import org.eclipse.swt.SWT;
-import org.eclipse.swt.events.SelectionEvent;
-import org.eclipse.swt.events.SelectionListener;
-import org.eclipse.swt.layout.GridData;
-import org.eclipse.swt.widgets.Button;
-import org.eclipse.swt.widgets.Composite;
-import org.eclipse.swt.widgets.Control;
-
-/**
- * Dialog Field containing a single button: e.g. radio or checkbox button.
- */
-public class SelectionButtonDialogField extends DialogField {
-
- private Button fButton;
- private boolean fIsSelected;
- private DialogField[] fAttachedDialogFields;
- private int fButtonStyle;
-
- /**
- * Creates a selection button.
- * Allowed button styles: SWT.RADIO, SWT.CHECK, SWT.TOGGLE, SWT.PUSH
- */
- public SelectionButtonDialogField(int buttonStyle) {
- super();
- fIsSelected= false;
- fAttachedDialogFields= null;
- fButtonStyle= buttonStyle;
- }
-
- /**
- * Attaches a field to the selection state of the selection button.
- * The attached field will be disabled if the selection button is not selected.
- */
- public void attachDialogField(DialogField dialogField) {
- attachDialogFields(new DialogField[] { dialogField });
- }
-
- /**
- * Attaches fields to the selection state of the selection button.
- * The attached fields will be disabled if the selection button is not selected.
- */
- public void attachDialogFields(DialogField[] dialogFields) {
- fAttachedDialogFields= dialogFields;
- for (int i= 0; i < dialogFields.length; i++) {
- dialogFields[i].setEnabled(fIsSelected);
- }
- }
-
- /**
- * Returns <code>true</code> is teh gived field is attached to the selection button.
- */
- public boolean isAttached(DialogField editor) {
- if (fAttachedDialogFields != null) {
- for (int i=0; i < fAttachedDialogFields.length; i++) {
- if (fAttachedDialogFields[i] == editor) {
- return true;
- }
- }
- }
- return false;
- }
-
- // ------- layout helpers
-
- /*
- * @see DialogField#doFillIntoGrid
- */
- public Control[] doFillIntoGrid(Composite parent, int nColumns) {
- assertEnoughColumns(nColumns);
-
- Button button= getSelectionButton(parent);
- GridData gd= new GridData();
- gd.horizontalSpan= nColumns;
- gd.horizontalAlignment= GridData.FILL;
- if (fButtonStyle == SWT.PUSH) {
- gd.widthHint = SWTUtil.getButtonWidthHint(button);
- }
-
- button.setLayoutData(gd);
-
- return new Control[] { button };
- }
-
- /*
- * @see DialogField#getNumberOfControls
- */
- public int getNumberOfControls() {
- return 1;
- }
-
- // ------- ui creation
-
- /**
- * Returns the selection button widget. When called the first time, the widget will be created.
- * @param The parent composite when called the first time, or <code>null</code>
- * after.
- */
- public Button getSelectionButton(Composite group) {
- if (fButton == null) {
- assertCompositeNotNull(group);
-
- fButton= new Button(group, fButtonStyle);
- fButton.setFont(group.getFont());
- fButton.setText(fLabelText);
- fButton.setEnabled(isEnabled());
- fButton.setSelection(fIsSelected);
- fButton.addSelectionListener(new SelectionListener() {
- public void widgetDefaultSelected(SelectionEvent e) {
- doWidgetSelected(e);
- }
- public void widgetSelected(SelectionEvent e) {
- doWidgetSelected(e);
- }
- });
- }
- return fButton;
- }
-
- protected void doWidgetSelected(SelectionEvent e) {
- if (isOkToUse(fButton)) {
- changeValue(fButton.getSelection());
- }
- }
-
- private void changeValue(boolean newState) {
- if (fIsSelected != newState) {
- fIsSelected= newState;
- if (fAttachedDialogFields != null) {
- boolean focusSet= false;
- for (int i= 0; i < fAttachedDialogFields.length; i++) {
- fAttachedDialogFields[i].setEnabled(fIsSelected);
- if (fIsSelected && !focusSet) {
- focusSet= fAttachedDialogFields[i].setFocus();
- }
- }
- }
- dialogFieldChanged();
- } else if (fButtonStyle == SWT.PUSH) {
- dialogFieldChanged();
- }
- }
-
- // ------ model access
-
- /**
- * Returns the selection state of the button.
- */
- public boolean isSelected() {
- return fIsSelected;
- }
-
- /**
- * Sets the selection state of the button.
- */
- public void setSelection(boolean selected) {
- changeValue(selected);
- if (isOkToUse(fButton)) {
- fButton.setSelection(selected);
- }
- }
-
- // ------ enable / disable management
-
- /*
- * @see DialogField#updateEnableState
- */
- protected void updateEnableState() {
- super.updateEnableState();
- if (isOkToUse(fButton)) {
- fButton.setEnabled(isEnabled());
- }
- }
-
-
-
-
-}
diff --git a/debug/org.eclipse.cdt.debug.mi.ui/src/org/eclipse/cdt/debug/mi/internal/ui/dialogfields/SelectionButtonDialogFieldGroup.java b/debug/org.eclipse.cdt.debug.mi.ui/src/org/eclipse/cdt/debug/mi/internal/ui/dialogfields/SelectionButtonDialogFieldGroup.java
deleted file mode 100644
index ea108921e38..00000000000
--- a/debug/org.eclipse.cdt.debug.mi.ui/src/org/eclipse/cdt/debug/mi/internal/ui/dialogfields/SelectionButtonDialogFieldGroup.java
+++ /dev/null
@@ -1,254 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.mi.internal.ui.dialogfields;
-
-import org.eclipse.jface.util.Assert;
-import org.eclipse.swt.SWT;
-import org.eclipse.swt.events.SelectionEvent;
-import org.eclipse.swt.events.SelectionListener;
-import org.eclipse.swt.layout.GridData;
-import org.eclipse.swt.layout.GridLayout;
-import org.eclipse.swt.widgets.Button;
-import org.eclipse.swt.widgets.Composite;
-import org.eclipse.swt.widgets.Control;
-import org.eclipse.swt.widgets.Group;
-import org.eclipse.swt.widgets.Label;
-
-/**
- * Dialog field describing a group with buttons (Checkboxes, radio buttons..)
- */
-public class SelectionButtonDialogFieldGroup extends DialogField {
-
- private Composite fButtonComposite;
-
- private Button[] fButtons;
- private String[] fButtonNames;
- private boolean[] fButtonsSelected;
- private boolean[] fButtonsEnabled;
-
- private int fGroupBorderStyle;
- private int fGroupNumberOfColumns;
- private int fButtonsStyle;
-
- /**
- * Creates a group without border.
- */
- public SelectionButtonDialogFieldGroup(int buttonsStyle, String[] buttonNames, int nColumns) {
- this(buttonsStyle, buttonNames, nColumns, SWT.NONE);
- }
-
-
- /**
- * Creates a group with border (label in border).
- * Accepted button styles are: SWT.RADIO, SWT.CHECK, SWT.TOGGLE
- * For border styles see <code>Group</code>
- */
- public SelectionButtonDialogFieldGroup(int buttonsStyle, String[] buttonNames, int nColumns, int borderStyle) {
- super();
-
- Assert.isTrue(buttonsStyle == SWT.RADIO || buttonsStyle == SWT.CHECK || buttonsStyle == SWT.TOGGLE);
- fButtonNames= buttonNames;
-
- int nButtons= buttonNames.length;
- fButtonsSelected= new boolean[nButtons];
- fButtonsEnabled= new boolean[nButtons];
- for (int i= 0; i < nButtons; i++) {
- fButtonsSelected[i]= false;
- fButtonsEnabled[i]= true;
- }
- if (fButtonsStyle == SWT.RADIO) {
- fButtonsSelected[0]= true;
- }
-
- fGroupBorderStyle= borderStyle;
- fGroupNumberOfColumns= (nColumns <= 0) ? nButtons : nColumns;
-
- fButtonsStyle= buttonsStyle;
-
- }
-
- // ------- layout helpers
-
- /*
- * @see DialogField#doFillIntoGrid
- */
- public Control[] doFillIntoGrid(Composite parent, int nColumns) {
- assertEnoughColumns(nColumns);
-
- if (fGroupBorderStyle == SWT.NONE) {
- Label label= getLabelControl(parent);
- label.setLayoutData(gridDataForLabel(1));
-
- Composite buttonsgroup= getSelectionButtonsGroup(parent);
- GridData gd= new GridData();
- gd.horizontalSpan= nColumns - 1;
- buttonsgroup.setLayoutData(gd);
-
- return new Control[] { label, buttonsgroup };
- }
- Composite buttonsgroup= getSelectionButtonsGroup(parent);
- GridData gd= new GridData();
- gd.horizontalSpan= nColumns;
- buttonsgroup.setLayoutData(gd);
-
- return new Control[] { buttonsgroup };
- }
-
- /*
- * @see DialogField#doFillIntoGrid
- */
- public int getNumberOfControls() {
- return (fGroupBorderStyle == SWT.NONE) ? 2 : 1;
- }
-
- // ------- ui creation
-
- private Button createSelectionButton(int index, Composite group, SelectionListener listener) {
- Button button= new Button(group, fButtonsStyle | SWT.LEFT);
- button.setFont(group.getFont());
- button.setText(fButtonNames[index]);
- button.setEnabled(isEnabled() && fButtonsEnabled[index]);
- button.setSelection(fButtonsSelected[index]);
- button.addSelectionListener(listener);
- button.setLayoutData(new GridData());
- return button;
- }
-
- /**
- * Returns the group widget. When called the first time, the widget will be created.
- * @param The parent composite when called the first time, or <code>null</code>
- * after.
- */
- public Composite getSelectionButtonsGroup(Composite parent) {
- if (fButtonComposite == null) {
- assertCompositeNotNull(parent);
-
- GridLayout layout= new GridLayout();
- layout.makeColumnsEqualWidth= true;
- layout.numColumns= fGroupNumberOfColumns;
-
- if (fGroupBorderStyle != SWT.NONE) {
- Group group= new Group(parent, fGroupBorderStyle);
- if (fLabelText != null && fLabelText.length() > 0) {
- group.setText(fLabelText);
- }
- fButtonComposite= group;
- } else {
- fButtonComposite= new Composite(parent, SWT.NULL);
- layout.marginHeight= 0;
- layout.marginWidth= 0;
- }
-
- fButtonComposite.setLayout(layout);
-
- SelectionListener listener= new SelectionListener() {
- public void widgetDefaultSelected(SelectionEvent e) {
- doWidgetSelected(e);
- }
- public void widgetSelected(SelectionEvent e) {
- doWidgetSelected(e);
- }
- };
- int nButtons= fButtonNames.length;
- fButtons= new Button[nButtons];
- for (int i= 0; i < nButtons; i++) {
- fButtons[i]= createSelectionButton(i, fButtonComposite, listener);
- }
- int nRows= nButtons / fGroupNumberOfColumns;
- int nFillElements= nRows * fGroupNumberOfColumns - nButtons;
- for (int i= 0; i < nFillElements; i++) {
- createEmptySpace(fButtonComposite);
- }
- }
- return fButtonComposite;
- }
-
- /**
- * Returns a button from the group or <code>null</code> if not yet created.
- */
- public Button getSelectionButton(int index) {
- if (index >= 0 && index < fButtons.length) {
- return fButtons[index];
- }
- return null;
- }
-
- protected void doWidgetSelected(SelectionEvent e) {
- Button button= (Button)e.widget;
- for (int i= 0; i < fButtons.length; i++) {
- if (fButtons[i] == button) {
- fButtonsSelected[i]= button.getSelection();
- dialogFieldChanged();
- return;
- }
- }
- }
-
- // ------ model access
-
- /**
- * Returns the selection state of a button contained in the group.
- * @param The index of the button
- */
- public boolean isSelected(int index) {
- if (index >= 0 && index < fButtonsSelected.length) {
- return fButtonsSelected[index];
- }
- return false;
- }
-
- /**
- * Sets the selection state of a button contained in the group.
- */
- public void setSelection(int index, boolean selected) {
- if (index >= 0 && index < fButtonsSelected.length) {
- if (fButtonsSelected[index] != selected) {
- fButtonsSelected[index]= selected;
- if (fButtons != null) {
- Button button= fButtons[index];
- if (isOkToUse(button)) {
- button.setSelection(selected);
- }
- }
- }
- }
- }
-
- // ------ enable / disable management
-
- protected void updateEnableState() {
- super.updateEnableState();
- if (fButtons != null) {
- boolean enabled= isEnabled();
- for (int i= 0; i < fButtons.length; i++) {
- Button button= fButtons[i];
- if (isOkToUse(button)) {
- button.setEnabled(enabled && fButtonsEnabled[i]);
- }
- }
- }
- }
-
- /**
- * Sets the enable state of a button contained in the group.
- */
- public void enableSelectionButton(int index, boolean enable) {
- if (index >= 0 && index < fButtonsEnabled.length) {
- fButtonsEnabled[index]= enable;
- if (fButtons != null) {
- Button button= fButtons[index];
- if (isOkToUse(button)) {
- button.setEnabled(isEnabled() && enable);
- }
- }
- }
- }
-} \ No newline at end of file
diff --git a/debug/org.eclipse.cdt.debug.mi.ui/src/org/eclipse/cdt/debug/mi/internal/ui/dialogfields/Separator.java b/debug/org.eclipse.cdt.debug.mi.ui/src/org/eclipse/cdt/debug/mi/internal/ui/dialogfields/Separator.java
deleted file mode 100644
index c0e8173867e..00000000000
--- a/debug/org.eclipse.cdt.debug.mi.ui/src/org/eclipse/cdt/debug/mi/internal/ui/dialogfields/Separator.java
+++ /dev/null
@@ -1,93 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.mi.internal.ui.dialogfields;
-
-import org.eclipse.swt.SWT;
-import org.eclipse.swt.layout.GridData;
-import org.eclipse.swt.widgets.Composite;
-import org.eclipse.swt.widgets.Control;
-import org.eclipse.swt.widgets.Label;
-
-/**
- * Dialog field describing a separator.
- */
-public class Separator extends DialogField {
-
- private Label fSeparator;
- private int fStyle;
-
- public Separator() {
- this(SWT.NONE);
- }
-
- /**
- * @param style of the separator. See <code>Label</code> for possible
- * styles.
- */
- public Separator(int style) {
- super();
- fStyle= style;
- }
-
- // ------- layout helpers
-
- /**
- * Creates the separator and fills it in a MGridLayout.
- * @param height The heigth of the separator
- */
- public Control[] doFillIntoGrid(Composite parent, int nColumns, int height) {
- assertEnoughColumns(nColumns);
-
- Control separator= getSeparator(parent);
- separator.setLayoutData(gridDataForSeperator(nColumns, height));
-
- return new Control[] { separator };
- }
-
- /*
- * @see DialogField#doFillIntoGrid
- */
- public Control[] doFillIntoGrid(Composite parent, int nColumns) {
- return doFillIntoGrid(parent, nColumns, 4);
- }
-
- /*
- * @see DialogField#getNumberOfControls
- */
- public int getNumberOfControls() {
- return 1;
- }
-
- protected static GridData gridDataForSeperator(int span, int height) {
- GridData gd= new GridData();
- gd.horizontalAlignment= GridData.FILL;
- gd.verticalAlignment= GridData.BEGINNING;
- gd.heightHint= height;
- gd.horizontalSpan= span;
- return gd;
- }
-
- // ------- ui creation
-
- /**
- * Creates or returns the created separator.
- * @param parent The parent composite or <code>null</code> if the widget has
- * already been created.
- */
- public Control getSeparator(Composite parent) {
- if (fSeparator == null) {
- assertCompositeNotNull(parent);
- fSeparator= new Label(parent, fStyle);
- }
- return fSeparator;
- }
-
-} \ No newline at end of file
diff --git a/debug/org.eclipse.cdt.debug.mi.ui/src/org/eclipse/cdt/debug/mi/internal/ui/dialogfields/StringButtonDialogField.java b/debug/org.eclipse.cdt.debug.mi.ui/src/org/eclipse/cdt/debug/mi/internal/ui/dialogfields/StringButtonDialogField.java
deleted file mode 100644
index d8bbdaecbe4..00000000000
--- a/debug/org.eclipse.cdt.debug.mi.ui/src/org/eclipse/cdt/debug/mi/internal/ui/dialogfields/StringButtonDialogField.java
+++ /dev/null
@@ -1,140 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2005, 2006 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.mi.internal.ui.dialogfields;
-
-import org.eclipse.cdt.debug.mi.internal.ui.SWTUtil;
-import org.eclipse.swt.SWT;
-import org.eclipse.swt.events.SelectionEvent;
-import org.eclipse.swt.events.SelectionListener;
-import org.eclipse.swt.layout.GridData;
-import org.eclipse.swt.widgets.Button;
-import org.eclipse.swt.widgets.Composite;
-import org.eclipse.swt.widgets.Control;
-import org.eclipse.swt.widgets.Label;
-import org.eclipse.swt.widgets.Text;
-
-/**
- * Dialog field containing a label, text control and a button control.
- */
-public class StringButtonDialogField extends StringDialogField {
-
- private Button fBrowseButton;
- private String fBrowseButtonLabel;
- private IStringButtonAdapter fStringButtonAdapter;
-
- private boolean fButtonEnabled;
-
- public StringButtonDialogField(IStringButtonAdapter adapter) {
- super();
- fStringButtonAdapter= adapter;
- fBrowseButtonLabel= "!Browse...!"; //$NON-NLS-1$
- fButtonEnabled= true;
- }
-
- /**
- * Sets the label of the button.
- */
- public void setButtonLabel(String label) {
- fBrowseButtonLabel= label;
- }
-
- // ------ adapter communication
-
- /**
- * Programmatical pressing of the button
- */
- public void changeControlPressed() {
- fStringButtonAdapter.changeControlPressed(this);
- }
-
- // ------- layout helpers
-
- /*
- * @see DialogField#doFillIntoGrid
- */
- public Control[] doFillIntoGrid(Composite parent, int nColumns) {
- assertEnoughColumns(nColumns);
-
- Label label= getLabelControl(parent);
- label.setLayoutData(gridDataForLabel(1));
- Text text= getTextControl(parent);
- text.setLayoutData(gridDataForText(nColumns - 2));
- Button button= getChangeControl(parent);
- button.setLayoutData(gridDataForButton(button, 1));
-
- return new Control[] { label, text, button };
- }
-
- /*
- * @see DialogField#getNumberOfControls
- */
- public int getNumberOfControls() {
- return 3;
- }
-
- protected static GridData gridDataForButton(Button button, int span) {
- GridData gd= new GridData();
- gd.horizontalAlignment= GridData.FILL;
- gd.grabExcessHorizontalSpace= false;
- gd.horizontalSpan= span;
- gd.widthHint = SWTUtil.getButtonWidthHint(button);
- return gd;
- }
-
- // ------- ui creation
-
- /**
- * Creates or returns the created buttom widget.
- * @param parent The parent composite or <code>null</code> if the widget has
- * already been created.
- */
- public Button getChangeControl(Composite parent) {
- if (fBrowseButton == null) {
- assertCompositeNotNull(parent);
-
- fBrowseButton= new Button(parent, SWT.PUSH);
- fBrowseButton.setText(fBrowseButtonLabel);
- fBrowseButton.setEnabled(isEnabled() && fButtonEnabled);
- fBrowseButton.addSelectionListener(new SelectionListener() {
- public void widgetDefaultSelected(SelectionEvent e) {
- changeControlPressed();
- }
- public void widgetSelected(SelectionEvent e) {
- changeControlPressed();
- }
- });
-
- }
- return fBrowseButton;
- }
-
- // ------ enable / disable management
-
- /**
- * Sets the enable state of the button.
- */
- public void enableButton(boolean enable) {
- if (isOkToUse(fBrowseButton)) {
- fBrowseButton.setEnabled(isEnabled() && enable);
- }
- fButtonEnabled= enable;
- }
-
- /*
- * @see DialogField#updateEnableState
- */
- protected void updateEnableState() {
- super.updateEnableState();
- if (isOkToUse(fBrowseButton)) {
- fBrowseButton.setEnabled(isEnabled() && fButtonEnabled);
- }
- }
-}
diff --git a/debug/org.eclipse.cdt.debug.mi.ui/src/org/eclipse/cdt/debug/mi/internal/ui/dialogfields/StringButtonStatusDialogField.java b/debug/org.eclipse.cdt.debug.mi.ui/src/org/eclipse/cdt/debug/mi/internal/ui/dialogfields/StringButtonStatusDialogField.java
deleted file mode 100644
index 18b6994afda..00000000000
--- a/debug/org.eclipse.cdt.debug.mi.ui/src/org/eclipse/cdt/debug/mi/internal/ui/dialogfields/StringButtonStatusDialogField.java
+++ /dev/null
@@ -1,166 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.mi.internal.ui.dialogfields;
-
-import org.eclipse.swt.SWT;
-import org.eclipse.swt.graphics.GC;
-import org.eclipse.swt.graphics.Image;
-import org.eclipse.swt.layout.GridData;
-import org.eclipse.swt.widgets.Button;
-import org.eclipse.swt.widgets.Composite;
-import org.eclipse.swt.widgets.Control;
-import org.eclipse.swt.widgets.Label;
-import org.eclipse.swt.widgets.Text;
-
-/**
- * Dialog field containing a label, text control, status label and a button control.
- * The status label can be either a image or text label, and can be usd to give
- * additional information about the current element chosen.
- */
-public class StringButtonStatusDialogField extends StringButtonDialogField {
-
- private Label fStatusLabelControl;
- private Object fStatus; // String or ImageDescriptor
-
- private String fWidthHintString;
- private int fWidthHint;
-
- public StringButtonStatusDialogField(IStringButtonAdapter adapter) {
- super(adapter);
- fStatus= null;
- fWidthHintString= null;
- fWidthHint= -1;
- }
-
- // ------ set status
-
- /**
- * Sets the status string.
- */
- public void setStatus(String status) {
- if (isOkToUse(fStatusLabelControl)) {
- fStatusLabelControl.setText(status);
- }
- fStatus= status;
- }
-
- /**
- * Sets the status image.
- * Caller is responsible to dispose image
- */
- public void setStatus(Image image) {
- if (isOkToUse(fStatusLabelControl)) {
- if (image == null) {
- fStatusLabelControl.setImage(null);
- } else {
- fStatusLabelControl.setImage(image);
- }
- }
- fStatus= image;
- }
-
- /**
- * Sets the staus string hint of the status label.
- * The string is used to calculate the size of the status label.
- */
- public void setStatusWidthHint(String widthHintString) {
- fWidthHintString= widthHintString;
- fWidthHint= -1;
- }
-
- /**
- * Sets the width hint of the status label.
- */
- public void setStatusWidthHint(int widthHint) {
- fWidthHint= widthHint;
- fWidthHintString= null;
- }
-
- // ------- layout helpers
-
- /*
- * @see DialogField#doFillIntoGrid
- */
- public Control[] doFillIntoGrid(Composite parent, int nColumns) {
- assertEnoughColumns(nColumns);
-
- Label label= getLabelControl(parent);
- label.setLayoutData(gridDataForLabel(1));
- Text text= getTextControl(parent);
- text.setLayoutData(gridDataForText(nColumns - 3));
- Label status= getStatusLabelControl(parent);
- status.setLayoutData(gridDataForStatusLabel(parent, 1));
- Button button= getChangeControl(parent);
- button.setLayoutData(gridDataForButton(button, 1));
-
- return new Control[] { label, text, status, button };
- }
-
- /*
- * @see DialogField#getNumberOfControls
- */
- public int getNumberOfControls() {
- return 4;
- }
-
- protected GridData gridDataForStatusLabel(Control aControl, int span) {
- GridData gd= new GridData();
- gd.horizontalAlignment= GridData.BEGINNING;
- gd.grabExcessHorizontalSpace= false;
- gd.horizontalIndent= 0;
- if (fWidthHintString != null) {
- GC gc= new GC(aControl);
- gd.widthHint= gc.textExtent(fWidthHintString).x;
- gc.dispose();
- } else if (fWidthHint != -1) {
- gd.widthHint= fWidthHint;
- } else {
- gd.widthHint= SWT.DEFAULT;
- }
- return gd;
- }
-
- // ------- ui creation
-
- /**
- * Creates or returns the created status label widget.
- * @param parent The parent composite or <code>null</code> when the widget has
- * already been created.
- */
- public Label getStatusLabelControl(Composite parent) {
- if (fStatusLabelControl == null) {
- assertCompositeNotNull(parent);
- fStatusLabelControl= new Label(parent, SWT.LEFT);
- fStatusLabelControl.setFont(parent.getFont());
- fStatusLabelControl.setEnabled(isEnabled());
- if (fStatus instanceof Image) {
- fStatusLabelControl.setImage((Image)fStatus);
- } else if (fStatus instanceof String) {
- fStatusLabelControl.setText((String)fStatus);
- } else {
- // must be null
- }
- }
- return fStatusLabelControl;
- }
-
- // ------ enable / disable management
-
- /*
- * @see DialogField#updateEnableState
- */
- protected void updateEnableState() {
- super.updateEnableState();
- if (isOkToUse(fStatusLabelControl)) {
- fStatusLabelControl.setEnabled(isEnabled());
- }
- }
-} \ No newline at end of file
diff --git a/debug/org.eclipse.cdt.debug.mi.ui/src/org/eclipse/cdt/debug/mi/internal/ui/dialogfields/StringDialogField.java b/debug/org.eclipse.cdt.debug.mi.ui/src/org/eclipse/cdt/debug/mi/internal/ui/dialogfields/StringDialogField.java
deleted file mode 100644
index 586c7d57d69..00000000000
--- a/debug/org.eclipse.cdt.debug.mi.ui/src/org/eclipse/cdt/debug/mi/internal/ui/dialogfields/StringDialogField.java
+++ /dev/null
@@ -1,159 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.mi.internal.ui.dialogfields;
-
-import org.eclipse.swt.SWT;
-import org.eclipse.swt.events.ModifyEvent;
-import org.eclipse.swt.events.ModifyListener;
-import org.eclipse.swt.layout.GridData;
-import org.eclipse.swt.widgets.Composite;
-import org.eclipse.swt.widgets.Control;
-import org.eclipse.swt.widgets.Label;
-import org.eclipse.swt.widgets.Text;
-
-/**
- * Dialog field containing a label and a text control.
- */
-public class StringDialogField extends DialogField {
-
- private String fText;
- private Text fTextControl;
- private ModifyListener fModifyListener;
-
- public StringDialogField() {
- super();
- fText= ""; //$NON-NLS-1$
- }
-
- // ------- layout helpers
-
- /*
- * @see DialogField#doFillIntoGrid
- */
- public Control[] doFillIntoGrid(Composite parent, int nColumns) {
- assertEnoughColumns(nColumns);
-
- Label label= getLabelControl(parent);
- label.setLayoutData(gridDataForLabel(1));
- Text text= getTextControl(parent);
- text.setLayoutData(gridDataForText(nColumns - 1));
-
- return new Control[] { label, text };
- }
-
- /*
- * @see DialogField#getNumberOfControls
- */
- public int getNumberOfControls() {
- return 2;
- }
-
- protected static GridData gridDataForText(int span) {
- GridData gd= new GridData();
- gd.horizontalAlignment= GridData.FILL;
- gd.grabExcessHorizontalSpace= false;
- gd.horizontalSpan= span;
- return gd;
- }
-
- // ------- focus methods
-
- /*
- * @see DialogField#setFocus
- */
- public boolean setFocus() {
- if (isOkToUse(fTextControl)) {
- fTextControl.setFocus();
- fTextControl.setSelection(0, fTextControl.getText().length());
- }
- return true;
- }
-
- // ------- ui creation
-
- /**
- * Creates or returns the created text control.
- * @param parent The parent composite or <code>null</code> when the widget has
- * already been created.
- */
- public Text getTextControl(Composite parent) {
- if (fTextControl == null) {
- assertCompositeNotNull(parent);
- fModifyListener= new ModifyListener() {
- public void modifyText(ModifyEvent e) {
- doModifyText(e);
- }
- };
-
- fTextControl= new Text(parent, SWT.SINGLE | SWT.BORDER);
- // moved up due to 1GEUNW2
- fTextControl.setText(fText);
- fTextControl.setFont(parent.getFont());
- fTextControl.addModifyListener(fModifyListener);
-
- fTextControl.setEnabled(isEnabled());
- }
- return fTextControl;
- }
-
- protected void doModifyText(ModifyEvent e) {
- if (isOkToUse(fTextControl)) {
- fText= fTextControl.getText();
- }
- dialogFieldChanged();
- }
-
- // ------ enable / disable management
-
- /*
- * @see DialogField#updateEnableState
- */
- protected void updateEnableState() {
- super.updateEnableState();
- if (isOkToUse(fTextControl)) {
- fTextControl.setEnabled(isEnabled());
- }
- }
-
- // ------ text access
-
- /**
- * Gets the text. Can not be <code>null</code>
- */
- public String getText() {
- return fText;
- }
-
- /**
- * Sets the text. Triggers a dialog-changed event.
- */
- public void setText(String text) {
- fText= text;
- if (isOkToUse(fTextControl)) {
- fTextControl.setText(text);
- } else {
- dialogFieldChanged();
- }
- }
-
- /**
- * Sets the text without triggering a dialog-changed event.
- */
- public void setTextWithoutUpdate(String text) {
- fText= text;
- if (isOkToUse(fTextControl)) {
- fTextControl.removeModifyListener(fModifyListener);
- fTextControl.setText(text);
- fTextControl.addModifyListener(fModifyListener);
- }
- }
-
-} \ No newline at end of file
diff --git a/debug/org.eclipse.cdt.debug.mi.ui/src/org/eclipse/cdt/debug/mi/internal/ui/preferences/MIPreferencePage.java b/debug/org.eclipse.cdt.debug.mi.ui/src/org/eclipse/cdt/debug/mi/internal/ui/preferences/MIPreferencePage.java
deleted file mode 100644
index d57a4a4c633..00000000000
--- a/debug/org.eclipse.cdt.debug.mi.ui/src/org/eclipse/cdt/debug/mi/internal/ui/preferences/MIPreferencePage.java
+++ /dev/null
@@ -1,533 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2005 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.mi.internal.ui.preferences;
-
-import java.text.MessageFormat;
-import java.util.HashMap;
-import java.util.Iterator;
-import org.eclipse.cdt.debug.mi.core.IMIConstants;
-import org.eclipse.cdt.debug.mi.core.MIPlugin;
-import org.eclipse.cdt.debug.mi.internal.ui.IMIHelpContextIds;
-import org.eclipse.cdt.debug.mi.internal.ui.MIUIPlugin;
-import org.eclipse.cdt.utils.ui.controls.ControlFactory;
-import org.eclipse.core.runtime.Preferences;
-import org.eclipse.jface.preference.BooleanFieldEditor;
-import org.eclipse.jface.preference.FieldEditor;
-import org.eclipse.jface.preference.IPreferenceStore;
-import org.eclipse.jface.preference.IntegerFieldEditor;
-import org.eclipse.jface.preference.PreferencePage;
-import org.eclipse.jface.preference.StringFieldEditor;
-import org.eclipse.jface.util.IPropertyChangeListener;
-import org.eclipse.jface.util.PropertyChangeEvent;
-import org.eclipse.swt.SWT;
-import org.eclipse.swt.layout.GridData;
-import org.eclipse.swt.layout.GridLayout;
-import org.eclipse.swt.widgets.Composite;
-import org.eclipse.swt.widgets.Control;
-import org.eclipse.swt.widgets.Label;
-import org.eclipse.ui.IWorkbench;
-import org.eclipse.ui.IWorkbenchPreferencePage;
-
-/**
- * Page for preferences that apply specifically to GDB MI.
- */
-public class MIPreferencePage extends PreferencePage implements IWorkbenchPreferencePage, IPropertyChangeListener {
-
- /**
- * This class exists to provide visibility to the
- * <code>refreshValidState</code> method and to perform more intelligent
- * clearing of the error message.
- */
- protected class MIIntegerFieldEditor extends IntegerFieldEditor {
-
- public MIIntegerFieldEditor(String name, String labelText, Composite parent) {
- super(name, labelText, parent);
- }
-
- /**
- * @see org.eclipse.jface.preference.FieldEditor#refreshValidState()
- */
- protected void refreshValidState() {
- super.refreshValidState();
- }
-
- /**
- * Clears the error message from the message line if the error
- * message is the error message from this field editor.
- */
- protected void clearErrorMessage() {
- if (canClearErrorMessage()) {
- super.clearErrorMessage();
- }
- }
- }
- public class MIPreferenceStore implements IPreferenceStore {
-
- private Preferences fPreferences;
-
- private HashMap fListeners = new HashMap();
-
- public MIPreferenceStore( Preferences pref ) {
- fPreferences = pref;
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.jface.preference.IPreferenceStore#addPropertyChangeListener(org.eclipse.jface.util.IPropertyChangeListener)
- */
- public void addPropertyChangeListener( final IPropertyChangeListener listener ) {
- Preferences.IPropertyChangeListener l = new Preferences.IPropertyChangeListener() {
-
- public void propertyChange( org.eclipse.core.runtime.Preferences.PropertyChangeEvent event ) {
- listener.propertyChange( new PropertyChangeEvent( MIPreferenceStore.this, event.getProperty(), event.getNewValue(), event.getOldValue() ) );
- }
- };
- fListeners.put( listener, l );
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.jface.preference.IPreferenceStore#contains(java.lang.String)
- */
- public boolean contains( String name ) {
- return getPreferences().contains( name );
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.jface.preference.IPreferenceStore#firePropertyChangeEvent(java.lang.String, java.lang.Object, java.lang.Object)
- */
- public void firePropertyChangeEvent( String name, Object oldValue, Object newValue ) {
- Iterator it = fListeners.keySet().iterator();
- while( it.hasNext() ) {
- ((IPropertyChangeListener)it.next()).propertyChange( new PropertyChangeEvent( this, name, oldValue, newValue ) );
- }
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.jface.preference.IPreferenceStore#getBoolean(java.lang.String)
- */
- public boolean getBoolean( String name ) {
- return fPreferences.getBoolean( name );
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.jface.preference.IPreferenceStore#getDefaultBoolean(java.lang.String)
- */
- public boolean getDefaultBoolean( String name ) {
- return fPreferences.getDefaultBoolean( name );
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.jface.preference.IPreferenceStore#getDefaultDouble(java.lang.String)
- */
- public double getDefaultDouble( String name ) {
- return fPreferences.getDefaultDouble( name );
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.jface.preference.IPreferenceStore#getDefaultFloat(java.lang.String)
- */
- public float getDefaultFloat( String name ) {
- return fPreferences.getDefaultFloat( name );
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.jface.preference.IPreferenceStore#getDefaultInt(java.lang.String)
- */
- public int getDefaultInt( String name ) {
- return fPreferences.getDefaultInt( name );
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.jface.preference.IPreferenceStore#getDefaultLong(java.lang.String)
- */
- public long getDefaultLong( String name ) {
- return fPreferences.getDefaultLong( name );
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.jface.preference.IPreferenceStore#getDefaultString(java.lang.String)
- */
- public String getDefaultString( String name ) {
- return fPreferences.getDefaultString( name );
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.jface.preference.IPreferenceStore#getDouble(java.lang.String)
- */
- public double getDouble( String name ) {
- return fPreferences.getDouble( name );
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.jface.preference.IPreferenceStore#getFloat(java.lang.String)
- */
- public float getFloat( String name ) {
- return fPreferences.getFloat( name );
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.jface.preference.IPreferenceStore#getInt(java.lang.String)
- */
- public int getInt( String name ) {
- return fPreferences.getInt( name );
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.jface.preference.IPreferenceStore#getLong(java.lang.String)
- */
- public long getLong( String name ) {
- return fPreferences.getLong( name );
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.jface.preference.IPreferenceStore#getString(java.lang.String)
- */
- public String getString( String name ) {
- return fPreferences.getString( name );
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.jface.preference.IPreferenceStore#isDefault(java.lang.String)
- */
- public boolean isDefault( String name ) {
- return fPreferences.isDefault( name );
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.jface.preference.IPreferenceStore#needsSaving()
- */
- public boolean needsSaving() {
- return getPreferences().needsSaving();
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.jface.preference.IPreferenceStore#putValue(java.lang.String, java.lang.String)
- */
- public void putValue( String name, String value ) {
- getPreferences().setValue( name, value );
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.jface.preference.IPreferenceStore#removePropertyChangeListener(org.eclipse.jface.util.IPropertyChangeListener)
- */
- public void removePropertyChangeListener( IPropertyChangeListener listener ) {
- fListeners.remove( listener );
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.jface.preference.IPreferenceStore#setDefault(java.lang.String, double)
- */
- public void setDefault( String name, double value ) {
- getPreferences().setDefault( name, value );
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.jface.preference.IPreferenceStore#setDefault(java.lang.String, float)
- */
- public void setDefault( String name, float value ) {
- getPreferences().setDefault( name, value );
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.jface.preference.IPreferenceStore#setDefault(java.lang.String, int)
- */
- public void setDefault( String name, int value ) {
- getPreferences().setDefault( name, value );
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.jface.preference.IPreferenceStore#setDefault(java.lang.String, long)
- */
- public void setDefault( String name, long value ) {
- getPreferences().setDefault( name, value );
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.jface.preference.IPreferenceStore#setDefault(java.lang.String, java.lang.String)
- */
- public void setDefault( String name, String defaultObject ) {
- getPreferences().setDefault( name, defaultObject );
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.jface.preference.IPreferenceStore#setDefault(java.lang.String, boolean)
- */
- public void setDefault( String name, boolean value ) {
- getPreferences().setDefault( name, value );
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.jface.preference.IPreferenceStore#setToDefault(java.lang.String)
- */
- public void setToDefault( String name ) {
- getPreferences().setToDefault( name );
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.jface.preference.IPreferenceStore#setValue(java.lang.String, double)
- */
- public void setValue( String name, double value ) {
- getPreferences().setValue( name, value );
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.jface.preference.IPreferenceStore#setValue(java.lang.String, float)
- */
- public void setValue( String name, float value ) {
- getPreferences().setValue( name, value );
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.jface.preference.IPreferenceStore#setValue(java.lang.String, int)
- */
- public void setValue( String name, int value ) {
- getPreferences().setValue( name, value );
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.jface.preference.IPreferenceStore#setValue(java.lang.String, long)
- */
- public void setValue( String name, long value ) {
- getPreferences().setValue( name, value );
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.jface.preference.IPreferenceStore#setValue(java.lang.String, java.lang.String)
- */
- public void setValue( String name, String value ) {
- getPreferences().setValue( name, value );
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.jface.preference.IPreferenceStore#setValue(java.lang.String, boolean)
- */
- public void setValue( String name, boolean value ) {
- getPreferences().setValue( name, value );
- }
-
- protected Preferences getPreferences() {
- return fPreferences;
- }
- }
-
- private IWorkbench fWorkbench;
-
- // Debugger timeout preference widgets
- private MIIntegerFieldEditor fDebugTimeoutText;
-
- // Launch timeout preference widgets
- private MIIntegerFieldEditor fLaunchTimeoutText;
-
- private BooleanFieldEditor fRefreshSolibsButton;
-
- private MIPreferenceStore fMICorePreferenceStore = new MIPreferenceStore( MIPlugin.getDefault().getPluginPreferences() );
-
- /**
- * Constructor for MIPreferencePage.
- */
- public MIPreferencePage() {
- super();
- setPreferenceStore( MIUIPlugin.getDefault().getPreferenceStore() );
- setDescription( PreferenceMessages.getString( "MIPreferencePage.0" ) ); //$NON-NLS-1$
- }
-
- /*
- * (non-Javadoc)
- *
- * @see org.eclipse.jface.preference.PreferencePage#createContents(Composite)
- */
- protected Control createContents( Composite parent ) {
- getWorkbench().getHelpSystem().setHelp( getControl(), IMIHelpContextIds.MI_PREFERENCE_PAGE );
- //The main composite
- Composite composite = new Composite( parent, SWT.NULL );
- GridLayout layout = new GridLayout();
- layout.numColumns = 1;
- layout.marginHeight = 0;
- layout.marginWidth = 0;
- composite.setLayout( layout );
- GridData data = new GridData();
- data.verticalAlignment = GridData.FILL;
- data.horizontalAlignment = GridData.FILL;
- composite.setLayoutData( data );
- createSpacer( composite, 1 );
- createCommunicationPreferences( composite );
- return composite;
- }
-
- /**
- * Creates composite group and sets the default layout data.
- *
- * @param parent the parent of the new composite
- * @param numColumns the number of columns for the new composite
- * @param labelText the text label of the new composite
- * @return the newly-created composite
- */
- private Composite createGroupComposite( Composite parent, int numColumns, String labelText ) {
- return ControlFactory.createGroup( parent, labelText, numColumns );
- }
-
- /**
- * @see IPreferencePage#performOk()
- */
- public boolean performOk() {
- boolean result = super.performOk();
- storeValues();
- MIUIPlugin.getDefault().savePluginPreferences();
- MIPlugin.getDefault().savePluginPreferences();
- return result;
- }
-
- /**
- * Sets the default preferences.
- *
- * @see PreferencePage#performDefaults()
- */
- protected void performDefaults() {
- setDefaultValues();
- super.performDefaults();
- }
-
- private void setDefaultValues() {
- fDebugTimeoutText.loadDefault();
- fLaunchTimeoutText.loadDefault();
- fRefreshSolibsButton.loadDefault();
- }
-
- /*
- * (non-Javadoc)
- *
- * @see org.eclipse.ui.IWorkbenchPreferencePage#init(IWorkbench)
- */
- public void init( IWorkbench workbench ) {
- fWorkbench = workbench;
- }
-
- protected void createSpacer( Composite composite, int columnSpan ) {
- Label label = new Label( composite, SWT.NONE );
- GridData gd = new GridData();
- gd.horizontalSpan = columnSpan;
- label.setLayoutData( gd );
- }
-
- private void createCommunicationPreferences( Composite composite ) {
- Composite comp = createGroupComposite( composite, 1, PreferenceMessages.getString( "MIPreferencePage.1" ) ); //$NON-NLS-1$
- //Add in an intermediate composite to allow for spacing
- Composite spacingComposite = new Composite( comp, SWT.NONE );
- GridLayout layout = new GridLayout();
- spacingComposite.setLayout( layout );
- GridData data = new GridData();
- data.horizontalSpan = 2;
- spacingComposite.setLayoutData( data );
- fDebugTimeoutText = createTimeoutField( IMIConstants.PREF_REQUEST_TIMEOUT, PreferenceMessages.getString( "MIPreferencePage.2" ), spacingComposite ); //$NON-NLS-1$
- fDebugTimeoutText.setPropertyChangeListener( this );
- fLaunchTimeoutText = createTimeoutField( IMIConstants.PREF_REQUEST_LAUNCH_TIMEOUT, PreferenceMessages.getString( "MIPreferencePage.3" ), spacingComposite ); //$NON-NLS-1$
- fLaunchTimeoutText.setPropertyChangeListener( this );
- fRefreshSolibsButton = createRefreshField( IMIConstants.PREF_SHARED_LIBRARIES_AUTO_REFRESH, PreferenceMessages.getString( "MIPreferencePage.6" ), spacingComposite ); //$NON-NLS-1$
- }
-
- /**
- * Store the preference values based on the state of the component widgets
- */
- private void storeValues() {
- fDebugTimeoutText.store();
- fLaunchTimeoutText.store();
- fRefreshSolibsButton.store();
- }
-
- private MIIntegerFieldEditor createTimeoutField( String preference, String label, Composite parent ) {
- MIIntegerFieldEditor toText = new MIIntegerFieldEditor( preference, label, parent );
- GridData data = new GridData();
- data.widthHint = convertWidthInCharsToPixels( 10 );
- toText.getTextControl( parent ).setLayoutData( data );
- toText.setPreferenceStore( getMICorePreferenceStore() );
- toText.setPage( this );
- toText.setValidateStrategy( StringFieldEditor.VALIDATE_ON_KEY_STROKE );
- toText.setValidRange( IMIConstants.MIN_REQUEST_TIMEOUT, IMIConstants.MAX_REQUEST_TIMEOUT );
- String minValue = Integer.toString( IMIConstants.MIN_REQUEST_TIMEOUT );
- String maxValue = Integer.toString( IMIConstants.MAX_REQUEST_TIMEOUT );
- toText.setErrorMessage( MessageFormat.format( PreferenceMessages.getString( "MIPreferencePage.4" ), new String[]{ minValue, maxValue } ) ); //$NON-NLS-1$
- toText.load();
- return toText;
- }
-
- private BooleanFieldEditor createRefreshField( String preference, String label, Composite parent ) {
- BooleanFieldEditor field = new BooleanFieldEditor( preference, label, parent );
- field.setPage( this );
- field.setPreferenceStore( new MIPreferenceStore( MIPlugin.getDefault().getPluginPreferences() ) );
- field.load();
- return field;
- }
-
- protected MIPreferenceStore getMICorePreferenceStore() {
- return fMICorePreferenceStore;
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.jface.dialogs.IDialogPage#dispose()
- */
- public void dispose() {
- fDebugTimeoutText.dispose();
- fLaunchTimeoutText.dispose();
- fRefreshSolibsButton.dispose();
- super.dispose();
- }
-
- protected MIIntegerFieldEditor getLaunchTimeoutText() {
- return fLaunchTimeoutText;
- }
-
- protected MIIntegerFieldEditor getDebugTimeoutText() {
- return fDebugTimeoutText;
- }
-
- /**
- * @see org.eclipse.jface.util.IPropertyChangeListener#propertyChange(org.eclipse.jface.util.PropertyChangeEvent)
- */
- public void propertyChange(PropertyChangeEvent event) {
-
- if (event.getProperty().equals(FieldEditor.IS_VALID)) {
- boolean newValue = ((Boolean) event.getNewValue()).booleanValue();
- // If the new value is true then we must check all field editors.
- // If it is false, then the page is invalid in any case.
- MIIntegerFieldEditor launchTimeout = getLaunchTimeoutText();
- MIIntegerFieldEditor debugTimeout = getDebugTimeoutText();
- if (newValue) {
- if (launchTimeout != null && event.getSource() != launchTimeout) {
- launchTimeout.refreshValidState();
- }
- if (debugTimeout != null && event.getSource() != debugTimeout) {
- debugTimeout.refreshValidState();
- }
- }
- setValid(launchTimeout.isValid() && debugTimeout.isValid());
- getContainer().updateButtons();
- updateApplyButton();
- }
- }
-
- protected boolean canClearErrorMessage() {
- MIIntegerFieldEditor launchTimeout = getLaunchTimeoutText();
- MIIntegerFieldEditor debugTimeout = getDebugTimeoutText();
- boolean validLaunch = false;
- boolean validDebug = false;
- if (launchTimeout != null) {
- validLaunch = launchTimeout.isValid();
- }
- if (debugTimeout != null) {
- validDebug = debugTimeout.isValid();
- }
- return validLaunch && validDebug;
- }
-
- private IWorkbench getWorkbench() {
- return fWorkbench;
- }
-
-}
diff --git a/debug/org.eclipse.cdt.debug.mi.ui/src/org/eclipse/cdt/debug/mi/internal/ui/preferences/PreferenceMessages.java b/debug/org.eclipse.cdt.debug.mi.ui/src/org/eclipse/cdt/debug/mi/internal/ui/preferences/PreferenceMessages.java
deleted file mode 100644
index 2ae2b0266b4..00000000000
--- a/debug/org.eclipse.cdt.debug.mi.ui/src/org/eclipse/cdt/debug/mi/internal/ui/preferences/PreferenceMessages.java
+++ /dev/null
@@ -1,33 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.mi.internal.ui.preferences;
-
-import java.util.MissingResourceException;
-import java.util.ResourceBundle;
-
-public class PreferenceMessages {
-
- private static final String BUNDLE_NAME = "org.eclipse.cdt.debug.mi.internal.ui.preferences.PreferenceMessages";//$NON-NLS-1$
-
- private static final ResourceBundle RESOURCE_BUNDLE = ResourceBundle.getBundle( BUNDLE_NAME );
-
- private PreferenceMessages() {
- }
-
- public static String getString( String key ) {
- try {
- return RESOURCE_BUNDLE.getString( key );
- }
- catch( MissingResourceException e ) {
- return '!' + key + '!';
- }
- }
-}
diff --git a/debug/org.eclipse.cdt.debug.mi.ui/src/org/eclipse/cdt/debug/mi/internal/ui/preferences/PreferenceMessages.properties b/debug/org.eclipse.cdt.debug.mi.ui/src/org/eclipse/cdt/debug/mi/internal/ui/preferences/PreferenceMessages.properties
deleted file mode 100644
index 03a5ba7170f..00000000000
--- a/debug/org.eclipse.cdt.debug.mi.ui/src/org/eclipse/cdt/debug/mi/internal/ui/preferences/PreferenceMessages.properties
+++ /dev/null
@@ -1,17 +0,0 @@
-###############################################################################
-# Copyright (c) 2003, 2005 QNX Software Systems and others.
-# All rights reserved. This program and the accompanying materials
-# are made available under the terms of the Eclipse Public License v1.0
-# which accompanies this distribution, and is available at
-# http://www.eclipse.org/legal/epl-v10.html
-#
-# Contributors:
-# QNX Software Systems - initial API and implementation
-###############################################################################
-
-MIPreferencePage.0=General settings for GDB MI.
-MIPreferencePage.1=Communication
-MIPreferencePage.2=&Debugger timeout (ms):
-MIPreferencePage.3=&Launch timeout (ms):
-MIPreferencePage.4=The valid value range is [{0},{1}].
-MIPreferencePage.6=Automatically refresh modules
diff --git a/debug/org.eclipse.cdt.debug.mi.ui/src/org/eclipse/cdt/debug/mi/internal/ui/propertypages/OptionsPropertyPage.java b/debug/org.eclipse.cdt.debug.mi.ui/src/org/eclipse/cdt/debug/mi/internal/ui/propertypages/OptionsPropertyPage.java
deleted file mode 100644
index 562ba3cede4..00000000000
--- a/debug/org.eclipse.cdt.debug.mi.ui/src/org/eclipse/cdt/debug/mi/internal/ui/propertypages/OptionsPropertyPage.java
+++ /dev/null
@@ -1,104 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004, 2005 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.mi.internal.ui.propertypages;
-
-import org.eclipse.cdt.debug.core.cdi.CDIException;
-import org.eclipse.cdt.debug.core.cdi.ICDISession;
-import org.eclipse.cdt.debug.core.cdi.model.ICDITarget;
-import org.eclipse.cdt.debug.mi.core.cdi.Session;
-import org.eclipse.cdt.utils.ui.controls.ControlFactory;
-import org.eclipse.debug.core.DebugPlugin;
-import org.eclipse.swt.SWT;
-import org.eclipse.swt.layout.GridData;
-import org.eclipse.swt.widgets.Button;
-import org.eclipse.swt.widgets.Composite;
-import org.eclipse.swt.widgets.Control;
-import org.eclipse.ui.dialogs.PropertyPage;
-
-/**
- * The property page for the gdb/mi-based debugger options.
- */
-public class OptionsPropertyPage extends PropertyPage {
-
- private Button fRefreshSolibsButton;
-
- /**
- * Constructor for OptionsPropertyPage.
- */
- public OptionsPropertyPage() {
- noDefaultAndApplyButton();
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.jface.preference.PreferencePage#createContents(org.eclipse.swt.widgets.Composite)
- */
- protected Control createContents( Composite parent ) {
- Composite comp = ControlFactory.createComposite( parent, 1 );
- fRefreshSolibsButton = createCheckButton( comp, PropertyMessages.getString( "OptionsPropertyPage.1" ) ); //$NON-NLS-1$
- initialize();
- return comp;
- }
-
- private Button createCheckButton( Composite parent, String label ) {
- Button button = new Button( parent, SWT.CHECK | SWT.LEFT );
- button.setText( label );
- // FieldEditor GridData
- GridData data = new GridData();
- button.setLayoutData( data );
- return button;
- }
-
- private void initialize() {
- boolean solibUpdate = true;
- ICDISession session = (ICDISession)getElement().getAdapter( ICDISession.class );
- if ( session instanceof Session ) {
- solibUpdate = ((Session)session).getSharedLibraryManager().isAutoUpdate();
- }
- fRefreshSolibsButton.setSelection( solibUpdate );
-
- }
-
- protected void performApply() {
- storeValues();
- super.performApply();
- }
-
- public boolean performOk() {
- storeValues();
- return super.performOk();
- }
-
- private void storeValues() {
- ICDISession session = (ICDISession)getElement().getAdapter( ICDISession.class );
- final ICDITarget target = (ICDITarget)getElement().getAdapter( ICDITarget.class );
- if ( session instanceof Session ) {
- final boolean solibUpdate = fRefreshSolibsButton.getSelection();
- final Session miSession = ((Session)session);
- miSession.getSharedLibraryManager().setAutoUpdate( solibUpdate );
- if ( target.isSuspended() && solibUpdate ) {
- DebugPlugin.getDefault().asyncExec( new Runnable() {
-
- public void run() {
- if ( target.isSuspended() ) {
- if ( solibUpdate ) {
- try {
- miSession.getSharedLibraryManager().update();
- }
- catch( CDIException e ) {
- }
- }
- }
- }
- } );
- }
- }
- }
-}
diff --git a/debug/org.eclipse.cdt.debug.mi.ui/src/org/eclipse/cdt/debug/mi/internal/ui/propertypages/PropertyMessages.java b/debug/org.eclipse.cdt.debug.mi.ui/src/org/eclipse/cdt/debug/mi/internal/ui/propertypages/PropertyMessages.java
deleted file mode 100644
index eabe4d9dce6..00000000000
--- a/debug/org.eclipse.cdt.debug.mi.ui/src/org/eclipse/cdt/debug/mi/internal/ui/propertypages/PropertyMessages.java
+++ /dev/null
@@ -1,37 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.mi.internal.ui.propertypages;
-
-import java.util.MissingResourceException;
-import java.util.ResourceBundle;
-
-/**
- * Comment for .
- */
-public class PropertyMessages {
-
- private static final String BUNDLE_NAME = "org.eclipse.cdt.debug.mi.internal.ui.propertypages.PropertyMessages";//$NON-NLS-1$
-
- private static final ResourceBundle RESOURCE_BUNDLE = ResourceBundle.getBundle( BUNDLE_NAME );
-
- private PropertyMessages() {
- }
-
- public static String getString( String key ) {
- // TODO Auto-generated method stub
- try {
- return RESOURCE_BUNDLE.getString( key );
- }
- catch( MissingResourceException e ) {
- return '!' + key + '!';
- }
- }
-}
diff --git a/debug/org.eclipse.cdt.debug.mi.ui/src/org/eclipse/cdt/debug/mi/internal/ui/propertypages/PropertyMessages.properties b/debug/org.eclipse.cdt.debug.mi.ui/src/org/eclipse/cdt/debug/mi/internal/ui/propertypages/PropertyMessages.properties
deleted file mode 100644
index d47a940b7d7..00000000000
--- a/debug/org.eclipse.cdt.debug.mi.ui/src/org/eclipse/cdt/debug/mi/internal/ui/propertypages/PropertyMessages.properties
+++ /dev/null
@@ -1,11 +0,0 @@
-###############################################################################
-# Copyright (c) 2005 QNX Software Systems and others.
-# All rights reserved. This program and the accompanying materials
-# are made available under the terms of the Eclipse Public License v1.0
-# which accompanies this distribution, and is available at
-# http://www.eclipse.org/legal/epl-v10.html
-#
-# Contributors:
-# QNX Software Systems - initial API and implementation
-###############################################################################
-OptionsPropertyPage.1=Automatically refresh modules
diff --git a/debug/org.eclipse.cdt.debug.mi.ui/src/org/eclipse/cdt/debug/mi/ui/IMILaunchConfigurationComponent.java b/debug/org.eclipse.cdt.debug.mi.ui/src/org/eclipse/cdt/debug/mi/ui/IMILaunchConfigurationComponent.java
deleted file mode 100644
index c363b9eeaf0..00000000000
--- a/debug/org.eclipse.cdt.debug.mi.ui/src/org/eclipse/cdt/debug/mi/ui/IMILaunchConfigurationComponent.java
+++ /dev/null
@@ -1,84 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.mi.ui;
-
-import org.eclipse.debug.core.ILaunchConfiguration;
-import org.eclipse.debug.core.ILaunchConfigurationWorkingCopy;
-import org.eclipse.swt.widgets.Composite;
-import org.eclipse.swt.widgets.Control;
-
-/**
- * The common interface for UI components of the launch configuration tabs.
- */
-public interface IMILaunchConfigurationComponent {
-
- /**
- * Creates the top level control for this component under the given parent composite.
- * <p>
- * Implementors are responsible for ensuring that the created control can be accessed via <code>getControl</code>
- * </p>
- *
- * @param parent the parent composite
- */
- public void createControl( Composite parent );
-
- /**
- * Returns the top level control for this component.
- * <p>
- * May return <code>null</code> if the control has not been created yet.
- * </p>
- *
- * @return the top level control or <code>null</code>
- */
- public Control getControl();
-
- /**
- * Initializes the given component with default values.
- * This method may be called before this tab's control is created.
- *
- * @param configuration launch configuration
- */
- public void setDefaults( ILaunchConfigurationWorkingCopy configuration );
-
- /**
- * Initializes this component's controls with values from the given
- * launch configuration.
- *
- * @param configuration launch configuration
- */
- public void initializeFrom( ILaunchConfiguration configuration );
-
- /**
- * Notifies this component that it has been disposed.
- * Marks the end of this component's lifecycle, allowing
- * to perform any cleanup required.
- */
- public void dispose();
-
- /**
- * Copies values from this component into the given launch configuration.
- *
- * @param configuration launch configuration
- */
- public void performApply( ILaunchConfigurationWorkingCopy configuration );
-
- /**
- * Returns whether this component is in a valid state in the context
- * of the specified launch configuration.
- *
- * @param launchConfig launch configuration which provides context
- * for validating this component.
- * This value must not be <code>null</code>.
- *
- * @return whether this component is in a valid state
- */
- public boolean isValid(ILaunchConfiguration launchConfig);
-}
diff --git a/debug/org.eclipse.cdt.debug.mi.ui/src/org/eclipse/cdt/debug/mi/ui/MIUIUtils.java b/debug/org.eclipse.cdt.debug.mi.ui/src/org/eclipse/cdt/debug/mi/ui/MIUIUtils.java
deleted file mode 100644
index b0277bba31d..00000000000
--- a/debug/org.eclipse.cdt.debug.mi.ui/src/org/eclipse/cdt/debug/mi/ui/MIUIUtils.java
+++ /dev/null
@@ -1,33 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.mi.ui;
-
-import org.eclipse.cdt.debug.mi.internal.ui.GDBSolibBlock;
-import org.eclipse.cdt.debug.mi.internal.ui.SolibSearchPathBlock;
-import org.eclipse.cdt.debug.mi.internal.ui.dialogfields.IListAdapter;
-
-/**
- * This class provides utilities for clients of the MI UI.
- */
-public class MIUIUtils {
-
- public static IMILaunchConfigurationComponent createGDBSolibBlock( IMILaunchConfigurationComponent solibSearchBlock, boolean autoSolib, boolean stopOnSolibEvents ) {
- return new GDBSolibBlock( solibSearchBlock, autoSolib, stopOnSolibEvents );
- }
-
- public static IMILaunchConfigurationComponent createGDBSolibBlock( boolean autoSolib, boolean stopOnSolibEvents ) {
- return new GDBSolibBlock( new SolibSearchPathBlock(), autoSolib, stopOnSolibEvents );
- }
-
- public static IMILaunchConfigurationComponent createSolibSearchPathBlock( String[] customButtonLabels, IListAdapter listAdapter ) {
- return new SolibSearchPathBlock( customButtonLabels, listAdapter );
- }
-}
diff --git a/debug/org.eclipse.cdt.debug.mi.ui/src/org/eclipse/cdt/debug/mi/ui/console/MiConsolePageParticipant.java b/debug/org.eclipse.cdt.debug.mi.ui/src/org/eclipse/cdt/debug/mi/ui/console/MiConsolePageParticipant.java
deleted file mode 100644
index 94564d86888..00000000000
--- a/debug/org.eclipse.cdt.debug.mi.ui/src/org/eclipse/cdt/debug/mi/ui/console/MiConsolePageParticipant.java
+++ /dev/null
@@ -1,110 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2006 STMicroelectronics.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * STMicroelectronics - Process console enhancements
- *******************************************************************************/
-package org.eclipse.cdt.debug.mi.ui.console;
-
-import java.util.Observable;
-import java.util.Observer;
-
-import org.eclipse.cdt.debug.mi.core.GDBProcess;
-import org.eclipse.cdt.debug.mi.ui.console.actions.MiConsoleSaveAction;
-import org.eclipse.cdt.debug.mi.ui.console.actions.MiConsoleVerboseModeAction;
-import org.eclipse.debug.core.DebugEvent;
-import org.eclipse.debug.core.DebugPlugin;
-import org.eclipse.debug.core.IDebugEventSetListener;
-import org.eclipse.jface.action.Separator;
-import org.eclipse.ui.IActionBars;
-import org.eclipse.ui.console.IConsoleConstants;
-import org.eclipse.ui.console.IConsolePageParticipant;
-import org.eclipse.ui.part.IPageBookViewPage;
-import org.eclipse.ui.console.IConsole;
-
-/**
- * Enhances ProcessConsole when the process attached is a GDBProcess
- *
- */
-public class MiConsolePageParticipant implements IConsolePageParticipant, IDebugEventSetListener, Observer {
-
- private MiConsoleSaveAction fSaveConsole = null;
- private MiConsoleVerboseModeAction fVerboseMode = null;
- private org.eclipse.debug.ui.console.IConsole fConsole = null;
- private org.eclipse.cdt.debug.mi.core.GDBProcess GDBProcess = null;
-
- public void activated() {
- }
-
- public void deactivated() {
- }
-
- public void dispose() {
- if(GDBProcess != null) {
- DebugPlugin.getDefault().removeDebugEventListener(this);
- }
- fSaveConsole = null;
- fVerboseMode = null;
- GDBProcess = null;
- fConsole = null;
- }
-
- public void init(IPageBookViewPage page, IConsole console) {
-
- if(console instanceof org.eclipse.debug.ui.console.IConsole)
- {
- fConsole = (org.eclipse.debug.ui.console.IConsole) console;
- if(fConsole.getProcess() instanceof GDBProcess) {
-
- GDBProcess = (GDBProcess) fConsole.getProcess();
-
- // add two new actions: save console content and verbose console mode switcher
- IActionBars bars = page.getSite().getActionBars();
- bars.getToolBarManager().appendToGroup(IConsoleConstants.OUTPUT_GROUP, new Separator());
- fSaveConsole = new MiConsoleSaveAction(fConsole);
- bars.getToolBarManager().appendToGroup(IConsoleConstants.OUTPUT_GROUP, fSaveConsole);
- fVerboseMode = new MiConsoleVerboseModeAction(fConsole);
- bars.getToolBarManager().appendToGroup(IConsoleConstants.OUTPUT_GROUP, fVerboseMode);
- bars.getToolBarManager().appendToGroup(IConsoleConstants.OUTPUT_GROUP, new Separator());
-
- // add a debug event listener
- DebugPlugin.getDefault().addDebugEventListener(this);
-
- // register this object as MISession observer
- GDBProcess.getTarget().getMISession().addObserver(this);
- }
- }
- }
-
- public Object getAdapter(Class adapter) {
- return null;
- }
-
- public void handleDebugEvents(DebugEvent[] events) {
- for (int i = 0; i < events.length; i++) {
- DebugEvent event = events[i];
- if (event.getSource().equals(GDBProcess)) {
- if (fVerboseMode != null) {
- fVerboseMode.setEnabled(!GDBProcess.isTerminated());
- }
- }
- }
- }
-
- /**
- * Handle MISession notification
- */
- public void update(Observable arg0, Object arg1) {
- if((arg1!=null) && (arg1 instanceof VerboseModeChangedEvent) && (fVerboseMode != null)) {
- try {
- fVerboseMode.setChecked(GDBProcess.getTarget().isVerboseModeEnabled());
- } catch (Exception e) {
- }
- }
- }
-
-}
diff --git a/debug/org.eclipse.cdt.debug.mi.ui/src/org/eclipse/cdt/debug/mi/ui/console/VerboseModeChangedEvent.java b/debug/org.eclipse.cdt.debug.mi.ui/src/org/eclipse/cdt/debug/mi/ui/console/VerboseModeChangedEvent.java
deleted file mode 100644
index c56afa46fc0..00000000000
--- a/debug/org.eclipse.cdt.debug.mi.ui/src/org/eclipse/cdt/debug/mi/ui/console/VerboseModeChangedEvent.java
+++ /dev/null
@@ -1,29 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2006 STMicroelectronics.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * STMicroelectronics - Process console enhancements
- *******************************************************************************/
-package org.eclipse.cdt.debug.mi.ui.console;
-
-import org.eclipse.cdt.debug.mi.core.MISession;
-import org.eclipse.cdt.debug.mi.core.event.MIEvent;
-
-/**
- * MISession event, verbose console mode changed
- *
- */
-public class VerboseModeChangedEvent extends MIEvent {
-
- private static final long serialVersionUID = 1L;
-
- public VerboseModeChangedEvent(MISession session, int token) {
- super(session, token);
- setPropagate(false);
- }
-
-}
diff --git a/debug/org.eclipse.cdt.debug.mi.ui/src/org/eclipse/cdt/debug/mi/ui/console/actions/IMiConsoleImagesConst.java b/debug/org.eclipse.cdt.debug.mi.ui/src/org/eclipse/cdt/debug/mi/ui/console/actions/IMiConsoleImagesConst.java
deleted file mode 100644
index d04f579db62..00000000000
--- a/debug/org.eclipse.cdt.debug.mi.ui/src/org/eclipse/cdt/debug/mi/ui/console/actions/IMiConsoleImagesConst.java
+++ /dev/null
@@ -1,17 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2006 STMicroelectronics.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * STMicroelectronics - Process console enhancements
- *******************************************************************************/
-package org.eclipse.cdt.debug.mi.ui.console.actions;
-
-public interface IMiConsoleImagesConst {
-
- public static final String IMG_SAVE_CONSOLE = "icons/obj16/save_console.gif";
- public static final String IMG_VERBOSE_CONSOLE = "icons/obj16/verbose_mode_co.gif";
-}
diff --git a/debug/org.eclipse.cdt.debug.mi.ui/src/org/eclipse/cdt/debug/mi/ui/console/actions/MiConsoleMessages.java b/debug/org.eclipse.cdt.debug.mi.ui/src/org/eclipse/cdt/debug/mi/ui/console/actions/MiConsoleMessages.java
deleted file mode 100644
index e795ddfe2a5..00000000000
--- a/debug/org.eclipse.cdt.debug.mi.ui/src/org/eclipse/cdt/debug/mi/ui/console/actions/MiConsoleMessages.java
+++ /dev/null
@@ -1,29 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2006 STMicroelectronics.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * STMicroelectronics - Process console enhancements
- *******************************************************************************/
-package org.eclipse.cdt.debug.mi.ui.console.actions;
-
-import org.eclipse.osgi.util.NLS;
-
-public class MiConsoleMessages extends NLS {
- private static final String BUNDLE_NAME = "org.eclipse.cdt.debug.mi.ui.console.actions.MiConsoleMessages";
-
- public static String saveActionTooltip;
- public static String verboseActionTooltip;
-
- public static String confirmOverWrite;
- public static String infoIOError;
-
- static {
- // load message values from bundle file
- NLS.initializeMessages(BUNDLE_NAME, MiConsoleMessages.class);
- }
-
-}
diff --git a/debug/org.eclipse.cdt.debug.mi.ui/src/org/eclipse/cdt/debug/mi/ui/console/actions/MiConsoleMessages.properties b/debug/org.eclipse.cdt.debug.mi.ui/src/org/eclipse/cdt/debug/mi/ui/console/actions/MiConsoleMessages.properties
deleted file mode 100644
index 27b122d6efa..00000000000
--- a/debug/org.eclipse.cdt.debug.mi.ui/src/org/eclipse/cdt/debug/mi/ui/console/actions/MiConsoleMessages.properties
+++ /dev/null
@@ -1,4 +0,0 @@
-saveActionTooltip=Save console content
-verboseActionTooltip=Verbose console mode
-confirmOverWrite=File exists, do you want overwrite it?
-infoIOError=Error during save console content. Task failed.
diff --git a/debug/org.eclipse.cdt.debug.mi.ui/src/org/eclipse/cdt/debug/mi/ui/console/actions/MiConsoleSaveAction.java b/debug/org.eclipse.cdt.debug.mi.ui/src/org/eclipse/cdt/debug/mi/ui/console/actions/MiConsoleSaveAction.java
deleted file mode 100644
index 38111c7e051..00000000000
--- a/debug/org.eclipse.cdt.debug.mi.ui/src/org/eclipse/cdt/debug/mi/ui/console/actions/MiConsoleSaveAction.java
+++ /dev/null
@@ -1,80 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2006 STMicroelectronics.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * STMicroelectronics - Process console enhancements
- *******************************************************************************/
-
-package org.eclipse.cdt.debug.mi.ui.console.actions;
-
-import java.io.BufferedWriter;
-import java.io.File;
-import java.io.FileWriter;
-import java.io.IOException;
-
-import org.eclipse.cdt.debug.mi.internal.ui.MIUIPlugin;
-import org.eclipse.debug.ui.console.IConsole;
-import org.eclipse.jface.action.Action;
-import org.eclipse.jface.dialogs.MessageDialog;
-import org.eclipse.swt.SWT;
-import org.eclipse.swt.custom.BusyIndicator;
-import org.eclipse.swt.widgets.Display;
-import org.eclipse.swt.widgets.FileDialog;
-
-/**
- * Save console content
- *
- */
-public class MiConsoleSaveAction extends Action{
-
- private IConsole fConsole;
- private String fileName;
-
- public MiConsoleSaveAction(IConsole console) {
- super();
- setToolTipText(MiConsoleMessages.saveActionTooltip);
- setImageDescriptor(MIUIPlugin.imageDescriptorFromPlugin(MIUIPlugin.PLUGIN_ID,IMiConsoleImagesConst.IMG_SAVE_CONSOLE));
- fConsole = console;
- }
-
- public void run() {
-
- FileDialog fileDialog = new FileDialog(Display.getCurrent().getActiveShell(), SWT.SAVE);
- fileName = fileDialog.open();
- if(fileName==null) {
- return;
- }
-
- Runnable saveJob = new Runnable() {
- public void run() {
- saveContent();
- }
- };
- BusyIndicator.showWhile(Display.getCurrent(), saveJob);
-
- }
-
- protected void saveContent() {
- boolean confirmed = true;
-
- try {
- File f = new File(fileName);
- if(f.exists()) {
- confirmed = MessageDialog.openQuestion(Display.getCurrent().getActiveShell(), "Confirm overwrite", MiConsoleMessages.confirmOverWrite);
- }
- if(confirmed) {
- BufferedWriter out = new BufferedWriter(new FileWriter(fileName));
- out.write(fConsole.getDocument().get());
- out.close();
- }
- } catch (IOException e) {
- MessageDialog.openError(Display.getCurrent().getActiveShell(),"Error",MiConsoleMessages.infoIOError);
- }
-
- }
-
-}
diff --git a/debug/org.eclipse.cdt.debug.mi.ui/src/org/eclipse/cdt/debug/mi/ui/console/actions/MiConsoleVerboseModeAction.java b/debug/org.eclipse.cdt.debug.mi.ui/src/org/eclipse/cdt/debug/mi/ui/console/actions/MiConsoleVerboseModeAction.java
deleted file mode 100644
index 205445b2876..00000000000
--- a/debug/org.eclipse.cdt.debug.mi.ui/src/org/eclipse/cdt/debug/mi/ui/console/actions/MiConsoleVerboseModeAction.java
+++ /dev/null
@@ -1,41 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2006 STMicroelectronics.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * STMicroelectronics - Process console enhancements
- *******************************************************************************/
-package org.eclipse.cdt.debug.mi.ui.console.actions;
-
-import org.eclipse.cdt.debug.mi.core.GDBProcess;
-import org.eclipse.cdt.debug.mi.internal.ui.MIUIPlugin;
-import org.eclipse.debug.ui.console.IConsole;
-import org.eclipse.jface.action.Action;
-
-/**
- * Verbose console mode switcher
- *
- */
-public class MiConsoleVerboseModeAction extends Action {
-
- private IConsole fConsole;
-
- public MiConsoleVerboseModeAction(IConsole console) {
- super();
- setToolTipText(MiConsoleMessages.verboseActionTooltip);
- setImageDescriptor(MIUIPlugin.imageDescriptorFromPlugin(MIUIPlugin.PLUGIN_ID,IMiConsoleImagesConst.IMG_VERBOSE_CONSOLE));
- fConsole = console;
- GDBProcess fProcess = (GDBProcess) fConsole.getProcess();
- setChecked(fProcess.getTarget().getMISession().isVerboseModeEnabled());
- }
-
- public void run() {
- GDBProcess fProcess = (GDBProcess) fConsole.getProcess();
- fProcess.getTarget().enableVerboseMode(isChecked());
- }
-
-
-}
diff --git a/debug/org.eclipse.cdt.debug.ui.tests/.classpath b/debug/org.eclipse.cdt.debug.ui.tests/.classpath
deleted file mode 100644
index d16b7548c1d..00000000000
--- a/debug/org.eclipse.cdt.debug.ui.tests/.classpath
+++ /dev/null
@@ -1,8 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<classpath>
- <classpathentry kind="src" path="src"/>
- <classpathentry kind="src" path="core"/>
- <classpathentry kind="con" path="org.eclipse.pde.core.requiredPlugins"/>
- <classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER"/>
- <classpathentry kind="output" path="bin"/>
-</classpath>
diff --git a/debug/org.eclipse.cdt.debug.ui.tests/.cvsignore b/debug/org.eclipse.cdt.debug.ui.tests/.cvsignore
deleted file mode 100644
index ba077a4031a..00000000000
--- a/debug/org.eclipse.cdt.debug.ui.tests/.cvsignore
+++ /dev/null
@@ -1 +0,0 @@
-bin
diff --git a/debug/org.eclipse.cdt.debug.ui.tests/.project b/debug/org.eclipse.cdt.debug.ui.tests/.project
deleted file mode 100644
index 05c3409f881..00000000000
--- a/debug/org.eclipse.cdt.debug.ui.tests/.project
+++ /dev/null
@@ -1,28 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<projectDescription>
- <name>org.eclipse.cdt.debug.ui.tests</name>
- <comment></comment>
- <projects>
- </projects>
- <buildSpec>
- <buildCommand>
- <name>org.eclipse.jdt.core.javabuilder</name>
- <arguments>
- </arguments>
- </buildCommand>
- <buildCommand>
- <name>org.eclipse.pde.ManifestBuilder</name>
- <arguments>
- </arguments>
- </buildCommand>
- <buildCommand>
- <name>org.eclipse.pde.SchemaBuilder</name>
- <arguments>
- </arguments>
- </buildCommand>
- </buildSpec>
- <natures>
- <nature>org.eclipse.jdt.core.javanature</nature>
- <nature>org.eclipse.pde.PluginNature</nature>
- </natures>
-</projectDescription>
diff --git a/debug/org.eclipse.cdt.debug.ui.tests/.settings/org.eclipse.jdt.core.prefs b/debug/org.eclipse.cdt.debug.ui.tests/.settings/org.eclipse.jdt.core.prefs
deleted file mode 100644
index bcb27d35d4a..00000000000
--- a/debug/org.eclipse.cdt.debug.ui.tests/.settings/org.eclipse.jdt.core.prefs
+++ /dev/null
@@ -1,47 +0,0 @@
-#Mon May 16 10:23:44 EDT 2005
-eclipse.preferences.version=1
-org.eclipse.jdt.core.compiler.problem.annotationSuperInterface=warning
-org.eclipse.jdt.core.compiler.problem.autoboxing=ignore
-org.eclipse.jdt.core.compiler.problem.deprecation=warning
-org.eclipse.jdt.core.compiler.problem.deprecationInDeprecatedCode=disabled
-org.eclipse.jdt.core.compiler.problem.deprecationWhenOverridingDeprecatedMethod=disabled
-org.eclipse.jdt.core.compiler.problem.discouragedReference=warning
-org.eclipse.jdt.core.compiler.problem.emptyStatement=ignore
-org.eclipse.jdt.core.compiler.problem.fieldHiding=ignore
-org.eclipse.jdt.core.compiler.problem.finalParameterBound=ignore
-org.eclipse.jdt.core.compiler.problem.finallyBlockNotCompletingNormally=warning
-org.eclipse.jdt.core.compiler.problem.forbiddenReference=warning
-org.eclipse.jdt.core.compiler.problem.hiddenCatchBlock=warning
-org.eclipse.jdt.core.compiler.problem.incompatibleNonInheritedInterfaceMethod=warning
-org.eclipse.jdt.core.compiler.problem.incompleteEnumSwitch=ignore
-org.eclipse.jdt.core.compiler.problem.indirectStaticAccess=ignore
-org.eclipse.jdt.core.compiler.problem.localVariableHiding=ignore
-org.eclipse.jdt.core.compiler.problem.methodWithConstructorName=warning
-org.eclipse.jdt.core.compiler.problem.missingDeprecatedAnnotation=ignore
-org.eclipse.jdt.core.compiler.problem.missingOverrideAnnotation=ignore
-org.eclipse.jdt.core.compiler.problem.missingSerialVersion=ignore
-org.eclipse.jdt.core.compiler.problem.noEffectAssignment=warning
-org.eclipse.jdt.core.compiler.problem.noImplicitStringConversion=warning
-org.eclipse.jdt.core.compiler.problem.nonExternalizedStringLiteral=ignore
-org.eclipse.jdt.core.compiler.problem.overridingPackageDefaultMethod=warning
-org.eclipse.jdt.core.compiler.problem.possibleAccidentalBooleanAssignment=ignore
-org.eclipse.jdt.core.compiler.problem.specialParameterHidingField=disabled
-org.eclipse.jdt.core.compiler.problem.staticAccessReceiver=warning
-org.eclipse.jdt.core.compiler.problem.suppressWarnings=enabled
-org.eclipse.jdt.core.compiler.problem.syntheticAccessEmulation=ignore
-org.eclipse.jdt.core.compiler.problem.typeParameterHiding=warning
-org.eclipse.jdt.core.compiler.problem.uncheckedTypeOperation=warning
-org.eclipse.jdt.core.compiler.problem.undocumentedEmptyBlock=ignore
-org.eclipse.jdt.core.compiler.problem.unhandledWarningToken=warning
-org.eclipse.jdt.core.compiler.problem.unnecessaryElse=ignore
-org.eclipse.jdt.core.compiler.problem.unnecessaryTypeCheck=ignore
-org.eclipse.jdt.core.compiler.problem.unqualifiedFieldAccess=ignore
-org.eclipse.jdt.core.compiler.problem.unusedDeclaredThrownException=ignore
-org.eclipse.jdt.core.compiler.problem.unusedDeclaredThrownExceptionWhenOverriding=disabled
-org.eclipse.jdt.core.compiler.problem.unusedImport=warning
-org.eclipse.jdt.core.compiler.problem.unusedLocal=ignore
-org.eclipse.jdt.core.compiler.problem.unusedParameter=ignore
-org.eclipse.jdt.core.compiler.problem.unusedParameterWhenImplementingAbstract=disabled
-org.eclipse.jdt.core.compiler.problem.unusedParameterWhenOverridingConcrete=disabled
-org.eclipse.jdt.core.compiler.problem.unusedPrivateMember=ignore
-org.eclipse.jdt.core.compiler.problem.varargsArgumentNeedCast=warning
diff --git a/debug/org.eclipse.cdt.debug.ui.tests/Changelog b/debug/org.eclipse.cdt.debug.ui.tests/Changelog
deleted file mode 100644
index 89f305af7cf..00000000000
--- a/debug/org.eclipse.cdt.debug.ui.tests/Changelog
+++ /dev/null
@@ -1,69 +0,0 @@
-2005-07-22 Alain Magloire
- Fix to Copyright.
-
-2004-10-17 Alain Magloire
- Remove deprecated method in CDI adjust the implementation.
- * core/org/eclipse/cdt/debug/core/tests/BreakpointTests.java
- * core/org/eclipse/cdt/debug/core/tests/DebugTests.java
- * core/org/eclipse/cdt/debug/core/tests/LocationTests.java
-
-2004-10-15 Alain Magloire
- Adjust to the change in the CDI
- * core/org/eclipse/cdt/debug/core/tests/BreakpointTests.java
- * core/org/eclipse/cdt/debug/core/tests/DebugTests.java
- * core/org/eclipse/cdt/debug/core/tests/LocationTests.java
-
-2004-09-07 Mikhail Khodjaiants
- Moved to the new breakpoint management API.
- * core/org/eclipse/cdt/debug/core/tests/BreakpointTests.java
- * core/org/eclipse/cdt/debug/core/tests/DebugTests.java
- * core/org/eclipse/cdt/debug/core/tests/LocationTests.java
-
-2003-07-03 Peter Graves
-
- Major cleanup. Pulled all resouces out of the source tree, and fixed the
- tests to get them from the new location.
- Made sure the debug sessions were all terminated before we try to delete the
- the projects (if the tests failed, the session would not be terminated, and
- then we would not be able to remove the projects.)
- Also updated the breakpoint tests to only create and build the test project
- once per run, not once per test method.
-
-2003-04-04 Alain Magloire
-
- * src/org/eclipse/cdt/debug/testplugin/util/VeryfyDialog.java:
- Get rig of some warnings.
-
-2003-03-27 Alain Magloire
-
- Adjust the code because of refactoring.
- ICFolder and ICResource are removed.
-
-2003-01-29 Peter Graves
-
- Fixed warnings when accessing static methods
- * src/org/eclipse/cdt/debug/testplugin/util/DialogCheck.java:
- * src/org/eclipse/cdt/debug/testplugin/CTestPlugin.java:
- * src/org/eclipse/cdt/debug/testplugin/TestWorkbench.java:
- * ChangeLog: Make all the entries have the same formatting
-
-2003-01-22 Judy N. Green
-
- * /home/tools/org.eclipse.cdt.debug.ui.tests/.project
- * /home/tools/org.eclipse.cdt.debug.ui.tests/.classpath
- updated classpath and .project to reflect classpath changes.
-
-2003-01-21 Peter Graves
-
- * src/org/eclipse/cdt/debug/testplugin/CDebugHelper.java: Updated to use new parameters to
- ICDISession.createCSession
-
-2002-12-17 Peter Graves
-
- * plugin.xml,test.xml: Some simple cleanups to remove refrences to the jdt and
- to move closer to automated running.
-
-2002-10-30 Alain Magloire
-
- * core/org/eclipse/cdt/debug/core/tests/TargetTests.java: Test number
- 24183 is no longer valid, the method was remove from the CDI API. \ No newline at end of file
diff --git a/debug/org.eclipse.cdt.debug.ui.tests/META-INF/MANIFEST.MF b/debug/org.eclipse.cdt.debug.ui.tests/META-INF/MANIFEST.MF
deleted file mode 100644
index 851e16bfb2d..00000000000
--- a/debug/org.eclipse.cdt.debug.ui.tests/META-INF/MANIFEST.MF
+++ /dev/null
@@ -1,22 +0,0 @@
-Manifest-Version: 1.0
-Bundle-ManifestVersion: 2
-Bundle-Name: org.eclipse.cdt.debug.ui.tests
-Bundle-SymbolicName: org.eclipse.cdt.debug.ui.tests
-Bundle-Version: 4.0.0.qualifier
-Bundle-ClassPath: cdtdebuguitests.jar
-Bundle-Activator: org.eclipse.core.internal.compatibility.PluginActivator
-Bundle-Localization: plugin
-Export-Package: org.eclipse.cdt.debug.core.tests,
- org.eclipse.cdt.debug.testplugin,
- org.eclipse.cdt.debug.testplugin.util
-Require-Bundle: org.eclipse.ui.ide,
- org.eclipse.core.resources,
- org.junit,
- org.eclipse.cdt.debug.core,
- org.eclipse.cdt.debug.mi.core,
- org.eclipse.cdt.core,
- org.eclipse.ui,
- org.eclipse.core.runtime.compatibility
-Eclipse-LazyStart: true
-Plugin-Class: org.eclipse.cdt.debug.testplugin.CTestPlugin
-Bundle-Vendor: Eclipse.org
diff --git a/debug/org.eclipse.cdt.debug.ui.tests/about.html b/debug/org.eclipse.cdt.debug.ui.tests/about.html
deleted file mode 100644
index 9c7ba0a57bc..00000000000
--- a/debug/org.eclipse.cdt.debug.ui.tests/about.html
+++ /dev/null
@@ -1,24 +0,0 @@
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml"><head>
-<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"><title>About</title></head>
-
-<body lang="EN-US">
-<h2>About This Content</h2>
-
-<p>May 2, 2006</p>
-<h3>License</h3>
-
-<p>The Eclipse Foundation makes available all content in this plug-in ("Content"). Unless otherwise
-indicated below, the Content is provided to you under the terms and conditions of the
-Eclipse Public License Version 1.0 ("EPL"). A copy of the EPL is available
-at <a href="http://www.eclipse.org/legal/epl-v10.html">http://www.eclipse.org/legal/epl-v10.html</a>.
-For purposes of the EPL, "Program" will mean the Content.</p>
-
-<p>If you did not receive this Content directly from the Eclipse Foundation, the Content is
-being redistributed by another party ("Redistributor") and different terms and conditions may
-apply to your use of any object code in the Content. Check the Redistributor's license that was
-provided with the Content. If no such license exists, contact the Redistributor. Unless otherwise
-indicated below, the terms and conditions of the EPL still apply to any source code in the Content
-and such source code may be obtained at <a href="http://www.eclipse.org/">http://www.eclipse.org</a>.</p>
-
-</body></html> \ No newline at end of file
diff --git a/debug/org.eclipse.cdt.debug.ui.tests/build.properties b/debug/org.eclipse.cdt.debug.ui.tests/build.properties
deleted file mode 100644
index 7197056cb11..00000000000
--- a/debug/org.eclipse.cdt.debug.ui.tests/build.properties
+++ /dev/null
@@ -1,18 +0,0 @@
-###############################################################################
-# Copyright (c) 2005 IBM Corporation and others.
-# All rights reserved. This program and the accompanying materials
-# are made available under the terms of the Eclipse Public License v1.0
-# which accompanies this distribution, and is available at
-# http://www.eclipse.org/legal/epl-v10.html
-#
-# Contributors:
-# IBM Corporation - initial API and implementation
-###############################################################################
-source.cdtdebuguitests.jar = src/,\
- core/
-bin.includes = about.html,\
- plugin.xml,\
- resources/,\
- cdtdebuguitests.jar,\
- test.xml,\
- META-INF/
diff --git a/debug/org.eclipse.cdt.debug.ui.tests/core/org/eclipse/cdt/debug/core/tests/.cvsignore b/debug/org.eclipse.cdt.debug.ui.tests/core/org/eclipse/cdt/debug/core/tests/.cvsignore
deleted file mode 100644
index e69de29bb2d..00000000000
--- a/debug/org.eclipse.cdt.debug.ui.tests/core/org/eclipse/cdt/debug/core/tests/.cvsignore
+++ /dev/null
diff --git a/debug/org.eclipse.cdt.debug.ui.tests/core/org/eclipse/cdt/debug/core/tests/AllDebugTests.java b/debug/org.eclipse.cdt.debug.ui.tests/core/org/eclipse/cdt/debug/core/tests/AllDebugTests.java
deleted file mode 100644
index 9ef84d4952b..00000000000
--- a/debug/org.eclipse.cdt.debug.ui.tests/core/org/eclipse/cdt/debug/core/tests/AllDebugTests.java
+++ /dev/null
@@ -1,46 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2005 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.core.tests;
-
-import junit.framework.Test;
-import junit.framework.TestSuite;
-
-
-/**
- *
- * AllDedbugTests.java
- * This is the main entry point for running this suite of JUnit tests
- * for all tests within the package "org.eclipse.cdt.debug.core"
- *
- * @author Judy N. Green
- * @since Jul 19, 2002
- */
-public class AllDebugTests {
-
- public static void main(String[] args) {
- junit.textui.TestRunner.run(suite());
- }
-
- public static Test suite() {
- TestSuite suite = new TestSuite();
-
- // Just add more test cases here as you create them for
- // each class being tested
-
- suite.addTest(DebugTests.suite());
- suite.addTest(BreakpointTests.suite());
- suite.addTest(LocationTests.suite());
- return suite;
-
-
- }
-} // End of AllDebugTests.java
-
diff --git a/debug/org.eclipse.cdt.debug.ui.tests/core/org/eclipse/cdt/debug/core/tests/BreakpointTests.java b/debug/org.eclipse.cdt.debug.ui.tests/core/org/eclipse/cdt/debug/core/tests/BreakpointTests.java
deleted file mode 100644
index 8e249542df1..00000000000
--- a/debug/org.eclipse.cdt.debug.ui.tests/core/org/eclipse/cdt/debug/core/tests/BreakpointTests.java
+++ /dev/null
@@ -1,735 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2005 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.core.tests;
-
-import java.io.FileNotFoundException;
-import java.io.IOException;
-import java.lang.reflect.InvocationTargetException;
-import junit.extensions.TestSetup;
-import junit.framework.Test;
-import junit.framework.TestCase;
-import junit.framework.TestSuite;
-import org.eclipse.cdt.core.model.ICProject;
-import org.eclipse.cdt.debug.core.cdi.CDIException;
-import org.eclipse.cdt.debug.core.cdi.ICDICondition;
-import org.eclipse.cdt.debug.core.cdi.ICDIFunctionLocation;
-import org.eclipse.cdt.debug.core.cdi.ICDILineLocation;
-import org.eclipse.cdt.debug.core.cdi.ICDILocator;
-import org.eclipse.cdt.debug.core.cdi.ICDISession;
-import org.eclipse.cdt.debug.core.cdi.model.ICDIBreakpoint;
-import org.eclipse.cdt.debug.core.cdi.model.ICDILocationBreakpoint;
-import org.eclipse.cdt.debug.core.cdi.model.ICDIStackFrame;
-import org.eclipse.cdt.debug.core.cdi.model.ICDITarget;
-import org.eclipse.cdt.debug.mi.core.MIException;
-import org.eclipse.cdt.debug.testplugin.CDebugHelper;
-import org.eclipse.cdt.debug.testplugin.CProjectHelper;
-import org.eclipse.core.resources.IWorkspace;
-import org.eclipse.core.resources.IWorkspaceRoot;
-import org.eclipse.core.resources.IncrementalProjectBuilder;
-import org.eclipse.core.resources.ResourcesPlugin;
-import org.eclipse.core.runtime.CoreException;
-import org.eclipse.core.runtime.NullProgressMonitor;
-import org.eclipse.core.runtime.Path;
-
-/**
- * @author Peter Graves
- *
- * This file contains a set of generic tests for the CDI break point interfaces.
- * It will currenly use the mi implementation.
- *
- */
-public class BreakpointTests extends TestCase {
-
- IWorkspace workspace;
- IWorkspaceRoot root;
- static ICProject testProject = null;
- NullProgressMonitor monitor;
- static ICDISession session = null;
- static ICDITarget targets[] = null;
-
- /**
- * Constructor for BreakpointTests
- *
- * @param name
- */
- public BreakpointTests(String name) {
- super(name);
- /***********************************************************************
- * The tests assume that they have a working workspace and workspace
- * root object to use to create projects/files in, so we need to get
- * them setup first.
- */
- workspace = ResourcesPlugin.getWorkspace();
- root = workspace.getRoot();
- monitor = new NullProgressMonitor();
- if (workspace == null)
- fail("Workspace was not setup"); //$NON-NLS-1$
- if (root == null)
- fail("Workspace root was not setup"); //$NON-NLS-1$
-
- }
-
- /**
- * Sets up the test fixture.
- *
- * Called before every test case method.
- *
- * Example code test the packages in the project
- * "com.qnx.tools.ide.cdt.core"
- */
- protected static void oneTimeSetUp() throws CoreException, InvocationTargetException, IOException {
- ResourcesPlugin.getWorkspace().getDescription().setAutoBuilding(false);
- /***********************************************************************
- * Create a new project and import the test source.
- */
- Path imputFile = new Path("resources/debugTest.zip"); //$NON-NLS-1$
- testProject = CProjectHelper.createCProjectWithImport("filetest", imputFile); //$NON-NLS-1$
- if (testProject == null)
- fail("Unable to create project"); //$NON-NLS-1$
- /* Build the test project.. */
-
- testProject.getProject().build(IncrementalProjectBuilder.FULL_BUILD, null);
- }
-
- /**
- * Tears down the test fixture.
- *
- * Called after every test case method.
- */
- protected void tearDown() throws CoreException {
- if (targets != null) {
- try {
- targets[0].terminate();
- targets = null;
- } catch (CDIException e) {
- }
- }
- if (session != null) {
- try {
- session.terminate();
- session = null;
- } catch (CDIException e) {
- }
- }
- }
-
- /**
- * Tears down the test fixture.
- *
- * Called after every test case method.
- */
- protected static void oneTimeTearDown() throws CoreException {
- if (targets != null) {
- try {
- targets[0].terminate();
- } catch (CDIException e) {
- }
- }
- if (session != null) {
- try {
- session.terminate();
- } catch (CDIException e) {
- }
- }
- CProjectHelper.delete(testProject);
-
- }
-
- public static Test suite() {
- TestSuite suite = new TestSuite(BreakpointTests.class);
- /***********************************************************************
- * Create a wrapper suite around the test suite we created above to
- * allow us to only do the general setup once for all the tests. This is
- * needed because the creation of the source and target projects takes a
- * long time and we really only need to do it once. We could do the
- * setup in the constructor, but we need to be able to remove everything
- * when we are done.
- */
- TestSetup wrapper = new TestSetup(suite) {
-
- protected void setUp() throws FileNotFoundException, IOException, InterruptedException, InvocationTargetException,
- CoreException {
- oneTimeSetUp();
- }
-
- protected void tearDown() throws FileNotFoundException, IOException, CoreException {
- oneTimeTearDown();
- }
- };
- return (wrapper);
- }
-
- /***************************************************************************
- * A couple tests to make sure setting breakpoints on functions works as
- * expected.
- */
- public void testFunctionBreak() throws CoreException, MIException, IOException, CDIException, InterruptedException {
- ICDISession session;
- ICDITarget cdiTarget;
- ICDIFunctionLocation location;
- boolean caught = false;
- session = CDebugHelper.createSession("main", testProject); //$NON-NLS-1$
- assertNotNull(session);
- ICDITarget[] targets = session.getTargets();
- assertNotNull(targets);
- assertTrue(targets.length > 0);
- cdiTarget = targets[0];
- assertNotNull(cdiTarget);
-
- /***********************************************************************
- * Create a break point on a generic function
- **********************************************************************/
-
- location = cdiTarget.createFunctionLocation(null, "func1"); //$NON-NLS-1$
- assertNotNull(location);
- cdiTarget.setFunctionBreakpoint(0, location, null, false);
-
- /***********************************************************************
- * Create a break point on main
- **********************************************************************/
-
- location = cdiTarget.createFunctionLocation(null, "main"); //$NON-NLS-1$
- assertNotNull(location);
- cdiTarget.setFunctionBreakpoint(0, location, null, false);
-
- /***********************************************************************
- * Try to create a break point on a function name that does not exist We
- * expect that this will cause the setLocationBreakpoint to throw a
- * CDIException
- **********************************************************************/
-
- location = cdiTarget.createFunctionLocation(null, "badname"); //$NON-NLS-1$
- assertNotNull(location);
- try {
- cdiTarget.setFunctionBreakpoint(0, location, null, false);
- } catch (CDIException e) {
- caught = true;
- }
- assertTrue(caught);
-
- cdiTarget.deleteAllBreakpoints();
-
- /***********************************************************************
- * Create a break point on a generic function and see if it will get hit
- * and stop program execution.
- **********************************************************************/
-
- location = cdiTarget.createFunctionLocation(null, "func1"); //$NON-NLS-1$
- assertNotNull(location);
- cdiTarget.setFunctionBreakpoint(0, location, null, false);
- targets = session.getTargets();
- /*
- * We better only have one target connected to this session or something
- * is not right...
- */
- assertTrue(targets.length == 1);
- /*
- * Resume the target, this should cause it to run till it hits the
- * breakpoint
- */
- targets[0].resume();
- /**
- * Give the process up to 10 seconds to become either terminated or
- * suspended. It sould hit the breakponint almost immediatly so we
- * should only sleep for max 100 ms
- */
- for (int x = 0; x < 100; x++) {
- if (targets[0].isTerminated() || targets[0].isSuspended())
- break;
- Thread.sleep(100);
- }
- assertTrue(targets[0].isSuspended());
- ICDILocator locator = targets[0].getCurrentThread().getStackFrames()[0].getLocator();
- assertTrue(locator.getLineNumber() == 6);
- assertTrue(locator.getFunction().equals("func1")); //$NON-NLS-1$
- assertTrue(locator.getFile().equals("main.c")); //$NON-NLS-1$
-
- /* clean up the session */
- targets[0].terminate();
- int x = 0;
- while ((!targets[0].isTerminated()) && (x < 30)) {
- Thread.sleep(100);
- }
- if (!targets[0].isTerminated())
- targets[0].terminate();
- session.terminate();
- session = null;
- targets = null;
-
- }
-
- /***************************************************************************
- * A couple tests to make sure setting breakpoints on line numbers works as
- * expected.
- */
- public void testLineBreak() throws CoreException, MIException, IOException, CDIException, InterruptedException {
- ICDITarget cdiTarget;
- ICDILineLocation location;
- boolean caught = false;
- session = CDebugHelper.createSession("main", testProject);
- assertNotNull(session);
- ICDITarget[] targets = session.getTargets();
- assertNotNull(targets);
- assertTrue(targets.length > 0);
- cdiTarget = targets[0];
- assertNotNull(cdiTarget);
-
- /***********************************************************************
- * Create a break point in a generic function
- **********************************************************************/
- location = cdiTarget.createLineLocation("main.c", 7);
- assertNotNull(location);
- cdiTarget.setLineBreakpoint(0, location, null, false);
-
- /***********************************************************************
- * Create a break point in main
- **********************************************************************/
- location = cdiTarget.createLineLocation("main.c", 18);
- assertNotNull(location);
- cdiTarget.setLineBreakpoint(0, location, null, false);
-
- /***********************************************************************
- * Try to create a break point on a line that does not exist We expect
- * that this will cause the setLocationBreakpoint to throw a
- * CDIException
- **********************************************************************/
-
- location = cdiTarget.createLineLocation("main.c", 30);
- assertNotNull(location);
- try {
- cdiTarget.setLineBreakpoint(0, location, null, false);
- } catch (CDIException e) {
- caught = true;
- }
- assertTrue(caught);
-
- caught = false;
- /***********************************************************************
- * Try to create a break point on a line that does not have code on it
- **********************************************************************/
-
- location = cdiTarget.createLineLocation("main.c", 11);
- assertNotNull(location);
- cdiTarget.setLineBreakpoint(0, location, null, false);
-
- /***********************************************************************
- * Create a break point in a generic function without passing the source
- * file name. At the time of writing this would just silently fail, so
- * to make sure it works, we will do it once with a valid line number
- * and once with an invalid line number, and the first should always
- * succeed and the second should always throw an exception.
- **********************************************************************/
- location = cdiTarget.createLineLocation(null, 7);
- assertNotNull(location);
- cdiTarget.setLineBreakpoint(0, location, null, false);
- caught = false;
- location = cdiTarget.createLineLocation(null, 30);
- assertNotNull(location);
- try {
- cdiTarget.setLineBreakpoint(0, location, null, false);
- } catch (CDIException e) {
- caught = true;
- }
- assertTrue("Ignoring line numbers with no file specified?", caught);
-
- cdiTarget.deleteAllBreakpoints();
-
- /***********************************************************************
- * Create a break point on a line number and see if it will get hit and
- * stop program execution.
- **********************************************************************/
-
- location = cdiTarget.createLineLocation(null, 7);
- assertNotNull(location);
- cdiTarget.setLineBreakpoint(0, location, null, false);
- targets = session.getTargets();
- /*
- * We better only have one target connected to this session or something
- * is not right...
- */
- assertTrue(targets.length == 1);
- /*
- * Resume the target, this should cause it to run till it hits the
- * breakpoint
- */
- targets[0].resume();
- /**
- * Give the process up to 10 seconds to become either terminated or
- * suspended. It sould hit the breakponint almost immediatly so we
- * should only sleep for max 100 ms
- */
- for (int x = 0; x < 100; x++) {
- if (targets[0].isSuspended() || targets[0].isTerminated())
- break;
- Thread.sleep(100);
- }
- assertTrue("Suspended: " + targets[0].isSuspended() + " Termiunated: " + targets[0].isTerminated(), targets[0]
- .isSuspended());
- ICDILocator locator = targets[0].getCurrentThread().getStackFrames()[0].getLocator();
- assertTrue(locator.getLineNumber() == 7);
- assertTrue(locator.getFunction().equals("func1"));
- assertTrue(locator.getFile().equals("main.c"));
-
- /* clean up the session */
- session.terminate();
- session = null;
- targets = null;
-
- }
-
- /***************************************************************************
- * A couple tests to make sure getting breakpoints works as expected
- */
- public void testGetBreak() throws CoreException, MIException, IOException, CDIException {
- ICDITarget cdiTarget;
- ICDIFunctionLocation location;
- ICDIBreakpoint[] breakpoints;
- ICDILocationBreakpoint curbreak;
- session = CDebugHelper.createSession("main", testProject);
- assertNotNull(session);
- ICDITarget[] targets = session.getTargets();
- assertNotNull(targets);
- assertTrue(targets.length > 0);
- cdiTarget = targets[0];
- assertNotNull(cdiTarget);
-
- /***********************************************************************
- * Make sure initially we don't have any breakpoints
- **********************************************************************/
- breakpoints = cdiTarget.getBreakpoints();
- assertNotNull(breakpoints);
- assertTrue(breakpoints.length == 0);
-
- /***********************************************************************
- * Make sure if we create a simple breakpoint, that we can get it back
- * from the system
- **********************************************************************/
- /* Create a break point on a generic function */
- location = cdiTarget.createFunctionLocation("main.c", "func1");
- assertNotNull(location);
- cdiTarget.setFunctionBreakpoint(0, location, null, false);
-
- breakpoints = cdiTarget.getBreakpoints();
- assertNotNull(breakpoints);
- assertTrue(breakpoints.length == 1);
- if (breakpoints[0] instanceof ICDILocationBreakpoint) {
- curbreak = (ICDILocationBreakpoint) breakpoints[0];
- } else
- curbreak = null;
- assertNotNull(curbreak);
-
- //assertTrue(curbreak.getLocator().equals(location));
- {
- ICDILocator locator = curbreak.getLocator();
- String file = locator.getFile();
- String function = locator.getFunction();
- assertTrue("main.c".equals(file));
- assertTrue("func1".equals(function));
- }
-
- /***********************************************************************
- * Make sure if we create multiple break points that we can still get
- * them all back from the system,
- **********************************************************************/
- /* Create another break point on main */
- location = cdiTarget.createFunctionLocation("main.c", "main");
- assertNotNull(location);
- cdiTarget.setFunctionBreakpoint(0, location, null, false);
-
- breakpoints = cdiTarget.getBreakpoints();
- assertNotNull(breakpoints);
- assertTrue(breakpoints.length == 2);
- if (breakpoints[1] instanceof ICDILocationBreakpoint) {
- curbreak = (ICDILocationBreakpoint) breakpoints[1];
- } else
- curbreak = null;
- assertNotNull(curbreak);
- /*
- * Make sure the location still looks like we expect it to.. .
- */
- //assertTrue(curbreak.getLocation().equals(location));
- {
- ICDILocator locator = curbreak.getLocator();
- String file = locator.getFile();
- String function = locator.getFunction();
- assertTrue("main.c".equals(file));
- assertTrue("main".equals(function));
- }
-
- cdiTarget.deleteAllBreakpoints();
-
- /* clean up the session */
- session.terminate();
- session = null;
-
- }
-
- /***************************************************************************
- * A couple tests to make sure deleting breakpoints works as expected
- */
- public void testDelBreak() throws CoreException, MIException, IOException, CDIException {
- ICDITarget cdiTarget;
- ICDIFunctionLocation location;
- ICDILocator savedLocation;
- ICDIBreakpoint[] breakpoints, savedbreakpoints;
- ICDILocationBreakpoint curbreak;
-
- session = CDebugHelper.createSession("main", testProject);
- assertNotNull(session);
- ICDITarget[] targets = session.getTargets();
- assertNotNull(targets);
- assertTrue(targets.length > 0);
- cdiTarget = targets[0];
- assertNotNull(cdiTarget);
-
- /* Make sure initially we don't have any breakpoints */
- breakpoints = cdiTarget.getBreakpoints();
- assertNotNull(breakpoints);
- assertTrue(breakpoints.length == 0);
-
- /***********************************************************************
- *
- * Test to make sure if we create a new breakpoint, we can delete it by
- * passing a refrence to it to deleteBreakpoint()
- *
- **********************************************************************/
-
- /* Create a break point on a generic function */
- location = cdiTarget.createFunctionLocation("main.c", "func1");
- assertNotNull(location);
- curbreak = cdiTarget.setFunctionBreakpoint(0, location, null, false);
- cdiTarget.deleteBreakpoints( new ICDIBreakpoint[] { curbreak } );
- pause();
- /**
- * we should not have any breakpoints left.
- */
- breakpoints = cdiTarget.getBreakpoints();
- assertTrue(breakpoints.length == 0);
-
- /***********************************************************************
- *
- * Test to make sure if we create multiple new breakpoint, we can delete
- * one of them by passing a refrence to it to deleteBreakpoint()
- *
- **********************************************************************/
-
- /* Create a break point on a generic function */
- location = cdiTarget.createFunctionLocation("main.c", "func1");
- assertNotNull(location);
- curbreak = cdiTarget.setFunctionBreakpoint(0, location, null, false);
- savedLocation = curbreak.getLocator();
-
- location = cdiTarget.createFunctionLocation("main.c", "main");
- assertNotNull(location);
- curbreak = cdiTarget.setFunctionBreakpoint(0, location, null, false);
- cdiTarget.deleteBreakpoints( new ICDIBreakpoint[] { curbreak } );
- pause();
- breakpoints = cdiTarget.getBreakpoints();
- /***********************************************************************
- * Make sure there is only 1 breakpoint left, and it's the one we expect
- */
- assertTrue(breakpoints.length == 1);
- curbreak = (ICDILocationBreakpoint) breakpoints[0];
- assertNotNull(curbreak);
- assertTrue(curbreak.getLocator().equals(savedLocation));
- /***********************************************************************
- * Then delete the other breakpoint.
- */
- cdiTarget.deleteBreakpoints( new ICDIBreakpoint[] { curbreak } );
- pause();
- breakpoints = cdiTarget.getBreakpoints();
- assertTrue(breakpoints.length == 0);
-
- /***********************************************************************
- * Make sure deleteBreakpoints works when given 1 breakpoint to delete
- **********************************************************************/
- savedbreakpoints = new ICDIBreakpoint[1];
- for (int x = 0; x < 10; x++) {
- ICDILineLocation lineLocation = cdiTarget.createLineLocation("main.c", x + 1);
- savedbreakpoints[0] = cdiTarget.setLineBreakpoint(0, lineLocation, null, false);
- assertNotNull(savedbreakpoints[0]);
- }
- cdiTarget.deleteBreakpoints(savedbreakpoints);
- pause();
- /* We should now have 9 breakpoints left. */
- breakpoints = cdiTarget.getBreakpoints();
- assertTrue(breakpoints.length == 9);
- /* Make sure we have the correct 9 breakpoints left */
- for (int x = 0; x < breakpoints.length; x++) {
- curbreak = (ICDILocationBreakpoint) breakpoints[x];
- assertTrue(curbreak.getLocator().getLineNumber() == x + 1);
- }
- cdiTarget.deleteAllBreakpoints();
- pause();
- assertTrue(cdiTarget.getBreakpoints().length == 0);
-
- /***********************************************************************
- * Make sure deleteBreakpoints works when given more then 1 but less
- * then all breakpoints to delete
- **********************************************************************/
- savedbreakpoints = new ICDIBreakpoint[4];
- for (int x = 0; x < 10; x++) {
- ICDILineLocation lineLocation = cdiTarget.createLineLocation("main.c", x + 1);
- savedbreakpoints[x % 4] = cdiTarget.setLineBreakpoint(0, lineLocation, null, false);
- assertNotNull(savedbreakpoints[x % 4]);
- }
- cdiTarget.deleteBreakpoints(savedbreakpoints);
- pause();
-
- /* We should now have 6 breakpoints left. */
- breakpoints = cdiTarget.getBreakpoints();
- assertTrue(breakpoints.length == 6);
- /* Make sure we have the correct 6 breakpoints left */
- for (int x = 0; x < breakpoints.length; x++) {
- curbreak = (ICDILocationBreakpoint) breakpoints[x];
- assertTrue(curbreak.getLocator().getLineNumber() == x + 1);
- }
- cdiTarget.deleteAllBreakpoints();
- pause();
- assertTrue(cdiTarget.getBreakpoints().length == 0);
-
- /***********************************************************************
- * Make sure deleteBreakpoints works when given all the breakpoints
- **********************************************************************/
- savedbreakpoints = new ICDIBreakpoint[10];
- for (int x = 0; x < 10; x++) {
- ICDILineLocation lineLocation = cdiTarget.createLineLocation("main.c", x + 1);
- savedbreakpoints[x] = cdiTarget.setLineBreakpoint(0, lineLocation, null, false);
- assertNotNull(savedbreakpoints[x]);
- }
- cdiTarget.deleteBreakpoints(savedbreakpoints);
- pause();
- /* We should now have 0 breakpoints left. */
- breakpoints = cdiTarget.getBreakpoints();
- assertTrue(breakpoints.length == 0);
-
- /***********************************************************************
- * Make sure deleteAllBreakpoints works
- **********************************************************************/
-
- for (int x = 0; x < 10; x++) {
- ICDILineLocation lineLocation = cdiTarget.createLineLocation("main.c", x + 1);
- curbreak = cdiTarget.setLineBreakpoint(0, lineLocation, null, false);
- assertNotNull(curbreak);
- }
- cdiTarget.deleteAllBreakpoints();
- pause();
- /* We should now have 0 breakpoints left. */
- breakpoints = cdiTarget.getBreakpoints();
- assertTrue(breakpoints.length == 0);
-
- /* clean up the session */
- session.terminate();
- session = null;
-
- }
-
- /***************************************************************************
- * A couple tests to make sure setting breakpoints with conditions seems to
- * work as expected.
- */
- public void testCondBreak() throws CoreException, MIException, IOException, CDIException, InterruptedException {
- boolean caught = false;
- session = CDebugHelper.createSession("main", testProject);
- assertNotNull(session);
- ICDITarget[] targets = session.getTargets();
- assertNotNull(targets);
- assertTrue(targets.length > 0);
- ICDITarget cdiTarget = targets[0];
- assertNotNull(cdiTarget);
-
- /***********************************************************************
- * Create a break point on a generic function with an empty condition
- **********************************************************************/
- ICDICondition cond = cdiTarget.createCondition(0, "");
- ICDIFunctionLocation location = cdiTarget.createFunctionLocation(null, "func1");
- assertNotNull(location);
- cdiTarget.setFunctionBreakpoint(0, location, cond, false);
-
- /***********************************************************************
- * Create a break point on a generic function with an valid condition
- **********************************************************************/
- cond = cdiTarget.createCondition(0, "x<10");
- location = cdiTarget.createFunctionLocation(null, "func1");
- assertNotNull(location);
- cdiTarget.setFunctionBreakpoint(0, location, cond, false);
-
- /***********************************************************************
- * Create a break point on a generic function with an invalid condition
- * We expect to get a CDIException when we try to set the breakpoint.
- **********************************************************************/
- cond = cdiTarget.createCondition(0, "nonexist<10");
- location = cdiTarget.createFunctionLocation(null, "func1");
- assertNotNull(location);
- try {
- cdiTarget.setFunctionBreakpoint(0, location, cond, false);
- } catch (CDIException e) {
- caught = true;
- }
- assertTrue(caught);
-
- /***********************************************************************
- * Create a break point on a line number with a condition and make sure
- * it does not suspend execution of the application until the condition
- * is true
- **********************************************************************/
- cdiTarget.deleteAllBreakpoints();
- ICDILineLocation lineLocation = cdiTarget.createLineLocation(null, 23);
- assertNotNull(location);
- cond = cdiTarget.createCondition(0, "a>10");
-
- cdiTarget.setLineBreakpoint(0, lineLocation, cond, false);
- targets = session.getTargets();
- /*
- * We better only have one target connected to this session or something
- * is not right...
- */
- assertTrue(targets.length == 1);
- /*
- * Resume the target, this should cause it to run till it hits the
- * breakpoint
- */
- targets[0].resume();
- /**
- * Give the process up to 10 seconds to become either terminated or
- * suspended. It sould hit the breakponint almost immediatly so we
- * should only sleep for max 100 ms
- */
- for (int x = 0; x < 100; x++) {
- if (targets[0].isSuspended() || targets[0].isTerminated())
- break;
- Thread.sleep(100);
- }
- assertTrue("Suspended: " + targets[0].isSuspended() + " Termiunated: " + targets[0].isTerminated(), targets[0]
- .isSuspended());
- ICDIStackFrame frame = targets[0].getCurrentThread().getStackFrames()[0];
- ICDILocator locator = frame.getLocator();
- assertTrue(locator.getLineNumber() == 23);
- assertTrue(locator.getFunction().equals("main"));
- assertTrue(locator.getFile().equals("main.c"));
- /* Get the value of a and and make sure it is 11 */
- assertTrue(targets[0].evaluateExpressionToString(frame, "a"), targets[0].evaluateExpressionToString(frame, "a").equals("11"));
-
- /* clean up the session */
- session.terminate();
- session = null;
- targets = null;
-
- }
-
- void pause() {
- try {
- Thread.sleep(100);
- } catch (InterruptedException e) {
- }
- }
-
-} \ No newline at end of file
diff --git a/debug/org.eclipse.cdt.debug.ui.tests/core/org/eclipse/cdt/debug/core/tests/DebugTests.java b/debug/org.eclipse.cdt.debug.ui.tests/core/org/eclipse/cdt/debug/core/tests/DebugTests.java
deleted file mode 100644
index 9a629a3400e..00000000000
--- a/debug/org.eclipse.cdt.debug.ui.tests/core/org/eclipse/cdt/debug/core/tests/DebugTests.java
+++ /dev/null
@@ -1,142 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2005 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.core.tests;
-
-import java.io.IOException;
-import java.lang.reflect.InvocationTargetException;
-import junit.framework.TestCase;
-import junit.framework.TestSuite;
-import org.eclipse.cdt.core.model.ICProject;
-import org.eclipse.cdt.debug.core.cdi.CDIException;
-import org.eclipse.cdt.debug.core.cdi.ICDIFunctionLocation;
-import org.eclipse.cdt.debug.core.cdi.ICDISession;
-import org.eclipse.cdt.debug.core.cdi.model.ICDITarget;
-import org.eclipse.cdt.debug.mi.core.MIException;
-import org.eclipse.cdt.debug.testplugin.CDebugHelper;
-import org.eclipse.cdt.debug.testplugin.CProjectHelper;
-import org.eclipse.core.resources.IWorkspace;
-import org.eclipse.core.resources.IWorkspaceRoot;
-import org.eclipse.core.resources.IncrementalProjectBuilder;
-import org.eclipse.core.resources.ResourcesPlugin;
-import org.eclipse.core.runtime.CoreException;
-import org.eclipse.core.runtime.IPath;
-import org.eclipse.core.runtime.NullProgressMonitor;
-import org.eclipse.core.runtime.Path;
-
-/**
- * @author Peter Graves
- *
- * This file contains a set of generic tests for the debug stuff. It currenly
- * uses the mi debugger.
- *
- */
-public class DebugTests extends TestCase {
- IWorkspace workspace;
- IWorkspaceRoot root;
- ICProject testProject;
- NullProgressMonitor monitor;
- ICDISession session;
-
-
- /**
- * Constructor for DebugTests
- * @param name
- */
- public DebugTests(String name) {
- super(name);
- /***
- * The assume that they have a working workspace
- * and workspace root object to use to create projects/files in,
- * so we need to get them setup first.
- */
- workspace= ResourcesPlugin.getWorkspace();
- root= workspace.getRoot();
- monitor = new NullProgressMonitor();
- if (workspace==null)
- fail("Workspace was not setup");
- if (root==null)
- fail("Workspace root was not setup");
-
- }
-
- /**
- * Sets up the test fixture.
- *
- * Called before every test case method.
- *
- * Example code test the packages in the project
- * "com.qnx.tools.ide.cdt.core"
- */
- protected void setUp() throws CoreException, InvocationTargetException, IOException {
- ResourcesPlugin.getWorkspace().getDescription().setAutoBuilding(false);
- /***
- * Create a new project and import the test source.
- */
- IPath importFile = new Path("resources/debugTest.zip");
- testProject=CProjectHelper.createCProjectWithImport("filetest", importFile);
- if (testProject==null)
- fail("Unable to create project");
- /* Build the test project.. */
-
- testProject.getProject().build(IncrementalProjectBuilder.FULL_BUILD, null);
-
- }
-
- /**
- * Tears down the test fixture.
- *
- * Called after every test case method.
- */
- protected void tearDown() throws CoreException, CDIException {
- if (session!=null) {
- session.terminate();
- session=null;
- }
- CProjectHelper.delete(testProject);
- }
-
- public static TestSuite suite() {
- return new TestSuite(DebugTests.class);
- }
-
- public static void main (String[] args){
- junit.textui.TestRunner.run(suite());
- }
-
-
- /***
- * Can we setup a debug?
- * This is sort of a catch all sanity tests to make sure we can create a debug
- * session with a break point and start it without having any exceptions thrown.
- * It's not ment to be a real proper test.
- */
- public void testDebug() throws CoreException, MIException, IOException, CDIException {
- ICDITarget cdiTarget;
- ICDIFunctionLocation location;
-
- session=CDebugHelper.createSession("main",testProject);
- assertNotNull(session);
- ICDITarget[] targets = session.getTargets();
- assertNotNull(targets);
- assertTrue(targets.length > 0);
- cdiTarget = targets[0];
- assertNotNull(cdiTarget);
- location=cdiTarget.createFunctionLocation(null, "func1");
- assertNotNull(location);
- cdiTarget.setFunctionBreakpoint(0, location, null, false);
- cdiTarget.resume();
- session.terminate();
- session=null;
-
- }
-
-
-}
diff --git a/debug/org.eclipse.cdt.debug.ui.tests/core/org/eclipse/cdt/debug/core/tests/LocationTests.java b/debug/org.eclipse.cdt.debug.ui.tests/core/org/eclipse/cdt/debug/core/tests/LocationTests.java
deleted file mode 100644
index 868fd9a7c66..00000000000
--- a/debug/org.eclipse.cdt.debug.ui.tests/core/org/eclipse/cdt/debug/core/tests/LocationTests.java
+++ /dev/null
@@ -1,196 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2005 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.core.tests;
-
-import java.io.IOException;
-import java.lang.reflect.InvocationTargetException;
-import junit.framework.TestCase;
-import junit.framework.TestSuite;
-import org.eclipse.cdt.core.model.ICProject;
-import org.eclipse.cdt.debug.core.cdi.CDIException;
-import org.eclipse.cdt.debug.core.cdi.ICDIFunctionLocation;
-import org.eclipse.cdt.debug.core.cdi.ICDILineLocation;
-import org.eclipse.cdt.debug.core.cdi.ICDISession;
-import org.eclipse.cdt.debug.core.cdi.model.ICDIBreakpoint;
-import org.eclipse.cdt.debug.core.cdi.model.ICDILocationBreakpoint;
-import org.eclipse.cdt.debug.core.cdi.model.ICDITarget;
-import org.eclipse.cdt.debug.mi.core.MIException;
-import org.eclipse.cdt.debug.testplugin.CDebugHelper;
-import org.eclipse.cdt.debug.testplugin.CProjectHelper;
-import org.eclipse.core.resources.IWorkspace;
-import org.eclipse.core.resources.IWorkspaceRoot;
-import org.eclipse.core.resources.IncrementalProjectBuilder;
-import org.eclipse.core.resources.ResourcesPlugin;
-import org.eclipse.core.runtime.CoreException;
-import org.eclipse.core.runtime.IPath;
-import org.eclipse.core.runtime.NullProgressMonitor;
-import org.eclipse.core.runtime.Path;
-
-/**
- * @author Peter Graves
- *
- * This file contains a set of generic tests for the CDI Location interfaces.
- * It will currenly use the mi implementation.
- *
- */
-public class LocationTests extends TestCase {
- IWorkspace workspace;
- IWorkspaceRoot root;
- ICProject testProject;
- NullProgressMonitor monitor;
- ICDISession session;
-
-
- /**
- * Constructor for LocationTests
- * @param name
- */
- public LocationTests(String name) {
- super(name);
- /***
- * The assume that they have a working workspace
- * and workspace root object to use to create projects/files in,
- * so we need to get them setup first.
- */
- workspace= ResourcesPlugin.getWorkspace();
- root= workspace.getRoot();
- monitor = new NullProgressMonitor();
- if (workspace==null)
- fail("Workspace was not setup");
- if (root==null)
- fail("Workspace root was not setup");
-
- }
-
- /**
- * Sets up the test fixture.
- *
- * Called before every test case method.
- *
- * Example code test the packages in the project
- * "com.qnx.tools.ide.cdt.core"
- */
- protected void setUp() throws CoreException, InvocationTargetException, IOException {
- ResourcesPlugin.getWorkspace().getDescription().setAutoBuilding(false);
- /***
- * Create a new project and import the test source.
- */
- IPath importFile = new Path("resources/debugTest.zip");
- testProject=CProjectHelper.createCProjectWithImport("filetest", importFile);
- if (testProject==null)
- fail("Unable to create project");
- /* Build the test project.. */
-
- testProject.getProject().build(IncrementalProjectBuilder.FULL_BUILD, null);
-
- }
-
- /**
- * Tears down the test fixture.
- *
- * Called after every test case method.
- */
- protected void tearDown() throws CoreException, CDIException {
- if (session!=null) {
- session.terminate();
- session=null;
- }
- CProjectHelper.delete(testProject);
- }
-
- public static TestSuite suite() {
- return new TestSuite(LocationTests.class);
- }
-
- public static void main (String[] args){
- junit.textui.TestRunner.run(suite());
- }
-
-
- /***
- * A couple tests to make sure comparing Locations works as expected.
- */
- public void testIsEquals() throws CoreException, MIException, IOException, CDIException {
- ICDITarget cdiTarget;
- ICDILineLocation lineLocation, lineLocation2;
- ICDIFunctionLocation functionLocation, functionLocation2;
- ICDIBreakpoint[] breakpoints;
- ICDILocationBreakpoint curbreak;
- session=CDebugHelper.createSession("main",testProject);
- assertNotNull(session);
- ICDITarget[] targets = session.getTargets();
- assertNotNull(targets);
- assertTrue(targets.length > 0);
- cdiTarget = targets[0];
- assertNotNull(cdiTarget);
-
- /**********************************************************************
- * Simple test.. this should work.
- **********************************************************************/
- functionLocation=cdiTarget.createFunctionLocation("main.c", "func1");
- functionLocation2=cdiTarget.createFunctionLocation("main.c", "func1");
- assertTrue(functionLocation.equals(functionLocation2));
- /**********************************************************************
- * Simple test.. this should work.
- **********************************************************************/
- lineLocation=cdiTarget.createLineLocation("main.c", 10);
- lineLocation2=cdiTarget.createLineLocation("main.c", 10);
- assertTrue(lineLocation.equals(lineLocation2));
-
- /**********************************************************************
- * make sure that the location returned from getLocation on the
- * ICDILocationBreakpoint.getLocation that is returned from
- * setLocationBreakpoint is the same as the breakpoint returned from
- * BreakpointManager.getBreakpoints.getLocation()
- **********************************************************************/
- functionLocation=cdiTarget.createFunctionLocation("main.c", "func1");
- assertNotNull(functionLocation);
- functionLocation2=cdiTarget.setFunctionBreakpoint(0, functionLocation, null, false).getLocator();
-
- breakpoints=cdiTarget.getBreakpoints();
- assertNotNull(breakpoints);
- assertTrue(breakpoints.length==1);
- if (breakpoints[0] instanceof ICDILocationBreakpoint) {
- curbreak=(ICDILocationBreakpoint) breakpoints[0];
- } else
- curbreak=null;
- assertNotNull(curbreak);
-
- assertTrue(curbreak.getLocator().equals(functionLocation2));
- cdiTarget.deleteAllBreakpoints();
- /* Create a break point on a generic function with a file name that
- * gdb will change to the relitive path of the source file. This
- * should work, but at the time of writing (Sept 25, 2002) does not.
- */
- functionLocation=cdiTarget.createFunctionLocation("main.c", "func1");
- assertNotNull(functionLocation);
- cdiTarget.setFunctionBreakpoint(0, functionLocation, null, false);
-
- breakpoints=cdiTarget.getBreakpoints();
- assertNotNull(breakpoints);
- assertTrue(breakpoints.length==1);
- if (breakpoints[0] instanceof ICDILocationBreakpoint) {
- curbreak=(ICDILocationBreakpoint) breakpoints[0];
- } else
- curbreak=null;
- assertNotNull(curbreak);
-
- assertTrue("PR:23879",curbreak.getLocator().equals(functionLocation));
-
-
- /* clean up the session */
- session.terminate();
- session=null;
-
- }
-
-
-}
diff --git a/debug/org.eclipse.cdt.debug.ui.tests/core/org/eclipse/cdt/debug/core/tests/TargetTests.java b/debug/org.eclipse.cdt.debug.ui.tests/core/org/eclipse/cdt/debug/core/tests/TargetTests.java
deleted file mode 100644
index 84039517b51..00000000000
--- a/debug/org.eclipse.cdt.debug.ui.tests/core/org/eclipse/cdt/debug/core/tests/TargetTests.java
+++ /dev/null
@@ -1,109 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2005 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.core.tests;
-
-import java.io.FileNotFoundException;
-import java.io.IOException;
-
-import junit.framework.TestCase;
-import junit.framework.TestSuite;
-import org.eclipse.cdt.debug.testplugin.*;
-import org.eclipse.cdt.core.model.*;
-import org.eclipse.core.resources.*;
-import org.eclipse.core.runtime.*;
-import org.eclipse.cdt.debug.mi.core.*;
-import org.eclipse.cdt.debug.core.cdi.*;
-
-/**
- * @author Peter Graves
- *
- * This file contains a set of generic tests for the CDI Target interfaces.
- * It will currenly use the mi implementation.
- *
- */
-public class TargetTests extends TestCase {
- IWorkspace workspace;
- IWorkspaceRoot root;
- ICProject testProject;
- NullProgressMonitor monitor;
-
-
- /**
- * Constructor for TargetTests
- * @param name
- */
- public TargetTests(String name) {
- super(name);
- /***
- * The assume that they have a working workspace
- * and workspace root object to use to create projects/files in,
- * so we need to get them setup first.
- */
- workspace= ResourcesPlugin.getWorkspace();
- root= workspace.getRoot();
- monitor = new NullProgressMonitor();
- if (workspace==null)
- fail("Workspace was not setup");
- if (root==null)
- fail("Workspace root was not setup");
-
- }
-
- /**
- * Sets up the test fixture.
- *
- * Called before every test case method.
- *
- * Example code test the packages in the project
- * "com.qnx.tools.ide.cdt.core"
- */
- protected void setUp() throws CoreException,FileNotFoundException {
-
- /***
- * Setup the various files, paths and projects that are needed by the
- * tests
- */
- testProject=CProjectHelper.createCProject("filetest");
- if (testProject==null)
- fail("Unable to create project");
- }
-
- /**
- * Tears down the test fixture.
- *
- * Called after every test case method.
- */
- protected void tearDown() throws CoreException {
- CProjectHelper.delete(testProject);
- }
-
- public static TestSuite suite() {
- return new TestSuite(TargetTests.class);
- }
-
- public static void main (String[] args){
- junit.textui.TestRunner.run(suite());
- }
-
-
- /***
- * A couple tests to make sure various evaluations work as expected
- */
- public void testEvaluate() throws CoreException, MIException, IOException, CDIException, InterruptedException {
-
- /***
- * Tests to come
- */
-
- }
-
-
-}
diff --git a/debug/org.eclipse.cdt.debug.ui.tests/plugin.xml b/debug/org.eclipse.cdt.debug.ui.tests/plugin.xml
deleted file mode 100644
index 7bf65fb5f42..00000000000
--- a/debug/org.eclipse.cdt.debug.ui.tests/plugin.xml
+++ /dev/null
@@ -1,6 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<?eclipse version="3.0"?>
-<plugin>
-
-
-</plugin>
diff --git a/debug/org.eclipse.cdt.debug.ui.tests/resources/debugTest.zip b/debug/org.eclipse.cdt.debug.ui.tests/resources/debugTest.zip
deleted file mode 100644
index 9d1bdf012f4..00000000000
--- a/debug/org.eclipse.cdt.debug.ui.tests/resources/debugTest.zip
+++ /dev/null
Binary files differ
diff --git a/debug/org.eclipse.cdt.debug.ui.tests/src/org/eclipse/cdt/debug/testplugin/CDebugHelper.java b/debug/org.eclipse.cdt.debug.ui.tests/src/org/eclipse/cdt/debug/testplugin/CDebugHelper.java
deleted file mode 100644
index 2863d639df3..00000000000
--- a/debug/org.eclipse.cdt.debug.ui.tests/src/org/eclipse/cdt/debug/testplugin/CDebugHelper.java
+++ /dev/null
@@ -1,83 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2005 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.testplugin;
-
-import java.io.File;
-import java.io.IOException;
-
-import org.eclipse.cdt.core.model.CModelException;
-import org.eclipse.cdt.core.model.IBinary;
-import org.eclipse.cdt.core.model.ICProject;
-import org.eclipse.cdt.debug.core.cdi.ICDISession;
-import org.eclipse.cdt.debug.mi.core.MIException;
-import org.eclipse.cdt.debug.mi.core.MIPlugin;
-import org.eclipse.cdt.debug.mi.core.command.MIVersion;
-import org.eclipse.core.runtime.Path;
-import org.eclipse.core.runtime.Platform;
-
-
-/**
- * Helper methods to set up a Debug session.
- */
-public class CDebugHelper {
-
-
-
- /**
- * Creates a ICDISession.
- */
- public static ICDISession createSession(String exe) throws IOException, MIException {
- MIPlugin mi;
- ICDISession session;
- String os = System.getProperty("os.name");
- String exename;
- mi=MIPlugin.getDefault();
-
- exename=org.eclipse.core.runtime.Platform.getPlugin("org.eclipse.cdt.debug.ui.tests").find(new Path("/")).getFile();
- exename+="core/org/eclipse/cdt/debug/core/tests/resources/";
- os=os.toLowerCase();
- /* We need to get the correct executable to execute
- */
- if (os.indexOf("windows")!=-1)
- exename+="win/"+ exe +".exe";
- else if (os.indexOf("qnx")!=-1)
- exename+="qnx/" + exe;
- else if (os.indexOf("linux")!=-1)
- exename+="linux/"+exe;
- else if (os.indexOf("sol")!=-1)
- exename+="sol/" + exe;
- else
- return(null);
- session=mi.createCSession(null, MIVersion.MI1, new File(exename), new File("."), null, null);
- return(session);
- }
- /**
- * Creates a ICDISession.
- */
- public static ICDISession createSession(String exe, ICProject project) throws IOException, MIException, CModelException {
- MIPlugin mi;
- String workspacePath= Platform.getLocation().toOSString();
- ICDISession session;
- mi=MIPlugin.getDefault();
-
- IBinary bins[] = project.getBinaryContainer().getBinaries();
- if (bins.length!=1) {
- //SHOULD NOT HAPPEN
- return(null);
- }
-
- session=mi.createCSession(null, MIVersion.MI1, new File(workspacePath +bins[0].getPath().toOSString()), new File("."), null, null);
- return(session);
- }
-
-
-}
-
diff --git a/debug/org.eclipse.cdt.debug.ui.tests/src/org/eclipse/cdt/debug/testplugin/CProjectHelper.java b/debug/org.eclipse.cdt.debug.ui.tests/src/org/eclipse/cdt/debug/testplugin/CProjectHelper.java
deleted file mode 100644
index 355ac12d93b..00000000000
--- a/debug/org.eclipse.cdt.debug.ui.tests/src/org/eclipse/cdt/debug/testplugin/CProjectHelper.java
+++ /dev/null
@@ -1,236 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2005 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.testplugin;
-
-import java.io.File;
-import java.io.IOException;
-import java.lang.reflect.InvocationTargetException;
-import java.util.zip.ZipFile;
-
-import org.eclipse.cdt.core.CCorePlugin;
-import org.eclipse.cdt.core.CProjectNature;
-import org.eclipse.cdt.core.ICDescriptor;
-import org.eclipse.cdt.core.ICDescriptorOperation;
-import org.eclipse.cdt.core.model.CModelException;
-import org.eclipse.cdt.core.model.IArchive;
-import org.eclipse.cdt.core.model.IArchiveContainer;
-import org.eclipse.cdt.core.model.IBinary;
-import org.eclipse.cdt.core.model.IBinaryContainer;
-import org.eclipse.cdt.core.model.ICElement;
-import org.eclipse.cdt.core.model.ICProject;
-import org.eclipse.cdt.core.model.ITranslationUnit;
-import org.eclipse.core.resources.IProject;
-import org.eclipse.core.resources.IProjectDescription;
-import org.eclipse.core.resources.IResource;
-import org.eclipse.core.resources.IWorkspaceRoot;
-import org.eclipse.core.resources.ResourcesPlugin;
-import org.eclipse.core.runtime.CoreException;
-import org.eclipse.core.runtime.IPath;
-import org.eclipse.core.runtime.IProgressMonitor;
-import org.eclipse.ui.dialogs.IOverwriteQuery;
-import org.eclipse.ui.wizards.datatransfer.ImportOperation;
-import org.eclipse.ui.wizards.datatransfer.ZipFileStructureProvider;
-
-/**
- * Helper methods to set up a ICProject.
- */
-public class CProjectHelper {
- /**
- * Creates a ICProject.
- */
- public static ICProject createCProjectWithImport(String projectName, IPath zipFile) throws CoreException, InvocationTargetException, IOException {
- IWorkspaceRoot root= ResourcesPlugin.getWorkspace().getRoot();
- IProject project= root.getProject(projectName);
- if (!project.exists()) {
- project.create(null);
- } else {
- project.refreshLocal(IResource.DEPTH_INFINITE, null);
- }
-
- if (!project.isOpen()) {
- project.open(null);
- }
- File zip = CTestPlugin.getDefault().getFileInPlugin(zipFile);
- importFilesFromZip(new ZipFile(zip),project.getFullPath(),null);
-
- if (!project.hasNature(CProjectNature.C_NATURE_ID)) {
- addNatureToProject(project, CProjectNature.C_NATURE_ID, null);
- }
-
- ICProject cproject = CCorePlugin.getDefault().getCoreModel().create(project);
- /* Try to guess at the correct binary parser.. elf or pe at this point.. */
- ICDescriptorOperation op = new ICDescriptorOperation() {
-
- public void execute(ICDescriptor descriptor, IProgressMonitor monitor) throws CoreException {
- descriptor.remove(CCorePlugin.BINARY_PARSER_UNIQ_ID);
- String os = System.getProperty("os.name");
- boolean pe=(os.toLowerCase().indexOf("windows")!=-1);
- descriptor.create(CCorePlugin.BINARY_PARSER_UNIQ_ID, pe?"org.eclipse.cdt.core.PE":"org.eclipse.cdt.core.ELF");
- }
- };
- CCorePlugin.getDefault().getCDescriptorManager().runDescriptorOperation(project, op, null);
- return cproject;
- }
-
-
- /**
- * Creates a ICProject.
- */
- public static ICProject createCProject(String projectName) throws CoreException {
- IWorkspaceRoot root= ResourcesPlugin.getWorkspace().getRoot();
- IProject project= root.getProject(projectName);
- if (!project.exists()) {
- project.create(null);
- } else {
- project.refreshLocal(IResource.DEPTH_INFINITE, null);
- }
-
- if (!project.isOpen()) {
- project.open(null);
- }
-
- if (!project.hasNature(CProjectNature.C_NATURE_ID)) {
- addNatureToProject(project, CProjectNature.C_NATURE_ID, null);
- }
-
- ICProject cproject = CCorePlugin.getDefault().getCoreModel().create(project);
-
- return cproject;
- }
-
- /**
- * Removes a ICProject.
- */
- public static void delete(ICProject cproject) throws CoreException {
- cproject.getProject().delete(true, true, null);
- }
-
-
-
- /**
- * Attempts to find an archive with the given name in the workspace
- */
- public static IArchive findArchive(ICProject testProject,String name) throws CModelException {
- int x;
- IArchive[] myArchives;
- IArchiveContainer archCont;
- archCont=testProject.getArchiveContainer();
- myArchives=archCont.getArchives();
- if (myArchives.length<1)
- return(null);
- for (x=0;x<myArchives.length;x++) {
- if (myArchives[x].getElementName().equals(name))
- return(myArchives[x]);
- }
- return(null);
- }
- /**
- * Attempts to find a binary with the given name in the workspace
- */
- public static IBinary findBinary(ICProject testProject,String name) throws CModelException {
- IBinaryContainer binCont;
- int x;
- IBinary[] myBinaries;
- binCont=testProject.getBinaryContainer();
- myBinaries=binCont.getBinaries();
- if (myBinaries.length<1)
- return(null);
- for (x=0;x<myBinaries.length;x++) {
- if (myBinaries[x].getElementName().equals(name))
- return(myBinaries[x]);
-
- }
- return(null);
- }
-
- /**
- * Attempts to find an object with the given name in the workspace
- */
- public static IBinary findObject(ICProject testProject,String name) throws CModelException {
- int x;
- ICElement[] myElements;
- myElements=testProject.getChildren();
- if (myElements.length<1)
- return(null);
- for (x=0;x<myElements.length;x++) {
- if (myElements[x].getElementName().equals(name))
- if (myElements[x] instanceof IBinary) {
- return((IBinary) myElements[x]);
- }
- }
- return(null);
- }
- /**
- * Attempts to find a TranslationUnit with the given name in the workspace
- */
- public static ITranslationUnit findTranslationUnit(ICProject testProject,String name) throws CModelException {
- int x;
- ICElement[] myElements;
- myElements=testProject.getChildren();
- if (myElements.length<1)
- return(null);
- for (x=0;x<myElements.length;x++) {
- if (myElements[x].getElementName().equals(name))
- if (myElements[x] instanceof ITranslationUnit) {
- return((ITranslationUnit) myElements[x]);
- }
- }
- return(null);
- }
-
-
-
- /**
- * Attempts to find an element with the given name in the workspace
- */
- public static ICElement findElement(ICProject testProject,String name) throws CModelException {
- int x;
- ICElement[] myElements;
- myElements=testProject.getChildren();
- if (myElements.length<1)
- return(null);
- for (x=0;x<myElements.length;x++) {
- if (myElements[x].getElementName().equals(name))
- return myElements[x];
- }
- return(null);
- }
-
-
- private static void addNatureToProject(IProject proj, String natureId, IProgressMonitor monitor) throws CoreException {
- IProjectDescription description = proj.getDescription();
- String[] prevNatures= description.getNatureIds();
- String[] newNatures= new String[prevNatures.length + 1];
- System.arraycopy(prevNatures, 0, newNatures, 0, prevNatures.length);
- newNatures[prevNatures.length]= natureId;
- description.setNatureIds(newNatures);
- proj.setDescription(description, monitor);
- }
-
- private static void importFilesFromZip(ZipFile srcZipFile, IPath destPath, IProgressMonitor monitor) throws InvocationTargetException {
- ZipFileStructureProvider structureProvider= new ZipFileStructureProvider(srcZipFile);
- try {
- ImportOperation op= new ImportOperation(destPath, structureProvider.getRoot(), structureProvider, new ImportOverwriteQuery());
- op.run(monitor);
- } catch (InterruptedException e) {
- // should not happen
- }
- }
-
- private static class ImportOverwriteQuery implements IOverwriteQuery {
- public String queryOverwrite(String file) {
- return ALL;
- }
- }
-
-
-}
-
diff --git a/debug/org.eclipse.cdt.debug.ui.tests/src/org/eclipse/cdt/debug/testplugin/CTestPlugin.java b/debug/org.eclipse.cdt.debug.ui.tests/src/org/eclipse/cdt/debug/testplugin/CTestPlugin.java
deleted file mode 100644
index cf0510874ee..00000000000
--- a/debug/org.eclipse.cdt.debug.ui.tests/src/org/eclipse/cdt/debug/testplugin/CTestPlugin.java
+++ /dev/null
@@ -1,64 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * IBM - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.testplugin;
-
-import java.io.File;
-import java.io.IOException;
-import java.net.URL;
-
-import org.eclipse.core.resources.IWorkspace;
-import org.eclipse.core.resources.IWorkspaceDescription;
-import org.eclipse.core.resources.ResourcesPlugin;
-import org.eclipse.core.runtime.CoreException;
-import org.eclipse.core.runtime.IPath;
-import org.eclipse.core.runtime.IPluginDescriptor;
-import org.eclipse.core.runtime.Platform;
-import org.eclipse.core.runtime.Plugin;
-
-
-public class CTestPlugin extends Plugin {
-
- private static CTestPlugin fgDefault;
-
- public CTestPlugin(IPluginDescriptor descriptor) {
- super(descriptor);
- fgDefault= this;
- }
-
- public static CTestPlugin getDefault() {
- return fgDefault;
- }
-
- public static IWorkspace getWorkspace() {
- return ResourcesPlugin.getWorkspace();
- }
-
- public static void enableAutobuild(boolean enable) throws CoreException {
- // disable auto build
- IWorkspace workspace= CTestPlugin.getWorkspace();
- IWorkspaceDescription desc= workspace.getDescription();
- desc.setAutoBuilding(enable);
- workspace.setDescription(desc);
- }
-
- public File getFileInPlugin(IPath path) {
- try {
- URL installURL= new URL(getDescriptor().getInstallURL(), path.toString());
- URL localURL= Platform.asLocalURL(installURL);
- return new File(localURL.getFile());
- } catch (IOException e) {
- return null;
- }
- }
-
-
-
-} \ No newline at end of file
diff --git a/debug/org.eclipse.cdt.debug.ui.tests/src/org/eclipse/cdt/debug/testplugin/util/ExpectedStrings.java b/debug/org.eclipse.cdt.debug.ui.tests/src/org/eclipse/cdt/debug/testplugin/util/ExpectedStrings.java
deleted file mode 100644
index 4388c5d0dd4..00000000000
--- a/debug/org.eclipse.cdt.debug.ui.tests/src/org/eclipse/cdt/debug/testplugin/util/ExpectedStrings.java
+++ /dev/null
@@ -1,106 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2005 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.testplugin.util;
-
-
-import java.util.Stack;
-/**
- * @author Peter Graves
- *
- * This utility class maintains a list of strings, and as a tests finds strings
- * in a structure/list, it will maintain a list of unfound/extra strings.
- */
-public class ExpectedStrings {
-
- public String [] expStrings;
- private boolean[] foundStrings;
- private Stack extraStrings; /* A stack of the unecpected strings we
- * recieved
- */
- private boolean extra;
-
- /**
- * Constructor for ExpectedStrings.
- */
- public ExpectedStrings() {
- }
- /**
- * Constructor for ExpectedStrings that accepts a list of strings that
- * we expect to get.
- */
- public ExpectedStrings(String[] values) {
- int x;
- expStrings=new String[values.length];
- for (x=0;x<values.length;x++) {
- expStrings[x]=new String(values[x]);
- }
- foundStrings=new boolean[values.length];
- for (x=0;x<values.length;x++) {
- foundStrings[x]=false;
- }
- extraStrings=new Stack();
- extra=false;
- }
-
- public int foundString(String current) {
- int x;
- for (x=0;x<expStrings.length;x++) {
- if (current.equals(expStrings[x])) {
- foundStrings[x]=true;
- return(0);
- }
- }
- /* If we arrive here, the strings was not found, so this is
- * and extra string
- */
-
- extraStrings.push(new String(current));
- extra=true;
- return(1);
- }
- public int getNum(String name) {
- int x;
- for (x=0;x<expStrings.length;x++) {
- if (name.equals(expStrings[x]))
- return(x);
- }
- return(-1);
- }
- public boolean gotAll() {
- int x;
- for (x=0;x<expStrings.length;x++) {
- if (foundStrings[x]==false)
- return(false);
- }
- return(true);
- }
- public boolean gotExtra() {
- return(extra);
- }
- public String getMissingString() {
- int x;
- String missing = new String("Missing elements: ");
- for (x=0;x<expStrings.length;x++) {
- if (foundStrings[x]==false)
- missing+=expStrings[x];
- missing+=" ";
- }
- return(missing);
- }
- public String getExtraString() {
- String extra= new String("Extra elements: ");
- while (!extraStrings.empty()) {
- extra+=extraStrings.pop();
- extra+=" ";
- }
- return(extra);
- }
-}
diff --git a/debug/org.eclipse.cdt.debug.ui.tests/src/org/eclipse/cdt/debug/testplugin/util/ExpectedStringsTests.java b/debug/org.eclipse.cdt.debug.ui.tests/src/org/eclipse/cdt/debug/testplugin/util/ExpectedStringsTests.java
deleted file mode 100644
index 844e20a8ab5..00000000000
--- a/debug/org.eclipse.cdt.debug.ui.tests/src/org/eclipse/cdt/debug/testplugin/util/ExpectedStringsTests.java
+++ /dev/null
@@ -1,124 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2005 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.testplugin.util;
-
-import junit.framework.TestCase;
-import junit.framework.TestSuite;
-
-/**
- * @author Peter Graves
- *
- *Some simple tests to make sure our ExtraStrings class seems to work.
- */
-public class ExpectedStringsTests extends TestCase {
-
- /**
- * Constructor for ExpectedStringsTests.
- * @param name
- */
- public ExpectedStringsTests(String name) {
- super(name);
- }
- /**
- * Sets up the test fixture.
- *
- * Called before every test case method.
- *
- * Example code test the packages in the project
- * "com.qnx.tools.ide.cdt.core"
- */
- protected void setUp() {
-
-
- }
-
- /**
- * Tears down the test fixture.
- *
- * Called after every test case method.
- */
- protected void tearDown() {
- // release resources here and clean-up
- }
-
- public static TestSuite suite() {
- return new TestSuite(ExpectedStringsTests.class);
- }
-
- public static void main (String[] args){
- junit.textui.TestRunner.run(suite());
- }
-
- public void testGotAll() {
- ExpectedStrings myExp;
- String[] strings= {"stringOne", "stringTwo", "stringThree" };
-
- myExp=new ExpectedStrings(strings);
- assertTrue("No found strings", !myExp.gotAll());
- myExp.foundString("stringOne");
- assertTrue("1 found strings", !myExp.gotAll());
- myExp.foundString("stringTwo");
- assertTrue("2 found strings", !myExp.gotAll());
- myExp.foundString("stringThree");
- assertTrue("All found strings", myExp.gotAll());
-
-
- }
- public void testGotExtra () {
- ExpectedStrings myExp;
- String[] strings= {"stringOne", "stringTwo", "stringThree" };
-
- myExp=new ExpectedStrings(strings);
- assertTrue("No found strings", !myExp.gotExtra());
- myExp.foundString("stringOne");
- assertTrue("1 found strings", !myExp.gotExtra());
- myExp.foundString("stringTwo");
- assertTrue("2 found strings", !myExp.gotExtra());
- myExp.foundString("stringThree");
- assertTrue("All found strings", !myExp.gotExtra());
- myExp.foundString("Somerandomestring");
- assertTrue("Extra String", myExp.gotExtra());
-
- }
-
- public void testGetMissingString()
- {
- ExpectedStrings myExp;
- String[] strings= {"stringOne", "stringTwo", "stringThree" };
-
- myExp=new ExpectedStrings(strings);
- assertNotNull(myExp.getMissingString());
- myExp.foundString("stringOne");
- assertNotNull(myExp.getMissingString());
- myExp.foundString("stringTwo");
- assertNotNull(myExp.getMissingString());
- myExp.foundString("stringThree");
- assertNotNull(myExp.getMissingString());
-
- }
-
- public void testGetExtraString()
- {
- ExpectedStrings myExp;
- String[] strings= {"stringOne", "stringTwo", "stringThree" };
-
- myExp=new ExpectedStrings(strings);
- assertNotNull(myExp.getExtraString());
- myExp.foundString("stringOnenot");
- assertNotNull(myExp.getMissingString());
- myExp.foundString("stringTwonot");
- assertNotNull(myExp.getMissingString());
-
- }
-
-
-
-}
diff --git a/debug/org.eclipse.cdt.debug.ui.tests/test.xml b/debug/org.eclipse.cdt.debug.ui.tests/test.xml
deleted file mode 100644
index 41075b0e15e..00000000000
--- a/debug/org.eclipse.cdt.debug.ui.tests/test.xml
+++ /dev/null
@@ -1,51 +0,0 @@
-<?xml version="1.0"?>
-
-<project name="testsuite" default="run" basedir=".">
- <!-- The property ${eclipse-home} should be passed into this script -->
- <!-- Set a meaningful default value for when it is not. -->
- <property name="eclipse-home" value="${basedir}"/>
-
- <!-- sets the properties eclipse-home, and library-file -->
- <property name="plugin-name" value="org.eclipse.cdt.debug.ui.tests"/>
- <property name="library-file"
- value="${eclipse-home}/plugins/org.eclipse.test/library.xml"/>
-
- <!-- This target holds all initialization code that needs to be done for -->
- <!-- all tests that are to be run. Initialization for individual tests -->
- <!-- should be done within the body of the suite target. -->
- <target name="init">
- <tstamp/>
- <delete>
- <fileset dir="${eclipse-home}" includes="org*.xml"/>
- </delete>
- </target>
-
- <!-- This target defines the tests that need to be run. -->
- <target name="suite">
- <property name="cdt-folder"
- value="${eclipse-home}/cdt_folder"/>
- <delete dir="${cdt-folder}" quiet="true"/>
- <ant target="ui-test" antfile="${library-file}" dir="${eclipse-home}">
- <property name="data-dir" value="${cdt-folder}"/>
- <property name="plugin-name" value="${plugin-name}"/>
- <property name="classname"
- value="org.eclipse.cdt.debug.core.tests.AllDebugTests"/>
- </ant>
- </target>
-
- <!-- This target holds code to cleanup the testing environment after -->
- <!-- after all of the tests have been run. You can use this target to -->
- <!-- delete temporary files that have been created. -->
- <target name="cleanup">
- </target>
-
- <!-- This target runs the test suite. Any actions that need to happen -->
- <!-- after all the tests have been run should go here. -->
- <target name="run" depends="init,suite,cleanup">
- <ant target="collect" antfile="${library-file}" dir="${eclipse-home}">
- <property name="includes" value="org*.xml"/>
- <property name="output-file" value="${plugin-name}.xml"/>
- </ant>
- </target>
-
-</project>
diff --git a/debug/org.eclipse.cdt.debug.ui/.classpath b/debug/org.eclipse.cdt.debug.ui/.classpath
deleted file mode 100644
index ce73933404a..00000000000
--- a/debug/org.eclipse.cdt.debug.ui/.classpath
+++ /dev/null
@@ -1,7 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<classpath>
- <classpathentry kind="src" path="src"/>
- <classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/J2SE-1.4"/>
- <classpathentry kind="con" path="org.eclipse.pde.core.requiredPlugins"/>
- <classpathentry kind="output" path="bin"/>
-</classpath>
diff --git a/debug/org.eclipse.cdt.debug.ui/.cvsignore b/debug/org.eclipse.cdt.debug.ui/.cvsignore
deleted file mode 100644
index ba077a4031a..00000000000
--- a/debug/org.eclipse.cdt.debug.ui/.cvsignore
+++ /dev/null
@@ -1 +0,0 @@
-bin
diff --git a/debug/org.eclipse.cdt.debug.ui/.project b/debug/org.eclipse.cdt.debug.ui/.project
deleted file mode 100644
index 2f8de369392..00000000000
--- a/debug/org.eclipse.cdt.debug.ui/.project
+++ /dev/null
@@ -1,28 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<projectDescription>
- <name>org.eclipse.cdt.debug.ui</name>
- <comment></comment>
- <projects>
- </projects>
- <buildSpec>
- <buildCommand>
- <name>org.eclipse.jdt.core.javabuilder</name>
- <arguments>
- </arguments>
- </buildCommand>
- <buildCommand>
- <name>org.eclipse.pde.ManifestBuilder</name>
- <arguments>
- </arguments>
- </buildCommand>
- <buildCommand>
- <name>org.eclipse.pde.SchemaBuilder</name>
- <arguments>
- </arguments>
- </buildCommand>
- </buildSpec>
- <natures>
- <nature>org.eclipse.jdt.core.javanature</nature>
- <nature>org.eclipse.pde.PluginNature</nature>
- </natures>
-</projectDescription>
diff --git a/debug/org.eclipse.cdt.debug.ui/.settings/org.eclipse.jdt.core.prefs b/debug/org.eclipse.cdt.debug.ui/.settings/org.eclipse.jdt.core.prefs
deleted file mode 100644
index 3de7f23405c..00000000000
--- a/debug/org.eclipse.cdt.debug.ui/.settings/org.eclipse.jdt.core.prefs
+++ /dev/null
@@ -1,7 +0,0 @@
-#Wed Aug 23 13:41:09 EDT 2006
-eclipse.preferences.version=1
-org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.2
-org.eclipse.jdt.core.compiler.compliance=1.4
-org.eclipse.jdt.core.compiler.problem.assertIdentifier=warning
-org.eclipse.jdt.core.compiler.problem.enumIdentifier=warning
-org.eclipse.jdt.core.compiler.source=1.3
diff --git a/debug/org.eclipse.cdt.debug.ui/ChangeLog b/debug/org.eclipse.cdt.debug.ui/ChangeLog
deleted file mode 100644
index dba13d1351d..00000000000
--- a/debug/org.eclipse.cdt.debug.ui/ChangeLog
+++ /dev/null
@@ -1,1699 +0,0 @@
-2006-08-31 Mikhail Khodjaiants
- Bug 155826: Duplicate addListener call in Signals view.
- * SignalsView.java
-
-2006-08-14 Mikhail Khodjaiants
- Bug 136896: View variables in binary format.
- Applied modified patch from Mark Mitchell (CodeSourcery).
- * plugin.properties
- * plugin.xml
- * PreferenceMessages.properties
- * CDebugPreferencePage.java
- * BinaryVariableFormatActionDelegate.java
-
-2006-05-31 Mikhail Khodjaiants
- Bug 144719: [Modules view] Modules from from different sessions are mixed up.
- * ModulesViewEventHandler.java
-
-2006-05-31 Mikhail Khodjaiants
- Bug 144684: [Modules view] Collapse all action doesn't work.
- * CollapseAllModulesAction.java
- * ModulesViewer.java
-
-2006-05-29 Mikhail Khodjaiants
- Bug 144277: No images for source containers types (temporary fix).
- * SourceContainerLabelProvider.java
-
-2006-05-24 Mikhail Khodjaiants
- Bug 143593: Module's children are not expandable.
- * CDebugElementAdapterFactory.java
- * CDebugUIPlugin.java
-
-2006-05-19 Mikhail Khodjaiants
- Bug 142860: Breakpoint marker is not shown in the editor's ruler.
- * ToggleBreakpointAdapter.java
- * plugin.properties
- * plugin.xml
-
-2006-05-12 Mikhail Khodjaiants
- Bug 118274: Condition is not shown in the tooltip of conditional breakpoint.
- Moved the "getBreakpointText" method and related methods to CDebugUtils.
- * CDebugModelPresentation.java
- * CDebugUIMessages.properties
-
-2006-05-12 Mikhail Khodjaiants
- Bug 109449: Sort globals in "Add Globals" dialog.
- * AddGlobalsActionDelegate.java
-
-2006-04-17 Mikhail Khodjaiants
- Added the "AddWatchpoint" action to the breakpoints view.
- * AddWatchpointActionDelegate.java
- * plugin.properties
- * plugin.xml
-
-2006-04-05 Mikhail Khodjaiants
- Bug 135118: Modules view is not updated.
- * ModuleProxyFactory.java
- * ModulesViewEventHandler.java
- * ModulesViewModelProxy.java
-
-2006-04-05 Mikhail Khodjaiants
- Corrected the shared library image selection.
- * CDebugImages.java
- * CDebugModelPresentation.java
- - icons/ovr16/symbols_ovr.gif
-
-2006-04-04 Mikhail Khodjaiants
- See bug 134871: StackOverflowError using AsynchronousViewer.
- * ModulesView.java
-
-2006-04-04 Mikhail Khodjaiants
- Complying with Eclipse 3.2 M6. AsynchronousTreeModelViewer has been renamed to AsynchronousTreeViewer.
- * AbstractViewerState.java
- * ModulesViewer.java
- * ModulesViewerState.java
-
-2006-03-29 Mikhail Khodjaiants
- Allow clients to contribute IRestart adapters.
- * RestartActionDelegate.java
-
-2006-03-15 Mikhail Khodjaiants
- An ICDebuggerPage adapter is added to retain compatibility with old extensions.
- + CDebuggerPageAdapter.java
- * CDebugUIPlugin.java
-
-2006-03-06 Mikhail Khodjaiants
- Fix for Bug 93777: Postmortem and Local launch need a default preference for selected debugger.
- * ICDebugHelpContextIds.java
- + DebuggerTypesPage.java
- * PreferenceMessages.properties
- * plugin.properties
- * plugin.xml
-
-2006-02-27 Mikhail Khodjaiants
- Discouraged access to EditorsPlugin.
- Added support for SharedTextColors to CDebugUIPlugin.
- + SharedTextColors.java
- * DisassemblyView.java
- * CDebugUIPlugin.java
-
-2006-02-27 Mikhail Khodjaiants
- Bug 89429: replaced the usage of the internal SourceLookupUIUtils class by DebugUITools.
- * AddSourceContainerDialog.java
- * EditContainerAction.java
- * SourceContainerLabelProvider.java
-
-2006-02-27 Mikhail Khodjaiants
- Added dependency to the org.eclipse.ui.views plugin (needed to use the breakpoint
- actions in the Outline view).
- * MANIFEST.MF
-
-2006-02-27 Mikhail Khodjaiants
- The DirectorySourceContainer's UI now supports the subfolders searching option (see bug 89748).
- Removed the UI related to CDirectorySourceContainer.
- - CDirectorySourceContainerBrowser.java
- - CDirectorySourceContainerDialog.java
- * SourceContainerWorkbenchAdapter.java
- * SourceLookupUIMessages.properties
- * plugin.xml
-
-2006-02-21 Mikhail Khodjaiants
- Bug 122336: Use the asynchronous tree viewer in the Modules view.
- Adjustments to the platform changes in M5.
- + src/org/eclipse/cdt/debug/internal/ui/elements/adapters (new package)
- + CDebugElementAdapterFactory.java
- * AbstractViewerState.java
- + ModuleContentAdapter.java
- + ModuleProxyFactory.java
- * ModulesView.java
- * ModulesViewer.java
- * ModulesViewerState.java
- * ModulesViewEventHandler.java
- - ModuleTreeContentAdapter.java
- * CDebugUIPlugin.java
-
-2006-02-03 Mikhail Khodjaiants
- The "ICDebuggerPage" interface and "AbstractCDebuggerPage" class are added.
- All extensions of the "CDebuggerPage" extension point must implement "ICDebuggerPage".
- * CDebuggerPage.exsd
- + AbstractCDebuggerPage.java
- * CDebugUIPlugin.java
- + ICDebuggerPage.java
-
-2006-01-27 Mikhail Khodjaiants
- Bug 125561: ClassCastException in Modules view.
- * ModulesView.java
-
-2006-01-22 Mikhail Khodjaiants
- Bug 60682: No schema for CDebuggerPage extension point.
- * plugin.xml
- + schema/CDebuggerPage.exsd
-
-2006-01-16 Mikhail Khodjaiants
- Bug 123702: Prevent Signals view from being automatically added to debugger perspective.
- * plugin.xml
-
-2005-12-29 Mikhail Khodjaiants
- Bug 122336: Use the asynchronous tree viewer in the Modules view.
- * LoadSymbolsForAllActionDelegate.java
- * AbstractViewerState.java
- * ModulesView.java
- - ModulesViewContentProvider.java
- * ModulesViewer.java
- * ModulesViewerState.java
- * ModulesViewEventHandler.java
- + ModulesViewModelProxy.java
- + ModuleTreeContentAdapter.java
-
-2005-12-27 Mikhail Khodjaiants
- HTMLTextPresenter implements DefaultInformationControl.IInformationPresenterExtension
- instead of deprecated DefaultInformationControl.IInformationPresenter.
- * HTMLTextPresenter.java
-
-2005-12-27 Mikhail Khodjaiants
- Cleanup.
- * RetargetAction.java
-
-2005-12-27 Mikhail Khodjaiants
- Replaced deprecated org.eclipse.jface.util.ListenerList by
- org.eclipse.core.runtime.ListenerList.
- * CBreakpointPreferenceStore.java
-
-2005-12-27 Mikhail Khodjaiants
- Cleanup.
- * HTMLPrinter.java
- * AbstractViewActionDelegate.java
- * CDebugUIPlugin.java
-
-2005-12-27 Mikhail Khodjaiants
- Bug 109526: Support Eclipse-LazyStart and deprecate Eclipse-AutoStart.
- * MANIFEST.MF
-
-2005-11-23 Mikhail Khodjaiants
- Bug 117754: Stack frame can't display address.
- * CDebugModelPresentation.java
-
-2005-10-19 Mikhail Khodjaiants
- Bug 113114: Expanding Modules View throws SWTError: No more handles.
- * ModulesView.java
-
-2005-09-06 Mikhail Khodjaiants
- Cleanup: replaced "new Boolean" by the static Boolean objects (Java 1.4).
- * QuestionStatusHandler.java
- * ShowFullPathsAction.java
- * CBreakpointPreferenceStore.java
- * ModuleProperties.java
-
-2005-08-24 Mikhail Khodjaiants
- Bug 107208: toggle breakpoint with external sources doesn't work.
- * ToggleBreakpointAdapter.java
-
-2005-07-26 Mikhail Khodjaiants
- Bug 105224: Two identical directory source container types.
- + icons\obj16\directory_obj.gif
- * plugin.xml
-
-2005-07-25 Alain Magloire
- Part fix for PR 100992: The signature was incorrect for structure/unions.
-
- * src/org/eclipse/cdt/debug/internal/ui/actions/ToggleBreakpointAdapter.java
-
-2005-07-22 Alain Magloire
- Fix the copyright.
-
-2005-07-14 Mikhail Khodjaiants
- Bug 103910: The modules view's icon is missing.
- + icons/view16/memory_view.gif
- - icons/view16/sharedlibraries_view.gif
-
-2005-07-12 Mikhail Khodjaiants
- Bug 103162: Module View: Missing context menu on detailed pane.
- * ModulesMessages.properties
- * ModulesView.java
- * plugin.xml
-
-2005-07-08 Mikhail Khodjaiants
- Bug 79371: Setting breakpoints in the left hand side ruler of the disassembly view is sluggish.
- Asynchronous breakpoint handling.
- * DisassemblyEditorInput.java
-
-2005-07-04 Mikhail Khodjaiants
- Removed the "IBreakpointTarget" interface.
- * DisassemblyEditorInput.java
-
-2005-06-30 Mikhail Khodjaiants
- Bug 102386: double-clicking on a disassembly line in the disassembly view does not add a breakpoint.
- * ToggleBreakpointAdapter.java
-
-2005-06-29 Mikhail Khodjaiants
- Bug 41725: I can't set a breakpoint in a function where I used attach source.
- Bug 45514: Breakpoints made is assembly view do not show in C view.
- + DebugMarkerAnnotationModel.java
- + DebugMarkerAnnotationModelFactory.java
- * ToggleBreakpointAdapter.java
- * DisassemblyEditorInput.java
- * plugin.xml
-
-2005-06-29 Mikhail Khodjaiants
- Removed unused imports.
- * CBreapointWorkbencAdapterFactory.java
-
-2005-06-25 Alain Magloire
- Fix PR 94735: return an empty object.
- * src/org/eclipse/cdt/debug/internal/ui/CBreapointWorkbencAdapterFactory.java
-
-2005-06-22 Mikhail Khodjaiants
- Bug 96563: "Go to file" is ghosted on breakpoints (outside projects?).
- * CDebugModelPresentation.java
-
-2005-06-20 Mikhail Khodjaiants
- Bug 93855: Changing values in detailed pane doesn't work the first time after the view is loaded.
- + DetailsViewerConfiguration.java
- * plugin.xml
-
-2005-06-17 Mikhail Khodjaiants
- Bug 99217: NPE thrown when fetching deffered children.
- * CDebugModelPresentation.java
-
-2005-06-12 Mikhail Khodjaiants
- Bug 100447: NPE generated when Run To Line in Disassembly view.
- * ResumeAtLineAdapter.java
- * RunToLineAdapter.java
-
-2005-06-12 Mikhail Khodjaiants
- Temporary fix for bug 79872: Make instruction stepping default in disassembly view.
- * DisassemblyView.java
-
-2005-06-10 Mikhail Khodjaiants
- Bug 84929: The "Expression to watch" field of the "Add Watchpoint" dialog is editable.
- * CDebugModelPresentation.java
- * AddWatchpointActionDelegate.java
- * AddWatchpointDialog.java
- * ToggleBreakpointAdapter.java
- * ModulesView.java
-
-2005-06-10 Mikhail Khodjaiants
- Bug 83465: Add "Run to line" and "Resume at line" actions to the context menu of Disassembly view.
- * plugin.xml
-
-2005-06-10 Mikhail Khodjaiants
- Bug 81353: automatically opening of the disassembly window.
- * ToggleInstructionStepModeActionDelegate.java
- * ICDebugUIConstants.java
-
-2005-06-10 Mikhail Khodjaiants
- Warning cleanup.
- * AddExpressionEditorActionDelegate.java
- * ExpressionDialog.java
- * ManageFunctionBreakpointActionDelegate.java
- * ResumeAtLineActionDelegate.java
- * RetargetAction.java
- * RunToLineAdapter.java
- * ToggleBreakpointRulerAction.java
- * ToggleWatchpointActionDelegate.java
- * ThreadFilterEditor.java
- * DisassemblyAnnotationModel.java
- * DisassemblyView.java
-
-2005-06-09 Mikhail Khodjaiants
- Warning cleanup.
- * CDebugModelPresentation.java
-
-2005-06-09 Mikhail Khodjaiants
- Warning cleanup.
- * CBreakpointUpdater.java
-
-2005-06-09 Mikhail Khodjaiants
- Bug 94139: User-defined register groups.
- Externalized strings for the "Restore Default Register Groups" action.
- * RestoreDefaultRegisterGroupsActionDelegate.java
- * ActionMessages.properties
-
-2005-06-09 Mikhail Khodjaiants
- Bug 94139: User-defined register groups.
- Support for the "Restore Default Register Groups" action.
- + RestoreDefaultRegisterGroupsActionDelegate.java
- * plugin.properties
- * plugin.xml
-
-2005-06-07 Mikhail Khodjaiants
- New images for mapping source containers.
- * icons/obj16/mapentry_obj.gif
- * icons/obj16/mapping_obj.gif
- + icons/wizban/mapentry_obj.gif
- + icons/wizban/mapping_obj.gif
- * CDebugImages.java
- * PathMappingDialog.java
-
-2005-06-07 Mikhail Khodjaiants
- Bug 94139: User-defined register groups.
- Support fo the "Edit Register Group" action.
- * AbstractViewActionDelegate.java
- * ActionMessages.properties
- * AddRegisterGroupActionDelegate.java
- + EditRegisterGroupActionDelegate.java
- * plugin.properties
- * plugin.xml
-
-2005-05-31 Mikhail Khodjaiants
- Bug 84816: The modification of the signal properties should be done in the background.
- * SignalPropertyPage.java
-
-2005-05-24 Mikhail Khodjaiants
- Bug 88558: run-to-line not thread oriented.
- The "Run to Line" action should be enabled on stack frames and threads, not on targets.
- * RunToLineAdapter.java
-
-2005-05-20 Mikhail Khodjaiants
- Bug 94139: User-defined register groups.
- UI to add/remove user-defined groups.
- * ICDebugHelpContextIds.java
- * ActionMessages.properties
- + AddRegisterGroupActionDelegate.java
- + RegisterGroupDialog.java
- + RemoveRegisterGroupActionDelegate.java
- * plugin.properties
- * plugin.xml
-
-2005-05-09 Mikhail Khodjaiants
- Bug 80175: Replace the CDT source lookup by the source lookup provided by Eclipse platform.
- Removed unused images.
- - icons/dtool16/adddirsource_wiz.gif
- - icons/dtool16/addprjsource_wiz.gif
- - icons/etool16/adddirsource_wiz.gif
- - icons/etool16/addprjsource_wiz.gif
- - icons/wizban/add_dir_source_location_wiz.gif
- - icons/wizban/add_prj_source_location_wiz.gif
- - icons/wizban/add_source_location_wiz.gif
- * CDebugImages.java
-
-2005-05-09 Mikhail Khodjaiants
- Bug 80175: Replace the CDT source lookup by the source lookup provided by Eclipse platform.
- Removed CDebugEditor and old source lookup related classes and interfaces.
- * CDebugModelPresentation.java
- - CDebugEditor.java
- - EditorInputDelegate.java
- - EditorMessages.java
- - EditorMessages.properties
- - FileNotFoundElement.java
- - NoSymbolOrSourceElement.java
- - AddDirectorySourceLocationBlock.java
- - AddDirectorySourceLocationWizard.java
- - AddProjectSourceLocationBlock.java
- - AddProjectSourceLocationWizard.java
- - AddSourceLocationWizard.java
- - SourceLocationSelectionPage.java
- - SourceLocationWizardNode.java
- - WizardMessages.java
- - WizardMessages.properties
- - INewSourceLocationWizard.java
- * OldDefaultSourceLocator.java
- - SourceListDialogField.java
- - SourceLookupBlock.java
- - SourceLookupLabelProvider.java
- * SourceLookupMessages.properties
- - SourcePropertyPage.java
- * plugin.properties
- * plugin.xml
-
-2005-04-27 Mikhail Khodjaiants
- Added path validation to CDirectorySourceContainerDialog.
- * CDirectorySourceContainerDialog.java
- * SourceLookupUIMessages.properties
-
-2005-04-25 Mikhail Khodjaiants
- Added the new source container type (CDirectorySourceContainer) to provide
- the UI support for the subfolders search.
- * ICDebugHelpContextIds.java
- + CDirectorySourceContainerBrowser.java
- + CDirectorySourceContainerDialog.java
- * SourceContainerWorkbenchAdapter.java
- * SourceLookupUIMessages.properties
- * plugin.xml
-
-2005-04-22 Mikhail Khodjaiants
- Initalize the particiapants of the source lookup director when converting
- from an old memento.
- * DefaultSourceLocator.java
-
-2005-04-21 Mikhail Khodjaiants
- Changed the labels of the "Source Lookup Path" preference page to "Common Source Lookup Path".
- * PreferenceMessages.properties
- * plugin.properties
-
-2005-04-21 Mikhail Khodjaiants
- Bug 92292: [artwork] "Instruction Stepping Mode" image is same as "Use Step Filters".
- * icons/dlcl16/instr_step.gif
- * icons/elcl16/instr_step.gif
-
-2005-04-21 Mikhail Khodjaiants
- Replaced deprecated methods.
- * CBreakpointPropertiesAction.java
- * CBreakpointPropertiesRulerAction.java
- * ModulesPropertiesActionDelegate.java
- * SignalPropertiesActionDelegate.java
-
-2005-04-21 Mikhail Khodjaiants
- Bug 80175: Replace the CDT source lookup by the source lookup provided by Eclipse platform.
- * CDebugModelPresentation.java
- * ICDebugHelpContextIds.java
- * CDebugPreferencePage.java
- * PreferenceMessages.properties
- * SourcePreferencePage.java
- * AddContainerAction.java: new
- * AddSourceContainerDialog.java: new
- * DownAction.java: new
- * EditContainerAction.java: new
- * MappingSourceContainerBrowser.java
- * PathMappingDialog.java
- * RemoveAction.java: new
- * SourceContainerAction.java: new
- * SourceContainerLabelProvider.java: new
- * SourceContainerViewer.java: new
- * SourceContainerWorkbenchAdapter.java
- * SourceLookupUIMessages.java: new
- * SourceLookupUIMessages.properties: new
- * UpAction.java: new
- * CDebugUIPlugin.java
- * DefaultSourceLocator.java
- * OldDefaultSourceLocator.java: new
- * plugin.properties
-
-2005-04-12 Mikhail Khodjaiants
- Bug 91155: Wrong icon for "Restart".
- * icons/dlcl16/restart.gif
- * icons/elcl16/restart.gif
-
-2005-04-07 Mikhail Khodjaiants
- Applied patch from Dave Daoust (new images).
-
-2005-03-21 Mikhail Khodjaiants
- Bug 80175: Replace the CDT source lookup by the source lookup provided by Eclipse platform.
- * icons/full/obj16/mapentry_obj.gif: new
- * icons/full/obj16/mapping_obj.gif: new
- * CDebugImages.java
- * CDebugModelPresentation.java
- * ICDebugHelpContextIds.java
- * src/org/eclipse/cdt/debug/internal/ui/sourcelookup: new package
- * MappingSourceContainerBrowser.java: new
- * PathMappingDialog.java: new
- * SourceContainerAdapterFactory.java: new
- * SourceContainerWorkbenchAdapter.java: new
- * plugin.properties
- * plugin.xml
-
-2005-03-08 Mikhail Khodjaiants
- Removed deprecated "WorkbenchHelp" references.
- * CBreakpointPropertiesRulerAction.java
- * EnableDisableBreakpointRulerAction.java
- * ToggleBreakpointRulerAction.java
- * ToggleDetailPaneAction.java
- * CDebugPreferencePage.java
- * SourcePreferencePage.java
-
-2005-02-25 Mikhail Khodjaiants
- "Resume At Line" is disabled if the Disassembly view is opened during an active debug session.
- * ResumeAtLineActionDelegate.java
-
-2005-02-24 Mikhail Khodjaiants
- Applied patch from Tracy Miranda (bug 86533: Breakpoint is set on the wrong line in Disassembly view).
- * DisassemblyEditorInput.java
-
-2005-02-22 Mikhail Khodjaiants
- Bug 84799: Implement Memory View and renderings with new rendering APIs.
- * plugin.xml
-
-2005-02-17 Mikhail Khodjaiants
- Bug 82264: Enhance the Shared Libraries view.
- Removed the Shared Libraries view.
- * CDebugModelPresentation.java
- * LoadSymbolsActionDelegate.java
- * LoadSymbolsForAllActionDelegate.java
- * SharedLibrariesMessages.java
- * SharedLibrariesMessages.properties
- * SharedLibrariesView.java
- * SharedLibrariesViewContentProvider.java
- * SharedLibrariesViewEventHandler.java
- * ICDebugUIConstants.java
- * plugin.properties
- * plugin.xml
-
-2005-02-17 Mikhail Khodjaiants
- Bug 82264: Enhance the Shared Libraries view.
- No need to compute the module's labels in background.
- * ModulesView.java
-
-2005-02-16 Mikhail Khodjaiants
- Bug 82264: Enhance the Shared Libraries view.
- Replaced the table viewer by text widgets.
- * PropertyPageMessages.properties
- * ModulePropertyPage.java
-
-2005-02-16 Mikhail Khodjaiants
- Bug 82264: Enhance the Shared Libraries view.
- The symbols file name isn't shown in the detail pane if module's
- symbols are not loaded.
- * ModulesView.java
-
-2005-02-16 Mikhail Khodjaiants
- Bug 82264: Enhance the Shared Libraries view.
- The "Load Symbols" action doesn't update the detail value.
- * ModulesViewEventHandler.java
-
-2005-02-15 Mikhail Khodjaiants
- Bug 82264: Enhance the Shared Libraries view.
- The "Load Symbols For All" action is added to the Modules view.
- * plugin.xml
- * plugin.properties
- * icons/full/clcl16/load_all_symbols_co.gif
- * icons/full/dlcl16/load_all_symbols_co.gif
- * icons/full/elcl16/load_all_symbols_co.gif
- * ICDebugUIInternalConstants.java: removed (cleanup)
-
-2005-02-15 Mikhail Khodjaiants
- Bug 82264: Enhance the Shared Libraries view.
- The Modules view's doesn't update labels when symbols are loaded.
- * ModulesViewEventHandler.java
-
-2005-02-14 Mikhail Khodjaiants
- Bug 82264: Enhance the Shared Libraries view.
- New images for the "Load Symbols" action.
- * plugin.xml
- * icons/full/clcl16/load_symbols_co.gif
- * icons/full/dlcl16/load_symbols_co.gif
- * icons/full/elcl16/load_symbols_co.gif
-
-2005-02-14 Mikhail Khodjaiants
- Bug 82264: Enhance the Shared Libraries view.
- Added the "Load Symbols" action.
- * LoadModuleSymbolsActionDelegate.java: new
- * ActionMessages.properties
- * plugin.xml
- * plugin.properties
-
-2005-02-14 Mikhail Khodjaiants
- Bug 82264: Enhance the Shared Libraries view.
- Implementing module's properties.
- * PropertyPageMessages.properties
- * ModuleProperties.java (former ModuleProperties.java)
- * ModulePropertyPage.java
-
-2005-02-14 Mikhail Khodjaiants
- Bug 82264: Enhance the Shared Libraries view.
- Implementing module's properties.
- * PropertyPageMessages.properties
- * CModuleProperties.java
- * ModulePropertyPage.java
-
-2005-02-11 Mikhail Khodjaiants
- Bug 82264: Enhance the Shared Libraries view.
- Implementing module's properties.
- * CDebugModelPresentation.java
- * CDebugUIMessages.properties
- * ModulesPropertiesActionDelegate.java: new
- * CModuleProperties.java: new
- * ModulePropertyPage.java: new
- * ModulesMessages.properties
- * ModulesView.java
- * plugin.xml
- * plugin.properties
-
-2005-02-08 Mikhail Khodjaiants
- Bug 82264: Enhance the Shared Libraries view.
- Improved detail information.
- Save the viewer state.
- * AbstractViewerState.java: new
- * ModulesMessages.properties
- * ModulesView.java
- * ModulesViewerState.java: new
- * plugin.xml
-
-2005-02-07 Mikhail Khodjaiants
- Bug 82264: Enhance the Shared Libraries view.
- Added the definition of detail pane font.
- * IInternalCDebugUIConstants.java
- * ModulesView.java
- * plugin.xml
- * plugin.properties
-
-2005-02-07 Mikhail Khodjaiants
- Bug 82264: Enhance the Shared Libraries view.
- * CDebugUIMessages.properties
- * CDebugImages.java
- * CDebugModelPresentation.java
- * CDTDebugModelPresentation.java: removed
- * ICDebugHelpContextIds.java
- * ActionMessages.properties
- * CollapseAllModulesAction.java: new
- * ToggleDetailPaneAction.java: new
- * ICDebugPreferenceConstants.java
- * DebugViewDecoratingLabelProvider.java: new
- * DebugViewInterimLabelProvider.java: new
- * DebugViewLabelDecorator.java: new
- * org.eclipse.cdt.debug.internal.ui.views.modules: new package
- * ModulesMessages.properties: new
- * ModulesMessages.java: new
- * ModulesView.java: new
- * ModulesViewContentProvider.java: new
- * ModulesViewer.java: new
- * ModulesViewEventHandler.java: new
- * CDebugUIPlugin.java
- * plugin.xml
- * plugin.properties
-
-2005-02-07 Mikhail Khodjaiants
- Added images for the "Collapse All" action of the modules view.
- * icons\full\clcl16\collapseall.gif
- * icons\full\dlcl16\collapseall.gif
- * icons\full\elcl16\collapseall.gif
-
-2005-02-03 Mikhail Khodjaiants
- Added new images for the modules view.
- * icons\full\clcl16\det_pane_hide.gif
- * icons\full\clcl16\det_pane_right.gif
- * icons\full\clcl16\det_pane_under.gif
- * icons\full\dlcl16\det_pane_hide.gif
- * icons\full\dlcl16\det_pane_right.gif
- * icons\full\dlcl16\det_pane_under.gif
- * icons\full\elcl16\det_pane_hide.gif
- * icons\full\elcl16\det_pane_right.gif
- * icons\full\elcl16\det_pane_under.gif
- * icons\full\cview16\modules_view.gif
- * icons\full\obj16\exec_dbg_obj.gif
- * icons\full\obj16\exec_obj.gif
-
-2005-02-03 Mikhail Khodjaiants
- Fix for bug 84402: computeDetail executes in the UI thread.
- * CValueDetailProvider.java
-
-2005-02-03 Mikhail Khodjaiants
- Fix for bug 84187: "Toggle Watchpoint" and "Toggle Method Breakpoint" don't work with C editor.
- ICWatchpoint should extend ILineBreakpoint to allow watchpoints to be shown in editors.
- * AbstractBreakpointRulerAction.java
- * CBreakpointPropertyPage.java
-
-2005-02-02 Mikhail Khodjaiants
- The "INTERNAL_ERROR" constant has been moved from ICDebugUIConstants to IInternalCDebugUIConstants.
- * IInternalCDebugUIConstants.java
- * ICDebugUIConstants.java
- * ResumeAtLineAdapter.java
- * RunToLineAdapter.java
- * ToggleBreakpointAdapter.java
- * CDebugUIPlugin.java
-
-2005-02-02 Mikhail Khodjaiants
- Fix for bug 84187: "Toggle Watchpoint" and "Toggle Method Breakpoint" don't work with C editor.
- * ToggleBreakpointAdapter.java
-
-2005-01-21 Mikhail Khodjaiants
- Partial fix for bug 83465: Add "Run to line" and "Resume at line" actions to the context menu of Disassembly view.
- * ResumeAtLineActionDelegate.java
- * DisassemblyView.java
- * plugin.xml
-
-2005-01-21 Mikhail Khodjaiants
- Fix for bug 83437: Loading symbols should be run in the background.
- * ActionMessages.properties
- * LoadSymbolsActionDelegate.java
- * LoadSymbolsForAllActionDelegate.java
-
-2005-01-20 Mikhail Khodjaiants
- Fix for bug 83412: Run to line and resume at line should run in the background.
- * ResumeAtLineAdapter.java
- * RunToLineAdapter.java
- * ActionMessages.properties
-
-2005-01-20 Mikhail Khodjaiants
- Bug 83330: Inconsistent in the label for Add expression.
- * plugin.properties
-
-2005-01-19 Mikhail Khodjaiants
- Fix for bug 83051: Add global variables deletes existing ones when new added.
- * AddGlobalsActionDelegate.java
-
-2005-01-18 Mikhail Khodjaiants
- Fix for bug 82800: Make "Resume At Line" action retargettable.
- * plugin.xml
- * CDebugImages.java
- * EvaluationContextManager.java: new
- * ActionMessages.properties
- * IResumeAtLineTarget.java: new
- * ResumeAtLineActionDelegate.java
- * ResumeAtLineAdapter.java: new
- * RetargetAction.java: new
- * RetargetResumeAtLineAction.java: new
- * RetargettableActionAdapterFactory.java
- * CDebugUIPlugin.java
- * JumpToLineActionDelegate.java: removed
- * RunToLineActionDelegate.java: removed
-
-2005-01-12 Mikhail Khodjaiants
- Bug 73168: Use memory view provided by Eclipse platform in CDT.
- Removed the old memory view.
- * CDebugUIPreferenceInitializer.java
- * AutoRefreshMemoryAction.java: removed
- * ClearMemoryAction.java: removed
- * MemoryActionSelectionGroup.java: removed
- * MemoryFormatAction.java: removed
- * MemoryNumberOfColumnAction.java: removed
- * MemorySizeAction.java: removed
- * RefreshMemoryAction.java: removed
- * ShowAsciiAction.java: removed
- * ActionMessages.properties
- * PreferenceMessages.properties
- * MemoryViewPreferencePage.java: removed
- * ICDebugPreferenceConstants.java
- * MemoryControlArea.java: removed
- * MemoryPresentation.java: removed
- * MemoryText.java: removed
- * MemoryView.java: removed
- * MemoryViewAction.java: removed
- * MemoryViewContentProvider.java: removed
- * MemoryViewer.java: removed
- * MemoryViewEventHandler.java: removed
- * MemoryViewMessages.java: removed
- * MemoryViewMessages.properties: removed
- * plugin.xml
-
-2005-01-11 Mikhail Khodjaiants
- Replaced deprecated methods and constants. Cleanup.
- * SWTUtil.java
- * EnableVariablesActionDelegate.java
- * RemoveGlobalsActionDelegate.java
- * ListDialogField.java
- * SelectionButtonDialogField.java
- * StringButtonDialogField.java
- * CDebugPreferencePage.java
- * CBreakpointPropertyPage.java
-
-2005-01-11 Mikhail Khodjaiants
- Use the asynchronous implementation for resume, suspend, step etc provided by eclipse 3.1.
- * plugin.xml
- * AbstractDebugActionDelegate.java
- * RestartActionDelegate.java
- * SignalZeroWorkbenchActionDelegate.java
- * SignalZeroObjectActionDelegate.java: removed
-
-2005-01-04 Mikhail Khodjaiants
- Removed the disassembly editor extension.
- * plugin.xml
-
-2004-12-23 Mikhail Khodjaiants
- The "ascii" renedering is removed from the default renderings.
- * plugin.xml
-
-2004-12-21 Mikhail Khodjaiants
- Fix for bug 73168: Use memory view provided by Eclipse platform in CDT.
- Added rendering bindings and default renderings for CDT memory blocks.
- * plugin.xml
-
-2004-12-03 Mikhail Khodjaiants
- Fix for bug 62659: Unable to set default for register format via plugin_customization.ini.
- * CDebugPreferencePage.java
-
-2004-12-02 Mikhail Khodjaiants
- Fix for bug 80055: ArrayIndexOutOfBoundsException in DisassemblyView.
- * DisassemblyEditorInput.java
-
-2004-11-26 Mikhail Khodjaiants
- Do not use "void" if parameter's list is empty when constructing a function or
- method name for function breakpoints. Name mapping should be done on the implementation level.
- * ToggleBreakpointAdapter.java
-
-2004-11-25 Mikhail Khodjaiants
- Fix for bug 79452: Unable to set a breakpoint on a class method.
- * plugin.xml
- * ToggleBreakpointAdapter.java
-
-2004-11-25 Mikhail Khodjaiants
- Replaced the "breakpointRemoved" method of ICBreakpointListener by the "breakpointsRemoved"
- method that accepts multiple breakpoints.
- * CBreakpointUpdater.java
-
-2004-11-23 Mikhail Khodjaiants
- Workaround for bug 69728: IndexOutOfBoundsException in TextPresentation.
- This bug is fixed in Eclipse 3.1.
- * DisassemblyView.java
-
-2004-11-18 Mikhail Khodjaiants
- Fix for bug 69184: Activate the Expression view when expression is added.
- * AddExpressionEditorActionDelegate.java
-
-2004-11-15 Mikhail Khodjaiants
- Fix for bug 78604: Disassembly causes Java exception when disassembling beyond fn(?).
- * DisassemblyEditorInput.java
-
-2004-11-11 Mikhail Khodjaiants
- Fix for bug 73801: Function breakpoints set from C View aren't shown in editor.
- * ToggleBreakpointAdapter.java
-
-2004-11-10 Mikhail Khodjaiants
- Fix for bug 77437: Disassembly blocks with no associated source code has PC pointer on wrong line.
- * DisassemblyEditorInput.java
-
-2004-11-09 Mikhail Khodjaiants
- Partial fix for bug 41725: I can't set a breakpoint in a function where I used attach source.
- * CDTDebugModelPresentation.java
- * ToggleBreakpointAdapter.java
- * CBreakpointPropertyPage.java
-
-2004-11-09 Mikhail Khodjaiants
- Fix for bug 77251: Need protected access to DisassemblyView's createVerticalRuler() method.
- * DisassemblyView.java
-
-2004-11-05 Mikhail Khodjaiants
- Cleanup.
- * PreferenceMessages.properties
- * ActionMessages.properties
- * plugin.properties
-
-2004-11-04 Mikhail Khodjaiants
- Removed "Refresh" and "Auto-Refresh" actions from the shared libraries view.
- * AbstractAutoRefreshActionDelegate.java: removed
- * AbstractRefreshAction.java: removed
- * AutoRefreshSharedLibrariesActionDelegate.java: removed
- * RefreshSharedLibrariesAction.java: removed
- * CDebugPreferencePage.java
- * plugin.xml
-
-2004-11-04 Mikhail Khodjaiants
- Removed "Refresh" and "Auto-Refresh" actions from the registers view.
- * AutoRefreshRegistersActionDelegate.java: removed
- * RefreshRegistersAction.java: removed
- * CDebugPreferencePage.java
- * plugin.xml
-
-2004-10-29 Mikhail Khodjaiants
- Use the new expression API of CDI.
- * CDebugUIMessages.properties
- * CDTDebugModelPresentation.java
-
-2004-10-18 Mikhail Khodjaiants
- Corrupted plugin.xml.
- * plugin.xml
-
-2004-10-15 Mikhail Khodjaiants
- Replaced the "Signal Properties" dialog by the standard property page.
- * plugin.xml
- * plugin.properties
- * CDebugUIMessages.properties
- * CDTDebugModelPresentation.java
- * ActionMessages.properties
- * SignalPropertiesActionDelegate.java
- * PropertyPageMessages.properties
- * SignalPropertyPage.java: new
- * SignalPropertiesDialog.java: removed
-
-2004-10-08 Mikhail Khodjaiants
- Added the bookkeeping of registers and register groups.
- * CDebugImages.java
- * CDTDebugModelPresentation.java
- * EnableVariablesActionDelegate.java
- * plugin.xml
-
-2004-10-07 Mikhail Khodjaiants
- Added images of disabled registers and register groups.
- * icons/full/obj16/registerd_obj.gif: new
- * icons/full/obj16/registergroupd_obj.gif: new
-
-2004-10-07 Mikhail Khodjaiants
- Provide a context for expression evaluation.
- * CDebugUIUtils.java
- * CDTDebugModelPresentation.java
- * CDTValueDetailProvider.java renamed to CValueDetailProvider.java
- * DebugTextHover.java
-
-2004-10-06 Mikhail Khodjaiants
- Use the same approach to generate expressions and variables labels.
- * CDTDebugModelPresentation.java
-
-2004-09-21 Mikhail Khodjaiants
- Fixed the problems with the Disassembly view and address breakpoints caused by switch to IAddress.
- * CBreakpointPropertyPage.java
- * DisassemblyEditorInput.java
-
-2004-09-20 Mikhail Khodjaiants
- Fix for bug 73920: Stopping CDT debug at a break point and using a non-text editor throws an error.
- * ResumeAtLineActionDelegate.java
- * RunToLineAdapter.java
- * ToggleBreakpointAdapter.java
-
-2004-09-20 Mikhail Khodjaiants
- Evaluate expressions on stack frame instead of target to provide evaluation context.
- Evaluate the hovering expression for the selected context only.
- * DebugTextHover.java
-
-2004-09-17 Alain Magloire
- Support for 64 bits application
- PR 74056. Pathc from Artyom Kuanbekov
- To much files to enumerate.
-
-2004-09-15 Mikhail Khodjaiants
- Removed the "ISwitchToThread" and "ISwitchToFrame" interfaces.
- * CDebugUIPlugin.java
-
-2004-09-13 Mikhail Khodjaiants
- Fix for bug 72555: "Toggle breakpoint" action doesn't remove function breakpoints from editor.
- * DisassemblyEditorInput.java
- * ToggleBreakpointAdapter.java
-
-2004-09-10 Mikhail Khodjaiants
- Fixes for breakpoint filtering.
- * CBreakpointUpdater.java
- * ThreadFilterEditor.java
-
-2004-09-01 Mikhail Khodjaiants
- Fix for bug 73197: DisassemblyEditorInput.getAddress can crash.
- * DisassemblyEditorInput.java
-
-2004-09-01 Mikhail Khodjaiants
- Breakpoint filtering by targets (ui).
- * PropertyPageMessages.properties
- * CBreakpointFilteringPage.java
- * ThreadFilterEditor.java
-
-2004-08-25 Mikhail Khodjaiants
- Added the "Filtering" page to the breakpoint properties.
- * CBreakpointWorkbenchAdapterFactory.java: new
- * CDebugUIMessages.properties
- * PropertyPageMessages.properties
- * CBreakpointFilteringPage.java: new
- * ThreadFilterEditor.java: new
- * plugin.xml
- * plugin.properties
-
-2004-08-24 Mikhail Khodjaiants
- Moved the property pages and related classes into the newly created package - "org.eclipse.cdt.debug.internal.ui.propertypages".
- * PropertyPageMessages.properties: new
- * CBreakpointPreferenceStore.java
- * CBreakpointPropertyPage.java
- * PropertyPageMessages.java: new
- * ActionMessages.properties
-
-2004-08-24 Mikhail Khodjaiants
- Replaced the "Breakpoint Properties" dialog by standard property pages.
- * CBreakpointPreferenceStore.java
- * CBreakpointPropertiesAction.java
- * CBreakpointPropertiesRulerAction.java
- * CBreakpointPropertiesRulerActionDelegate.java
- * CBreakpointPreferencePage.java renamed to CBreakpointPropertyPage.java
- * CBreakpointPropertiesDialog.java: removed
- * plugin.xml
- * plugin.properties
- * ActionMessages.properties
-
-2004-08-12 Mikhail Khodjaiants
- Fix for bug 70453. Linux: error exiting Eclipse on Linux RedHat or SuSe Enterprise Server 9.
- Applied modified patch from Sean Evoy.
- * CDebugUIPlugin.java
-
-2004-08-10 Tanya Wolff
- Fix for 70943 - externalized strings
- * plugin.xml
- * plugin.properties
-
-2004-08-10 Mikhail Khodjaiants
- Fix for bug 70902. TVT3.0: Customize Perspective C++ Debug has duplicated strings.
- * plugin.xml
-
-2004-08-05 Mikhail Khodjaiants
- Cosmetic fix.
- * CDebugUIMessages.properties
-
-2004-08-04 Mikhail Khodjaiants
- New implementation of the variable types.
- * CDTDebugModelPresentation.java
- * CastToArrayActionDelegate.java
- * CastToTypeActionDelegate.java
- * DecVariableFormatActionDelegate.java
- * HexVariableFormatActionDelegate.java
- * NaturalVariableFormatActionDelegate.java
- * RestoreDefaultTypeActionDelegate.java
- * VariableFormatActionDelegate.java
-
-2004-07-30 Mikhail Khodjaiants
- Display the error message in the variable's label if the value of variable can not be retrieved.
- * CDebugUIMessages.properties
- * CDTDebugModelPresentation.java
-
-2004-07-23 Mikhail Khodjaiants
- More informative error messages.
- * CDebugUIMessages.properties
- * CDTDebugModelPresentation.java
-
-2004-07-20 Mikhail Khodjaiants
- Cleanup.
- * ErrorStatusHandler.java
- * InfoStatusHandler.java
- * QuestionStatusHandler.java
-
-2004-07-16 Mikhail Khodjaiants
- Cleanup.
- * CDTDebugModelPresentation.java
-
-2004-07-15 Mikhail Khodjaiants
- Fix for bug 70147. TVT3.0: Preferences CDT Editor has non-externalized string.
- * plugin.properties
- * plugin.xml
-
-2004-07-15 Tanya Wolff
- Fix for bug 69939. I18N: Memory view contains unexternalized strings.
- Externalized Memory View Refresh menu item.
- * RefreshMemoryAction.java
- * ActionMessages.properties
-
-2004-07-09 Mikhail Khodjaiants
- Renamed "ICDebugElementErrorStatus" to "ICDebugElementStatus".
- * CDTDebugModelPresentation.java
-
-2004-07-09 Mikhail Khodjaiants
- Fix for bug 69221: "Show full paths" doesn't work for shared libraries.
- * SharedLibrariesView.java
-
-2004-06-29 Mikhail Khodjaiants
- Temporary fix for bug 68915: Invalid values in the Variables view.
- * CDebugUIPlugin.java
-
-2004-06-22 Mikhail Khodjaiants
- Replaced global resource bundles by messages.
-
-2004-06-21 Mikhail Khodjaiants
- Added transparency to the icons.
- * icons/full/cview16/signals_view.gif
- * icons/full/eview16/signals_view.gif
-
-2004-06-21 Mikhail Khodjaiants
- String externalization.
-
-2004-06-16 Mikhail Khodjaiants
- Deleted the "C/C++ Debugger Appearance" theme.
- Moved the diassembly color preferences to the "C/C++ Debug" preference page.
- * plugin.xml
- * IInternalCDebugUIConstants.java
- * CDebugPreferencePage.java
- * PreferenceMessages.properties: new
- * PreferenceMessages.java: new
-
-2004-06-16 Mikhail Khodjaiants
- Moved the disassembly font definition to the platform "Debug" theme.
- * plugin.xml
-
-2004-06-16 Mikhail Khodjaiants
- Added support for the "Skip Breakpoints" and "Skip breakpoints during a "Run To Line" operation.
- * RunToLineAdapter.java
-
-2004-06-16 Mikhail Khodjaiants
- Removed the "Add Address Breakpoint" and "Add Watchpoint" global actions.
- * plugin.properties
- * plugin.xml
- * AddAddressBreakpointActionDelegate.java
-
-2004-06-15 Mikhail Khodjaiants
- Added the "Toggle Watchpoint" object contribution action.
- * plugin.properties
- * plugin.xml
- * ActionMessages.properties
- * ToggleWatchpointActionDelegate.java: new
- * ToggleBreakpointAdapter.java
- * icons/full/elcl16/function_brkpt_co.gif: new
- * icons/full/elcl16/watchpoint_co.gif: new
-
-2004-06-15 Mikhail Khodjaiants
- Breakpoint and expression related actions enablement should not depend
- on the activation of the debuggger plugin.
- * plugin.xml
-
-2004-06-14 Mikhail Khodjaiants
- Implementation of the "Toggle Method Breakpoint" retargettable action.
- * plugin.properties
- * plugin.xml
- * ActionMessages.properties
- * ManageFunctionBreakpointActionDelegate.java
- * ToggleBreakpointAdapter.java
-
-2004-06-14 Mikhail Khodjaiants
- Added transparency to the icons.
- * icons/full/cview16/sharedlibraries_view.gif
- * icons/full/eview16/sharedlibraries_view.gif
-
-2004-06-12 Mikhail Khodjaiants
- Added the superclass for action delegates of views different than the Debug view and
- driven by the selection in the Debug view.
- All "Auto-refresh" actions implement "Observer" to be notified of changes
- by the corresponding update managers.
- * ActionMessages.properties
- * AbstractAutoRefreshActionDelegate.java
- * AbstractRefreshActionDelegate.java
- * AbstractViewActionDelegate.java: new
- * LoadSymbolsForAllActionDelegate.java
- * RefreshRegistersAction.java
- * RefreshSharedLibrariesAction.java
-
-2004-06-11 Mikhail Khodjaiants
- New implementation of the "Load Symbols For All" action of the Shared Libraries view.
- Fixes for the "Auto-Refresh" and "refresh" actions.
- * AbstractAutoRefreshActionDelegate.java
- * AbstractRefreshActionDelegate.java
- * LoadSymbolsForAllAction.java: removed
- * LoadSymbolsForAllActionDelegate.java: new
- * SharedLibrariesView.java
- * plugin.properties
- * plugin.xml
-
-2004-06-11 Mikhail Khodjaiants
- New implementation of the "Auto-Refresh" actions for registers and shared libraries.
- * plugin.properties
- * plugin.xml
- * AbstractAutoRefreshActionDelegate.java: new
- * AutoRefreshRegistersAction.java: new
- * AutoRefreshSharedLibrariesAction.java: new
- * AutoRefreshAction.java: removed
- * AbstractRefreshActionDelegate.java
-
-2004-06-09 Mikhail Khodjaiants
- New implementation of the "Refresh" actions for registers and shared libraries.
- * icons/full/clcl16/auto_refresh_co.gif: new
- * icons/full/clcl16/refresh_co.gif: new
- * plugin.properties
- * plugin.xml
- * CDebugImages.java
- * AbstractRefreshActionDelegate.java: new
- * RefreshRegistersAction.java: new
- * RefreshSharedLibrariesAction.java: new
- * SharedLibrariesView.java
- * Refreshaction.java: removed
-
-2004-06-08 Mikhail Khodjaiants
- Warning clean-up.
- * DebugTextHover.java
-
-2004-06-03 Mikhail Khodjaiants
- Added new images for the "Auto-Refresh" and "Refresh" actions.
- * icons/full/dlcl16/auto_refresh_co.gif
- * icons/full/dlcl16/refresh_co.gif
- * icons/full/elcl16/auto_refresh_co.gif
- * icons/full/elcl16/refresh_co.gif
-
-2004-06-03 Mikhail Khodjaiants
- Changed the breakpoints and watchpoints label resources.
- * CDebugUIPluginResources.properties
- * CDTDebugModelPresentation.java
-
-2004-05-31 Alain Magloire
- The Extension point "org.eclipse.cdt.ui.textHover"
- Changed adjust the Debugger.
- * DebugTextHover.java
-
-2004-05-31 Mikhail Khodjaiants
- Bug 39650: the Memory window has alignment problems.
- Map the Memory view font to the platform text font which is monospace by default.
- * ICDebugPreferenceConstants.java
-
-2004-05-28 Mikhail Khodjaiants
- New implementation of the "Add Expression" editor action.
- * AddExpressionActionDelegate.java: removed
- * AddExpressionEditorActionDelegate.java: new
- * icons/full/dtool16/watch_exp.gif: new
- * icons/full/etool16/watch_exp.gif: new
- * plugin.xml
-
-2004-05-28 Mikhail Khodjaiants
- Changed the error handling of the "Add Globals" and "Enable/Disable Variable" actions.
- * AddGlobalsActionDelegate.java
- * EnableVariablesActionDelegate.java
- * ActionMessages.properties
-
-2004-05-28 Mikhail Khodjaiants
- Removed diassembly editor actions.
- * plugin.xml
-
-2004-05-27 Mikhail Khodjaiants
- Display global variables in the Variables view.
- * CDebugImages.java
- * CDTDebugModelPresentation.java
- * AddGlobalsActionDelegate.java
- * RemoveAllGlobalsActionDelegate.java: new
- * RemoveGlobalsActionDelegate.java: new
- * plugin.properties
- * plugin.xml
- * icons/full/dlcl16/rem_all_co.gif: new
- * icons/full/dlcl16/rem_co.gif: new
- * icons/full/elcl16/rem_all_co.gif: new
- * icons/full/elcl16/rem_co.gif: new
- * icons/full/ovr16/global_ovr.gif: new
-
-2004-05-25 Mikhail Khodjaiants
- New instructuion pointer images for the Disassembly view.
- * icons/full/obj16/inst_ptr_top.gif
- * icons/full/obj16/inst_ptr.gif
-
-2004-05-25 Mikhail Khodjaiants
- Replaced deprecated methods.
- * CDebugUIPreferenceInitializer.java: new
- * CDebugUIPlugin.java
-
-2004-05-24 Mikhail Khodjaiants
- Fix for bug 63612: Debugger Pages are not displayed.
- * CDebugUIPlugin.java
-
-2004-05-21 Mikhail Khodjaiants
- Removed dependencies on the compatibility plugin and replaced deprecated classes and methods.
- Warning cleanup.
- * CDebugImageDescriptorRegistry.java
- * CDebugImages.java
- * LineBreakingReader.java
- * SingleCharReader.java
- * SubstitutionTextReader.java
- * AbstractDebugActionDelegate.java
- * AddAddressBreakpointActionDelegate.java
- * AddExpressionActionDelegate.java
- * ToggleBreakpointAdapter.java
- * SelectionButtonDialogFieldGroup.java
- * SourcePreferencePage.java
- * DisassemblyView.java
- * SourceLocationSelectionPage.java
- * CDebugUIPlugin.java
- * plugin.xml
- * ChangeLog-2003: new
-
-2004-05-20 Mikhail Khodjaiants
- The "IStackFrameInfo" interface is removed and it's methods moved to "ICStackFrame".
- * CDTDebugModelPresentation.java
- * FileNotFoundElement.java
- * DefaultSourceLocator.java
- * SourceLookupBlock.java
- * SourceLookupLabelProvider.java
-
-2004-05-19 Mikhail Khodjaiants
- Added the support of watch expressions.
- * CDTDebugModelPresentation.java
- * CWatchExpressionDelegate.java: new
- * CDebugUIPluginResources.properties
- * plugin.xml
-
-2004-05-14 Mikhail Khodjaiants
- Refresh the Disassembly view on change events.
- * DisassemblyEditorInput.java
- * DisassemblyView.java
- * DisassemblyViewEventHandler.java
-
-2004-05-13 Mikhail Khodjaiants
- Removed old disassembly implementation.
- * SwitchToDisassemblyActionDelegate.java: deleted
- * src/org/eclipse/cdt/debug/internal/ui/editors/DisassemblyDocumentProvider.java: deleted
- * src/org/eclipse/cdt/debug/internal/ui/editors/DisassemblyEditor.java: deleted
- * src/org/eclipse/cdt/debug/internal/ui/editors/DisassemblyEditorInput.java: deleted
- * src/org/eclipse/cdt/debug/internal/ui/editors/DisassemblyMarkerAnnotation.java: deleted
- * src/org/eclipse/cdt/debug/internal/ui/editors/DisassemblyMarkerAnnotationModel.java: deleted
- * src/org/eclipse/cdt/debug/internal/ui/editors/DisassemblySourceViewerConfiguration.java: deleted
- * CDTDebugModelPresentation.java
- * JumpToLineActionDelegate.java
- * CDebugPreferencePage.java
- * CDebugUIPlugin.java
- * DefaultSourceLocator.java
- * plugin.properties
- * plugin.xml
-
-2004-05-13 Mikhail Khodjaiants
- Added the "Instruction Stepping Mode" action.
- * ToggleInstructionStepModeActionDelegate.java
- * plugin.properties
- * plugin.xml
- * org.eclipse.cdt.debug.ui/icons/full/clcl16/instr_step.gif: new
- * org.eclipse.cdt.debug.ui/icons/full/dlcl16/instr_step.gif: new
- * org.eclipse.cdt.debug.ui/icons/full/elcl16/instr_step.gif: new
-
-2004-05-12 Mikhail Khodjaiants
- The input member of 'DisassemblyAnnotationModel' can be null.
- * DisassemblyAnnotationModel.java
-
-2004-05-12 Mikhail Khodjaiants
- Do not log CoreException thrown from the 'decrementInstallCount' method.
- * CBreakpointUpdater.java
-
-2004-05-12 Mikhail Khodjaiants
- Implemented the color highlighting of the source lines in the Disassembly view.
- * plugin.xml
- * IInternalCDebugUIConstants.java
- * DisassemblyEditorInput.java
- * DisassemblyView.java
-
-2004-05-11 Mikhail Khodjaiants
- Added theme category for CDT debugger.
- Moved the disassembly font definition to the theme.
- * plugin.properties
- * plugin.xml
- * IInternalCDebugUIConstants.java
-
-2004-05-06 Mikhail Khodjaiants
- Implementation of mixed disassembly mode.
- * ToggleBreakpointAdapter.java
- * DisassemblyMessages.properties
- * DisassemblyAnnotationModel.java
- * DisassemblyEditorInput.java
- * DisassemblyView.java
-
-2004-05-02 Mikhail Khodjaiants
- Check if the new stack frame is of the same debug target as the old one.
- * DisassemblyEditorInput.java
-
-2004-04-30 Mikhail Khodjaiants
- New implementation of the "Resume At Line" global action.
- * plugin.xml
- * ActionMessages.properties
- * ResumeAtLineActionDelegate.java
- * ToggleBreakpointAdapter.java
-
-2004-04-30 Mikhail Khodjaiants
- Added ruler breakpoint actions to the Disassembly view.
- * ICDebugHelpContextIds.java
- * IInternalCDebugUIConstants.java
- * ActionMessages.properties
- * AbstractBreakpointRulerAction.java
- * CBreakpointPropertiesRulerAction.java
- * EnableDisableBreakpointRulerAction.java
- * EnableDisableBreakpointRulerActionDelegate.java
- * ManageBreakpointRulerActionDelegate.java
- * ManageFunctionBreakpointActionDelegate.java
- * ToggleBreakpointAdapter.java
- * ManageBreakpointRulerAction.java: deleted
- * ToggleBreakpointRulerAction.java: new
- * DisassemblyAnnotationModel.java
- * DisassemblyDocumentProvider.java
- * DisassemblyView.java
-
-2004-04-28 Mikhail Khodjaiants
- Added support of context menu to the Disassembly view.
- * DisassemblyView.java
-
-2004-04-28 Mikhail Khodjaiants
- Added the overview ruler to the Disassembly view.
- * DisassemblyView.java
- * DisassemblyViewer.java
-
-2004-04-27 Mikhail Khodjaiants
- Breakpoints presentation in the Disassembly view.
- * HTML2TextReader.java: new
- * HTMLPrinter.java: new
- * HTMLTextPresenter.java: new
- * LineBreakingReader.java: new
- * SingleCharReader.java: new
- * SubstitutionTextReader.java: new
- * ToggleBreakpointAdapter.java
- * DisassemblyMessages.properties
- * DisassemblyAnnotationHover.java: new
- * DisassemblyAnnotationModel.java: new
- * DisassemblyDocumentProvider.java
- * DisassemblyEditorInput.java
- * DisassemblyMarkerAnnotationModel.java: deleted
- * DisassemblyView.java
- * DisassemblyViewerConfiguration.java: new
-
-2004-04-23 Mikhail Khodjaiants
- Fix for bug 58711: Breakpoint race condition.
- Notify the Breakpoint Manager when the install count of breakpoint is changed.
- * CBreakpointUpdater.java
-
-2004-04-21 Mikhail Khodjaiants
- Implementing the Disassembly view.
- New annotation model is added to show breakpoint markers.
- * DisassemblyDocumentProvider.java
- * DisassemblyEditorInput.java
- * DisassemblyInstructionPointerAnnotation.java
- * DisassemblyMarkerAnnotationModel.java: new
- * DisassemblyView.java
-
-2004-04-19 Mikhail Khodjaiants
- Fix for bug 58711: Breakpoint race condition.
- To avoid race condition all breakpoint marker updates (like increment/decrement the install count,
- enable/disable etc.) should be done in the UI thread. At the same time installing breakpoint
- at a target should be synchronized with other gdb commands (bug 58711).
- A special listener (CBreakpointUpdater) has been added to receive notifications from the event
- thread and post marker updates to the UI thread.
- * CDebugUIPlugin.java
- * CBreakpointUpdater.java: new
-
-2004-04-16 Mikhail Khodjaiants
- Implementing retargettable actions for Disassembly view.
- * plugin.xml
- * DisassemblyView.java: new
- * DisassemblyEditorInput.java
- * BreakpointLocationVerifier.java
- * ActionMessages.properties
- * RunToLineAdapter.java
- * ToggleBreakpointAdapter.java
-
-2004-04-15 Mikhail Khodjaiants
- Implementing the Disassembly view.
- New pacckage: org.eclipse.cdt.debug.internal.ui.views.disassembly
- * DisassemblyMessages.properties: new
- * DisassemblyDocumentProvider.java: new
- * DisassemblyEditorInput.java: new
- * DisassemblyInstructionPointerAnnotation.java: new
- * DisassemblyMessages.java: new
- * DisassemblyView.java: new
- * DisassemblyViewer.java: new
- * DisassemblyViewEventHandler.java: new
- * IDisassemblyListener.java: new
- * ICDebugHelpContextIds.java
- * IInternalCDebugUIConstants.java
- * plugin.properties
- * plugin.xml
- * icons/full/cview16/disassembly_view.gif: new
- * icons/full/obj16/inst_ptr_top.gif: new
- * icons/full/obj16/inst_ptr.gif: new
-
-2004-04-12 Mikhail Khodjaiants
- Fixes in the breakpoint-related actions.
- * ActionMessages.properties
- * AbstractListenerActionDelegate.java
- * AddWatchpointActionDelegate.java
- * ToggleBreakpointAdapter.java
-
-2004-04-12 Mikhail Khodjaiants
- Changed the labels of the ruler breakpoint actions.
- * plugin.properties
-
-2004-04-12 Mikhail Khodjaiants
- Implementing retargettable breakpoint related actions.
- * AddAddressBreakpointActionDelegate.java
- * AddWatchpointActionDelegate.java
- * ManageBreakpointRulerAction.java
- * ManageBreakpointRulerActionDelegate.java
- * ManageFunctionBreakpointActionDelegate.java
- * ToggleBreakpointAdapter.java
- * DisassemblyMarkerAnnotationModel.java
- * plugin.properties
- * plugin.xml
-
-2004-04-11 Mikhail Khodjaiants
- Implementation of the "Run To Line" retargettable action.
- * plugin.xml
- * RetargettableActionAdapterFactory.java
- * RunToLineAdapter.java
- * RunToLineRulerAction.java - deleted
- * RunToLineRulerActionDelegate.java - deleted
- * ActionMessages.properties
-
-2004-04-08 Mikhail Khodjaiants
- Implementing retargettable actions.
- * plugin.xml
- * RetargettableActionAdapterFactory.java
- * RunToLineAdapter.java
- * ToggleBreakpointAdapter.java
-
-2004-04-08 Mikhail Khodjaiants
- Added breakpoint images and implemented the extension points for breakpoint
- marker annotations.
- * plugin.xml
- * BreakpointImageProvider.java: new
- * CDebugImages.java
- * CDebugModelPresentation.java
- * CDTDebugModelPresentation.java
- * icons/full/obj16/brkp_obj.gif: new
- * icons/full/obj16/brkpd_obj.gif: new
-
-2004-04-07 Mikhail Khodjaiants
- Strings externalization fixes and reformatting.
- * CDebugUIMessages.properties
- * CDebugModelPresentation.java
- * CDTDebugModelPresentation.java
- * ColorManager.java
- * InfoStatusHandler.java
- * OverlayImageCache.java
- * OverlayImageDescriptor.java
- * PixelConverter.java
- * QuestionStatusHandler.java
- * SWTUtil.java
-
-2004-04-07 Mikhail Khodjaiants
- Removed the "Show Debugger Console" action.
- * DebuggerConsoleActionDelegate.java
- * ToggelDelegateAction.java
- * plugin.xml
-
-2004-04-02 Mikhail Khodjaiants
- Removed dependency to xerces.
- * DefaultSourceLocator.java
- * plugin.xml
-
-2004-04-02 Mikhail Khodjaiants
- Fix for bug 57160: Don't override Debug perspective's "autoClose" behavior.
- * plugin.xml
-
-2004-04-02 Mikhail Khodjaiants
- Fix for bug 57159: Don't add C views to Debug perspective by default.
- * plugin.xml
-
-2004-04-01 Mikhail Khodjaiants
- Changes in the Shared Libraries and the Signals views.
- * ActionMessages.properties
- * ActionMessages.java
- * LoadSymbolsActionDelegate.java
- * LoadSymbolsForAllAction.java
- * ShowFullPathsAction.java
- * SignalActionDelegate.java
- * SignalPropertiesActionDelegate.java
- * SignalPropertiesDialog.java
- * ViewFilterAction.java
- * AbstractDebugEventHandler.java
- * AbstractDebugEventHandlerView.java
- * IDebugExceptionHandler.java
- * SharedLibrariesMessages.properties
- * SharedLibrariesMessages.java
- * SharedLibrariesView.java
- * SharedLibrariesViewContentProvider.java
- * SharedLibrariesViewEventHandler.java
- * SignalsMessages.properties
- * SignalsMessages.java
- * SignalsView.java
- * SignalsViewContentProvider.java
- * SignalsViewer.java
- * SignalsViewEventHandler.java
- * CDebugUIPluginResources.properties
- * plugin.properties
- * plugin.xml
-
-2004-04-01 Mikhail Khodjaiants
- Moved the "Show Full Paths" action from toolbars to view's menus.
- * CDebugModelPresentation.java - new (will replace CDTDebugModelPresentation)
- * CDebugUIMessages.java - new
- * CDebugUIMessages.properties - new
- * ActionMessages.properties - new
- * ActionMessages.java - new
- * ShowFullPathsAction.java
- * ViewFilterAction.java -new
- * ICDebugPreferenceConstants.java
- * icons/full/clcl16/show_paths.gif - new (replaced the old icon)
- * plugin.properties
- * plugin.xml
-
-2004-03-31 Mikhail Khodjaiants
- Added default preferences to the C/C++ Debug preference page.
- Removed the preference page of the Shared Libraries views.
- * SharedLibrariesPreferencePage.java - removed
- * CDebugPreferencePage.java
- * CDebugUIPluginResources.properties
- * CDebugUIPlugin.java
- * plugin.xml
-
-2004-03-31 Mikhail Khodjaiants
- The Registers view has been contibuted and moved to the Eclipse platform.
- * org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/views/registers/* - removed
- * org.eclipse.cdt.debug.ui/icons/full/cview16/registers_view.gif - removed
- * org.eclipse.cdt.debug.ui/icons/full/eview16/registers_view.gif - removed
- * RegistersViewPreferencePage.java - removed
- * CDebugUIPlugin.java
- * plugin.properties
- * plugin.xml
-
-2004-03-23 Mikhail Khodjaiants
- Fix for Bug 55777: I18N: Memory View is missing key for number_of_columns.
- * CDebugUIPluginResources.properties
-
-2004-03-19 Mikhail Khodjaiants
- Added missing action tooltips.
- * plugin.properties
- * plugin.xml
-
-2004-03-11 Tanya Wolff
- Externalized remaining strings
- * debug.internal.ui
- * debug.internal.ui.actions
- * debug.internal.ui.editors
- * debug.ui
- * debug.ui.sourcelookup
-
-2004-03-11 Tanya Wolff
- Fix for missing resource in
- * LoadSymbolsForAllAction.java
-
-2004-03-09 Tanya Wolff
- Added strings to properties file for views packages
- * CDebugUIPluginResources.properties
-
-2004-03-02 Tanya Wolff
- Partial Fix for #51189, completing the externalizing of strings for this plugin.
- Affected packages are:
- debug.internal.ui
- debug.internal.ui.actions
- debug.internal.ui.editors
- debug.internal.ui.preferences
- debug.internal.ui.wizards
- debug.ui
- debug.ui.sourcelookup.
-
-2004-02-20 Alain Magloire
- Partial Fix for #52155, we simply catch the exception.
- We do not worry about it too much since this code will
- be rewritten part of catching up with Eclipse 3.0
- * CDebugUIPlugin.java: shutdown()
-
-2004-02-16 Mikhail Khodjaiants
- Fix for bug 52135: Debugger should indicate which thread triggered breakpoint.
- * CDTDebugModelPresentation.java
-
-2004-02-16 Tanya Wolff
- Partial Fix for bug 51189.
- Externalized strings in new CDT Debug views.
- * CDebugUIPluginResources.properties
- * MemoryControlArea.java
- * MemoryPresentation.java
- * MemoryView.java
- * MemoryViewer.java
- * RegistersView.java
- * SharedLibrariesView.java
- * SignalsViewer.java
-
-2004-02-11 Mikhail Khodjaiants
- Fix for bug 51062: Source locator oddness.
- * DefualtSourceLocator.java
-
-2004-02-10 Mikhail Khodjaiants
- Fix for bug 40108: The memory view does not handle big/little endian.
- * MemoryPresentation.java
-
-2004-02-10 Mikhail Khodjaiants
- Fix for bug 51519: Enable 'Format' action if multiple variables are selected.
- * VariableFormatActionDelegate.java
-
-2004-02-03 Alain Magloire
-
- Derived from a patch by Chris Songer.
- Accept multiple selection when doing setting the format variables.
-
- * src/org/eclipse/cdt/debug/internal/ui/actions/VariableFormatActionDelegate.java
-
-2004-01-30 Mikhail Khodjaiants
- Fix for bug 50967: Linux/SWT blows when double click on the register view.
- * ChangeRegisterValueAction.java
-
-2004-01-22 Alain Magloire
-
- Set the sharedLibManager autorefresh to be off by defaul
-
- * SharedLibrariesViewPreferencePage.java
-
-2004-01-06 Mikhail Khodjaiants
- Fix for bug 49587: Unable to set breakpoints in the editors that extend CEditor.
- * ManageBreakpointRulerActionDelegate.java
diff --git a/debug/org.eclipse.cdt.debug.ui/ChangeLog-2003 b/debug/org.eclipse.cdt.debug.ui/ChangeLog-2003
deleted file mode 100644
index 6513cbe866d..00000000000
--- a/debug/org.eclipse.cdt.debug.ui/ChangeLog-2003
+++ /dev/null
@@ -1,1267 +0,0 @@
-2003-12-05 Mikhail Khodjaiants
- 'performApply' of 'SourceLookupBlock' should check if the project in configuration is the same as
- project saved in the block.
- * SourceLookupBlock.java
-
-2003-12-04 Mikhail Khodjaiants
- Changed the message displayed when the source file is not found.
- * CDebugEditor.java
-
-2003-11-26 Mikhail Khodjaiants
- Fix for PR 47595: Referenced projects are not checked in the list of generic source locations.
- * SourceLookupBlock.java
-
-2003-11-26 Mikhail Khodjaiants
- Cleanup.
- * CDTDebugModelPresentation.java
- * AddExpressionActionDelegate.java
- * AddGlobalsActionDelegate.java
- * AddWatchpointActionDelegate.java
- * AddWatchpointDialog.java
- * AutoRefreshAction.java
- * CBreakpointPreferencePage.java
- * ExpressionDialog.java
- * ManageBreakpointRulerAction.java
- * MemoryFormatAction.java
- * MemoryNumberOfColumnAction.java
- * MemorySizeAction.java
- * RunToLineRulerAction.java
- * ShowRegisterTypesAction.java
- * ComboDialogField.java
- * DisassemblyMarkerAnnotationModel.java
- * MemoryViewer.java
- * AddProjectSourceLocationBlock.java
- * CDebugUIPlugin.java
- * SourceLookupBlock.java
- * SourcePropertyPage.java
-
-2003-11-21 Mikhail Khodjaiants
- Use "symbol not available" for empty function names when generating a stack frame label.
- * CDTDebugModelPresentation.java
-
-2003-11-13 Mikhail Khodjaiants
- Use 'StringBuffer' instead of 'String' when generating stack frame labels.
- Added a label for dummy stack frames instead of using the name provided by the rendered object.
- * CDTDebugModelPresentation.java
-
-2003-11-05 Mikhail Khodjaiants
- The argument type of the 'getBreakpointAddress' of 'ICBreakpointManager' is changed from
- 'ICBreakpoint' to 'ICBreakpointManager'.
- * DisassemblyMarkerAnnotationModel.java
-
-2003-11-03 Mikhail Khodjaiants
- Fix for PR 45957: Memory view: last column does not show updates.
- * MemoryPresentation.java
-
-2003-10-31 Mikhail Khodjaiants
- Applied the changes made to the corresponding classes of 'org.eclipse.debug.ui'.
- * AbstractDebugActionDelegate.java
- * AbstractListenerActionDelegate.java
- * AddAddressBreakpointActionDelegate.java
- * DebuggerConsoleActionDelegate.java
- * SwitchToDisassemblyActionDelegate.java
- * SignalZeroWorkbenchActionDelegate.java
-
-2003-10-28 Mikhail Khodjaiants
- Changed name of source lookup preference page.
- * plugin.properties
-
-2003-10-27 Mikhail Khodjaiants
- Added support of the old launch configurations.
- * plugin.xml
- * plugin.properties
-
-2003-10-27 Mikhail Khodjaiants
- Changed the initialization of 'SourceLookupBlock'.
- * SourceLookupBlock.java
- * SourcePropertyPage.java
-
-2003-10-27 Mikhail Khodjaiants
- Moved the 'org.eclipse.debug.core.sourceLocators' extension from the launcher.
- * plugin.xml
- * plugin.properties
-
-2003-10-27 Mikhail Khodjaiants
- Added dependency to 'org.apache.xerces'.
- * plugin.xml
- * .classpath
- * .project
-
-2003-10-27 Mikhail Khodjaiants
- Moved 'DefaultSourceLocator' from the 'org.eclipse.cdt.launch' plugin and merge it with 'CUISourceLocator'.
- * CUISourceLocator.java: removed
- * DefaultSourceLocator.java: moved from the launcher.
- * CDebugUIPlugin.java: added the 'createSourceLocator' method.
-
-2003-10-27 Mikhail Khodjaiants
- Renamed 'SourceLocationFactory' to 'SourceLookupFactory'.
- * AddDirectorySourceLocationBlock.java
- * AddProjectSourceLocationBlock.java
-
-2003-10-23 Mikhail Khodjaiants
- Added a preference page for the source lookup.
- It includes two new preferences: 'Source Locations' and 'Search For Duplicate Source Files'.
- * plugin.properties
- * plugin.xml
- * ICDebugHelpContextIds.java
- * SourcePreferencePage.java
- * SourceListDialogField.java
- * SourceLookupBlock.java
-
-2003-10-22 Mikhail Khodjaiants
- Refactoring: converting nested types 'SourceListDialogField' and 'SourceLookupLabelProvider'
- of 'SourceLookupBlock' to the top level types.
- Added 'dispose' method to 'SourceLookupBlock'.
- * SourceLookupBlock.java
- * SourcePropertyPage.java
- * SourceListDialogField.java
- * SourceLookupLabelProvider.java
-
-2003-10-20 Mikhail Khodjaiants
- Implementation of the "Search subfolders" option for directory source locations.
- * AddDirectorySourceLocationBlock.java
- * SourceLookupBlock.java
-
-2003-10-17 Mikhail Khodjaiants
- UI support of the 'Search for duplicate source files' option.
- * icons/full/obj16/prj_file_obj.gif: new
- * icons/full/obj16/ext_file_obj.gif: new
- * CDebugImages.java
- * CUISourceLocator.java
- * SourceLookupBlock.java
- * SourcePropertyPage.java
-
-2003-10-17 Mikhail Khodjaiants
- * CDebugEditor.java: changed the message displayed when the source file not found.
-
-2003-10-14 Mikhail Khodjaiants
- * DebugTextHover.java: check if the result of 'evaluateExpression' is not null before trim it.
-
-2003-10-06 Mikhail Khodjaiants
- Mark the function arguments in the Variables View.
- * icons\full\ovr16\argument_ovr.gif: new
- * icons\full\ovr16\castarray_ovr.gif: new
- * icons\full\ovr16\casttype_ovr.gif: new
- * CDebugImages.java
- * CDTDebugModelPresentation.java
-
-2003-09-30 Mikhail Khodjaiants
- Fix for PR 39737: Tooltip in debug mode over long strings is not handled properly.
- Added an internal constant to limit the hover text size.
- Present the hover text in HTML format.
- * DebugTextHover.java
-
-2003-09-24 Mikhail Khodjaiants
- Fix for PR 43624: The "Show Types Name" action of the Registers view doesn't work.
- * ShowRegisterTypesAction.java
- * RegistersView.java
-
-2003-09-22 Mikhail Khodjaiants
- Moved the 'AddAddressBreakpointActionDelegate' action
- to the 'org.eclipse.cdt.debug.internal.ui.actions' package.
- * AddAddressBreakpointActionDelegate.java
- * plugin.xml
-
-2003-09-16 Mikhail Khodjaiants
- Cleanup.
- * CUISourceLocator.java
-
-2003-09-11 Mikhail Khodjaiants
- Reset the selection of variable after casting.
- * CastToArrayActionDelegate.java
- * CastToTypeActionDelegate.java
-
-2003-10-11 Mikhail Khodjaiants
- Moving the shared library search paths block to mi UI.
- * SolibSearchPathBlock.java: moved to mi UI.
-
-2003-09-09 Mikhail Khodjaiants
- New class - SolibSearchPathBlock. Implements the UI control block to set the shared library search path.
- * SolibSearchPathBlock.java
-
-2003-08-29 Mikhail Khodjaiants
- Label for target suspended by shared library event.
- * CDTDebugModelPresentation.java
-
-2003-08-19 Mikhail Khodjaiants
- * plugin.properties: "Restore Default Type" changed to "Restore Original Type".
-
-2003-08-13 Mikhail Khodjaiants
- * CDebugImages.java: new images for the 'Cast to type" and 'Display As Array' dialogs
- * CastToTypeActionDelegate.java: new image
- * CastToArrayActionDelegate.java: removed the 'type' field, added new image
-
-2003-08-13 Mikhail Khodjaiants
- Display the proper image for reference types.
- * CDTDebugModelPresentation.java
-
-2003-07-30 Mikhail Khodjaiants
- Moved the 'getReferencedProject' method to 'CDebugUtils'. Added the cycle checking.
- * SourceLookupBlock.java
-
-2003-07-29 Mikhail Khodjaiants
- Fix for PR 40911: Double clicking on breakpoint with no source causes internal error.
- * CDTDebugModelPresentation.java: check if the resource associated with breakpoint is a file.
-
-2003-07-28 Mikhail Khodjaiants
- Minimize the number of the "evaluate expression" requests when changing the value of the floating point types.
- * CDTDebugModelPresentation.java
-
-2003-07-28 Mikhail Khodjaiants
- Refactoring: moved the 'isNaN', 'isPositiveInfinity' and 'isNegativeInfinity' to the 'CDebugUtils' class.
- * CDTDebugModelPresentation.java
-
-2003-07-28 Mikhail Khodjaiants
- Refactoring: moved the 'CDebugUtils' class to the 'org.eclipse.cdt.debug.core' package -
- the methods of this class are mostly used in UI plugins.
- * CDTDebugModelPresentation.java
- * CBreakpointPreferencePage.java
- * MemoryPresentation.java
- * SharedLibrariesView.java
-
-2003-07-28 Mikhail Khodjaiants
- Cleanup. Removed the 'reset' method from the 'ICVaraible' interface.
- * VariableFormatActionDelegate.java
-
-2003-07-24 Mikhail Khodjaiants
- New icon for closed projects.
- * icons/full/obj16/cproject_obj.gif: new
- * CDebugImages.java
- * SourceLookupBlock.java
-
-2003-07-24 Mikhail Khodjaiants
- When initializing the generic source locations list filter out non-generic locations.
- * SourceLookupBlock.java
-
-2003-07-22 Mikhail Khodjaiants
- Check if the value that getName returns is not null.
- * CDTDebugModelPresentation.java
-
-2003-07-17 Mikhail Khodjaiants
- Automatically update the list of source locations when the list of the referenced
- projects is modified.
- * CheckedListDialogField.java
- * AddDirectorySourceLocationBlock.java
- * AddProjectSourceLocationBlock.java
- * CUISourceLocator.java
- * SourceLookupBlock.java
-
-2003-06-29 Mikhail Khodjaiants
- Fix for PR 39101: No hilight when changing the value of register.
- * RegistersView.java
- * RegistersViewer.java
-
-2003-06-26 Mikhail Khodjaiants
- New icon for shared libraries with loaded symbols.
- * icons/full/ovr16/symbols_ovr.gif: new
- * CDebugImages.java
- * CDTDebugModelPresentation.java
-
-2003-06-24 Mikhail Khodjaiants
- Warnings cleanup.
- * CDebugPreferencePage.java
- * MemoryControlArea.java
-
-2003-06-20 Mikhail Khodjaiants
- In the 'getVariableText' and 'getVariableImage' methods of CDTDebugModelPresentation
- ignore exceptions thrown by getType.
- * CDTDebugModelPresentation.java
-
-2003-06-20 Mikhail Khodjaiants
- Variable bookkeeping (phase 0.1).
- The 'Enable' and 'Disable' actions added to the Variables view.
- * plugin.properties
- * plugin.xml
- * icons/full/obj16/vard_aggr.gif: new
- * icons/full/obj16/vard_pointer.gif: new
- * icons/full/obj16/vard_simple.gif: new
- * icons/full/clc16/disabled_co.gif: new
- * icons/full/clc16/enabled_co.gif: new
- * CDebugImages.java
- * CDTDebugModelPresentation.java
- * DisableVariablesActionDelegate.java: new
- * EnableVariablesActionDelegate.java: new
-
-2003-06-13 Mikhail Khodjaiants
- Fix for PR 38788: Ctrl-X, Ctrl-C, Ctrl-V, Ctrl-A, Ctrl-Z and Ctrl-Y keys don't work
- in the address field of the Memory view.
- Note: Ctrl-Z still doesn't work because there is no support of it in the Text widget.
- * MemoryViewAction.java: moved to the org.eclipse.cdt.debug.internal.ui.views.memory package.
- * MemoryControlArea.java
- * MemoryView.java
-
-2003-06-12 Mikhail Khodjaiants
- Fixing "trivial" PR 38788: Ctrl-X, Ctrl-C, Ctrl-V, Ctrl-A, Ctrl-Z and Ctrl-Y keys don't work
- in the address field of the Memory view.
- * MemoryViewAction.java: new
- * MemoryControlArea.java
- * MemoryView.java
- * MemoryViewer.java
-
-2003-06-10 Mikhail Khodjaiants
- Refactoring: moved the type and value related methods from ICVariable to ICType and ICValue.
- * CDTDebugModelPresentation.java
-
-2003-06-09 Mikhail Khodjaiants
- Added default format preferences for variables, registers and expressions.
- * CDebugPreferencePage.java
-
-2003-06-09 Mikhail Khodjaiants
- Renamed the 'refresh' method of ICVariable to 'reset'.
- * VariableFormatActionDelegate.java
-
-2003-06-05 Mikhail Khodjaiants
- Changed the presentation of arrays and array types.
- * CDTDebugModelPresentation.java
-
-2003-06-05 Mikhail Khodjaiants
- UI support of infinite values of the floating point types.
- * CDTDebugModelPresentation.java
-
-2003-06-05 Mikhail Khodjaiants
- Evaluate expressions of detail panel asynchronously.
- * CDTValueDetailProvider.java
-
-2003-06-04 Mikhail Khodjaiants
- Implementing the UI support of the detail panel.
- * CDTDebugModelPresentation.java
- * CDTValueDetailProvider.java: new
-
-2003-06-04 Mikhail Khodjaiants
- The presentation of the new types.
- * CDTDebugModelPresentation.java
-
-2003-05-23 Mikhail Khodjaiants
- Fix for PR 38047: Unable to save changes in C/C++ debug editor.
- * CDebugEditor.java
- * EditorInputDelegate.java
- * CDebugUIPlugin.java
-
-2003-05-29 Mikhail Khodjaiants
- PR 38268: added the image cache for overlay images.
- * OverlayImageCache.java: new
- * CDTDebugModelPresentation.java
-
-2003-05-29 Mikhail Khodjaiants
- Changed the vizualization of arrays and structures.
- * CDTDebugModelPresentation.java
-
-2003-05-14 Mikhail Khodjaiants
- Created preference for the maximum number of disassembly instructions.
- * CDebugPreferencePage.java
-
-2003-05-13 Mikhail Khodjaiants
- Enable/disable the 'Add Globals' action when the 'Expressions' view is initializing.
- * AddGlobalsActionDelegate.java
-
-2003-05-12 Mikhail Khodjaiants
- Accumulate the status information when adding multiple globals to the Expression view.
- * AddGlobalsActionDelegate.java
-
-2003-05-12 Mikhail Khodjaiants
- Moved the generation of expressions for global variables to the mi plugin.
- * AddGlobalsActionDelegate.java
-
-2003-05-07 Mikhail Khodjaiants
- Display the error message and error image in the debug target's label
- if the error status is set.
- * CDTDebugModelPresentation.java
-
-2003-05-06 Mikhail Khodjaiants
- Ruler tooltips in the dissassembly editor.
- * DisassemblyEditor.java
- * DisassemblySourceViewerConfiguration.java: new
-
-2003-05-05 Mikhail Khodjaiants
- New implementation of overlayed images.
- * OverlayImageDescriptor.java: new
- * CImageDescriptor.java: removed
- * CDebugImages.java: new overlay images
- * CDTDebugModelPresentation.java: presentation of breakpoints and debug elements.
- * icons/full/ovr16/address_ovr.gif: new
- * icons/full/ovr16/address_ovr_disabled.gif: new
- * icons/full/ovr16/function_ovr.gif: new
- * icons/full/ovr16/function_ovr_disabled.gif: new
- * icons/full/ovr16/conditional_ovr.gif: new
- * icons/full/ovr16/conditional_ovr_disabled.gif: new
- * icons/full/ovr16/error_ovr.gif: new
- * icons/full/ovr16/warning_ovr.gif: new
-
-2003-04-29 Alain Magloire
-
- * src/org/eclipse/cdt/debug/internal/ui/editor/CDebugDocumentProvider.java (doSetInput):
- Disconnect the old input from the working manager.
-
-2003-04-27 Alain Magloire
-
- Bug PR 36759, the outliner was not updated, when using
- the CDebugEditor.
-
- * src/org/eclipse/cdt/debug/internal/ui/editor/CDebugDocumentProvider.java (getBufferFactory):
- New method overload getBufferFactory() to return the factory of
- CUIPlugin.getDefault().getDocumentProvider().getBufferFactory().
-
-2003-04-25 Mikhail Khodjaiants
- Fix for bug 36909.
- * NoSymbolOrSourceElement.java: new file.
- * CDTDebugModelPresentation.java
- * CUISourceLocator.java
-
-2003-04-24 Mikhail Khodjaiants
- Display error messages in the 'Registers' view.
- * RegistersView.java
-
-2003-04-24 Mikhail Khodjaiants
- Added shortcuts for the C/C++ Debug specific views.
- * plugin.xml
-
-2003-04-24 Mikhail Khodjaiants
- Update the actions of the 'Shared Libraries' view even if the viewer's input
- is the same as before.
- * SharedLibrariesView.java
-
-2003-04-23 Mikhail Khodjaiants
- If error occurs when acquiring the signal information from gdb
- the error message should be displayed in the 'Signals' view.
- * SignalsView.java
- * SignalsViewer.java
- * SignalsViewEventHandler.java
-
-2003-04-21 Mikhail Khodjaiants
- Fix for bug 36682.
- * CDTDebugModelPresentation.java
-
-2003-04-21 Mikhail Khodjaiants
- Temporary fix for character values.
- * CDTDebugModelPresentation.java
-
-2003-04-16 Mikhail Khodjaiants
- Quick fix for variable values.
- * CDTDebugModelPresentation.java
-
-2003-04-14 Mikhail Khodjaiants
- Added icon to the 'Add/Remove Breakpoint' action for functions and methods.
- * plugin.xml
-
-2003-04-14 Mikhail Khodjaiants
- Commented default format preferences.
- * CDebugPreferencePage.java
-
-2003-04-14 Mikhail Khodjaiants
- Fixes for toggle actions.
- * plugin.xml
- * MemoryFormatAction.java
- * MemoryNumberOfColumnAction.java
- * MemorySizeAction.java
-
-2003-04-11 Mikhail Khodjaiants
- Method and function breakpoints.
- * plugin.properties
- * plugin.xml
- * icons/full/obj16/brkpd_obj.gif: new
- * icons/full/obj16/funbrkp_obj.gif: new
- * icons/full/obj16/funbrkpd_obj.gif: new
- * CDTDebugModelPresentation.java
- * CDebugImages.java
- * CBreakpointPreferencePage.java
- * ManageFunctionBreakpointActionDelegate.java: new
- * DisassemblyMarkerAnnotation.java
- * DisassemblyMarkerAnnotationModel.java
-
-2003-04-08 Mikhail Khodjaiants
- Removed unused private methods and members.
- * CDebugEditor.java
- * MemoryPresentation.java
- * MemoryText.java
- * MemoryViewer.java
-
-2003-04-08 Mikhail Khodjaiants
- Preserving the registers tree structure during the debug session.
- * ViewerState.java: new
- * RegistersView.java
- * RegistersViewEventHandler.java
-
-2003-04-07 Mikhail Khodjaiants
- No dialog if switch to frame failed.
- * CDebugUIPlugin.java
-
-2003-04-05 Alain Magloire
-
- * CDebugEditor.java
- Change to make the ContentOutline work.
-
-2003-04-01 Mikhail Khodjaiants
- Changed the labels of the C/C++ specific actions.
- * plugin.properties
- * plugin.xml
-
-2003-04-01 Mikhail Khodjaiants
- The 'Auto-Refresh' preferences were moved to the code plugin. Changed the preference
- pages for the Registers and Shared Libraries views to reflect this.
- * ICDebugPreferenceConstants.java
- * RegistersViewPreferencePage.java
- * SharedLibrariesViewPreferencePage.java
-
-2003-04-01 Mikhail Khodjaiants
- Changed implementation and initialization of 'AutoRefreshAction'.
- * AutoRefreshAction.java
- * RegistersView.java
- * SharedLibrariesView.java
-
-2003-04-01 Mikhail Khodjaiants
- Removed the 'Show Type Names' preference from the Registers view's preference page.
- * ShowRegisterTypesAction.java
- * RegistersViewPreferencePage.java
- * RegistersView.java
-
-2003-03-31 Mikhail Khodjaiants
- 'Auto-Refresh' and 'Refresh' actions for registers view.
- * ICDebugHelpContextIds.java
- * RefreshAction.java
- * ICDebugPreferenceConstants.java
- * RegistersViewPreferencePage.java
- * RegistersView.java
- * RegistersViewContentProvider.java
-
-2003-03-28 Mikhail Khodjaiants
- Added the default format section for variables, registers and expressions
- to the debugger preference page.
- * CDebugPreferencePage.java
-
-2003-03-28 Mikhail Khodjaiants
- 'Run To C/C++ Line' and 'Resume At C/C++ Line' actions for external files.
- * JumpToLineActionDelegate.java
- * RunToLineActionDelegate.java
- * RunToLineRulerAction.java
-
-2003-03-25 Mikhail Khodjaiants
- Fix for bug 35092.
- * CDebugImages.java
-
-2003-03-25 Mikhail Khodjaiants
- Added the 'logErrorMessage' static method to the 'CDebugUIPlugin' class.
- * CDebugUIPlugin.java
-
-2003-03-18 Mikhail Khodjaiants
- Removed the gdb-specific variable parsing.
- * VariableFormatActionDelegate.java
- * CDTDebugModelPresentation.java
-
-2003-03-17 Mikhail Khodjaiants
- Replace range by start index and length in 'Display As Array' action.
- * CastToArrayActionDelegate.java
-
-2003-03-14 Mikhail Khodjaiants
- Fix for the 'Restore Default Type' action.
- * RestoreDefaultTypeActionDelegate.java
-
-2003-03-11 Mikhail Khodjaiants
- The implementation of the "Display As Array" action.
- * CastToArrayActionDelegate.java
- * CastToTypeActionDelegate.java
-
-2003-03-10 Mikhail Khodjaiants
- Implementing the "Display As Array" action.
- * plugin.xml
- * plugin.propeties
- * CastToArrayActionDelegate.java: new
-
-2003-03-09 Mikhail Khodjaiants
- The implementation of the "Cast To Type" and "Restore Default Type" actions.
- * plugin.xml
- * plugin.propeties
- * CastToTypeActionDelegate.java: new
- * RestoreDefaultTypeActionDelegate.java: new
-
-2003-03-05 Mikhail Khodjaiants
- The extension of CEditor that displays the 'Source Not Found' form.
- * plugin.properties
- * plugin.xml
- * CDTDebugModelPresentation.java
- * AttachSourceEditor.java: removed
- * AttachSourceEditorInput.java: removed
- * FileNotFoundElement.java: new
- * CDebugDocumentProvider.java: new
- * CDebugEditor.java: new
- * EditorInputDelegate.java: new
- * ManageBreakpointRulerActionDelegate.java
-
-2003-02-28 Mikhail Khodjaiants
- Check if part is not null when set the selection.
- * AddExpressionActionDelegate.java
- * AddGlobalsActionDelegate.java
- * JumpToLineActionDelegate.java
- * RunToLineActionDelegate.java
-
-2003-02-28 Mikhail Khodjaiants
- Check if page exists before adding a listener.
- * AbstractListenerActionDelegate.java
-
-2003-02-21 Mikhail Khodjaiants
- Implementing the 'Attach Source' editor.
- * plugin.properties
- * plugin.xml
- * icons/full/obj16/filenotfound_obj.gif: new
- * CDTDebugModelPresentation.java
- * AttachSourceEditor.java: new
- * AttachSourceEditorInput.java: new
- * FileNotFoundElement.java: new
- * CUISourceLocator.java
-
-2003-02-20 Mikhail Khodjaiants
- Added the 'Association' column and the 'Restore Defaults' button to the SourceLookupBlock.
- * SourceLookupBlock.java
- * SourcePropertyPage.java
-
-2003-02-18 Mikhail Khodjaiants
- Added persistency to the source locator.
- * CUISourceLocator.java
- * SourceLookupBlock.java
- * SourcePropertyPage.java
-
-2003-02-14 Mikhail Khodjaiants
- Enable the 'Resume With Signal' action only if target is suspended.
- * SignalActionDelegate.java
-
-2003-02-14 Mikhail Khodjaiants
- Change the 'Deliver Signal' action name to 'Resume With Signal'.
- * plugin.properties
-
-2003-02-13 Mikhail Khodjaiants
- Undo changes because the 'asyncExec' method of the 'DebugPlugin' class has added since version 2.1.
- * CDebugUIPlugin.java
-
-2003-02-13 Mikhail Khodjaiants
- Use the 'asyncExec' method of the 'DebugPlugin' class.
- * CDebugUIPlugin.java
-
-2003-02-11 Mikhail Khodjaiants
- The 'Load Symbole For All' action is added to the 'Shared Libraries' view
- * CDebugImages.java
- * ICDebugHelpContextIds.java
- * LoadSymbolsForAllAction.java: new
- * SharedLibrariesView.java
- * ICDebugUIConstants.java
- * icons/full/clcl16/load_all_symbols_co.gif: new
- * icons/full/dlcl16/load_all_symbols_co.gif: new
- * icons/full/elcl16/load_all_symbols_co.gif: new
-
-2003-02-10 Mikhail Khodjaiants
- The 'Auto-Refresh' and 'Refresh' actions are added to the 'Shared Libraries' view.
- * RefreshAction.java: new
- * AutoRefreshAction.java: new
- * RefreshMemoryAction.java
- * AutoRefreshMemoryAction.java
- * SharedLibrariesView.java
- * CDebugImages.java
- * ICDebugHelpContextIds.java
-
-2003-02-09 Alain Magloire
-
- Changing the scope of methods to protected to let inner class
- have access to it.
- * StringDialogField.java
- * CheckedListDialogField.java
- * ComboDialogField.java
- * ListDialogField.java
- * SelectionButtonDialogField.java
- * SelectionButtonDialogFieldGroup.java
-
-2003-02-07 Mikhail Khodjaiants
- Implementing the preference page for the 'Shared Libraries' view.
- * ICDebugHelpContextIds.java
- * ICDebugPreferenceConstants.java
- * SharedLibrariesViewPreferencePage.java: new
- * CDebugUIPlugin.java
- * plugin.xml
- * plugin.properties
-
-2003-02-07 Mikhail Khodjaiants
- The viewer type of the 'Shared Libraries' view changed to 'TableTreeViewer'.
- * CDTDebugModelPresentation.java
- * AbstractDebugEventHandler.java
- * SharedLibrariesView.java
- * SharedLibrariesViewContentProvider.java
- * SharedLibrariesViewEventHandler.java
-
-2003-02-07 Mikhail Khodjaiants
- The 'Resume Without Signal' action added to the 'Run' menu of the workbench window.
- * SignalZeroWorkbenchActionDelegate.java: new
- * plugin.xml
-
-2003-02-07 Mikhail Khodjaiants
- Rename 'SignalZeroActionDelegate' to 'SignalZeroObjectActionDelegate'.
- * SignalZeroObjectActionDelegate.java
- * plugin.xml
-
-2003-02-05 Mikhail Khodjaiants
- Removed warnings.
- * AddAddressBreakpointActionDelegate.java
- * AddExpressionActionDelegate.java
- * CBreakpointPropertiesDialog.java
- * CUISourceLocator.java
- * SourceLookupBlock.java
-
-2003-02-05 Mikhail Khodjaiants
- Implementation of the 'Resume At C/C++ Line' action.
- * RunToLineActionDelegate.java
- * JumpToLineActionDelegate.java
- * plugin.properties
- * plugin.xml
- icons/full/clcl16/jump_co.gif
- icons/full/dlcl16/jump_co.gif
- icons/full/elcl16/jump_co.gif
-
-2003-02-04 Mikhail Khodjaiants
- Implementation of the 'Resume Without Signal' action.
- * SignalZeroActionDelegate.java
- * plugin.properties
- * plugin.xml
- icons/full/clcl16/signal0_co.gif
- icons/full/dlcl16/signal0_co.gif
- icons/full/elcl16/signal0_co.gif
-
-2003-02-04 Mikhail Khodjaiants
- 'DebugException' handling in the 'Signals' view.
- * SignalsView.java
- * SignalsViewer.java
-
-2003-02-04 Mikhail Khodjaiants
- Changed the 'Signal' action name to 'Deliver Signal'.
- * plugin.properties
-
-2003-02-03 Mikhail Khodjaiants
- Implementing the 'Signals' view.
- * SignalActionDelegate.java
- * SignalsViewer.java: new
- * CDTDebugModelPresentation.java
-
-2003-01-31 Mikhail Khodjaiants
- Implementing the 'Signals' view.
- * CDebugImages.java
- * ICDebugHelpContextIds.java
- * SignalActionDelegate.java
- * SignalsView.java: new
- * SignalsViewContentProvider.java: new
- * SignalsViewer.java: new
- * SignalsViewEventHandler.java: new
- * AbstractDebugEventHandler.java
- * plugin.xml
- * plugin.properties
- icons/full/clcl16/signal_co.gif
- icons/full/dlcl16/signal_co.gif
- icons/full/elcl16/signal_co.gif
- icons/full/eview6/signals_view.gif
- icons/full/cview6/signals_view.gif
-
-2003-01-30 Mikhail Khodjaiants
- Disassembly editor input fix.
- * CDTDebugModelPresentation.java
-
-2003-01-27 Mikhail Khodjaiants
- Managing breakpoints from the gdb console.
- * AddAddressBreakpointActionDelegate.java
- * ManageBreakpointRulerAction.java
- * CDebugUIPlugin.java
-
-2003-01-23 Mikhail Khodjaiants
- Ignore the text selection when hovering.
- * DebugTextHovering.java
-
-2003-01-21 Mikhail Khodjaiants
- Changed the viewer of the Shared Libraries view to TreeViewer.
- * SharedLibrariesView.java
- * SharedLibrariesViewContentProvider.java
- * SharedLibrariesViewEventHandler.java
-
-2003-01-21 Mikhail Khodjaiants
-
- * src/org/eclipse/cdt/debu/internal/ui/CDTDebugModelPresentation.java
- (getTargetText): Use Signal.
-
-2003-01-20 Mikhail Khodjaiants
- Changed the icon for the 'Load Symbols' action.
- icons/full/clcl16/load_symbols_co.gif
- icons/full/dlcl16/load_symbols_co.gif
- icons/full/elcl16/load_symbols_co.gif
-
-2003-01-19 Mikhail Khodjaiants
- Set the start or end address value in the shared libraries view to 'Not available' if the address value is 0.
- * CDTDebugModelPresentation.java
-
-2003-01-17 Mikhail Khodjaiants
- Use the C editor instead of the default editor for files without extensions.
- * CDTDebugModelPresentation.java
-
-2003-01-17 Mikhail Khodjaiants
- Added the handlers for the 'Create' and 'Terminate' events to the 'Shared Libraries' view.
- * SharedLibrariesViewEventHandler.java
-
-2003-01-17 Mikhail Khodjaiants
- Implementation of the shared library view.
- * LoadSymbolsActionDelegate.java
- * SharedLibrariesView.java
- * SharedLibrariesViewEventHandler.java
- * CDTDebugModelPresentation.java
- * CDebugImages.java
- * plugin.properties
- * plugin.xml
-
-2003-01-16 Mikhail Khodjaiants
- Implementing the Shared Libraries view.
- * SharedLibrariesView.java
- * SharedLibrariesViewContentProvider.java
- * SharedLibrariesViewEventHandler.java
- * CDebugImages.java
- * ICDebugHelpContextIds.java
- * plugin.properties
- * plugin.xml
- * icons/full/cview16/sharedlibraries_view.gif
- * icons/full/eview16/sharedlibraries_view.gif
- * icons/full/obj16/sharedlibraryl_obj.gif
- * icons/full/obj16/sharedlibraryu_obj.gif
-
-2003-01-15 Mikhail Khodjaiants
- The 'getDefaultEditor' method returns 'null' for file names that don't have an extension and
- are not registered with some editor. Use the default text editor in this case.
- * CDTDebugModelPresentation.java
-
-2003-01-14 Mikhail Khodjaiants
- Added the 'Add Address Breakpoint' action to the workbench 'Run' menu.
- * AddAddressBreakpointActionDelegate.java
- * plugin.properties
- * plugin.xml
- * icons/full/obj16/brkp_obj.gif
-
-2003-01-13 Mikhail Khodjaiants
- Implementation of the 'Run To Line' action for disassembly.
- * RunToLineActionDelegate.java
-
-2003-01-13 Alain Magloire
-
- * src/org/eclipse/cdt/debug/internal/ui/editors/DebugTextHover.java (getHoverInfo):
- IndexArrayOutOfBound exception, do no use the index when doing targetList.add().
-
-2003-01-10 Mikhail Khodjaiants
- Added contributions of the breakpoint actions to the disassembly editor.
- * DisassemblyEditor.java
- * plugin.xml
-
-2003-01-10 Mikhail Khodjaiants
- Implementation of address breakpoints.
- * CDebugImages.java
- * CDTDebugModelPresentation.java
- * BreakpointLocationVerifier.java
- * CBreakpointPreferencePage.java
- * ManageBreakpointActionDelegate.java
- * ManageBreakpointRulerAction.java
- * ManageBreakpointRulerActionDelegate.java
- * DisassemblyDocumentProvider.java
- * DisassemblyEditor.java
- * DisassemblyEditorInput.java
- * DisassemblyMarkerAnnotation.java
- * DisassemblyMarkerAnnotationModel.java
- * CDebugUIPlugin.java
- * plugin.properties
- * plugin.xml
-
- New icons:
- * full/obj16/addrbrkp_obj.gif
- * full/obj16/addrbrkpd_obj.gif
-
-2003-01-06 Alain Magloire
-
- * build.properties: Patch from Judy Green.
-
-2003-01-06 Mikhail Khodjaiants
- Fix for bug 28977: Unable to set breakpoint properties from the Breakpoint view.
- * plugin.xml
-
-2003-01-02 Mikhail Khodjaiants
- Adapter for 'IResource' in 'DisassemblyEditorInput'.
- * DisassemblyEditorInput.java
-
-2002-12-29 Mikhail Khodjaiants
- Implementation of the 'Source Lookup' property page.
- * AddDirectorySourceLocationBlock.java (new)
- * AddDirectorySourceLocationWizard.java (new)
- * AddProjectSourceLocationBlock.java (new)
- * AddProjectSourceLocationWizard.java (new)
- * AddSourceLocationWizard.java
- * SourceLocationSelectionPage.java (new)
- * SourceLocationWizardNode.java (new)
- * CDebugImages.java
- * AttachSourceLocationBlock.java renamed to AddDirectorySourceLocationBlock.java
- * AttachSourceLocationDialog.java (deleted - dialog replaced by wizard).
- * INewSourceLocationWizard.java (new)
- * SourceLookupBlock.java
- Added new wizard and tool icons.
-
-2002-12-19 Mikhail Khodjaiants
- Implementing the 'Source Lookup' property page.
- * AddSourceLocationWizard.java
- * SourceLookupBlock.java
- * SourcePropertyPage.java
- icons/full/obj16/project_obj.gif
- icons/full/obj16/folder_obj.gif
-
-2002-12-19 Mikhail Khodjaiants
- Added the 'org.eclipse.cdt.debug.internal.ui.dialogfields' package.
-
-2002-12-19 Mikhail Khodjaiants
- Added new utility class - SWTUtil
- * SWTUtil.java
- * AttachSourceLocationBlock.java
-
-2002-12-19 Mikhail Khodjaiants
- Added new utility class - PixelConverter
- * PixelCoverter.java
- * AttachSourceLocationBlock.java
-
-2002-12-18 Mikhail Khodjaiants
- Implementing the "Source Lookup" property page.
- * SourceLookupBlock.java: common control block.
- * SourcePropertyPage.java: implementation
- * plugin.properties: page name
- * plugin.xml: contribution to ICDebugTarget properties
-
-2002-12-18 Mikhail Khodjaiants
- Do not show the source lookup dialog if file name is not specified.
- * CUISourceLocator.java
-
-2002-12-17 Mikhail Khodjaiants
- Disable the association controls in the 'Attach Source Location" dialog if path is not absolute.
- * AttachSourceLocationBlock.java
- * CUISourceLocator.java
-
-2002-12-17 Mikhail Khodjaiants
- Formatting 'char' types.
- * VariableFormatActionDelegate.java
-
-2002-12-17 Mikhail Khodjaiants
- Removed the "Primitive type display options" section from the C/C++ Debug preference page because of the different formattong strategy.
- * CDebugPreferencePage.java
-
-2002-12-17 Mikhail Khodjaiants
- The UI part of the prompting source locator.
- * AttachSourceLocationBlock.java
- * AttachSourceLocationDialog.java
- * CUISourceLocator.java
- * plugin.xml
-
-2002-12-16 Mikhail Khodjaiants
- New formating actions for variables, registers, and expressions
- * VariableFormatActionDelegate.java
- * DecVariableFormatActionDelegate.java
- * HexVariableFormatActionDelegate.java
- * NaturalVariableFormatActionDelegate.java
- * plugin.xml
- * plugin.properties
-
-2002-12-10 Mikhail Khodjaiants
- Added new case in the 'getEditorInput' method of CDTDebugModelPresentation for FileStorage objects.
- * CDTDebugModelPresentation.java
-
-2002-12-08 Mikhail Khodjaiants
- Implementation of the status handler for core errors.
- * ErrorStatusHandler.java
-
-2002-12-04 Mikhail Khodjaiants
- Small fix for the Registers view.
- * RegistersView.java
-
-2002-12-02 Mikhail Khodjaiants
- If the target is suspended because of error display the error message in the Launch view.
- * CDTDebugModelPresentation.java
-
-2002-12-02 Mikhail Khodjaiants
- Refactoring org.eclipse.cdt.debug.core - UI changes.
-
-2002-12-02 Mikhail Khodjaiants
- 'Run to line' and 'Add expression' actions for assembly editor.
- *plugin.xml
-
-2002-12-01 Mikhail Khodjaiants
- Contributing breakpoint actions to asm editor.
- * plugin.xml
- * ManageBreakpointRulerActionDelegate.java
-
-2002-11-29 Mikhail Khodjaiants
- Cosmetic change for the MemoryView preference page.
- * plugin.properties
- * MemoryViewPreferencePage.java
-
-2002-11-29 Mikhail Khodjaiants
- Cosmetic fix for the memory view tab's tooltips.
- * MemoryControlArea.java
-
-2002-11-28 Mikhail Khodjaiants
- Fixes for 'Run to line' actions.
- * RunToLineActionDelegate.java
- * RunToLineRulerAction.java
-
-2002-11-28 Mikhail Khodjaiants
- Live editing of the memory view.
- * SaveMemoryChangesAction.java - removed
- * MemoryPresentation.java
- * MemoryControlArea.java
- * MemoryText.java
- * MemoryViewer.java
- * MemoryView.java
-
-2002-11-27 Mikhail Khodjaiants
- Render debug target as suspended if no reason is specified.
- * CDTDebugModelPresentation.java
-
-2002-11-26 Mikhail Khodjaiants
- Fix for evaluation of expression to address in the Memory view.
- GDB evaluates the array of chars to a string not an address.
- * MemoryControlArea.java
-
-2002-11-21 Mikhail Khodjaiants
- Added the 'Evaluate' button to the Memory view.
- * MemoryControlArea.java
-
-2002-11-20 Mikhail Khodjaiants
- Reset the tooltips of the memory view tabs on terminate.
- * MemoryControlArea.java
-
-2002-11-20 Mikhail Khodjaiants
- Added the TERMINATE event handler to MemoryViewEventHandler.
- * MemoryViewer.java
- * MemoryViewEventHandler.java
-
-2002-11-20 Mikhail Khodjaiants
- Fix for bug 26595.
- Highlight the addresses if the start address of a memory expression has changed.
- *MemoryPresentation.java
- *MemoryText.java
-
-2002-11-19 Mikhail Khodjaiants
- Added enablement condition to some actions.
- *plugin.xml
-
-2002-11-19 Mikhail Khodjaiants
- Fix for bug 26693.
- * SwitchToDisassemblyActionDelegate.java
-
-2002-11-19 Mikhail Khodjaiants
- Fix for bug 26401.
- * ExpressionDialog.java: Highlight the content of the expression field on intialization.
-
-2002-11-18 Mikhail Khodjaiants
- Fixes for the 'Add Global Variables' action's bugs.
- The action disabled after 'Remove All'.
- Error message after adding a valid expression.
- * AddGlobalsActionDelegate.java
-
-2002-11-15 Mikhail Khodjaiants
- Added presentation for dummy stack frames.
- * CDTDebugModelPresentation.java
-
-2002-11-13 Mikhail Khodjaiants
- Added tooltips to the Memory view's tabs.
- * MemoryControlArea.java
-
-2002-11-13 Mikhail Khodjaiants
- Added the 'Auto-Refresh by default' and 'Show ASCII by default' preferences
- to the 'Memory Views' preference page.
- * ICDebugPreferenceConstants.java
- * MemoryViewPreferencePage.java
- * MemoryControlArea.java
- * MemoryView.java
-
-2002-11-11 Mikhail Khodjaiants
- Fix for PR 25988: The 'Padding Character' preference of the Memory view doesn't work.
- * MemoryControlArea.java
- * MemoryViewPreferencePage.java
-
-2002-11-05 Mikhail Khodjaiants
- Implementation of the "Add Global Variables" action of the Expressions view.
- Action images:
- watch_globals.gif (clcl, dlcl, elcl).
- * AddGlobalsActionDelegate.java: implementation.
- * plugin.xml: contribution to the Expression view
- * plugin.xml: added dependency to org.eclipse.cdt.core
- * .classpath: added dependency to org.eclipse.cdt.core
- * .project: added dependency to org.eclipse.cdt.core
- * plugin.properties: action's label and tooltip text
-
-2002-11-03 Mikhail Khodjaiants
- Implementation of the "Format/Decimal" and "Format/Unsigned Decimal" actions of the Memory view.
- * MemoryFormataction.java
- * MemorySizeAction.java
- * MemoryNumberOfColumnsAction.java
- * MemoryPresentation.java
- * MemoryViewer.java
- * MemoryView.java
-
-2002-11-01 Mikhail Khodjaiants
- Implementing decimal format support of the Memory view.
- * MemoryPresentation.java
-
-2002-10-31 Mikhail Khodjaiants
- Removed the 'Modified Value Color' field from the 'Debug/Memory Views'
- preference page.
- * MemoryViewPreferencePage.java
-
-2002-10-30 Mikhail Khodjaiants
- Implementing the 'Refresh Memory' action.
- * RefreshMemoryAction.java
- * MemoryControlArea.java
- * MemoryViewer.java
-
-2002-10-30 Mikhail Khodjaiants
- Implementation of the 'SaveMemoryChanges' action.
- * SaveMemoryChangesAction.java
- * CDebugImages.java
- * ICDebugHelpConstants.java
- * MemoryControlArea.java
- * MemoryText.java
- * MemoryViewer.java
- * MemoryView.java
-
-2002-10-30 Alain Magloire
-
- * src/.../ui/CDebugUIPlugin.java (selectionChanged):
- sameThread() code is commented out amd we let the underlying
- implementation swith thread.
-
-2002-10-29 Mikhail Khodjaiants
- Implementing editing features of the memory view.
- * MemoryPresentation.java
- * MemoryControlArea.java
- * MemoryText.java
-
-2002-10-28 Mikhail Khodjaiants
- Implementing editing features of the memory view.
- * MemoryPresentation.java
- * MemoryControlArea.java
- * MemoryText.java
-
-2002-10-27 Mikhail Khodjaiants
- * MemoryPresentation.java: adding editing features to the memory view.
-
-2002-10-25 Mikhail Khodjaiants
- Implementation of the 'Number Of Columns' action.
- * MemoryNumberOfColumnAction.java: the action class
- * MemoryViewer.java: support of the action
- * MemoryView.java: support of the action
-
-2002-10-25 Mikhail Khodjaiants
- Replaced the usage of 'setWordSize' method by the 'reformat' method of 'IFormattedMemoryBlock'.
- * MemorySizeAction.java
- * MemoryViewer.java
-
-2002-10-24 Mikhail Khodjaiants
- Set the 'relationship' attribute value to 'stack' for the 'MemoryView' perspective extension.
- * plugin.xml
-
-2002-10-24 Mikhail Khodjaiants
- Implementation of the 'Memory Unit Size' action.
- * MemorySizeAction.java
- * MemoryView.java
-
-2002-10-24 Mikhail Khodjaiants
- Implementing Memory view formatting actions.
- * MemoryActionSelectionGroup.java: implementation of a toggle action group.
- * MemorySizeAction.java: implementation of the "Memory Unit Size" menu item.
- * MemoryView.java: add new actions to the view.
- * MemoryViewer.java: support for new action.
- * ICDebugHelpContextIds.java: help context id for the new action.
- * ICDebugUIConstants.java: new menu group - "Format".
-
-2002-10-23 Mikhail Khodjaiants
- * DebuggerConsoleActionDelegate.java: The debugger/inferrior console should become visible when checking "Show Debug Console".
-
-2002-10-23 Mikhail Khodjaiants
- "Show Debugger Console" action.
- Action images:
- debugger_console.gif (clcl, dlcl, elcl);
- * DebuggerConsoleActionDelegate.java: implementation of action delegate.
- * plugin.xml: action extenions
- * plugin.properties: action label and tooltip text.
-
-2002-10-22 Mikhail Khodjaiants
- Implementation of the "Show ASCII" action.
- Action images:
- show_ascii.gif (clcl, dlcl, elcl).
- * ShowAsciiAction.java
- * MemoryPresentation.java
- * MemoryText.java
- * MemoryView.java
- * MemoryViewer.java
- * CDebugImages.java
- * ICDebugHelpContextIds.java
-
-2002-10-21 Mikhail Khodjaiants
- Framework tries to refresh memory view before the view controls are created.
- * MemoryViewer.java: Check if CTabFolder has already created when refreshing the view.
-
-2002-10-21 Mikhail Khodjaiants
- Implementation of the "Clear" action for the memory view.
- * ClearMemoryAction.java
- * ICDebugHelpContextIds.java
- * MemoryControlArea.java
- * MemoryView.java
- * MemoryViewer.java
-
-2002-10-21 Mikhail Khodjaiants
- Implementation of the "Auto-Refresh" and "Refresh" actions for the memory view.
- * AutoRefreshMemoryAction.java
- * RefreshMemoryAction.java
- * ICDebugHelpContextIds.java
- * MemoryControlArea.java
- * MemoryView.java
- * MemoryViewer.java
- * MemoryViewEventHandler.java
-
-2002-10-20 Mikhail Khodjaiants
- Display the memory changes in different color in the memory view.
- * MemoryControlArea.java
- * MemoryPresentation.java
- * MemoryText.java
- * MemoryViewer.java
- * MemoryViewEventHandler.java
-
-2002-10-18 Mikhail Khodjaiants
- Implementing the memory view support:
- Images for the view's actions:
- autorefresh_mem.gif (clcl, dlcl, elcl),
- refresh_mem.gif (clcl, dlcl, elcl),
- memory_save.gif (clcl, dlcl, elcl),
- memory_clear.gif (clcl, dlcl, elcl).
- * RefreshMemoryAction.java
- * MemoryControlArea.java
- * MemoryPresentation.java
- * MemoryText.java
- * MemoryView.java
- * MemoryViewer.java
- * CDebugImages.java
- * ICDebugHelpContextIds.java
- * ICDebugUIConstants.java
-
-2002-10-17 Mikhail Khodjaiants
- Implementing the memory view support:
- * MemoryControlArea.java
- * MemoryPresentation.java
- * MemoryView.java
- * MemoryViewer.java
-
-2002-10-15 Mikhail Khodjaiants
- * CDebugUIPlugin.java: Moved the memory management functionality to the core.
- * MemoryControlArea.java: Moved the memory management functionality to the core.
-
-2002-10-15 Mikhail Khodjaiants
- * CDebugPreferencePage.java: Implementation of the 'Automatically switch to disassembly mode' preference.
-
-2002-10-14 Mikhail Khodjaiants
- * CDebugUIPlugin.java: In the 'selectionChanged' method check if the thread of the new frame is current. If not make it current.
-
-2002-10-11 Mikhail Khodjaiants
- * SwitchToDisassemblyActionDelegate.java: Implementation of the 'Switch to disassembly mode' action.
- * plugin.properties: Action label and tooltip.
- * plugin.xml: Contribution to the 'Launch View'.
- * icons/full/clcl16/disassembly.gif: Hover icon.
- * icons/full/dlcl16/disassembly.gif: Disabled icon.
- * icons/full/elcl16/disassembly.gif: Enabled icon.
diff --git a/debug/org.eclipse.cdt.debug.ui/META-INF/MANIFEST.MF b/debug/org.eclipse.cdt.debug.ui/META-INF/MANIFEST.MF
deleted file mode 100644
index f191bf01698..00000000000
--- a/debug/org.eclipse.cdt.debug.ui/META-INF/MANIFEST.MF
+++ /dev/null
@@ -1,39 +0,0 @@
-Manifest-Version: 1.0
-Bundle-ManifestVersion: 2
-Bundle-Name: %pluginName
-Bundle-SymbolicName: org.eclipse.cdt.debug.ui; singleton:=true
-Bundle-Version: 4.0.0.qualifier
-Bundle-Activator: org.eclipse.cdt.debug.ui.CDebugUIPlugin
-Bundle-Vendor: %providerName
-Bundle-Localization: plugin
-Export-Package:
- org.eclipse.cdt.debug.internal.ui,
- org.eclipse.cdt.debug.internal.ui.actions,
- org.eclipse.cdt.debug.internal.ui.dialogfields,
- org.eclipse.cdt.debug.internal.ui.editors,
- org.eclipse.cdt.debug.internal.ui.preferences,
- org.eclipse.cdt.debug.internal.ui.propertypages,
- org.eclipse.cdt.debug.internal.ui.sourcelookup,
- org.eclipse.cdt.debug.internal.ui.views,
- org.eclipse.cdt.debug.internal.ui.views.disassembly,
- org.eclipse.cdt.debug.internal.ui.views.modules,
- org.eclipse.cdt.debug.internal.ui.views.signals,
- org.eclipse.cdt.debug.ui,
- org.eclipse.cdt.debug.ui.importexecutable,
- org.eclipse.cdt.debug.ui.sourcelookup
-Require-Bundle: org.eclipse.ui.ide;bundle-version="[3.2.0,4.0.0)",
- org.eclipse.jface.text;bundle-version="[3.2.0,4.0.0)",
- org.eclipse.ui.workbench.texteditor;bundle-version="[3.2.0,4.0.0)",
- org.eclipse.ui.editors;bundle-version="[3.2.0,4.0.0)",
- org.eclipse.core.resources;bundle-version="[3.2.0,4.0.0)",
- org.eclipse.ui;bundle-version="[3.2.0,4.0.0)",
- org.eclipse.debug.ui;bundle-version="[3.2.0,4.0.0)",
- org.eclipse.debug.core;bundle-version="[3.2.0,4.0.0)",
- org.eclipse.cdt.debug.core;bundle-version="[4.0.0,5.0.0)",
- org.eclipse.cdt.ui;bundle-version="[4.0.0,5.0.0)",
- org.eclipse.cdt.core;bundle-version="[4.0.0,5.0.0)",
- org.eclipse.core.runtime;bundle-version="[3.2.0,4.0.0)",
- org.eclipse.ui.console;bundle-version="[3.1.100,4.0.0)",
- org.eclipse.ui.views;bundle-version="[3.2.0,4.0.0)"
-Eclipse-LazyStart: true
-Bundle-RequiredExecutionEnvironment: J2SE-1.4
diff --git a/debug/org.eclipse.cdt.debug.ui/NEWS b/debug/org.eclipse.cdt.debug.ui/NEWS
deleted file mode 100644
index 16e3a9a9512..00000000000
--- a/debug/org.eclipse.cdt.debug.ui/NEWS
+++ /dev/null
@@ -1,17 +0,0 @@
-Release CDT-3.0
-
- * User-defined register groups support is added (Bug 94139)
-
- * Moved to the Platform Source Lookup framework (bug 80175)
-
- * Modules View (former Shared Libraries view) (bug 82264)
- - replaced Shared Libraries view by Modules view
- - added detail pane to the view
- - made the view's entries expandable
-
- * Memory View (bug 73168)
- - removed the old memory view
- - added support for the Memory view provided by Eclipse 3.1
-
- * Visibility of the "Run To Line" and "Resume At Line" actions
- - support for visibility in editors
diff --git a/debug/org.eclipse.cdt.debug.ui/about.html b/debug/org.eclipse.cdt.debug.ui/about.html
deleted file mode 100644
index 9c7ba0a57bc..00000000000
--- a/debug/org.eclipse.cdt.debug.ui/about.html
+++ /dev/null
@@ -1,24 +0,0 @@
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml"><head>
-<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"><title>About</title></head>
-
-<body lang="EN-US">
-<h2>About This Content</h2>
-
-<p>May 2, 2006</p>
-<h3>License</h3>
-
-<p>The Eclipse Foundation makes available all content in this plug-in ("Content"). Unless otherwise
-indicated below, the Content is provided to you under the terms and conditions of the
-Eclipse Public License Version 1.0 ("EPL"). A copy of the EPL is available
-at <a href="http://www.eclipse.org/legal/epl-v10.html">http://www.eclipse.org/legal/epl-v10.html</a>.
-For purposes of the EPL, "Program" will mean the Content.</p>
-
-<p>If you did not receive this Content directly from the Eclipse Foundation, the Content is
-being redistributed by another party ("Redistributor") and different terms and conditions may
-apply to your use of any object code in the Content. Check the Redistributor's license that was
-provided with the Content. If no such license exists, contact the Redistributor. Unless otherwise
-indicated below, the terms and conditions of the EPL still apply to any source code in the Content
-and such source code may be obtained at <a href="http://www.eclipse.org/">http://www.eclipse.org</a>.</p>
-
-</body></html> \ No newline at end of file
diff --git a/debug/org.eclipse.cdt.debug.ui/build.properties b/debug/org.eclipse.cdt.debug.ui/build.properties
deleted file mode 100644
index 8ea14166995..00000000000
--- a/debug/org.eclipse.cdt.debug.ui/build.properties
+++ /dev/null
@@ -1,20 +0,0 @@
-###############################################################################
-# Copyright (c) 2003, 2006 QNX Software Systems and others.
-# All rights reserved. This program and the accompanying materials
-# are made available under the terms of the Eclipse Public License v1.0
-# which accompanies this distribution, and is available at
-# http://www.eclipse.org/legal/epl-v10.html
-#
-# Contributors:
-# QNX Software Systems - initial API and implementation
-###############################################################################
-
-bin.includes = plugin.xml,\
- plugin.properties,\
- about.html,\
- icons/,\
- .,\
- META-INF/
-javadoc.packages = org.eclipse.cdt.debug.ui.*,\
- org.eclipse.cdt.debug.ui.sourcelookup.*
-source.. = src/
diff --git a/debug/org.eclipse.cdt.debug.ui/icons/dlcl16/auto_refresh_co.gif b/debug/org.eclipse.cdt.debug.ui/icons/dlcl16/auto_refresh_co.gif
deleted file mode 100644
index 7fff7f930c1..00000000000
--- a/debug/org.eclipse.cdt.debug.ui/icons/dlcl16/auto_refresh_co.gif
+++ /dev/null
Binary files differ
diff --git a/debug/org.eclipse.cdt.debug.ui/icons/dlcl16/casttotype_co.gif b/debug/org.eclipse.cdt.debug.ui/icons/dlcl16/casttotype_co.gif
deleted file mode 100644
index c77da053c5d..00000000000
--- a/debug/org.eclipse.cdt.debug.ui/icons/dlcl16/casttotype_co.gif
+++ /dev/null
Binary files differ
diff --git a/debug/org.eclipse.cdt.debug.ui/icons/dlcl16/change_reg_value_co.gif b/debug/org.eclipse.cdt.debug.ui/icons/dlcl16/change_reg_value_co.gif
deleted file mode 100644
index 879de886dd7..00000000000
--- a/debug/org.eclipse.cdt.debug.ui/icons/dlcl16/change_reg_value_co.gif
+++ /dev/null
Binary files differ
diff --git a/debug/org.eclipse.cdt.debug.ui/icons/dlcl16/collapseall.gif b/debug/org.eclipse.cdt.debug.ui/icons/dlcl16/collapseall.gif
deleted file mode 100644
index 7dc0de51301..00000000000
--- a/debug/org.eclipse.cdt.debug.ui/icons/dlcl16/collapseall.gif
+++ /dev/null
Binary files differ
diff --git a/debug/org.eclipse.cdt.debug.ui/icons/dlcl16/debugger_console.gif b/debug/org.eclipse.cdt.debug.ui/icons/dlcl16/debugger_console.gif
deleted file mode 100644
index bc39f092bbc..00000000000
--- a/debug/org.eclipse.cdt.debug.ui/icons/dlcl16/debugger_console.gif
+++ /dev/null
Binary files differ
diff --git a/debug/org.eclipse.cdt.debug.ui/icons/dlcl16/det_pane_hide.gif b/debug/org.eclipse.cdt.debug.ui/icons/dlcl16/det_pane_hide.gif
deleted file mode 100644
index 0c564ffdf6f..00000000000
--- a/debug/org.eclipse.cdt.debug.ui/icons/dlcl16/det_pane_hide.gif
+++ /dev/null
Binary files differ
diff --git a/debug/org.eclipse.cdt.debug.ui/icons/dlcl16/det_pane_right.gif b/debug/org.eclipse.cdt.debug.ui/icons/dlcl16/det_pane_right.gif
deleted file mode 100644
index ce1a29cab8d..00000000000
--- a/debug/org.eclipse.cdt.debug.ui/icons/dlcl16/det_pane_right.gif
+++ /dev/null
Binary files differ
diff --git a/debug/org.eclipse.cdt.debug.ui/icons/dlcl16/det_pane_under.gif b/debug/org.eclipse.cdt.debug.ui/icons/dlcl16/det_pane_under.gif
deleted file mode 100644
index 5bffca21bc8..00000000000
--- a/debug/org.eclipse.cdt.debug.ui/icons/dlcl16/det_pane_under.gif
+++ /dev/null
Binary files differ
diff --git a/debug/org.eclipse.cdt.debug.ui/icons/dlcl16/disabled_co.gif b/debug/org.eclipse.cdt.debug.ui/icons/dlcl16/disabled_co.gif
deleted file mode 100644
index e4385098c6d..00000000000
--- a/debug/org.eclipse.cdt.debug.ui/icons/dlcl16/disabled_co.gif
+++ /dev/null
Binary files differ
diff --git a/debug/org.eclipse.cdt.debug.ui/icons/dlcl16/disassembly.gif b/debug/org.eclipse.cdt.debug.ui/icons/dlcl16/disassembly.gif
deleted file mode 100644
index bdb795821ee..00000000000
--- a/debug/org.eclipse.cdt.debug.ui/icons/dlcl16/disassembly.gif
+++ /dev/null
Binary files differ
diff --git a/debug/org.eclipse.cdt.debug.ui/icons/dlcl16/enabled_co.gif b/debug/org.eclipse.cdt.debug.ui/icons/dlcl16/enabled_co.gif
deleted file mode 100644
index 2a51b1270ce..00000000000
--- a/debug/org.eclipse.cdt.debug.ui/icons/dlcl16/enabled_co.gif
+++ /dev/null
Binary files differ
diff --git a/debug/org.eclipse.cdt.debug.ui/icons/dlcl16/instr_step.gif b/debug/org.eclipse.cdt.debug.ui/icons/dlcl16/instr_step.gif
deleted file mode 100644
index 618751d75c9..00000000000
--- a/debug/org.eclipse.cdt.debug.ui/icons/dlcl16/instr_step.gif
+++ /dev/null
Binary files differ
diff --git a/debug/org.eclipse.cdt.debug.ui/icons/dlcl16/jump_co.gif b/debug/org.eclipse.cdt.debug.ui/icons/dlcl16/jump_co.gif
deleted file mode 100644
index c030614dc5f..00000000000
--- a/debug/org.eclipse.cdt.debug.ui/icons/dlcl16/jump_co.gif
+++ /dev/null
Binary files differ
diff --git a/debug/org.eclipse.cdt.debug.ui/icons/dlcl16/load_all_symbols_co.gif b/debug/org.eclipse.cdt.debug.ui/icons/dlcl16/load_all_symbols_co.gif
deleted file mode 100644
index 83a6e2cf448..00000000000
--- a/debug/org.eclipse.cdt.debug.ui/icons/dlcl16/load_all_symbols_co.gif
+++ /dev/null
Binary files differ
diff --git a/debug/org.eclipse.cdt.debug.ui/icons/dlcl16/load_symbols_co.gif b/debug/org.eclipse.cdt.debug.ui/icons/dlcl16/load_symbols_co.gif
deleted file mode 100644
index 380ee4c05b8..00000000000
--- a/debug/org.eclipse.cdt.debug.ui/icons/dlcl16/load_symbols_co.gif
+++ /dev/null
Binary files differ
diff --git a/debug/org.eclipse.cdt.debug.ui/icons/dlcl16/memory_clear.gif b/debug/org.eclipse.cdt.debug.ui/icons/dlcl16/memory_clear.gif
deleted file mode 100644
index 02aa9463f35..00000000000
--- a/debug/org.eclipse.cdt.debug.ui/icons/dlcl16/memory_clear.gif
+++ /dev/null
Binary files differ
diff --git a/debug/org.eclipse.cdt.debug.ui/icons/dlcl16/memory_update.gif b/debug/org.eclipse.cdt.debug.ui/icons/dlcl16/memory_update.gif
deleted file mode 100644
index 42531486003..00000000000
--- a/debug/org.eclipse.cdt.debug.ui/icons/dlcl16/memory_update.gif
+++ /dev/null
Binary files differ
diff --git a/debug/org.eclipse.cdt.debug.ui/icons/dlcl16/refresh_co.gif b/debug/org.eclipse.cdt.debug.ui/icons/dlcl16/refresh_co.gif
deleted file mode 100644
index d8110697ad9..00000000000
--- a/debug/org.eclipse.cdt.debug.ui/icons/dlcl16/refresh_co.gif
+++ /dev/null
Binary files differ
diff --git a/debug/org.eclipse.cdt.debug.ui/icons/dlcl16/rem_all_co.gif b/debug/org.eclipse.cdt.debug.ui/icons/dlcl16/rem_all_co.gif
deleted file mode 100644
index fe83f93b4fe..00000000000
--- a/debug/org.eclipse.cdt.debug.ui/icons/dlcl16/rem_all_co.gif
+++ /dev/null
Binary files differ
diff --git a/debug/org.eclipse.cdt.debug.ui/icons/dlcl16/rem_co.gif b/debug/org.eclipse.cdt.debug.ui/icons/dlcl16/rem_co.gif
deleted file mode 100644
index 559e462985f..00000000000
--- a/debug/org.eclipse.cdt.debug.ui/icons/dlcl16/rem_co.gif
+++ /dev/null
Binary files differ
diff --git a/debug/org.eclipse.cdt.debug.ui/icons/dlcl16/restart.gif b/debug/org.eclipse.cdt.debug.ui/icons/dlcl16/restart.gif
deleted file mode 100644
index fe2b2c32580..00000000000
--- a/debug/org.eclipse.cdt.debug.ui/icons/dlcl16/restart.gif
+++ /dev/null
Binary files differ
diff --git a/debug/org.eclipse.cdt.debug.ui/icons/dlcl16/runtoline_co.gif b/debug/org.eclipse.cdt.debug.ui/icons/dlcl16/runtoline_co.gif
deleted file mode 100644
index ffe5c0250f6..00000000000
--- a/debug/org.eclipse.cdt.debug.ui/icons/dlcl16/runtoline_co.gif
+++ /dev/null
Binary files differ
diff --git a/debug/org.eclipse.cdt.debug.ui/icons/dlcl16/show_ascii.gif b/debug/org.eclipse.cdt.debug.ui/icons/dlcl16/show_ascii.gif
deleted file mode 100644
index 9928595e3c4..00000000000
--- a/debug/org.eclipse.cdt.debug.ui/icons/dlcl16/show_ascii.gif
+++ /dev/null
Binary files differ
diff --git a/debug/org.eclipse.cdt.debug.ui/icons/dlcl16/show_paths.gif b/debug/org.eclipse.cdt.debug.ui/icons/dlcl16/show_paths.gif
deleted file mode 100644
index db09b2a5125..00000000000
--- a/debug/org.eclipse.cdt.debug.ui/icons/dlcl16/show_paths.gif
+++ /dev/null
Binary files differ
diff --git a/debug/org.eclipse.cdt.debug.ui/icons/dlcl16/showasarray_co.gif b/debug/org.eclipse.cdt.debug.ui/icons/dlcl16/showasarray_co.gif
deleted file mode 100644
index 2c4dc6d7e0e..00000000000
--- a/debug/org.eclipse.cdt.debug.ui/icons/dlcl16/showasarray_co.gif
+++ /dev/null
Binary files differ
diff --git a/debug/org.eclipse.cdt.debug.ui/icons/dlcl16/signal0_co.gif b/debug/org.eclipse.cdt.debug.ui/icons/dlcl16/signal0_co.gif
deleted file mode 100644
index 47c0b126cb6..00000000000
--- a/debug/org.eclipse.cdt.debug.ui/icons/dlcl16/signal0_co.gif
+++ /dev/null
Binary files differ
diff --git a/debug/org.eclipse.cdt.debug.ui/icons/dlcl16/signal_co.gif b/debug/org.eclipse.cdt.debug.ui/icons/dlcl16/signal_co.gif
deleted file mode 100644
index 5feb13ff154..00000000000
--- a/debug/org.eclipse.cdt.debug.ui/icons/dlcl16/signal_co.gif
+++ /dev/null
Binary files differ
diff --git a/debug/org.eclipse.cdt.debug.ui/icons/dlcl16/tnames_co.gif b/debug/org.eclipse.cdt.debug.ui/icons/dlcl16/tnames_co.gif
deleted file mode 100644
index a8afa63486d..00000000000
--- a/debug/org.eclipse.cdt.debug.ui/icons/dlcl16/tnames_co.gif
+++ /dev/null
Binary files differ
diff --git a/debug/org.eclipse.cdt.debug.ui/icons/dlcl16/watch_globals.gif b/debug/org.eclipse.cdt.debug.ui/icons/dlcl16/watch_globals.gif
deleted file mode 100644
index f076f029ec0..00000000000
--- a/debug/org.eclipse.cdt.debug.ui/icons/dlcl16/watch_globals.gif
+++ /dev/null
Binary files differ
diff --git a/debug/org.eclipse.cdt.debug.ui/icons/dtool16/watch_exp.gif b/debug/org.eclipse.cdt.debug.ui/icons/dtool16/watch_exp.gif
deleted file mode 100644
index 38f60cd7d22..00000000000
--- a/debug/org.eclipse.cdt.debug.ui/icons/dtool16/watch_exp.gif
+++ /dev/null
Binary files differ
diff --git a/debug/org.eclipse.cdt.debug.ui/icons/elcl16/auto_refresh_co.gif b/debug/org.eclipse.cdt.debug.ui/icons/elcl16/auto_refresh_co.gif
deleted file mode 100644
index 1ab08934b46..00000000000
--- a/debug/org.eclipse.cdt.debug.ui/icons/elcl16/auto_refresh_co.gif
+++ /dev/null
Binary files differ
diff --git a/debug/org.eclipse.cdt.debug.ui/icons/elcl16/casttotype_co.gif b/debug/org.eclipse.cdt.debug.ui/icons/elcl16/casttotype_co.gif
deleted file mode 100644
index b04de7e294d..00000000000
--- a/debug/org.eclipse.cdt.debug.ui/icons/elcl16/casttotype_co.gif
+++ /dev/null
Binary files differ
diff --git a/debug/org.eclipse.cdt.debug.ui/icons/elcl16/change_reg_value_co.gif b/debug/org.eclipse.cdt.debug.ui/icons/elcl16/change_reg_value_co.gif
deleted file mode 100644
index 533148f2158..00000000000
--- a/debug/org.eclipse.cdt.debug.ui/icons/elcl16/change_reg_value_co.gif
+++ /dev/null
Binary files differ
diff --git a/debug/org.eclipse.cdt.debug.ui/icons/elcl16/collapseall.gif b/debug/org.eclipse.cdt.debug.ui/icons/elcl16/collapseall.gif
deleted file mode 100644
index a2d80a9044f..00000000000
--- a/debug/org.eclipse.cdt.debug.ui/icons/elcl16/collapseall.gif
+++ /dev/null
Binary files differ
diff --git a/debug/org.eclipse.cdt.debug.ui/icons/elcl16/debugger_console.gif b/debug/org.eclipse.cdt.debug.ui/icons/elcl16/debugger_console.gif
deleted file mode 100644
index 54f6cb7b1f7..00000000000
--- a/debug/org.eclipse.cdt.debug.ui/icons/elcl16/debugger_console.gif
+++ /dev/null
Binary files differ
diff --git a/debug/org.eclipse.cdt.debug.ui/icons/elcl16/det_pane_hide.gif b/debug/org.eclipse.cdt.debug.ui/icons/elcl16/det_pane_hide.gif
deleted file mode 100644
index 42fca3fcc9a..00000000000
--- a/debug/org.eclipse.cdt.debug.ui/icons/elcl16/det_pane_hide.gif
+++ /dev/null
Binary files differ
diff --git a/debug/org.eclipse.cdt.debug.ui/icons/elcl16/det_pane_right.gif b/debug/org.eclipse.cdt.debug.ui/icons/elcl16/det_pane_right.gif
deleted file mode 100644
index d590470446f..00000000000
--- a/debug/org.eclipse.cdt.debug.ui/icons/elcl16/det_pane_right.gif
+++ /dev/null
Binary files differ
diff --git a/debug/org.eclipse.cdt.debug.ui/icons/elcl16/det_pane_under.gif b/debug/org.eclipse.cdt.debug.ui/icons/elcl16/det_pane_under.gif
deleted file mode 100644
index dee0cbca025..00000000000
--- a/debug/org.eclipse.cdt.debug.ui/icons/elcl16/det_pane_under.gif
+++ /dev/null
Binary files differ
diff --git a/debug/org.eclipse.cdt.debug.ui/icons/elcl16/disabled_co.gif b/debug/org.eclipse.cdt.debug.ui/icons/elcl16/disabled_co.gif
deleted file mode 100644
index f6b9f8a590c..00000000000
--- a/debug/org.eclipse.cdt.debug.ui/icons/elcl16/disabled_co.gif
+++ /dev/null
Binary files differ
diff --git a/debug/org.eclipse.cdt.debug.ui/icons/elcl16/disassembly.gif b/debug/org.eclipse.cdt.debug.ui/icons/elcl16/disassembly.gif
deleted file mode 100644
index 3c64c7ad312..00000000000
--- a/debug/org.eclipse.cdt.debug.ui/icons/elcl16/disassembly.gif
+++ /dev/null
Binary files differ
diff --git a/debug/org.eclipse.cdt.debug.ui/icons/elcl16/enabled_co.gif b/debug/org.eclipse.cdt.debug.ui/icons/elcl16/enabled_co.gif
deleted file mode 100644
index 9cacb96dca9..00000000000
--- a/debug/org.eclipse.cdt.debug.ui/icons/elcl16/enabled_co.gif
+++ /dev/null
Binary files differ
diff --git a/debug/org.eclipse.cdt.debug.ui/icons/elcl16/function_brkpt_co.gif b/debug/org.eclipse.cdt.debug.ui/icons/elcl16/function_brkpt_co.gif
deleted file mode 100644
index a61b6bce3d7..00000000000
--- a/debug/org.eclipse.cdt.debug.ui/icons/elcl16/function_brkpt_co.gif
+++ /dev/null
Binary files differ
diff --git a/debug/org.eclipse.cdt.debug.ui/icons/elcl16/instr_step.gif b/debug/org.eclipse.cdt.debug.ui/icons/elcl16/instr_step.gif
deleted file mode 100644
index 5b0a586ad96..00000000000
--- a/debug/org.eclipse.cdt.debug.ui/icons/elcl16/instr_step.gif
+++ /dev/null
Binary files differ
diff --git a/debug/org.eclipse.cdt.debug.ui/icons/elcl16/jump_co.gif b/debug/org.eclipse.cdt.debug.ui/icons/elcl16/jump_co.gif
deleted file mode 100644
index b453f19ddd2..00000000000
--- a/debug/org.eclipse.cdt.debug.ui/icons/elcl16/jump_co.gif
+++ /dev/null
Binary files differ
diff --git a/debug/org.eclipse.cdt.debug.ui/icons/elcl16/load_all_symbols_co.gif b/debug/org.eclipse.cdt.debug.ui/icons/elcl16/load_all_symbols_co.gif
deleted file mode 100644
index f80969864d6..00000000000
--- a/debug/org.eclipse.cdt.debug.ui/icons/elcl16/load_all_symbols_co.gif
+++ /dev/null
Binary files differ
diff --git a/debug/org.eclipse.cdt.debug.ui/icons/elcl16/load_symbols_co.gif b/debug/org.eclipse.cdt.debug.ui/icons/elcl16/load_symbols_co.gif
deleted file mode 100644
index f326c9ed087..00000000000
--- a/debug/org.eclipse.cdt.debug.ui/icons/elcl16/load_symbols_co.gif
+++ /dev/null
Binary files differ
diff --git a/debug/org.eclipse.cdt.debug.ui/icons/elcl16/memory_clear.gif b/debug/org.eclipse.cdt.debug.ui/icons/elcl16/memory_clear.gif
deleted file mode 100644
index 1fe69881000..00000000000
--- a/debug/org.eclipse.cdt.debug.ui/icons/elcl16/memory_clear.gif
+++ /dev/null
Binary files differ
diff --git a/debug/org.eclipse.cdt.debug.ui/icons/elcl16/memory_update.gif b/debug/org.eclipse.cdt.debug.ui/icons/elcl16/memory_update.gif
deleted file mode 100644
index 593d4d05b45..00000000000
--- a/debug/org.eclipse.cdt.debug.ui/icons/elcl16/memory_update.gif
+++ /dev/null
Binary files differ
diff --git a/debug/org.eclipse.cdt.debug.ui/icons/elcl16/refresh_co.gif b/debug/org.eclipse.cdt.debug.ui/icons/elcl16/refresh_co.gif
deleted file mode 100644
index 3ca04d06ff9..00000000000
--- a/debug/org.eclipse.cdt.debug.ui/icons/elcl16/refresh_co.gif
+++ /dev/null
Binary files differ
diff --git a/debug/org.eclipse.cdt.debug.ui/icons/elcl16/rem_all_co.gif b/debug/org.eclipse.cdt.debug.ui/icons/elcl16/rem_all_co.gif
deleted file mode 100644
index 28a3785aaca..00000000000
--- a/debug/org.eclipse.cdt.debug.ui/icons/elcl16/rem_all_co.gif
+++ /dev/null
Binary files differ
diff --git a/debug/org.eclipse.cdt.debug.ui/icons/elcl16/rem_co.gif b/debug/org.eclipse.cdt.debug.ui/icons/elcl16/rem_co.gif
deleted file mode 100644
index e8d74d2d306..00000000000
--- a/debug/org.eclipse.cdt.debug.ui/icons/elcl16/rem_co.gif
+++ /dev/null
Binary files differ
diff --git a/debug/org.eclipse.cdt.debug.ui/icons/elcl16/restart.gif b/debug/org.eclipse.cdt.debug.ui/icons/elcl16/restart.gif
deleted file mode 100644
index 0ca0683909c..00000000000
--- a/debug/org.eclipse.cdt.debug.ui/icons/elcl16/restart.gif
+++ /dev/null
Binary files differ
diff --git a/debug/org.eclipse.cdt.debug.ui/icons/elcl16/runtoline_co.gif b/debug/org.eclipse.cdt.debug.ui/icons/elcl16/runtoline_co.gif
deleted file mode 100644
index a5a56e36a2e..00000000000
--- a/debug/org.eclipse.cdt.debug.ui/icons/elcl16/runtoline_co.gif
+++ /dev/null
Binary files differ
diff --git a/debug/org.eclipse.cdt.debug.ui/icons/elcl16/show_ascii.gif b/debug/org.eclipse.cdt.debug.ui/icons/elcl16/show_ascii.gif
deleted file mode 100644
index 089e9286fc6..00000000000
--- a/debug/org.eclipse.cdt.debug.ui/icons/elcl16/show_ascii.gif
+++ /dev/null
Binary files differ
diff --git a/debug/org.eclipse.cdt.debug.ui/icons/elcl16/show_parents.gif b/debug/org.eclipse.cdt.debug.ui/icons/elcl16/show_parents.gif
deleted file mode 100644
index 7cd61d03595..00000000000
--- a/debug/org.eclipse.cdt.debug.ui/icons/elcl16/show_parents.gif
+++ /dev/null
Binary files differ
diff --git a/debug/org.eclipse.cdt.debug.ui/icons/elcl16/show_paths.gif b/debug/org.eclipse.cdt.debug.ui/icons/elcl16/show_paths.gif
deleted file mode 100644
index 752c08356c9..00000000000
--- a/debug/org.eclipse.cdt.debug.ui/icons/elcl16/show_paths.gif
+++ /dev/null
Binary files differ
diff --git a/debug/org.eclipse.cdt.debug.ui/icons/elcl16/showasarray_co.gif b/debug/org.eclipse.cdt.debug.ui/icons/elcl16/showasarray_co.gif
deleted file mode 100644
index 233e52a4a10..00000000000
--- a/debug/org.eclipse.cdt.debug.ui/icons/elcl16/showasarray_co.gif
+++ /dev/null
Binary files differ
diff --git a/debug/org.eclipse.cdt.debug.ui/icons/elcl16/signal0_co.gif b/debug/org.eclipse.cdt.debug.ui/icons/elcl16/signal0_co.gif
deleted file mode 100644
index 54255052861..00000000000
--- a/debug/org.eclipse.cdt.debug.ui/icons/elcl16/signal0_co.gif
+++ /dev/null
Binary files differ
diff --git a/debug/org.eclipse.cdt.debug.ui/icons/elcl16/signal_co.gif b/debug/org.eclipse.cdt.debug.ui/icons/elcl16/signal_co.gif
deleted file mode 100644
index 34f333cdf9f..00000000000
--- a/debug/org.eclipse.cdt.debug.ui/icons/elcl16/signal_co.gif
+++ /dev/null
Binary files differ
diff --git a/debug/org.eclipse.cdt.debug.ui/icons/elcl16/tnames_co.gif b/debug/org.eclipse.cdt.debug.ui/icons/elcl16/tnames_co.gif
deleted file mode 100644
index d85759bde6d..00000000000
--- a/debug/org.eclipse.cdt.debug.ui/icons/elcl16/tnames_co.gif
+++ /dev/null
Binary files differ
diff --git a/debug/org.eclipse.cdt.debug.ui/icons/elcl16/watch_globals.gif b/debug/org.eclipse.cdt.debug.ui/icons/elcl16/watch_globals.gif
deleted file mode 100644
index 69b9988f36c..00000000000
--- a/debug/org.eclipse.cdt.debug.ui/icons/elcl16/watch_globals.gif
+++ /dev/null
Binary files differ
diff --git a/debug/org.eclipse.cdt.debug.ui/icons/elcl16/watchpoint_co.gif b/debug/org.eclipse.cdt.debug.ui/icons/elcl16/watchpoint_co.gif
deleted file mode 100644
index 0b1184d72a8..00000000000
--- a/debug/org.eclipse.cdt.debug.ui/icons/elcl16/watchpoint_co.gif
+++ /dev/null
Binary files differ
diff --git a/debug/org.eclipse.cdt.debug.ui/icons/etool16/watch_exp.gif b/debug/org.eclipse.cdt.debug.ui/icons/etool16/watch_exp.gif
deleted file mode 100644
index d37495a8391..00000000000
--- a/debug/org.eclipse.cdt.debug.ui/icons/etool16/watch_exp.gif
+++ /dev/null
Binary files differ
diff --git a/debug/org.eclipse.cdt.debug.ui/icons/obj16/abspath_obj.gif b/debug/org.eclipse.cdt.debug.ui/icons/obj16/abspath_obj.gif
deleted file mode 100644
index dcc04d7ae18..00000000000
--- a/debug/org.eclipse.cdt.debug.ui/icons/obj16/abspath_obj.gif
+++ /dev/null
Binary files differ
diff --git a/debug/org.eclipse.cdt.debug.ui/icons/obj16/addrbrkp_obj.gif b/debug/org.eclipse.cdt.debug.ui/icons/obj16/addrbrkp_obj.gif
deleted file mode 100644
index 2efd8c9e896..00000000000
--- a/debug/org.eclipse.cdt.debug.ui/icons/obj16/addrbrkp_obj.gif
+++ /dev/null
Binary files differ
diff --git a/debug/org.eclipse.cdt.debug.ui/icons/obj16/addrbrkpd_obj.gif b/debug/org.eclipse.cdt.debug.ui/icons/obj16/addrbrkpd_obj.gif
deleted file mode 100644
index 0d0692a6c02..00000000000
--- a/debug/org.eclipse.cdt.debug.ui/icons/obj16/addrbrkpd_obj.gif
+++ /dev/null
Binary files differ
diff --git a/debug/org.eclipse.cdt.debug.ui/icons/obj16/brkp_obj.gif b/debug/org.eclipse.cdt.debug.ui/icons/obj16/brkp_obj.gif
deleted file mode 100644
index 3d86f92dc79..00000000000
--- a/debug/org.eclipse.cdt.debug.ui/icons/obj16/brkp_obj.gif
+++ /dev/null
Binary files differ
diff --git a/debug/org.eclipse.cdt.debug.ui/icons/obj16/brkpd_obj.gif b/debug/org.eclipse.cdt.debug.ui/icons/obj16/brkpd_obj.gif
deleted file mode 100644
index c9e344f167d..00000000000
--- a/debug/org.eclipse.cdt.debug.ui/icons/obj16/brkpd_obj.gif
+++ /dev/null
Binary files differ
diff --git a/debug/org.eclipse.cdt.debug.ui/icons/obj16/c_app.gif b/debug/org.eclipse.cdt.debug.ui/icons/obj16/c_app.gif
deleted file mode 100644
index 504ef509f9c..00000000000
--- a/debug/org.eclipse.cdt.debug.ui/icons/obj16/c_app.gif
+++ /dev/null
Binary files differ
diff --git a/debug/org.eclipse.cdt.debug.ui/icons/obj16/cproject_obj.gif b/debug/org.eclipse.cdt.debug.ui/icons/obj16/cproject_obj.gif
deleted file mode 100644
index 3a10e712a96..00000000000
--- a/debug/org.eclipse.cdt.debug.ui/icons/obj16/cproject_obj.gif
+++ /dev/null
Binary files differ
diff --git a/debug/org.eclipse.cdt.debug.ui/icons/obj16/directory_obj.gif b/debug/org.eclipse.cdt.debug.ui/icons/obj16/directory_obj.gif
deleted file mode 100644
index 7937f33e027..00000000000
--- a/debug/org.eclipse.cdt.debug.ui/icons/obj16/directory_obj.gif
+++ /dev/null
Binary files differ
diff --git a/debug/org.eclipse.cdt.debug.ui/icons/obj16/disassembly_obj.gif b/debug/org.eclipse.cdt.debug.ui/icons/obj16/disassembly_obj.gif
deleted file mode 100644
index 546c93c42d1..00000000000
--- a/debug/org.eclipse.cdt.debug.ui/icons/obj16/disassembly_obj.gif
+++ /dev/null
Binary files differ
diff --git a/debug/org.eclipse.cdt.debug.ui/icons/obj16/exec_dbg_obj.gif b/debug/org.eclipse.cdt.debug.ui/icons/obj16/exec_dbg_obj.gif
deleted file mode 100644
index d90a29fead8..00000000000
--- a/debug/org.eclipse.cdt.debug.ui/icons/obj16/exec_dbg_obj.gif
+++ /dev/null
Binary files differ
diff --git a/debug/org.eclipse.cdt.debug.ui/icons/obj16/exec_obj.gif b/debug/org.eclipse.cdt.debug.ui/icons/obj16/exec_obj.gif
deleted file mode 100644
index 8174dade2bb..00000000000
--- a/debug/org.eclipse.cdt.debug.ui/icons/obj16/exec_obj.gif
+++ /dev/null
Binary files differ
diff --git a/debug/org.eclipse.cdt.debug.ui/icons/obj16/expression_obj.gif b/debug/org.eclipse.cdt.debug.ui/icons/obj16/expression_obj.gif
deleted file mode 100644
index 870df5c473a..00000000000
--- a/debug/org.eclipse.cdt.debug.ui/icons/obj16/expression_obj.gif
+++ /dev/null
Binary files differ
diff --git a/debug/org.eclipse.cdt.debug.ui/icons/obj16/ext_file_obj.gif b/debug/org.eclipse.cdt.debug.ui/icons/obj16/ext_file_obj.gif
deleted file mode 100644
index 16eed37220c..00000000000
--- a/debug/org.eclipse.cdt.debug.ui/icons/obj16/ext_file_obj.gif
+++ /dev/null
Binary files differ
diff --git a/debug/org.eclipse.cdt.debug.ui/icons/obj16/filenotfound_obj.gif b/debug/org.eclipse.cdt.debug.ui/icons/obj16/filenotfound_obj.gif
deleted file mode 100644
index b226e41c527..00000000000
--- a/debug/org.eclipse.cdt.debug.ui/icons/obj16/filenotfound_obj.gif
+++ /dev/null
Binary files differ
diff --git a/debug/org.eclipse.cdt.debug.ui/icons/obj16/folder_obj.gif b/debug/org.eclipse.cdt.debug.ui/icons/obj16/folder_obj.gif
deleted file mode 100644
index 03ee1dcb8e3..00000000000
--- a/debug/org.eclipse.cdt.debug.ui/icons/obj16/folder_obj.gif
+++ /dev/null
Binary files differ
diff --git a/debug/org.eclipse.cdt.debug.ui/icons/obj16/funbrkp_obj.gif b/debug/org.eclipse.cdt.debug.ui/icons/obj16/funbrkp_obj.gif
deleted file mode 100644
index 7bb768925e2..00000000000
--- a/debug/org.eclipse.cdt.debug.ui/icons/obj16/funbrkp_obj.gif
+++ /dev/null
Binary files differ
diff --git a/debug/org.eclipse.cdt.debug.ui/icons/obj16/funbrkpd_obj.gif b/debug/org.eclipse.cdt.debug.ui/icons/obj16/funbrkpd_obj.gif
deleted file mode 100644
index c27e5c749ab..00000000000
--- a/debug/org.eclipse.cdt.debug.ui/icons/obj16/funbrkpd_obj.gif
+++ /dev/null
Binary files differ
diff --git a/debug/org.eclipse.cdt.debug.ui/icons/obj16/inst_ptr.gif b/debug/org.eclipse.cdt.debug.ui/icons/obj16/inst_ptr.gif
deleted file mode 100644
index 9831329e711..00000000000
--- a/debug/org.eclipse.cdt.debug.ui/icons/obj16/inst_ptr.gif
+++ /dev/null
Binary files differ
diff --git a/debug/org.eclipse.cdt.debug.ui/icons/obj16/inst_ptr_top.gif b/debug/org.eclipse.cdt.debug.ui/icons/obj16/inst_ptr_top.gif
deleted file mode 100644
index 961873ea99c..00000000000
--- a/debug/org.eclipse.cdt.debug.ui/icons/obj16/inst_ptr_top.gif
+++ /dev/null
Binary files differ
diff --git a/debug/org.eclipse.cdt.debug.ui/icons/obj16/library_obj.gif b/debug/org.eclipse.cdt.debug.ui/icons/obj16/library_obj.gif
deleted file mode 100644
index dd994fdbe69..00000000000
--- a/debug/org.eclipse.cdt.debug.ui/icons/obj16/library_obj.gif
+++ /dev/null
Binary files differ
diff --git a/debug/org.eclipse.cdt.debug.ui/icons/obj16/library_syms_obj.gif b/debug/org.eclipse.cdt.debug.ui/icons/obj16/library_syms_obj.gif
deleted file mode 100644
index 7da17d4194e..00000000000
--- a/debug/org.eclipse.cdt.debug.ui/icons/obj16/library_syms_obj.gif
+++ /dev/null
Binary files differ
diff --git a/debug/org.eclipse.cdt.debug.ui/icons/obj16/mapentry_obj.gif b/debug/org.eclipse.cdt.debug.ui/icons/obj16/mapentry_obj.gif
deleted file mode 100644
index 7e464af9d1c..00000000000
--- a/debug/org.eclipse.cdt.debug.ui/icons/obj16/mapentry_obj.gif
+++ /dev/null
Binary files differ
diff --git a/debug/org.eclipse.cdt.debug.ui/icons/obj16/mapping_obj.gif b/debug/org.eclipse.cdt.debug.ui/icons/obj16/mapping_obj.gif
deleted file mode 100644
index 09f53f13802..00000000000
--- a/debug/org.eclipse.cdt.debug.ui/icons/obj16/mapping_obj.gif
+++ /dev/null
Binary files differ
diff --git a/debug/org.eclipse.cdt.debug.ui/icons/obj16/prj_file_obj.gif b/debug/org.eclipse.cdt.debug.ui/icons/obj16/prj_file_obj.gif
deleted file mode 100644
index c93cfe95edb..00000000000
--- a/debug/org.eclipse.cdt.debug.ui/icons/obj16/prj_file_obj.gif
+++ /dev/null
Binary files differ
diff --git a/debug/org.eclipse.cdt.debug.ui/icons/obj16/project_obj.gif b/debug/org.eclipse.cdt.debug.ui/icons/obj16/project_obj.gif
deleted file mode 100644
index 1b6c036f62d..00000000000
--- a/debug/org.eclipse.cdt.debug.ui/icons/obj16/project_obj.gif
+++ /dev/null
Binary files differ
diff --git a/debug/org.eclipse.cdt.debug.ui/icons/obj16/read_obj.gif b/debug/org.eclipse.cdt.debug.ui/icons/obj16/read_obj.gif
deleted file mode 100644
index 92034b7701d..00000000000
--- a/debug/org.eclipse.cdt.debug.ui/icons/obj16/read_obj.gif
+++ /dev/null
Binary files differ
diff --git a/debug/org.eclipse.cdt.debug.ui/icons/obj16/read_obj_disabled.gif b/debug/org.eclipse.cdt.debug.ui/icons/obj16/read_obj_disabled.gif
deleted file mode 100644
index 368a667328e..00000000000
--- a/debug/org.eclipse.cdt.debug.ui/icons/obj16/read_obj_disabled.gif
+++ /dev/null
Binary files differ
diff --git a/debug/org.eclipse.cdt.debug.ui/icons/obj16/readwrite_obj.gif b/debug/org.eclipse.cdt.debug.ui/icons/obj16/readwrite_obj.gif
deleted file mode 100644
index 917400853f5..00000000000
--- a/debug/org.eclipse.cdt.debug.ui/icons/obj16/readwrite_obj.gif
+++ /dev/null
Binary files differ
diff --git a/debug/org.eclipse.cdt.debug.ui/icons/obj16/readwrite_obj_disabled.gif b/debug/org.eclipse.cdt.debug.ui/icons/obj16/readwrite_obj_disabled.gif
deleted file mode 100644
index c4b0945c0c1..00000000000
--- a/debug/org.eclipse.cdt.debug.ui/icons/obj16/readwrite_obj_disabled.gif
+++ /dev/null
Binary files differ
diff --git a/debug/org.eclipse.cdt.debug.ui/icons/obj16/register_obj.gif b/debug/org.eclipse.cdt.debug.ui/icons/obj16/register_obj.gif
deleted file mode 100644
index a40c181bf7e..00000000000
--- a/debug/org.eclipse.cdt.debug.ui/icons/obj16/register_obj.gif
+++ /dev/null
Binary files differ
diff --git a/debug/org.eclipse.cdt.debug.ui/icons/obj16/registerd_obj.gif b/debug/org.eclipse.cdt.debug.ui/icons/obj16/registerd_obj.gif
deleted file mode 100644
index d83211b0582..00000000000
--- a/debug/org.eclipse.cdt.debug.ui/icons/obj16/registerd_obj.gif
+++ /dev/null
Binary files differ
diff --git a/debug/org.eclipse.cdt.debug.ui/icons/obj16/registergroup_obj.gif b/debug/org.eclipse.cdt.debug.ui/icons/obj16/registergroup_obj.gif
deleted file mode 100644
index aec5afc360a..00000000000
--- a/debug/org.eclipse.cdt.debug.ui/icons/obj16/registergroup_obj.gif
+++ /dev/null
Binary files differ
diff --git a/debug/org.eclipse.cdt.debug.ui/icons/obj16/registergroupd_obj.gif b/debug/org.eclipse.cdt.debug.ui/icons/obj16/registergroupd_obj.gif
deleted file mode 100644
index fe1a84bdd05..00000000000
--- a/debug/org.eclipse.cdt.debug.ui/icons/obj16/registergroupd_obj.gif
+++ /dev/null
Binary files differ
diff --git a/debug/org.eclipse.cdt.debug.ui/icons/obj16/showpaths_obj.gif b/debug/org.eclipse.cdt.debug.ui/icons/obj16/showpaths_obj.gif
deleted file mode 100644
index 6c520a78756..00000000000
--- a/debug/org.eclipse.cdt.debug.ui/icons/obj16/showpaths_obj.gif
+++ /dev/null
Binary files differ
diff --git a/debug/org.eclipse.cdt.debug.ui/icons/obj16/signal_obj.gif b/debug/org.eclipse.cdt.debug.ui/icons/obj16/signal_obj.gif
deleted file mode 100644
index 34823ea7bdd..00000000000
--- a/debug/org.eclipse.cdt.debug.ui/icons/obj16/signal_obj.gif
+++ /dev/null
Binary files differ
diff --git a/debug/org.eclipse.cdt.debug.ui/icons/obj16/var_aggr.gif b/debug/org.eclipse.cdt.debug.ui/icons/obj16/var_aggr.gif
deleted file mode 100644
index d261b688728..00000000000
--- a/debug/org.eclipse.cdt.debug.ui/icons/obj16/var_aggr.gif
+++ /dev/null
Binary files differ
diff --git a/debug/org.eclipse.cdt.debug.ui/icons/obj16/var_env.gif b/debug/org.eclipse.cdt.debug.ui/icons/obj16/var_env.gif
deleted file mode 100644
index 1466eeed8d4..00000000000
--- a/debug/org.eclipse.cdt.debug.ui/icons/obj16/var_env.gif
+++ /dev/null
Binary files differ
diff --git a/debug/org.eclipse.cdt.debug.ui/icons/obj16/var_global.gif b/debug/org.eclipse.cdt.debug.ui/icons/obj16/var_global.gif
deleted file mode 100644
index c55fc8b2a62..00000000000
--- a/debug/org.eclipse.cdt.debug.ui/icons/obj16/var_global.gif
+++ /dev/null
Binary files differ
diff --git a/debug/org.eclipse.cdt.debug.ui/icons/obj16/var_global_aggr.gif b/debug/org.eclipse.cdt.debug.ui/icons/obj16/var_global_aggr.gif
deleted file mode 100644
index 349e9344dd1..00000000000
--- a/debug/org.eclipse.cdt.debug.ui/icons/obj16/var_global_aggr.gif
+++ /dev/null
Binary files differ
diff --git a/debug/org.eclipse.cdt.debug.ui/icons/obj16/var_pointer.gif b/debug/org.eclipse.cdt.debug.ui/icons/obj16/var_pointer.gif
deleted file mode 100644
index 961873ea99c..00000000000
--- a/debug/org.eclipse.cdt.debug.ui/icons/obj16/var_pointer.gif
+++ /dev/null
Binary files differ
diff --git a/debug/org.eclipse.cdt.debug.ui/icons/obj16/var_simple.gif b/debug/org.eclipse.cdt.debug.ui/icons/obj16/var_simple.gif
deleted file mode 100644
index 9ea61ad1fc5..00000000000
--- a/debug/org.eclipse.cdt.debug.ui/icons/obj16/var_simple.gif
+++ /dev/null
Binary files differ
diff --git a/debug/org.eclipse.cdt.debug.ui/icons/obj16/var_simple_aggr.gif b/debug/org.eclipse.cdt.debug.ui/icons/obj16/var_simple_aggr.gif
deleted file mode 100644
index d45205ffc2f..00000000000
--- a/debug/org.eclipse.cdt.debug.ui/icons/obj16/var_simple_aggr.gif
+++ /dev/null
Binary files differ
diff --git a/debug/org.eclipse.cdt.debug.ui/icons/obj16/var_static.gif b/debug/org.eclipse.cdt.debug.ui/icons/obj16/var_static.gif
deleted file mode 100644
index 3028c85db5c..00000000000
--- a/debug/org.eclipse.cdt.debug.ui/icons/obj16/var_static.gif
+++ /dev/null
Binary files differ
diff --git a/debug/org.eclipse.cdt.debug.ui/icons/obj16/var_static_aggr.gif b/debug/org.eclipse.cdt.debug.ui/icons/obj16/var_static_aggr.gif
deleted file mode 100644
index 0fc482af732..00000000000
--- a/debug/org.eclipse.cdt.debug.ui/icons/obj16/var_static_aggr.gif
+++ /dev/null
Binary files differ
diff --git a/debug/org.eclipse.cdt.debug.ui/icons/obj16/var_string.gif b/debug/org.eclipse.cdt.debug.ui/icons/obj16/var_string.gif
deleted file mode 100644
index 83a3f1fcd94..00000000000
--- a/debug/org.eclipse.cdt.debug.ui/icons/obj16/var_string.gif
+++ /dev/null
Binary files differ
diff --git a/debug/org.eclipse.cdt.debug.ui/icons/obj16/vard_aggr.gif b/debug/org.eclipse.cdt.debug.ui/icons/obj16/vard_aggr.gif
deleted file mode 100644
index 6b8dd53edf5..00000000000
--- a/debug/org.eclipse.cdt.debug.ui/icons/obj16/vard_aggr.gif
+++ /dev/null
Binary files differ
diff --git a/debug/org.eclipse.cdt.debug.ui/icons/obj16/vard_pointer.gif b/debug/org.eclipse.cdt.debug.ui/icons/obj16/vard_pointer.gif
deleted file mode 100644
index 37f2fea654f..00000000000
--- a/debug/org.eclipse.cdt.debug.ui/icons/obj16/vard_pointer.gif
+++ /dev/null
Binary files differ
diff --git a/debug/org.eclipse.cdt.debug.ui/icons/obj16/vard_simple.gif b/debug/org.eclipse.cdt.debug.ui/icons/obj16/vard_simple.gif
deleted file mode 100644
index aa662b3b031..00000000000
--- a/debug/org.eclipse.cdt.debug.ui/icons/obj16/vard_simple.gif
+++ /dev/null
Binary files differ
diff --git a/debug/org.eclipse.cdt.debug.ui/icons/obj16/write_obj.gif b/debug/org.eclipse.cdt.debug.ui/icons/obj16/write_obj.gif
deleted file mode 100644
index ed686b518dc..00000000000
--- a/debug/org.eclipse.cdt.debug.ui/icons/obj16/write_obj.gif
+++ /dev/null
Binary files differ
diff --git a/debug/org.eclipse.cdt.debug.ui/icons/obj16/write_obj_disabled.gif b/debug/org.eclipse.cdt.debug.ui/icons/obj16/write_obj_disabled.gif
deleted file mode 100644
index 841a9ca8aa4..00000000000
--- a/debug/org.eclipse.cdt.debug.ui/icons/obj16/write_obj_disabled.gif
+++ /dev/null
Binary files differ
diff --git a/debug/org.eclipse.cdt.debug.ui/icons/ovr16/address_ovr.gif b/debug/org.eclipse.cdt.debug.ui/icons/ovr16/address_ovr.gif
deleted file mode 100644
index daf6d1aacf2..00000000000
--- a/debug/org.eclipse.cdt.debug.ui/icons/ovr16/address_ovr.gif
+++ /dev/null
Binary files differ
diff --git a/debug/org.eclipse.cdt.debug.ui/icons/ovr16/address_ovr_disabled.gif b/debug/org.eclipse.cdt.debug.ui/icons/ovr16/address_ovr_disabled.gif
deleted file mode 100644
index 0d46651994b..00000000000
--- a/debug/org.eclipse.cdt.debug.ui/icons/ovr16/address_ovr_disabled.gif
+++ /dev/null
Binary files differ
diff --git a/debug/org.eclipse.cdt.debug.ui/icons/ovr16/argument_ovr.gif b/debug/org.eclipse.cdt.debug.ui/icons/ovr16/argument_ovr.gif
deleted file mode 100644
index 648203b0595..00000000000
--- a/debug/org.eclipse.cdt.debug.ui/icons/ovr16/argument_ovr.gif
+++ /dev/null
Binary files differ
diff --git a/debug/org.eclipse.cdt.debug.ui/icons/ovr16/castarray_ovr.gif b/debug/org.eclipse.cdt.debug.ui/icons/ovr16/castarray_ovr.gif
deleted file mode 100644
index 86f3b7f1bf4..00000000000
--- a/debug/org.eclipse.cdt.debug.ui/icons/ovr16/castarray_ovr.gif
+++ /dev/null
Binary files differ
diff --git a/debug/org.eclipse.cdt.debug.ui/icons/ovr16/casttype_ovr.gif b/debug/org.eclipse.cdt.debug.ui/icons/ovr16/casttype_ovr.gif
deleted file mode 100644
index d7583a88636..00000000000
--- a/debug/org.eclipse.cdt.debug.ui/icons/ovr16/casttype_ovr.gif
+++ /dev/null
Binary files differ
diff --git a/debug/org.eclipse.cdt.debug.ui/icons/ovr16/conditional_ovr.gif b/debug/org.eclipse.cdt.debug.ui/icons/ovr16/conditional_ovr.gif
deleted file mode 100644
index 91749a55ba6..00000000000
--- a/debug/org.eclipse.cdt.debug.ui/icons/ovr16/conditional_ovr.gif
+++ /dev/null
Binary files differ
diff --git a/debug/org.eclipse.cdt.debug.ui/icons/ovr16/conditional_ovr_disabled.gif b/debug/org.eclipse.cdt.debug.ui/icons/ovr16/conditional_ovr_disabled.gif
deleted file mode 100644
index 9475a1272ea..00000000000
--- a/debug/org.eclipse.cdt.debug.ui/icons/ovr16/conditional_ovr_disabled.gif
+++ /dev/null
Binary files differ
diff --git a/debug/org.eclipse.cdt.debug.ui/icons/ovr16/error_ovr.gif b/debug/org.eclipse.cdt.debug.ui/icons/ovr16/error_ovr.gif
deleted file mode 100644
index 119dcccd5a7..00000000000
--- a/debug/org.eclipse.cdt.debug.ui/icons/ovr16/error_ovr.gif
+++ /dev/null
Binary files differ
diff --git a/debug/org.eclipse.cdt.debug.ui/icons/ovr16/function_ovr.gif b/debug/org.eclipse.cdt.debug.ui/icons/ovr16/function_ovr.gif
deleted file mode 100644
index d3dd2496297..00000000000
--- a/debug/org.eclipse.cdt.debug.ui/icons/ovr16/function_ovr.gif
+++ /dev/null
Binary files differ
diff --git a/debug/org.eclipse.cdt.debug.ui/icons/ovr16/function_ovr_disabled.gif b/debug/org.eclipse.cdt.debug.ui/icons/ovr16/function_ovr_disabled.gif
deleted file mode 100644
index b35d73a1290..00000000000
--- a/debug/org.eclipse.cdt.debug.ui/icons/ovr16/function_ovr_disabled.gif
+++ /dev/null
Binary files differ
diff --git a/debug/org.eclipse.cdt.debug.ui/icons/ovr16/global_ovr.gif b/debug/org.eclipse.cdt.debug.ui/icons/ovr16/global_ovr.gif
deleted file mode 100644
index b6158f0fa1d..00000000000
--- a/debug/org.eclipse.cdt.debug.ui/icons/ovr16/global_ovr.gif
+++ /dev/null
Binary files differ
diff --git a/debug/org.eclipse.cdt.debug.ui/icons/ovr16/installed_ovr.gif b/debug/org.eclipse.cdt.debug.ui/icons/ovr16/installed_ovr.gif
deleted file mode 100644
index 899610a858b..00000000000
--- a/debug/org.eclipse.cdt.debug.ui/icons/ovr16/installed_ovr.gif
+++ /dev/null
Binary files differ
diff --git a/debug/org.eclipse.cdt.debug.ui/icons/ovr16/installed_ovr_disabled.gif b/debug/org.eclipse.cdt.debug.ui/icons/ovr16/installed_ovr_disabled.gif
deleted file mode 100644
index 15cf84fd1d1..00000000000
--- a/debug/org.eclipse.cdt.debug.ui/icons/ovr16/installed_ovr_disabled.gif
+++ /dev/null
Binary files differ
diff --git a/debug/org.eclipse.cdt.debug.ui/icons/ovr16/warning_ovr.gif b/debug/org.eclipse.cdt.debug.ui/icons/ovr16/warning_ovr.gif
deleted file mode 100644
index ee2dac4a90a..00000000000
--- a/debug/org.eclipse.cdt.debug.ui/icons/ovr16/warning_ovr.gif
+++ /dev/null
Binary files differ
diff --git a/debug/org.eclipse.cdt.debug.ui/icons/view16/disassembly_view.gif b/debug/org.eclipse.cdt.debug.ui/icons/view16/disassembly_view.gif
deleted file mode 100644
index 66225ec45d0..00000000000
--- a/debug/org.eclipse.cdt.debug.ui/icons/view16/disassembly_view.gif
+++ /dev/null
Binary files differ
diff --git a/debug/org.eclipse.cdt.debug.ui/icons/view16/memory_view.gif b/debug/org.eclipse.cdt.debug.ui/icons/view16/memory_view.gif
deleted file mode 100644
index e9df7b871bc..00000000000
--- a/debug/org.eclipse.cdt.debug.ui/icons/view16/memory_view.gif
+++ /dev/null
Binary files differ
diff --git a/debug/org.eclipse.cdt.debug.ui/icons/view16/modules_view.gif b/debug/org.eclipse.cdt.debug.ui/icons/view16/modules_view.gif
deleted file mode 100644
index cb55e33b5eb..00000000000
--- a/debug/org.eclipse.cdt.debug.ui/icons/view16/modules_view.gif
+++ /dev/null
Binary files differ
diff --git a/debug/org.eclipse.cdt.debug.ui/icons/view16/signals_view.gif b/debug/org.eclipse.cdt.debug.ui/icons/view16/signals_view.gif
deleted file mode 100644
index 34823ea7bdd..00000000000
--- a/debug/org.eclipse.cdt.debug.ui/icons/view16/signals_view.gif
+++ /dev/null
Binary files differ
diff --git a/debug/org.eclipse.cdt.debug.ui/icons/wizban/addsrcloc_wiz.gif b/debug/org.eclipse.cdt.debug.ui/icons/wizban/addsrcloc_wiz.gif
deleted file mode 100644
index 9dec82e9f0e..00000000000
--- a/debug/org.eclipse.cdt.debug.ui/icons/wizban/addsrcloc_wiz.gif
+++ /dev/null
Binary files differ
diff --git a/debug/org.eclipse.cdt.debug.ui/icons/wizban/mapentry_wiz.gif b/debug/org.eclipse.cdt.debug.ui/icons/wizban/mapentry_wiz.gif
deleted file mode 100644
index aa86d909c35..00000000000
--- a/debug/org.eclipse.cdt.debug.ui/icons/wizban/mapentry_wiz.gif
+++ /dev/null
Binary files differ
diff --git a/debug/org.eclipse.cdt.debug.ui/icons/wizban/mapping_wiz.gif b/debug/org.eclipse.cdt.debug.ui/icons/wizban/mapping_wiz.gif
deleted file mode 100644
index 17204c333ae..00000000000
--- a/debug/org.eclipse.cdt.debug.ui/icons/wizban/mapping_wiz.gif
+++ /dev/null
Binary files differ
diff --git a/debug/org.eclipse.cdt.debug.ui/plugin.properties b/debug/org.eclipse.cdt.debug.ui/plugin.properties
deleted file mode 100644
index 50cef95140e..00000000000
--- a/debug/org.eclipse.cdt.debug.ui/plugin.properties
+++ /dev/null
@@ -1,141 +0,0 @@
-###############################################################################
-# Copyright (c) 2000, 2006 QNX Software Systems and others.
-# All rights reserved. This program and the accompanying materials
-# are made available under the terms of the Eclipse Public License v1.0
-# which accompanies this distribution, and is available at
-# http://www.eclipse.org/legal/epl-v10.html
-#
-# Contributors:
-# QNX Software Systems - Initial API and implementation
-###############################################################################
-
-pluginName=C/C++ Development Tools Debugger UI
-providerName=Eclipse.org
-
-MemoryView.name=Memory
-ModulesView.name=Modules
-SignalsView.name=Signals
-
-CDebuggerPage.name=C Debugger UI Page
-MemoryPreferencePage.name=Memory View
-CDebugPreferencePage.name=Debug
-SourcePreferencePage.name=Common Source Lookup Path
-DebuggerTypesPreferencePage.name=Debugger Types
-
-RunMenu.label=&Run
-DebugActionSet.label=C/C++ Debug
-
-RestartAction.label=Restart
-RestartAction.tooltip=Restart
-
-ToggleInstructionStepModeAction.label=Instruction Stepping Mode
-ToggleInstructionStepModeAction.tooltip=Instruction Stepping Mode
-
-ShowDebuggerConsoleAction.label=Show Debugger Console
-ShowDebuggerConsoleAction.tooltip=Show Debugger Console On Target Selection
-
-AddBreakpoint.label=Toggle &Breakpoint
-EnableBreakpoint.label=&Toggle Breakpoint Enabled
-BreakpointProperties.label=Breakpoint P&roperties...
-ManageFunctionBreakpointAction.label=Toggle Breakpoint
-ManageFunctionBreakpointAction.tooltip=Toggle Function/Method Breakpoint
-ToggleWatchpointAction.label=Toggle Watchpoint
-ToggleWatchpointAction.tooltip=Toggle Variable Watchpoint
-BreakpointPropertiesAction.label=P&roperties...
-AddExpressionAction.label=Add Watch Expression...
-RunToLineAction.label=Run To &Line
-JumpToLineAction.label=Resume At Li&ne
-GlobalJumpToLineAction.label=Resume At Li&ne (C/C++)
-ShowFullPathsAction.label=Show Full &Paths
-ShowFullPathsAction.tooltip=Show Full Paths
-AddWatchpoint.label=Add Watchpoint (C/C++)...
-AddWatchpoint.tooltip=Add Watchpoint (C/C++)
-
-AddGlobalsAction.label=Add Global Variables...
-AddGlobalsAction.tooltip=Add Global Variables
-RemoveGlobalsAction.label=Remove Global Variables
-RemoveGlobalsAction.tooltip=Remove Selected Global Variables
-RemoveAllGlobalsAction.label=Remove All Global Variables
-RemoveAllGlobalsAction.tooltip=Remove All Global Variables
-
-CVariableFormatMenu.label=Format
-HexVariableFormatAction.label=Hexadecimal
-DecVariableFormatAction.label=Decimal
-NaturalVariableFormatAction.label=Natural
-BinaryVariableFormatAction.label=Binary
-
-CDebugActionGroup.name=C/C++ Debug
-
-LoadSymbolsAction.label=Load Symbols
-LoadSymbolsAction.tooltip=Load Modules's Symbols
-LoadSymbolsForAllAction.label=Load Symbols For All
-LoadSymbolsForAllAction.tooltip=Load Symbols For All Modules
-
-SignalAction.label=Resume With Signal
-SignalAction.tooltip=Resume With Signal
-SignalZeroAction.label=Resume Without Signal
-SignalZeroAction.tooltip=Resume Ignoring Signal
-SignalPropertiesAction.label=Signal Properties...
-SignalPropertiesAction.tooltip=Open Signal Properties Dialog
-
-CastToTypeAction.label=Cast To Type...
-CastToTypeAction.tooltip=Cast Varibale To Type
-RestoreDefaultTypeAction.label=Restore Original Type
-RestoreDefaultTypeAction.tooltip=Restore Original Type Of Variable
-CastToArrayAction.label=Display As Array...
-CastToArrayAction.tooltip=Display Variable As Array
-
-EnableVariablesAction.label=Enable
-EnableVariablesAction.tooltip=Enable Selected Variables
-
-DisableVariablesAction.label=Disable
-DisableVariablesAction.tooltip=Disable Selected Variables
-
-DefaultSourceLocator.name=Default C/C++ Source Locator
-OldDefaultSourceLocator.name=Default C/C++ Source Locator (old)
-
-BreakpointMarkerPreference.label=Breakpoints
-
-DisassemblyView.name=Disassembly
-DisassemblyCurrentInstructionPointer=Disassembly Current Instruction Pointer
-DisassemblySecondaryInstructionPointer=Disassembly Secondary Instruction Pointer
-
-DebugPresentation.label=C/C++ Debug Appearance
-DisassemblySourceLineColor.label=Disassembly Source Line Text Color
-DisassemblySourceLineColor.description=The color used in the Disassembly view for source lines.
-DisassemblyFontDefinition.label=Disassembly View Text Font
-DisassemblyFontDefinition.description=The text font used in the Disassembly view.
-
-DebugTextHover.label=Debugger
-DebugTextHover.description=Shows the value of the expression selected in the debug perspective.
-
-DebuggingCContext.name=Debugging C/C++
-DebuggingCContext.description=Debugging C/C++ Programs
-
-CommonBreakpointPage.label=Common
-FilteringBreakpointPage.label=Filtering
-CommonSignalPage.label=Common
-CommonModulePage.label=Common
-
-ModulesDetailPaneFontDefinition.label=Modules View Detail Pane Text Font
-ModulesDetailPaneFontDefinition.description=The text font used in the detail pane of the Modules view.
-
-CollapseAllModulesAction.label=Collapse All
-CollapseAllModulesAction.tooltip=Collapse All
-
-ModulePropertiesAction.label=Properties...
-ModulePropertiesAction.tooltip=Open Module Properties Dialog
-
-AddRegisterGroupAction.label=Add Register Group
-AddRegisterGroupAction.tooltip=Add Register Group
-RemoveRegisterGroupAction.label=Remove Register Group
-RemoveRegisterGroupAction.tooltip=Remove Register Group
-EditRegisterGroupAction.label=Edit Register Group
-EditRegisterGroupAction.tooltip=Edit Register Group
-RestoredefaultRegisterGroupsAction.label=Restore Default Register Groups
-RestoredefaultRegisterGroupsAction.tooltip=Restore Default Register Groups
-
-# Import Executable
-importCPPCategory.name=C/C++
-importExecutableWizard.name=C/C++ Executable
-importExecutableWizard.description=Imports a C/C++ executable file. Will create a project and launch configuration for debugging.
diff --git a/debug/org.eclipse.cdt.debug.ui/plugin.xml b/debug/org.eclipse.cdt.debug.ui/plugin.xml
deleted file mode 100644
index bcdfc69ef2a..00000000000
--- a/debug/org.eclipse.cdt.debug.ui/plugin.xml
+++ /dev/null
@@ -1,1287 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<?eclipse version="3.0"?>
-<plugin>
-
- <extension-point id="CDebuggerPage" name="%CDebuggerPage" schema="schema/CDebuggerPage.exsd"/>
-
-<!-- Extensions -->
- <extension
- point="org.eclipse.debug.ui.debugModelPresentations">
- <debugModelPresentation
- class="org.eclipse.cdt.debug.internal.ui.CDebugModelPresentation"
- detailsViewerConfiguration="org.eclipse.cdt.debug.internal.ui.DetailsViewerConfiguration"
- id="org.eclipse.cdt.debug.core">
- </debugModelPresentation>
- </extension>
- <extension
- point="org.eclipse.ui.views">
- <view
- name="%SignalsView.name"
- icon="icons/view16/signals_view.gif"
- category="org.eclipse.debug.ui"
- class="org.eclipse.cdt.debug.internal.ui.views.signals.SignalsView"
- id="org.eclipse.cdt.debug.ui.SignalsView">
- </view>
- <view
- name="%DisassemblyView.name"
- icon="icons/view16/disassembly_view.gif"
- category="org.eclipse.debug.ui"
- class="org.eclipse.cdt.debug.internal.ui.views.disassembly.DisassemblyView"
- id="org.eclipse.cdt.debug.ui.DisassemblyView">
- </view>
- <view
- icon="icons/view16/modules_view.gif"
- class="org.eclipse.cdt.debug.internal.ui.views.modules.ModulesView"
- category="org.eclipse.debug.ui"
- name="%ModulesView.name"
- id="org.eclipse.cdt.debug.ui.ModulesView"/>
- </extension>
- <extension
- point="org.eclipse.ui.perspectiveExtensions">
- <perspectiveExtension
- targetID="org.eclipse.debug.ui.DebugPerspective">
- <view
- relative="org.eclipse.debug.ui.VariableView"
- visible="false"
- relationship="stack"
- id="org.eclipse.cdt.debug.ui.SignalsView">
- </view>
- <viewShortcut
- id="org.eclipse.cdt.debug.ui.SignalsView">
- </viewShortcut>
- <viewShortcut
- id="org.eclipse.debug.ui.RegisterView">
- </viewShortcut>
- <viewShortcut
- id="org.eclipse.debug.ui.MemoryView">
- </viewShortcut>
- <view
- relative="org.eclipse.ui.views.ContentOutline"
- visible="false"
- relationship="stack"
- id="org.eclipse.cdt.debug.ui.DisassemblyView">
- </view>
- <viewShortcut
- id="org.eclipse.cdt.debug.ui.DisassemblyView">
- </viewShortcut>
- <view
- visible="false"
- relative="org.eclipse.debug.ui.VariableView"
- relationship="stack"
- id="org.eclipse.cdt.debug.ui.ModulesView">
- </view>
- <viewShortcut
- id="org.eclipse.cdt.debug.ui.ModulesView">
- </viewShortcut>
- <view
- visible="true"
- relative="org.eclipse.ui.console.ConsoleView"
- relationship="stack"
- id="org.eclipse.ui.views.ProblemView">
- </view>
- <viewShortcut
- id="org.eclipse.ui.views.ProblemView">
- </viewShortcut>
- <actionSet
- id="org.eclipse.cdt.debug.ui.debugActionSet">
- </actionSet>
- </perspectiveExtension>
- </extension>
- <extension
- point="org.eclipse.ui.preferencePages">
- <page
- name="%CDebugPreferencePage.name"
- category="org.eclipse.cdt.ui.preferences.CPluginPreferencePage"
- class="org.eclipse.cdt.debug.internal.ui.preferences.CDebugPreferencePage"
- id="org.eclipse.cdt.debug.ui.CDebugPreferencePage">
- </page>
- <page
- name="%SourcePreferencePage.name"
- category="org.eclipse.cdt.debug.ui.CDebugPreferencePage"
- class="org.eclipse.cdt.debug.internal.ui.preferences.SourcePreferencePage"
- id="org.eclipse.cdt.debug.ui.SourcePreferencePage">
- </page>
- <page
- category="org.eclipse.cdt.debug.ui.CDebugPreferencePage"
- class="org.eclipse.cdt.debug.internal.ui.preferences.DebuggerTypesPage"
- id="org.eclipse.cdt.debug.ui.DebuggerTypesPreferencePage"
- name="%DebuggerTypesPreferencePage.name"/>
- </extension>
- <extension
- point="org.eclipse.ui.actionSets">
- <actionSet
- label="%DebugActionSet.label"
- id="org.eclipse.cdt.debug.ui.debugActionSet">
- <menu
- label="%RunMenu.label"
- path="additions"
- id="org.eclipse.ui.run">
- </menu>
- <action
- id="org.eclipse.cdt.debug.ui.actions.ResumeAtLine"
- class="org.eclipse.cdt.debug.internal.ui.actions.RetargetResumeAtLineAction"
- disabledIcon="icons/dlcl16/jump_co.gif"
- icon="icons/elcl16/jump_co.gif"
- helpContextId="jump_to_line_action_context"
- label="%GlobalJumpToLineAction.label"
- menubarPath="org.eclipse.ui.run/stepGroup">
- </action>
- <action
- id="org.eclipse.cdt.debug.internal.ui.actions.SignalZeroWorkbenchActionDelegate"
- class="org.eclipse.cdt.debug.internal.ui.actions.SignalZeroWorkbenchActionDelegate"
- disabledIcon="icons/dlcl16/signal0_co.gif"
- icon="icons/elcl16/signal0_co.gif"
- helpContextId="resume_without_signal_action_context"
- label="%SignalZeroAction.label"
- menubarPath="org.eclipse.ui.run/stepGroup"
- tooltip="%SignalZeroAction.tooltip">
- </action>
- <action
- id="org.eclipse.cdt.debug.ui.internal.actions.RestartActionDelegate"
- class="org.eclipse.cdt.debug.internal.ui.actions.RestartActionDelegate"
- disabledIcon="icons/dlcl16/restart.gif"
- icon="icons/elcl16/restart.gif"
- helpContextId="restart_action_context"
- label="%RestartAction.label"
- menubarPath="org.eclipse.ui.run/stepGroup">
- </action>
- </actionSet>
- </extension>
- <extension
- point="org.eclipse.ui.popupMenus">
- <viewerContribution
- targetID="org.eclipse.debug.ui.DebugView"
- id="org.eclipse.cdt.debug.ui.debugview.popupMenu">
- <action
- label="%RestartAction.label"
- icon="icons/elcl16/restart.gif"
- helpContextId="restart_action_context"
- class="org.eclipse.cdt.debug.internal.ui.actions.RestartActionDelegate"
- menubarPath="stepGroup"
- enablesFor="1"
- id="org.eclipse.cdt.debug.internal.ui.actions.RestartActionDelegate">
- <selection class="org.eclipse.cdt.debug.core.model.IRestart"/>
- </action>
- <action
- state="false"
- style="toggle"
- id="org.eclipse.cdt.debug.internal.ui.actions.ToggleInstructionStepModeActionDelegate"
- class="org.eclipse.cdt.debug.internal.ui.actions.ToggleInstructionStepModeActionDelegate"
- enablesFor="1"
- icon="icons/elcl16/instr_step.gif"
- helpContextId="toggle_instruction_step_mode_action_context"
- label="%ToggleInstructionStepModeAction.label"
- menubarPath="renderGroup"
- tooltip="%ToggleInstructionStepModeAction.tooltip">
- <enablement>
- <pluginState
- value="activated"
- id="org.eclipse.cdt.debug.ui">
- </pluginState>
- </enablement>
- </action>
- <action
- helpContextId="signal_zero_action_context"
- enablesFor="1"
- label="%SignalZeroAction.label"
- tooltip="%SignalZeroAction.tooltip"
- icon="icons/elcl16/signal0_co.gif"
- class="org.eclipse.cdt.debug.internal.ui.actions.SignalZeroWorkbenchActionDelegate"
- menubarPath="threadGroup"
- id="org.eclipse.cdt.debug.internal.ui.actions.SignalZeroWorkbenchActionDelegate">
- <selection class="org.eclipse.cdt.debug.core.model.IResumeWithoutSignal"/>
- </action>
- </viewerContribution>
- <viewerContribution
- targetID="#CEditorRulerContext"
- id="org.eclipse.cdt.debug.ui.CEditorRulerActions">
- <action
- label="%BreakpointProperties.label"
- helpContextId="breakpoint_properties_action_context"
- class="org.eclipse.cdt.debug.internal.ui.actions.CBreakpointPropertiesRulerActionDelegate"
- menubarPath="debug"
- id="org.eclipse.cdt.debug.internal.ui.actions.CBreakpointPropertiesRulerActionDelegate">
- </action>
- <action
- label="%EnableBreakpoint.label"
- helpContextId="enable_disable_breakpoint_action_context"
- class="org.eclipse.cdt.debug.internal.ui.actions.EnableDisableBreakpointRulerActionDelegate"
- menubarPath="debug"
- id="org.eclipse.cdt.debug.internal.ui.actions.EnableDisableBreakpointRulerActionDelegate">
- </action>
- <action
- label="%AddBreakpoint.label"
- helpContextId="manage_breakpoint_action_context"
- class="org.eclipse.cdt.debug.internal.ui.actions.ManageBreakpointRulerActionDelegate"
- menubarPath="debug"
- id="org.eclipse.cdt.debug.internal.ui.actions.ManageBreakpointRulerActionDelegate">
- </action>
- </viewerContribution>
- <viewerContribution
- targetID="#CEditorContext"
- id="org.eclipse.cdt.debug.ui.CEditorPopupActions">
- <visibility>
- <and>
- <systemProperty
- value="true"
- name="org.eclipse.cdt.debug.ui.debuggerActive"/>
- <objectClass name="org.eclipse.jface.text.ITextSelection"/>
- </and>
- </visibility>
- <action
- label="%AddExpressionAction.label"
- icon="icons/etool16/watch_exp.gif"
- helpContextId="add_expression_action_context"
- class="org.eclipse.cdt.debug.internal.ui.actions.AddExpressionEditorActionDelegate"
- menubarPath="additions"
- id="org.eclipse.cdt.debug.internal.ui.actions.AddExpressionActionDelegate">
- </action>
- <action
- label="%JumpToLineAction.label"
- icon="icons/elcl16/jump_co.gif"
- helpContextId="jump_to_line_action_context"
- class="org.eclipse.cdt.debug.internal.ui.actions.ResumeAtLineActionDelegate"
- menubarPath="additions"
- enablesFor="1"
- id="org.eclipse.cdt.debug.internal.ui.actions.JumpToLineActionDelegate">
- </action>
- <action
- helpContextId="run_to_line_action_context"
- label="%RunToLineAction.label"
- definitionId="org.eclipse.debug.ui.commands.RunToLine"
- class="org.eclipse.debug.ui.actions.RunToLineActionDelegate"
- menubarPath="additions"
- id="org.eclipse.cdt.debug.ui.actions.popup.RunToLine">
- </action>
- </viewerContribution>
- <objectContribution
- objectClass="org.eclipse.cdt.debug.core.model.ICBreakpoint"
- id="org.eclipse.cdt.debug.ui.CBreakpointActions">
- <action
- label="%BreakpointPropertiesAction.label"
- helpContextId="breakpoint_properties_action_context"
- class="org.eclipse.cdt.debug.internal.ui.actions.CBreakpointPropertiesAction"
- menubarPath="additions"
- enablesFor="1"
- id="org.eclipse.cdt.debug.internal.ui.actions.CBreakpointPropertiesAction">
- </action>
- </objectContribution>
- <viewerContribution
- targetID="org.eclipse.debug.ui.BreakpointView"
- id="org.eclipse.cdt.debug.ui.breakpointview.popupMenu">
- <action
- class="org.eclipse.cdt.debug.internal.ui.actions.AddWatchpointActionDelegate"
- helpContextId="add_watchpoint_action_context"
- icon="icons/elcl16/watchpoint_co.gif"
- id="org.eclipse.cdt.debug.ui.addWatchpoint"
- label="%AddWatchpoint.label"
- menubarPath="additions"
- tooltip="%AddWatchpoint.tooltip"/>
- </viewerContribution>
- <viewerContribution
- targetID="#ASMEditorRulerContext"
- id="org.eclipse.cdt.debug.ui.AsmEditorRulerActions">
-<!--
- <action
- label="%RunToLineAction.label"
- icon="icons/elcl16/runtoline_co.gif"
- helpContextId="run_to_line_action_context"
- class="org.eclipse.cdt.debug.internal.ui.actions.RunToLineRulerActionDelegate"
- menubarPath="debug"
- id="org.eclipse.cdt.debug.internal.ui.actions.RunToLineRulerActionDelegate">
- </action>
--->
- <action
- label="%BreakpointProperties.label"
- helpContextId="breakpoint_properties_action_context"
- class="org.eclipse.cdt.debug.internal.ui.actions.CBreakpointPropertiesRulerActionDelegate"
- menubarPath="debug"
- id="org.eclipse.cdt.debug.internal.ui.actions.CBreakpointPropertiesRulerActionDelegate">
- </action>
- <action
- label="%EnableBreakpoint.label"
- helpContextId="enable_disable_breakpoint_action_context"
- class="org.eclipse.cdt.debug.internal.ui.actions.EnableDisableBreakpointRulerActionDelegate"
- menubarPath="debug"
- id="org.eclipse.cdt.debug.internal.ui.actions.EnableDisableBreakpointRulerActionDelegate">
- </action>
- <action
- label="%AddBreakpoint.label"
- helpContextId="manage_breakpoint_action_context"
- class="org.eclipse.cdt.debug.internal.ui.actions.ManageBreakpointRulerActionDelegate"
- menubarPath="debug"
- id="org.eclipse.cdt.debug.internal.ui.actions.ManageBreakpointRulerActionDelegate">
- </action>
- </viewerContribution>
- <viewerContribution
- targetID="#ASMEditorContext"
- id="org.eclipse.cdt.debug.ui.AsmEditorPopupActions">
- <visibility>
- <and>
- <objectClass name="org.eclipse.jface.text.ITextSelection"/>
- <systemProperty
- value="true"
- name="org.eclipse.cdt.debug.ui.debuggerActive"/>
- </and>
- </visibility>
- <action
- label="%AddExpressionAction.label"
- icon="icons/etool16/watch_exp.gif"
- helpContextId="add_expression_action_context"
- class="org.eclipse.cdt.debug.internal.ui.actions.AddExpressionEditorActionDelegate"
- menubarPath="additions"
- id="org.eclipse.cdt.debug.internal.ui.actions.AddExpressionActionDelegate">
- </action>
- <action
- label="%JumpToLineAction.label"
- icon="icons/elcl16/jump_co.gif"
- helpContextId="jump_to_line_action_context"
- class="org.eclipse.cdt.debug.internal.ui.actions.ResumeAtLineActionDelegate"
- menubarPath="additions"
- enablesFor="1"
- id="org.eclipse.cdt.debug.internal.ui.actions.JumpToLineActionDelegate">
- </action>
- <action
- helpContextId="run_to_line_action_context"
- label="%RunToLineAction.label"
- definitionId="org.eclipse.debug.ui.commands.RunToLine"
- class="org.eclipse.debug.ui.actions.RunToLineActionDelegate"
- menubarPath="additions"
- id="org.eclipse.cdt.debug.ui.actions.popup.RunToLine">
- </action>
- </viewerContribution>
- <objectContribution
- objectClass="org.eclipse.cdt.debug.core.model.ICVariable"
- id="org.eclipse.cdt.debug.ui.CVariableActions">
- <menu
- label="%CVariableFormatMenu.label"
- path="renderGroup"
- id="org.eclipse.cdt.debug.ui.CVariableFormatMenu">
- <separator
- name="formatGroup">
- </separator>
- </menu>
- <action
- label="%HexVariableFormatAction.label"
- helpContextId="hexadecimal_variable_format_action_context"
- class="org.eclipse.cdt.debug.internal.ui.actions.HexVariableFormatActionDelegate"
- menubarPath="org.eclipse.cdt.debug.ui.CVariableFormatMenu/formatGroup"
- enablesFor="1"
- id="org.eclipse.cdt.debug.internal.ui.actions.HexVariableFormatActionDelegate">
- </action>
- <action
- label="%DecVariableFormatAction.label"
- helpContextId="decimal_variable_format_action_context"
- class="org.eclipse.cdt.debug.internal.ui.actions.DecVariableFormatActionDelegate"
- menubarPath="org.eclipse.cdt.debug.ui.CVariableFormatMenu/formatGroup"
- enablesFor="1"
- id="org.eclipse.cdt.debug.internal.ui.actions.DecVariableFormatActionDelegate">
- </action>
- <action
- label="%NaturalVariableFormatAction.label"
- helpContextId="naturall_variable_format_action_context"
- class="org.eclipse.cdt.debug.internal.ui.actions.NaturalVariableFormatActionDelegate"
- menubarPath="org.eclipse.cdt.debug.ui.CVariableFormatMenu/formatGroup"
- enablesFor="1"
- id="org.eclipse.cdt.debug.internal.ui.actions.NaturalVariableFormatActionDelegate">
- </action>
- <action
- class="org.eclipse.cdt.debug.internal.ui.actions.BinaryVariableFormatActionDelegate"
- enablesFor="1"
- helpContextId="binary_variable_format_action_context"
- id="org.eclipse.cdt.debug.internal.ui.actions.BinaryVariableFormatActionDelegate"
- label="%BinaryVariableFormatAction.label"
- menubarPath="org.eclipse.cdt.debug.ui.CVariableFormatMenu/formatGroup"/>
- </objectContribution>
- <objectContribution
- objectClass="org.eclipse.cdt.debug.core.model.ICSignal"
- id="org.eclipse.cdt.debug.ui.SignalActions">
- <action
- label="%SignalAction.label"
- icon="icons/elcl16/signal_co.gif"
- helpContextId="signal_action_context"
- class="org.eclipse.cdt.debug.internal.ui.actions.SignalActionDelegate"
- tooltip="%SignalAction.tooltip"
- menubarPath="additions"
- enablesFor="1"
- id="org.eclipse.cdt.debug.internal.ui.actions.SignalActionDelegate">
- <enablement>
- <pluginState
- value="activated"
- id="org.eclipse.cdt.debug.ui">
- </pluginState>
- </enablement>
- </action>
- <action
- label="%SignalPropertiesAction.label"
- style="pulldown"
- helpContextId="signal_properties_action_context"
- class="org.eclipse.cdt.debug.internal.ui.actions.SignalPropertiesActionDelegate"
- tooltip="%SignalPropertiesAction.tooltip"
- enablesFor="1"
- id="org.eclipse.cdt.debug.ui.SignalPropertiesAction">
- <enablement>
- <pluginState
- value="activated"
- id="org.eclipse.cdt.debug.ui">
- </pluginState>
- </enablement>
- </action>
- </objectContribution>
- <objectContribution
- objectClass="org.eclipse.cdt.debug.core.model.IResumeWithoutSignal"
- id="org.eclipse.cdt.debug.ui.DebugTargetActions">
- </objectContribution>
- <objectContribution
- objectClass="org.eclipse.cdt.debug.core.model.ICastToType"
- id="org.eclipse.cdt.debug.ui.VariableActions">
- <action
- label="%RestoreDefaultTypeAction.label"
- helpContextId="restore_default_type_action_context"
- tooltip="%RestoreDefaultTypeAction.tooltip"
- class="org.eclipse.cdt.debug.internal.ui.actions.RestoreDefaultTypeActionDelegate"
- menubarPath="variableGroup"
- enablesFor="1"
- id="org.eclipse.cdt.debug.internal.ui.actions.RestoreDefaultTypeActionDelegate">
- <enablement>
- <pluginState
- value="activated"
- id="org.eclipse.cdt.debug.ui">
- </pluginState>
- </enablement>
- </action>
- <action
- label="%CastToTypeAction.label"
- icon="icons/elcl16/casttotype_co.gif"
- helpContextId="cast_to_type_action_context"
- tooltip="%CastToTypeAction.tooltip"
- class="org.eclipse.cdt.debug.internal.ui.actions.CastToTypeActionDelegate"
- menubarPath="variableGroup"
- enablesFor="1"
- id="org.eclipse.cdt.debug.internal.ui.actions.CastToTypeActionDelegate">
- <enablement>
- <pluginState
- value="activated"
- id="org.eclipse.cdt.debug.ui">
- </pluginState>
- </enablement>
- </action>
- <action
- label="%CastToArrayAction.label"
- icon="icons/elcl16/showasarray_co.gif"
- helpContextId="cast_to_array_action_context"
- tooltip="%CastToArrayAction.tooltip"
- class="org.eclipse.cdt.debug.internal.ui.actions.CastToArrayActionDelegate"
- menubarPath="variableGroup"
- enablesFor="1"
- id="org.eclipse.cdt.debug.internal.ui.actions.CastToArrayActionDelegate">
- <enablement>
- <pluginState
- value="activated"
- id="org.eclipse.cdt.debug.ui">
- </pluginState>
- </enablement>
- </action>
- </objectContribution>
- <objectContribution
- objectClass="org.eclipse.cdt.core.model.IFunction"
- id="org.eclipse.cdt.debug.ui.FunctionBreakpointActions">
- <action
- label="%ManageFunctionBreakpointAction.label"
- icon="icons/elcl16/function_brkpt_co.gif"
- helpContextId="manage_function_breakpoint_action_context"
- tooltip="%ManageFunctionBreakpointAction.tooltip"
- class="org.eclipse.cdt.debug.internal.ui.actions.ManageFunctionBreakpointActionDelegate"
- menubarPath="additions"
- enablesFor="1"
- id="org.eclipse.cdt.debug.internal.ui.actions.ManageFunctionBreakpointActionDelegate">
- </action>
- </objectContribution>
- <objectContribution
- objectClass="org.eclipse.cdt.core.model.IMethod"
- id="org.eclipse.cdt.debug.ui.FunctionBreakpointActions">
- <action
- label="%ManageFunctionBreakpointAction.label"
- icon="icons/elcl16/function_brkpt_co.gif"
- helpContextId="manage_function_breakpoint_action_context"
- tooltip="%ManageFunctionBreakpointAction.tooltip"
- class="org.eclipse.cdt.debug.internal.ui.actions.ManageFunctionBreakpointActionDelegate"
- menubarPath="additions"
- enablesFor="1"
- id="org.eclipse.cdt.debug.internal.ui.actions.ManageFunctionBreakpointActionDelegate">
- </action>
- </objectContribution>
- <objectContribution
- objectClass="org.eclipse.cdt.core.model.IVariable"
- id="org.eclipse.cdt.debug.ui.WatchpointActions">
- <action
- helpContextId="toggle_watchpoint_action_context"
- enablesFor="1"
- label="%ToggleWatchpointAction.label"
- icon="icons/elcl16/watchpoint_co.gif"
- class="org.eclipse.cdt.debug.internal.ui.actions.ToggleWatchpointActionDelegate"
- tooltip="%ToggleWatchpointAction.tooltip"
- menubarPath="additions"
- id="org.eclipse.cdt.debug.internal.ui.actions.ToggleWatchpointActionDelegate"/>
- </objectContribution>
- <viewerContribution
- targetID="org.eclipse.debug.ui.VariableView"
- id="org.eclipse.debug.ui.variablesView.popupMenu">
- <action
- helpContextId="remove_all_globals_action_context"
- enablesFor="*"
- label="%RemoveAllGlobalsAction.label"
- tooltip="%RemoveAllGlobalsAction.tooltip"
- icon="icons/elcl16/rem_all_co.gif"
- class="org.eclipse.cdt.debug.internal.ui.actions.RemoveAllGlobalsActionDelegate"
- menubarPath="additions"
- id="org.eclipse.cdt.debug.internal.ui.actions.RemoveAllGlobalsActionDelegate">
- <enablement>
- <pluginState
- value="activated"
- id="org.eclipse.cdt.debug.ui"/>
- </enablement>
- </action>
- <action
- helpContextId="remove_globals_action_context"
- enablesFor="+"
- label="%RemoveGlobalsAction.label"
- tooltip="%RemoveGlobalsAction.tooltip"
- icon="icons/elcl16/rem_co.gif"
- class="org.eclipse.cdt.debug.internal.ui.actions.RemoveGlobalsActionDelegate"
- menubarPath="additions"
- id="org.eclipse.cdt.debug.internal.ui.actions.RemoveGlobalsActionDelegate">
- <enablement>
- <pluginState
- value="activated"
- id="org.eclipse.cdt.debug.ui"/>
- </enablement>
- </action>
- <action
- helpContextId="add_globals_action_context"
- enablesFor="1"
- label="%AddGlobalsAction.label"
- class="org.eclipse.cdt.debug.internal.ui.actions.AddGlobalsActionDelegate"
- icon="icons/elcl16/watch_globals.gif"
- menubarPath="additions"
- id="org.eclipse.cdt.debug.internal.ui.actions.AddGlobalsActionDelegate">
- <enablement>
- <pluginState
- value="activated"
- id="org.eclipse.cdt.debug.ui"/>
- </enablement>
- </action>
- <action
- label="%DisableVariablesAction.label"
- icon="icons/elcl16/disabled_co.gif"
- helpContextId="disable_variables_action_context"
- tooltip="%DisableVariablesAction.tooltip"
- class="org.eclipse.cdt.debug.internal.ui.actions.DisableVariablesActionDelegate"
- menubarPath="variableGroup"
- enablesFor="2+"
- id="org.eclipse.cdt.debug.internal.ui.actions.DisableVariablesActionDelegate">
- <selection
- class="org.eclipse.cdt.debug.core.model.ICVariable">
- </selection>
- </action>
- <action
- label="%EnableVariablesAction.label"
- icon="icons/elcl16/enabled_co.gif"
- helpContextId="enable_variables_action_context"
- tooltip="%EnableVariablesAction.tooltip"
- class="org.eclipse.cdt.debug.internal.ui.actions.EnableVariablesActionDelegate"
- menubarPath="variableGroup"
- enablesFor="2+"
- id="org.eclipse.cdt.debug.internal.ui.actions.EnableVariablesActionDelegate">
- <selection
- class="org.eclipse.cdt.debug.core.model.ICVariable">
- </selection>
- </action>
- </viewerContribution>
- <viewerContribution
- targetID="org.eclipse.debug.ui.RegisterView"
- id="org.eclipse.debug.ui.registersView.popupMenu">
- <menu
- label="%Dummy"
- id="org.eclipse.cdt.debug.ui.refresh">
- <separator name="refreshGroup"/>
- <separator name="emptyRefreshGroup"/>
- </menu>
- <action
- label="%DisableVariablesAction.label"
- icon="icons/elcl16/disabled_co.gif"
- helpContextId="disable_variables_action_context"
- tooltip="%DisableVariablesAction.tooltip"
- class="org.eclipse.cdt.debug.internal.ui.actions.DisableVariablesActionDelegate"
- menubarPath="variableGroup"
- enablesFor="2+"
- id="org.eclipse.cdt.debug.internal.ui.actions.DisableVariablesActionDelegate">
- <selection
- class="org.eclipse.cdt.debug.core.model.ICVariable">
- </selection>
- </action>
- <action
- label="%EnableVariablesAction.label"
- icon="icons/elcl16/enabled_co.gif"
- helpContextId="enable_variables_action_context"
- tooltip="%EnableVariablesAction.tooltip"
- class="org.eclipse.cdt.debug.internal.ui.actions.EnableVariablesActionDelegate"
- menubarPath="variableGroup"
- enablesFor="2+"
- id="org.eclipse.cdt.debug.internal.ui.actions.EnableVariablesActionDelegate">
- <selection
- class="org.eclipse.cdt.debug.core.model.ICVariable">
- </selection>
- </action>
- <action
- class="org.eclipse.cdt.debug.internal.ui.actions.RestoreDefaultRegisterGroupsActionDelegate"
- helpContextId="restore_default_register_groups_action_context"
- id="org.eclipse.cdt.debug.ui.restoreDefaultRegisterGroupsAction"
- label="%RestoredefaultRegisterGroupsAction.label"
- menubarPath="additions"
- style="push"
- tooltip="%RestoredefaultRegisterGroupsAction.tooltip">
- <enablement>
- <pluginState
- id="org.eclipse.cdt.debug.ui.pluginState1"
- value="activated"/>
- </enablement>
- </action>
- <action
- class="org.eclipse.cdt.debug.internal.ui.actions.AddRegisterGroupActionDelegate"
- helpContextId="add_register_group_action_context"
- id="org.eclipse.cdt.debug.ui.addRegisterGroupAction"
- label="%AddRegisterGroupAction.label"
- menubarPath="additions"
- style="push"
- tooltip="%AddRegisterGroupAction.tooltip">
- <enablement>
- <pluginState
- id="org.eclipse.cdt.debug.ui"
- value="activated"/>
- </enablement>
- </action>
- </viewerContribution>
- <viewerContribution
- targetID="#DisassemblyViewContext"
- id="org.eclipse.cdt.debug.ui.disassemblyView.popupMenu">
- <visibility>
- <and>
- <systemProperty
- value="true"
- name="org.eclipse.cdt.debug.ui.debuggerActive"/>
- <objectClass name="org.eclipse.jface.text.ITextSelection"/>
- </and>
- </visibility>
- <action
- class="org.eclipse.cdt.debug.internal.ui.actions.ResumeAtLineActionDelegate"
- enablesFor="1"
- helpContextId="jump_to_line_action_context"
- icon="icons/elcl16/jump_co.gif"
- id="org.eclipse.cdt.debug.ui.resumeAtLineAction"
- label="%JumpToLineAction.label"
- menubarPath="additions"/>
- <action
- class="org.eclipse.debug.ui.actions.RunToLineActionDelegate"
- definitionId="org.eclipse.debug.ui.commands.RunToLine"
- helpContextId="run_to_line_action_context"
- id="org.eclipse.cdt.debug.ui.runToLineAction"
- label="%RunToLineAction.label"
- menubarPath="additions"/>
- </viewerContribution>
- <objectContribution
- objectClass="org.eclipse.cdt.debug.core.model.ICModule"
- id="org.eclipse.cdt.debug.ui.ModuleActions">
- <action
- helpContextId="load_symbols_action_context"
- enablesFor="1"
- label="%LoadSymbolsAction.label"
- tooltip="%LoadSymbolsAction.tooltip"
- icon="icons/elcl16/load_symbols_co.gif"
- class="org.eclipse.cdt.debug.internal.ui.actions.LoadModuleSymbolsActionDelegate"
- menubarPath="modulesGroup"
- id="org.eclipse.cdt.debug.ui.LoadSymbolsAction"/>
- <action
- helpContextId="module_properties_action_context"
- enablesFor="1"
- label="%ModulePropertiesAction.label"
- tooltip="%ModulePropertiesAction.tooltip"
- class="org.eclipse.cdt.debug.internal.ui.actions.ModulesPropertiesActionDelegate"
- style="pulldown"
- id="org.eclipse.cdt.debug.ui.ModulePropertiesAction">
- </action>
- </objectContribution>
- <viewerContribution
- targetID="org.eclipse.cdt.debug.ui.ModulesView"
- id="org.eclipse.cdt.debug.ui.modulesView.popupMenu">
- <action
- helpContextId="load_symbols_for_all_context"
- label="%LoadSymbolsForAllAction.label"
- tooltip="%LoadSymbolsForAllAction.tooltip"
- icon="icons/elcl16/load_all_symbols_co.gif"
- class="org.eclipse.cdt.debug.internal.ui.actions.LoadSymbolsForAllActionDelegate"
- style="push"
- menubarPath="modulesGroup"
- id="org.eclipse.cdt.debug.ui.LoadSymbolsForAllAction">
- <enablement>
- <pluginState
- value="activated"
- id="org.eclipse.cdt.debug.ui"/>
- </enablement>
- </action>
- </viewerContribution>
- <objectContribution
- adaptable="false"
- id="org.eclipse.cdt.debug.ui.RegisterGroupActions"
- objectClass="org.eclipse.cdt.debug.core.model.IPersistableRegisterGroup">
- <action
- class="org.eclipse.cdt.debug.internal.ui.actions.RemoveRegisterGroupActionDelegate"
- enablesFor="+"
- helpContextId="remove_register_group_action_context"
- id="org.eclipse.cdt.debug.ui.removeRegisterGroupAction"
- label="%RemoveRegisterGroupAction.label"
- menubarPath="additions"
- tooltip="%RemoveRegisterGroupAction.tooltip"/>
- <action
- class="org.eclipse.cdt.debug.internal.ui.actions.EditRegisterGroupActionDelegate"
- enablesFor="1"
- helpContextId="edit_register_group_action_context"
- id="org.eclipse.cdt.debug.ui.editRegisterGroupAction"
- label="%EditRegisterGroupAction.label"
- menubarPath="additions"
- tooltip="%EditRegisterGroupAction.tooltip"/>
- </objectContribution>
- </extension>
- <extension
- point="org.eclipse.ui.viewActions">
- <viewContribution
- targetID="org.eclipse.debug.ui.DebugView"
- id="org.eclipse.cdt.debug.ui.debugview.toolbar">
- <action
- id="org.eclipse.cdt.debug.internal.ui.actions.RestartActionDelegate"
- toolbarPath="threadGroup"
- class="org.eclipse.cdt.debug.internal.ui.actions.RestartActionDelegate"
- disabledIcon="icons/dlcl16/restart.gif"
- enablesFor="1"
- icon="icons/elcl16/restart.gif"
- helpContextId="restart_action_context"
- label="%RestartAction.label"
- tooltip="%RestartAction.tooltip">
- <selection class="org.eclipse.cdt.debug.core.model.IRestart"/>
- </action>
- <action
- state="false"
- style="toggle"
- id="org.eclipse.cdt.debug.internal.ui.actions.ToggleInstructionStepModeActionDelegate"
- toolbarPath="renderGroup"
- class="org.eclipse.cdt.debug.internal.ui.actions.ToggleInstructionStepModeActionDelegate"
- disabledIcon="icons/dlcl16/instr_step.gif"
- icon="icons/elcl16/instr_step.gif"
- enablesFor="1"
- label="%ToggleInstructionStepModeAction.label"
- helpContextId="toggle_instruction_step_mode_action_context"
- tooltip="%ToggleInstructionStepModeAction.tooltip">
- <enablement>
- <pluginState
- value="activated"
- id="org.eclipse.cdt.debug.ui">
- </pluginState>
- </enablement>
- </action>
- </viewContribution>
- <viewContribution
- targetID="org.eclipse.debug.ui.DebugView"
- id="org.eclipse.cdt.debug.ui.debugView.menu">
- <action
- label="%ShowFullPathsAction.label"
- icon="icons/elcl16/show_paths.gif"
- style="toggle"
- helpContextId="show_full_paths_context"
- tooltip="%ShowFullPathsAction.tooltip"
- class="org.eclipse.cdt.debug.internal.ui.actions.ShowFullPathsAction"
- menubarPath="cDebugActions"
- id="org.eclipse.cdt.debug.internal.ui.actions.ShowFullPathsAction">
- </action>
- </viewContribution>
- <viewContribution
- targetID="org.eclipse.debug.ui.BreakpointView"
- id="org.eclipse.cdt.debug.ui.breakpointView.toolbar">
- </viewContribution>
- <viewContribution
- targetID="org.eclipse.debug.ui.BreakpointView"
- id="org.eclipse.cdt.debug.ui.breakpointView.menu">
- <action
- label="%ShowFullPathsAction.label"
- icon="icons/elcl16/show_paths.gif"
- style="toggle"
- helpContextId="show_full_paths_context"
- tooltip="%ShowFullPathsAction.tooltip"
- class="org.eclipse.cdt.debug.internal.ui.actions.ShowFullPathsAction"
- menubarPath="cDebugActions"
- id="org.eclipse.cdt.debug.internal.ui.actions.ShowFullPathsAction">
- </action>
- </viewContribution>
- <viewContribution
- targetID="org.eclipse.debug.ui.VariableView"
- id="org.eclipse.debug.ui.variablesView.toolbar">
- <action
- helpContextId="remove_all_globals_action_context"
- disabledIcon="icons/dlcl16/rem_all_co.gif"
- enablesFor="*"
- toolbarPath="additions"
- label="%RemoveAllGlobalsAction.label"
- tooltip="%RemoveAllGlobalsAction.tooltip"
- icon="icons/elcl16/rem_all_co.gif"
- class="org.eclipse.cdt.debug.internal.ui.actions.RemoveAllGlobalsActionDelegate"
- id="org.eclipse.cdt.debug.internal.ui.actions.RemoveAllGlobalsActionDelegate">
- <enablement>
- <pluginState
- value="activated"
- id="org.eclipse.cdt.debug.ui"/>
- </enablement>
- </action>
- <action
- helpContextId="remove_globals_action_context"
- disabledIcon="icons/dlcl16/rem_co.gif"
- enablesFor="+"
- toolbarPath="additions"
- label="%RemoveGlobalsAction.label"
- tooltip="%RemoveGlobalsAction.tooltip"
- icon="icons/elcl16/rem_co.gif"
- class="org.eclipse.cdt.debug.internal.ui.actions.RemoveGlobalsActionDelegate"
- id="org.eclipse.cdt.debug.internal.ui.actions.RemoveGlobalsActionDelegate">
- <enablement>
- <pluginState
- value="activated"
- id="org.eclipse.cdt.debug.ui"/>
- </enablement>
- </action>
- <action
- helpContextId="add_globals_action_context"
- disabledIcon="icons/dlcl16/watch_globals.gif"
- enablesFor="1"
- toolbarPath="additions"
- label="%AddGlobalsAction.label"
- tooltip="%AddGlobalsAction.tooltip"
- icon="icons/elcl16/watch_globals.gif"
- class="org.eclipse.cdt.debug.internal.ui.actions.AddGlobalsActionDelegate"
- id="org.eclipse.cdt.debug.internal.ui.actions.AddGlobalsActionDelegate">
- <enablement>
- <pluginState
- value="activated"
- id="org.eclipse.cdt.debug.ui"/>
- </enablement>
- </action>
- </viewContribution>
- <viewContribution
- targetID="org.eclipse.debug.ui.RegisterView"
- id="org.eclipse.debug.ui.registersView.toolbar">
- <menu
- label="%Dummy"
- id="org.eclipse.cdt.debug.ui.refresh">
- <separator name="refreshGroup"/>
- <separator name="emptyRefreshGroup"/>
- </menu>
- </viewContribution>
- <viewContribution
- targetID="org.eclipse.cdt.debug.ui.ModulesView"
- id="org.eclipse.debug.ui.modulesView.toolbar">
- <action
- helpContextId="load_symbols_for_all_context"
- disabledIcon="icons/dlcl16/load_all_symbols_co.gif"
- toolbarPath="modulesGroup"
- label="%LoadSymbolsForAllAction.label"
- tooltip="%LoadSymbolsForAllAction.tooltip"
- icon="icons/elcl16/load_all_symbols_co.gif"
- class="org.eclipse.cdt.debug.internal.ui.actions.LoadSymbolsForAllActionDelegate"
- style="push"
- id="org.eclipse.cdt.debug.ui.LoadSymbolsForAllAction">
- <enablement>
- <pluginState
- value="activated"
- id="org.eclipse.cdt.debug.ui"/>
- </enablement>
- </action>
- <action
- helpContextId="collapse_all_modules_context"
- disabledIcon="icons/dlcl16/collapseall.gif"
- toolbarPath="additions"
- label="%CollapseAllModulesAction.label"
- tooltip="%CollapseAllModulesAction.tooltip"
- icon="icons/elcl16/collapseall.gif"
- class="org.eclipse.cdt.debug.internal.ui.actions.CollapseAllModulesAction"
- style="push"
- id="org.eclipse.cdt.debug.ui.CollapseAllModulesAction"/>
- </viewContribution>
- </extension>
- <extension
- point="org.eclipse.ui.editorActions">
- <editorContribution
- targetID="org.eclipse.cdt.ui.editor.CEditor"
- id="org.eclipse.cdt.debug.ui.CEditor.BreakpointRulerActions">
- <action
- label="%Dummy.label"
- class="org.eclipse.cdt.debug.internal.ui.actions.ManageBreakpointRulerActionDelegate"
- actionID="RulerDoubleClick"
- id="org.eclipse.cdt.debug.ui.CEditor.ManageBreakpointRulerAction">
- </action>
- </editorContribution>
- <editorContribution
- targetID="org.eclipse.cdt.ui.editor.asm.AsmEditor"
- id="org.eclipse.cdt.ui.editor.asm.AsmEditor.BreakpointRulerActions">
- <action
- label="%Dummy.label"
- class="org.eclipse.cdt.debug.internal.ui.actions.ManageBreakpointRulerActionDelegate"
- actionID="RulerDoubleClick"
- id="org.eclipse.cdt.debug.ui.CEditor.ManageBreakpointRulerAction">
- </action>
- </editorContribution>
- </extension>
- <extension
- point="org.eclipse.cdt.ui.textHovers">
- <hover
- label="%DebugTextHover.label"
- description="%DebugTextHover.description"
- class="org.eclipse.cdt.debug.internal.ui.editors.DebugTextHover"
- id="org.eclipse.cdt.debug.internal.ui.editors.DebugTextHover">
- </hover>
- </extension>
- <extension
- point="org.eclipse.debug.core.statusHandlers">
- <statusHandler
- plugin="org.eclipse.cdt.debug.core"
- code="10000"
- class="org.eclipse.cdt.debug.internal.ui.QuestionStatusHandler"
- id="org.eclipse.cdt.debug.internal.ui.QuestionStatusHandler">
- </statusHandler>
- <statusHandler
- plugin="org.eclipse.cdt.debug.core"
- code="10001"
- class="org.eclipse.cdt.debug.internal.ui.InfoStatusHandler"
- id="org.eclipse.cdt.debug.internal.ui.InfoStatusHandler">
- </statusHandler>
- <statusHandler
- plugin="org.eclipse.cdt.debug.core"
- code="10002"
- class="org.eclipse.cdt.debug.internal.ui.ErrorStatusHandler"
- id="org.eclipse.cdt.debug.internal.ui.ErrorStatusHandler">
- </statusHandler>
- </extension>
- <extension
- point="org.eclipse.ui.propertyPages">
- <page
- class="org.eclipse.cdt.debug.internal.ui.propertypages.CBreakpointPropertyPage"
- id="org.eclipse.cdt.debug.ui.propertypages.breakpoint.common"
- name="%CommonBreakpointPage.label">
- <enabledWhen>
- <adapt
- type="org.eclipse.cdt.debug.core.model.ICBreakpoint">
- </adapt>
- </enabledWhen>
- </page>
- <page
- class="org.eclipse.cdt.debug.internal.ui.propertypages.CBreakpointFilteringPage"
- id="org.eclipse.cdt.debug.ui.propertypages.breakpoint.filtering"
- name="%FilteringBreakpointPage.label">
- <enabledWhen>
- <adapt
- type="org.eclipse.cdt.debug.core.model.ICBreakpoint">
- </adapt>
- </enabledWhen>
- </page>
- <page
- class="org.eclipse.cdt.debug.internal.ui.propertypages.SignalPropertyPage"
- id="org.eclipse.cdt.debug.ui.propertypages.signal.common"
- name="%CommonSignalPage.label">
- <enabledWhen>
- <instanceof
- value="org.eclipse.cdt.debug.core.model.ICSignal">
- </instanceof>
- </enabledWhen>
- </page>
- <page
- class="org.eclipse.cdt.debug.internal.ui.propertypages.ModulePropertyPage"
- id="org.eclipse.cdt.debug.ui.propertypages.module.common"
- name="%CommonModulePage.label">
- <enabledWhen>
- <instanceof
- value="org.eclipse.cdt.debug.core.model.ICModule">
- </instanceof>
- </enabledWhen>
- </page>
- </extension>
- <extension
- point="org.eclipse.debug.core.sourceLocators">
- <sourceLocator
- name="%DefaultSourceLocator.name"
- class="org.eclipse.cdt.debug.ui.sourcelookup.DefaultSourceLocator"
- id="org.eclipse.cdt.debug.ui.DefaultSourceLocator">
- </sourceLocator>
- <sourceLocator
- name="%OldDefaultSourceLocator.name"
- class="org.eclipse.cdt.debug.ui.sourcelookup.DefaultSourceLocator"
- id="org.eclipse.cdt.launch.DefaultSourceLocator">
- </sourceLocator>
- </extension>
- <extension
- point="org.eclipse.ui.contexts">
- <context
- name="%DebuggingCContext.name"
- description="%DebuggingCContext.description"
- parentId="org.eclipse.debug.ui.debugging"
- id="org.eclipse.cdt.debug.ui.debugging">
- </context>
- </extension>
- <extension
- point="org.eclipse.debug.ui.debugModelContextBindings">
- <modelContextBinding
- debugModelId="org.eclipse.cdt.debug.core"
- contextId="org.eclipse.cdt.debug.ui.debugging">
- </modelContextBinding>
- </extension>
- <extension
- point="org.eclipse.debug.ui.contextViewBindings">
- <contextViewBinding
- viewId="org.eclipse.debug.ui.MemoryView"
- contextId="org.eclipse.cdt.debug.ui.debugging">
- </contextViewBinding>
- <contextViewBinding
- autoOpen="false"
- contextId="org.eclipse.cdt.debug.ui.debugging"
- viewId="org.eclipse.cdt.debug.ui.SignalsView">
- </contextViewBinding>
- <contextViewBinding
- viewId="org.eclipse.debug.ui.RegisterView"
- contextId="org.eclipse.cdt.debug.ui.debugging">
- </contextViewBinding>
- <contextViewBinding
- contextId="org.eclipse.cdt.debug.ui.debugging"
- viewId="org.eclipse.cdt.debug.ui.ModulesView"/>
- </extension>
- <extension
- point="org.eclipse.ui.editors.annotationTypes">
- <type
- markerType="org.eclipse.cdt.debug.core.cBreakpointMarker"
- super="org.eclipse.debug.core.breakpoint"
- name="org.eclipse.cdt.debug.core.breakpoint">
- </type>
- <type
- markerType="org.eclipse.cdt.debug.ui.disassemblyInstructionPointer.current"
- name="org.eclipse.cdt.debug.ui.currentDisassemblyIP">
- </type>
- <type
- markerType="org.eclipse.cdt.debug.ui.disassemblyInstructionPointer.secondary"
- name="org.eclipse.cdt.debug.ui.secondaryDisassemblyIP">
- </type>
- </extension>
- <extension
- point="org.eclipse.ui.editors.markerAnnotationSpecification">
- <specification
- annotationImageProvider="org.eclipse.cdt.debug.internal.ui.BreakpointImageProvider"
- annotationType="org.eclipse.cdt.debug.core.breakpoint"
- colorPreferenceKey="breakpointIndicationColor"
- colorPreferenceValue="0,0,255"
- icon="icons/obj16/brkp_obj.gif"
- label="%BreakpointMarkerPreference.label"
- overviewRulerPreferenceKey="breakpointIndicationInOverviewRuler"
- overviewRulerPreferenceValue="false"
- presentationLayer="3"
- textPreferenceKey="breakpointIndication"
- textPreferenceValue="false"
- verticalRulerPreferenceKey="breakpointVerticalRuler"
- verticalRulerPreferenceValue="true">
- </specification>
- <specification
- colorPreferenceValue="217,255,226"
- annotationType="org.eclipse.cdt.debug.ui.currentDisassemblyIP"
- verticalRulerPreferenceValue="true"
- colorPreferenceKey="currentDisassemblyIPColor"
- highlightPreferenceKey="currentDisassemblyIPHighlight"
- overviewRulerPreferenceValue="true"
- highlightPreferenceValue="true"
- presentationLayer="6"
- icon="icons/obj16/inst_ptr_top.gif"
- label="%DisassemblyCurrentInstructionPointer"
- textPreferenceValue="false"
- textPreferenceKey="currentDisassemblyIPIndication"
- verticalRulerPreferenceKey="currentDisassemblyIPVerticalRuler"
- overviewRulerPreferenceKey="currentDisassemblyIPOverviewRuler">
- </specification>
- <specification
- colorPreferenceValue="217,255,226"
- annotationType="org.eclipse.cdt.debug.ui.secondaryDisassemblyIP"
- verticalRulerPreferenceValue="true"
- colorPreferenceKey="secondaryDisassemblyIPColor"
- highlightPreferenceKey="secondaryDisassemblyIPHighlight"
- overviewRulerPreferenceValue="true"
- highlightPreferenceValue="true"
- presentationLayer="6"
- icon="icons/obj16/inst_ptr.gif"
- label="%DisassemblySecondaryInstructionPointer"
- textPreferenceValue="false"
- textPreferenceKey="secondaryDisassemblyIPIndication"
- verticalRulerPreferenceKey="secondaryDisassemblyIPVerticalRuler"
- overviewRulerPreferenceKey="secondaryDisassemblyIPOverviewRuler">
- </specification>
- </extension>
- <extension
- point="org.eclipse.core.runtime.adapters">
- <factory
- class="org.eclipse.cdt.debug.internal.ui.actions.RetargettableActionAdapterFactory"
- adaptableType="org.eclipse.cdt.internal.ui.editor.CEditor">
- <adapter
- type="org.eclipse.debug.ui.actions.IToggleBreakpointsTarget">
- </adapter>
- <adapter
- type="org.eclipse.debug.ui.actions.IRunToLineTarget">
- </adapter>
- <adapter type="org.eclipse.cdt.debug.internal.ui.actions.IResumeAtLineTarget"/>
- </factory>
- <factory
- class="org.eclipse.cdt.debug.internal.ui.actions.RetargettableActionAdapterFactory"
- adaptableType="org.eclipse.cdt.internal.ui.editor.asm.AsmTextEditor">
- <adapter
- type="org.eclipse.debug.ui.actions.IToggleBreakpointsTarget">
- </adapter>
- <adapter
- type="org.eclipse.debug.ui.actions.IRunToLineTarget">
- </adapter>
- <adapter type="org.eclipse.cdt.debug.internal.ui.actions.IResumeAtLineTarget"/>
- </factory>
- <factory
- class="org.eclipse.cdt.debug.internal.ui.actions.RetargettableActionAdapterFactory"
- adaptableType="org.eclipse.cdt.debug.internal.ui.views.disassembly.DisassemblyView">
- <adapter
- type="org.eclipse.debug.ui.actions.IToggleBreakpointsTarget">
- </adapter>
- <adapter
- type="org.eclipse.debug.ui.actions.IRunToLineTarget">
- </adapter>
- <adapter type="org.eclipse.cdt.debug.internal.ui.actions.IResumeAtLineTarget"/>
- </factory>
- <factory
- class="org.eclipse.cdt.debug.internal.ui.actions.RetargettableActionAdapterFactory"
- adaptableType="org.eclipse.ui.views.contentoutline.ContentOutline">
- <adapter
- type="org.eclipse.debug.ui.actions.IToggleBreakpointsTarget">
- </adapter>
- </factory>
- <factory
- class="org.eclipse.cdt.debug.internal.ui.CBreakpointWorkbenchAdapterFactory"
- adaptableType="org.eclipse.cdt.debug.core.model.ICBreakpoint">
- <adapter type="org.eclipse.ui.model.IWorkbenchAdapter"/>
- </factory>
- <factory
- adaptableType="org.eclipse.cdt.debug.core.sourcelookup.MappingSourceContainer"
- class="org.eclipse.cdt.debug.internal.ui.sourcelookup.SourceContainerAdapterFactory">
- <adapter type="org.eclipse.ui.model.IWorkbenchAdapter"/>
- </factory>
- <factory
- adaptableType="org.eclipse.cdt.debug.internal.core.sourcelookup.MapEntrySourceContainer"
- class="org.eclipse.cdt.debug.internal.ui.sourcelookup.SourceContainerAdapterFactory">
- <adapter type="org.eclipse.ui.model.IWorkbenchAdapter"/>
- </factory>
- <factory
- adaptableType="org.eclipse.debug.core.sourcelookup.containers.ProjectSourceContainer"
- class="org.eclipse.cdt.debug.internal.ui.sourcelookup.SourceContainerAdapterFactory">
- <adapter type="org.eclipse.ui.model.IWorkbenchAdapter"/>
- </factory> </extension>
- <extension
- point="org.eclipse.ui.themes">
- <fontDefinition
- label="%DisassemblyFontDefinition.label"
- categoryId="org.eclipse.debug.ui.presentation"
- defaultsTo="org.eclipse.jface.textfont"
- id="org.eclipse.cdt.debug.ui.disassemblyFont">
- <description>
- %DisassemblyFontDefinition.description
- </description>
- </fontDefinition>
- <fontDefinition
- defaultsTo="org.eclipse.jface.textfont"
- label="%ModulesDetailPaneFontDefinition.label"
- categoryId="org.eclipse.debug.ui.presentation"
- id="org.eclipse.cdt.debug.ui.ModulesDetailPaneFont">
- <description>
- %ModulesDetailPaneFontDefinition.description
- </description>
- </fontDefinition>
- </extension>
- <extension
- point="org.eclipse.debug.core.watchExpressionDelegates">
- <watchExpressionDelegate
- debugModel="org.eclipse.cdt.debug.core"
- delegateClass="org.eclipse.cdt.debug.internal.ui.CWatchExpressionDelegate"/>
- </extension>
- <extension
- point="org.eclipse.core.runtime.preferences">
- <initializer class="org.eclipse.cdt.debug.internal.ui.CDebugUIPreferenceInitializer"/>
- </extension>
- <extension
- point="org.eclipse.debug.ui.memoryRenderings">
- <renderingBindings
- defaultIds="org.eclipse.debug.ui.rendering.raw_memory"
- primaryId="org.eclipse.debug.ui.rendering.raw_memory"
- renderingIds="org.eclipse.debug.ui.rendering.raw_memory,org.eclipse.debug.ui.rendering.ascii,org.eclipse.debug.ui.rendering.signedint,org.eclipse.debug.ui.rendering.unsignedint">
- <enablement>
- <instanceof value="org.eclipse.cdt.debug.internal.core.model.CMemoryBlockExtension"/>
- </enablement>
- </renderingBindings>
- </extension>
- <extension
- point="org.eclipse.debug.ui.sourceContainerPresentations">
- <sourceContainerPresentation
- browserClass="org.eclipse.cdt.debug.internal.ui.sourcelookup.MappingSourceContainerBrowser"
- containerTypeID="org.eclipse.cdt.debug.core.containerType.mapping"
- icon="icons/obj16/mapping_obj.gif"
- id="org.eclipse.cdt.debug.ui.sourceContainerPresentation.mapping"/>
- <sourceContainerPresentation
- containerTypeID="org.eclipse.cdt.debug.core.containerType.mapEntry"
- icon="icons/obj16/mapentry_obj.gif"
- id="org.eclipse.cdt.debug.ui.sourceContainerPresentation.mapEntry"/>
- <sourceContainerPresentation
- containerTypeID="org.eclipse.cdt.debug.core.containerType.absolutePath"
- icon="icons/obj16/abspath_obj.gif"
- id="org.eclipse.cdt.debug.ui.sourceContainerPresentation.absolutePath"/>
- </extension>
- <extension
- point="org.eclipse.core.filebuffers.annotationModelCreation">
- <factory
- class="org.eclipse.cdt.debug.internal.ui.DebugMarkerAnnotationModelFactory"
- contentTypeId="org.eclipse.cdt.core.cSource"/>
- </extension>
-<!-- Import Executable Wizard -->
- <extension
- point="org.eclipse.ui.importWizards">
- <wizard
- category="org.eclipse.cdt.ui.import"
- icon="icons/obj16/c_app.gif"
- name="%importExecutableWizard.name"
- class="org.eclipse.cdt.debug.ui.importexecutable.ImportExecutableWizard"
- id="org.eclipse.cdt.ui.wizardse.ImportExecutableWizard">
- <description>
- %importExecutableWizard.description
- </description>
- </wizard>
- <category
- id="org.eclipse.cdt.ui.import"
- name="%importCPPCategory.name"/>
- </extension>
- <!-- Source Not Found Editor -->
- <extension
- point="org.eclipse.ui.editors">
- <editor
- name="C/C++ Source Not Found Editor"
- icon="$nl$/icons/obj16/c_app.gif"
- class="org.eclipse.cdt.debug.internal.ui.sourcelookup.CSourceNotFoundEditor"
- id="org.eclipse.cdt.debug.internal.ui.sourcelookup.CSourceNotFoundEditor">
- </editor>
- </extension>
- <extension
- point="org.eclipse.ui.startup">
- <startup
- class="org.eclipse.cdt.debug.internal.ui.Startup">
- </startup>
- </extension>
-
-</plugin>
diff --git a/debug/org.eclipse.cdt.debug.ui/schema/CDebuggerPage.exsd b/debug/org.eclipse.cdt.debug.ui/schema/CDebuggerPage.exsd
deleted file mode 100644
index 6b5e2a7d694..00000000000
--- a/debug/org.eclipse.cdt.debug.ui/schema/CDebuggerPage.exsd
+++ /dev/null
@@ -1,130 +0,0 @@
-<?xml version='1.0' encoding='UTF-8'?>
-<!-- Schema file written by PDE -->
-<schema targetNamespace="org.eclipse.cdt.debug.ui">
-<annotation>
- <appInfo>
- <meta.schema plugin="org.eclipse.cdt.debug.ui" id="CDebuggerPage" name="C/C++ Debugger Page"/>
- </appInfo>
- <documentation>
- This extension point provides a mechanism for contributing UI for org.eclipse.cdt.debug.core.CDebugger extensions.
- </documentation>
- </annotation>
-
- <element name="extension">
- <complexType>
- <sequence>
- <element ref="debuggerPage" minOccurs="0" maxOccurs="unbounded"/>
- </sequence>
- <attribute name="point" type="string" use="required">
- <annotation>
- <documentation>
- a fully qualified identifier of the target extension point
- </documentation>
- </annotation>
- </attribute>
- <attribute name="id" type="string">
- <annotation>
- <documentation>
- an optional identifier of the extension instance
- </documentation>
- </annotation>
- </attribute>
- <attribute name="name" type="string">
- <annotation>
- <documentation>
- an optional name of the extension instance
- </documentation>
- <appInfo>
- <meta.attribute translatable="true"/>
- </appInfo>
- </annotation>
- </attribute>
- </complexType>
- </element>
-
- <element name="debuggerPage">
- <complexType>
- <attribute name="id" type="string">
- <annotation>
- <documentation>
- specifies a unique identifier for this debugger page.
- </documentation>
- </annotation>
- </attribute>
- <attribute name="debuggerID" type="string" use="required">
- <annotation>
- <documentation>
- specifies the identifier of the debugger this page is associated with.
- </documentation>
- </annotation>
- </attribute>
- <attribute name="class" type="string" use="required">
- <annotation>
- <documentation>
- specifies a fully qualified name of a Java class that implements &amp;lt;code&amp;gt;ICDebuggerPage&amp;lt;/code&amp;gt;
- </documentation>
- <appInfo>
- <meta.attribute kind="java" basedOn="org.eclipse.cdt.debug.ui.ICDebuggerPage"/>
- </appInfo>
- </annotation>
- </attribute>
- </complexType>
- </element>
-
- <annotation>
- <appInfo>
- <meta.section type="since"/>
- </appInfo>
- <documentation>
- 1.1
- </documentation>
- </annotation>
-
- <annotation>
- <appInfo>
- <meta.section type="examples"/>
- </appInfo>
- <documentation>
- &lt;extension point=&quot;org.eclipse.cdt.debug.ui.CDebuggerPage&quot;&gt;
- &lt;debugPage
- class=&quot;org.eclipse.cdt.debug.mi.internal.ui.GDBDebuggerPage&quot;
- debuggerID=&quot;org.eclipse.cdt.debug.mi.core.CDebugger&quot;
- id=&quot;org.eclipse.cdt.debug.mi.GDBDebuggerPage&quot;&gt;
- &lt;/debugPage&gt;
-&lt;/extension&gt;
-In the above example, the contributed UI component (org.eclipse.cdt.debug.mi.internal.ui.GDBDebuggerPage) will be used for the debuggers with the &quot;org.eclipse.cdt.debug.mi.core.CDebugger&quot; debugger id.
- </documentation>
- </annotation>
-
- <annotation>
- <appInfo>
- <meta.section type="apiInfo"/>
- </appInfo>
- <documentation>
- Value of the attribute class must be a fully qualified name of a Java class that implements the interface org.eclipse.cdt.debug.ui.ICDebuggerPage.
- </documentation>
- </annotation>
-
- <annotation>
- <appInfo>
- <meta.section type="implementation"/>
- </appInfo>
- <documentation>
-
- </documentation>
- </annotation>
-
- <annotation>
- <appInfo>
- <meta.section type="copyright"/>
- </appInfo>
- <documentation>
- Copyright (c) 2006 QNX Software Systems and others.
-All rights reserved. This program and the accompanying materials
-are made available under the terms of the Eclipse Public License v1.0
-which accompanies this distribution, and is available at
-http://www.eclipse.org/legal/epl-v10.html
- </documentation>
- </annotation>
-
-</schema>
diff --git a/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/BreakpointImageProvider.java b/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/BreakpointImageProvider.java
deleted file mode 100644
index 18509d34a9d..00000000000
--- a/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/BreakpointImageProvider.java
+++ /dev/null
@@ -1,62 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.internal.ui;
-
-import org.eclipse.core.resources.IMarker;
-import org.eclipse.debug.ui.DebugUITools;
-import org.eclipse.debug.ui.IDebugModelPresentation;
-import org.eclipse.jface.resource.ImageDescriptor;
-import org.eclipse.jface.text.source.Annotation;
-import org.eclipse.swt.graphics.Image;
-import org.eclipse.ui.texteditor.IAnnotationImageProvider;
-import org.eclipse.ui.texteditor.MarkerAnnotation;
-
-
-/**
- * Provides breakpoint's image information.
- */
-public class BreakpointImageProvider implements IAnnotationImageProvider {
-
- private IDebugModelPresentation fPresentation;
-
- /* (non-Javadoc)
- * @see org.eclipse.ui.texteditor.IAnnotationImageProvider#getManagedImage(org.eclipse.jface.text.source.Annotation)
- */
- public Image getManagedImage( Annotation annotation ) {
- if ( annotation instanceof MarkerAnnotation ) {
- MarkerAnnotation markerAnnotation = (MarkerAnnotation)annotation;
- IMarker marker = markerAnnotation.getMarker();
- if ( marker != null && marker.exists() )
- return getPresentation().getImage( marker );
- }
- return null;
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.ui.texteditor.IAnnotationImageProvider#getImageDescriptorId(org.eclipse.jface.text.source.Annotation)
- */
- public String getImageDescriptorId( Annotation annotation ) {
- return null;
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.ui.texteditor.IAnnotationImageProvider#getImageDescriptor(java.lang.String)
- */
- public ImageDescriptor getImageDescriptor( String imageDescritporId ) {
- return null;
- }
-
- private IDebugModelPresentation getPresentation() {
- if ( fPresentation == null )
- fPresentation = DebugUITools.newDebugModelPresentation();
- return fPresentation;
- }
-}
diff --git a/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/CBreakpointUpdater.java b/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/CBreakpointUpdater.java
deleted file mode 100644
index 29d2657be2f..00000000000
--- a/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/CBreakpointUpdater.java
+++ /dev/null
@@ -1,128 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004, 2005 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.internal.ui;
-
-import java.util.Map;
-import org.eclipse.cdt.debug.core.ICBreakpointListener;
-import org.eclipse.cdt.debug.core.model.ICBreakpoint;
-import org.eclipse.cdt.debug.core.model.ICDebugTarget;
-import org.eclipse.cdt.debug.ui.CDebugUIPlugin;
-import org.eclipse.core.runtime.CoreException;
-import org.eclipse.debug.core.DebugPlugin;
-import org.eclipse.debug.core.model.IBreakpoint;
-import org.eclipse.debug.core.model.IDebugTarget;
-import org.eclipse.swt.widgets.Display;
-
-/**
- * Provides UI-related handles for the breakpoint events.
- */
-public class CBreakpointUpdater implements ICBreakpointListener {
-
- private static CBreakpointUpdater fInstance;
-
- public static CBreakpointUpdater getInstance() {
- if ( fInstance == null ) {
- fInstance = new CBreakpointUpdater();
- }
- return fInstance;
- }
-
- /*
- * (non-Javadoc)
- *
- * @see org.eclipse.cdt.debug.core.ICBreakpointListener#installingBreakpoint(org.eclipse.debug.core.model.IDebugTarget,
- * org.eclipse.debug.core.model.IBreakpoint)
- */
- public boolean installingBreakpoint( IDebugTarget target, IBreakpoint breakpoint ) {
- return true;
- }
-
- /*
- * (non-Javadoc)
- *
- * @see org.eclipse.cdt.debug.core.ICBreakpointListener#breakpointInstalled(org.eclipse.debug.core.model.IDebugTarget,
- * org.eclipse.debug.core.model.IBreakpoint)
- */
- public void breakpointInstalled( final IDebugTarget target, IBreakpoint breakpoint ) {
- if ( breakpoint instanceof ICBreakpoint && target instanceof ICDebugTarget ) {
- final ICBreakpoint b = (ICBreakpoint)breakpoint;
- asyncExec( new Runnable() {
-
- public void run() {
- try {
- if ( b.incrementInstallCount() == 1 )
- DebugPlugin.getDefault().getBreakpointManager().fireBreakpointChanged( b );
- }
- catch( CoreException e ) {
- CDebugUIPlugin.log( e.getStatus() );
- }
- }
- } );
- }
- }
-
- /*
- * (non-Javadoc)
- *
- * @see org.eclipse.cdt.debug.core.ICBreakpointListener#breakpointChanged(org.eclipse.debug.core.model.IDebugTarget,
- * org.eclipse.debug.core.model.IBreakpoint, java.util.Map)
- */
- public void breakpointChanged( IDebugTarget target, final IBreakpoint breakpoint, final Map attributes ) {
- asyncExec( new Runnable() {
-
- public void run() {
- try {
- Boolean enabled = (Boolean)attributes.get( IBreakpoint.ENABLED );
- breakpoint.setEnabled( (enabled != null) ? enabled.booleanValue() : false );
- Integer ignoreCount = (Integer)attributes.get( ICBreakpoint.IGNORE_COUNT );
- ((ICBreakpoint)breakpoint).setIgnoreCount( (ignoreCount != null) ? ignoreCount.intValue() : 0 );
- String condition = (String)attributes.get( ICBreakpoint.CONDITION );
- ((ICBreakpoint)breakpoint).setCondition( (condition != null) ? condition : "" ); //$NON-NLS-1$
- }
- catch( CoreException e ) {
- CDebugUIPlugin.log( e.getStatus() );
- }
- }
- } );
- }
-
- /*
- * (non-Javadoc)
- *
- * @see org.eclipse.cdt.debug.core.ICBreakpointListener#breakpointRemoved(org.eclipse.debug.core.model.IDebugTarget,
- * org.eclipse.debug.core.model.IBreakpoint[])
- */
- public void breakpointsRemoved( IDebugTarget target, final IBreakpoint[] breakpoints ) {
- asyncExec( new Runnable() {
-
- public void run() {
- for ( int i = 0; i < breakpoints.length; ++i ) {
- try {
- ((ICBreakpoint)breakpoints[i]).decrementInstallCount();
- }
- catch( CoreException e ) {
- // ensureMarker throws this exception
- // if breakpoint has already been deleted
- }
- }
- }
- } );
- }
-
- public void dispose() {
- }
-
- private void asyncExec( Runnable r ) {
- Display display = Display.getDefault();
- if ( display != null )
- display.asyncExec( r );
- }
-}
diff --git a/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/CBreakpointWorkbenchAdapterFactory.java b/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/CBreakpointWorkbenchAdapterFactory.java
deleted file mode 100644
index 65137c543b8..00000000000
--- a/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/CBreakpointWorkbenchAdapterFactory.java
+++ /dev/null
@@ -1,52 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.internal.ui;
-
-import org.eclipse.cdt.debug.core.model.ICBreakpoint;
-import org.eclipse.cdt.debug.core.model.ICLineBreakpoint;
-import org.eclipse.cdt.debug.core.model.ICWatchpoint;
-import org.eclipse.core.runtime.IAdapterFactory;
-import org.eclipse.ui.model.IWorkbenchAdapter;
-import org.eclipse.ui.model.WorkbenchAdapter;
-
-/**
- * Adapter factory for C/C++ breakpoints.
- */
-public class CBreakpointWorkbenchAdapterFactory implements IAdapterFactory {
-
- /* (non-Javadoc)
- * @see org.eclipse.core.runtime.IAdapterFactory#getAdapter(java.lang.Object, java.lang.Class)
- */
- public Object getAdapter( Object adaptableObject, Class adapterType ) {
- if ( adapterType != IWorkbenchAdapter.class || !(adaptableObject instanceof ICBreakpoint) ) {
- return null;
- }
- return new WorkbenchAdapter() {
- public String getLabel( Object o ) {
- // for now
- if ( o instanceof ICLineBreakpoint ) {
- return CDebugUIMessages.getString( "CBreakpointWorkbenchAdapterFactory.0" ); //$NON-NLS-1$
- }
- if ( o instanceof ICWatchpoint ) {
- return CDebugUIMessages.getString( "CBreakpointWorkbenchAdapterFactory.1" ); //$NON-NLS-1$
- }
- return super.getLabel( o );
- }
- };
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.core.runtime.IAdapterFactory#getAdapterList()
- */
- public Class[] getAdapterList() {
- return new Class[] { IWorkbenchAdapter.class };
- }
-}
diff --git a/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/CDebugImageDescriptorRegistry.java b/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/CDebugImageDescriptorRegistry.java
deleted file mode 100644
index 72478e4ad6f..00000000000
--- a/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/CDebugImageDescriptorRegistry.java
+++ /dev/null
@@ -1,97 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.internal.ui;
-
-import java.util.HashMap;
-import java.util.Iterator;
-import org.eclipse.cdt.debug.ui.CDebugUIPlugin;
-import org.eclipse.jface.resource.ImageDescriptor;
-import org.eclipse.jface.util.Assert;
-import org.eclipse.swt.graphics.Image;
-import org.eclipse.swt.widgets.Display;
-
-/**
- * A registry that maps <code>ImageDescriptors</code> to <code>Image</code>.
- */
-public class CDebugImageDescriptorRegistry {
-
- private HashMap fRegistry = new HashMap( 10 );
-
- private Display fDisplay;
-
- /**
- * Creates a new image descriptor registry for the current or default display, respectively.
- */
- public CDebugImageDescriptorRegistry() {
- this( CDebugUIPlugin.getStandardDisplay() );
- }
-
- /**
- * Creates a new image descriptor registry for the given display. All images managed by this registry will be disposed when the display gets disposed.
- *
- * @param diaplay
- * the display the images managed by this registry are allocated for
- */
- public CDebugImageDescriptorRegistry( Display display ) {
- fDisplay = display;
- Assert.isNotNull( fDisplay );
- hookDisplay();
- }
-
- /**
- * Returns the image associated with the given image descriptor.
- *
- * @param descriptor
- * the image descriptor for which the registry manages an image
- * @return the image associated with the image descriptor or <code>null</code> if the image descriptor can't create the requested image.
- */
- public Image get( ImageDescriptor descriptor ) {
- if ( descriptor == null )
- descriptor = ImageDescriptor.getMissingImageDescriptor();
- Image result = (Image)fRegistry.get( descriptor );
- if ( result != null )
- return result;
- Assert.isTrue( fDisplay == CDebugUIPlugin.getStandardDisplay(), CDebugUIMessages.getString( "CDebugImageDescriptorRegistry.0" ) ); //$NON-NLS-1$
- result = descriptor.createImage();
- if ( result != null )
- fRegistry.put( descriptor, result );
- return result;
- }
-
- /**
- * Disposes all images managed by this registry.
- */
- public void dispose() {
- for( Iterator iter = fRegistry.values().iterator(); iter.hasNext(); ) {
- Image image = (Image)iter.next();
- image.dispose();
- }
- fRegistry.clear();
- }
-
- private void hookDisplay() {
- fDisplay.asyncExec( new Runnable() {
-
- public void run() {
- getDisplay().disposeExec( new Runnable() {
-
- public void run() {
- dispose();
- }
- } );
- }
- } );
- }
-
- protected Display getDisplay() {
- return fDisplay;
- }
-}
diff --git a/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/CDebugImages.java b/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/CDebugImages.java
deleted file mode 100644
index dbe909c4777..00000000000
--- a/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/CDebugImages.java
+++ /dev/null
@@ -1,322 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.internal.ui;
-
-import java.net.MalformedURLException;
-import java.net.URL;
-import java.util.HashMap;
-import java.util.Iterator;
-import org.eclipse.cdt.debug.ui.CDebugUIPlugin;
-import org.eclipse.jface.action.IAction;
-import org.eclipse.jface.resource.ImageDescriptor;
-import org.eclipse.jface.resource.ImageRegistry;
-import org.eclipse.swt.graphics.Image;
-
-/**
- *
- * Bundle of most images used by the C/C++ debug plug-in.
- *
- * @since Aug 30, 2002
- */
-public class CDebugImages
-{
- private static final String NAME_PREFIX = "org.eclipse.cdt.debug.ui."; //$NON-NLS-1$
- private static final int NAME_PREFIX_LENGTH = NAME_PREFIX.length();
-
- private static URL fgIconBaseURL = null;
-
- static
- {
- String pathSuffix = "icons/"; //$NON-NLS-1$
- try
- {
- fgIconBaseURL = new URL( CDebugUIPlugin.getDefault().getBundle().getEntry( "/" ), pathSuffix ); //$NON-NLS-1$
- }
- catch( MalformedURLException e )
- {
- CDebugUIPlugin.log( e );
- }
- }
-
- // The plugin registry
- private static ImageRegistry fgImageRegistry = null;
- private static HashMap fgAvoidSWTErrorMap = null;
-
- /*
- * Available cached Images in the C/C++ debug plug-in image registry.
- */
- public static final String IMG_OVRS_BREAKPOINT_INSTALLED = NAME_PREFIX + "installed_ovr.gif"; //$NON-NLS-1$
- public static final String IMG_OVRS_BREAKPOINT_INSTALLED_DISABLED = NAME_PREFIX + "installed_ovr_disabled.gif"; //$NON-NLS-1$
- public static final String IMG_OVRS_BREAKPOINT_CONDITIONAL = NAME_PREFIX + "conditional_ovr.gif"; //$NON-NLS-1$
- public static final String IMG_OVRS_BREAKPOINT_CONDITIONAL_DISABLED = NAME_PREFIX + "conditional_ovr_disabled.gif"; //$NON-NLS-1$
- public static final String IMG_OVRS_ADDRESS_BREAKPOINT = NAME_PREFIX + "address_ovr.gif"; //$NON-NLS-1$
- public static final String IMG_OVRS_ADDRESS_BREAKPOINT_DISABLED = NAME_PREFIX + "address_ovr_disabled.gif"; //$NON-NLS-1$
- public static final String IMG_OVRS_FUNCTION_BREAKPOINT = NAME_PREFIX + "function_ovr.gif"; //$NON-NLS-1$
- public static final String IMG_OVRS_FUNCTION_BREAKPOINT_DISABLED = NAME_PREFIX + "function_ovr_disabled.gif"; //$NON-NLS-1$
- public static final String IMG_OVRS_ERROR = NAME_PREFIX + "error_ovr.gif"; //$NON-NLS-1$
- public static final String IMG_OVRS_WARNING = NAME_PREFIX + "warning_ovr.gif"; //$NON-NLS-1$
- public static final String IMG_OVRS_VARIABLE_CASTED = NAME_PREFIX + "casttype_ovr.gif"; //$NON-NLS-1$
- public static final String IMG_OVRS_ARGUMENT = NAME_PREFIX + "argument_ovr.gif"; //$NON-NLS-1$
- public static final String IMG_OVRS_GLOBAL = NAME_PREFIX + "global_ovr.gif"; //$NON-NLS-1$
- public static final String IMG_OBJS_BREAKPOINT_ENABLED = NAME_PREFIX + "brkp_obj.gif"; //$NON-NLS-1$
- public static final String IMG_OBJS_BREAKPOINT_DISABLED = NAME_PREFIX + "brkpd_obj.gif"; //$NON-NLS-1$
- public static final String IMG_OBJS_ADDRESS_BREAKPOINT_ENABLED = NAME_PREFIX + "addrbrkp_obj.gif"; //$NON-NLS-1$
- public static final String IMG_OBJS_ADDRESS_BREAKPOINT_DISABLED = NAME_PREFIX + "addrbrkpd_obj.gif"; //$NON-NLS-1$
- public static final String IMG_OBJS_FUNCTION_BREAKPOINT_ENABLED = NAME_PREFIX + "funbrkp_obj.gif"; //$NON-NLS-1$
- public static final String IMG_OBJS_FUNCTION_BREAKPOINT_DISABLED = NAME_PREFIX + "funbrkpd_obj.gif"; //$NON-NLS-1$
- public static final String IMG_OBJS_WATCHPOINT_ENABLED = NAME_PREFIX + "readwrite_obj.gif"; //$NON-NLS-1$
- public static final String IMG_OBJS_WATCHPOINT_DISABLED = NAME_PREFIX + "readwrite_obj_disabled.gif"; //$NON-NLS-1$
- public static final String IMG_OBJS_READ_WATCHPOINT_ENABLED = NAME_PREFIX + "read_obj.gif"; //$NON-NLS-1$
- public static final String IMG_OBJS_READ_WATCHPOINT_DISABLED = NAME_PREFIX + "read_obj_disabled.gif"; //$NON-NLS-1$
- public static final String IMG_OBJS_WRITE_WATCHPOINT_ENABLED = NAME_PREFIX + "write_obj.gif"; //$NON-NLS-1$
- public static final String IMG_OBJS_WRITE_WATCHPOINT_DISABLED = NAME_PREFIX + "write_obj_disabled.gif"; //$NON-NLS-1$
- public static final String IMG_OBJS_VARIABLE_SIMPLE = NAME_PREFIX + "var_simple.gif"; //$NON-NLS-1$
- public static final String IMG_OBJS_VARIABLE_SIMPLE_DISABLED = NAME_PREFIX + "vard_simple.gif"; //$NON-NLS-1$
- public static final String IMG_OBJS_VARIABLE_AGGREGATE = NAME_PREFIX + "var_aggr.gif"; //$NON-NLS-1$
- public static final String IMG_OBJS_VARIABLE_AGGREGATE_DISABLED = NAME_PREFIX + "vard_aggr.gif"; //$NON-NLS-1$
- public static final String IMG_OBJS_VARIABLE_POINTER = NAME_PREFIX + "var_pointer.gif"; //$NON-NLS-1$
- public static final String IMG_OBJS_VARIABLE_POINTER_DISABLED = NAME_PREFIX + "vard_pointer.gif"; //$NON-NLS-1$
- public static final String IMG_OBJS_VARIABLE_STRING = NAME_PREFIX + "var_string.gif"; //$NON-NLS-1$
- public static final String IMG_OBJS_REGISTER_GROUP = NAME_PREFIX + "registergroup_obj.gif"; //$NON-NLS-1$
- public static final String IMG_OBJS_REGISTER_GROUP_DISABLED = NAME_PREFIX + "registergroupd_obj.gif"; //$NON-NLS-1$
- public static final String IMG_OBJS_REGISTER = NAME_PREFIX + "register_obj.gif"; //$NON-NLS-1$
- public static final String IMG_OBJS_REGISTER_DISABLED = NAME_PREFIX + "registerd_obj.gif"; //$NON-NLS-1$
- public static final String IMG_OBJS_DISASSEMBLY = NAME_PREFIX + "disassembly_obj.gif"; //$NON-NLS-1$
- public static final String IMG_OBJS_PROJECT = NAME_PREFIX + "project_obj.gif"; //$NON-NLS-1$
- public static final String IMG_OBJS_CLOSED_PROJECT = NAME_PREFIX + "cproject_obj.gif"; //$NON-NLS-1$
- public static final String IMG_OBJS_FOLDER = NAME_PREFIX + "folder_obj.gif"; //$NON-NLS-1$
- public static final String IMG_OBJS_EXECUTABLE_WITH_SYMBOLS = NAME_PREFIX + "exec_dbg_obj.gif"; //$NON-NLS-1$
- public static final String IMG_OBJS_EXECUTABLE = NAME_PREFIX + "exec_obj.gif"; //$NON-NLS-1$
- public static final String IMG_OBJS_SHARED_LIBRARY_WITH_SYMBOLS = NAME_PREFIX + "library_syms_obj.gif"; //$NON-NLS-1$
- public static final String IMG_OBJS_SHARED_LIBRARY = NAME_PREFIX + "library_obj.gif"; //$NON-NLS-1$
- public static final String IMG_OBJS_SIGNAL = NAME_PREFIX + "signal_obj.gif"; //$NON-NLS-1$
- public static final String IMG_OBJS_WORKSPACE_SOURCE_FILE = NAME_PREFIX + "prj_file_obj.gif"; //$NON-NLS-1$
- public static final String IMG_OBJS_EXTERNAL_SOURCE_FILE = NAME_PREFIX + "ext_file_obj.gif"; //$NON-NLS-1$
- public static final String IMG_OBJS_PATH_MAPPING = NAME_PREFIX + "mapping_obj.gif"; //$NON-NLS-1$
- public static final String IMG_OBJS_PATH_MAP_ENTRY = NAME_PREFIX + "mapentry_obj.gif"; //$NON-NLS-1$
-
- public static final String IMG_LCL_TYPE_NAMES = NAME_PREFIX + "tnames_co.gif"; //$NON-NLS-1$
- public static final String IMG_LCL_CHANGE_REGISTER_VALUE = NAME_PREFIX + "change_reg_value_co.gif"; //$NON-NLS-1$
- public static final String IMG_LCL_AUTO_REFRESH = NAME_PREFIX + "auto_refresh_co.gif"; //$NON-NLS-1$
- public static final String IMG_LCL_REFRESH = NAME_PREFIX + "refresh_co.gif"; //$NON-NLS-1$
- public static final String IMG_LCL_MEMORY_SAVE = NAME_PREFIX + "memory_update.gif"; //$NON-NLS-1$
- public static final String IMG_LCL_MEMORY_CLEAR = NAME_PREFIX + "memory_clear.gif"; //$NON-NLS-1$
- public static final String IMG_LCL_SHOW_ASCII = NAME_PREFIX + "show_ascii.gif"; //$NON-NLS-1$
- public static final String IMG_LCL_LOAD_ALL_SYMBOLS = NAME_PREFIX + "load_all_symbols_co.gif"; //$NON-NLS-1$
- public static final String IMG_LCL_CAST_TO_TYPE = NAME_PREFIX + "casttotype_co.gif"; //$NON-NLS-1$
- public static final String IMG_LCL_DISPLAY_AS_ARRAY = NAME_PREFIX + "showasarray_co.gif"; //$NON-NLS-1$
- public static final String IMG_LCL_RESUME_AT_LINE = NAME_PREFIX + "jump_co.gif"; //$NON-NLS-1$
- public static final String IMG_LCL_DETAIL_PANE_UNDER = NAME_PREFIX + "det_pane_under.gif"; //$NON-NLS-1$
- public static final String IMG_LCL_DETAIL_PANE_RIGHT = NAME_PREFIX + "det_pane_right.gif"; //$NON-NLS-1$
- public static final String IMG_LCL_DETAIL_PANE_HIDE = NAME_PREFIX + "det_pane_hide.gif"; //$NON-NLS-1$
- public static final String IMG_LCL_COLLAPSE_ALL = NAME_PREFIX + "collapseall.gif"; //$NON-NLS-1$
-
- public static final String IMG_WIZBAN_ADD_SOURCE = NAME_PREFIX + "addsrcloc_wiz.gif"; //$NON-NLS-1$
- public static final String IMG_WIZBAN_PATH_MAPPING = NAME_PREFIX + "mapping_wiz.gif"; //$NON-NLS-1$
- public static final String IMG_WIZBAN_PATH_MAP_ENTRY = NAME_PREFIX + "mapentry_wiz.gif"; //$NON-NLS-1$
-
- /*
- * Set of predefined Image Descriptors.
- */
- private static final String T_OBJ = "obj16"; //$NON-NLS-1$
- private static final String T_OVR = "ovr16"; //$NON-NLS-1$
- private static final String T_WIZBAN = "wizban"; //$NON-NLS-1$
- private static final String T_LCL = "lcl16"; //$NON-NLS-1$
- private static final String T_ELCL = "elcl16"; //$NON-NLS-1$
- private static final String T_DLCL = "dlcl16"; //$NON-NLS-1$
-// private static final String T_DTOOL = "dtool16"; //$NON-NLS-1$
-// private static final String T_ETOOL = "etool16"; //$NON-NLS-1$
-
- public static final ImageDescriptor DESC_OVRS_ERROR = createManaged( T_OVR, IMG_OVRS_ERROR );
- public static final ImageDescriptor DESC_OVRS_WARNING = createManaged( T_OVR, IMG_OVRS_WARNING );
- public static final ImageDescriptor DESC_OVRS_BREAKPOINT_INSTALLED = createManaged( T_OVR, IMG_OVRS_BREAKPOINT_INSTALLED );
- public static final ImageDescriptor DESC_OVRS_BREAKPOINT_INSTALLED_DISABLED = createManaged( T_OVR, IMG_OVRS_BREAKPOINT_INSTALLED_DISABLED );
- public static final ImageDescriptor DESC_OVRS_BREAKPOINT_CONDITIONAL = createManaged( T_OVR, IMG_OVRS_BREAKPOINT_CONDITIONAL );
- public static final ImageDescriptor DESC_OVRS_BREAKPOINT_CONDITIONAL_DISABLED = createManaged( T_OVR, IMG_OVRS_BREAKPOINT_CONDITIONAL_DISABLED );
- public static final ImageDescriptor DESC_OVRS_ADDRESS_BREAKPOINT = createManaged( T_OVR, IMG_OVRS_ADDRESS_BREAKPOINT );
- public static final ImageDescriptor DESC_OVRS_ADDRESS_BREAKPOINT_DISABLED = createManaged( T_OVR, IMG_OVRS_ADDRESS_BREAKPOINT_DISABLED );
- public static final ImageDescriptor DESC_OVRS_FUNCTION_BREAKPOINT = createManaged( T_OVR, IMG_OVRS_FUNCTION_BREAKPOINT );
- public static final ImageDescriptor DESC_OVRS_FUNCTION_BREAKPOINT_DISABLED = createManaged( T_OVR, IMG_OVRS_FUNCTION_BREAKPOINT_DISABLED );
- public static final ImageDescriptor DESC_OVRS_VARIABLE_CASTED = createManaged( T_OVR, IMG_OVRS_VARIABLE_CASTED );
- public static final ImageDescriptor DESC_OVRS_ARGUMENT = createManaged( T_OVR, IMG_OVRS_ARGUMENT );
- public static final ImageDescriptor DESC_OVRS_GLOBAL = createManaged( T_OVR, IMG_OVRS_GLOBAL );
- public static final ImageDescriptor DESC_OBJS_BREAKPOINT_ENABLED = createManaged( T_OBJ, IMG_OBJS_BREAKPOINT_ENABLED );
- public static final ImageDescriptor DESC_OBJS_BREAKPOINT_DISABLED = createManaged( T_OBJ, IMG_OBJS_BREAKPOINT_DISABLED );
- public static final ImageDescriptor DESC_OBJS_WATCHPOINT_ENABLED = createManaged( T_OBJ, IMG_OBJS_WATCHPOINT_ENABLED );
- public static final ImageDescriptor DESC_OBJS_WATCHPOINT_DISABLED = createManaged( T_OBJ, IMG_OBJS_WATCHPOINT_DISABLED );
- public static final ImageDescriptor DESC_OBJS_READ_WATCHPOINT_ENABLED = createManaged( T_OBJ, IMG_OBJS_READ_WATCHPOINT_ENABLED );
- public static final ImageDescriptor DESC_OBJS_READ_WATCHPOINT_DISABLED = createManaged( T_OBJ, IMG_OBJS_READ_WATCHPOINT_DISABLED );
- public static final ImageDescriptor DESC_OBJS_WRITE_WATCHPOINT_ENABLED = createManaged( T_OBJ, IMG_OBJS_WRITE_WATCHPOINT_ENABLED );
- public static final ImageDescriptor DESC_OBJS_WRITE_WATCHPOINT_DISABLED = createManaged( T_OBJ, IMG_OBJS_WRITE_WATCHPOINT_DISABLED );
- public static final ImageDescriptor DESC_OBJS_VARIABLE_SIMPLE = createManaged( T_OBJ, IMG_OBJS_VARIABLE_SIMPLE );
- public static final ImageDescriptor DESC_OBJS_VARIABLE_SIMPLE_DISABLED = createManaged( T_OBJ, IMG_OBJS_VARIABLE_SIMPLE_DISABLED );
- public static final ImageDescriptor DESC_OBJS_VARIABLE_AGGREGATE = createManaged( T_OBJ, IMG_OBJS_VARIABLE_AGGREGATE );
- public static final ImageDescriptor DESC_OBJS_VARIABLE_AGGREGATE_DISABLED = createManaged( T_OBJ, IMG_OBJS_VARIABLE_AGGREGATE_DISABLED );
- public static final ImageDescriptor DESC_OBJS_VARIABLE_POINTER = createManaged( T_OBJ, IMG_OBJS_VARIABLE_POINTER );
- public static final ImageDescriptor DESC_OBJS_VARIABLE_POINTER_DISABLED = createManaged( T_OBJ, IMG_OBJS_VARIABLE_POINTER_DISABLED );
- public static final ImageDescriptor DESC_OBJS_VARIABLE_STRING = createManaged( T_OBJ, IMG_OBJS_VARIABLE_STRING );
- public static final ImageDescriptor DESC_OBJS_REGISTER_GROUP = createManaged( T_OBJ, IMG_OBJS_REGISTER_GROUP );
- public static final ImageDescriptor DESC_OBJS_REGISTER_GROUP_DISABLED = createManaged( T_OBJ, IMG_OBJS_REGISTER_GROUP_DISABLED );
- public static final ImageDescriptor DESC_OBJS_REGISTER = createManaged( T_OBJ, IMG_OBJS_REGISTER );
- public static final ImageDescriptor DESC_OBJS_REGISTER_DISABLED = createManaged( T_OBJ, IMG_OBJS_REGISTER_DISABLED );
- public static final ImageDescriptor DESC_OBJS_DISASSEMBLY = createManaged( T_OBJ, IMG_OBJS_DISASSEMBLY );
- public static final ImageDescriptor DESC_OBJS_PROJECT = createManaged( T_OBJ, IMG_OBJS_PROJECT );
- public static final ImageDescriptor DESC_OBJS_CLOSED_PROJECT = createManaged( T_OBJ, IMG_OBJS_CLOSED_PROJECT );
- public static final ImageDescriptor DESC_OBJS_FOLDER = createManaged( T_OBJ, IMG_OBJS_FOLDER );
- public static final ImageDescriptor DESC_OBJS_EXECUTABLE_WITH_SYMBOLS = createManaged( T_OBJ, IMG_OBJS_EXECUTABLE_WITH_SYMBOLS );
- public static final ImageDescriptor DESC_OBJS_EXECUTABLE = createManaged( T_OBJ, IMG_OBJS_EXECUTABLE );
- public static final ImageDescriptor DESC_OBJS_SHARED_LIBRARY_WITH_SYMBOLS = createManaged( T_OBJ, IMG_OBJS_SHARED_LIBRARY_WITH_SYMBOLS );
- public static final ImageDescriptor DESC_OBJS_SHARED_LIBRARY = createManaged( T_OBJ, IMG_OBJS_SHARED_LIBRARY );
- public static final ImageDescriptor DESC_OBJS_SIGNAL = createManaged( T_OBJ, IMG_OBJS_SIGNAL );
- public static final ImageDescriptor DESC_OBJS_WORKSPACE_SOURCE_FILE = createManaged( T_OBJ, IMG_OBJS_WORKSPACE_SOURCE_FILE );
- public static final ImageDescriptor DESC_OBJS_EXTERNAL_SOURCE_FILE = createManaged( T_OBJ, IMG_OBJS_EXTERNAL_SOURCE_FILE );
- public static final ImageDescriptor DESC_OBJS_PATH_MAPPING = createManaged( T_OBJ, IMG_OBJS_PATH_MAPPING );
- public static final ImageDescriptor DESC_OBJS_PATH_MAP_ENTRY = createManaged( T_OBJ, IMG_OBJS_PATH_MAP_ENTRY );
- public static final ImageDescriptor DESC_WIZBAN_ADD_SOURCE = createManaged( T_WIZBAN, IMG_WIZBAN_ADD_SOURCE );
- public static final ImageDescriptor DESC_WIZBAN_PATH_MAPPING = createManaged( T_WIZBAN, IMG_WIZBAN_PATH_MAPPING );
- public static final ImageDescriptor DESC_WIZBAN_PATH_MAP_ENTRY = createManaged( T_WIZBAN, IMG_WIZBAN_PATH_MAP_ENTRY );
- public static final ImageDescriptor DESC_LCL_CAST_TO_TYPE = createManaged( T_ELCL, IMG_LCL_CAST_TO_TYPE );
- public static final ImageDescriptor DESC_LCL_DISPLAY_AS_ARRAY = createManaged( T_ELCL, IMG_LCL_DISPLAY_AS_ARRAY );
- public static final ImageDescriptor DESC_LCL_RESUME_AT_LINE = createManaged( T_ELCL, IMG_LCL_RESUME_AT_LINE );
- public static final ImageDescriptor DESC_LCL_RESUME_AT_LINE_DISABLED = createManaged( T_DLCL, IMG_LCL_RESUME_AT_LINE );
- public static final ImageDescriptor DESC_LCL_DETAIL_PANE_UNDER = createManaged( T_ELCL, IMG_LCL_DETAIL_PANE_UNDER );
- public static final ImageDescriptor DESC_LCL_DETAIL_PANE_UNDER_DISABLED = createManaged( T_DLCL, IMG_LCL_DETAIL_PANE_UNDER );
- public static final ImageDescriptor DESC_LCL_DETAIL_PANE_RIGHT = createManaged( T_ELCL, IMG_LCL_DETAIL_PANE_RIGHT );
- public static final ImageDescriptor DESC_LCL_DETAIL_PANE_RIGHT_DISABLED = createManaged( T_DLCL, IMG_LCL_DETAIL_PANE_RIGHT );
- public static final ImageDescriptor DESC_LCL_DETAIL_PANE_HIDE = createManaged( T_ELCL, IMG_LCL_DETAIL_PANE_HIDE );
- public static final ImageDescriptor DESC_LCL_DETAIL_PANE_HIDE_DISABLED = createManaged( T_DLCL, IMG_LCL_DETAIL_PANE_HIDE );
- public static final ImageDescriptor DESC_LCL_COLLAPSE_ALL = createManaged( T_ELCL, IMG_LCL_COLLAPSE_ALL );
- public static final ImageDescriptor DESC_LCL_COLLAPSE_ALL_DISABLED = createManaged( T_DLCL, IMG_LCL_COLLAPSE_ALL );
-
- /**
- * Returns the image managed under the given key in this registry.
- *
- * @param key the image's key
- * @return the image managed under the given key
- */
- public static Image get( String key )
- {
- return getImageRegistry().get( key );
- }
-
- /**
- * Sets the three image descriptors for enabled, disabled, and hovered to an action. The actions
- * are retrieved from the *tool16 folders.
- */
- public static void setToolImageDescriptors( IAction action, String iconName )
- {
- setImageDescriptors( action, "tool16", iconName ); //$NON-NLS-1$
- }
-
- /**
- * Sets the three image descriptors for enabled, disabled, and hovered to an action. The actions
- * are retrieved from the *lcl16 folders.
- */
- public static void setLocalImageDescriptors( IAction action, String iconName )
- {
- setImageDescriptors( action, T_LCL, iconName );
- }
-
- /*
- * Helper method to access the image registry from the JDIDebugUIPlugin class.
- */
- /* package */ static ImageRegistry getImageRegistry()
- {
- if ( fgImageRegistry == null )
- {
- fgImageRegistry = new ImageRegistry();
- for ( Iterator iter = fgAvoidSWTErrorMap.keySet().iterator(); iter.hasNext(); )
- {
- String key = (String)iter.next();
- fgImageRegistry.put( key, (ImageDescriptor)fgAvoidSWTErrorMap.get( key ) );
- }
- fgAvoidSWTErrorMap = null;
- }
- return fgImageRegistry;
- }
-
- //---- Helper methods to access icons on the file system --------------------------------------
-
- private static void setImageDescriptors( IAction action, String type, String relPath )
- {
- relPath = relPath.substring( NAME_PREFIX_LENGTH );
- try
- {
- ImageDescriptor id = ImageDescriptor.createFromURL( makeIconFileURL( "d" + type, relPath ) ); //$NON-NLS-1$
- if ( id != null )
- action.setDisabledImageDescriptor( id );
- }
- catch( MalformedURLException e )
- {
- CDebugUIPlugin.log( e );
- }
-
- try
- {
- ImageDescriptor id = ImageDescriptor.createFromURL( makeIconFileURL( "c" + type, relPath ) ); //$NON-NLS-1$
- if ( id != null )
- action.setHoverImageDescriptor( id );
- }
- catch( MalformedURLException e )
- {
- CDebugUIPlugin.log( e );
- }
-
- action.setImageDescriptor( create( "e" + type, relPath ) ); //$NON-NLS-1$
- }
-
- private static ImageDescriptor createManaged( String prefix, String name )
- {
- try
- {
- ImageDescriptor result = ImageDescriptor.createFromURL( makeIconFileURL( prefix, name.substring( NAME_PREFIX_LENGTH ) ) );
- if ( fgAvoidSWTErrorMap == null )
- {
- fgAvoidSWTErrorMap = new HashMap();
- }
- fgAvoidSWTErrorMap.put( name, result );
- if ( fgImageRegistry != null )
- {
- CDebugUIPlugin.logErrorMessage( "Internal Error: Image registry already defined" ); //$NON-NLS-1$
- }
- return result;
- }
- catch( MalformedURLException e )
- {
- CDebugUIPlugin.log( e );
- return ImageDescriptor.getMissingImageDescriptor();
- }
- }
-
- private static ImageDescriptor create( String prefix, String name )
- {
- try
- {
- return ImageDescriptor.createFromURL( makeIconFileURL( prefix, name ) );
- }
- catch( MalformedURLException e )
- {
- CDebugUIPlugin.log( e );
- return ImageDescriptor.getMissingImageDescriptor();
- }
- }
-
- private static URL makeIconFileURL( String prefix, String name ) throws MalformedURLException
- {
- if ( fgIconBaseURL == null )
- throw new MalformedURLException();
-
- StringBuffer buffer = new StringBuffer( prefix );
- buffer.append( '/' );
- buffer.append( name );
- return new URL( fgIconBaseURL, buffer.toString() );
- }
-}
diff --git a/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/CDebugModelPresentation.java b/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/CDebugModelPresentation.java
deleted file mode 100644
index ce7d3ee8e34..00000000000
--- a/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/CDebugModelPresentation.java
+++ /dev/null
@@ -1,810 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- * Nokia - Added support for CSourceNotFoundElement ( 167305 )
- *******************************************************************************/
-package org.eclipse.cdt.debug.internal.ui;
-
-import java.io.File;
-import java.text.MessageFormat;
-import java.util.HashMap;
-
-import org.eclipse.cdt.core.IAddress;
-import org.eclipse.cdt.core.resources.FileStorage;
-import org.eclipse.cdt.debug.core.CDebugUtils;
-import org.eclipse.cdt.debug.core.cdi.ICDIBreakpointHit;
-import org.eclipse.cdt.debug.core.cdi.ICDIExitInfo;
-import org.eclipse.cdt.debug.core.cdi.ICDISharedLibraryEvent;
-import org.eclipse.cdt.debug.core.cdi.ICDISignalExitInfo;
-import org.eclipse.cdt.debug.core.cdi.ICDISignalReceived;
-import org.eclipse.cdt.debug.core.cdi.ICDIWatchpointScope;
-import org.eclipse.cdt.debug.core.cdi.ICDIWatchpointTrigger;
-import org.eclipse.cdt.debug.core.cdi.model.ICDISignal;
-import org.eclipse.cdt.debug.core.model.CDebugElementState;
-import org.eclipse.cdt.debug.core.model.ICAddressBreakpoint;
-import org.eclipse.cdt.debug.core.model.ICBreakpoint;
-import org.eclipse.cdt.debug.core.model.ICDebugElement;
-import org.eclipse.cdt.debug.core.model.ICDebugElementStatus;
-import org.eclipse.cdt.debug.core.model.ICDebugTarget;
-import org.eclipse.cdt.debug.core.model.ICFunctionBreakpoint;
-import org.eclipse.cdt.debug.core.model.ICGlobalVariable;
-import org.eclipse.cdt.debug.core.model.ICLineBreakpoint;
-import org.eclipse.cdt.debug.core.model.ICModule;
-import org.eclipse.cdt.debug.core.model.ICSignal;
-import org.eclipse.cdt.debug.core.model.ICStackFrame;
-import org.eclipse.cdt.debug.core.model.ICThread;
-import org.eclipse.cdt.debug.core.model.ICType;
-import org.eclipse.cdt.debug.core.model.ICValue;
-import org.eclipse.cdt.debug.core.model.ICVariable;
-import org.eclipse.cdt.debug.core.model.ICWatchpoint;
-import org.eclipse.cdt.debug.core.model.IDummyStackFrame;
-import org.eclipse.cdt.debug.core.model.IEnableDisableTarget;
-import org.eclipse.cdt.debug.internal.core.sourcelookup.CSourceNotFoundElement;
-import org.eclipse.cdt.debug.internal.ui.sourcelookup.CSourceNotFoundEditorInput;
-import org.eclipse.cdt.debug.ui.CDebugUIPlugin;
-import org.eclipse.cdt.internal.core.model.ExternalTranslationUnit;
-import org.eclipse.cdt.internal.ui.util.ExternalEditorInput;
-import org.eclipse.cdt.ui.CUIPlugin;
-import org.eclipse.core.resources.IFile;
-import org.eclipse.core.resources.IMarker;
-import org.eclipse.core.resources.IResource;
-import org.eclipse.core.resources.IStorage;
-import org.eclipse.core.resources.ResourcesPlugin;
-import org.eclipse.core.runtime.CoreException;
-import org.eclipse.core.runtime.IAdaptable;
-import org.eclipse.core.runtime.IPath;
-import org.eclipse.core.runtime.Path;
-import org.eclipse.debug.core.DebugException;
-import org.eclipse.debug.core.DebugPlugin;
-import org.eclipse.debug.core.model.IBreakpoint;
-import org.eclipse.debug.core.model.IDebugTarget;
-import org.eclipse.debug.core.model.IDisconnect;
-import org.eclipse.debug.core.model.IExpression;
-import org.eclipse.debug.core.model.IRegister;
-import org.eclipse.debug.core.model.IRegisterGroup;
-import org.eclipse.debug.core.model.IStackFrame;
-import org.eclipse.debug.core.model.ITerminate;
-import org.eclipse.debug.core.model.IThread;
-import org.eclipse.debug.core.model.IValue;
-import org.eclipse.debug.core.model.IVariable;
-import org.eclipse.debug.core.model.IWatchExpression;
-import org.eclipse.debug.core.sourcelookup.containers.LocalFileStorage;
-import org.eclipse.debug.ui.DebugUITools;
-import org.eclipse.debug.ui.IDebugModelPresentation;
-import org.eclipse.debug.ui.IDebugUIConstants;
-import org.eclipse.debug.ui.IValueDetailListener;
-import org.eclipse.jface.resource.ImageDescriptor;
-import org.eclipse.jface.viewers.LabelProvider;
-import org.eclipse.swt.graphics.Image;
-import org.eclipse.ui.IEditorDescriptor;
-import org.eclipse.ui.IEditorInput;
-import org.eclipse.ui.IEditorRegistry;
-import org.eclipse.ui.PlatformUI;
-import org.eclipse.ui.part.FileEditorInput;
-
-/**
- * @see IDebugModelPresentation
- */
-public class CDebugModelPresentation extends LabelProvider implements IDebugModelPresentation {
-
- public final static String DISPLAY_FULL_PATHS = "DISPLAY_FULL_PATHS"; //$NON-NLS-1$
-
- private static final String DUMMY_STACKFRAME_LABEL = "..."; //$NON-NLS-1$
-
- protected HashMap fAttributes = new HashMap( 3 );
-
- protected CDebugImageDescriptorRegistry fDebugImageRegistry = CDebugUIPlugin.getImageDescriptorRegistry();
-
- private OverlayImageCache fImageCache = new OverlayImageCache();
-
- private static CDebugModelPresentation gfInstance = null;
-
- public static CDebugModelPresentation getDefault() {
- if ( gfInstance == null )
- gfInstance = new CDebugModelPresentation();
- return gfInstance;
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.debug.ui.IDebugModelPresentation#setAttribute(java.lang.String, java.lang.Object)
- */
- public void setAttribute( String attribute, Object value ) {
- if ( value == null )
- return;
- getAttributes().put( attribute, value );
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.debug.ui.IDebugModelPresentation#computeDetail(org.eclipse.debug.core.model.IValue, org.eclipse.debug.ui.IValueDetailListener)
- */
- public void computeDetail( IValue value, IValueDetailListener listener ) {
- CValueDetailProvider.getDefault().computeDetail( value, listener );
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.debug.ui.ISourcePresentation#getEditorInput(java.lang.Object)
- */
- public IEditorInput getEditorInput( Object element ) {
- if ( element instanceof IMarker ) {
- IResource resource = ((IMarker)element).getResource();
- if ( resource instanceof IFile )
- return new FileEditorInput( (IFile)resource );
- }
- if ( element instanceof IFile ) {
- return new FileEditorInput( (IFile)element );
- }
- if ( element instanceof ICBreakpoint ) {
- ICBreakpoint b = (ICBreakpoint)element;
- IFile file = null;
- try {
- String handle = b.getSourceHandle();
- IPath path = new Path( handle );
- if ( path.isValidPath( handle ) ) {
- IFile[] files = ResourcesPlugin.getWorkspace().getRoot().findFilesForLocation( path );
- if ( files.length > 0 ) {
- file = files[0];
- }
- else {
- File fsfile = new File( handle );
- if ( fsfile.isFile() && fsfile.exists() ) {
- return new ExternalEditorInput( new LocalFileStorage( fsfile ) );
- }
- }
- }
- }
- catch( CoreException e ) {
- }
- if ( file == null )
- file = (IFile)b.getMarker().getResource().getAdapter( IFile.class );
- if ( file != null )
- return new FileEditorInput( file );
- }
- if ( element instanceof FileStorage || element instanceof LocalFileStorage ) {
- return new ExternalEditorInput( (IStorage)element );
- }
- if ( element instanceof ExternalTranslationUnit ) {
- ExternalTranslationUnit etu = (ExternalTranslationUnit) element;
- return new ExternalEditorInput( etu , new LocalFileStorage( etu.getPath().toFile() ) );
- }
- if (element instanceof CSourceNotFoundElement)
- {
- return new CSourceNotFoundEditorInput((CSourceNotFoundElement) element);
- }
- return null;
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.debug.ui.ISourcePresentation#getEditorId(org.eclipse.ui.IEditorInput, java.lang.Object)
- */
- public String getEditorId( IEditorInput input, Object element ) {
- if (element instanceof CSourceNotFoundElement)
- return "org.eclipse.cdt.debug.internal.ui.sourcelookup.CSourceNotFoundEditor";
- String id = null;
- if ( input != null ) {
- IEditorRegistry registry = PlatformUI.getWorkbench().getEditorRegistry();
- IEditorDescriptor descriptor = registry.getDefaultEditor( input.getName() );
- id = (descriptor != null) ? descriptor.getId() : CUIPlugin.EDITOR_ID;
- }
- return id;
- }
-
- public Image getImage( Object element ) {
- Image baseImage = getBaseImage( element );
- if ( baseImage != null ) {
- ImageDescriptor[] overlays = new ImageDescriptor[]{ null, null, null, null };
- if ( element instanceof ICDebugElementStatus && !((ICDebugElementStatus)element).isOK() ) {
- switch( ((ICDebugElementStatus)element).getSeverity() ) {
- case ICDebugElementStatus.WARNING:
- overlays[OverlayImageDescriptor.BOTTOM_LEFT] = CDebugImages.DESC_OVRS_WARNING;
- break;
- case ICDebugElementStatus.ERROR:
- overlays[OverlayImageDescriptor.BOTTOM_LEFT] = CDebugImages.DESC_OVRS_ERROR;
- break;
- }
- }
- if ( element instanceof IWatchExpression && ((IWatchExpression)element).hasErrors() )
- overlays[OverlayImageDescriptor.BOTTOM_LEFT] = CDebugImages.DESC_OVRS_ERROR;
- if ( element instanceof ICVariable && ((ICVariable)element).isArgument() )
- overlays[OverlayImageDescriptor.TOP_RIGHT] = CDebugImages.DESC_OVRS_ARGUMENT;
- if ( element instanceof ICGlobalVariable && !(element instanceof IRegister) )
- overlays[OverlayImageDescriptor.TOP_RIGHT] = CDebugImages.DESC_OVRS_GLOBAL;
- return getImageCache().getImageFor( new OverlayImageDescriptor( baseImage, overlays ) );
- }
- return null;
- }
-
- private Image getBaseImage( Object element ) {
- if ( element instanceof ICDebugTarget ) {
- ICDebugTarget target = (ICDebugTarget)element;
- if ( target.isPostMortem() ) {
- return fDebugImageRegistry.get( DebugUITools.getImageDescriptor( IDebugUIConstants.IMG_OBJS_DEBUG_TARGET_TERMINATED ) );
- }
- if ( target.isTerminated() || target.isDisconnected() ) {
- return fDebugImageRegistry.get( DebugUITools.getImageDescriptor( IDebugUIConstants.IMG_OBJS_DEBUG_TARGET_TERMINATED ) );
- }
- return fDebugImageRegistry.get( DebugUITools.getImageDescriptor( IDebugUIConstants.IMG_OBJS_DEBUG_TARGET ) );
- }
- if ( element instanceof ICThread ) {
- ICThread thread = (ICThread)element;
- ICDebugTarget target = (ICDebugTarget)thread.getDebugTarget();
- if ( target.isPostMortem() ) {
- return fDebugImageRegistry.get( DebugUITools.getImageDescriptor( IDebugUIConstants.IMG_OBJS_THREAD_TERMINATED ) );
- }
- if ( thread.isSuspended() ) {
- return fDebugImageRegistry.get( DebugUITools.getImageDescriptor( IDebugUIConstants.IMG_OBJS_THREAD_SUSPENDED ) );
- }
- else if ( thread.isTerminated() ) {
- return fDebugImageRegistry.get( DebugUITools.getImageDescriptor( IDebugUIConstants.IMG_OBJS_THREAD_TERMINATED ) );
- }
- else {
- return fDebugImageRegistry.get( DebugUITools.getImageDescriptor( IDebugUIConstants.IMG_OBJS_THREAD_RUNNING ) );
- }
- }
- if ( element instanceof IMarker ) {
- IBreakpoint bp = getBreakpoint( (IMarker)element );
- if ( bp != null && bp instanceof ICBreakpoint ) {
- return getBreakpointImage( (ICBreakpoint)bp );
- }
- }
- if ( element instanceof ICBreakpoint ) {
- return getBreakpointImage( (ICBreakpoint)element );
- }
- if ( element instanceof IRegisterGroup ) {
- return getRegisterGroupImage( (IRegisterGroup)element );
- }
- if ( element instanceof IExpression ) {
- return getExpressionImage( (IExpression)element );
- }
- if ( element instanceof IRegister ) {
- return getRegisterImage( (IRegister)element );
- }
- if ( element instanceof IVariable ) {
- return getVariableImage( (IVariable)element );
- }
- if ( element instanceof ICModule ) {
- return getModuleImage( (ICModule)element );
- }
- if ( element instanceof ICSignal ) {
- return getSignalImage( (ICSignal)element );
- }
- return super.getImage( element );
- }
-
- protected Image getSignalImage( ICSignal signal ) {
- return CDebugUIPlugin.getImageDescriptorRegistry().get( CDebugImages.DESC_OBJS_SIGNAL );
- }
-
- protected Image getRegisterGroupImage( IRegisterGroup element ) {
- IEnableDisableTarget target = (IEnableDisableTarget)element.getAdapter( IEnableDisableTarget.class );
- if ( target != null && !target.isEnabled() )
- return fDebugImageRegistry.get( CDebugImages.DESC_OBJS_REGISTER_GROUP_DISABLED );
- return fDebugImageRegistry.get( CDebugImages.DESC_OBJS_REGISTER_GROUP );
- }
-
- protected Image getBreakpointImage( ICBreakpoint breakpoint ) {
- try {
- if ( breakpoint instanceof ICLineBreakpoint ) {
- return getLineBreakpointImage( (ICLineBreakpoint)breakpoint );
- }
- if ( breakpoint instanceof ICWatchpoint ) {
- return getWatchpointImage( (ICWatchpoint)breakpoint );
- }
- }
- catch( CoreException e ) {
- }
- return null;
- }
-
- protected Image getLineBreakpointImage( ICLineBreakpoint breakpoint ) throws CoreException {
- ImageDescriptor descriptor = null;
- if ( breakpoint.isEnabled() ) {
- descriptor = CDebugImages.DESC_OBJS_BREAKPOINT_ENABLED;
- }
- else {
- descriptor = CDebugImages.DESC_OBJS_BREAKPOINT_DISABLED;
- }
- return getImageCache().getImageFor( new OverlayImageDescriptor( fDebugImageRegistry.get( descriptor ), computeBreakpointOverlays( breakpoint ) ) );
- }
-
- protected Image getWatchpointImage( ICWatchpoint watchpoint ) throws CoreException {
- ImageDescriptor descriptor = null;
- if ( watchpoint.isEnabled() ) {
- if ( watchpoint.isReadType() && !watchpoint.isWriteType() )
- descriptor = CDebugImages.DESC_OBJS_READ_WATCHPOINT_ENABLED;
- else if ( !watchpoint.isReadType() && watchpoint.isWriteType() )
- descriptor = CDebugImages.DESC_OBJS_WRITE_WATCHPOINT_ENABLED;
- else
- descriptor = CDebugImages.DESC_OBJS_WATCHPOINT_ENABLED;
- }
- else {
- if ( watchpoint.isReadType() && !watchpoint.isWriteType() )
- descriptor = CDebugImages.DESC_OBJS_READ_WATCHPOINT_DISABLED;
- else if ( !watchpoint.isReadType() && watchpoint.isWriteType() )
- descriptor = CDebugImages.DESC_OBJS_WRITE_WATCHPOINT_DISABLED;
- else
- descriptor = CDebugImages.DESC_OBJS_WATCHPOINT_DISABLED;
- }
- return getImageCache().getImageFor( new OverlayImageDescriptor( fDebugImageRegistry.get( descriptor ), computeBreakpointOverlays( watchpoint ) ) );
- }
-
- public String getText( Object element ) {
- String bt = getBaseText( element );
- if ( bt == null )
- return null;
- StringBuffer baseText = new StringBuffer( bt );
- if ( element instanceof ICDebugElementStatus && !((ICDebugElementStatus)element).isOK() ) {
- baseText.append( getFormattedString( " <{0}>", ((ICDebugElementStatus)element).getMessage() ) ); //$NON-NLS-1$
- }
- if ( element instanceof IAdaptable ) {
- IEnableDisableTarget target = (IEnableDisableTarget)((IAdaptable)element).getAdapter( IEnableDisableTarget.class );
- if ( target != null ) {
- if ( !target.isEnabled() ) {
- baseText.append( ' ' );
- baseText.append( CDebugUIMessages.getString( "CDTDebugModelPresentation.25" ) ); //$NON-NLS-1$
- }
- }
- }
- return baseText.toString();
- }
-
- private String getBaseText( Object element ) {
- boolean showQualified = isShowQualifiedNames();
- StringBuffer label = new StringBuffer();
- try {
- if ( element instanceof ICModule ) {
- label.append( getModuleText( (ICModule)element, showQualified ) );
- return label.toString();
- }
- if ( element instanceof ICSignal ) {
- label.append( getSignalText( (ICSignal)element ) );
- return label.toString();
- }
- if ( element instanceof IRegisterGroup ) {
- label.append( ((IRegisterGroup)element).getName() );
- return label.toString();
- }
- if ( element instanceof IWatchExpression ) {
- return getWatchExpressionText( (IWatchExpression)element );
- }
- if ( element instanceof IVariable ) {
- label.append( getVariableText( (IVariable)element ) );
- return label.toString();
- }
- if ( element instanceof IValue ) {
- label.append( getValueText( (IValue)element ) );
- return label.toString();
- }
- if ( element instanceof IStackFrame ) {
- label.append( getStackFrameText( (IStackFrame)element, showQualified ) );
- return label.toString();
- }
- if ( element instanceof CSourceNotFoundElement ) {
- return getBaseText(((CSourceNotFoundElement)element).getElement());
- }
- if ( element instanceof IMarker ) {
- IBreakpoint breakpoint = getBreakpoint( (IMarker)element );
- if ( breakpoint != null ) {
- return CDebugUtils.getBreakpointText( breakpoint, showQualified );
- }
- return null;
- }
- if ( element instanceof IBreakpoint ) {
- return CDebugUtils.getBreakpointText( (IBreakpoint)element, showQualified );
- }
- if ( element instanceof IDebugTarget )
- label.append( getTargetText( (IDebugTarget)element, showQualified ) );
- else if ( element instanceof IThread )
- label.append( getThreadText( (IThread)element, showQualified ) );
- if ( element instanceof ITerminate ) {
- if ( ((ITerminate)element).isTerminated() ) {
- label.insert( 0, CDebugUIMessages.getString( "CDTDebugModelPresentation.0" ) ); //$NON-NLS-1$
- return label.toString();
- }
- }
- if ( element instanceof IDisconnect ) {
- if ( ((IDisconnect)element).isDisconnected() ) {
- label.insert( 0, CDebugUIMessages.getString( "CDTDebugModelPresentation.1" ) ); //$NON-NLS-1$
- return label.toString();
- }
- }
- if ( label.length() > 0 ) {
- return label.toString();
- }
- }
- catch( DebugException e ) {
- return MessageFormat.format( CDebugUIMessages.getString( "CDTDebugModelPresentation.2" ), new String[] { e.getMessage() } ); //$NON-NLS-1$
- }
- catch( CoreException e ) {
- CDebugUIPlugin.log( e );
- }
- return null;
- }
-
- protected String getModuleText( ICModule module, boolean qualified ) {
- StringBuffer sb = new StringBuffer();
- IPath path = module.getImageName();
- if ( !path.isEmpty() ) {
- sb.append( path.lastSegment() );
- }
- else {
- sb.append( CDebugUIMessages.getString( "CDebugModelPresentation.unknown_1" ) ); //$NON-NLS-1$
- }
- return sb.toString();
- }
-
- protected String getRegisterGroupText( IRegisterGroup group ) {
- String name = CDebugUIMessages.getString( "CDebugModelPresentation.not_available_1" ); //$NON-NLS-1$
- try {
- name = group.getName();
- }
- catch( DebugException e ) {
- CDebugUIPlugin.log( e.getStatus() );
- }
- return name;
- }
-
- protected boolean isShowQualifiedNames() {
- Boolean showQualified = (Boolean)getAttributes().get( DISPLAY_FULL_PATHS );
- showQualified = showQualified == null ? Boolean.FALSE : showQualified;
- return showQualified.booleanValue();
- }
-
- private HashMap getAttributes() {
- return this.fAttributes;
- }
-
- private OverlayImageCache getImageCache() {
- return this.fImageCache;
- }
-
- private boolean isEmpty( String string ) {
- return ( string == null || string.trim().length() == 0 );
- }
-
- protected IBreakpoint getBreakpoint( IMarker marker ) {
- return DebugPlugin.getDefault().getBreakpointManager().getBreakpoint( marker );
- }
-
- private ImageDescriptor[] computeBreakpointOverlays( ICBreakpoint breakpoint ) {
- ImageDescriptor[] overlays = new ImageDescriptor[]{ null, null, null, null };
- try {
- if ( breakpoint.isConditional() ) {
- overlays[OverlayImageDescriptor.TOP_LEFT] = (breakpoint.isEnabled()) ? CDebugImages.DESC_OVRS_BREAKPOINT_CONDITIONAL : CDebugImages.DESC_OVRS_BREAKPOINT_CONDITIONAL_DISABLED;
- }
- if ( breakpoint.isInstalled() ) {
- overlays[OverlayImageDescriptor.BOTTOM_LEFT] = (breakpoint.isEnabled()) ? CDebugImages.DESC_OVRS_BREAKPOINT_INSTALLED : CDebugImages.DESC_OVRS_BREAKPOINT_INSTALLED_DISABLED;
- }
- if ( breakpoint instanceof ICAddressBreakpoint ) {
- overlays[OverlayImageDescriptor.TOP_RIGHT] = (breakpoint.isEnabled()) ? CDebugImages.DESC_OVRS_ADDRESS_BREAKPOINT : CDebugImages.DESC_OVRS_ADDRESS_BREAKPOINT_DISABLED;
- }
- if ( breakpoint instanceof ICFunctionBreakpoint ) {
- overlays[OverlayImageDescriptor.TOP_RIGHT] = (breakpoint.isEnabled()) ? CDebugImages.DESC_OVRS_FUNCTION_BREAKPOINT : CDebugImages.DESC_OVRS_FUNCTION_BREAKPOINT_DISABLED;
- }
- }
- catch( CoreException e ) {
- CDebugUIPlugin.log( e );
- }
- return overlays;
- }
-
-
- protected Image getVariableImage( IVariable element ) {
- if ( element instanceof ICVariable ) {
- ICType type = null;
- try {
- type = ((ICVariable)element).getType();
- }
- catch( DebugException e ) {
- // use default image
- }
- if ( type != null && (type.isPointer() || type.isReference()) )
- return fDebugImageRegistry.get( (((ICVariable)element).isEnabled()) ? CDebugImages.DESC_OBJS_VARIABLE_POINTER : CDebugImages.DESC_OBJS_VARIABLE_POINTER_DISABLED );
- else if ( type != null && (type.isArray() || type.isStructure()) )
- return fDebugImageRegistry.get( (((ICVariable)element).isEnabled()) ? CDebugImages.DESC_OBJS_VARIABLE_AGGREGATE : CDebugImages.DESC_OBJS_VARIABLE_AGGREGATE_DISABLED );
- else
- return fDebugImageRegistry.get( (((ICVariable)element).isEnabled()) ? CDebugImages.DESC_OBJS_VARIABLE_SIMPLE : CDebugImages.DESC_OBJS_VARIABLE_SIMPLE_DISABLED );
- }
- return null;
- }
-
- protected Image getRegisterImage( IRegister element ) {
- return ( ( element instanceof ICVariable && ((ICVariable)element).isEnabled() ) ) ? fDebugImageRegistry.get( CDebugImages.DESC_OBJS_REGISTER ) : fDebugImageRegistry.get( CDebugImages.DESC_OBJS_REGISTER_DISABLED );
- }
-
- protected Image getExpressionImage( IExpression element ) {
- return fDebugImageRegistry.get( DebugUITools.getImageDescriptor( IDebugUIConstants.IMG_OBJS_EXPRESSION ) );
- }
-
- protected Image getModuleImage( ICModule element ) {
- switch( element.getType() ) {
- case ICModule.EXECUTABLE:
- if ( element.areSymbolsLoaded() ) {
- return CDebugUIPlugin.getImageDescriptorRegistry().get( CDebugImages.DESC_OBJS_EXECUTABLE_WITH_SYMBOLS );
- }
- return CDebugUIPlugin.getImageDescriptorRegistry().get( CDebugImages.DESC_OBJS_EXECUTABLE );
- case ICModule.SHARED_LIBRARY:
- if ( element.areSymbolsLoaded() ) {
- return CDebugUIPlugin.getImageDescriptorRegistry().get( CDebugImages.DESC_OBJS_SHARED_LIBRARY_WITH_SYMBOLS );
- }
- return CDebugUIPlugin.getImageDescriptorRegistry().get( CDebugImages.DESC_OBJS_SHARED_LIBRARY );
- }
- return null;
- }
-
- private String getVariableTypeName( ICType type ) {
- StringBuffer result = new StringBuffer();
- String typeName = type.getName();
- if ( typeName != null )
- typeName = typeName.trim();
- if ( type.isArray() && typeName != null ) {
- int index = typeName.indexOf( '[' );
- if ( index != -1 )
- typeName = typeName.substring( 0, index ).trim();
- }
- if ( typeName != null && typeName.length() > 0 ) {
- result.append( typeName );
- if ( type.isArray() ) {
- int[] dims = type.getArrayDimensions();
- for( int i = 0; i < dims.length; ++i ) {
- result.append( '[' );
- result.append( dims[i] );
- result.append( ']' );
- }
- }
- }
- return result.toString();
- }
-
- protected String getVariableText( IVariable var ) throws DebugException {
- StringBuffer label = new StringBuffer();
- if ( var instanceof ICVariable ) {
- ICType type = null;
- try {
- type = ((ICVariable)var).getType();
- }
- catch( DebugException e ) {
- // don't display type
- }
- if ( type != null && isShowVariableTypeNames() ) {
- String typeName = getVariableTypeName( type );
- if ( typeName != null && typeName.length() > 0 ) {
- label.append( typeName ).append( ' ' );
- }
- }
- String name = var.getName();
- if ( name != null )
- label.append( name.trim() );
- String valueString = getValueText( var.getValue() );
- if ( !isEmpty( valueString ) ) {
- label.append( " = " ); //$NON-NLS-1$
- label.append( valueString );
- }
- }
- return label.toString();
- }
-
- protected String getValueText( IValue value )/* throws DebugException*/ {
- StringBuffer label = new StringBuffer();
- if ( value instanceof ICDebugElementStatus && !((ICDebugElementStatus)value).isOK() ) {
- label.append( getFormattedString( CDebugUIMessages.getString( "CDTDebugModelPresentation.4" ), ((ICDebugElementStatus)value).getMessage() ) ); //$NON-NLS-1$
- }
- else if ( value instanceof ICValue ) {
- ICType type = null;
- try {
- type = ((ICValue)value).getType();
- }
- catch( DebugException e ) {
- }
- try {
- String valueString = value.getValueString();
- if ( valueString != null ) {
- valueString = valueString.trim();
- if ( type != null && type.isCharacter() ) {
- if ( valueString.length() == 0 )
- valueString = "."; //$NON-NLS-1$
- label.append( valueString );
- }
- else if ( type != null && type.isFloatingPointType() ) {
- Number floatingPointValue = CDebugUtils.getFloatingPointValue( (ICValue)value );
- if ( CDebugUtils.isNaN( floatingPointValue ) )
- valueString = "NAN"; //$NON-NLS-1$
- if ( CDebugUtils.isPositiveInfinity( floatingPointValue ) )
- valueString = CDebugUIMessages.getString( "CDTDebugModelPresentation.23" ); //$NON-NLS-1$
- if ( CDebugUtils.isNegativeInfinity( floatingPointValue ) )
- valueString = CDebugUIMessages.getString( "CDTDebugModelPresentation.24" ); //$NON-NLS-1$
- label.append( valueString );
- }
- else if ( type == null || (!type.isArray() && !type.isStructure()) ) {
- if ( valueString.length() > 0 ) {
- label.append( valueString );
- }
- }
- }
- }
- catch( DebugException e1 ) {
- }
- }
- return label.toString();
- }
-
- protected String getSignalText( ICSignal signal ) {
- StringBuffer sb = new StringBuffer( CDebugUIMessages.getString( "CDTDebugModelPresentation.12" ) ); //$NON-NLS-1$
- try {
- String name = signal.getName();
- sb.append( " \'" ).append( name ).append( '\'' ); //$NON-NLS-1$
- }
- catch( DebugException e ) {
- }
- return sb.toString();
- }
-
- protected String getWatchExpressionText( IWatchExpression expression ) {
- StringBuffer result = new StringBuffer();
- result.append( '"' ).append( expression.getExpressionText() ).append( '"' );
- if ( expression.isPending() ) {
- result.append( " = " ).append( "..." ); //$NON-NLS-1$//$NON-NLS-2$
- }
- else {
- IValue value = expression.getValue();
- if ( value instanceof ICValue ) {
- ICType type = null;
- try {
- type = ((ICValue)value).getType();
- }
- catch( DebugException e1 ) {
- }
- if ( type != null && isShowVariableTypeNames() ) {
- String typeName = getVariableTypeName( type );
- if ( !isEmpty( typeName ) ) {
- result.insert( 0, typeName + ' ' );
- }
- }
- if ( expression.isEnabled() ) {
- String valueString = getValueText( value );
- if ( valueString.length() > 0 ) {
- result.append( " = " ).append( valueString ); //$NON-NLS-1$
- }
- }
- }
- }
- if ( !expression.isEnabled() ) {
- result.append( ' ' );
- result.append( CDebugUIMessages.getString( "CDTDebugModelPresentation.22" ) ); //$NON-NLS-1$
- }
- return result.toString();
- }
-
- protected String getTargetText( IDebugTarget target, boolean qualified ) throws DebugException {
- ICDebugTarget t = (ICDebugTarget)target.getAdapter( ICDebugTarget.class );
- if ( t != null ) {
- if ( !t.isPostMortem() ) {
- CDebugElementState state = t.getState();
- if ( state.equals( CDebugElementState.EXITED ) ) {
- Object info = t.getCurrentStateInfo();
- String label = CDebugUIMessages.getString( "CDTDebugModelPresentation.3" ); //$NON-NLS-1$
- String reason = ""; //$NON-NLS-1$
- if ( info != null && info instanceof ICDISignalExitInfo ) {
- ICDISignalExitInfo sigInfo = (ICDISignalExitInfo)info;
- reason = ' ' + MessageFormat.format( CDebugUIMessages.getString( "CDTDebugModelPresentation.5" ), new String[]{ sigInfo.getName(), sigInfo.getDescription() } ); //$NON-NLS-1$
- }
- else if ( info != null && info instanceof ICDIExitInfo ) {
- reason = ' ' + MessageFormat.format( CDebugUIMessages.getString( "CDTDebugModelPresentation.6" ), new Integer[] { new Integer( ((ICDIExitInfo)info).getCode() ) } ); //$NON-NLS-1$
- }
- return MessageFormat.format( label, new String[] { target.getName(), reason } );
- }
- else if ( state.equals( CDebugElementState.SUSPENDED ) ) {
- return MessageFormat.format( CDebugUIMessages.getString( "CDTDebugModelPresentation.7" ), new String[] { target.getName() } ); //$NON-NLS-1$
- }
- }
- }
- return target.getName();
- }
-
- protected String getThreadText( IThread thread, boolean qualified ) throws DebugException {
- ICDebugTarget target = (ICDebugTarget)thread.getDebugTarget().getAdapter( ICDebugTarget.class );
- if ( target.isPostMortem() ) {
- return getFormattedString( CDebugUIMessages.getString( "CDTDebugModelPresentation.8" ), thread.getName() ); //$NON-NLS-1$
- }
- if ( thread.isTerminated() ) {
- return getFormattedString( CDebugUIMessages.getString( "CDTDebugModelPresentation.9" ), thread.getName() ); //$NON-NLS-1$
- }
- if ( thread.isStepping() ) {
- return getFormattedString( CDebugUIMessages.getString( "CDTDebugModelPresentation.10" ), thread.getName() ); //$NON-NLS-1$
- }
- if ( !thread.isSuspended() ) {
- return getFormattedString( CDebugUIMessages.getString( "CDTDebugModelPresentation.11" ), thread.getName() ); //$NON-NLS-1$
- }
- if ( thread.isSuspended() ) {
- String reason = ""; //$NON-NLS-1$
- ICDebugElement element = (ICDebugElement)thread.getAdapter( ICDebugElement.class );
- if ( element != null ) {
- Object info = element.getCurrentStateInfo();
- if ( info != null && info instanceof ICDISignalReceived ) {
- ICDISignal signal = ((ICDISignalReceived)info).getSignal();
- reason = MessageFormat.format( CDebugUIMessages.getString( "CDTDebugModelPresentation.13" ), new String[]{ signal.getName(), signal.getDescription() } ); //$NON-NLS-1$
- }
- else if ( info != null && info instanceof ICDIWatchpointTrigger ) {
- reason = MessageFormat.format( CDebugUIMessages.getString( "CDTDebugModelPresentation.14" ), new String[]{ ((ICDIWatchpointTrigger)info).getOldValue(), ((ICDIWatchpointTrigger)info).getNewValue() } ); //$NON-NLS-1$
- }
- else if ( info != null && info instanceof ICDIWatchpointScope ) {
- reason = CDebugUIMessages.getString( "CDTDebugModelPresentation.15" ); //$NON-NLS-1$
- }
- else if ( info != null && info instanceof ICDIBreakpointHit ) {
- reason = CDebugUIMessages.getString( "CDTDebugModelPresentation.16" ); //$NON-NLS-1$
- }
- else if ( info != null && info instanceof ICDISharedLibraryEvent ) {
- reason = CDebugUIMessages.getString( "CDTDebugModelPresentation.17" ); //$NON-NLS-1$
- }
- }
- return MessageFormat.format( CDebugUIMessages.getString( "CDTDebugModelPresentation.18" ), new String[] { thread.getName(), reason } ); //$NON-NLS-1$
- }
- return MessageFormat.format( CDebugUIMessages.getString( "CDTDebugModelPresentation.19" ), new String[] { thread.getName() } ); //$NON-NLS-1$
- }
-
- protected String getStackFrameText( IStackFrame f, boolean qualified ) throws DebugException {
- if ( f instanceof ICStackFrame ) {
- ICStackFrame frame = (ICStackFrame)f;
- StringBuffer label = new StringBuffer();
- label.append( frame.getLevel() );
- label.append( ' ' );
- String function = frame.getFunction();
- if ( isEmpty( function ) ) {
- label.append( CDebugUIMessages.getString( "CDTDebugModelPresentation.21" ) ); //$NON-NLS-1$
- }
- else {
- function = function.trim();
- label.append( function );
- label.append( "() " ); //$NON-NLS-1$
- if ( frame.getFile() != null ) {
- IPath path = new Path( frame.getFile() );
- if ( !path.isEmpty() ) {
- label.append( (qualified ? path.toOSString() : path.lastSegment()) );
- label.append( ':' );
- if ( frame.getFrameLineNumber() != 0 )
- label.append( frame.getFrameLineNumber() );
- }
- }
- }
- IAddress address = frame.getAddress();
- if ( address != null ) {
- label.append( ' ' );
- label.append( address.toHexAddressString() );
- }
- return label.toString();
- }
- return (f.getAdapter( IDummyStackFrame.class ) != null) ? getDummyStackFrameLabel( f ) : f.getName();
- }
-
- private String getDummyStackFrameLabel( IStackFrame stackFrame ) {
- return DUMMY_STACKFRAME_LABEL;
- }
-
- protected boolean isShowVariableTypeNames() {
- Boolean show = (Boolean)fAttributes.get( DISPLAY_VARIABLE_TYPE_NAMES );
- show = show == null ? Boolean.FALSE : show;
- return show.booleanValue();
- }
-
- public static String getFormattedString( String key, String arg ) {
- return getFormattedString( key, new String[]{ arg } );
- }
-
- public static String getFormattedString( String string, String[] args ) {
- return MessageFormat.format( string, args );
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.jface.viewers.IBaseLabelProvider#dispose()
- */
- public void dispose() {
- getImageCache().disposeAll();
- fAttributes.clear();
- super.dispose();
- }
-}
diff --git a/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/CDebugUIMessages.java b/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/CDebugUIMessages.java
deleted file mode 100644
index 35563b8d67f..00000000000
--- a/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/CDebugUIMessages.java
+++ /dev/null
@@ -1,33 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.internal.ui;
-
-import java.util.MissingResourceException;
-import java.util.ResourceBundle;
-
-public class CDebugUIMessages {
-
- private static final String BUNDLE_NAME = "org.eclipse.cdt.debug.internal.ui.CDebugUIMessages"; //$NON-NLS-1$
-
- private static final ResourceBundle RESOURCE_BUNDLE = ResourceBundle.getBundle( BUNDLE_NAME );
-
- private CDebugUIMessages() {
- }
-
- public static String getString( String key ) {
- try {
- return RESOURCE_BUNDLE.getString( key );
- }
- catch( MissingResourceException e ) {
- return '!' + key + '!';
- }
- }
-}
diff --git a/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/CDebugUIMessages.properties b/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/CDebugUIMessages.properties
deleted file mode 100644
index 61b959dd79e..00000000000
--- a/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/CDebugUIMessages.properties
+++ /dev/null
@@ -1,41 +0,0 @@
-###############################################################################
-# Copyright (c) 2003, 2006 QNX Software Systems and others.
-# All rights reserved. This program and the accompanying materials
-# are made available under the terms of the Eclipse Public License v1.0
-# which accompanies this distribution, and is available at
-# http://www.eclipse.org/legal/epl-v10.html
-#
-# Contributors:
-# QNX Software Systems - initial API and implementation
-###############################################################################
-
-CDebugModelPresentation.unknown_1=unknown
-CDebugImageDescriptorRegistry.0=Allocating image for wrong display.
-CDebugModelPresentation.not_available_1=<not available>
-CDTDebugModelPresentation.0=<terminated>
-CDTDebugModelPresentation.1=<disconnected>
-CDTDebugModelPresentation.2=<not available: {0}>
-CDTDebugModelPresentation.3={0} (Exited.{1})
-CDTDebugModelPresentation.5=Signal ''{0}'' received. Description: {1}.
-CDTDebugModelPresentation.6=Exit code = {0}.
-CDTDebugModelPresentation.7={0} (Suspended)
-CDTDebugModelPresentation.8=Thread [{0}]
-CDTDebugModelPresentation.9=Thread [{0}] (Terminated)
-CDTDebugModelPresentation.4=<Error. {0}>
-CDTDebugModelPresentation.10=Thread [{0}] (Stepping)
-CDTDebugModelPresentation.11=Thread [{0}] (Running)
-CDTDebugModelPresentation.13=: Signal ''{0}'' received. Description: {1}.
-CDTDebugModelPresentation.14=: Watchpoint triggered. Old value: ''{0}''. New value: ''{1}''.
-CDTDebugModelPresentation.15=: Watchpoint is out of scope.
-CDTDebugModelPresentation.16=: Breakpoint hit.
-CDTDebugModelPresentation.17=: Shared library event.
-CDTDebugModelPresentation.18=Thread [{0}] (Suspended{1})
-CDTDebugModelPresentation.19=Thread [{0}]
-CDTDebugModelPresentation.12=signal
-CDTDebugModelPresentation.21=<symbol is not available>
-CDTDebugModelPresentation.22=(disabled)
-CDTDebugModelPresentation.23=Infinity
-CDTDebugModelPresentation.24=-Infinity
-CDTDebugModelPresentation.25=(disabled)
-CBreakpointWorkbenchAdapterFactory.0=C/C++ breakpoint
-CBreakpointWorkbenchAdapterFactory.1=C/C++ watchpoint
diff --git a/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/CDebugUIPreferenceInitializer.java b/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/CDebugUIPreferenceInitializer.java
deleted file mode 100644
index cdb33283422..00000000000
--- a/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/CDebugUIPreferenceInitializer.java
+++ /dev/null
@@ -1,37 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004, 2005 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.internal.ui;
-
-import org.eclipse.cdt.debug.internal.ui.preferences.CDebugPreferencePage;
-import org.eclipse.cdt.debug.ui.CDebugUIPlugin;
-import org.eclipse.core.runtime.preferences.AbstractPreferenceInitializer;
-import org.eclipse.jface.preference.IPreferenceStore;
-
-/**
- * Default preference value initializer for <code>CDebugUIplugin</code>.
- */
-public class CDebugUIPreferenceInitializer extends AbstractPreferenceInitializer {
-
- /**
- * Constructor for CDebugUIPreferenceInitializer.
- */
- public CDebugUIPreferenceInitializer() {
- super();
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.core.runtime.preferences.AbstractPreferenceInitializer#initializeDefaultPreferences()
- */
- public void initializeDefaultPreferences() {
- IPreferenceStore pstore = CDebugUIPlugin.getDefault().getPreferenceStore();
- CDebugPreferencePage.initDefaults( pstore );
- }
-}
diff --git a/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/CDebugUIUtils.java b/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/CDebugUIUtils.java
deleted file mode 100644
index b0e051b671f..00000000000
--- a/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/CDebugUIUtils.java
+++ /dev/null
@@ -1,75 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.internal.ui;
-
-import org.eclipse.cdt.debug.core.model.ICStackFrame;
-import org.eclipse.core.runtime.IAdaptable;
-import org.eclipse.debug.ui.DebugUITools;
-import org.eclipse.jface.text.BadLocationException;
-import org.eclipse.jface.text.IDocument;
-import org.eclipse.jface.text.IRegion;
-import org.eclipse.jface.text.Region;
-
-/**
- * Utility methods for C/C++ Debug UI.
- */
-public class CDebugUIUtils {
-
- static public IRegion findWord( IDocument document, int offset ) {
- int start = -1;
- int end = -1;
- try {
- int pos = offset;
- char c;
- while( pos >= 0 ) {
- c = document.getChar( pos );
- if ( !Character.isJavaIdentifierPart( c ) )
- break;
- --pos;
- }
- start = pos;
- pos = offset;
- int length = document.getLength();
- while( pos < length ) {
- c = document.getChar( pos );
- if ( !Character.isJavaIdentifierPart( c ) )
- break;
- ++pos;
- }
- end = pos;
- }
- catch( BadLocationException x ) {
- }
- if ( start > -1 && end > -1 ) {
- if ( start == offset && end == offset )
- return new Region( offset, 0 );
- else if ( start == offset )
- return new Region( start, end - start );
- else
- return new Region( start + 1, end - start - 1 );
- }
- return null;
- }
-
- /**
- * Returns the currently selected stack frame or the topmost frame
- * in the currently selected thread in the Debug view
- * of the current workbench page. Returns <code>null</code>
- * if no stack frame or thread is selected, or if not called from the UI thread.
- *
- * @return the currently selected stack frame or the topmost frame
- * in the currently selected thread
- */
- static public ICStackFrame getCurrentStackFrame() {
- IAdaptable context = DebugUITools.getDebugContext();
- return ( context != null ) ? (ICStackFrame)context.getAdapter( ICStackFrame.class ) : null;
- }
-}
diff --git a/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/CDebuggerPageAdapter.java b/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/CDebuggerPageAdapter.java
deleted file mode 100644
index 787b499fa84..00000000000
--- a/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/CDebuggerPageAdapter.java
+++ /dev/null
@@ -1,165 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.internal.ui;
-
-import org.eclipse.cdt.debug.ui.ICDebuggerPage;
-import org.eclipse.debug.core.ILaunch;
-import org.eclipse.debug.core.ILaunchConfiguration;
-import org.eclipse.debug.core.ILaunchConfigurationWorkingCopy;
-import org.eclipse.debug.ui.ILaunchConfigurationDialog;
-import org.eclipse.debug.ui.ILaunchConfigurationTab;
-import org.eclipse.swt.graphics.Image;
-import org.eclipse.swt.widgets.Composite;
-import org.eclipse.swt.widgets.Control;
-
-/**
- * Migration from <code>AbstractLaunchConfigurationTab</code> to <code>ICDebuggerPage</code>.
- *
- * @since 3.1
- */
-public class CDebuggerPageAdapter implements ICDebuggerPage {
-
- private ILaunchConfigurationTab fDelegate;
- private String fDebuggerId;
-
- /**
- * Constructor for CDebuggerPageAdapter.
- */
- public CDebuggerPageAdapter( ILaunchConfigurationTab tab ) {
- fDelegate = tab;
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.cdt.debug.ui.ICDebuggerPage#init(java.lang.String)
- */
- public void init( String debuggerID ) {
- fDebuggerId = debuggerID;
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.cdt.debug.ui.ICDebuggerPage#getDebuggerIdentifier()
- */
- public String getDebuggerIdentifier() {
- return fDebuggerId;
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.debug.ui.ILaunchConfigurationTab#createControl(org.eclipse.swt.widgets.Composite)
- */
- public void createControl( Composite parent ) {
- fDelegate.createControl( parent );
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.debug.ui.ILaunchConfigurationTab#getControl()
- */
- public Control getControl() {
- return fDelegate.getControl();
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.debug.ui.ILaunchConfigurationTab#setDefaults(org.eclipse.debug.core.ILaunchConfigurationWorkingCopy)
- */
- public void setDefaults( ILaunchConfigurationWorkingCopy configuration ) {
- fDelegate.setDefaults( configuration );
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.debug.ui.ILaunchConfigurationTab#initializeFrom(org.eclipse.debug.core.ILaunchConfiguration)
- */
- public void initializeFrom( ILaunchConfiguration configuration ) {
- fDelegate.initializeFrom( configuration );
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.debug.ui.ILaunchConfigurationTab#dispose()
- */
- public void dispose() {
- fDelegate.dispose();
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.debug.ui.ILaunchConfigurationTab#performApply(org.eclipse.debug.core.ILaunchConfigurationWorkingCopy)
- */
- public void performApply( ILaunchConfigurationWorkingCopy configuration ) {
- fDelegate.performApply( configuration );
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.debug.ui.ILaunchConfigurationTab#getErrorMessage()
- */
- public String getErrorMessage() {
- return fDelegate.getErrorMessage();
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.debug.ui.ILaunchConfigurationTab#getMessage()
- */
- public String getMessage() {
- return fDelegate.getMessage();
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.debug.ui.ILaunchConfigurationTab#isValid(org.eclipse.debug.core.ILaunchConfiguration)
- */
- public boolean isValid( ILaunchConfiguration launchConfig ) {
- return fDelegate.isValid( launchConfig );
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.debug.ui.ILaunchConfigurationTab#canSave()
- */
- public boolean canSave() {
- return fDelegate.canSave();
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.debug.ui.ILaunchConfigurationTab#setLaunchConfigurationDialog(org.eclipse.debug.ui.ILaunchConfigurationDialog)
- */
- public void setLaunchConfigurationDialog( ILaunchConfigurationDialog dialog ) {
- fDelegate.setLaunchConfigurationDialog( dialog );
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.debug.ui.ILaunchConfigurationTab#launched(org.eclipse.debug.core.ILaunch)
- */
- public void launched( ILaunch launch ) {
- fDelegate.launched( launch );
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.debug.ui.ILaunchConfigurationTab#getName()
- */
- public String getName() {
- return fDelegate.getName();
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.debug.ui.ILaunchConfigurationTab#getImage()
- */
- public Image getImage() {
- return fDelegate.getImage();
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.debug.ui.ILaunchConfigurationTab#activated(org.eclipse.debug.core.ILaunchConfigurationWorkingCopy)
- */
- public void activated( ILaunchConfigurationWorkingCopy workingCopy ) {
- fDelegate.activated( workingCopy );
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.debug.ui.ILaunchConfigurationTab#deactivated(org.eclipse.debug.core.ILaunchConfigurationWorkingCopy)
- */
- public void deactivated( ILaunchConfigurationWorkingCopy workingCopy ) {
- fDelegate.deactivated( workingCopy );
- }
-}
diff --git a/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/CValueDetailProvider.java b/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/CValueDetailProvider.java
deleted file mode 100644
index 80cdac5d4c4..00000000000
--- a/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/CValueDetailProvider.java
+++ /dev/null
@@ -1,47 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2005 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.internal.ui;
-
-import org.eclipse.cdt.debug.core.model.ICStackFrame;
-import org.eclipse.cdt.debug.core.model.ICValue;
-import org.eclipse.debug.core.DebugPlugin;
-import org.eclipse.debug.core.model.IValue;
-import org.eclipse.debug.ui.IValueDetailListener;
-
-/**
- * Computes a detailed description of the given value.
- */
-public class CValueDetailProvider {
-
- //The shared instance.
- private static CValueDetailProvider fInstance = null;
-
- public static CValueDetailProvider getDefault() {
- if ( fInstance == null ) {
- fInstance = new CValueDetailProvider();
- }
- return fInstance;
- }
-
- public void computeDetail( final IValue value, final IValueDetailListener listener ) {
- if ( value instanceof ICValue ) {
- final ICStackFrame frame = CDebugUIUtils.getCurrentStackFrame();
- if ( frame != null ) {
- DebugPlugin.getDefault().asyncExec( new Runnable() {
-
- public void run() {
- listener.detailComputed( value, ((ICValue)value).evaluateAsExpression( frame ) );
- }
- } );
- }
- }
- }
-}
diff --git a/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/CWatchExpressionDelegate.java b/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/CWatchExpressionDelegate.java
deleted file mode 100644
index d1a917891d1..00000000000
--- a/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/CWatchExpressionDelegate.java
+++ /dev/null
@@ -1,77 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.internal.ui;
-
-import org.eclipse.cdt.debug.core.model.ICStackFrame;
-import org.eclipse.debug.core.DebugException;
-import org.eclipse.debug.core.DebugPlugin;
-import org.eclipse.debug.core.model.IDebugElement;
-import org.eclipse.debug.core.model.IValue;
-import org.eclipse.debug.core.model.IWatchExpressionDelegate;
-import org.eclipse.debug.core.model.IWatchExpressionListener;
-import org.eclipse.debug.core.model.IWatchExpressionResult;
-
-public class CWatchExpressionDelegate implements IWatchExpressionDelegate {
-
- /* (non-Javadoc)
- * @see org.eclipse.debug.core.model.IWatchExpressionDelegate#evaluateExpression(java.lang.String, org.eclipse.debug.core.model.IDebugElement, org.eclipse.debug.core.model.IWatchExpressionListener)
- */
- public void evaluateExpression( final String expression, IDebugElement context, final IWatchExpressionListener listener ) {
- if ( !(context instanceof ICStackFrame) ) {
- listener.watchEvaluationFinished( null );
- return;
- }
- final ICStackFrame frame = (ICStackFrame)context;
- Runnable runnable = new Runnable() {
- public void run() {
- IValue value = null;
- DebugException de = null;
- try {
- value = frame.evaluateExpression( expression );
- }
- catch( DebugException e ) {
- de = e;
- }
- IWatchExpressionResult result = evaluationComplete( expression, value, de );
- listener.watchEvaluationFinished( result );
- }
- };
- DebugPlugin.getDefault().asyncExec( runnable );
- }
-
- protected IWatchExpressionResult evaluationComplete( final String expression, final IValue value, final DebugException de ) {
- return new IWatchExpressionResult() {
-
- public IValue getValue() {
- return value;
- }
-
- public boolean hasErrors() {
- return ( de != null );
- }
-
- public String getExpressionText() {
- return expression;
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.debug.core.model.IWatchExpressionResult#getException()
- */
- public DebugException getException() {
- return de;
- }
-
- public String[] getErrorMessages() {
- return ( de != null ) ? new String[] { de.getMessage() } : new String[0];
- }
- };
- }
-}
diff --git a/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/ColorManager.java b/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/ColorManager.java
deleted file mode 100644
index b6c27c48ca8..00000000000
--- a/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/ColorManager.java
+++ /dev/null
@@ -1,61 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.internal.ui;
-
-import java.util.HashMap;
-import java.util.Iterator;
-import java.util.Map;
-
-import org.eclipse.swt.graphics.Color;
-import org.eclipse.swt.graphics.RGB;
-import org.eclipse.swt.widgets.Display;
-
-/**
- *
- * Color manager for C/C++ Debug UI.
- *
- * @since Jul 23, 2002
- */
-public class ColorManager {
-
- private static ColorManager gfColorManager;
-
- private ColorManager() {
- }
-
- public static ColorManager getDefault() {
- if ( gfColorManager == null ) {
- gfColorManager = new ColorManager();
- }
- return gfColorManager;
- }
-
- protected Map fColorTable = new HashMap( 10 );
-
- public Color getColor( RGB rgb ) {
- Color color = (Color)getColorTable().get(rgb);
- if ( color == null ) {
- color = new Color( Display.getCurrent(), rgb );
- getColorTable().put( rgb, color );
- }
- return color;
- }
-
- public void dispose() {
- Iterator e = getColorTable().values().iterator();
- while( e.hasNext() )
- ((Color)e.next()).dispose();
- }
-
- private Map getColorTable() {
- return this.fColorTable;
- }
-}
diff --git a/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/DebugMarkerAnnotationModel.java b/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/DebugMarkerAnnotationModel.java
deleted file mode 100644
index 0519c7316bf..00000000000
--- a/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/DebugMarkerAnnotationModel.java
+++ /dev/null
@@ -1,103 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.internal.ui;
-
-import java.io.File;
-import org.eclipse.cdt.debug.core.CDIDebugModel;
-import org.eclipse.cdt.debug.core.model.ICBreakpoint;
-import org.eclipse.core.resources.IMarker;
-import org.eclipse.core.resources.IMarkerDelta;
-import org.eclipse.core.runtime.CoreException;
-import org.eclipse.debug.core.DebugPlugin;
-import org.eclipse.debug.core.IBreakpointsListener;
-import org.eclipse.debug.core.model.IBreakpoint;
-import org.eclipse.ui.texteditor.AbstractMarkerAnnotationModel;
-
-public class DebugMarkerAnnotationModel extends AbstractMarkerAnnotationModel implements IBreakpointsListener {
-
- private File fFile;
-
- public DebugMarkerAnnotationModel( File file ) {
- super();
- fFile = file;
- }
-
- protected IMarker[] retrieveMarkers() throws CoreException {
- IBreakpoint[] breakpoints = DebugPlugin.getDefault().getBreakpointManager().getBreakpoints( CDIDebugModel.getPluginIdentifier() );
- IMarker[] markers = new IMarker[breakpoints.length];
- for ( int i = 0; i < markers.length; ++i ) {
- markers[i] = breakpoints[i].getMarker();
- }
- return markers;
- }
-
- protected void deleteMarkers( IMarker[] markers ) throws CoreException {
- }
-
- protected void listenToMarkerChanges( boolean listen ) {
- if ( listen )
- DebugPlugin.getDefault().getBreakpointManager().addBreakpointListener( this );
- else
- DebugPlugin.getDefault().getBreakpointManager().removeBreakpointListener( this );
- }
-
- protected boolean isAcceptable( IMarker marker ) {
- IBreakpoint b = DebugPlugin.getDefault().getBreakpointManager().getBreakpoint( marker );
- if ( b != null ) {
- return isAcceptable( b );
- }
- return false;
- }
-
- protected File getFile() {
- return fFile;
- }
-
- public void breakpointsAdded( IBreakpoint[] breakpoints ) {
- for ( int i = 0; i < breakpoints.length; ++i ) {
- if ( isAcceptable( breakpoints[i] ) ) {
- addMarkerAnnotation( breakpoints[i].getMarker() );
- fireModelChanged();
- }
- }
- }
-
- public void breakpointsRemoved( IBreakpoint[] breakpoints, IMarkerDelta[] deltas ) {
- for ( int i = 0; i < breakpoints.length; ++i ) {
- if ( isAcceptable( breakpoints[i] ) ) {
- removeMarkerAnnotation( breakpoints[i].getMarker() );
- fireModelChanged();
- }
- }
- }
-
- public void breakpointsChanged( IBreakpoint[] breakpoints, IMarkerDelta[] deltas ) {
- for ( int i = 0; i < breakpoints.length; ++i ) {
- if ( isAcceptable( breakpoints[i] ) ) {
- modifyMarkerAnnotation( breakpoints[i].getMarker() );
- fireModelChanged();
- }
- }
- }
-
- private boolean isAcceptable( IBreakpoint b ) {
- if ( b instanceof ICBreakpoint ) {
- try {
- String handle = ((ICBreakpoint)b).getSourceHandle();
- File file = new File( handle );
- return file.equals( getFile() );
- }
- catch( CoreException e ) {
- }
- }
- return false;
- }
-}
diff --git a/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/DebugMarkerAnnotationModelFactory.java b/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/DebugMarkerAnnotationModelFactory.java
deleted file mode 100644
index 9a32d491f00..00000000000
--- a/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/DebugMarkerAnnotationModelFactory.java
+++ /dev/null
@@ -1,37 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.internal.ui;
-
-import java.io.File;
-import org.eclipse.core.filebuffers.FileBuffers;
-import org.eclipse.core.resources.IFile;
-import org.eclipse.core.runtime.IPath;
-import org.eclipse.jface.text.source.IAnnotationModel;
-import org.eclipse.ui.texteditor.ResourceMarkerAnnotationModelFactory;
-
-public class DebugMarkerAnnotationModelFactory extends ResourceMarkerAnnotationModelFactory {
-
- /* (non-Javadoc)
- * @see org.eclipse.ui.texteditor.ResourceMarkerAnnotationModelFactory#createAnnotationModel(org.eclipse.core.runtime.IPath)
- */
- public IAnnotationModel createAnnotationModel( IPath location ) {
- IFile file = FileBuffers.getWorkspaceFileAtLocation( location );
- if ( file != null ) {
- return super.createAnnotationModel( location );
- }
- File osFile = new File( location.toOSString() );
- if ( osFile.exists() ) {
- return new DebugMarkerAnnotationModel( osFile );
- }
- return null;
- }
-
-}
diff --git a/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/DetailsViewerConfiguration.java b/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/DetailsViewerConfiguration.java
deleted file mode 100644
index 0e163d3ce5b..00000000000
--- a/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/DetailsViewerConfiguration.java
+++ /dev/null
@@ -1,20 +0,0 @@
-/**********************************************************************
- * Copyright (c) 2004, 2005 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- ***********************************************************************/
-package org.eclipse.cdt.debug.internal.ui;
-
-import org.eclipse.jface.text.source.SourceViewerConfiguration;
-
-/**
- * The source viewer configuration used in the Details pane of the variables,
- * registers and expressions views.
- */
-public class DetailsViewerConfiguration extends SourceViewerConfiguration {
-}
diff --git a/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/ErrorStatusHandler.java b/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/ErrorStatusHandler.java
deleted file mode 100644
index 03c32ea5d98..00000000000
--- a/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/ErrorStatusHandler.java
+++ /dev/null
@@ -1,42 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.internal.ui;
-
-import org.eclipse.cdt.debug.ui.CDebugUIPlugin;
-import org.eclipse.core.runtime.CoreException;
-import org.eclipse.core.runtime.IStatus;
-import org.eclipse.debug.core.IStatusHandler;
-import org.eclipse.debug.core.model.IDebugElement;
-import org.eclipse.debug.core.model.IDebugTarget;
-import org.eclipse.jface.dialogs.ErrorDialog;
-
-/**
- * Displays the error dialog.
- */
-public class ErrorStatusHandler implements IStatusHandler {
-
- /* (non-Javadoc)
- * @see org.eclipse.debug.core.IStatusHandler#handleStatus(org.eclipse.core.runtime.IStatus, java.lang.Object)
- */
- public Object handleStatus( final IStatus status, Object source ) throws CoreException {
- if ( status != null && source != null && source instanceof IDebugElement ) {
- IDebugTarget target = ((IDebugElement)source).getDebugTarget();
- final String title = target.getName();
- CDebugUIPlugin.getStandardDisplay().asyncExec( new Runnable() {
-
- public void run() {
- ErrorDialog.openError( CDebugUIPlugin.getActiveWorkbenchShell(), title, null, status );
- }
- } );
- }
- return null;
- }
-}
diff --git a/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/EvaluationContextManager.java b/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/EvaluationContextManager.java
deleted file mode 100644
index 078216180c3..00000000000
--- a/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/EvaluationContextManager.java
+++ /dev/null
@@ -1,228 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004, 2005 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.internal.ui;
-
-import java.util.HashMap;
-import java.util.Map;
-import org.eclipse.cdt.debug.core.model.ICDebugTarget;
-import org.eclipse.cdt.debug.ui.CDebugUIPlugin;
-import org.eclipse.core.runtime.IAdaptable;
-import org.eclipse.debug.ui.IDebugUIConstants;
-import org.eclipse.jface.viewers.ISelection;
-import org.eclipse.jface.viewers.IStructuredSelection;
-import org.eclipse.ui.IPageListener;
-import org.eclipse.ui.IPartListener2;
-import org.eclipse.ui.ISelectionListener;
-import org.eclipse.ui.IWindowListener;
-import org.eclipse.ui.IWorkbench;
-import org.eclipse.ui.IWorkbenchPage;
-import org.eclipse.ui.IWorkbenchPart;
-import org.eclipse.ui.IWorkbenchPartReference;
-import org.eclipse.ui.IWorkbenchWindow;
-import org.eclipse.ui.PlatformUI;
-
-/**
- * Manages the current evaluation context (stack frame) for evaluation actions.
- * In each page, the selection is tracked in each debug view (if any). When a debug
- * target selection exists, the "debuggerActive" System property is set to true.
- * This property is used to make the "Run To Line" and "Resume At Line" actions
- * visible in editors only if there is a running debug session.
- */
-public class EvaluationContextManager implements IWindowListener, IPageListener, ISelectionListener, IPartListener2 {
-
- private final static String DEBUGGER_ACTIVE = CDebugUIPlugin.getUniqueIdentifier() + ".debuggerActive"; //$NON-NLS-1$
-
- protected static EvaluationContextManager fgManager;
-
- private Map fContextsByPage = null;
-
- protected EvaluationContextManager() {
- }
-
- public static void startup() {
- Runnable r = new Runnable() {
-
- public void run() {
- if ( fgManager == null ) {
- fgManager = new EvaluationContextManager();
- IWorkbench workbench = PlatformUI.getWorkbench();
- IWorkbenchWindow[] windows = workbench.getWorkbenchWindows();
- for( int i = 0; i < windows.length; i++ ) {
- fgManager.windowOpened( windows[i] );
- }
- workbench.addWindowListener( fgManager );
- }
- }
- };
- CDebugUIPlugin.getStandardDisplay().asyncExec( r );
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.ui.IWindowListener#windowActivated(org.eclipse.ui.IWorkbenchWindow)
- */
- public void windowActivated( IWorkbenchWindow window ) {
- windowOpened( window );
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.ui.IWindowListener#windowDeactivated(org.eclipse.ui.IWorkbenchWindow)
- */
- public void windowDeactivated( IWorkbenchWindow window ) {
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.ui.IWindowListener#windowClosed(org.eclipse.ui.IWorkbenchWindow)
- */
- public void windowClosed( IWorkbenchWindow window ) {
- window.removePageListener( this );
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.ui.IWindowListener#windowOpened(org.eclipse.ui.IWorkbenchWindow)
- */
- public void windowOpened( IWorkbenchWindow window ) {
- IWorkbenchPage[] pages = window.getPages();
- for( int i = 0; i < pages.length; i++ ) {
- window.addPageListener( this );
- pageOpened( pages[i] );
- }
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.ui.IPageListener#pageActivated(org.eclipse.ui.IWorkbenchPage)
- */
- public void pageActivated( IWorkbenchPage page ) {
- pageOpened( page );
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.ui.IPageListener#pageClosed(org.eclipse.ui.IWorkbenchPage)
- */
- public void pageClosed( IWorkbenchPage page ) {
- page.removeSelectionListener( IDebugUIConstants.ID_DEBUG_VIEW, this );
- page.removePartListener( this );
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.ui.IPageListener#pageOpened(org.eclipse.ui.IWorkbenchPage)
- */
- public void pageOpened( IWorkbenchPage page ) {
- page.addSelectionListener( IDebugUIConstants.ID_DEBUG_VIEW, this );
- page.addPartListener( this );
- IWorkbenchPartReference ref = page.getActivePartReference();
- if ( ref != null ) {
- partActivated( ref );
- }
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.ui.ISelectionListener#selectionChanged(org.eclipse.ui.IWorkbenchPart, org.eclipse.jface.viewers.ISelection)
- */
- public void selectionChanged( IWorkbenchPart part, ISelection selection ) {
- IWorkbenchPage page = part.getSite().getPage();
- if ( selection instanceof IStructuredSelection ) {
- IStructuredSelection ss = (IStructuredSelection)selection;
- if ( ss.size() == 1 ) {
- Object element = ss.getFirstElement();
- if ( element instanceof IAdaptable ) {
- ICDebugTarget target = (ICDebugTarget)((IAdaptable)element).getAdapter( ICDebugTarget.class );
- if ( target != null ) {
- setContext( page, target );
- return;
- }
- }
- }
- }
- // no context in the given view
- removeContext( page );
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.ui.IPartListener2#partActivated(org.eclipse.ui.IWorkbenchPartReference)
- */
- public void partActivated( IWorkbenchPartReference partRef ) {
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.ui.IPartListener2#partBroughtToTop(org.eclipse.ui.IWorkbenchPartReference)
- */
- public void partBroughtToTop( IWorkbenchPartReference partRef ) {
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.ui.IPartListener2#partClosed(org.eclipse.ui.IWorkbenchPartReference)
- */
- public void partClosed( IWorkbenchPartReference partRef ) {
- if ( IDebugUIConstants.ID_DEBUG_VIEW.equals( partRef.getId() ) ) {
- removeContext( partRef.getPage() );
- }
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.ui.IPartListener2#partDeactivated(org.eclipse.ui.IWorkbenchPartReference)
- */
- public void partDeactivated( IWorkbenchPartReference partRef ) {
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.ui.IPartListener2#partOpened(org.eclipse.ui.IWorkbenchPartReference)
- */
- public void partOpened( IWorkbenchPartReference partRef ) {
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.ui.IPartListener2#partHidden(org.eclipse.ui.IWorkbenchPartReference)
- */
- public void partHidden( IWorkbenchPartReference partRef ) {
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.ui.IPartListener2#partVisible(org.eclipse.ui.IWorkbenchPartReference)
- */
- public void partVisible( IWorkbenchPartReference partRef ) {
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.ui.IPartListener2#partInputChanged(org.eclipse.ui.IWorkbenchPartReference)
- */
- public void partInputChanged( IWorkbenchPartReference partRef ) {
- }
-
- /**
- * Sets the evaluation context for the given page, and notes that
- * a valid execution context exists.
- *
- * @param page
- * @param frame
- */
- private void setContext( IWorkbenchPage page, ICDebugTarget target ) {
- if ( fContextsByPage == null ) {
- fContextsByPage = new HashMap();
- }
- fContextsByPage.put( page, target );
- System.setProperty( DEBUGGER_ACTIVE, Boolean.TRUE.toString() );
- }
-
- /**
- * Removes an evaluation context for the given page, and determines if
- * any valid execution context remain.
- *
- * @param page
- */
- private void removeContext( IWorkbenchPage page ) {
- if ( fContextsByPage != null ) {
- fContextsByPage.remove( page );
- if ( fContextsByPage.isEmpty() ) {
- System.setProperty( DEBUGGER_ACTIVE, Boolean.FALSE.toString() );
- }
- }
- }
-}
diff --git a/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/HTML2TextReader.java b/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/HTML2TextReader.java
deleted file mode 100644
index ece40131849..00000000000
--- a/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/HTML2TextReader.java
+++ /dev/null
@@ -1,297 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.internal.ui;
-
-import java.io.IOException;
-import java.io.PushbackReader;
-import java.io.Reader;
-import java.util.HashMap;
-import java.util.HashSet;
-import java.util.Map;
-import java.util.Set;
-
-import org.eclipse.swt.SWT;
-import org.eclipse.swt.custom.StyleRange;
-
-import org.eclipse.cdt.debug.internal.ui.views.disassembly.DisassemblyMessages;
-import org.eclipse.jface.text.TextPresentation;
-
-/**
- * Reads the text contents from a reader of HTML contents and translates
- * the tags or cut them out.
- */
-public class HTML2TextReader extends SubstitutionTextReader {
-
- private static final String EMPTY_STRING= ""; //$NON-NLS-1$
- private static final Map fgEntityLookup;
- private static final Set fgTags;
-
- static {
-
- fgTags= new HashSet();
- fgTags.add("b"); //$NON-NLS-1$
- fgTags.add("br"); //$NON-NLS-1$
- fgTags.add("h5"); //$NON-NLS-1$
- fgTags.add("p"); //$NON-NLS-1$
- fgTags.add("dl"); //$NON-NLS-1$
- fgTags.add("dt"); //$NON-NLS-1$
- fgTags.add("dd"); //$NON-NLS-1$
- fgTags.add("li"); //$NON-NLS-1$
- fgTags.add("ul"); //$NON-NLS-1$
- fgTags.add("pre"); //$NON-NLS-1$
-
- fgEntityLookup= new HashMap(7);
- fgEntityLookup.put("lt", "<"); //$NON-NLS-1$ //$NON-NLS-2$
- fgEntityLookup.put("gt", ">"); //$NON-NLS-1$ //$NON-NLS-2$
- fgEntityLookup.put("nbsp", " "); //$NON-NLS-1$ //$NON-NLS-2$
- fgEntityLookup.put("amp", "&"); //$NON-NLS-1$ //$NON-NLS-2$
- fgEntityLookup.put("circ", "^"); //$NON-NLS-1$ //$NON-NLS-2$
- fgEntityLookup.put("tilde", "~"); //$NON-NLS-2$ //$NON-NLS-1$
- fgEntityLookup.put("quot", "\""); //$NON-NLS-1$ //$NON-NLS-2$
- }
-
- private int fCounter= 0;
- private TextPresentation fTextPresentation;
- private int fBold= 0;
- private int fStartOffset= -1;
- private boolean fInParagraph= false;
- private boolean fIsPreformattedText= false;
-
- /**
- * Transforms the html text from the reader to formatted text.
- * @param presentation If not <code>null</code>, formattings will be applied to
- * the presentation.
- */
- public HTML2TextReader(Reader reader, TextPresentation presentation) {
- super(new PushbackReader(reader));
- fTextPresentation= presentation;
- }
-
- public int read() throws IOException {
- int c= super.read();
- if (c != -1)
- ++ fCounter;
- return c;
- }
-
- protected void startBold() {
- if (fBold == 0)
- fStartOffset= fCounter;
- ++ fBold;
- }
-
- protected void startPreformattedText() {
- fIsPreformattedText= true;
- setSkipWhitespace(false);
- }
-
- protected void stopPreformattedText() {
- fIsPreformattedText= false;
- setSkipWhitespace(true);
- }
-
- protected void stopBold() {
- -- fBold;
- if (fBold == 0) {
- if (fTextPresentation != null) {
- fTextPresentation.addStyleRange(new StyleRange(fStartOffset, fCounter - fStartOffset, null, null, SWT.BOLD));
- }
- fStartOffset= -1;
- }
- }
-
- /*
- * @see org.eclipse.jdt.internal.ui.text.SubstitutionTextReader#computeSubstitution(int)
- */
- protected String computeSubstitution(int c) throws IOException {
-
- if (c == '<')
- return processHTMLTag();
- else if (c == '&')
- return processEntity();
- else if (fIsPreformattedText)
- return processPreformattedText(c);
-
- return null;
- }
-
- private String html2Text(String html) {
-
- if (html == null || html.length() == 0)
- return EMPTY_STRING;
-
- String tag= html;
- if ('/' == tag.charAt(0))
- tag= tag.substring(1);
-
- if (!fgTags.contains(tag))
- return EMPTY_STRING;
-
-
- if ("pre".equals(html)) { //$NON-NLS-1$
- startPreformattedText();
- return EMPTY_STRING;
- }
-
- if ("/pre".equals(html)) { //$NON-NLS-1$
- stopPreformattedText();
- return EMPTY_STRING;
- }
-
- if (fIsPreformattedText)
- return EMPTY_STRING;
-
- if ("b".equals(html)) { //$NON-NLS-1$
- startBold();
- return EMPTY_STRING;
- }
-
- if ("h5".equals(html) || "dt".equals(html)) { //$NON-NLS-1$ //$NON-NLS-2$
- startBold();
- return EMPTY_STRING;
- }
-
- if ("dl".equals(html)) //$NON-NLS-1$
- return LINE_DELIM;
-
- if ("dd".equals(html)) //$NON-NLS-1$
- return "\t"; //$NON-NLS-1$
-
- if ("li".equals(html)) //$NON-NLS-1$
- return LINE_DELIM + "\t" + DisassemblyMessages.getString( "HTML2TextReader.dash" ); //$NON-NLS-1$ //$NON-NLS-2$
-
- if ("/b".equals(html)) { //$NON-NLS-1$
- stopBold();
- return EMPTY_STRING;
- }
-
- if ("p".equals(html)) { //$NON-NLS-1$
- fInParagraph= true;
- return LINE_DELIM;
- }
-
- if ("br".equals(html)) //$NON-NLS-1$
- return LINE_DELIM;
-
- if ("/p".equals(html)) { //$NON-NLS-1$
- boolean inParagraph= fInParagraph;
- fInParagraph= false;
- return inParagraph ? EMPTY_STRING : LINE_DELIM;
- }
-
- if ("/h5".equals(html) || "/dt".equals(html)) { //$NON-NLS-1$ //$NON-NLS-2$
- stopBold();
- return LINE_DELIM;
- }
-
- if ("/dd".equals(html)) //$NON-NLS-1$
- return LINE_DELIM;
-
- return EMPTY_STRING;
- }
-
- /*
- * A '<' has been read. Process a html tag
- */
- private String processHTMLTag() throws IOException {
-
- StringBuffer buf= new StringBuffer();
- int ch;
- do {
-
- ch= nextChar();
-
- while (ch != -1 && ch != '>') {
- buf.append(Character.toLowerCase((char) ch));
- ch= nextChar();
- if (ch == '"'){
- buf.append(Character.toLowerCase((char) ch));
- ch= nextChar();
- while (ch != -1 && ch != '"'){
- buf.append(Character.toLowerCase((char) ch));
- ch= nextChar();
- }
- }
- if (ch == '<'){
- unread(ch);
- return '<' + buf.toString();
- }
- }
-
- if (ch == -1)
- return null;
-
- int tagLen= buf.length();
- // needs special treatment for comments
- if ((tagLen >= 3 && "!--".equals(buf.substring(0, 3))) //$NON-NLS-1$
- && !(tagLen >= 5 && "--!".equals(buf.substring(tagLen - 3)))) { //$NON-NLS-1$
- // unfinished comment
- buf.append(ch);
- } else {
- break;
- }
- } while (true);
-
- return html2Text(buf.toString());
- }
-
- private String processPreformattedText(int c) {
- if (c == '\r' || c == '\n')
- fCounter++;
- return null;
- }
-
-
- private void unread(int ch) throws IOException {
- ((PushbackReader) getReader()).unread(ch);
- }
-
- protected String entity2Text(String symbol) {
- if (symbol.length() > 1 && symbol.charAt(0) == '#') {
- int ch;
- try {
- if (symbol.charAt(1) == 'x') {
- ch= Integer.parseInt(symbol.substring(2), 16);
- } else {
- ch= Integer.parseInt(symbol.substring(1), 10);
- }
- return EMPTY_STRING + (char)ch;
- } catch (NumberFormatException e) {
- }
- } else {
- String str= (String) fgEntityLookup.get(symbol);
- if (str != null) {
- return str;
- }
- }
- return "&" + symbol; // not found //$NON-NLS-1$
- }
-
- /*
- * A '&' has been read. Process a entity
- */
- private String processEntity() throws IOException {
- StringBuffer buf= new StringBuffer();
- int ch= nextChar();
- while (Character.isLetterOrDigit((char)ch) || ch == '#') {
- buf.append((char) ch);
- ch= nextChar();
- }
-
- if (ch == ';')
- return entity2Text(buf.toString());
-
- buf.insert(0, '&');
- if (ch != -1)
- buf.append((char) ch);
- return buf.toString();
- }
-}
diff --git a/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/HTMLPrinter.java b/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/HTMLPrinter.java
deleted file mode 100644
index 80a1d4e1886..00000000000
--- a/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/HTMLPrinter.java
+++ /dev/null
@@ -1,152 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.internal.ui;
-
-
-import java.io.IOException;
-import java.io.Reader;
-
-import org.eclipse.swt.SWT;
-import org.eclipse.swt.graphics.RGB;
-import org.eclipse.swt.widgets.Display;
-
-import org.eclipse.ui.IWorkbenchWindow;
-import org.eclipse.ui.PlatformUI;
-
-
-/**
- * Provides a set of convenience methods for creating HTML pages.
- */
-public class HTMLPrinter {
-
- private HTMLPrinter() {
- }
-
- private static String replace(String text, char c, String s) {
-
- int previous= 0;
- int current= text.indexOf(c, previous);
-
- if (current == -1)
- return text;
-
- StringBuffer buffer= new StringBuffer();
- while (current > -1) {
- buffer.append(text.substring(previous, current));
- buffer.append(s);
- previous= current + 1;
- current= text.indexOf(c, previous);
- }
- buffer.append(text.substring(previous));
-
- return buffer.toString();
- }
-
- public static String convertToHTMLContent(String content) {
- content= replace(content, '<', "&lt;"); //$NON-NLS-1$
- return replace(content, '>', "&gt;"); //$NON-NLS-1$
- }
-
- public static String read(Reader rd) {
-
- StringBuffer buffer= new StringBuffer();
- char[] readBuffer= new char[2048];
-
- try {
- int n= rd.read(readBuffer);
- while (n > 0) {
- buffer.append(readBuffer, 0, n);
- n= rd.read(readBuffer);
- }
- return buffer.toString();
- } catch (IOException x) {
- }
-
- return null;
- }
-
- public static void insertPageProlog(StringBuffer buffer, int position, RGB bgRGB) {
- if (bgRGB == null)
- insertPageProlog(buffer, position);
- else {
- StringBuffer pageProlog= new StringBuffer(60);
- pageProlog.append("<html><body text=\"#000000\" bgcolor=\""); //$NON-NLS-1$
- appendColor(pageProlog, bgRGB);
- pageProlog.append("\"><font size=-1>"); //$NON-NLS-1$
- buffer.insert(position, pageProlog.toString());
- }
- }
-
- private static void appendColor(StringBuffer buffer, RGB rgb) {
- buffer.append('#');
- buffer.append(Integer.toHexString(rgb.red));
- buffer.append(Integer.toHexString(rgb.green));
- buffer.append(Integer.toHexString(rgb.blue));
- }
-
- public static void insertPageProlog(StringBuffer buffer, int position) {
- RGB bgColor= null;
- IWorkbenchWindow window= PlatformUI.getWorkbench().getActiveWorkbenchWindow();
- if (window != null) {
- Display display= window.getShell().getDisplay();
- if (display != null && !display.isDisposed())
- bgColor= display.getSystemColor(SWT.COLOR_INFO_BACKGROUND).getRGB();
- }
- if (bgColor == null)
- bgColor= new RGB(255,255, 225); // RGB value of info bg color on WindowsXP
-
- insertPageProlog(buffer, position, bgColor);
- }
-
- public static void addPageProlog(StringBuffer buffer) {
- insertPageProlog(buffer, buffer.length());
- }
-
- public static void addPageEpilog(StringBuffer buffer) {
- buffer.append("</font></body></html>"); //$NON-NLS-1$
- }
-
- public static void startBulletList(StringBuffer buffer) {
- buffer.append("<ul>"); //$NON-NLS-1$
- }
-
- public static void endBulletList(StringBuffer buffer) {
- buffer.append("</ul>"); //$NON-NLS-1$
- }
-
- public static void addBullet(StringBuffer buffer, String bullet) {
- if (bullet != null) {
- buffer.append("<li>"); //$NON-NLS-1$
- buffer.append(bullet);
- buffer.append("</li>"); //$NON-NLS-1$
- }
- }
-
- public static void addSmallHeader(StringBuffer buffer, String header) {
- if (header != null) {
- buffer.append("<h5>"); //$NON-NLS-1$
- buffer.append(header);
- buffer.append("</h5>"); //$NON-NLS-1$
- }
- }
-
- public static void addParagraph(StringBuffer buffer, String paragraph) {
- if (paragraph != null) {
- buffer.append("<p>"); //$NON-NLS-1$
- buffer.append(paragraph);
- }
- }
-
- public static void addParagraph(StringBuffer buffer, Reader paragraphReader) {
- if (paragraphReader != null)
- addParagraph(buffer, read(paragraphReader));
- }
-}
diff --git a/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/HTMLTextPresenter.java b/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/HTMLTextPresenter.java
deleted file mode 100644
index de801d49a50..00000000000
--- a/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/HTMLTextPresenter.java
+++ /dev/null
@@ -1,194 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.internal.ui;
-
-import java.io.IOException;
-import java.io.Reader;
-import java.io.StringReader;
-import java.util.Iterator;
-import org.eclipse.cdt.debug.internal.ui.views.disassembly.DisassemblyMessages;
-import org.eclipse.debug.core.DebugPlugin;
-import org.eclipse.jface.text.DefaultInformationControl;
-import org.eclipse.jface.text.Region;
-import org.eclipse.jface.text.TextPresentation;
-import org.eclipse.swt.custom.StyleRange;
-import org.eclipse.swt.graphics.Drawable;
-import org.eclipse.swt.graphics.GC;
-import org.eclipse.swt.widgets.Display;
-
-public class HTMLTextPresenter implements DefaultInformationControl.IInformationPresenter, DefaultInformationControl.IInformationPresenterExtension {
-
- private static final String LINE_DELIM= System.getProperty("line.separator", "\n"); //$NON-NLS-1$ //$NON-NLS-2$
-
- private int fCounter;
- private boolean fEnforceUpperLineLimit;
-
- public HTMLTextPresenter(boolean enforceUpperLineLimit) {
- super();
- fEnforceUpperLineLimit= enforceUpperLineLimit;
- }
-
- public HTMLTextPresenter() {
- this(true);
- }
-
- protected Reader createReader(String hoverInfo, TextPresentation presentation) {
- return new HTML2TextReader(new StringReader(hoverInfo), presentation);
- }
-
- protected void adaptTextPresentation(TextPresentation presentation, int offset, int insertLength) {
-
- int yoursStart= offset;
- int yoursEnd= offset + insertLength -1;
- yoursEnd= Math.max(yoursStart, yoursEnd);
-
- Iterator e= presentation.getAllStyleRangeIterator();
- while (e.hasNext()) {
-
- StyleRange range= (StyleRange) e.next();
-
- int myStart= range.start;
- int myEnd= range.start + range.length -1;
- myEnd= Math.max(myStart, myEnd);
-
- if (myEnd < yoursStart)
- continue;
-
- if (myStart < yoursStart)
- range.length += insertLength;
- else
- range.start += insertLength;
- }
- }
-
- private void append(StringBuffer buffer, String string, TextPresentation presentation) {
-
- int length= string.length();
- buffer.append(string);
-
- if (presentation != null)
- adaptTextPresentation(presentation, fCounter, length);
-
- fCounter += length;
- }
-
- private String getIndent(String line) {
- int length= line.length();
-
- int i= 0;
- while (i < length && Character.isWhitespace(line.charAt(i))) ++i;
-
- return (i == length ? line : line.substring(0, i)) + " "; //$NON-NLS-1$
- }
-
- /*
- * @see IHoverInformationPresenter#updatePresentation(Display display, String, TextPresentation, int, int)
- */
- public String updatePresentation(Drawable drawable, String hoverInfo, TextPresentation presentation, int maxWidth, int maxHeight) {
-
- if (hoverInfo == null)
- return null;
-
- GC gc= new GC(drawable);
- try {
-
- StringBuffer buffer= new StringBuffer();
- int maxNumberOfLines= Math.round(maxHeight / gc.getFontMetrics().getHeight());
-
- fCounter= 0;
- LineBreakingReader reader= new LineBreakingReader(createReader(hoverInfo, presentation), gc, maxWidth);
-
- boolean lastLineFormatted= false;
- String lastLineIndent= null;
-
- String line=reader.readLine();
- boolean lineFormatted= reader.isFormattedLine();
- boolean firstLineProcessed= false;
-
- while (line != null) {
-
- if (fEnforceUpperLineLimit && maxNumberOfLines <= 0)
- break;
-
- if (firstLineProcessed) {
- if (!lastLineFormatted)
- append(buffer, LINE_DELIM, null);
- else {
- append(buffer, LINE_DELIM, presentation);
- if (lastLineIndent != null)
- append(buffer, lastLineIndent, presentation);
- }
- }
-
- append(buffer, line, null);
- firstLineProcessed= true;
-
- lastLineFormatted= lineFormatted;
- if (!lineFormatted)
- lastLineIndent= null;
- else if (lastLineIndent == null)
- lastLineIndent= getIndent(line);
-
- line= reader.readLine();
- lineFormatted= reader.isFormattedLine();
-
- maxNumberOfLines--;
- }
-
- if (line != null) {
- append(buffer, LINE_DELIM, lineFormatted ? presentation : null);
- append(buffer, DisassemblyMessages.getString( "HTMLTextPresenter.ellipsis" ), presentation); //$NON-NLS-1$
- }
-
- return trim(buffer, presentation);
-
- } catch (IOException e) {
-
- DebugPlugin.log(e);
- return null;
-
- } finally {
- gc.dispose();
- }
- }
-
- private String trim(StringBuffer buffer, TextPresentation presentation) {
-
- int length= buffer.length();
-
- int end= length -1;
- while (end >= 0 && Character.isWhitespace(buffer.charAt(end)))
- -- end;
-
- if (end == -1)
- return ""; //$NON-NLS-1$
-
- if (end < length -1)
- buffer.delete(end + 1, length);
- else
- end= length;
-
- int start= 0;
- while (start < end && Character.isWhitespace(buffer.charAt(start)))
- ++ start;
-
- buffer.delete(0, start);
- presentation.setResultWindow(new Region(start, buffer.length()));
- return buffer.toString();
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.jface.text.DefaultInformationControl$IInformationPresenter#updatePresentation(org.eclipse.swt.widgets.Display, java.lang.String, org.eclipse.jface.text.TextPresentation, int, int)
- */
- public String updatePresentation( Display display, String hoverInfo, TextPresentation presentation, int maxWidth, int maxHeight ) {
- return updatePresentation( (Drawable)display, hoverInfo, presentation, maxWidth, maxHeight );
- }
-}
diff --git a/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/ICDebugHelpContextIds.java b/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/ICDebugHelpContextIds.java
deleted file mode 100644
index c4879c98fc4..00000000000
--- a/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/ICDebugHelpContextIds.java
+++ /dev/null
@@ -1,74 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.cdt.debug.internal.ui;
-
-import org.eclipse.cdt.debug.ui.CDebugUIPlugin;
-
-/**
- *
- * Help context ids for the C/C++ debug ui.
- * <p>
- * This interface contains constants only; it is not intended to be implemented
- * or extended.
- * </p>
- *
- * @since Jul 23, 2002
- */
-public interface ICDebugHelpContextIds {
- /**
- * C/C++ Debug UI plug-in identifier (value <code>"org.eclipse.cdt.debug.ui"</code>).
- */
- public static final String PLUGIN_ID = CDebugUIPlugin.getUniqueIdentifier();
-
- public static final String PREFIX = PLUGIN_ID + "."; //$NON-NLS-1$
-
- // Actions
- public static final String CHANGE_REGISTER_VALUE_ACTION = PREFIX + "change_register_value_action_context"; //$NON-NLS-1$
- public static final String SHOW_TYPES_ACTION = PREFIX + "show_types_action_context"; //$NON-NLS-1$
- public static final String REFRESH_MEMORY_ACTION = PREFIX + "refresh_memory_action_context"; //$NON-NLS-1$
- public static final String AUTO_REFRESH_MEMORY_ACTION = PREFIX + "auto_refresh_memory_action_context"; //$NON-NLS-1$
- public static final String MEMORY_CLEAR_ACTION = PREFIX + "memory_clear_action_context"; //$NON-NLS-1$
- public static final String MEMORY_SAVE_ACTION = PREFIX + "memory_save_action_context"; //$NON-NLS-1$
- public static final String MEMORY_SHOW_ASCII_ACTION = PREFIX + "memory_show_ascii_action_context"; //$NON-NLS-1$
- public static final String REFRESH_SHARED_LIBRARIES_ACTION = PREFIX + "refresh_shared_libraries_action_context"; //$NON-NLS-1$
- public static final String AUTO_REFRESH_SHARED_LIBRARIES_ACTION = PREFIX + "auto_refresh_shared_libraries_action_context"; //$NON-NLS-1$
- public static final String LOAD_SYMBOLS_FOR_ALL = PREFIX + "load_symbols_for_all_action_context"; //$NON-NLS-1$
- public static final String REFRESH_REGISTERS_ACTION = PREFIX + "refresh_registers_action_context"; //$NON-NLS-1$
- public static final String AUTO_REFRESH_REGISTERS_ACTION = PREFIX + "auto_refresh_registers_action_context"; //$NON-NLS-1$
- public static final String TOGGLE_BREAKPOINT_ACTION = PREFIX + "manage_breakpoint_action_context"; //$NON-NLS-1$
- public static final String ENABLE_DISABLE_BREAKPOINT_ACTION = PREFIX + "enable_disable_breakpoint_action_context"; //$NON-NLS-1$
- public static final String BREAKPOINT_PROPERTIES_ACTION = PREFIX + "breakpoint_properties_action_context"; //$NON-NLS-1$
- public static final String SHOW_DETAIL_PANE_ACTION = PREFIX + "show_detail_pane_action_context"; //$NON-NLS-1$
-
- // Views & Editors
- public static final String MEMORY_VIEW = PREFIX + "memory_view_context"; //$NON-NLS-1$
- public static final String SHARED_LIBRARIES_VIEW = PREFIX + "shared_libraries_view_context"; //$NON-NLS-1$
- public static final String MODULES_VIEW = PREFIX + "modules_view_context"; //$NON-NLS-1$
- public static final String SIGNALS_VIEW = PREFIX + "signals_view_context"; //$NON-NLS-1$
- public static final String DISASSEMBLY_VIEW = PREFIX + "disassembly_view_context"; //$NON-NLS-1$
- public static final String SOURCE_NOT_FOUND = PREFIX + "source_not_found"; //$NON-NLS-1$
-
- // Preference pages
- public static final String SOURCE_PREFERENCE_PAGE = PREFIX + "source_preference_page_context"; //$NON-NLS-1$
- public static final String SHARED_LIBRARIES_PREFERENCE_PAGE = PREFIX + "shared_libraries_preference_page_context"; //$NON-NLS-1$
- public static final String MEMORY_PREFERENCE_PAGE = PREFIX + "memory_preference_page_context"; //$NON-NLS-1$
- public static final String C_DEBUG_PREFERENCE_PAGE = PREFIX + "c_debug_preference_page_context"; //$NON-NLS-1$
- public static final String DEBUGGER_TYPES_PAGE = PREFIX + "debugger_typpes_preference_page_context"; //$NON-NLS-1$
-
- // dialogs
- public static final String SOURCE_PATH_MAPPING_DIALOG = PREFIX + "source_path_mapping_dialog_context"; //$NON-NLS-1$
- public static final String SOURCE_PATH_MAP_ENTRY_DIALOG = PREFIX + "source_path_map_entry_dialog_context"; //$NON-NLS-1$
- public static final String ADD_SOURCE_CONTAINER_DIALOG = PREFIX + "add_source_container_dialog"; //$NON-NLS-1$
- public static final String ADD_DIRECTORY_CONTAINER_DIALOG = PREFIX + "add_directory_container_dialog"; //$NON-NLS-1$
- public static final String REGISTER_GROUP = PREFIX + "register_group_dialog"; //$NON-NLS-1$
-
-}
diff --git a/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/IInternalCDebugUIConstants.java b/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/IInternalCDebugUIConstants.java
deleted file mode 100644
index e1242c38116..00000000000
--- a/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/IInternalCDebugUIConstants.java
+++ /dev/null
@@ -1,71 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004, 2005 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.internal.ui;
-
-import org.eclipse.cdt.debug.ui.CDebugUIPlugin;
-import org.eclipse.swt.SWT;
-import org.eclipse.swt.graphics.RGB;
-import org.eclipse.swt.widgets.Display;
-
-public interface IInternalCDebugUIConstants {
-
- /**
- * C/C++ Debug UI plug-in identifier (value <code>"org.eclipse.cdt.debug.ui"</code>).
- */
- public static final String PLUGIN_ID = CDebugUIPlugin.getUniqueIdentifier();
-
- public static final String PREFIX = PLUGIN_ID + "."; //$NON-NLS-1$
-
- /**
- * The name of the font to use for disassembly view. This font is managed via
- * the workbench font preference page.
- */
- public static final String DISASSEMBLY_FONT = PREFIX + "disassemblyFont"; //$NON-NLS-1$
-
- /**
- * The color id to highlight the source lines in disassembly view. This color is managed via
- * the workbench font preference page.
- */
- public static final String DISASSEMBLY_SOURCE_LINE_COLOR = PREFIX + "disassembly.sourceLineColor"; //$NON-NLS-1$
-
- public static final RGB DEFAULT_DISASSEMBLY_SOURCE_LINE_RGB = Display.getDefault().getSystemColor( SWT.COLOR_DARK_BLUE ).getRGB();
-
- //Current stack frame instruction pointer
- public static final String DISASM_INSTRUCTION_POINTER = PREFIX + "disassemblyInstructionPointer"; //$NON-NLS-1$
-
- // marker types for instruction pointer annotations - top stack frame, and secondary
- public static final String DISASM_INSTRUCTION_POINTER_CURRENT = PREFIX + "disassemblyInstructionPointer.current"; //$NON-NLS-1$
- public static final String DISASM_INSTRUCTION_POINTER_SECONDARY = PREFIX + "disassemblyInstructionPointer.secondary"; //$NON-NLS-1$
-
- // annotation types for instruction pointers
- public static final String ANN_DISASM_INSTR_POINTER_CURRENT = PREFIX + "currentDisassemblyIP"; //$NON-NLS-1$
- public static final String ANN_DISASM_INSTR_POINTER_SECONDARY = PREFIX + "secondaryDisassemblyIP"; //$NON-NLS-1$
-
- // object images
- public static final String IMG_OBJS_DISASM_INSTRUCTION_POINTER_TOP = "IMG_OBJS_DISASM_INSTRUCTION_POINTER_TOP"; //$NON-NLS-1$
- public static final String IMG_OBJS_DISASM_INSTRUCTION_POINTER = "IMG_OBJS_DISASM_INSTRUCTION_POINTER"; //$NON-NLS-1$
-
- // action ids
- public static final String ACTION_TOGGLE_BREAKPOINT = PREFIX + "toggleBreakpoint"; //$NON-NLS-1$
- public static final String ACTION_ENABLE_DISABLE_BREAKPOINT = PREFIX + "enableDisableBreakpoint"; //$NON-NLS-1$
- public static final String ACTION_BREAKPOINT_PROPERTIES = PREFIX + "breakpointProperties"; //$NON-NLS-1$
-
- /**
- * The name of the font to use for detail panes. This font is managed via
- * the workbench font preference page.
- */
- public static final String DETAIL_PANE_FONT = PREFIX + "ModulesDetailPaneFont"; //$NON-NLS-1$
-
- /**
- * Status code indicating an unexpected internal error.
- */
- public static final int INTERNAL_ERROR = 150;
-}
diff --git a/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/InfoStatusHandler.java b/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/InfoStatusHandler.java
deleted file mode 100644
index 5139ac57b30..00000000000
--- a/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/InfoStatusHandler.java
+++ /dev/null
@@ -1,41 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.internal.ui;
-
-import org.eclipse.cdt.debug.ui.CDebugUIPlugin;
-import org.eclipse.core.runtime.CoreException;
-import org.eclipse.core.runtime.IStatus;
-import org.eclipse.debug.core.IStatusHandler;
-import org.eclipse.debug.core.model.IDebugTarget;
-import org.eclipse.jface.dialogs.MessageDialog;
-
-/**
- * Displays the information dialog.
- */
-public class InfoStatusHandler implements IStatusHandler {
-
- /* (non-Javadoc)
- * @see org.eclipse.debug.core.IStatusHandler#handleStatus(org.eclipse.core.runtime.IStatus, java.lang.Object)
- */
- public Object handleStatus( IStatus status, Object source ) throws CoreException {
- if ( status != null && source != null && source instanceof IDebugTarget ) {
- final String title = ((IDebugTarget)source).getName();
- final String message = status.getMessage();
- CDebugUIPlugin.getStandardDisplay().asyncExec( new Runnable() {
-
- public void run() {
- MessageDialog.openInformation( CDebugUIPlugin.getActiveWorkbenchShell(), title, message );
- }
- } );
- }
- return null;
- }
-}
diff --git a/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/LineBreakingReader.java b/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/LineBreakingReader.java
deleted file mode 100644
index c6ab7a6eaa0..00000000000
--- a/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/LineBreakingReader.java
+++ /dev/null
@@ -1,109 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.internal.ui;
-
-import java.io.BufferedReader;
-import java.io.IOException;
-import java.io.Reader;
-
-import java.text.BreakIterator;
-import org.eclipse.swt.graphics.GC;
-
-/*
- * Not a real reader. Could change if requested
- */
-public class LineBreakingReader {
-
- private BufferedReader fReader;
- private GC fGC;
- private int fMaxWidth;
-
- private String fLine;
- private int fOffset;
-
- private BreakIterator fLineBreakIterator;
-
- /**
- * Creates a reader that breaks an input text to fit in a given width.
- * @param reader Reader of the input text
- * @param gc The graphic context that defines the currently used font sizes
- * @param maxLineWidth The max width (pixes) where the text has to fit in
- */
- public LineBreakingReader(Reader reader, GC gc, int maxLineWidth) {
- fReader= new BufferedReader(reader);
- fGC= gc;
- fMaxWidth= maxLineWidth;
- fOffset= 0;
- fLine= null;
- fLineBreakIterator= BreakIterator.getLineInstance();
- }
-
- public boolean isFormattedLine() {
- return fLine != null;
- }
-
- /**
- * Reads the next line. The lengths of the line will not exceed the gived maximum
- * width.
- */
- public String readLine() throws IOException {
- if (fLine == null) {
- String line= fReader.readLine();
- if (line == null)
- return null;
-
- int lineLen= fGC.textExtent(line).x;
- if (lineLen < fMaxWidth) {
- return line;
- }
- fLine= line;
- fLineBreakIterator.setText(line);
- fOffset= 0;
- }
- int breakOffset= findNextBreakOffset(fOffset);
- String res;
- if (breakOffset != BreakIterator.DONE) {
- res= fLine.substring(fOffset, breakOffset);
- fOffset= findWordBegin(breakOffset);
- if (fOffset == fLine.length()) {
- fLine= null;
- }
- } else {
- res= fLine.substring(fOffset);
- fLine= null;
- }
- return res;
- }
-
- private int findNextBreakOffset(int currOffset) {
- int currWidth= 0;
- int nextOffset= fLineBreakIterator.following(currOffset);
- while (nextOffset != BreakIterator.DONE) {
- String word= fLine.substring(currOffset, nextOffset);
- int wordWidth= fGC.textExtent(word).x;
- int nextWidth= wordWidth + currWidth;
- if (nextWidth > fMaxWidth) {
- return (currWidth > 0) ? currOffset : nextOffset;
- }
- currWidth= nextWidth;
- currOffset= nextOffset;
- nextOffset= fLineBreakIterator.next();
- }
- return nextOffset;
- }
-
- private int findWordBegin(int idx) {
- while (idx < fLine.length() && Character.isWhitespace(fLine.charAt(idx))) {
- idx++;
- }
- return idx;
- }
-}
diff --git a/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/OverlayImageCache.java b/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/OverlayImageCache.java
deleted file mode 100644
index ab5fe2ebe1d..00000000000
--- a/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/OverlayImageCache.java
+++ /dev/null
@@ -1,60 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.cdt.debug.internal.ui;
-
-import java.util.HashMap;
-import java.util.Iterator;
-import java.util.Map;
-
-import org.eclipse.swt.graphics.Image;
-
-/**
- * Maintains a cache of overlay images.
- *
- * @since May 30, 2003
- */
-public class OverlayImageCache {
-
- private Map fCache = new HashMap();
-
- /**
- * Returns and caches an image corresponding to the specified image
- * descriptor.
- *
- * @param imageDecsriptor
- * the image descriptor
- * @return the image
- */
- public Image getImageFor( OverlayImageDescriptor imageDescriptor ) {
- Image image = (Image)getCache().get( imageDescriptor );
- if ( image == null ) {
- image = imageDescriptor.createImage();
- getCache().put( imageDescriptor, image );
- }
- return image;
- }
-
- /**
- * Disposes of all images in the cache.
- */
- public void disposeAll() {
- for ( Iterator it = getCache().values().iterator(); it.hasNext(); ) {
- Image image = (Image)it.next();
- image.dispose();
- }
- getCache().clear();
- }
-
- private Map getCache() {
- return this.fCache;
- }
-}
diff --git a/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/OverlayImageDescriptor.java b/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/OverlayImageDescriptor.java
deleted file mode 100644
index 10002e9bba3..00000000000
--- a/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/OverlayImageDescriptor.java
+++ /dev/null
@@ -1,137 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.cdt.debug.internal.ui;
-
-import java.util.Arrays;
-
-import org.eclipse.jface.resource.CompositeImageDescriptor;
-import org.eclipse.jface.resource.ImageDescriptor;
-import org.eclipse.swt.graphics.Image;
-import org.eclipse.swt.graphics.ImageData;
-import org.eclipse.swt.graphics.Point;
-
-public class OverlayImageDescriptor extends CompositeImageDescriptor {
-
- static final int DEFAULT_WIDTH = 16;
- static final int DEFAULT_HEIGHT = 16;
-
- public static final int TOP_LEFT = 0;
- public static final int TOP_RIGHT = 1;
- public static final int BOTTOM_LEFT = 2;
- public static final int BOTTOM_RIGHT = 3;
-
- // the base image
- private Image fBase;
-
- // the overlay images
- private ImageDescriptor[] fOverlays;
-
- // the size
- private Point fSize;
-
- public OverlayImageDescriptor( Image base, ImageDescriptor[] overlays ) {
- this( base, overlays, new Point( DEFAULT_WIDTH, DEFAULT_HEIGHT ) );
- }
-
- public OverlayImageDescriptor( Image base, ImageDescriptor[] overlays, Point size ) {
- setBase( base );
- setOverlays( overlays );
- setSize( size );
- }
-
- /**
- * Draw the fOverlays for the reciever.
- */
- protected void drawOverlays(ImageDescriptor[] overlays) {
- Point size = getSize();
-
- for ( int i = 0; i < overlays.length; i++ ) {
- ImageDescriptor overlay = overlays[i];
- if ( overlay == null )
- continue;
- ImageData overlayData = overlay.getImageData();
- //Use the missing descriptor if it is not there.
- if ( overlayData == null )
- overlayData = ImageDescriptor.getMissingImageDescriptor().getImageData();
- switch( i ) {
- case TOP_LEFT:
- drawImage( overlayData, 0, 0 );
- break;
- case TOP_RIGHT:
- drawImage( overlayData, size.x - overlayData.width, 0 );
- break;
- case BOTTOM_LEFT:
- drawImage( overlayData, 0, size.y - overlayData.height );
- break;
- case BOTTOM_RIGHT:
- drawImage( overlayData, size.x - overlayData.width, size.y - overlayData.height );
- break;
- }
- }
- }
-
- public boolean equals( Object o ) {
- if ( !(o instanceof OverlayImageDescriptor) )
- return false;
- OverlayImageDescriptor other = (OverlayImageDescriptor)o;
- return getBase().equals( other.getBase() ) && Arrays.equals( getOverlays(), other.getOverlays() );
- }
-
- public int hashCode() {
- int code = getBase().hashCode();
- for (int i = 0; i < getOverlays().length; i++) {
- if ( getOverlays()[i] != null )
- code ^= getOverlays()[i].hashCode();
- }
- return code;
- }
-
- /*
- * (non-Javadoc)
- *
- * @see org.eclipse.jface.resource.CompositeImageDescriptor#drawCompositeImage(int,
- * int)
- */
- protected void drawCompositeImage( int width, int height ) {
- drawImage( getBase().getImageData(), 0, 0 );
- drawOverlays( getOverlays() );
- }
-
- /*
- * (non-Javadoc)
- *
- * @see org.eclipse.jface.resource.CompositeImageDescriptor#getSize()
- */
- protected Point getSize() {
- return this.fSize;
- }
-
- private Image getBase() {
- return this.fBase;
- }
-
- private void setBase( Image base ) {
- this.fBase = base;
- }
-
- private ImageDescriptor[] getOverlays() {
- return this.fOverlays;
- }
-
- private void setOverlays( ImageDescriptor[] overlays ) {
- this.fOverlays = overlays;
- }
-
- private void setSize( Point size ) {
- this.fSize = size;
- }
-}
diff --git a/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/PixelConverter.java b/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/PixelConverter.java
deleted file mode 100644
index 4373ebb7e7b..00000000000
--- a/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/PixelConverter.java
+++ /dev/null
@@ -1,65 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.internal.ui;
-
-
-import org.eclipse.jface.dialogs.Dialog;
-import org.eclipse.swt.graphics.FontMetrics;
-import org.eclipse.swt.graphics.GC;
-import org.eclipse.swt.widgets.Control;
-
-public class PixelConverter {
-
- private FontMetrics fFontMetrics;
-
- public PixelConverter( Control control ) {
- GC gc = new GC( control );
- gc.setFont( control.getFont() );
- setFontMetrics( gc.getFontMetrics() );
- gc.dispose();
- }
-
- /**
- * @see org.eclipse.jface.dialogs.DialogPage#convertHeightInCharsToPixels(int)
- */
- public int convertHeightInCharsToPixels( int chars ) {
- return Dialog.convertHeightInCharsToPixels( getFontMetrics(), chars );
- }
-
- /**
- * @see org.eclipse.jface.dialogs.DialogPage#convertHorizontalDLUsToPixels(int)
- */
- public int convertHorizontalDLUsToPixels( int dlus ) {
- return Dialog.convertHorizontalDLUsToPixels( getFontMetrics(), dlus );
- }
-
- /**
- * @see org.eclipse.jface.dialogs.DialogPage#convertVerticalDLUsToPixels(int)
- */
- public int convertVerticalDLUsToPixels( int dlus ) {
- return Dialog.convertVerticalDLUsToPixels( getFontMetrics(), dlus );
- }
-
- /**
- * @see org.eclipse.jface.dialogs.DialogPage#convertWidthInCharsToPixels(int)
- */
- public int convertWidthInCharsToPixels( int chars ) {
- return Dialog.convertWidthInCharsToPixels( getFontMetrics(), chars );
- }
-
- private FontMetrics getFontMetrics() {
- return this.fFontMetrics;
- }
-
- private void setFontMetrics( FontMetrics fontMetrics ) {
- this.fFontMetrics = fontMetrics;
- }
-}
diff --git a/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/QuestionStatusHandler.java b/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/QuestionStatusHandler.java
deleted file mode 100644
index ecb9d33e7ef..00000000000
--- a/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/QuestionStatusHandler.java
+++ /dev/null
@@ -1,42 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.internal.ui;
-
-import org.eclipse.cdt.debug.ui.CDebugUIPlugin;
-import org.eclipse.core.runtime.CoreException;
-import org.eclipse.core.runtime.IStatus;
-import org.eclipse.debug.core.IStatusHandler;
-import org.eclipse.debug.core.model.IDebugTarget;
-import org.eclipse.jface.dialogs.MessageDialog;
-
-/**
- * Displays the confirmation dialog.
- */
-public class QuestionStatusHandler implements IStatusHandler {
-
- /* (non-Javadoc)
- * @see org.eclipse.debug.core.IStatusHandler#handleStatus(org.eclipse.core.runtime.IStatus, java.lang.Object)
- */
- public Object handleStatus( IStatus status, Object source ) throws CoreException {
- final boolean result[] = new boolean[1];
- if ( status != null && source != null && source instanceof IDebugTarget ) {
- final String title = ((IDebugTarget)source).getName();
- final String message = status.getMessage();
- CDebugUIPlugin.getStandardDisplay().syncExec( new Runnable() {
-
- public void run() {
- result[0] = MessageDialog.openQuestion( CDebugUIPlugin.getActiveWorkbenchShell(), title, message );
- }
- } );
- }
- return Boolean.valueOf( result[0] );
- }
-}
diff --git a/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/SWTUtil.java b/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/SWTUtil.java
deleted file mode 100644
index 4825c6b006d..00000000000
--- a/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/SWTUtil.java
+++ /dev/null
@@ -1,99 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.internal.ui;
-
-import org.eclipse.jface.dialogs.IDialogConstants;
-import org.eclipse.jface.util.Assert;
-import org.eclipse.swt.SWT;
-import org.eclipse.swt.dnd.DragSource;
-import org.eclipse.swt.dnd.DropTarget;
-import org.eclipse.swt.layout.GridData;
-import org.eclipse.swt.widgets.Button;
-import org.eclipse.swt.widgets.Caret;
-import org.eclipse.swt.widgets.Control;
-import org.eclipse.swt.widgets.Display;
-import org.eclipse.swt.widgets.Menu;
-import org.eclipse.swt.widgets.ScrollBar;
-import org.eclipse.swt.widgets.Shell;
-import org.eclipse.swt.widgets.Widget;
-
-/**
- * Utility class to simplify access to some SWT resources.
- */
-public class SWTUtil {
-
- /**
- * Returns the standard display to be used. The method first checks, if the
- * thread calling this method has an associated disaply. If so, this
- * display is returned. Otherwise the method returns the default display.
- */
- public static Display getStandardDisplay() {
- Display display;
- display = Display.getCurrent();
- if ( display == null )
- display = Display.getDefault();
- return display;
- }
-
- /**
- * Returns the shell for the given widget. If the widget doesn't represent
- * a SWT object that manage a shell, <code>null</code> is returned.
- *
- * @return the shell for the given widget
- */
- public static Shell getShell(Widget widget) {
- if ( widget instanceof Control )
- return ((Control)widget).getShell();
- if ( widget instanceof Caret )
- return ((Caret)widget).getParent().getShell();
- if ( widget instanceof DragSource )
- return ((DragSource)widget).getControl().getShell();
- if ( widget instanceof DropTarget )
- return ((DropTarget)widget).getControl().getShell();
- if ( widget instanceof Menu )
- return ((Menu)widget).getParent().getShell();
- if ( widget instanceof ScrollBar )
- return ((ScrollBar)widget).getParent().getShell();
- return null;
- }
-
- /**
- * Returns a width hint for a button control.
- */
- public static int getButtonWidthHint( Button button ) {
- PixelConverter converter = new PixelConverter( button );
- int widthHint = converter.convertHorizontalDLUsToPixels( IDialogConstants.BUTTON_WIDTH );
- return Math.max( widthHint, button.computeSize( SWT.DEFAULT, SWT.DEFAULT, true ).x );
- }
-
- /**
- * Returns a height hint for a button control.
- */
-// public static int getButtonHeigthHint( Button button ) {
-// PixelConverter converter = new PixelConverter( button );
-// return converter.convertVerticalDLUsToPixels( IDialogConstants.BUTTON_HEIGHT );
-// }
-
- /**
- * Sets width and height hint for the button control. <b>Note:</b> This
- * is a NOP if the button's layout data is not an instance of <code>GridData</code>.
- *
- * @param the button for which to set the dimension hint
- */
- public static void setButtonDimensionHint( Button button ) {
- Assert.isNotNull( button );
- Object gd = button.getLayoutData();
- if ( gd instanceof GridData ) {
- ((GridData)gd).widthHint = getButtonWidthHint( button );
- ((GridData)gd).horizontalAlignment = GridData.FILL;
- }
- }
-}
diff --git a/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/SingleCharReader.java b/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/SingleCharReader.java
deleted file mode 100644
index ad5e42b877b..00000000000
--- a/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/SingleCharReader.java
+++ /dev/null
@@ -1,56 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.internal.ui;
-
-import java.io.IOException;
-import java.io.Reader;
-
-public abstract class SingleCharReader extends Reader {
-
- /**
- * @see Reader#read()
- */
- public abstract int read() throws IOException;
-
- /**
- * @see Reader#read(char[],int,int)
- */
- public int read(char cbuf[], int off, int len) throws IOException {
- int end= off + len;
- for (int i= off; i < end; i++) {
- int ch= read();
- if (ch == -1) {
- return (i == off) ? -1 : i - off;
- }
- cbuf[i]= (char)ch;
- }
- return len;
- }
-
- /**
- * @see Reader#ready()
- */
- public boolean ready() throws IOException {
- return true;
- }
-
- /**
- * Gets the content as a String
- */
- public String getString() throws IOException {
- StringBuffer buf= new StringBuffer();
- int ch;
- while ((ch= read()) != -1) {
- buf.append((char)ch);
- }
- return buf.toString();
- }
-}
diff --git a/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/Startup.java b/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/Startup.java
deleted file mode 100644
index 8d29be7af56..00000000000
--- a/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/Startup.java
+++ /dev/null
@@ -1,28 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2007 ARM and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * ARM - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.internal.ui;
-
-import org.eclipse.cdt.ui.CUIPlugin;
-import org.eclipse.ui.IStartup;
-
-/**
- * Forces the org.eclipse.cdt.debug.ui plugin to be loaded. The Modules view requires
- * CElementAdapterFactory to be registered to display the labels and images of ICElement's.
- */
-public class Startup implements IStartup {
-
- /* (non-Javadoc)
- * @see org.eclipse.ui.IStartup#earlyStartup()
- */
- public void earlyStartup() {
- CUIPlugin.getDefault();
- }
-}
diff --git a/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/SubstitutionTextReader.java b/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/SubstitutionTextReader.java
deleted file mode 100644
index 969dc79d616..00000000000
--- a/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/SubstitutionTextReader.java
+++ /dev/null
@@ -1,147 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.internal.ui;
-
-import java.io.IOException;
-import java.io.Reader;
-
-/**
- * Reads the text contents from a reader and computes for each character
- * a potential substitution. The substitution may eat more characters than
- * only the one passed into the computation routine.
- */
-public abstract class SubstitutionTextReader extends SingleCharReader {
-
- protected static final String LINE_DELIM= System.getProperty("line.separator", "\n"); //$NON-NLS-1$ //$NON-NLS-2$
-
- private Reader fReader;
- private boolean fWasWhiteSpace;
- private int fCharAfterWhiteSpace;
-
- /**
- * Tells whether white space characters are skipped.
- */
- private boolean fSkipWhiteSpace= true;
-
- private boolean fReadFromBuffer;
- private StringBuffer fBuffer;
- private int fIndex;
-
-
- protected SubstitutionTextReader(Reader reader) {
- fReader= reader;
- fBuffer= new StringBuffer();
- fIndex= 0;
- fReadFromBuffer= false;
- fCharAfterWhiteSpace= -1;
- fWasWhiteSpace= true;
- }
-
- /**
- * Implement to compute the substitution for the given character and
- * if necessary subsequent characters. Use <code>nextChar</code>
- * to read subsequent characters.
- */
- protected abstract String computeSubstitution(int c) throws IOException;
-
- /**
- * Returns the internal reader.
- */
- protected Reader getReader() {
- return fReader;
- }
-
- /**
- * Returns the next character.
- */
- protected int nextChar() throws IOException {
- fReadFromBuffer= (fBuffer.length() > 0);
- if (fReadFromBuffer) {
- char ch= fBuffer.charAt(fIndex++);
- if (fIndex >= fBuffer.length()) {
- fBuffer.setLength(0);
- fIndex= 0;
- }
- return ch;
- }
- int ch= fCharAfterWhiteSpace;
- if (ch == -1) {
- ch= fReader.read();
- }
- if (fSkipWhiteSpace && Character.isWhitespace((char)ch)) {
- do {
- ch= fReader.read();
- } while (Character.isWhitespace((char)ch));
- if (ch != -1) {
- fCharAfterWhiteSpace= ch;
- return ' ';
- }
- } else {
- fCharAfterWhiteSpace= -1;
- }
- return ch;
- }
-
- /**
- * @see Reader#read()
- */
- public int read() throws IOException {
- int c;
- do {
-
- c= nextChar();
- while (!fReadFromBuffer) {
- String s= computeSubstitution(c);
- if (s == null)
- break;
- if (s.length() > 0)
- fBuffer.insert(0, s);
- c= nextChar();
- }
-
- } while (fSkipWhiteSpace && fWasWhiteSpace && (c == ' '));
- fWasWhiteSpace= (c == ' ' || c == '\r' || c == '\n');
- return c;
- }
-
- /**
- * @see Reader#ready()
- */
- public boolean ready() throws IOException {
- return fReader.ready();
- }
-
- /**
- * @see Reader#close()
- */
- public void close() throws IOException {
- fReader.close();
- }
-
- /**
- * @see Reader#reset()
- */
- public void reset() throws IOException {
- fReader.reset();
- fWasWhiteSpace= true;
- fCharAfterWhiteSpace= -1;
- fBuffer.setLength(0);
- fIndex= 0;
- }
-
- protected final void setSkipWhitespace(boolean state) {
- fSkipWhiteSpace= state;
- }
-
- protected final boolean isSkippingWhitespace() {
- return fSkipWhiteSpace;
- }
-}
diff --git a/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/actions/AbstractBreakpointRulerAction.java b/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/actions/AbstractBreakpointRulerAction.java
deleted file mode 100644
index 47e1d7c69b9..00000000000
--- a/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/actions/AbstractBreakpointRulerAction.java
+++ /dev/null
@@ -1,161 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004, 2005 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.internal.ui.actions;
-
-import java.util.Iterator;
-import org.eclipse.cdt.debug.core.CDebugCorePlugin;
-import org.eclipse.cdt.debug.internal.ui.views.disassembly.DisassemblyView;
-import org.eclipse.core.runtime.CoreException;
-import org.eclipse.debug.core.DebugPlugin;
-import org.eclipse.debug.core.model.IBreakpoint;
-import org.eclipse.debug.core.model.ILineBreakpoint;
-import org.eclipse.jface.action.Action;
-import org.eclipse.jface.text.BadLocationException;
-import org.eclipse.jface.text.IDocument;
-import org.eclipse.jface.text.Position;
-import org.eclipse.jface.text.source.Annotation;
-import org.eclipse.jface.text.source.IAnnotationModel;
-import org.eclipse.jface.text.source.IVerticalRulerInfo;
-import org.eclipse.ui.ISaveablePart;
-import org.eclipse.ui.IWorkbenchPart;
-import org.eclipse.ui.texteditor.IDocumentProvider;
-import org.eclipse.ui.texteditor.ITextEditor;
-import org.eclipse.ui.texteditor.IUpdate;
-import org.eclipse.ui.texteditor.MarkerAnnotation;
-
-/**
- * Abstract base implementation of the breakpoint ruler actions.
- */
-public abstract class AbstractBreakpointRulerAction extends Action implements IUpdate {
-
- private IVerticalRulerInfo fInfo;
-
- private IWorkbenchPart fTargetPart;
-
- private IBreakpoint fBreakpoint;
-
- protected IBreakpoint determineBreakpoint() {
- IBreakpoint[] breakpoints = DebugPlugin.getDefault().getBreakpointManager().getBreakpoints( CDebugCorePlugin.getUniqueIdentifier() );
- for( int i = 0; i < breakpoints.length; i++ ) {
- IBreakpoint breakpoint = breakpoints[i];
- if ( breakpoint instanceof ILineBreakpoint ) {
- ILineBreakpoint lineBreakpoint = (ILineBreakpoint)breakpoint;
- if ( breakpointAtRulerLine( lineBreakpoint ) ) {
- return lineBreakpoint;
- }
- }
- }
- return null;
- }
-
- protected IVerticalRulerInfo getInfo() {
- return fInfo;
- }
-
- protected void setInfo( IVerticalRulerInfo info ) {
- fInfo = info;
- }
-
- protected IWorkbenchPart getTargetPart() {
- return this.fTargetPart;
- }
- protected void setTargetPart( IWorkbenchPart targetPart ) {
- this.fTargetPart = targetPart;
- }
-
- protected IBreakpoint getBreakpoint() {
- return fBreakpoint;
- }
-
- protected void setBreakpoint( IBreakpoint breakpoint ) {
- fBreakpoint = breakpoint;
- }
-
- protected boolean breakpointAtRulerLine( ILineBreakpoint cBreakpoint ) {
- int lineNumber = getBreakpointLine( cBreakpoint );
- int rulerLine = getInfo().getLineOfLastMouseButtonActivity();
- return ( rulerLine == lineNumber );
- }
-
- private int getBreakpointLine( ILineBreakpoint breakpoint ) {
- if ( getTargetPart() instanceof ISaveablePart && ((ISaveablePart)getTargetPart()).isDirty() ) {
- try {
- return breakpoint.getLineNumber();
- }
- catch( CoreException e ) {
- DebugPlugin.log( e );
- }
- }
- else {
- Position position = getBreakpointPosition( breakpoint );
- if ( position != null ) {
- IDocument doc = getDocument();
- if ( doc != null ) {
- try {
- return doc.getLineOfOffset( position.getOffset() );
- }
- catch ( BadLocationException x ) {
- DebugPlugin.log( x );
- }
- }
- }
- }
- return -1;
- }
-
- private Position getBreakpointPosition( ILineBreakpoint breakpoint ) {
- IAnnotationModel model = getAnnotationModel();
- if ( model != null ) {
- Iterator it = model.getAnnotationIterator();
- while( it.hasNext() ) {
- Annotation ann = (Annotation)it.next();
- if ( ann instanceof MarkerAnnotation && ((MarkerAnnotation)ann).getMarker().equals( breakpoint.getMarker() ) ) {
- return model.getPosition( ann );
- }
- }
- }
- return null;
- }
-
- private IDocument getDocument() {
- IWorkbenchPart targetPart = getTargetPart();
- if ( targetPart instanceof ITextEditor ) {
- ITextEditor textEditor = (ITextEditor)targetPart;
- IDocumentProvider provider = textEditor.getDocumentProvider();
- if ( provider != null )
- return provider.getDocument( textEditor.getEditorInput() );
- }
- else if ( targetPart instanceof DisassemblyView ) {
- DisassemblyView dv = (DisassemblyView)targetPart;
- IDocumentProvider provider = dv.getDocumentProvider();
- if ( provider != null )
- return provider.getDocument( dv.getInput() );
- }
- return null;
- }
-
- private IAnnotationModel getAnnotationModel() {
- IWorkbenchPart targetPart = getTargetPart();
- if ( targetPart instanceof ITextEditor ) {
- ITextEditor textEditor = (ITextEditor)targetPart;
- IDocumentProvider provider = textEditor.getDocumentProvider();
- if ( provider != null )
- return provider.getAnnotationModel( textEditor.getEditorInput() );
- }
- else if ( targetPart instanceof DisassemblyView ) {
- DisassemblyView dv = (DisassemblyView)targetPart;
- IDocumentProvider provider = dv.getDocumentProvider();
- if ( provider != null )
- return provider.getAnnotationModel( dv.getInput() );
- }
- return null;
- }
-}
diff --git a/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/actions/AbstractDebugActionDelegate.java b/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/actions/AbstractDebugActionDelegate.java
deleted file mode 100644
index 2ed64f51df9..00000000000
--- a/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/actions/AbstractDebugActionDelegate.java
+++ /dev/null
@@ -1,416 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.internal.ui.actions;
-
-
-import java.util.Iterator;
-
-import org.eclipse.cdt.debug.ui.CDebugUIPlugin;
-import org.eclipse.core.runtime.IProgressMonitor;
-import org.eclipse.core.runtime.IStatus;
-import org.eclipse.core.runtime.MultiStatus;
-import org.eclipse.core.runtime.jobs.Job;
-import org.eclipse.debug.core.DebugException;
-import org.eclipse.debug.ui.IDebugUIConstants;
-import org.eclipse.jface.action.IAction;
-import org.eclipse.jface.dialogs.ErrorDialog;
-import org.eclipse.jface.viewers.ISelection;
-import org.eclipse.jface.viewers.IStructuredSelection;
-import org.eclipse.jface.viewers.StructuredSelection;
-import org.eclipse.swt.custom.BusyIndicator;
-import org.eclipse.swt.widgets.Display;
-import org.eclipse.swt.widgets.Event;
-import org.eclipse.ui.IActionDelegate2;
-import org.eclipse.ui.INullSelectionListener;
-import org.eclipse.ui.ISelectionListener;
-import org.eclipse.ui.IViewActionDelegate;
-import org.eclipse.ui.IViewPart;
-import org.eclipse.ui.IWorkbenchPage;
-import org.eclipse.ui.IWorkbenchPart;
-import org.eclipse.ui.IWorkbenchWindow;
-import org.eclipse.ui.IWorkbenchWindowActionDelegate;
-
-public abstract class AbstractDebugActionDelegate implements IWorkbenchWindowActionDelegate, IViewActionDelegate, IActionDelegate2, ISelectionListener, INullSelectionListener {
-
- /**
- * The underlying action for this delegate
- */
- private IAction fAction;
- /**
- * This action's view part, or <code>null</code>
- * if not installed in a view.
- */
- private IViewPart fViewPart;
-
- /**
- * Cache of the most recent seletion
- */
- private IStructuredSelection fSelection = StructuredSelection.EMPTY;
-
- /**
- * Whether this delegate has been initialized
- */
- private boolean fInitialized = false;
-
- /**
- * The window associated with this action delegate
- * May be <code>null</code>
- */
- protected IWorkbenchWindow fWindow;
-
- /**
- * Background job for this action, or <code>null</code> if none.
- */
- private DebugRequestJob fBackgroundJob = null;
-
- class DebugRequestJob extends Job {
-
- private Object[] fElements = null;
-
- /**
- * Constructs a new job to perform a debug request (for example, step)
- * in the background.
- *
- * @param name job name
- */
- public DebugRequestJob(String name) {
- super(name);
- setPriority(Job.INTERACTIVE);
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.core.runtime.jobs.Job#run(org.eclipse.core.runtime.IProgressMonitor)
- */
- protected IStatus run(IProgressMonitor monitor) {
- MultiStatus status=
- new MultiStatus(CDebugUIPlugin.getUniqueIdentifier(), DebugException.REQUEST_FAILED, getStatusMessage(), null);
- for (int i = 0; i < fElements.length; i++) {
- Object element= fElements[i];
- try {
- doAction(element);
- } catch (DebugException e) {
- status.merge(e.getStatus());
- }
- }
- return status;
- }
-
- /**
- * Sets the selection to operate on.
- *
- * @param elements
- */
- public void setTargets(Object[] elements) {
- fElements = elements;
- }
-
- }
-
- /**
- * It's crucial that delegate actions have a zero-arg constructor so that
- * they can be reflected into existence when referenced in an action set
- * in the plugin's plugin.xml file.
- */
- public AbstractDebugActionDelegate() {
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.ui.IWorkbenchWindowActionDelegate#dispose()
- */
- public void dispose(){
- if (getWindow() != null) {
- getWindow().getSelectionService().removeSelectionListener(IDebugUIConstants.ID_DEBUG_VIEW, this);
- }
- fBackgroundJob = null;
- fSelection= null;
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.ui.IWorkbenchWindowActionDelegate#init(org.eclipse.ui.IWorkbenchWindow)
- */
- public void init(IWorkbenchWindow window){
- // listen to selection changes in the debug view
- setWindow(window);
- window.getSelectionService().addSelectionListener(IDebugUIConstants.ID_DEBUG_VIEW, this);
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.ui.IActionDelegate#run(org.eclipse.jface.action.IAction)
- */
- public void run(IAction action){
- if (action.isEnabled()) {
- IStructuredSelection selection = getSelection();
- // disable the action so it cannot be run again until an event or selection change
- // updates the enablement
- action.setEnabled(false);
- if (isRunInBackground()) {
- runInBackground(action, selection);
- } else {
- runInForeground(selection);
- }
- }
- }
-
- /**
- * Runs this action in a background job.
- */
- private void runInBackground(IAction action, IStructuredSelection selection) {
- if (fBackgroundJob == null) {
- fBackgroundJob = new DebugRequestJob(action.getText());
- }
- fBackgroundJob.setTargets(selection.toArray());
- fBackgroundJob.schedule();
- }
-
- /**
- * Runs this action in the UI thread.
- */
- private void runInForeground(final IStructuredSelection selection) {
- final MultiStatus status=
- new MultiStatus(CDebugUIPlugin.getUniqueIdentifier(), DebugException.REQUEST_FAILED, getStatusMessage(), null);
- BusyIndicator.showWhile(Display.getCurrent(), new Runnable() {
- public void run() {
- Iterator selectionIter = selection.iterator();
- while (selectionIter.hasNext()) {
- Object element= selectionIter.next();
- try {
- doAction(element);
- } catch (DebugException e) {
- status.merge(e.getStatus());
- }
- }
- }
- });
- reportErrors(status);
- }
-
- private void reportErrors(final MultiStatus ms) {
- if (!ms.isOK()) {
- IWorkbenchWindow window= CDebugUIPlugin.getActiveWorkbenchWindow();
- if (window != null) {
- ErrorDialog.openError(window.getShell(), getErrorDialogTitle(), getErrorDialogMessage(), ms);
- } else {
- CDebugUIPlugin.log(ms);
- }
- }
- }
-
- /**
- * Returns whether or not this action should be run in the background.
- * Subclasses may override.
- * @return whether or not this action should be run in the background
- */
- protected boolean isRunInBackground() {
- return false;
- }
-
- /**
- * AbstractDebugActionDelegates come in 2 flavors: IViewActionDelegate,
- * IWorkbenchWindowActionDelegate delegates.
- * </p>
- * <ul>
- * <li>IViewActionDelegate delegate: getView() != null</li>
- * <li>IWorkbenchWindowActionDelegate: getView == null</li>
- * </ul>
- * <p>
- * Only want to call update(action, selection) for IViewActionDelegates.
- * An initialize call to update(action, selection) is made for all flavors to set the initial
- * enabled state of the underlying action.
- * IWorkbenchWindowActionDelegate's listen to selection changes
- * in the debug view only.
- * </p>
- *
- * @see org.eclipse.ui.IActionDelegate#selectionChanged(org.eclipse.jface.action.IAction, org.eclipse.jface.viewers.ISelection)
- */
- public void selectionChanged(IAction action, ISelection s) {
- boolean wasInitialized= initialize(action, s);
- if (!wasInitialized) {
- if (getView() != null) {
- update(action, s);
- }
- }
- }
-
- protected void update(IAction action, ISelection s) {
- if (s instanceof IStructuredSelection) {
- IStructuredSelection ss = (IStructuredSelection)s;
- action.setEnabled(getEnableStateForSelection(ss));
- setSelection(ss);
- } else {
- action.setEnabled(false);
- setSelection(StructuredSelection.EMPTY);
- }
- }
-
- /**
- * Performs the specific action on this element.
- */
- protected abstract void doAction(Object element) throws DebugException;
-
- /**
- * Returns the String to use as an error dialog title for
- * a failed action. Default is to return null.
- */
- protected String getErrorDialogTitle(){
- return null;
- }
- /**
- * Returns the String to use as an error dialog message for
- * a failed action. This message appears as the "Message:" in
- * the error dialog for this action.
- * Default is to return null.
- */
- protected String getErrorDialogMessage(){
- return null;
- }
- /**
- * Returns the String to use as a status message for
- * a failed action. This message appears as the "Reason:"
- * in the error dialog for this action.
- * Default is to return the empty String.
- */
- protected String getStatusMessage(){
- return ""; //$NON-NLS-1$
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.ui.IViewActionDelegate#init(org.eclipse.ui.IViewPart)
- */
- public void init(IViewPart view) {
- fViewPart = view;
- }
-
- /**
- * Returns this action's view part, or <code>null</code>
- * if not installed in a view.
- *
- * @return view part or <code>null</code>
- */
- protected IViewPart getView() {
- return fViewPart;
- }
-
- /**
- * Initialize this delegate, updating this delegate's
- * presentation.
- * As well, all of the flavors of AbstractDebugActionDelegates need to
- * have the initial enabled state set with a call to update(IAction, ISelection).
- *
- * @param action the presentation for this action
- * @return whether the action was initialized
- */
- protected boolean initialize(IAction action, ISelection selection) {
- if (!isInitialized()) {
- setAction(action);
- if (getView() == null) {
- //update on the selection in the debug view
- IWorkbenchWindow window= getWindow();
- if (window != null && window.getShell() != null && !window.getShell().isDisposed()) {
- IWorkbenchPage page= window.getActivePage();
- if (page != null) {
- selection= page.getSelection(IDebugUIConstants.ID_DEBUG_VIEW);
- }
- }
- }
- update(action, selection);
- setInitialized(true);
- return true;
- }
- return false;
- }
-
- /**
- * Returns the most recent selection
- *
- * @return structured selection
- */
- protected IStructuredSelection getSelection() {
- return fSelection;
- }
-
- /**
- * Sets the most recent selection
- *
- * @parm selection structured selection
- */
- private void setSelection(IStructuredSelection selection) {
- fSelection = selection;
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.ui.ISelectionListener#selectionChanged(org.eclipse.ui.IWorkbenchPart, org.eclipse.jface.viewers.ISelection)
- */
- public void selectionChanged(IWorkbenchPart part, ISelection selection) {
- update(getAction(), selection);
- }
-
- protected void setAction(IAction action) {
- fAction = action;
- }
-
- protected IAction getAction() {
- return fAction;
- }
-
- protected void setView(IViewPart viewPart) {
- fViewPart = viewPart;
- }
-
- protected boolean isInitialized() {
- return fInitialized;
- }
-
- protected void setInitialized(boolean initialized) {
- fInitialized = initialized;
- }
-
- protected IWorkbenchWindow getWindow() {
- return fWindow;
- }
-
- protected void setWindow(IWorkbenchWindow window) {
- fWindow = window;
- }
-
- /**
- * Return whether the action should be enabled or not based on the given selection.
- */
- protected boolean getEnableStateForSelection(IStructuredSelection selection) {
- if (selection.size() == 0) {
- return false;
- }
- Iterator itr= selection.iterator();
- while (itr.hasNext()) {
- Object element= itr.next();
- if (!isEnabledFor(element)) {
- return false;
- }
- }
- return true;
- }
-
- protected boolean isEnabledFor(Object element) {
- return true;
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.ui.IActionDelegate2#runWithEvent(org.eclipse.jface.action.IAction, org.eclipse.swt.widgets.Event)
- */
- public void runWithEvent(IAction action, Event event) {
- run(action);
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.ui.IActionDelegate2#init(org.eclipse.jface.action.IAction)
- */
- public void init(IAction action) {
- }
-}
diff --git a/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/actions/AbstractEditorActionDelegate.java b/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/actions/AbstractEditorActionDelegate.java
deleted file mode 100644
index 0d4d3246184..00000000000
--- a/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/actions/AbstractEditorActionDelegate.java
+++ /dev/null
@@ -1,225 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.internal.ui.actions;
-
-import org.eclipse.cdt.debug.ui.CDebugUIPlugin;
-import org.eclipse.debug.core.model.IDebugTarget;
-import org.eclipse.debug.ui.IDebugUIConstants;
-import org.eclipse.jface.action.IAction;
-import org.eclipse.jface.viewers.ISelection;
-import org.eclipse.jface.viewers.ISelectionProvider;
-import org.eclipse.ui.IEditorActionDelegate;
-import org.eclipse.ui.IEditorPart;
-import org.eclipse.ui.INullSelectionListener;
-import org.eclipse.ui.IPartListener;
-import org.eclipse.ui.ISelectionListener;
-import org.eclipse.ui.IWorkbenchPage;
-import org.eclipse.ui.IWorkbenchPart;
-import org.eclipse.ui.IWorkbenchWindow;
-import org.eclipse.ui.IWorkbenchWindowActionDelegate;
-import org.eclipse.ui.actions.ActionDelegate;
-
-/**
- *
- * Enter type comment.
- *
- * @since Sep 19, 2002
- */
-public abstract class AbstractEditorActionDelegate extends ActionDelegate
- implements IWorkbenchWindowActionDelegate,
- IEditorActionDelegate,
- IPartListener,
- ISelectionListener,
- INullSelectionListener
-{
- private IAction fAction;
- private IWorkbenchWindow fWorkbenchWindow;
- private IWorkbenchPart fTargetPart;
- private IDebugTarget fDebugTarget = null;
-
- /**
- * Constructor for AbstractEditorActionDelegate.
- */
- public AbstractEditorActionDelegate()
- {
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.ui.IWorkbenchWindowActionDelegate#dispose()
- */
- public void dispose()
- {
- IWorkbenchWindow win = getWorkbenchWindow();
- if ( win != null )
- {
- win.getPartService().removePartListener( this );
- win.getSelectionService().removeSelectionListener( IDebugUIConstants.ID_DEBUG_VIEW, this );
- }
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.ui.IWorkbenchWindowActionDelegate#init(IWorkbenchWindow)
- */
- public void init( IWorkbenchWindow window )
- {
- setWorkbenchWindow( window );
- IWorkbenchPage page = window.getActivePage();
- if ( page != null )
- {
- setTargetPart( page.getActivePart() );
- }
- window.getPartService().addPartListener( this );
- window.getSelectionService().addSelectionListener( IDebugUIConstants.ID_DEBUG_VIEW, this );
- initializeDebugTarget();
- update();
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.ui.IEditorActionDelegate#setActiveEditor(IAction, IEditorPart)
- */
- public void setActiveEditor( IAction action, IEditorPart targetEditor )
- {
- setAction( action );
- if ( getWorkbenchWindow() == null )
- {
- IWorkbenchWindow window = CDebugUIPlugin.getActiveWorkbenchWindow();
- setWorkbenchWindow( window );
- if ( window != null )
- {
- window.getSelectionService().addSelectionListener( IDebugUIConstants.ID_DEBUG_VIEW, this );
- }
- }
- setTargetPart( targetEditor );
- initializeDebugTarget();
- update();
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.ui.IPartListener#partActivated(IWorkbenchPart)
- */
- public void partActivated( IWorkbenchPart part )
- {
- setTargetPart( part );
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.ui.IPartListener#partBroughtToTop(IWorkbenchPart)
- */
- public void partBroughtToTop( IWorkbenchPart part )
- {
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.ui.IPartListener#partClosed(IWorkbenchPart)
- */
- public void partClosed( IWorkbenchPart part )
- {
- if ( part == getTargetPart() )
- {
- setTargetPart( null );
- }
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.ui.IPartListener#partDeactivated(IWorkbenchPart)
- */
- public void partDeactivated(IWorkbenchPart part)
- {
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.ui.IPartListener#partOpened(IWorkbenchPart)
- */
- public void partOpened( IWorkbenchPart part )
- {
- }
-
- public abstract void selectionChanged( IWorkbenchPart part, ISelection selection );
-
- /* (non-Javadoc)
- * @see org.eclipse.ui.IActionDelegate#run(IAction)
- */
- public abstract void run( IAction action );
-
- /* (non-Javadoc)
- * @see org.eclipse.ui.IActionDelegate#selectionChanged(IAction, ISelection)
- */
- public void selectionChanged(IAction action, ISelection selection)
- {
- setAction( action );
- update();
- }
-
- protected IWorkbenchPart getTargetPart()
- {
- return fTargetPart;
- }
-
- protected void setTargetPart( IWorkbenchPart part )
- {
- fTargetPart = part;
- }
-
- protected ISelection getTargetSelection()
- {
- IWorkbenchPart part = getTargetPart();
- if ( part != null )
- {
- ISelectionProvider provider = part.getSite().getSelectionProvider();
- if ( provider != null )
- {
- return provider.getSelection();
- }
- }
- return null;
- }
-
- protected void setDebugTarget( IDebugTarget target )
- {
- fDebugTarget = target;
- }
-
- protected IDebugTarget getDebugTarget()
- {
- return fDebugTarget;
- }
-
- protected IAction getAction()
- {
- return fAction;
- }
-
- protected void setAction( IAction action )
- {
- fAction = action;
- }
-
- protected IWorkbenchWindow getWorkbenchWindow()
- {
- return fWorkbenchWindow;
- }
-
- protected void setWorkbenchWindow( IWorkbenchWindow workbenchWindow )
- {
- fWorkbenchWindow = workbenchWindow;
- }
-
- protected void update()
- {
- IAction action = getAction();
- if ( action != null )
- {
- action.setEnabled( getDebugTarget() != null && getTargetPart() != null );
- }
- }
-
- protected abstract void initializeDebugTarget();
-}
diff --git a/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/actions/AbstractListenerActionDelegate.java b/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/actions/AbstractListenerActionDelegate.java
deleted file mode 100644
index d1e05a7dd51..00000000000
--- a/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/actions/AbstractListenerActionDelegate.java
+++ /dev/null
@@ -1,109 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.internal.ui.actions;
-
-import org.eclipse.debug.core.DebugEvent;
-import org.eclipse.debug.core.DebugPlugin;
-import org.eclipse.debug.core.IDebugEventSetListener;
-import org.eclipse.jface.action.IAction;
-import org.eclipse.swt.widgets.Event;
-import org.eclipse.swt.widgets.Shell;
-import org.eclipse.ui.IActionDelegate2;
-import org.eclipse.ui.IViewPart;
-import org.eclipse.ui.IWorkbenchWindow;
-
-public abstract class AbstractListenerActionDelegate extends AbstractDebugActionDelegate implements IDebugEventSetListener, IActionDelegate2 {
-
- /**
- * @see org.eclipse.ui.IWorkbenchWindowActionDelegate#dispose()
- * @see org.eclipse.ui.IActionDelegate2#dispose()
- */
- public void dispose() {
- super.dispose();
- DebugPlugin.getDefault().removeDebugEventListener(this);
- }
-
- /**
- * @see IDebugEventSetListener#handleDebugEvents(DebugEvent[])
- */
- public void handleDebugEvents(final DebugEvent[] events) {
- if (getWindow() == null || getAction() == null) {
- return;
- }
- Shell shell= getWindow().getShell();
- if (shell == null || shell.isDisposed()) {
- return;
- }
- Runnable r= new Runnable() {
- public void run() {
- for (int i = 0; i < events.length; i++) {
- if (events[i].getSource() != null) {
- doHandleDebugEvent(events[i]);
- }
- }
- }
- };
-
- shell.getDisplay().asyncExec(r);
- }
-
- /**
- * Default implementation to update on specific debug events.
- * Subclasses should override to handle events differently.
- */
- protected void doHandleDebugEvent(DebugEvent event) {
- switch (event.getKind()) {
- case DebugEvent.TERMINATE :
- update(getAction(), getSelection());
- break;
- case DebugEvent.RESUME :
- if (!event.isEvaluation() || !((event.getDetail() & DebugEvent.EVALUATION_IMPLICIT) != 0)) {
- update(getAction(), getSelection());
- }
- break;
- case DebugEvent.SUSPEND :
- // Update on suspend events (even for evaluations), in case the user changed
- // the selection during an implicit evaluation.
- update(getAction(), getSelection());
- break;
- }
- }
-
- /**
- * @see IWorkbenchWindowActionDelegate#init(IWorkbenchWindow)
- */
- public void init(IWorkbenchWindow window){
- super.init(window);
- DebugPlugin.getDefault().addDebugEventListener(this);
- }
-
- /**
- * @see IViewActionDelegate#init(IViewPart)
- */
- public void init(IViewPart view) {
- super.init(view);
- DebugPlugin.getDefault().addDebugEventListener(this);
- setWindow(view.getViewSite().getWorkbenchWindow());
- }
-
- /**
- * @see org.eclipse.ui.IActionDelegate2#init(org.eclipse.jface.action.IAction)
- */
- public void init(IAction action) {
- }
-
- /**
- * @see org.eclipse.ui.IActionDelegate2#runWithEvent(org.eclipse.jface.action.IAction, org.eclipse.swt.widgets.Event)
- */
- public void runWithEvent(IAction action, Event event) {
- run(action);
- }
-}
diff --git a/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/actions/AbstractViewActionDelegate.java b/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/actions/AbstractViewActionDelegate.java
deleted file mode 100644
index 1b0a5bb5e65..00000000000
--- a/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/actions/AbstractViewActionDelegate.java
+++ /dev/null
@@ -1,186 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004, 2005 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.internal.ui.actions;
-
-import org.eclipse.cdt.debug.ui.CDebugUIPlugin;
-import org.eclipse.core.runtime.IAdaptable;
-import org.eclipse.core.runtime.MultiStatus;
-import org.eclipse.debug.core.DebugEvent;
-import org.eclipse.debug.core.DebugException;
-import org.eclipse.debug.core.DebugPlugin;
-import org.eclipse.debug.core.IDebugEventSetListener;
-import org.eclipse.debug.ui.DebugUITools;
-import org.eclipse.debug.ui.IDebugUIConstants;
-import org.eclipse.debug.ui.IDebugView;
-import org.eclipse.jface.action.IAction;
-import org.eclipse.jface.viewers.ISelection;
-import org.eclipse.jface.viewers.IStructuredSelection;
-import org.eclipse.jface.viewers.StructuredSelection;
-import org.eclipse.swt.custom.BusyIndicator;
-import org.eclipse.swt.widgets.Display;
-import org.eclipse.swt.widgets.Shell;
-import org.eclipse.ui.INullSelectionListener;
-import org.eclipse.ui.ISelectionListener;
-import org.eclipse.ui.IViewActionDelegate;
-import org.eclipse.ui.IViewPart;
-import org.eclipse.ui.IWorkbenchPart;
-import org.eclipse.ui.IWorkbenchWindow;
-import org.eclipse.ui.actions.ActionDelegate;
-
-/**
- * The superclass for action delegates of views different than the Debug view and
- * driven by the selection in the Debug view.
- */
-public abstract class AbstractViewActionDelegate extends ActionDelegate implements IViewActionDelegate, ISelectionListener, INullSelectionListener, IDebugEventSetListener {
-
- private IAction fAction;
-
- private IDebugView fView;
-
- private IStructuredSelection fSelection = StructuredSelection.EMPTY;
-
- /* (non-Javadoc)
- * @see org.eclipse.ui.IViewActionDelegate#init(org.eclipse.ui.IViewPart)
- */
- public void init( IViewPart view ) {
- setView( view );
- DebugPlugin.getDefault().addDebugEventListener( this );
- IWorkbenchWindow window = getWindow();
- if ( window != null ) {
- window.getSelectionService().addSelectionListener( IDebugUIConstants.ID_DEBUG_VIEW, this );
- }
- IAdaptable context = DebugUITools.getDebugContext();
- IStructuredSelection ss = ( context != null ) ? new StructuredSelection( context ) : StructuredSelection.EMPTY;
- selectionChanged( (IWorkbenchPart)null, ss );
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.ui.IActionDelegate2#dispose()
- */
- public void dispose() {
- IWorkbenchWindow window = getWindow();
- if ( window != null ) {
- window.getSelectionService().removeSelectionListener( IDebugUIConstants.ID_DEBUG_VIEW, this );
- }
- DebugPlugin.getDefault().removeDebugEventListener( this );
- super.dispose();
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.ui.IActionDelegate2#init(org.eclipse.jface.action.IAction)
- */
- public void init( IAction action ) {
- setAction( action );
- action.setEnabled( false );
- super.init( action );
- }
-
- protected IDebugView getView() {
- return fView;
- }
-
- private void setView( IViewPart view ) {
- fView = (view instanceof IDebugView) ? (IDebugView)view : null;
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.ui.IActionDelegate#run(org.eclipse.jface.action.IAction)
- */
- public void run( IAction action ) {
- final MultiStatus ms = new MultiStatus( CDebugUIPlugin.getUniqueIdentifier(), DebugException.REQUEST_FAILED, "", null ); //$NON-NLS-1$
- BusyIndicator.showWhile( Display.getCurrent(), new Runnable() {
-
- public void run() {
- try {
- doAction();
- }
- catch( DebugException e ) {
- ms.merge( e.getStatus() );
- }
- }
- } );
- if ( !ms.isOK() ) {
- IWorkbenchWindow window = CDebugUIPlugin.getActiveWorkbenchWindow();
- if ( window != null ) {
- CDebugUIPlugin.errorDialog( getErrorDialogMessage(), ms.getChildren()[0] );
- }
- else {
- CDebugUIPlugin.log( ms );
- }
- }
- }
-
-
- protected IAction getAction() {
- return fAction;
- }
-
- private void setAction( IAction action ) {
- fAction = action;
- }
-
- private IWorkbenchWindow getWindow() {
- if ( getView() != null ) {
- return getView().getViewSite().getWorkbenchWindow();
- }
- return null;
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.ui.ISelectionListener#selectionChanged(org.eclipse.ui.IWorkbenchPart, org.eclipse.jface.viewers.ISelection)
- */
- public void selectionChanged( IWorkbenchPart part, ISelection selection ) {
- setSelection( selection );
- update();
- }
-
- protected IStructuredSelection getSelection() {
- return fSelection;
- }
-
- protected void setSelection( ISelection selection ) {
- fSelection = (selection instanceof IStructuredSelection) ? (IStructuredSelection)selection : StructuredSelection.EMPTY;
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.debug.core.IDebugEventSetListener#handleDebugEvents(org.eclipse.debug.core.DebugEvent[])
- */
- public void handleDebugEvents( final DebugEvent[] events ) {
- if ( getWindow() == null || getAction() == null ) {
- return;
- }
- Shell shell = getWindow().getShell();
- if ( shell == null || shell.isDisposed() ) {
- return;
- }
- Runnable r = new Runnable() {
-
- public void run() {
- for( int i = 0; i < events.length; i++ ) {
- if ( events[i].getSource() != null ) {
- doHandleDebugEvent( events[i] );
- }
- }
- }
- };
- shell.getDisplay().asyncExec( r );
- }
-
- protected abstract String getErrorDialogTitle();
-
- protected abstract String getErrorDialogMessage();
-
- protected abstract void doAction() throws DebugException;
-
- protected abstract void update();
-
- protected abstract void doHandleDebugEvent( DebugEvent event );
-}
diff --git a/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/actions/ActionMessages.java b/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/actions/ActionMessages.java
deleted file mode 100644
index 29ceed9f7e1..00000000000
--- a/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/actions/ActionMessages.java
+++ /dev/null
@@ -1,33 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.internal.ui.actions;
-
-import java.util.MissingResourceException;
-import java.util.ResourceBundle;
-
-public class ActionMessages {
-
- private static final String BUNDLE_NAME = "org.eclipse.cdt.debug.internal.ui.actions.ActionMessages"; //$NON-NLS-1$
-
- private static final ResourceBundle RESOURCE_BUNDLE = ResourceBundle.getBundle( BUNDLE_NAME );
-
- private ActionMessages() {
- }
-
- public static String getString( String key ) {
- try {
- return RESOURCE_BUNDLE.getString( key );
- }
- catch( MissingResourceException e ) {
- return '!' + key + '!';
- }
- }
-}
diff --git a/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/actions/ActionMessages.properties b/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/actions/ActionMessages.properties
deleted file mode 100644
index 6e67e96c440..00000000000
--- a/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/actions/ActionMessages.properties
+++ /dev/null
@@ -1,120 +0,0 @@
-###############################################################################
-# Copyright (c) 2003, 2005 QNX Software Systems and others.
-# All rights reserved. This program and the accompanying materials
-# are made available under the terms of the Eclipse Public License v1.0
-# which accompanies this distribution, and is available at
-# http://www.eclipse.org/legal/epl-v10.html
-#
-# Contributors:
-# QNX Software Systems - initial API and implementation
-###############################################################################
-
-LoadSymbolsActionDelegate.Unable_to_load_symbols_of_shared_library_1=Unable to load symbols of shared library.
-LoadSymbolsActionDelegate.Operation_failed_1=Operation failed.
-LoadSymbolsForAllAction.Load_Symbols_For_All_1=Load Symbols For All
-LoadSymbolsForAllAction.Load_symbols_for_all_shared_libraries_1=Load symbols for all shared libraries.
-LoadSymbolsForAllActionDelegate.Error(s)_occurred_loading_the_symbols_1=Error(s) occurred loading the symbols.
-LoadSymbolsForAllAction.Load_Symbols_For_All_2=Load Symbols For All
-LoadSymbolsForAllActionDelegate.Error_1=Error
-LoadSymbolsForAllActionDelegate.0=Operation failed.
-LoadModuleSymbolsActionDelegate.0=Unable to load symbols.
-LoadSymbolsForAllAction.Unable_to_load_symbols_1=Unable to load symbols.
-SignalZeroWorkbenchActionDelegate.0=Exceptions occurred attempting to resume without signal.
-SignalZeroWorkbenchActionDelegate.1=Resume without signal failed.
-SignalZeroWorkbenchActionDelegate.2=Resume Without Signal
-SignalZeroObjectActionDelegate.0=Unable to resume ignoring the signal.
-SignalZeroObjectActionDelegate.1=Operation failed.
-RunToLineActionDelegate.Error_1=Error
-RunToLineActionDelegate.Operation_failed_1=Operation failed.
-RunToLineAdapter.Empty_editor_1=Empty editor
-RunToLineAdapter.0=Run To Line failed.
-RunToLineAdapter.Missing_document_1=Missing document
-ToggleBreakpointAdapter.Empty_editor_1=Empty editor
-ToggleBreakpointAdapter.Missing_document_1=Missing document
-ToggleBreakpointAdapter.Missing_resource_1=Missing resource
-ToggleBreakpointAdapter.Invalid_line_1=Invalid line
-ToggleBreakpointAdapter.Empty_editor_2=Empty editor
-ToggleWatchpointActionDelegate.Error_1=Error
-ToggleBreakpointAdapter.Missing_document_2=Missing document
-ToggleBreakpointAdapter.Missing_resource_2=Missing resource
-ToggleBreakpointAdapter.Invalid_expression_1=Invalid expression:
-RunToLineAdapter.Operation_is_not_supported_1=Operation is not supported.
-EnableDisableBreakpointRulerAction.Enable_Breakpoint_1=&Enable Breakpoint
-EnableDisableBreakpointRulerAction.Enabling_disabling_breakpoints_1=Enabling/disabling breakpoints
-EnableDisableBreakpointRulerAction.Exceptions_occurred_enabling_or_disabling_breakpoint_1=Exceptions occurred enabling or disabling the breakpoint
-EnableDisableBreakpointRulerAction.Disable_Breakpoint_1=&Disable Breakpoint
-ToggleBreakpointRulerAction.Toggle_Breakpoint_1=Toggle &Breakpoint
-ToggleWatchpointActionDelegate.Operation_failed_1=Operation failed.
-ToggleBreakpointRulerAction.Error_1=Error
-ToggleBreakpointRulerAction.Operation_failed_1=Operation failed
-CBreakpointPropertiesRulerAction.Breakpoint_Properties=Breakpoint &Properties...
-ResumeAtLineActionDelegate.Error_1=Error
-ResumeAtLineActionDelegate.0=Resume At Li&ne
-ResumeAtLineActionDelegate.1=Error
-ResumeAtLineActionDelegate.2=Resume at line failed
-RestoreDefaultTypeActionDelegate.0=Unable to restore the default type.
-RestoreDefaultRegisterGroupsActionDelegate.0=Error
-RestoreDefaultRegisterGroupsActionDelegate.1=Error(s) occurred restoring default register groups.
-ResumeAtLineActionDelegate.Operation_failed_1=Operation failed.
-ResumeAtLineActionDelegate.Missing_document=Missing document
-ResumeAtLineActionDelegate.Empty_editor_1=Empty editor
-ResumeAtLineActionDelegate.Operation_is_not_supported_1=Operation is not supported
-AddGlobalsActionDelegate.title=Global Variables
-AddGlobalsActionDelegate.Error(s)_occured_adding_globals_1=Error(s) occured adding globals.
-ManageFunctionBreakpointActionDelegate.Error_1=Error
-ManageFunctionBreakpointActionDelegate.Operation_failed_1=Operation failed.
-SignalActionDelegate.0=Unable to deliver the signal to the target.
-SignalActionDelegate.1=Operation failed.
-RestartActionDelegate.0=Exception(s) occurred attempting to restart.
-RestartActionDelegate.1=Restart failed.
-RestartActionDelegate.2=Restart
-AddGlobalsActionDelegate.0=Select Variables:
-AddGlobalsActionDelegate.1=Add global variables failed.
-VariableFormatActionDelegate.0=Unable to set format.
-ExpressionDialog.0=Add Watch Expression
-ExpressionDialog.1=Expression to watch:
-CastToTypeActionDelegate.0=The 'Type' field must not be empty.
-CastToTypeActionDelegate.1=Cast To Type
-CastToTypeActionDelegate.2=Enter type:
-CastToTypeActionDelegate.3=Unable to cast to type.
-CastToArrayActionDelegate.0=Display As Array
-CastToArrayActionDelegate.1=Start index:
-CastToArrayActionDelegate.2=Length
-CastToArrayActionDelegate.3=The 'First index' field must not be empty.
-CastToArrayActionDelegate.4=Invalid first index.
-CastToArrayActionDelegate.5=The 'Last index' field must not be empty.
-CastToArrayActionDelegate.6=Invalid last index.
-CastToArrayActionDelegate.7=The length must be greater than 0.
-CastToArrayActionDelegate.8=Unable to display this variable as an array.
-EnableVariablesActionDelegate.0=Exceptions occurred enabling the variable(s).
-EnableVariablesActionDelegate.1=Enable variable(s) failed.
-AddWatchpointActionDelegate.0=Cannot add watchpoint.
-AddWatchpointDialog.0=Add Watchpoint
-AddWatchpointDialog.1=Expression to watch:
-AddWatchpointDialog.2=Access
-AddWatchpointDialog.3=Write
-AddWatchpointDialog.4=Read
-ResumeAtLineAdapter.0=Empty editor
-ResumeAtLineAdapter.1=Missing document
-ResumeAtLineAdapter.2=Empty editor
-ResumeAtLineAdapter.3=Operation is not supported.
-ResumeAtLineAdapter.4=Resume At Line failed.
-RegisterGroupDialog.0=New Group
-RegisterGroupDialog.1=Select All
-RegisterGroupDialog.2=Desellect All
-RegisterGroupDialog.3=Group Name:
-RegisterGroupDialog.4=Choose From The List:
-RegisterGroupDialog.5=Register Group
-RegisterGroupDialog.6=Select the group registers
-RegisterGroupDialog.7=The group name field must not be empty.
-ToggleDetailPaneAction.0=Vertical View Orientation
-ToggleDetailPaneAction.1=Place the Detail Pane Underneath the Main Tree View
-ToggleDetailPaneAction.2=Place the Detail Pane Underneath the Main Tree View
-ToggleDetailPaneAction.3=Horizontal View Orientation
-ToggleDetailPaneAction.4=Place the Detail Pane on the Right of the Main Tree View
-ToggleDetailPaneAction.5=Place the Detail Pane on the Right of the Main Tree View
-ToggleDetailPaneAction.6=Hide the Detail Pane so that only the Main Tree View is Visible
-ToggleDetailPaneAction.7=Hide the Detail Pane so that only the Main Tree View is Visible
-AddRegisterGroupActionDelegate.0=Error
-AddRegisterGroupActionDelegate.1=Error(s) occurred adding register group.
-EditRegisterGroupActionDelegate.0=Unable to edit register group.
diff --git a/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/actions/AddExpressionEditorActionDelegate.java b/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/actions/AddExpressionEditorActionDelegate.java
deleted file mode 100644
index 33e789f65db..00000000000
--- a/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/actions/AddExpressionEditorActionDelegate.java
+++ /dev/null
@@ -1,110 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004, 2005 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.internal.ui.actions;
-
-import org.eclipse.cdt.debug.ui.CDebugUIPlugin;
-import org.eclipse.core.runtime.IAdaptable;
-import org.eclipse.debug.core.DebugPlugin;
-import org.eclipse.debug.core.model.IDebugElement;
-import org.eclipse.debug.core.model.IWatchExpression;
-import org.eclipse.debug.ui.DebugUITools;
-import org.eclipse.debug.ui.IDebugUIConstants;
-import org.eclipse.jface.action.IAction;
-import org.eclipse.jface.text.ITextSelection;
-import org.eclipse.jface.viewers.ISelection;
-import org.eclipse.jface.viewers.ISelectionProvider;
-import org.eclipse.jface.window.Window;
-import org.eclipse.swt.widgets.Shell;
-import org.eclipse.ui.IEditorActionDelegate;
-import org.eclipse.ui.IEditorPart;
-import org.eclipse.ui.IWorkbenchPage;
-import org.eclipse.ui.IWorkbenchPart;
-import org.eclipse.ui.IWorkbenchWindow;
-import org.eclipse.ui.PartInitException;
-import org.eclipse.ui.actions.ActionDelegate;
-
-
-/**
- * The "Add Expression" action contribution to editors.
- */
-public class AddExpressionEditorActionDelegate extends ActionDelegate implements IEditorActionDelegate {
-
- private IEditorPart fEditorPart;
-
- /* (non-Javadoc)
- * @see org.eclipse.ui.IEditorActionDelegate#setActiveEditor(org.eclipse.jface.action.IAction, org.eclipse.ui.IEditorPart)
- */
- public void setActiveEditor( IAction action, IEditorPart targetEditor ) {
- setEditorPart( targetEditor );
- }
-
- private IEditorPart getEditorPart() {
- return fEditorPart;
- }
-
- private void setEditorPart( IEditorPart editorPart ) {
- fEditorPart = editorPart;
- }
-
- public void run( IAction action ) {
- String text = getSelectedText();
- ExpressionDialog dlg = new ExpressionDialog( getShell(), text );
- if ( dlg.open() != Window.OK )
- return;
- createExpression( dlg.getExpression() );
- activateExpressionView();
- }
-
- private String getSelectedText() {
- ISelection selection = getTargetSelection();
- if ( selection != null && selection instanceof ITextSelection ) {
- return ((ITextSelection)selection).getText().trim();
- }
- return ""; //$NON-NLS-1$
- }
-
- protected ISelection getTargetSelection() {
- IWorkbenchPart part = getEditorPart();
- if ( part != null ) {
- ISelectionProvider provider = part.getSite().getSelectionProvider();
- if ( provider != null ) {
- return provider.getSelection();
- }
- }
- return null;
- }
-
- private void createExpression( String text ) {
- IWatchExpression watchExpression= DebugPlugin.getDefault().getExpressionManager().newWatchExpression( text );
- DebugPlugin.getDefault().getExpressionManager().addExpression( watchExpression );
- IAdaptable context = DebugUITools.getDebugContext();
- if ( context instanceof IDebugElement )
- watchExpression.setExpressionContext( (IDebugElement)context );
- }
-
- protected Shell getShell() {
- return ( getEditorPart() != null ) ? getEditorPart().getSite().getShell() : CDebugUIPlugin.getActiveWorkbenchShell();
- }
-
- private void activateExpressionView() {
- IWorkbenchWindow window = CDebugUIPlugin.getActiveWorkbenchWindow();
- if ( window != null ) {
- IWorkbenchPage page = window.getActivePage();
- if ( page != null ) {
- try {
- page.showView( IDebugUIConstants.ID_EXPRESSION_VIEW );
- }
- catch( PartInitException e ) {
- }
- }
- }
- }
-}
diff --git a/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/actions/AddGlobalsActionDelegate.java b/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/actions/AddGlobalsActionDelegate.java
deleted file mode 100644
index 04fdc9418d9..00000000000
--- a/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/actions/AddGlobalsActionDelegate.java
+++ /dev/null
@@ -1,322 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.internal.ui.actions;
-
-import java.util.Arrays;
-import java.util.List;
-import org.eclipse.cdt.debug.core.ICGlobalVariableManager;
-import org.eclipse.cdt.debug.core.model.IExecFileInfo;
-import org.eclipse.cdt.debug.core.model.IGlobalVariableDescriptor;
-import org.eclipse.cdt.debug.ui.CDebugUIPlugin;
-import org.eclipse.core.runtime.IStatus;
-import org.eclipse.core.runtime.MultiStatus;
-import org.eclipse.debug.core.DebugException;
-import org.eclipse.debug.core.model.IDebugElement;
-import org.eclipse.debug.ui.DebugUITools;
-import org.eclipse.debug.ui.IDebugUIConstants;
-import org.eclipse.jface.action.IAction;
-import org.eclipse.jface.viewers.ILabelProvider;
-import org.eclipse.jface.viewers.ISelection;
-import org.eclipse.jface.viewers.IStructuredContentProvider;
-import org.eclipse.jface.viewers.IStructuredSelection;
-import org.eclipse.jface.viewers.LabelProvider;
-import org.eclipse.jface.viewers.StructuredSelection;
-import org.eclipse.jface.viewers.Viewer;
-import org.eclipse.jface.viewers.ViewerSorter;
-import org.eclipse.jface.window.Window;
-import org.eclipse.swt.custom.BusyIndicator;
-import org.eclipse.swt.widgets.Composite;
-import org.eclipse.swt.widgets.Control;
-import org.eclipse.swt.widgets.Display;
-import org.eclipse.swt.widgets.Shell;
-import org.eclipse.ui.IPartListener;
-import org.eclipse.ui.ISelectionListener;
-import org.eclipse.ui.IViewActionDelegate;
-import org.eclipse.ui.IViewPart;
-import org.eclipse.ui.IWorkbenchPart;
-import org.eclipse.ui.IWorkbenchWindow;
-import org.eclipse.ui.actions.ActionDelegate;
-import org.eclipse.ui.dialogs.ListSelectionDialog;
-
-/**
- * A delegate for the "Add Globals" action.
- */
-public class AddGlobalsActionDelegate extends ActionDelegate implements IViewActionDelegate, ISelectionListener, IPartListener {
-
-
- class SortedListSelectionDialog extends ListSelectionDialog {
-
- public SortedListSelectionDialog( Shell parentShell, Object input, IStructuredContentProvider contentProvider, ILabelProvider labelProvider, String message ) {
- super( parentShell, input, contentProvider, labelProvider, message );
- }
-
- protected Control createDialogArea( Composite parent ) {
- Control da = super.createDialogArea( parent );
- getViewer().setSorter( new ViewerSorter() );
- return da;
- }
- }
-
- private IGlobalVariableDescriptor[] fGlobals;
-
- private IViewPart fView = null;
-
- private IAction fAction;
-
- private IStructuredSelection fSelection;
-
- private IStatus fStatus = null;
-
- /*
- * (non-Javadoc)
- *
- * @see org.eclipse.ui.IViewActionDelegate#init(IViewPart)
- */
- public void init( IViewPart view ) {
- fView = view;
- view.getSite().getPage().addPartListener( this );
- view.getSite().getPage().addSelectionListener( IDebugUIConstants.ID_DEBUG_VIEW, this );
- }
-
- /*
- * (non-Javadoc)
- *
- * @see org.eclipse.ui.ISelectionListener#selectionChanged(IWorkbenchPart, ISelection)
- */
- public void selectionChanged( IWorkbenchPart part, ISelection selection ) {
- if ( part != null && part.getSite().getId().equals( IDebugUIConstants.ID_DEBUG_VIEW ) ) {
- if ( selection instanceof IStructuredSelection ) {
- setSelection( (IStructuredSelection)selection );
- }
- else {
- setSelection( null );
- }
- update( getAction() );
- }
- }
-
- /*
- * (non-Javadoc)
- *
- * @see org.eclipse.ui.IActionDelegate#run(IAction)
- */
- public void run( IAction action ) {
- final IStructuredSelection selection = getSelection();
- if ( selection != null && selection.size() != 1 )
- return;
- BusyIndicator.showWhile( Display.getCurrent(), new Runnable() {
-
- public void run() {
- try {
- doAction( selection.getFirstElement() );
- setStatus( null );
- }
- catch( DebugException e ) {
- setStatus( e.getStatus() );
- }
- }
- } );
- IStatus status = getStatus();
- if ( status != null && !status.isOK() ) {
- if ( status.isMultiStatus() ) {
- status = new MultiStatus( status.getPlugin(), status.getCode(), status.getChildren(), ActionMessages.getString( "AddGlobalsActionDelegate.Error(s)_occured_adding_globals_1" ), status.getException() ); //$NON-NLS-1$
- }
- IWorkbenchWindow window = CDebugUIPlugin.getActiveWorkbenchWindow();
- if ( window != null ) {
- CDebugUIPlugin.errorDialog( getErrorDialogMessage(), status );
- }
- else {
- CDebugUIPlugin.log( status );
- }
- }
- }
-
- /*
- * (non-Javadoc)
- *
- * @see org.eclipse.ui.IActionDelegate#selectionChanged(IAction, ISelection)
- */
- public void selectionChanged( IAction action, ISelection selection ) {
- setAction( action );
- if ( getView() != null ) {
- update( action );
- }
- }
-
- protected void update( IAction action ) {
- if ( action != null ) {
- action.setEnabled( getEnableStateForSelection( getSelection() ) );
- }
- }
-
- /*
- * (non-Javadoc)
- *
- * @see org.eclipse.ui.IPartListener#partActivated(IWorkbenchPart)
- */
- public void partActivated( IWorkbenchPart part ) {
- }
-
- /*
- * (non-Javadoc)
- *
- * @see org.eclipse.ui.IPartListener#partBroughtToTop(IWorkbenchPart)
- */
- public void partBroughtToTop( IWorkbenchPart part ) {
- }
-
- /*
- * (non-Javadoc)
- *
- * @see org.eclipse.ui.IPartListener#partClosed(IWorkbenchPart)
- */
- public void partClosed( IWorkbenchPart part ) {
- if ( part.equals( getView() ) ) {
- dispose();
- }
- }
-
- /*
- * (non-Javadoc)
- *
- * @see org.eclipse.ui.IPartListener#partDeactivated(IWorkbenchPart)
- */
- public void partDeactivated( IWorkbenchPart part ) {
- }
-
- /*
- * (non-Javadoc)
- *
- * @see org.eclipse.ui.IPartListener#partOpened(IWorkbenchPart)
- */
- public void partOpened( IWorkbenchPart part ) {
- }
-
- protected IViewPart getView() {
- return fView;
- }
-
- protected void setView( IViewPart viewPart ) {
- fView = viewPart;
- }
-
- protected void setAction( IAction action ) {
- fAction = action;
- }
-
- protected IAction getAction() {
- return fAction;
- }
-
- private void setSelection( IStructuredSelection selection ) {
- fSelection = selection;
- }
-
- private IStructuredSelection getSelection() {
- return fSelection;
- }
-
- public void dispose() {
- if ( getView() != null ) {
- getView().getViewSite().getPage().removeSelectionListener( IDebugUIConstants.ID_DEBUG_VIEW, this );
- getView().getViewSite().getPage().removePartListener( this );
- }
- }
-
- protected boolean getEnableStateForSelection( IStructuredSelection selection ) {
- if ( selection == null || selection.size() != 1 ) {
- return false;
- }
- Object element = selection.getFirstElement();
- return (element != null && element instanceof IDebugElement && ((IDebugElement)element).getDebugTarget().getAdapter( IExecFileInfo.class ) != null);
- }
-
- private SortedListSelectionDialog createDialog() {
- return new SortedListSelectionDialog( getView().getSite().getShell(), fGlobals, new IStructuredContentProvider() {
-
- public void inputChanged( Viewer viewer, Object oldInput, Object newInput ) {
- }
-
- public void dispose() {
- }
-
- public Object[] getElements( Object parent ) {
- return getGlobals();
- }
- }, new LabelProvider() {
-
- public String getText( Object element ) {
- if ( element instanceof IGlobalVariableDescriptor ) {
- String path = ""; //$NON-NLS-1$
- if ( ((IGlobalVariableDescriptor)element).getPath() != null ) {
- path = ((IGlobalVariableDescriptor)element).getPath().toString();
- int index = path.lastIndexOf( '/' );
- if ( index != -1 )
- path = path.substring( index + 1 );
- }
- return (path.length() > 0 ? ('\'' + path + "\'::") : "") + ((IGlobalVariableDescriptor)element).getName(); //$NON-NLS-1$ //$NON-NLS-2$
- }
- return null;
- }
- }, ActionMessages.getString( "AddGlobalsActionDelegate.0" ) ); //$NON-NLS-1$
- }
-
- protected IGlobalVariableDescriptor[] getGlobals() {
- return fGlobals;
- }
-
- protected void doAction( Object element ) throws DebugException {
- if ( getView() == null )
- return;
- if ( element != null && element instanceof IDebugElement ) {
- IExecFileInfo info = (IExecFileInfo)((IDebugElement)element).getDebugTarget().getAdapter( IExecFileInfo.class );
- ICGlobalVariableManager gvm = (ICGlobalVariableManager)((IDebugElement)element).getDebugTarget().getAdapter( ICGlobalVariableManager.class );
- if ( info != null && gvm != null ) {
- fGlobals = info.getGlobals();
- ListSelectionDialog dlg = createDialog();
- dlg.setTitle(ActionMessages.getString("AddGlobalsActionDelegate.title"));
- dlg.setInitialSelections( gvm.getDescriptors() );
- if ( dlg.open() == Window.OK ) {
- List list = Arrays.asList( dlg.getResult() );
- IGlobalVariableDescriptor[] selections = (IGlobalVariableDescriptor[])list.toArray( new IGlobalVariableDescriptor[list.size()] );
- gvm.addGlobals( selections );
- }
- }
- }
- }
-
- /**
- * @see AbstractDebugActionDelegate#getErrorDialogMessage()
- */
- protected String getErrorDialogMessage() {
- return ActionMessages.getString( "AddGlobalsActionDelegate.1" ); //$NON-NLS-1$
- }
-
- protected void setStatus( IStatus status ) {
- fStatus = status;
- }
-
- protected IStatus getStatus() {
- return fStatus;
- }
-
- /*
- * (non-Javadoc)
- *
- * @see org.eclipse.ui.IActionDelegate2#init(org.eclipse.jface.action.IAction)
- */
- public void init( IAction action ) {
- super.init( action );
- Object element = DebugUITools.getDebugContext();
- setSelection( (element != null) ? new StructuredSelection( element ) : new StructuredSelection() );
- update( action );
- }
-}
diff --git a/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/actions/AddRegisterGroupActionDelegate.java b/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/actions/AddRegisterGroupActionDelegate.java
deleted file mode 100644
index 8cab43b6736..00000000000
--- a/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/actions/AddRegisterGroupActionDelegate.java
+++ /dev/null
@@ -1,85 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004, 2005 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.internal.ui.actions;
-
-import org.eclipse.cdt.debug.core.model.ICDebugTarget;
-import org.eclipse.debug.core.DebugEvent;
-import org.eclipse.debug.core.DebugException;
-import org.eclipse.debug.core.model.IDebugElement;
-import org.eclipse.debug.ui.DebugUITools;
-import org.eclipse.jface.action.IAction;
-import org.eclipse.jface.viewers.StructuredSelection;
-import org.eclipse.jface.window.Window;
-
-/**
- * A delegate for the "Add register group" action.
- */
-public class AddRegisterGroupActionDelegate extends AbstractViewActionDelegate {
-
- /* (non-Javadoc)
- * @see org.eclipse.cdt.debug.internal.ui.actions.AbstractViewActionDelegate#getErrorDialogTitle()
- */
- protected String getErrorDialogTitle() {
- return ActionMessages.getString( "AddRegisterGroupActionDelegate.0" ); //$NON-NLS-1$
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.cdt.debug.internal.ui.actions.AbstractViewActionDelegate#getErrorDialogMessage()
- */
- protected String getErrorDialogMessage() {
- return ActionMessages.getString( "AddRegisterGroupActionDelegate.1" ); //$NON-NLS-1$
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.cdt.debug.internal.ui.actions.AbstractViewActionDelegate#doAction()
- */
- protected void doAction() throws DebugException {
- RegisterGroupDialog dialog = new RegisterGroupDialog( getView().getSite().getShell(), getDebugTarget().getRegisterDescriptors() );
- if ( dialog.open() == Window.OK ) {
- getDebugTarget().addRegisterGroup( dialog.getName(), dialog.getDescriptors() );
- }
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.cdt.debug.internal.ui.actions.AbstractViewActionDelegate#update()
- */
- protected void update() {
- IAction action = getAction();
- if ( action != null ) {
- ICDebugTarget target = getDebugTarget();
- action.setEnabled( ( target != null ) ? target.isSuspended() : false );
- }
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.cdt.debug.internal.ui.actions.AbstractViewActionDelegate#doHandleDebugEvent(org.eclipse.debug.core.DebugEvent)
- */
- protected void doHandleDebugEvent( DebugEvent event ) {
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.cdt.debug.internal.ui.actions.AbstractViewActionDelegate#init(org.eclipse.jface.action.IAction)
- */
- public void init( IAction action ) {
- super.init( action );
- Object element = DebugUITools.getDebugContext();
- setSelection( (element != null) ? new StructuredSelection( element ) : new StructuredSelection() );
- update();
- }
-
- private ICDebugTarget getDebugTarget() {
- Object element = getSelection().getFirstElement();
- if ( element instanceof IDebugElement ) {
- return (ICDebugTarget)((IDebugElement)element).getDebugTarget().getAdapter( ICDebugTarget.class );
- }
- return null;
- }
-}
diff --git a/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/actions/AddWatchpointActionDelegate.java b/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/actions/AddWatchpointActionDelegate.java
deleted file mode 100644
index 04b17511b42..00000000000
--- a/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/actions/AddWatchpointActionDelegate.java
+++ /dev/null
@@ -1,64 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.internal.ui.actions;
-
-import org.eclipse.cdt.debug.core.CDIDebugModel;
-import org.eclipse.cdt.debug.ui.CDebugUIPlugin;
-import org.eclipse.core.resources.IResource;
-import org.eclipse.core.resources.ResourcesPlugin;
-import org.eclipse.core.runtime.CoreException;
-import org.eclipse.jface.action.IAction;
-import org.eclipse.jface.window.Window;
-import org.eclipse.ui.IViewActionDelegate;
-import org.eclipse.ui.IViewPart;
-import org.eclipse.ui.actions.ActionDelegate;
-
-/**
- * A delegate for the "Add Watchpoint" action.
- */
-public class AddWatchpointActionDelegate extends ActionDelegate implements IViewActionDelegate {
-
- /* (non-Javadoc)
- * @see org.eclipse.ui.IViewActionDelegate#init(org.eclipse.ui.IViewPart)
- */
- public void init( IViewPart view ) {
- // TODO Auto-generated method stub
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.ui.IActionDelegate#run(org.eclipse.jface.action.IAction)
- */
- public void run( IAction action ) {
- AddWatchpointDialog dlg = new AddWatchpointDialog( CDebugUIPlugin.getActiveWorkbenchShell(), true, false, "", true ); //$NON-NLS-1$
- if ( dlg.open() == Window.OK ) {
- addWatchpoint( dlg.getWriteAccess(), dlg.getReadAccess(), dlg.getExpression() );
- }
- }
-
- private void addWatchpoint( boolean write, boolean read, String expression ) {
- if ( getResource() == null )
- return;
- try {
- CDIDebugModel.createWatchpoint( getSourceHandle(), getResource(), write, read, expression, true, 0, "", true ); //$NON-NLS-1$
- }
- catch( CoreException ce ) {
- CDebugUIPlugin.errorDialog( ActionMessages.getString( "AddWatchpointActionDelegate1.0" ), ce ); //$NON-NLS-1$
- }
- }
-
- private IResource getResource() {
- return ResourcesPlugin.getWorkspace().getRoot();
- }
-
- private String getSourceHandle() {
- return ""; //$NON-NLS-1$
- }
-}
diff --git a/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/actions/AddWatchpointDialog.java b/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/actions/AddWatchpointDialog.java
deleted file mode 100644
index 03d27fcd048..00000000000
--- a/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/actions/AddWatchpointDialog.java
+++ /dev/null
@@ -1,181 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004, 2005 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.internal.ui.actions;
-
-import org.eclipse.cdt.debug.internal.ui.CDebugImages;
-import org.eclipse.jface.dialogs.Dialog;
-import org.eclipse.jface.dialogs.IDialogConstants;
-import org.eclipse.swt.SWT;
-import org.eclipse.swt.events.ModifyEvent;
-import org.eclipse.swt.events.ModifyListener;
-import org.eclipse.swt.events.SelectionAdapter;
-import org.eclipse.swt.events.SelectionEvent;
-import org.eclipse.swt.layout.GridData;
-import org.eclipse.swt.layout.GridLayout;
-import org.eclipse.swt.widgets.Button;
-import org.eclipse.swt.widgets.Composite;
-import org.eclipse.swt.widgets.Control;
-import org.eclipse.swt.widgets.Group;
-import org.eclipse.swt.widgets.Label;
-import org.eclipse.swt.widgets.Shell;
-import org.eclipse.swt.widgets.Text;
-
-/**
- * The "Add Watchpoint" dialog of the "Toggle watchpoint" action.
- */
-public class AddWatchpointDialog extends Dialog {
-
- private Button fBtnOk = null;
-
- private Text fTextExpression;
-
- private Button fChkBtnWrite;
-
- private Button fChkBtnRead;
-
- private boolean fWrite = true;
-
- private boolean fRead = false;
-
- private String fExpression = ""; //$NON-NLS-1$
-
- private boolean fEditable = true;
-
- /**
- * Constructor for AddWatchpointDialog.
- *
- * @param parentShell
- */
- public AddWatchpointDialog( Shell parentShell, boolean write, boolean read, String expression, boolean editable ) {
- super( parentShell );
- fWrite = write;
- fRead = read;
- if ( expression != null )
- fExpression = expression;
- fEditable = editable;
- }
-
- protected void configureShell( Shell shell ) {
- super.configureShell( shell );
- shell.setText( ActionMessages.getString( "AddWatchpointDialog.0" ) ); //$NON-NLS-1$
- shell.setImage( CDebugImages.get( CDebugImages.IMG_OBJS_WATCHPOINT_ENABLED ) );
- }
-
- protected Control createContents( Composite parent ) {
- Control control = super.createContents( parent );
- setOkButtonState();
- return control;
- }
-
- protected Control createDialogArea( Composite parent ) {
- Composite composite = new Composite( parent, SWT.NONE );
- composite.setLayout( new GridLayout() );
- ((GridLayout)composite.getLayout()).marginWidth = 10;
- composite.setLayoutData( new GridData( GridData.FILL_BOTH ) );
- createDataWidgets( composite );
- initializeDataWidgets();
- return composite;
- }
-
- protected void createButtonsForButtonBar( Composite parent ) {
- fBtnOk = createButton( parent, IDialogConstants.OK_ID, IDialogConstants.OK_LABEL, true );
- createButton( parent, IDialogConstants.CANCEL_ID, IDialogConstants.CANCEL_LABEL, false );
- }
-
- private void createDataWidgets( Composite parent ) {
- fTextExpression = createExpressionText( parent );
- createAccessWidgets( parent );
- }
-
- private void initializeDataWidgets() {
- fTextExpression.setText( fExpression );
- fChkBtnRead.setSelection( fRead );
- fChkBtnWrite.setSelection( fWrite );
- setOkButtonState();
- }
-
- private Text createExpressionText( Composite parent ) {
- Label label = new Label( parent, SWT.RIGHT );
- label.setText( ActionMessages.getString( "AddWatchpointDialog.1" ) ); //$NON-NLS-1$
- final Text text = new Text( parent, SWT.BORDER );
- GridData gridData = new GridData( GridData.FILL_HORIZONTAL );
- gridData.widthHint = 300;
- text.setLayoutData( gridData );
- text.setEnabled( fEditable );
- addModifyListener( text );
- return text;
- }
-
- private void createAccessWidgets( Composite parent ) {
- Group group = new Group( parent, SWT.NONE );
- group.setLayout( new GridLayout() );
- group.setLayoutData( new GridData( GridData.FILL_HORIZONTAL ) );
- group.setText( ActionMessages.getString( "AddWatchpointDialog.2" ) ); //$NON-NLS-1$
- fChkBtnWrite = new Button( group, SWT.CHECK );
- fChkBtnWrite.setText( ActionMessages.getString( "AddWatchpointDialog.3" ) ); //$NON-NLS-1$
- addSelectionListener( fChkBtnWrite );
- fChkBtnRead = new Button( group, SWT.CHECK );
- fChkBtnRead.setText( ActionMessages.getString( "AddWatchpointDialog.4" ) ); //$NON-NLS-1$
- addSelectionListener( fChkBtnRead );
- }
-
- private void addSelectionListener( Button button ) {
- button.addSelectionListener( new SelectionAdapter() {
-
- public void widgetSelected( SelectionEvent e ) {
- setOkButtonState();
- }
- } );
- }
-
- protected void setOkButtonState() {
- if ( fBtnOk == null )
- return;
- fBtnOk.setEnabled( (fChkBtnRead.getSelection() || fChkBtnWrite.getSelection()) && fTextExpression.getText().trim().length() > 0 );
- }
-
- private void storeData() {
- fExpression = fTextExpression.getText().trim();
- fRead = fChkBtnRead.getSelection();
- fWrite = fChkBtnWrite.getSelection();
- }
-
- private void addModifyListener( Text text ) {
- text.addModifyListener( new ModifyListener() {
-
- public void modifyText( ModifyEvent e ) {
- setOkButtonState();
- }
- } );
- }
-
- public String getExpression() {
- return fExpression;
- }
-
- public boolean getWriteAccess() {
- return fWrite;
- }
-
- public boolean getReadAccess() {
- return fRead;
- }
-
- /*
- * (non-Javadoc)
- *
- * @see org.eclipse.jface.dialogs.Dialog#okPressed()
- */
- protected void okPressed() {
- storeData();
- super.okPressed();
- }
-}
diff --git a/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/actions/BinaryVariableFormatActionDelegate.java b/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/actions/BinaryVariableFormatActionDelegate.java
deleted file mode 100644
index 8a04f3df6c5..00000000000
--- a/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/actions/BinaryVariableFormatActionDelegate.java
+++ /dev/null
@@ -1,26 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2004 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * Mark Mitchell, CodeSourcery - Bug 136896: View variables in binary format
- *******************************************************************************/
-package org.eclipse.cdt.debug.internal.ui.actions;
-
-import org.eclipse.cdt.debug.core.model.CVariableFormat;
-
-/**
- * The delegate of the "Binary Format" action.
- */
-public class BinaryVariableFormatActionDelegate extends VariableFormatActionDelegate {
-
- /**
- * Constructor for BinaryVariableFormatActionDelegate.
- */
- public BinaryVariableFormatActionDelegate() {
- super( CVariableFormat.BINARY );
- }
-}
diff --git a/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/actions/BreakpointLocationVerifier.java b/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/actions/BreakpointLocationVerifier.java
deleted file mode 100644
index d51adf334fc..00000000000
--- a/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/actions/BreakpointLocationVerifier.java
+++ /dev/null
@@ -1,39 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.internal.ui.actions;
-
-import org.eclipse.jface.text.IDocument;
-
-/**
- *
- * Enter type comment.
- *
- * @since Aug 29, 2002
- */
-public class BreakpointLocationVerifier
-{
- /**
- * Returns the line number closest to the given line number that represents a
- * valid location for a breakpoint in the given document, or -1 if a valid location
- * cannot be found.
- */
- public int getValidLineBreakpointLocation( IDocument doc, int lineNumber )
- {
- // for now
- return lineNumber + 1;
- }
-
- public int getValidAddressBreakpointLocation( IDocument doc, int lineNumber )
- {
- // for now
- return lineNumber + 1;
- }
-}
diff --git a/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/actions/CBreakpointPropertiesAction.java b/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/actions/CBreakpointPropertiesAction.java
deleted file mode 100644
index 3d7ecde1d1a..00000000000
--- a/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/actions/CBreakpointPropertiesAction.java
+++ /dev/null
@@ -1,96 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2005 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.internal.ui.actions;
-
-import org.eclipse.cdt.debug.core.model.ICBreakpoint;
-import org.eclipse.jface.action.IAction;
-import org.eclipse.jface.viewers.ISelection;
-import org.eclipse.jface.viewers.ISelectionChangedListener;
-import org.eclipse.jface.viewers.ISelectionProvider;
-import org.eclipse.jface.viewers.IStructuredSelection;
-import org.eclipse.jface.viewers.StructuredSelection;
-import org.eclipse.ui.IObjectActionDelegate;
-import org.eclipse.ui.IWorkbenchPart;
-import org.eclipse.ui.dialogs.PropertyDialogAction;
-
-/**
- * Presents a custom properties dialog to configure the attibutes of a C/C++ breakpoint.
- */
-public class CBreakpointPropertiesAction implements IObjectActionDelegate {
-
- private IWorkbenchPart fPart;
-
- private ICBreakpoint fBreakpoint;
-
- /**
- * Constructor for CBreakpointPropertiesAction.
- */
- public CBreakpointPropertiesAction() {
- super();
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.ui.IObjectActionDelegate#setActivePart(org.eclipse.jface.action.IAction, org.eclipse.ui.IWorkbenchPart)
- */
- public void setActivePart( IAction action, IWorkbenchPart targetPart ) {
- fPart = targetPart;
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.ui.IActionDelegate#run(org.eclipse.jface.action.IAction)
- */
- public void run( IAction action ) {
- PropertyDialogAction propertyAction = new PropertyDialogAction( getActivePart().getSite(), new ISelectionProvider() {
-
- public void addSelectionChangedListener( ISelectionChangedListener listener ) {
- }
-
- public ISelection getSelection() {
- return new StructuredSelection( getBreakpoint() );
- }
-
- public void removeSelectionChangedListener( ISelectionChangedListener listener ) {
- }
-
- public void setSelection( ISelection selection ) {
- }
- } );
- propertyAction.run();
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.ui.IActionDelegate#selectionChanged(org.eclipse.jface.action.IAction, org.eclipse.jface.viewers.ISelection)
- */
- public void selectionChanged( IAction action, ISelection selection ) {
- if ( selection instanceof IStructuredSelection ) {
- IStructuredSelection ss = (IStructuredSelection)selection;
- if ( ss.isEmpty() || ss.size() > 1 ) {
- return;
- }
- Object element = ss.getFirstElement();
- if ( element instanceof ICBreakpoint ) {
- setBreakpoint( (ICBreakpoint)element );
- }
- }
- }
-
- protected IWorkbenchPart getActivePart() {
- return fPart;
- }
-
- protected ICBreakpoint getBreakpoint() {
- return fBreakpoint;
- }
-
- protected void setBreakpoint( ICBreakpoint breakpoint ) {
- fBreakpoint = breakpoint;
- }
-}
diff --git a/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/actions/CBreakpointPropertiesRulerAction.java b/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/actions/CBreakpointPropertiesRulerAction.java
deleted file mode 100644
index 44e53879c41..00000000000
--- a/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/actions/CBreakpointPropertiesRulerAction.java
+++ /dev/null
@@ -1,77 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004, 2005 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.internal.ui.actions;
-
-import org.eclipse.cdt.debug.core.model.ICBreakpoint;
-import org.eclipse.cdt.debug.internal.ui.ICDebugHelpContextIds;
-import org.eclipse.cdt.debug.internal.ui.IInternalCDebugUIConstants;
-import org.eclipse.jface.text.source.IVerticalRulerInfo;
-import org.eclipse.jface.viewers.ISelection;
-import org.eclipse.jface.viewers.ISelectionChangedListener;
-import org.eclipse.jface.viewers.ISelectionProvider;
-import org.eclipse.jface.viewers.StructuredSelection;
-import org.eclipse.ui.IWorkbenchPart;
-import org.eclipse.ui.dialogs.PropertyDialogAction;
-
-/**
- * Opens a custom properties dialog to configure the attibutes of a C/C++ breakpoint
- * from the ruler popup menu.
- */
-public class CBreakpointPropertiesRulerAction extends AbstractBreakpointRulerAction {
-
- /**
- * Creates the action to modify the breakpoint properties.
- */
- public CBreakpointPropertiesRulerAction( IWorkbenchPart part, IVerticalRulerInfo info ) {
- setInfo( info );
- setTargetPart( part );
- setText( ActionMessages.getString( "CBreakpointPropertiesRulerAction.Breakpoint_Properties" ) ); //$NON-NLS-1$
- part.getSite().getWorkbenchWindow().getWorkbench().getHelpSystem().setHelp( this, ICDebugHelpContextIds.BREAKPOINT_PROPERTIES_ACTION );
- setId( IInternalCDebugUIConstants.ACTION_BREAKPOINT_PROPERTIES );
- }
-
- /* (non-Javadoc)
- * @see Action#run()
- */
- public void run() {
- if ( getBreakpoint() != null ) {
- PropertyDialogAction action = new PropertyDialogAction( getTargetPart().getSite(), new ISelectionProvider() {
-
- public void addSelectionChangedListener( ISelectionChangedListener listener ) {
- }
-
- public ISelection getSelection() {
- return new StructuredSelection( getBreakpoint() );
- }
-
- public void removeSelectionChangedListener( ISelectionChangedListener listener ) {
- }
-
- public void setSelection( ISelection selection ) {
- }
- } );
- action.run();
- }
- }
-
- /* (non-Javadoc)
- * @see IUpdate#update()
- */
- public void update() {
- setBreakpoint( determineBreakpoint() );
- if ( getBreakpoint() == null || !(getBreakpoint() instanceof ICBreakpoint) ) {
- setBreakpoint( null );
- setEnabled( false );
- return;
- }
- setEnabled( true );
- }
-}
diff --git a/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/actions/CBreakpointPropertiesRulerActionDelegate.java b/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/actions/CBreakpointPropertiesRulerActionDelegate.java
deleted file mode 100644
index 3bedd465647..00000000000
--- a/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/actions/CBreakpointPropertiesRulerActionDelegate.java
+++ /dev/null
@@ -1,26 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.internal.ui.actions;
-
-import org.eclipse.jface.action.IAction;
-import org.eclipse.jface.text.source.IVerticalRulerInfo;
-import org.eclipse.ui.texteditor.AbstractRulerActionDelegate;
-import org.eclipse.ui.texteditor.ITextEditor;
-
-public class CBreakpointPropertiesRulerActionDelegate extends AbstractRulerActionDelegate {
-
- /* (non-Javadoc)
- * @see org.eclipse.ui.texteditor.AbstractRulerActionDelegate#createAction(org.eclipse.ui.texteditor.ITextEditor, org.eclipse.jface.text.source.IVerticalRulerInfo)
- */
- protected IAction createAction( ITextEditor editor, IVerticalRulerInfo rulerInfo ) {
- return new CBreakpointPropertiesRulerAction( editor, rulerInfo );
- }
-}
diff --git a/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/actions/CastToArrayActionDelegate.java b/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/actions/CastToArrayActionDelegate.java
deleted file mode 100644
index 1c84bcba07d..00000000000
--- a/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/actions/CastToArrayActionDelegate.java
+++ /dev/null
@@ -1,326 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.internal.ui.actions;
-
-import org.eclipse.cdt.debug.core.model.ICastToArray;
-import org.eclipse.cdt.debug.internal.ui.CDebugImages;
-import org.eclipse.cdt.debug.ui.CDebugUIPlugin;
-import org.eclipse.cdt.utils.ui.controls.ControlFactory;
-import org.eclipse.core.runtime.IStatus;
-import org.eclipse.debug.core.DebugException;
-import org.eclipse.debug.ui.IDebugView;
-import org.eclipse.jface.action.IAction;
-import org.eclipse.jface.dialogs.Dialog;
-import org.eclipse.jface.dialogs.IDialogConstants;
-import org.eclipse.jface.viewers.ISelection;
-import org.eclipse.jface.viewers.ISelectionProvider;
-import org.eclipse.jface.viewers.IStructuredSelection;
-import org.eclipse.jface.viewers.StructuredSelection;
-import org.eclipse.jface.window.Window;
-import org.eclipse.swt.SWT;
-import org.eclipse.swt.custom.BusyIndicator;
-import org.eclipse.swt.events.ModifyEvent;
-import org.eclipse.swt.events.ModifyListener;
-import org.eclipse.swt.layout.GridData;
-import org.eclipse.swt.layout.GridLayout;
-import org.eclipse.swt.widgets.Button;
-import org.eclipse.swt.widgets.Composite;
-import org.eclipse.swt.widgets.Control;
-import org.eclipse.swt.widgets.Display;
-import org.eclipse.swt.widgets.Label;
-import org.eclipse.swt.widgets.Shell;
-import org.eclipse.swt.widgets.Text;
-import org.eclipse.ui.IObjectActionDelegate;
-import org.eclipse.ui.IWorkbenchPart;
-import org.eclipse.ui.IWorkbenchWindow;
-import org.eclipse.ui.actions.ActionDelegate;
-
-/**
- * The delegate of the "Display As Array" action.
- */
-public class CastToArrayActionDelegate extends ActionDelegate implements IObjectActionDelegate {
-
- protected class CastToArrayDialog extends Dialog {
-
- private String fType = ""; //$NON-NLS-1$
-
- private int fFirstIndex = 0;
-
- private int fLength = 0;
-
- private Button fOkButton;
-
- private Label fErrorMessageLabel;
-
- private Text fFirstIndexText;
-
- private Text fLengthText;
-
- public CastToArrayDialog( Shell parentShell, String initialType, int initialStart, int initialLength ) {
- super( parentShell );
- fType = (initialType == null) ? "" : initialType; //$NON-NLS-1$
- fFirstIndex = initialStart;
- fLength = initialLength;
- }
-
- protected String getType() {
- return fType;
- }
-
- protected int getFirstIndex() {
- return fFirstIndex;
- }
-
- protected int getLength() {
- return fLength;
- }
-
- /*
- * (non-Javadoc)
- *
- * @see org.eclipse.jface.window.Window#configureShell(org.eclipse.swt.widgets.Shell)
- */
- protected void configureShell( Shell newShell ) {
- super.configureShell( newShell );
- newShell.setText( ActionMessages.getString( "CastToArrayActionDelegate.0" ) ); //$NON-NLS-1$
- newShell.setImage( CDebugImages.get( CDebugImages.IMG_LCL_DISPLAY_AS_ARRAY ) );
- }
-
- /*
- * (non-Javadoc)
- *
- * @see org.eclipse.jface.dialogs.Dialog#createButtonsForButtonBar(org.eclipse.swt.widgets.Composite)
- */
- protected void createButtonsForButtonBar( Composite parent ) {
- // create OK and Cancel buttons by default
- fOkButton = createButton( parent, IDialogConstants.OK_ID, IDialogConstants.OK_LABEL, true );
- createButton( parent, IDialogConstants.CANCEL_ID, IDialogConstants.CANCEL_LABEL, false );
- //do this here because setting the text will set enablement on the ok button
- /*
- * fTypeText.setFocus(); if ( fType != null ) { fTypeText.setText( fType ); fTypeText.selectAll(); fFirstIndexText.setText( String.valueOf(
- * fFirstIndex ) ); fLengthText.setText( String.valueOf( fLength ) ); }
- */
- fFirstIndexText.setText( String.valueOf( fFirstIndex ) );
- fLengthText.setText( String.valueOf( fLength ) );
- }
-
- protected Label getErrorMessageLabel() {
- return fErrorMessageLabel;
- }
-
- /*
- * (non-Javadoc)
- *
- * @see org.eclipse.jface.dialogs.Dialog#createDialogArea(org.eclipse.swt.widgets.Composite)
- */
- protected Control createDialogArea( Composite parent ) {
- Composite composite = (Composite)super.createDialogArea( parent );
- createDialogFields( composite );
- fErrorMessageLabel = new Label( composite, SWT.NONE );
- fErrorMessageLabel.setLayoutData( new GridData( GridData.GRAB_HORIZONTAL | GridData.HORIZONTAL_ALIGN_FILL ) );
- fErrorMessageLabel.setFont( parent.getFont() );
- return composite;
- }
-
- private void createDialogFields( Composite parent ) {
- Composite composite = ControlFactory.createComposite( parent, 4 );
- ((GridData)composite.getLayoutData()).widthHint = convertHorizontalDLUsToPixels( IDialogConstants.MINIMUM_MESSAGE_AREA_WIDTH );
- ((GridLayout)composite.getLayout()).makeColumnsEqualWidth = true;
- Label label = ControlFactory.createLabel( composite, ActionMessages.getString( "CastToArrayActionDelegate.1" ) ); //$NON-NLS-1$
- ((GridData)label.getLayoutData()).horizontalSpan = 3;
- fFirstIndexText = ControlFactory.createTextField( composite );
- fFirstIndexText.addModifyListener( new ModifyListener() {
-
- public void modifyText( ModifyEvent e ) {
- validateInput();
- }
- } );
- label = ControlFactory.createLabel( composite, ActionMessages.getString( "CastToArrayActionDelegate.2" ) ); //$NON-NLS-1$
- ((GridData)label.getLayoutData()).horizontalSpan = 3;
- fLengthText = ControlFactory.createTextField( composite );
- fLengthText.addModifyListener( new ModifyListener() {
-
- public void modifyText( ModifyEvent e ) {
- validateInput();
- }
- } );
- }
-
- protected void validateInput() {
- boolean enabled = true;
- String message = ""; //$NON-NLS-1$
- String firstIndex = fFirstIndexText.getText().trim();
- if ( firstIndex.length() == 0 ) {
- message = ActionMessages.getString( "CastToArrayActionDelegate.3" ); //$NON-NLS-1$
- enabled = false;
- }
- else {
- try {
- Integer.parseInt( firstIndex );
- }
- catch( NumberFormatException e ) {
- message = ActionMessages.getString( "CastToArrayActionDelegate.4" ); //$NON-NLS-1$
- enabled = false;
- }
- if ( enabled ) {
- String lengthText = fLengthText.getText().trim();
- if ( lengthText.length() == 0 ) {
- message = ActionMessages.getString( "CastToArrayActionDelegate.5" ); //$NON-NLS-1$
- enabled = false;
- }
- else {
- int length = -1;
- try {
- length = Integer.parseInt( lengthText );
- }
- catch( NumberFormatException e ) {
- message = ActionMessages.getString( "CastToArrayActionDelegate.6" ); //$NON-NLS-1$
- enabled = false;
- }
- if ( enabled && length < 1 ) {
- message = ActionMessages.getString( "CastToArrayActionDelegate.7" ); //$NON-NLS-1$
- enabled = false;
- }
- }
- }
- }
- fOkButton.setEnabled( enabled );
- getErrorMessageLabel().setText( message );
- }
-
- /*
- * (non-Javadoc)
- *
- * @see org.eclipse.jface.dialogs.Dialog#buttonPressed(int)
- */
- protected void buttonPressed( int buttonId ) {
- if ( buttonId == IDialogConstants.OK_ID ) {
- String firstIndex = fFirstIndexText.getText().trim();
- String lengthText = fLengthText.getText().trim();
- try {
- fFirstIndex = Integer.parseInt( firstIndex );
- fLength = Integer.parseInt( lengthText );
- }
- catch( NumberFormatException e ) {
- fFirstIndex = 0;
- fLength = 0;
- }
- }
- else {
- fType = null;
- }
- super.buttonPressed( buttonId );
- }
- }
-
- private ICastToArray fCastToArray = null;
-
- private IStatus fStatus = null;
-
- private IWorkbenchPart fTargetPart = null;
-
- public CastToArrayActionDelegate() {
- super();
- }
-
- /*
- * (non-Javadoc)
- *
- * @see org.eclipse.ui.IObjectActionDelegate#setActivePart(org.eclipse.jface.action.IAction, org.eclipse.ui.IWorkbenchPart)
- */
- public void setActivePart( IAction action, IWorkbenchPart targetPart ) {
- fTargetPart = targetPart;
- }
-
- /*
- * (non-Javadoc)
- *
- * @see org.eclipse.ui.IActionDelegate#run(org.eclipse.jface.action.IAction)
- */
- public void run( IAction action ) {
- if ( getCastToArray() == null )
- return;
- BusyIndicator.showWhile( Display.getCurrent(), new Runnable() {
-
- public void run() {
- try {
- doAction( getCastToArray() );
- setStatus( null );
- }
- catch( DebugException e ) {
- setStatus( e.getStatus() );
- }
- }
- } );
- if ( getStatus() != null && !getStatus().isOK() ) {
- IWorkbenchWindow window = CDebugUIPlugin.getActiveWorkbenchWindow();
- if ( window != null ) {
- CDebugUIPlugin.errorDialog( ActionMessages.getString( "CastToArrayActionDelegate.8" ), getStatus() ); //$NON-NLS-1$
- }
- else {
- CDebugUIPlugin.log( getStatus() );
- }
- }
- }
-
- /*
- * (non-Javadoc)
- *
- * @see org.eclipse.ui.IActionDelegate#selectionChanged(org.eclipse.jface.action.IAction, org.eclipse.jface.viewers.ISelection)
- */
- public void selectionChanged( IAction action, ISelection selection ) {
- if ( selection instanceof IStructuredSelection ) {
- Object element = ((IStructuredSelection)selection).getFirstElement();
- if ( element instanceof ICastToArray ) {
- boolean enabled = ((ICastToArray)element).canCastToArray();
- action.setEnabled( enabled );
- if ( enabled ) {
- setCastToArray( (ICastToArray)element );
- return;
- }
- }
- }
- action.setEnabled( false );
- setCastToArray( null );
- }
-
- protected ICastToArray getCastToArray() {
- return fCastToArray;
- }
-
- protected void setCastToArray( ICastToArray castToArray ) {
- fCastToArray = castToArray;
- }
-
- public IStatus getStatus() {
- return fStatus;
- }
-
- public void setStatus( IStatus status ) {
- fStatus = status;
- }
-
- protected void doAction( ICastToArray castToArray ) throws DebugException {
- String currentType = castToArray.getCurrentType().trim();
- CastToArrayDialog dialog = new CastToArrayDialog( CDebugUIPlugin.getActiveWorkbenchShell(), currentType, 0, 1 );
- if ( dialog.open() == Window.OK ) {
- int firstIndex = dialog.getFirstIndex();
- int lastIndex = dialog.getLength();
- castToArray.castToArray( firstIndex, lastIndex );
- if ( getSelectionProvider() != null )
- getSelectionProvider().setSelection( new StructuredSelection( castToArray ) );
- }
- }
-
- private ISelectionProvider getSelectionProvider() {
- return (fTargetPart instanceof IDebugView) ? ((IDebugView)fTargetPart).getViewer() : null;
- }
-}
diff --git a/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/actions/CastToTypeActionDelegate.java b/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/actions/CastToTypeActionDelegate.java
deleted file mode 100644
index 4dd86418456..00000000000
--- a/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/actions/CastToTypeActionDelegate.java
+++ /dev/null
@@ -1,174 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.internal.ui.actions;
-
-import org.eclipse.cdt.debug.core.model.ICastToType;
-import org.eclipse.cdt.debug.internal.ui.CDebugImages;
-import org.eclipse.cdt.debug.ui.CDebugUIPlugin;
-import org.eclipse.core.runtime.IStatus;
-import org.eclipse.debug.core.DebugException;
-import org.eclipse.debug.ui.IDebugView;
-import org.eclipse.jface.action.IAction;
-import org.eclipse.jface.dialogs.IInputValidator;
-import org.eclipse.jface.dialogs.InputDialog;
-import org.eclipse.jface.viewers.ISelection;
-import org.eclipse.jface.viewers.ISelectionProvider;
-import org.eclipse.jface.viewers.IStructuredSelection;
-import org.eclipse.jface.viewers.StructuredSelection;
-import org.eclipse.jface.window.Window;
-import org.eclipse.swt.custom.BusyIndicator;
-import org.eclipse.swt.widgets.Display;
-import org.eclipse.swt.widgets.Shell;
-import org.eclipse.ui.IObjectActionDelegate;
-import org.eclipse.ui.IWorkbenchPart;
-import org.eclipse.ui.IWorkbenchWindow;
-import org.eclipse.ui.actions.ActionDelegate;
-
-/**
- * The delegate of the "Cast To Type" action.
- */
-public class CastToTypeActionDelegate extends ActionDelegate implements IObjectActionDelegate {
-
- static protected class CastToTypeInputValidator implements IInputValidator {
-
- public CastToTypeInputValidator() {
- }
-
- public String isValid( String newText ) {
- if ( newText.trim().length() == 0 ) {
- return ActionMessages.getString( "CastToTypeActionDelegate.0" ); //$NON-NLS-1$
- }
- return null;
- }
- }
-
- protected class CastToTypeDialog extends InputDialog {
-
- public CastToTypeDialog( Shell parentShell, String initialValue ) {
- super( parentShell, ActionMessages.getString( "CastToTypeActionDelegate.1" ), //$NON-NLS-1$
- ActionMessages.getString( "CastToTypeActionDelegate.2" ), //$NON-NLS-1$
- initialValue,
- new CastToTypeInputValidator() );
- }
-
- /*
- * (non-Javadoc)
- *
- * @see org.eclipse.jface.window.Window#configureShell(org.eclipse.swt.widgets.Shell)
- */
- protected void configureShell( Shell shell ) {
- super.configureShell( shell );
- shell.setImage( CDebugImages.get( CDebugImages.IMG_LCL_CAST_TO_TYPE ) );
- }
- }
-
- private ICastToType fCastToType = null;
-
- private IStatus fStatus = null;
-
- private IWorkbenchPart fTargetPart = null;
-
- public CastToTypeActionDelegate() {
- super();
- }
-
- /*
- * (non-Javadoc)
- *
- * @see org.eclipse.ui.IObjectActionDelegate#setActivePart(org.eclipse.jface.action.IAction, org.eclipse.ui.IWorkbenchPart)
- */
- public void setActivePart( IAction action, IWorkbenchPart targetPart ) {
- fTargetPart = targetPart;
- }
-
- /*
- * (non-Javadoc)
- *
- * @see org.eclipse.ui.IActionDelegate#run(org.eclipse.jface.action.IAction)
- */
- public void run( IAction action ) {
- if ( getCastToType() == null )
- return;
- BusyIndicator.showWhile( Display.getCurrent(), new Runnable() {
-
- public void run() {
- try {
- doAction( getCastToType() );
- setStatus( null );
- }
- catch( DebugException e ) {
- setStatus( e.getStatus() );
- }
- }
- } );
- if ( getStatus() != null && !getStatus().isOK() ) {
- IWorkbenchWindow window = CDebugUIPlugin.getActiveWorkbenchWindow();
- if ( window != null ) {
- CDebugUIPlugin.errorDialog( ActionMessages.getString( "CastToTypeActionDelegate.3" ), getStatus() ); //$NON-NLS-1$
- }
- else {
- CDebugUIPlugin.log( getStatus() );
- }
- }
- }
-
- /*
- * (non-Javadoc)
- *
- * @see org.eclipse.ui.IActionDelegate#selectionChanged(org.eclipse.jface.action.IAction, org.eclipse.jface.viewers.ISelection)
- */
- public void selectionChanged( IAction action, ISelection selection ) {
- if ( selection instanceof IStructuredSelection ) {
- Object element = ((IStructuredSelection)selection).getFirstElement();
- if ( element instanceof ICastToType ) {
- boolean enabled = ((ICastToType)element).canCast();
- action.setEnabled( enabled );
- if ( enabled ) {
- setCastToType( (ICastToType)element );
- return;
- }
- }
- }
- action.setEnabled( false );
- setCastToType( null );
- }
-
- protected ICastToType getCastToType() {
- return fCastToType;
- }
-
- protected void setCastToType( ICastToType castToType ) {
- fCastToType = castToType;
- }
-
- public IStatus getStatus() {
- return fStatus;
- }
-
- public void setStatus( IStatus status ) {
- fStatus = status;
- }
-
- protected void doAction( ICastToType castToType ) throws DebugException {
- String currentType = castToType.getCurrentType().trim();
- CastToTypeDialog dialog = new CastToTypeDialog( CDebugUIPlugin.getActiveWorkbenchShell(), currentType );
- if ( dialog.open() == Window.OK ) {
- String newType = dialog.getValue().trim();
- castToType.cast( newType );
- if ( getSelectionProvider() != null )
- getSelectionProvider().setSelection( new StructuredSelection( castToType ) );
- }
- }
-
- private ISelectionProvider getSelectionProvider() {
- return (fTargetPart instanceof IDebugView) ? ((IDebugView)fTargetPart).getViewer() : null;
- }
-}
diff --git a/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/actions/CollapseAllModulesAction.java b/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/actions/CollapseAllModulesAction.java
deleted file mode 100644
index 2f2873a77a2..00000000000
--- a/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/actions/CollapseAllModulesAction.java
+++ /dev/null
@@ -1,52 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.internal.ui.actions;
-
-import org.eclipse.core.runtime.Assert;
-import org.eclipse.debug.ui.IDebugView;
-import org.eclipse.jface.action.IAction;
-import org.eclipse.jface.viewers.TreeViewer;
-import org.eclipse.jface.viewers.Viewer;
-import org.eclipse.ui.IViewActionDelegate;
-import org.eclipse.ui.IViewPart;
-import org.eclipse.ui.actions.ActionDelegate;
-
-/**
- * The delegate for the "Collapse All" action of the Modules view.
- */
-public class CollapseAllModulesAction extends ActionDelegate implements IViewActionDelegate {
-
- private IDebugView fView;
-
- /* (non-Javadoc)
- * @see org.eclipse.ui.IViewActionDelegate#init(org.eclipse.ui.IViewPart)
- */
- public void init( IViewPart view ) {
- Assert.isLegal( view instanceof IDebugView );
- fView = (IDebugView)view;
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.ui.IActionDelegate#run(org.eclipse.jface.action.IAction)
- */
- public void run( IAction action ) {
- Viewer viewer = getView().getViewer();
- if ( viewer instanceof TreeViewer ) {
- viewer.getControl().setRedraw( false );
- ((TreeViewer)viewer).collapseAll();
- viewer.getControl().setRedraw( true );
- }
- }
-
- private IDebugView getView() {
- return fView;
- }
-}
diff --git a/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/actions/DecVariableFormatActionDelegate.java b/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/actions/DecVariableFormatActionDelegate.java
deleted file mode 100644
index 613549cc459..00000000000
--- a/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/actions/DecVariableFormatActionDelegate.java
+++ /dev/null
@@ -1,26 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.internal.ui.actions;
-
-import org.eclipse.cdt.debug.core.model.CVariableFormat;
-
-/**
- * The delegate of the "Decimal Format" action.
- */
-public class DecVariableFormatActionDelegate extends VariableFormatActionDelegate {
-
- /**
- * Constructor for DecVariableFormatActionDelegate.
- */
- public DecVariableFormatActionDelegate() {
- super( CVariableFormat.DECIMAL );
- }
-}
diff --git a/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/actions/DisableVariablesActionDelegate.java b/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/actions/DisableVariablesActionDelegate.java
deleted file mode 100644
index 8cf09bec14f..00000000000
--- a/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/actions/DisableVariablesActionDelegate.java
+++ /dev/null
@@ -1,28 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.cdt.debug.internal.ui.actions;
-
-/**
- * Enter type comment.
- *
- * @since Jun 19, 2003
- */
-public class DisableVariablesActionDelegate extends EnableVariablesActionDelegate
-{
- /* (non-Javadoc)
- * @see org.eclipse.cdt.debug.internal.ui.actions.EnableVariablesActionDelegate#isEnableAction()
- */
- protected boolean isEnableAction()
- {
- return false;
- }
-}
diff --git a/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/actions/EditRegisterGroupActionDelegate.java b/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/actions/EditRegisterGroupActionDelegate.java
deleted file mode 100644
index b10252fcdb6..00000000000
--- a/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/actions/EditRegisterGroupActionDelegate.java
+++ /dev/null
@@ -1,79 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004, 2005 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.internal.ui.actions;
-
-import org.eclipse.cdt.debug.core.model.ICDebugTarget;
-import org.eclipse.cdt.debug.core.model.IPersistableRegisterGroup;
-import org.eclipse.cdt.debug.core.model.IRegisterDescriptor;
-import org.eclipse.cdt.debug.internal.core.model.CDebugTarget;
-import org.eclipse.cdt.debug.ui.CDebugUIPlugin;
-import org.eclipse.debug.core.DebugException;
-import org.eclipse.debug.core.model.IDebugTarget;
-import org.eclipse.jface.action.IAction;
-import org.eclipse.jface.viewers.ISelection;
-import org.eclipse.jface.viewers.IStructuredSelection;
-import org.eclipse.jface.window.Window;
-import org.eclipse.swt.widgets.Display;
-import org.eclipse.ui.IObjectActionDelegate;
-import org.eclipse.ui.IWorkbenchPart;
-import org.eclipse.ui.actions.ActionDelegate;
-
-
-public class EditRegisterGroupActionDelegate extends ActionDelegate implements IObjectActionDelegate {
-
- private IPersistableRegisterGroup fSelection;
-
- /* (non-Javadoc)
- * @see org.eclipse.ui.IObjectActionDelegate#setActivePart(org.eclipse.jface.action.IAction, org.eclipse.ui.IWorkbenchPart)
- */
- public void setActivePart( IAction action, IWorkbenchPart targetPart ) {
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.ui.actions.ActionDelegate#selectionChanged(org.eclipse.jface.action.IAction, org.eclipse.jface.viewers.ISelection)
- */
- public void selectionChanged( IAction action, ISelection selection ) {
- if ( selection instanceof IStructuredSelection ) {
- IStructuredSelection ss = (IStructuredSelection)selection;
- if ( !ss.isEmpty() ) {
- Object s = ss.getFirstElement();
- if ( s instanceof IPersistableRegisterGroup ) {
- fSelection = (IPersistableRegisterGroup)s;
- }
- }
- }
- }
-
- private IPersistableRegisterGroup getRegisterGroup() {
- return fSelection;
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.ui.actions.ActionDelegate#run(org.eclipse.jface.action.IAction)
- */
- public void run( IAction action ) {
- IPersistableRegisterGroup group = getRegisterGroup();
- IRegisterDescriptor[] all;
- try {
- all = ((CDebugTarget)group.getDebugTarget()).getRegisterDescriptors();
- RegisterGroupDialog dialog = new RegisterGroupDialog( Display.getCurrent().getActiveShell(), group.getName(), all, group.getRegisterDescriptors() );
- if ( dialog.open() == Window.OK ) {
- IDebugTarget target = group.getDebugTarget();
- if ( target instanceof ICDebugTarget ) {
- ((ICDebugTarget)target).modifyRegisterGroup( group, dialog.getDescriptors() );
- }
- }
- }
- catch( DebugException e ) {
- CDebugUIPlugin.errorDialog( ActionMessages.getString( "EditRegisterGroupActionDelegate.0" ), e.getStatus() ); //$NON-NLS-1$
- }
- }
-}
diff --git a/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/actions/EnableDisableBreakpointRulerAction.java b/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/actions/EnableDisableBreakpointRulerAction.java
deleted file mode 100644
index 1ec744dd740..00000000000
--- a/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/actions/EnableDisableBreakpointRulerAction.java
+++ /dev/null
@@ -1,68 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004, 2005 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.internal.ui.actions;
-
-import org.eclipse.cdt.debug.internal.ui.ICDebugHelpContextIds;
-import org.eclipse.cdt.debug.internal.ui.IInternalCDebugUIConstants;
-import org.eclipse.core.runtime.CoreException;
-import org.eclipse.debug.core.DebugPlugin;
-import org.eclipse.jface.dialogs.ErrorDialog;
-import org.eclipse.jface.text.source.IVerticalRulerInfo;
-import org.eclipse.ui.IWorkbenchPart;
-
-public class EnableDisableBreakpointRulerAction extends AbstractBreakpointRulerAction {
-
- /**
- * Creates the action to enable/disable breakpoints
- */
- public EnableDisableBreakpointRulerAction( IWorkbenchPart part, IVerticalRulerInfo info ) {
- setInfo( info );
- setTargetPart( part );
- setText( ActionMessages.getString( "EnableDisableBreakpointRulerAction.Enable_Breakpoint_1" ) ); //$NON-NLS-1$
- part.getSite().getWorkbenchWindow().getWorkbench().getHelpSystem().setHelp( this, ICDebugHelpContextIds.ENABLE_DISABLE_BREAKPOINT_ACTION );
- setId( IInternalCDebugUIConstants.ACTION_ENABLE_DISABLE_BREAKPOINT );
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.jface.action.IAction#run()
- */
- public void run() {
- if ( getBreakpoint() != null ) {
- try {
- getBreakpoint().setEnabled( !getBreakpoint().isEnabled() );
- }
- catch( CoreException e ) {
- ErrorDialog.openError( getTargetPart().getSite().getShell(), ActionMessages.getString( "EnableDisableBreakpointRulerAction.Enabling_disabling_breakpoints_1" ), //$NON-NLS-1$
- ActionMessages.getString( "EnableDisableBreakpointRulerAction.Exceptions_occurred_enabling_or_disabling_breakpoint_1" ), //$NON-NLS-1$
- e.getStatus() );
- }
- }
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.ui.texteditor.IUpdate#update()
- */
- public void update() {
- setBreakpoint( determineBreakpoint() );
- if ( getBreakpoint() == null ) {
- setEnabled( false );
- return;
- }
- setEnabled( true );
- try {
- boolean enabled = getBreakpoint().isEnabled();
- setText( enabled ? ActionMessages.getString( "EnableDisableBreakpointRulerAction.Disable_Breakpoint_1" ) : ActionMessages.getString( "EnableDisableBreakpointRulerAction.Enable_Breakpoint_1" ) ); //$NON-NLS-1$ //$NON-NLS-2$
- }
- catch( CoreException e ) {
- DebugPlugin.log( e );
- }
- }
-}
diff --git a/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/actions/EnableDisableBreakpointRulerActionDelegate.java b/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/actions/EnableDisableBreakpointRulerActionDelegate.java
deleted file mode 100644
index 7ded3f47aac..00000000000
--- a/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/actions/EnableDisableBreakpointRulerActionDelegate.java
+++ /dev/null
@@ -1,26 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.internal.ui.actions;
-
-import org.eclipse.jface.action.IAction;
-import org.eclipse.jface.text.source.IVerticalRulerInfo;
-import org.eclipse.ui.texteditor.AbstractRulerActionDelegate;
-import org.eclipse.ui.texteditor.ITextEditor;
-
-public class EnableDisableBreakpointRulerActionDelegate extends AbstractRulerActionDelegate {
-
- /*
- * @see AbstractRulerActionDelegate#createAction(ITextEditor, IVerticalRulerInfo)
- */
- protected IAction createAction( ITextEditor editor, IVerticalRulerInfo rulerInfo ) {
- return new EnableDisableBreakpointRulerAction( editor, rulerInfo );
- }
-}
diff --git a/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/actions/EnableVariablesActionDelegate.java b/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/actions/EnableVariablesActionDelegate.java
deleted file mode 100644
index 1e3f167035c..00000000000
--- a/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/actions/EnableVariablesActionDelegate.java
+++ /dev/null
@@ -1,155 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004, 2005 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.internal.ui.actions;
-
-import java.util.Iterator;
-import org.eclipse.cdt.debug.core.model.IEnableDisableTarget;
-import org.eclipse.cdt.debug.ui.CDebugUIPlugin;
-import org.eclipse.core.runtime.IAdaptable;
-import org.eclipse.core.runtime.MultiStatus;
-import org.eclipse.debug.core.DebugException;
-import org.eclipse.jface.action.IAction;
-import org.eclipse.jface.viewers.ISelection;
-import org.eclipse.jface.viewers.IStructuredSelection;
-import org.eclipse.swt.custom.BusyIndicator;
-import org.eclipse.swt.widgets.Display;
-import org.eclipse.ui.IViewActionDelegate;
-import org.eclipse.ui.IViewPart;
-
-/**
- * The delegate of the "Enable" action contribution to the "IVariable" objects.
- */
-public class EnableVariablesActionDelegate implements IViewActionDelegate {
-
- private IViewPart fView;
-
- private IAction fAction;
-
- public EnableVariablesActionDelegate() {
- }
-
- protected IViewPart getView() {
- return fView;
- }
-
- protected void setView( IViewPart view ) {
- fView = view;
- }
-
- protected IAction getAction() {
- return fAction;
- }
-
- protected void setAction( IAction action ) {
- fAction = action;
- }
-
- /**
- * This action enables variables.
- */
- protected boolean isEnableAction() {
- return true;
- }
-
- /*
- * (non-Javadoc)
- *
- * @see org.eclipse.ui.IViewActionDelegate#init(org.eclipse.ui.IViewPart)
- */
- public void init( IViewPart view ) {
- setView( view );
- }
-
- /*
- * (non-Javadoc)
- *
- * @see org.eclipse.ui.IActionDelegate#run(org.eclipse.jface.action.IAction)
- */
- public void run( IAction action ) {
- IStructuredSelection selection = getSelection();
- final int size = selection.size();
- if ( size == 0 )
- return;
- final Iterator it = selection.iterator();
- final MultiStatus ms = new MultiStatus( CDebugUIPlugin.getUniqueIdentifier(), DebugException.REQUEST_FAILED, ActionMessages.getString( "EnableVariablesActionDelegate.0" ), null ); //$NON-NLS-1$
- BusyIndicator.showWhile( Display.getCurrent(), new Runnable() {
-
- public void run() {
- while( it.hasNext() ) {
- IEnableDisableTarget target = getEnableDisableTarget( it.next() );
- if ( target != null ) {
- try {
- if ( size > 1 ) {
- target.setEnabled( isEnableAction() );
- }
- else
- target.setEnabled( !target.isEnabled() );
- }
- catch( DebugException e ) {
- ms.merge( e.getStatus() );
- }
- }
- }
- update();
- }
- } );
- if ( !ms.isOK() ) {
- CDebugUIPlugin.errorDialog( ActionMessages.getString( "EnableVariablesActionDelegate.1" ), ms ); //$NON-NLS-1$
- }
- }
-
- /*
- * (non-Javadoc)
- *
- * @see org.eclipse.ui.IActionDelegate#selectionChanged(org.eclipse.jface.action.IAction, org.eclipse.jface.viewers.ISelection)
- */
- public void selectionChanged( IAction action, ISelection selection ) {
- setAction( action );
- if ( !(selection instanceof IStructuredSelection) )
- return;
- IStructuredSelection sel = (IStructuredSelection)selection;
- Object o = sel.getFirstElement();
- if ( getEnableDisableTarget( o ) == null )
- return;
- Iterator it = sel.iterator();
- boolean allEnabled = true;
- boolean allDisabled = true;
- while( it.hasNext() ) {
- IEnableDisableTarget target = getEnableDisableTarget( it.next() );
- if ( target != null && !target.canEnableDisable() )
- continue;
- if ( target.isEnabled() )
- allDisabled = false;
- else
- allEnabled = false;
- }
- if ( isEnableAction() )
- action.setEnabled( !allEnabled );
- else
- action.setEnabled( !allDisabled );
- }
-
- private IStructuredSelection getSelection() {
- return (IStructuredSelection)getView().getViewSite().getSelectionProvider().getSelection();
- }
-
- protected void update() {
- getView().getViewSite().getSelectionProvider().setSelection( getView().getViewSite().getSelectionProvider().getSelection() );
- }
-
- protected IEnableDisableTarget getEnableDisableTarget( Object obj ) {
- IEnableDisableTarget target = null;
- if ( obj instanceof IAdaptable ) {
- target = (IEnableDisableTarget)((IAdaptable)obj).getAdapter( IEnableDisableTarget.class );
- }
- return target;
- }
-}
diff --git a/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/actions/ExpressionDialog.java b/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/actions/ExpressionDialog.java
deleted file mode 100644
index 30aa2352a85..00000000000
--- a/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/actions/ExpressionDialog.java
+++ /dev/null
@@ -1,132 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004, 2005 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.internal.ui.actions;
-
-import org.eclipse.debug.ui.DebugUITools;
-import org.eclipse.debug.ui.IDebugUIConstants;
-import org.eclipse.jface.dialogs.Dialog;
-import org.eclipse.jface.dialogs.IDialogConstants;
-import org.eclipse.swt.SWT;
-import org.eclipse.swt.events.ModifyEvent;
-import org.eclipse.swt.events.ModifyListener;
-import org.eclipse.swt.layout.GridData;
-import org.eclipse.swt.layout.GridLayout;
-import org.eclipse.swt.widgets.Button;
-import org.eclipse.swt.widgets.Composite;
-import org.eclipse.swt.widgets.Control;
-import org.eclipse.swt.widgets.Label;
-import org.eclipse.swt.widgets.Shell;
-import org.eclipse.swt.widgets.Text;
-
-/**
- * The "Add Expression" dialog.
- */
-public class ExpressionDialog extends Dialog {
-
- private Button fBtnOk = null;
-
- private Text fTextExpression;
-
- private String fExpression = ""; //$NON-NLS-1$
-
- /**
- * Constructor for ExpressionDialog.
- *
- * @param parentShell
- */
- public ExpressionDialog( Shell parentShell, String expression ) {
- super( parentShell );
- if ( expression != null )
- fExpression = expression;
- }
-
- protected void configureShell( Shell shell ) {
- super.configureShell( shell );
- shell.setText( ActionMessages.getString( "ExpressionDialog.0" ) ); //$NON-NLS-1$
- shell.setImage( DebugUITools.getImage( IDebugUIConstants.IMG_OBJS_EXPRESSION ) );
- }
-
- protected Control createContents( Composite parent ) {
- Control control = super.createContents( parent );
- setOkButtonState();
- return control;
- }
-
- protected Control createDialogArea( Composite parent ) {
- Composite composite = new Composite( parent, SWT.NONE );
- composite.setLayout( new GridLayout() );
- ((GridLayout)composite.getLayout()).marginWidth = 10;
- composite.setLayoutData( new GridData( GridData.FILL_BOTH ) );
- createDataWidgets( composite );
- initializeDataWidgets();
- return composite;
- }
-
- protected void createButtonsForButtonBar( Composite parent ) {
- fBtnOk = createButton( parent, IDialogConstants.OK_ID, IDialogConstants.OK_LABEL, true );
- createButton( parent, IDialogConstants.CANCEL_ID, IDialogConstants.CANCEL_LABEL, false );
- }
-
- private void createDataWidgets( Composite parent ) {
- fTextExpression = createExpressionText( parent );
- }
-
- private void initializeDataWidgets() {
- fTextExpression.setText( fExpression );
- fTextExpression.setSelection( fExpression.length() );
- fTextExpression.selectAll();
- setOkButtonState();
- }
-
- private Text createExpressionText( Composite parent ) {
- Label label = new Label( parent, SWT.RIGHT );
- label.setText( ActionMessages.getString( "ExpressionDialog.1" ) ); //$NON-NLS-1$
- final Text text = new Text( parent, SWT.BORDER );
- GridData gridData = new GridData( GridData.FILL_HORIZONTAL );
- gridData.widthHint = 300;
- text.setLayoutData( gridData );
- addModifyListener( text );
- return text;
- }
-
- protected void setOkButtonState() {
- if ( fBtnOk == null )
- return;
- fBtnOk.setEnabled( fTextExpression.getText().trim().length() > 0 );
- }
-
- private void storeData() {
- fExpression = fTextExpression.getText().trim();
- }
-
- private void addModifyListener( Text text ) {
- text.addModifyListener( new ModifyListener() {
-
- public void modifyText( ModifyEvent e ) {
- setOkButtonState();
- }
- } );
- }
-
- public String getExpression() {
- return fExpression;
- }
-
- /*
- * (non-Javadoc)
- *
- * @see org.eclipse.jface.dialogs.Dialog#okPressed()
- */
- protected void okPressed() {
- storeData();
- super.okPressed();
- }
-}
diff --git a/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/actions/HexVariableFormatActionDelegate.java b/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/actions/HexVariableFormatActionDelegate.java
deleted file mode 100644
index 3268250b380..00000000000
--- a/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/actions/HexVariableFormatActionDelegate.java
+++ /dev/null
@@ -1,26 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.internal.ui.actions;
-
-import org.eclipse.cdt.debug.core.model.CVariableFormat;
-
-/**
- * The delegate of the "Hexadecimal Format" action.
- */
-public class HexVariableFormatActionDelegate extends VariableFormatActionDelegate {
-
- /**
- * Constructor for HexVariableFormatActionDelegate.
- */
- public HexVariableFormatActionDelegate() {
- super( CVariableFormat.HEXADECIMAL );
- }
-}
diff --git a/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/actions/IResumeAtLineTarget.java b/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/actions/IResumeAtLineTarget.java
deleted file mode 100644
index 2a82e089657..00000000000
--- a/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/actions/IResumeAtLineTarget.java
+++ /dev/null
@@ -1,43 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004, 2005 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.internal.ui.actions;
-
-import org.eclipse.core.runtime.CoreException;
-import org.eclipse.debug.core.model.ISuspendResume;
-import org.eclipse.jface.viewers.ISelection;
-import org.eclipse.ui.IWorkbenchPart;
-
-/**
- * An adapter for a "resume at line" operation.
- */
-public interface IResumeAtLineTarget {
- /**
- * Perform a resume at line operation on the given element that is
- * currently selected and suspended in the Debug view.
- *
- * @param part the part on which the action has been invoked
- * @param selection the selection on which the action has been invoked
- * @param target suspended element to perform the "resume at line" action on
- * @throws CoreException if unable to perform the action
- */
- public void resumeAtLine( IWorkbenchPart part, ISelection selection, ISuspendResume target ) throws CoreException;
-
- /**
- * Returns whether a resume at line operation can be performed on the given
- * element that is currently selected and suspended in the Debug view.
- *
- * @param part the part on which the action has been invoked
- * @param selection the selection on which the action has been invoked
- * @param target suspended element to perform the "resume at line" action on
- * @throws CoreException if unable to perform the action
- */
- public boolean canResumeAtLine( IWorkbenchPart part, ISelection selection, ISuspendResume target );
-}
diff --git a/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/actions/LoadModuleSymbolsActionDelegate.java b/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/actions/LoadModuleSymbolsActionDelegate.java
deleted file mode 100644
index 5ce4ee18a6b..00000000000
--- a/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/actions/LoadModuleSymbolsActionDelegate.java
+++ /dev/null
@@ -1,105 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004, 2005 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.internal.ui.actions;
-
-import org.eclipse.cdt.debug.core.CDIDebugModel;
-import org.eclipse.cdt.debug.core.CDebugUtils;
-import org.eclipse.cdt.debug.core.model.ICModule;
-import org.eclipse.cdt.debug.internal.core.ICDebugInternalConstants;
-import org.eclipse.core.runtime.IStatus;
-import org.eclipse.core.runtime.MultiStatus;
-import org.eclipse.core.runtime.Status;
-import org.eclipse.debug.core.DebugException;
-import org.eclipse.debug.core.DebugPlugin;
-import org.eclipse.jface.action.IAction;
-import org.eclipse.jface.viewers.ISelection;
-import org.eclipse.jface.viewers.IStructuredSelection;
-import org.eclipse.ui.IObjectActionDelegate;
-import org.eclipse.ui.IWorkbenchPart;
-import org.eclipse.ui.actions.ActionDelegate;
-
-/**
- * The delegate of the "Load Symbols" action contribution to the "ICModule" objects.
- */
-public class LoadModuleSymbolsActionDelegate extends ActionDelegate implements IObjectActionDelegate {
-
- private ICModule fModule;
-
- /* (non-Javadoc)
- * @see org.eclipse.ui.IObjectActionDelegate#setActivePart(org.eclipse.jface.action.IAction, org.eclipse.ui.IWorkbenchPart)
- */
- public void setActivePart( IAction action, IWorkbenchPart targetPart ) {
- }
-
- protected ICModule getModule() {
- return fModule;
- }
-
- private void setModule( ICModule module ) {
- fModule = module;
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.ui.IActionDelegate#run(org.eclipse.jface.action.IAction)
- */
- public void run( IAction action ) {
- final ICModule module = getModule();
- if ( module != null ) {
-
- DebugPlugin.getDefault().asyncExec(
- new Runnable() {
- public void run() {
- try {
- doAction( module );
- }
- catch( DebugException e ) {
- failed( e );
- }
- }
- } );
- }
- }
-
- protected void doAction( ICModule module ) throws DebugException {
- module.loadSymbols();
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.ui.IActionDelegate#selectionChanged(org.eclipse.jface.action.IAction, org.eclipse.jface.viewers.ISelection)
- */
- public void selectionChanged( IAction action, ISelection selection ) {
- if ( selection instanceof IStructuredSelection ) {
- if ( ((IStructuredSelection)selection).size() == 1 ) {
- Object element = ((IStructuredSelection)selection).getFirstElement();
- if ( element instanceof ICModule ) {
- boolean enabled = enablesFor( (ICModule)element );
- action.setEnabled( enabled );
- if ( enabled ) {
- setModule( (ICModule)element );
- return;
- }
- }
- }
- }
- action.setEnabled( false );
- setModule( null );
- }
-
- private boolean enablesFor( ICModule module ) {
- return ( module != null && module.canLoadSymbols() );
- }
-
- protected void failed( Throwable e ) {
- MultiStatus ms = new MultiStatus( CDIDebugModel.getPluginIdentifier(), ICDebugInternalConstants.STATUS_CODE_ERROR, ActionMessages.getString( "LoadModuleSymbolsActionDelegate.0" ), null ); //$NON-NLS-1$
- ms.add( new Status( IStatus.ERROR, CDIDebugModel.getPluginIdentifier(), ICDebugInternalConstants.STATUS_CODE_ERROR, e.getMessage(), null ) );
- CDebugUtils.error( ms, getModule() );
- }
-}
diff --git a/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/actions/LoadSymbolsForAllActionDelegate.java b/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/actions/LoadSymbolsForAllActionDelegate.java
deleted file mode 100644
index 3b14809fcde..00000000000
--- a/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/actions/LoadSymbolsForAllActionDelegate.java
+++ /dev/null
@@ -1,99 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004, 2005 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.internal.ui.actions;
-
-import org.eclipse.cdt.debug.core.CDIDebugModel;
-import org.eclipse.cdt.debug.core.CDebugUtils;
-import org.eclipse.cdt.debug.core.model.ICDebugTarget;
-import org.eclipse.cdt.debug.core.model.IModuleRetrieval;
-import org.eclipse.cdt.debug.internal.core.ICDebugInternalConstants;
-import org.eclipse.core.runtime.IAdaptable;
-import org.eclipse.core.runtime.IStatus;
-import org.eclipse.core.runtime.MultiStatus;
-import org.eclipse.core.runtime.Status;
-import org.eclipse.debug.core.DebugEvent;
-import org.eclipse.debug.core.DebugException;
-import org.eclipse.debug.core.DebugPlugin;
-import org.eclipse.jface.action.IAction;
-
-/**
- * The delegate for the "Load Symbols For All" action of the Modules view.
- */
-public class LoadSymbolsForAllActionDelegate extends AbstractViewActionDelegate {
-
- /* (non-Javadoc)
- * @see org.eclipse.cdt.debug.internal.ui.actions.AbstractViewActionDelegate#getErrorDialogTitle()
- */
- protected String getErrorDialogTitle() {
- return ActionMessages.getString( "LoadSymbolsForAllActionDelegate.Error_1" ); //$NON-NLS-1$
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.cdt.debug.internal.ui.actions.AbstractViewActionDelegate#getErrorDialogMessage()
- */
- protected String getErrorDialogMessage() {
- return ActionMessages.getString( "LoadSymbolsForAllActionDelegate.Error(s)_occurred_loading_the_symbols_1" ); //$NON-NLS-1$
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.cdt.debug.internal.ui.actions.AbstractViewActionDelegate#doAction()
- */
- protected void doAction() throws DebugException {
- ICDebugTarget target = getDebugTarget( getView().getViewer().getInput() );
- if ( target != null ) {
- final IModuleRetrieval mr = (IModuleRetrieval)target.getAdapter( IModuleRetrieval.class );
- if ( mr != null ) {
- DebugPlugin.getDefault().asyncExec(
- new Runnable() {
-
- public void run() {
- try {
- mr.loadSymbolsForAllModules();
- }
- catch( DebugException e ) {
- failed( e );
- }
- }
- } );
- }
- }
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.cdt.debug.internal.ui.actions.AbstractViewActionDelegate#update()
- */
- protected void update() {
- IAction action = getAction();
- if ( getView() != null && action != null ) {
- ICDebugTarget target = getDebugTarget( getView().getViewer().getInput() );
- action.setEnabled( ( target != null ) ? target.isSuspended() : false );
- }
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.cdt.debug.internal.ui.actions.AbstractViewActionDelegate#doHandleDebugEvent(org.eclipse.debug.core.DebugEvent)
- */
- protected void doHandleDebugEvent( DebugEvent event ) {
- }
-
- private ICDebugTarget getDebugTarget( Object element ) {
- if ( element instanceof IAdaptable ) {
- return (ICDebugTarget)((IAdaptable)element).getAdapter( ICDebugTarget.class );
- }
- return null;
- }
-
- protected void failed( Throwable e ) {
- MultiStatus ms = new MultiStatus( CDIDebugModel.getPluginIdentifier(), ICDebugInternalConstants.STATUS_CODE_ERROR, ActionMessages.getString( "LoadSymbolsForAllActionDelegate.0" ), null ); //$NON-NLS-1$
- ms.add( new Status( IStatus.ERROR, CDIDebugModel.getPluginIdentifier(), ICDebugInternalConstants.STATUS_CODE_ERROR, e.getMessage(), e ) );
- CDebugUtils.error( ms, this );
- }
-}
diff --git a/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/actions/ManageBreakpointRulerActionDelegate.java b/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/actions/ManageBreakpointRulerActionDelegate.java
deleted file mode 100644
index ed8c400afa7..00000000000
--- a/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/actions/ManageBreakpointRulerActionDelegate.java
+++ /dev/null
@@ -1,45 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.internal.ui.actions;
-
-import org.eclipse.jface.action.IAction;
-import org.eclipse.jface.text.source.IVerticalRulerInfo;
-import org.eclipse.ui.IEditorPart;
-import org.eclipse.ui.texteditor.AbstractRulerActionDelegate;
-import org.eclipse.ui.texteditor.ITextEditor;
-
-public class ManageBreakpointRulerActionDelegate extends AbstractRulerActionDelegate {
-
- private ToggleBreakpointRulerAction fTargetAction;
- private IEditorPart fActiveEditor;
-
- /* (non-Javadoc)
- * @see org.eclipse.ui.texteditor.AbstractRulerActionDelegate#createAction(ITextEditor, IVerticalRulerInfo)
- */
- public IAction createAction( ITextEditor editor, IVerticalRulerInfo rulerInfo ) {
- fTargetAction = new ToggleBreakpointRulerAction( editor, rulerInfo );
- return fTargetAction;
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.ui.IEditorActionDelegate#setActiveEditor(org.eclipse.jface.action.IAction, org.eclipse.ui.IEditorPart)
- */
- public void setActiveEditor( IAction callerAction, IEditorPart targetEditor ) {
- if ( fActiveEditor != null ) {
- if ( fTargetAction != null ) {
- fTargetAction.dispose();
- fTargetAction = null;
- }
- }
- fActiveEditor = targetEditor;
- super.setActiveEditor( callerAction, targetEditor );
- }
-}
diff --git a/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/actions/ManageFunctionBreakpointActionDelegate.java b/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/actions/ManageFunctionBreakpointActionDelegate.java
deleted file mode 100644
index ac917f3ba4d..00000000000
--- a/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/actions/ManageFunctionBreakpointActionDelegate.java
+++ /dev/null
@@ -1,81 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004, 2005 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.internal.ui.actions;
-
-import org.eclipse.core.runtime.CoreException;
-import org.eclipse.jface.action.IAction;
-import org.eclipse.jface.dialogs.ErrorDialog;
-import org.eclipse.jface.viewers.ISelection;
-import org.eclipse.ui.IObjectActionDelegate;
-import org.eclipse.ui.IWorkbenchPart;
-import org.eclipse.ui.actions.ActionDelegate;
-
-/**
- * The delegate of the "Toggle Function Breakpoint" action.
- */
-public class ManageFunctionBreakpointActionDelegate extends ActionDelegate implements IObjectActionDelegate {
-
- private ToggleBreakpointAdapter fBreakpointAdapter;
-
- private IWorkbenchPart fTargetPart;
-
- private ISelection fSelection;
-
- public ManageFunctionBreakpointActionDelegate() {
- fBreakpointAdapter = new ToggleBreakpointAdapter();
- }
-
- /*(non-Javadoc)
- * @see org.eclipse.ui.IObjectActionDelegate#setActivePart(org.eclipse.jface.action.IAction, org.eclipse.ui.IWorkbenchPart)
- */
- public void setActivePart( IAction action, IWorkbenchPart targetPart ) {
- fTargetPart = targetPart;
- }
-
- /*(non-Javadoc)
- * @see org.eclipse.ui.IActionDelegate#run(org.eclipse.jface.action.IAction)
- */
- public void run( IAction action ) {
- try {
- getBreakpointAdapter().toggleMethodBreakpoints( getTargetPart(), getSelection() );
- }
- catch( CoreException e ) {
- ErrorDialog.openError( getTargetPart().getSite().getShell(),
- ActionMessages.getString( "ManageFunctionBreakpointActionDelegate.Error_1" ), //$NON-NLS-1$
- ActionMessages.getString( "ManageFunctionBreakpointActionDelegate.Operation_failed_1" ), //$NON-NLS-1$
- e.getStatus() );
- }
- }
-
- /*(non-Javadoc)
- * @see org.eclipse.ui.IActionDelegate#selectionChanged(org.eclipse.jface.action.IAction, org.eclipse.jface.viewers.ISelection)
- */
- public void selectionChanged( IAction action, ISelection selection ) {
- setSelection( selection );
- action.setEnabled( getBreakpointAdapter().canToggleMethodBreakpoints( getTargetPart(), getSelection() ) );
- }
-
- private IWorkbenchPart getTargetPart() {
- return fTargetPart;
- }
-
- private ISelection getSelection() {
- return fSelection;
- }
-
- private ToggleBreakpointAdapter getBreakpointAdapter() {
- return fBreakpointAdapter;
- }
-
- private void setSelection( ISelection selection ) {
- fSelection = selection;
- }
-}
diff --git a/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/actions/ModulesPropertiesActionDelegate.java b/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/actions/ModulesPropertiesActionDelegate.java
deleted file mode 100644
index daec7a180df..00000000000
--- a/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/actions/ModulesPropertiesActionDelegate.java
+++ /dev/null
@@ -1,97 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004, 2005 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.internal.ui.actions;
-
-import org.eclipse.cdt.debug.core.model.ICModule;
-import org.eclipse.jface.action.IAction;
-import org.eclipse.jface.viewers.ISelection;
-import org.eclipse.jface.viewers.ISelectionChangedListener;
-import org.eclipse.jface.viewers.ISelectionProvider;
-import org.eclipse.jface.viewers.IStructuredSelection;
-import org.eclipse.jface.viewers.StructuredSelection;
-import org.eclipse.ui.IObjectActionDelegate;
-import org.eclipse.ui.IWorkbenchPart;
-import org.eclipse.ui.actions.ActionDelegate;
-import org.eclipse.ui.dialogs.PropertyDialogAction;
-
-/**
- * Module Properties action delegate.
- */
-public class ModulesPropertiesActionDelegate extends ActionDelegate implements IObjectActionDelegate {
-
- private ICModule fModule;
-
- private IWorkbenchPart fTargetPart;
-
- /**
- * Constructor for ModulesPropertiesActionDelegate.
- */
- public ModulesPropertiesActionDelegate() {
- super();
- }
-
- protected ICModule getModule() {
- return fModule;
- }
-
- private void setModule( ICModule module ) {
- fModule = module;
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.ui.IObjectActionDelegate#setActivePart(org.eclipse.jface.action.IAction, org.eclipse.ui.IWorkbenchPart)
- */
- public void setActivePart( IAction action, IWorkbenchPart targetPart ) {
- fTargetPart = targetPart;
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.ui.IActionDelegate#run(org.eclipse.jface.action.IAction)
- */
- public void run( IAction action ) {
- PropertyDialogAction propertyAction = new PropertyDialogAction( getActivePart().getSite(), new ISelectionProvider() {
-
- public void addSelectionChangedListener( ISelectionChangedListener listener ) {
- }
-
- public ISelection getSelection() {
- return new StructuredSelection( getModule() );
- }
-
- public void removeSelectionChangedListener( ISelectionChangedListener listener ) {
- }
-
- public void setSelection( ISelection selection ) {
- }
- } );
- propertyAction.run();
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.ui.IActionDelegate#selectionChanged(org.eclipse.jface.action.IAction, org.eclipse.jface.viewers.ISelection)
- */
- public void selectionChanged( IAction action, ISelection selection ) {
- if ( selection instanceof IStructuredSelection ) {
- Object element = ((IStructuredSelection)selection).getFirstElement();
- if ( element instanceof ICModule ) {
- action.setEnabled( true );
- setModule( (ICModule)element );
- return;
- }
- }
- action.setEnabled( false );
- setModule( null );
- }
-
- protected IWorkbenchPart getActivePart() {
- return fTargetPart;
- }
-}
diff --git a/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/actions/NaturalVariableFormatActionDelegate.java b/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/actions/NaturalVariableFormatActionDelegate.java
deleted file mode 100644
index f7ec7f1548f..00000000000
--- a/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/actions/NaturalVariableFormatActionDelegate.java
+++ /dev/null
@@ -1,26 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.internal.ui.actions;
-
-import org.eclipse.cdt.debug.core.model.CVariableFormat;
-
-/**
- * The delegate of the "Natural Format" action.
- */
-public class NaturalVariableFormatActionDelegate extends VariableFormatActionDelegate {
-
- /**
- * Constructor for NaturalVariableFormatActionDelegate.
- */
- public NaturalVariableFormatActionDelegate() {
- super( CVariableFormat.NATURAL );
- }
-}
diff --git a/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/actions/RegisterGroupDialog.java b/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/actions/RegisterGroupDialog.java
deleted file mode 100644
index 5bdc09c83bb..00000000000
--- a/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/actions/RegisterGroupDialog.java
+++ /dev/null
@@ -1,159 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004, 2005 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.internal.ui.actions;
-
-import java.text.MessageFormat;
-import java.util.Arrays;
-import java.util.List;
-import org.eclipse.cdt.debug.core.model.IRegisterDescriptor;
-import org.eclipse.cdt.debug.internal.ui.CDebugImages;
-import org.eclipse.cdt.debug.internal.ui.ICDebugHelpContextIds;
-import org.eclipse.cdt.debug.internal.ui.PixelConverter;
-import org.eclipse.cdt.debug.internal.ui.dialogfields.CheckedListDialogField;
-import org.eclipse.cdt.debug.internal.ui.dialogfields.DialogField;
-import org.eclipse.cdt.debug.internal.ui.dialogfields.IDialogFieldListener;
-import org.eclipse.cdt.debug.internal.ui.dialogfields.IListAdapter;
-import org.eclipse.cdt.debug.internal.ui.dialogfields.LayoutUtil;
-import org.eclipse.cdt.debug.internal.ui.dialogfields.Separator;
-import org.eclipse.cdt.debug.internal.ui.dialogfields.StringDialogField;
-import org.eclipse.jface.dialogs.Dialog;
-import org.eclipse.jface.dialogs.IDialogConstants;
-import org.eclipse.jface.dialogs.TitleAreaDialog;
-import org.eclipse.jface.viewers.LabelProvider;
-import org.eclipse.swt.SWT;
-import org.eclipse.swt.graphics.Image;
-import org.eclipse.swt.layout.GridData;
-import org.eclipse.swt.layout.GridLayout;
-import org.eclipse.swt.widgets.Composite;
-import org.eclipse.swt.widgets.Control;
-import org.eclipse.swt.widgets.Shell;
-import org.eclipse.ui.PlatformUI;
-
-/**
- * This dialog is used to add/edit user-defined register groups.
- */
-public class RegisterGroupDialog extends TitleAreaDialog {
-
- public class RegisterLabelProvider extends LabelProvider {
-
- public Image getImage( Object element ) {
- if ( element instanceof IRegisterDescriptor ) {
- return CDebugImages.get( CDebugImages.IMG_OBJS_REGISTER );
- }
- return super.getImage( element );
- }
-
- public String getText( Object element ) {
- if ( element instanceof IRegisterDescriptor ) {
- IRegisterDescriptor rd = (IRegisterDescriptor)element;
- return MessageFormat.format( "{0} - {1}", new String[] { rd.getName(), rd.getGroupName() } ); //$NON-NLS-1$
- }
- return super.getText( element );
- }
- }
-
- private StringDialogField fNameField;
- private CheckedListDialogField fListField;
- private String fName;
- private IRegisterDescriptor[] fDescriptors;
-
- public RegisterGroupDialog( Shell parentShell, IRegisterDescriptor[] allRegisters ) {
- this( parentShell, ActionMessages.getString( "RegisterGroupDialog.0" ), allRegisters, new IRegisterDescriptor[0] ); //$NON-NLS-1$
- }
-
- public RegisterGroupDialog( Shell parentShell, String groupName, IRegisterDescriptor[] allRegisters, IRegisterDescriptor[] groupRegisters ) {
- super( parentShell );
- fName = groupName;
- fDescriptors = groupRegisters;
- String[] buttonLabels = new String[] { ActionMessages.getString( "RegisterGroupDialog.1" ), ActionMessages.getString( "RegisterGroupDialog.2" ) }; //$NON-NLS-1$ //$NON-NLS-2$
- fNameField = new StringDialogField();
- fNameField.setLabelText( ActionMessages.getString( "RegisterGroupDialog.3" ) ); //$NON-NLS-1$
- fNameField.setTextWithoutUpdate( groupName );
- fNameField.setDialogFieldListener( new IDialogFieldListener() {
- public void dialogFieldChanged( DialogField field ) {
- update();
- }
- } );
- fListField = new CheckedListDialogField( new IListAdapter() {
-
- public void customButtonPressed( DialogField field, int index ) {
- // TODO Auto-generated method stub
-
- }
-
- public void selectionChanged( DialogField field ) {
- // TODO Auto-generated method stub
-
- }
- }, buttonLabels, new RegisterLabelProvider() );
- fListField.setLabelText( ActionMessages.getString( "RegisterGroupDialog.4" ) ); //$NON-NLS-1$
- fListField.setCheckAllButtonIndex( 0 );
- fListField.setUncheckAllButtonIndex( 1 );
- fListField.setElements( Arrays.asList( allRegisters ) );
- fListField.setCheckedElements( Arrays.asList( groupRegisters ) );
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.jface.dialogs.TitleAreaDialog#createDialogArea(org.eclipse.swt.widgets.Composite)
- */
- protected Control createDialogArea( Composite parent ) {
- getShell().setText( ActionMessages.getString( "RegisterGroupDialog.5" ) ); //$NON-NLS-1$
- setTitle( ActionMessages.getString( "RegisterGroupDialog.6" ) ); //$NON-NLS-1$
- // setTitleImage( CDebugImages.get( CDebugImages.IMG_WIZBAN_REGISTER_GROUP ) );
- PlatformUI.getWorkbench().getHelpSystem().setHelp( getShell(), ICDebugHelpContextIds.REGISTER_GROUP );
- Composite composite = new Composite( parent, SWT.NONE );
- GridLayout layout = new GridLayout();
- layout.numColumns = Math.max( fNameField.getNumberOfControls(), fListField.getNumberOfControls() );
- layout.marginHeight = convertVerticalDLUsToPixels( IDialogConstants.VERTICAL_MARGIN );
- layout.marginWidth = convertHorizontalDLUsToPixels( IDialogConstants.HORIZONTAL_MARGIN );
- composite.setLayout( layout );
- composite.setLayoutData( new GridData( GridData.FILL_BOTH ) );
- Dialog.applyDialogFont( composite );
- PixelConverter converter = new PixelConverter( composite );
- new Separator().doFillIntoGrid( composite, layout.numColumns, converter.convertHeightInCharsToPixels( 1 ) );
- fNameField.doFillIntoGrid( composite, layout.numColumns );
- fNameField.getTextControl( null ).selectAll();
- new Separator().doFillIntoGrid( composite, layout.numColumns, converter.convertHeightInCharsToPixels( 1 ) );
- fListField.doFillIntoGrid( composite, layout.numColumns + 1 );
- LayoutUtil.setHorizontalSpan( fListField.getLabelControl( null ), layout.numColumns );
- LayoutUtil.setHeigthHint( fListField.getListControl( null ), convertWidthInCharsToPixels( 30 ) );
- LayoutUtil.setHorizontalGrabbing( fListField.getListControl( null ) );
- setMessage( null );
- return composite;
- }
-
- protected void update() {
- setErrorMessage( null );
- String name = fNameField.getText().trim();
- if ( name.length() == 0 ) {
- setErrorMessage( ActionMessages.getString( "RegisterGroupDialog.7" ) ); //$NON-NLS-1$
- }
- getButton( IDialogConstants.OK_ID ).setEnabled( name.length() > 0 );
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.jface.dialogs.Dialog#okPressed()
- */
- protected void okPressed() {
- super.okPressed();
- fName = fNameField.getText().trim();
- List elements = fListField.getCheckedElements();
- fDescriptors = (IRegisterDescriptor[])elements.toArray( new IRegisterDescriptor[elements.size()] );
- }
-
- public String getName() {
- return fName;
- }
-
- public IRegisterDescriptor[] getDescriptors() {
- return fDescriptors;
- }
-}
diff --git a/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/actions/RemoveAllGlobalsActionDelegate.java b/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/actions/RemoveAllGlobalsActionDelegate.java
deleted file mode 100644
index 233c1146393..00000000000
--- a/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/actions/RemoveAllGlobalsActionDelegate.java
+++ /dev/null
@@ -1,51 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.internal.ui.actions;
-
-import org.eclipse.cdt.debug.core.ICGlobalVariableManager;
-import org.eclipse.core.runtime.IAdaptable;
-import org.eclipse.debug.core.DebugPlugin;
-import org.eclipse.debug.core.model.IDebugElement;
-import org.eclipse.debug.ui.DebugUITools;
-import org.eclipse.jface.action.IAction;
-import org.eclipse.ui.IViewActionDelegate;
-import org.eclipse.ui.IViewPart;
-import org.eclipse.ui.actions.ActionDelegate;
-
-/**
- * A delegate for the "Remove All Globals" action.
- */
-public class RemoveAllGlobalsActionDelegate extends ActionDelegate implements IViewActionDelegate {
-
- /* (non-Javadoc)
- * @see org.eclipse.ui.IViewActionDelegate#init(org.eclipse.ui.IViewPart)
- */
- public void init( IViewPart view ) {
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.ui.IActionDelegate#run(org.eclipse.jface.action.IAction)
- */
- public void run( IAction action ) {
- IAdaptable context = DebugUITools.getDebugContext();
- if ( context instanceof IDebugElement ) {
- final ICGlobalVariableManager gvm = (ICGlobalVariableManager)((IDebugElement)context).getDebugTarget().getAdapter( ICGlobalVariableManager.class );
- if ( gvm != null ) {
- DebugPlugin.getDefault().asyncExec(
- new Runnable() {
- public void run() {
- gvm.removeAllGlobals();
- }
- } );
- }
- }
- }
-}
diff --git a/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/actions/RemoveGlobalsActionDelegate.java b/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/actions/RemoveGlobalsActionDelegate.java
deleted file mode 100644
index dbfd833b772..00000000000
--- a/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/actions/RemoveGlobalsActionDelegate.java
+++ /dev/null
@@ -1,120 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004, 2005 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.internal.ui.actions;
-
-import java.util.ArrayList;
-import java.util.Iterator;
-import org.eclipse.cdt.debug.core.ICGlobalVariableManager;
-import org.eclipse.cdt.debug.core.model.ICGlobalVariable;
-import org.eclipse.debug.core.DebugPlugin;
-import org.eclipse.jface.action.IAction;
-import org.eclipse.jface.viewers.ISelection;
-import org.eclipse.jface.viewers.IStructuredSelection;
-import org.eclipse.ui.IViewActionDelegate;
-import org.eclipse.ui.IViewPart;
-import org.eclipse.ui.actions.ActionDelegate;
-
-/**
- * A delegate for the "Remove Globals" action.
- */
-public class RemoveGlobalsActionDelegate extends ActionDelegate implements IViewActionDelegate {
-
- private IAction fAction;
-
- private ISelection fSelection;
-
- /* (non-Javadoc)
- * @see org.eclipse.ui.IViewActionDelegate#init(org.eclipse.ui.IViewPart)
- */
- public void init( IViewPart view ) {
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.ui.IActionDelegate2#init(org.eclipse.jface.action.IAction)
- */
- public void init( IAction action ) {
- setAction( action );
- update();
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.ui.IActionDelegate#run(org.eclipse.jface.action.IAction)
- */
- public void run( IAction action ) {
- ISelection selection = getSelection();
- if ( !(selection instanceof IStructuredSelection) )
- return;
- IStructuredSelection ss = (IStructuredSelection)selection;
- final Iterator it = ss.iterator();
- ArrayList list = new ArrayList( ss.size() );
- while( it.hasNext() ) {
- Object obj = it.next();
- if ( obj instanceof ICGlobalVariable )
- list.add( obj );
- }
- if ( list.size() == 0 )
- return;
- final ICGlobalVariable[] globals = (ICGlobalVariable[])list.toArray( new ICGlobalVariable[list.size()] );
- final ICGlobalVariableManager gvm = (ICGlobalVariableManager)globals[0].getDebugTarget().getAdapter( ICGlobalVariableManager.class );
- if ( gvm == null )
- return;
- Runnable r = new Runnable() {
- public void run() {
- gvm.removeGlobals( globals );
- }
- };
- DebugPlugin.getDefault().asyncExec( r );
- }
-
- /*
- * (non-Javadoc)
- *
- * @see org.eclipse.ui.IActionDelegate#selectionChanged(org.eclipse.jface.action.IAction, org.eclipse.jface.viewers.ISelection)
- */
- public void selectionChanged( IAction action, ISelection selection ) {
- setSelection( selection );
- update();
- }
-
- protected IAction getAction() {
- return fAction;
- }
-
- protected ISelection getSelection() {
- return fSelection;
- }
-
- private void setAction( IAction action ) {
- fAction = action;
- }
-
- private void setSelection( ISelection selection ) {
- fSelection = selection;
- }
-
- private void update() {
- IAction action = getAction();
- if ( action != null ) {
- ISelection selection = getSelection();
- boolean enabled = false;
- if ( selection instanceof IStructuredSelection ) {
- Iterator it = ((IStructuredSelection)selection).iterator();
- while( it.hasNext() ) {
- if ( it.next() instanceof ICGlobalVariable ) {
- enabled = true;
- break;
- }
- }
- }
- action.setEnabled( enabled );
- }
- }
-}
diff --git a/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/actions/RemoveRegisterGroupActionDelegate.java b/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/actions/RemoveRegisterGroupActionDelegate.java
deleted file mode 100644
index 62c45d1f803..00000000000
--- a/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/actions/RemoveRegisterGroupActionDelegate.java
+++ /dev/null
@@ -1,84 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004, 2005 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.internal.ui.actions;
-
-import java.util.ArrayList;
-import java.util.Iterator;
-import org.eclipse.cdt.debug.core.model.ICDebugTarget;
-import org.eclipse.debug.core.model.IDebugTarget;
-import org.eclipse.debug.core.model.IRegisterGroup;
-import org.eclipse.jface.action.IAction;
-import org.eclipse.jface.viewers.ISelection;
-import org.eclipse.jface.viewers.IStructuredSelection;
-import org.eclipse.ui.IObjectActionDelegate;
-import org.eclipse.ui.IWorkbenchPart;
-import org.eclipse.ui.actions.ActionDelegate;
-
-/**
- * The "Remove Register Group" action.
- */
-public class RemoveRegisterGroupActionDelegate extends ActionDelegate implements IObjectActionDelegate {
-
- private IRegisterGroup[] fRegisterGroups;
-
- /**
- * Constructor for RemoveRegisterGroupActionDelegate.
- */
- public RemoveRegisterGroupActionDelegate() {
- super();
- setRegisterGroups( new IRegisterGroup[0] );
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.ui.IObjectActionDelegate#setActivePart(org.eclipse.jface.action.IAction, org.eclipse.ui.IWorkbenchPart)
- */
- public void setActivePart( IAction action, IWorkbenchPart targetPart ) {
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.ui.actions.ActionDelegate#selectionChanged(org.eclipse.jface.action.IAction, org.eclipse.jface.viewers.ISelection)
- */
- public void selectionChanged( IAction action, ISelection selection ) {
- ArrayList list = new ArrayList();
- if ( selection instanceof IStructuredSelection ) {
- IStructuredSelection ss = (IStructuredSelection)selection;
- Iterator it = ss.iterator();
- while( it.hasNext() ) {
- Object o = it.next();
- if ( o instanceof IRegisterGroup ) {
- list.add( o );
- }
- }
- }
- setRegisterGroups( (IRegisterGroup[])list.toArray( new IRegisterGroup[list.size()] ) );
- }
-
- protected IRegisterGroup[] getRegisterGroups() {
- return fRegisterGroups;
- }
-
- protected void setRegisterGroups( IRegisterGroup[] registerGroups ) {
- fRegisterGroups = registerGroups;
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.ui.actions.ActionDelegate#run(org.eclipse.jface.action.IAction)
- */
- public void run( IAction action ) {
- IRegisterGroup[] groups = getRegisterGroups();
- if ( groups.length > 0 ) {
- IDebugTarget target = groups[0].getDebugTarget();
- if ( target instanceof ICDebugTarget ) {
- ((ICDebugTarget)target).removeRegisterGroups( groups );
- }
- }
- }
-}
diff --git a/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/actions/RestartActionDelegate.java b/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/actions/RestartActionDelegate.java
deleted file mode 100644
index 54576b726e0..00000000000
--- a/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/actions/RestartActionDelegate.java
+++ /dev/null
@@ -1,91 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.internal.ui.actions;
-
-import org.eclipse.cdt.debug.core.model.IRestart;
-import org.eclipse.core.runtime.IAdaptable;
-import org.eclipse.debug.core.DebugException;
-import org.eclipse.debug.core.model.IDebugElement;
-import org.eclipse.debug.core.model.IDebugTarget;
-
-/**
- * The delegate of the "Restart" action.
- */
-public class RestartActionDelegate extends AbstractListenerActionDelegate {
-
- /* (non-Javadoc)
- * @see org.eclipse.cdt.debug.internal.ui.actions.AbstractDebugActionDelegate#doAction(java.lang.Object)
- */
- protected void doAction( Object element ) throws DebugException {
- IRestart restartTarget = getRestartTarget( element );
- if ( restartTarget != null ) {
- restartTarget.restart();
- }
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.cdt.debug.internal.ui.actions.AbstractDebugActionDelegate#isEnabledFor(java.lang.Object)
- */
- protected boolean isEnabledFor( Object element ) {
- IRestart restartTarget = getRestartTarget( element );
- if ( restartTarget != null ) {
- return checkCapability( restartTarget );
- }
- return false;
- }
-
- protected boolean checkCapability( IRestart element ) {
- return element.canRestart();
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.cdt.debug.internal.ui.actions.AbstractDebugActionDelegate#getStatusMessage()
- */
- protected String getStatusMessage() {
- return ActionMessages.getString( "RestartActionDelegate.0" ); //$NON-NLS-1$
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.cdt.debug.internal.ui.actions.AbstractDebugActionDelegate#getErrorDialogMessage()
- */
- protected String getErrorDialogMessage() {
- return ActionMessages.getString( "RestartActionDelegate.1" ); //$NON-NLS-1$
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.cdt.debug.internal.ui.actions.AbstractDebugActionDelegate#getErrorDialogTitle()
- */
- protected String getErrorDialogTitle() {
- return ActionMessages.getString( "RestartActionDelegate.2" ); //$NON-NLS-1$
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.cdt.debug.internal.ui.actions.AbstractDebugActionDelegate#isRunInBackground()
- */
- protected boolean isRunInBackground() {
- return true;
- }
-
- protected IRestart getRestartTarget( Object element ) {
- if ( element instanceof IAdaptable )
- return (IRestart)((IAdaptable)element).getAdapter( IRestart.class );
- return getDefaultRestartTarget( element );
- }
-
- private IRestart getDefaultRestartTarget( Object element ) {
- if ( element instanceof IDebugElement ) {
- IDebugTarget target = ((IDebugElement)element).getDebugTarget();
- if ( target instanceof IRestart )
- return (IRestart)target;
- }
- return null;
- }
-}
diff --git a/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/actions/RestoreDefaultRegisterGroupsActionDelegate.java b/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/actions/RestoreDefaultRegisterGroupsActionDelegate.java
deleted file mode 100644
index 2248b64db8f..00000000000
--- a/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/actions/RestoreDefaultRegisterGroupsActionDelegate.java
+++ /dev/null
@@ -1,64 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004, 2005 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.internal.ui.actions;
-
-import org.eclipse.cdt.debug.core.model.ICDebugTarget;
-import org.eclipse.debug.core.DebugEvent;
-import org.eclipse.debug.core.DebugException;
-import org.eclipse.debug.core.model.IDebugElement;
-import org.eclipse.debug.ui.DebugUITools;
-import org.eclipse.jface.action.IAction;
-import org.eclipse.jface.viewers.StructuredSelection;
-
-
-public class RestoreDefaultRegisterGroupsActionDelegate extends AbstractViewActionDelegate {
-
- protected String getErrorDialogTitle() {
- return ActionMessages.getString( "RestoreDefaultRegisterGroupsActionDelegate.0" ); //$NON-NLS-1$
- }
-
- protected String getErrorDialogMessage() {
- return ActionMessages.getString( "RestoreDefaultRegisterGroupsActionDelegate.1" ); //$NON-NLS-1$
- }
-
- protected void doAction() throws DebugException {
- getDebugTarget().restoreDefaultRegisterGroups();
- }
-
- protected void update() {
- IAction action = getAction();
- if ( action != null ) {
- ICDebugTarget target = getDebugTarget();
- action.setEnabled( ( target != null ) ? target.isSuspended() : false );
- }
- }
-
- protected void doHandleDebugEvent( DebugEvent event ) {
- }
-
- private ICDebugTarget getDebugTarget() {
- Object element = getSelection().getFirstElement();
- if ( element instanceof IDebugElement ) {
- return (ICDebugTarget)((IDebugElement)element).getDebugTarget().getAdapter( ICDebugTarget.class );
- }
- return null;
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.cdt.debug.internal.ui.actions.AbstractViewActionDelegate#init(org.eclipse.jface.action.IAction)
- */
- public void init( IAction action ) {
- super.init( action );
- Object element = DebugUITools.getDebugContext();
- setSelection( (element != null) ? new StructuredSelection( element ) : new StructuredSelection() );
- update();
- }
-}
diff --git a/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/actions/RestoreDefaultTypeActionDelegate.java b/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/actions/RestoreDefaultTypeActionDelegate.java
deleted file mode 100644
index 71b4ed9dd3c..00000000000
--- a/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/actions/RestoreDefaultTypeActionDelegate.java
+++ /dev/null
@@ -1,115 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.internal.ui.actions;
-
-import org.eclipse.cdt.debug.core.model.ICastToType;
-import org.eclipse.cdt.debug.ui.CDebugUIPlugin;
-import org.eclipse.core.runtime.IStatus;
-import org.eclipse.debug.core.DebugException;
-import org.eclipse.jface.action.IAction;
-import org.eclipse.jface.viewers.ISelection;
-import org.eclipse.jface.viewers.IStructuredSelection;
-import org.eclipse.swt.custom.BusyIndicator;
-import org.eclipse.swt.widgets.Display;
-import org.eclipse.ui.IObjectActionDelegate;
-import org.eclipse.ui.IWorkbenchPart;
-import org.eclipse.ui.IWorkbenchWindow;
-import org.eclipse.ui.actions.ActionDelegate;
-
-/**
- * The delegate of the "Restore Default Type" action.
- */
-public class RestoreDefaultTypeActionDelegate extends ActionDelegate implements IObjectActionDelegate {
-
- private ICastToType fCastToType = null;
-
- private IStatus fStatus = null;
-
- /*
- * (non-Javadoc)
- *
- * @see org.eclipse.ui.IObjectActionDelegate#setActivePart(org.eclipse.jface.action.IAction, org.eclipse.ui.IWorkbenchPart)
- */
- public void setActivePart( IAction action, IWorkbenchPart targetPart ) {
- }
-
- protected ICastToType getCastToType() {
- return fCastToType;
- }
-
- protected void setCastToType( ICastToType castToType ) {
- fCastToType = castToType;
- }
-
- /*
- * (non-Javadoc)
- *
- * @see org.eclipse.ui.IActionDelegate#run(org.eclipse.jface.action.IAction)
- */
- public void run( IAction action ) {
- if ( getCastToType() == null )
- return;
- BusyIndicator.showWhile( Display.getCurrent(), new Runnable() {
-
- public void run() {
- try {
- doAction( getCastToType() );
- setStatus( null );
- }
- catch( DebugException e ) {
- setStatus( e.getStatus() );
- }
- }
- } );
- if ( getStatus() != null && !getStatus().isOK() ) {
- IWorkbenchWindow window = CDebugUIPlugin.getActiveWorkbenchWindow();
- if ( window != null ) {
- CDebugUIPlugin.errorDialog( ActionMessages.getString( "RestoreDefaultTypeActionDelegate.0" ), getStatus() ); //$NON-NLS-1$
- }
- else {
- CDebugUIPlugin.log( getStatus() );
- }
- }
- }
-
- /*
- * (non-Javadoc)
- *
- * @see org.eclipse.ui.IActionDelegate#selectionChanged(org.eclipse.jface.action.IAction, org.eclipse.jface.viewers.ISelection)
- */
- public void selectionChanged( IAction action, ISelection selection ) {
- if ( selection instanceof IStructuredSelection ) {
- Object element = ((IStructuredSelection)selection).getFirstElement();
- if ( element instanceof ICastToType ) {
- boolean enabled = ((ICastToType)element).isCasted();
- action.setEnabled( enabled );
- if ( enabled ) {
- setCastToType( (ICastToType)element );
- return;
- }
- }
- }
- action.setEnabled( false );
- setCastToType( null );
- }
-
- public IStatus getStatus() {
- return fStatus;
- }
-
- public void setStatus( IStatus status ) {
- fStatus = status;
- }
-
- protected void doAction( ICastToType castToType ) throws DebugException {
- castToType.restoreOriginal();
- }
-}
diff --git a/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/actions/ResumeAtLineActionDelegate.java b/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/actions/ResumeAtLineActionDelegate.java
deleted file mode 100644
index 1d832d63b47..00000000000
--- a/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/actions/ResumeAtLineActionDelegate.java
+++ /dev/null
@@ -1,175 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004, 2005 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.internal.ui.actions;
-
-import org.eclipse.cdt.debug.internal.ui.CDebugImages;
-import org.eclipse.core.runtime.CoreException;
-import org.eclipse.core.runtime.IAdapterManager;
-import org.eclipse.core.runtime.Platform;
-import org.eclipse.debug.core.model.ISuspendResume;
-import org.eclipse.debug.ui.IDebugUIConstants;
-import org.eclipse.jface.action.IAction;
-import org.eclipse.jface.dialogs.ErrorDialog;
-import org.eclipse.jface.viewers.ISelection;
-import org.eclipse.jface.viewers.ISelectionProvider;
-import org.eclipse.jface.viewers.IStructuredSelection;
-import org.eclipse.swt.widgets.Event;
-import org.eclipse.ui.IActionDelegate2;
-import org.eclipse.ui.IEditorActionDelegate;
-import org.eclipse.ui.IEditorPart;
-import org.eclipse.ui.ISelectionListener;
-import org.eclipse.ui.IViewActionDelegate;
-import org.eclipse.ui.IViewPart;
-import org.eclipse.ui.IWorkbenchPart;
-import org.eclipse.ui.IWorkbenchPartSite;
-
-/**
- * A resume at line action that can be contributed to a an editor. The action
- * will perform the "resume at line" operation for editors that provide
- * an appropriate <code>IResumeAtLineTarget</code> adapter.
- */
-public class ResumeAtLineActionDelegate implements IEditorActionDelegate, IViewActionDelegate, IActionDelegate2 {
-
- private IWorkbenchPart fActivePart = null;
-
- private IResumeAtLineTarget fPartTarget = null;
-
- private IAction fAction = null;
-
- private ISelectionListener fSelectionListener = new DebugSelectionListener();
-
- protected ISuspendResume fTargetElement = null;
-
- class DebugSelectionListener implements ISelectionListener {
-
- /* (non-Javadoc)
- * @see org.eclipse.ui.ISelectionListener#selectionChanged(org.eclipse.ui.IWorkbenchPart, org.eclipse.jface.viewers.ISelection)
- */
- public void selectionChanged( IWorkbenchPart part, ISelection selection ) {
- fTargetElement = null;
- if ( selection instanceof IStructuredSelection ) {
- IStructuredSelection ss = (IStructuredSelection)selection;
- if ( ss.size() == 1 ) {
- Object object = ss.getFirstElement();
- if ( object instanceof ISuspendResume ) {
- fTargetElement = (ISuspendResume)object;
- }
- }
- }
- update();
- }
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.ui.IEditorActionDelegate#setActiveEditor(org.eclipse.jface.action.IAction, org.eclipse.ui.IEditorPart)
- */
- public void setActiveEditor( IAction action, IEditorPart targetEditor ) {
- init( action );
- bindTo( targetEditor );
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.ui.IActionDelegate2#init(org.eclipse.jface.action.IAction)
- */
- public void init( IAction action ) {
- this.fAction = action;
- if ( action != null ) {
- action.setText( ActionMessages.getString( "ResumeAtLineActionDelegate.0" ) ); //$NON-NLS-1$
- action.setImageDescriptor( CDebugImages.DESC_LCL_RESUME_AT_LINE );
- action.setDisabledImageDescriptor( CDebugImages.DESC_LCL_RESUME_AT_LINE_DISABLED );
- }
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.ui.IActionDelegate2#dispose()
- */
- public void dispose() {
- fActivePart.getSite().getWorkbenchWindow().getSelectionService().removeSelectionListener( IDebugUIConstants.ID_DEBUG_VIEW, fSelectionListener );
- fActivePart = null;
- fPartTarget = null;
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.ui.IActionDelegate2#runWithEvent(org.eclipse.jface.action.IAction, org.eclipse.swt.widgets.Event)
- */
- public void runWithEvent( IAction action, Event event ) {
- run( action );
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.ui.IActionDelegate#run(org.eclipse.jface.action.IAction)
- */
- public void run( IAction action ) {
- if ( fPartTarget != null && fTargetElement != null ) {
- try {
- fPartTarget.resumeAtLine( fActivePart, fActivePart.getSite().getSelectionProvider().getSelection(), fTargetElement );
- }
- catch( CoreException e ) {
- ErrorDialog.openError( fActivePart.getSite().getWorkbenchWindow().getShell(), ActionMessages.getString( "ResumeAtLineActionDelegate.1" ), ActionMessages.getString( "ResumeAtLineActionDelegate.2" ), e.getStatus() ); //$NON-NLS-1$ //$NON-NLS-2$
- }
- }
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.ui.IActionDelegate#selectionChanged(org.eclipse.jface.action.IAction, org.eclipse.jface.viewers.ISelection)
- */
- public void selectionChanged( IAction action, ISelection selection ) {
- this.fAction = action;
- update();
- }
-
- protected void update() {
- if ( fAction == null ) {
- return;
- }
- boolean enabled = false;
- if ( fPartTarget != null && fTargetElement != null ) {
- IWorkbenchPartSite site = fActivePart.getSite();
- if ( site != null ) {
- ISelectionProvider selectionProvider = site.getSelectionProvider();
- if ( selectionProvider != null ) {
- ISelection selection = selectionProvider.getSelection();
- enabled = fTargetElement.isSuspended() && fPartTarget.canResumeAtLine( fActivePart, selection, fTargetElement );
- }
- }
- }
- fAction.setEnabled( enabled );
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.ui.IViewActionDelegate#init(org.eclipse.ui.IViewPart)
- */
- public void init( IViewPart view ) {
- bindTo( view );
- }
-
- /**
- * Binds this action to operate on the given part's run to line adapter.
- */
- private void bindTo( IWorkbenchPart part ) {
- fActivePart = part;
- if ( part != null ) {
- part.getSite().getWorkbenchWindow().getSelectionService().addSelectionListener( IDebugUIConstants.ID_DEBUG_VIEW, fSelectionListener );
- fPartTarget = (IResumeAtLineTarget)part.getAdapter( IResumeAtLineTarget.class );
- if ( fPartTarget == null ) {
- IAdapterManager adapterManager = Platform.getAdapterManager();
- // TODO: we could restrict loading to cases when the debugging context is on
- if ( adapterManager.hasAdapter( part, IResumeAtLineTarget.class.getName() ) ) {
- fPartTarget = (IResumeAtLineTarget)adapterManager.loadAdapter( part, IResumeAtLineTarget.class.getName() );
- }
- }
- // Force the selection update
- ISelection selection = part.getSite().getWorkbenchWindow().getSelectionService().getSelection( IDebugUIConstants.ID_DEBUG_VIEW );
- fSelectionListener.selectionChanged( part, selection );
- }
- update();
- }
-}
diff --git a/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/actions/ResumeAtLineAdapter.java b/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/actions/ResumeAtLineAdapter.java
deleted file mode 100644
index a030ee7fe28..00000000000
--- a/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/actions/ResumeAtLineAdapter.java
+++ /dev/null
@@ -1,191 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004, 2005 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.internal.ui.actions;
-
-import org.eclipse.cdt.core.IAddress;
-import org.eclipse.cdt.debug.core.CDIDebugModel;
-import org.eclipse.cdt.debug.core.CDebugUtils;
-import org.eclipse.cdt.debug.core.model.IJumpToAddress;
-import org.eclipse.cdt.debug.core.model.IJumpToLine;
-import org.eclipse.cdt.debug.internal.core.ICDebugInternalConstants;
-import org.eclipse.cdt.debug.internal.ui.IInternalCDebugUIConstants;
-import org.eclipse.cdt.debug.internal.ui.views.disassembly.DisassemblyEditorInput;
-import org.eclipse.cdt.debug.internal.ui.views.disassembly.DisassemblyView;
-import org.eclipse.cdt.debug.ui.CDebugUIPlugin;
-import org.eclipse.core.runtime.CoreException;
-import org.eclipse.core.runtime.IAdaptable;
-import org.eclipse.core.runtime.IStatus;
-import org.eclipse.core.runtime.MultiStatus;
-import org.eclipse.core.runtime.Status;
-import org.eclipse.debug.core.DebugException;
-import org.eclipse.debug.core.DebugPlugin;
-import org.eclipse.debug.core.model.ISuspendResume;
-import org.eclipse.jface.text.IDocument;
-import org.eclipse.jface.text.ITextSelection;
-import org.eclipse.jface.viewers.ISelection;
-import org.eclipse.ui.IEditorInput;
-import org.eclipse.ui.IEditorPart;
-import org.eclipse.ui.IFileEditorInput;
-import org.eclipse.ui.IStorageEditorInput;
-import org.eclipse.ui.IWorkbenchPart;
-import org.eclipse.ui.texteditor.ITextEditor;
-
-/**
- * Resume at line target adapter for the CDI debugger
- */
-public class ResumeAtLineAdapter implements IResumeAtLineTarget {
-
- /* (non-Javadoc)
- * @see org.eclipse.cdt.debug.internal.ui.actions.IResumeAtLineTarget#resumeAtLine(org.eclipse.ui.IWorkbenchPart, org.eclipse.jface.viewers.ISelection, org.eclipse.debug.core.model.ISuspendResume)
- */
- public void resumeAtLine( IWorkbenchPart part, ISelection selection, ISuspendResume target ) throws CoreException {
- String errorMessage = null;
- if ( part instanceof ITextEditor ) {
- ITextEditor textEditor = (ITextEditor)part;
- IEditorInput input = textEditor.getEditorInput();
- if ( input == null ) {
- errorMessage = ActionMessages.getString( "ResumeAtLineAdapter.0" ); //$NON-NLS-1$
- }
- else {
- IDocument document = textEditor.getDocumentProvider().getDocument( input );
- if ( document == null ) {
- errorMessage = ActionMessages.getString( "ResumeAtLineAdapter.1" ); //$NON-NLS-1$
- }
- else {
- final String fileName = getFileName( input );
- ITextSelection textSelection = (ITextSelection)selection;
- final int lineNumber = textSelection.getStartLine() + 1;
- if ( target instanceof IAdaptable ) {
- final IJumpToLine jumpToLine = (IJumpToLine)((IAdaptable)target).getAdapter( IJumpToLine.class );
- if ( jumpToLine != null && jumpToLine.canJumpToLine( fileName, lineNumber ) ) {
- Runnable r = new Runnable() {
-
- public void run() {
- try {
- jumpToLine.jumpToLine( fileName, lineNumber );
- }
- catch( DebugException e ) {
- failed( e );
- }
- }
- };
- runInBackground( r );
- }
- }
- return;
- }
- }
- }
- else if ( part instanceof DisassemblyView ) {
- IEditorInput input = ((DisassemblyView)part).getInput();
- if ( !(input instanceof DisassemblyEditorInput) ) {
- errorMessage = ActionMessages.getString( "ResumeAtLineAdapter.2" ); //$NON-NLS-1$
- }
- else {
- ITextSelection textSelection = (ITextSelection)selection;
- int lineNumber = textSelection.getStartLine() + 1;
- final IAddress address = ((DisassemblyEditorInput)input).getAddress( lineNumber );
- if ( address != null && target instanceof IAdaptable ) {
- final IJumpToAddress jumpToAddress = (IJumpToAddress)((IAdaptable)target).getAdapter( IJumpToAddress.class );
- if ( jumpToAddress != null && jumpToAddress.canJumpToAddress( address ) ) {
- Runnable r = new Runnable() {
-
- public void run() {
- try {
- jumpToAddress.jumpToAddress( address );
- }
- catch( DebugException e ) {
- failed( e );
- }
- }
- };
- runInBackground( r );
- }
- }
- return;
- }
- }
- else {
- errorMessage = ActionMessages.getString( "ResumeAtLineAdapter.3" ); //$NON-NLS-1$
- }
- throw new CoreException( new Status( IStatus.ERROR, CDebugUIPlugin.getUniqueIdentifier(), IInternalCDebugUIConstants.INTERNAL_ERROR, errorMessage, null ) );
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.cdt.debug.internal.ui.actions.IResumeAtLineTarget#canResumeAtLine(org.eclipse.ui.IWorkbenchPart, org.eclipse.jface.viewers.ISelection, org.eclipse.debug.core.model.ISuspendResume)
- */
- public boolean canResumeAtLine( IWorkbenchPart part, ISelection selection, ISuspendResume target ) {
- if ( target instanceof IAdaptable ) {
- if ( part instanceof IEditorPart ) {
- IJumpToLine jumpToLine = (IJumpToLine)((IAdaptable)target).getAdapter( IJumpToLine.class );
- if ( jumpToLine == null )
- return false;
- IEditorPart editorPart = (IEditorPart)part;
- IEditorInput input = editorPart.getEditorInput();
- if ( input == null ) {
- return false;
- }
- if ( !(editorPart instanceof ITextEditor) ) {
- return false;
- }
- ITextEditor textEditor = (ITextEditor)editorPart;
- IDocument document = textEditor.getDocumentProvider().getDocument( input );
- if ( document == null ) {
- return false;
- }
- String fileName;
- try {
- fileName = getFileName( input );
- }
- catch( CoreException e ) {
- return false;
- }
- ITextSelection textSelection = (ITextSelection)selection;
- int lineNumber = textSelection.getStartLine() + 1;
- return jumpToLine.canJumpToLine( fileName, lineNumber );
- }
- if ( part instanceof DisassemblyView ) {
- IJumpToAddress jumpToAddress = (IJumpToAddress)((IAdaptable)target).getAdapter( IJumpToAddress.class );
- if ( jumpToAddress == null )
- return false;
- IEditorInput input = ((DisassemblyView)part).getInput();
- if ( !(input instanceof DisassemblyEditorInput) ) {
- return false;
- }
- ITextSelection textSelection = (ITextSelection)selection;
- int lineNumber = textSelection.getStartLine() + 1;
- IAddress address = ((DisassemblyEditorInput)input).getAddress( lineNumber );
- return jumpToAddress.canJumpToAddress( address );
- }
- }
- return false;
- }
-
- private String getFileName( IEditorInput input ) throws CoreException {
- if ( input instanceof IFileEditorInput ) {
- return ((IFileEditorInput)input).getFile().getName();
- }
- if ( input instanceof IStorageEditorInput ) {
- return ((IStorageEditorInput)input).getStorage().getName();
- }
- return null;
- }
-
- private void runInBackground( Runnable r ) {
- DebugPlugin.getDefault().asyncExec( r );
- }
-
- protected void failed( Throwable e ) {
- MultiStatus ms = new MultiStatus( CDIDebugModel.getPluginIdentifier(), ICDebugInternalConstants.STATUS_CODE_ERROR, ActionMessages.getString( "ResumeAtLineAdapter.4" ), null ); //$NON-NLS-1$
- ms.add( new Status( IStatus.ERROR, CDIDebugModel.getPluginIdentifier(), ICDebugInternalConstants.STATUS_CODE_ERROR, e.getMessage(), e ) );
- CDebugUtils.error( ms, this );
- }
-}
diff --git a/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/actions/RetargetAction.java b/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/actions/RetargetAction.java
deleted file mode 100644
index 003eed48110..00000000000
--- a/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/actions/RetargetAction.java
+++ /dev/null
@@ -1,215 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.internal.ui.actions;
-
-import org.eclipse.core.runtime.CoreException;
-import org.eclipse.core.runtime.IAdaptable;
-import org.eclipse.core.runtime.IAdapterManager;
-import org.eclipse.core.runtime.Platform;
-import org.eclipse.jface.action.IAction;
-import org.eclipse.jface.dialogs.ErrorDialog;
-import org.eclipse.jface.viewers.ISelection;
-import org.eclipse.jface.viewers.ISelectionProvider;
-import org.eclipse.jface.viewers.IStructuredSelection;
-import org.eclipse.ui.IPartListener;
-import org.eclipse.ui.IPartService;
-import org.eclipse.ui.IWorkbenchPart;
-import org.eclipse.ui.IWorkbenchWindow;
-import org.eclipse.ui.IWorkbenchWindowActionDelegate;
-import org.eclipse.ui.texteditor.IUpdate;
-
-/**
- * Global retargettable debug action.
- *
- * @since 3.0
- */
-public abstract class RetargetAction implements IWorkbenchWindowActionDelegate, IPartListener, IUpdate {
-
- protected IWorkbenchWindow fWindow = null;
- private IWorkbenchPart fActivePart = null;
- private Object fTargetAdapter = null;
- private IAction fAction = null;
- private static final ISelection EMPTY_SELECTION = new EmptySelection();
-
- static class EmptySelection implements ISelection {
-
- /* (non-Javadoc)
- * @see org.eclipse.jface.viewers.ISelection#isEmpty()
- */
- public boolean isEmpty() {
- return true;
- }
-
- }
-
- /**
- * Returns the current selection in the active part, possibly
- * and empty selection, but never <code>null</code>.
- *
- * @return the selection in the active part, possibly empty
- */
- private ISelection getTargetSelection() {
- if (fActivePart != null) {
- ISelectionProvider selectionProvider = fActivePart.getSite().getSelectionProvider();
- if (selectionProvider != null) {
- return selectionProvider.getSelection();
- }
- }
- return EMPTY_SELECTION;
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.ui.IWorkbenchWindowActionDelegate#dispose()
- */
- public void dispose() {
- fWindow.getPartService().removePartListener(this);
- fActivePart = null;
- fTargetAdapter = null;
-
- }
- /* (non-Javadoc)
- * @see org.eclipse.ui.IWorkbenchWindowActionDelegate#init(org.eclipse.ui.IWorkbenchWindow)
- */
- public void init(IWorkbenchWindow window) {
- this.fWindow = window;
- IPartService partService = window.getPartService();
- partService.addPartListener(this);
- IWorkbenchPart part = partService.getActivePart();
- if (part != null) {
- partActivated(part);
- }
- }
- /* (non-Javadoc)
- * @see org.eclipse.ui.IActionDelegate#run(org.eclipse.jface.action.IAction)
- */
- public void run(IAction action) {
- if (fTargetAdapter != null) {
- try {
- performAction(fTargetAdapter, getTargetSelection(), fActivePart);
- } catch (CoreException e) {
- ErrorDialog.openError(fWindow.getShell(), ActionMessages.getString("RetargetAction.2"), ActionMessages.getString("RetargetAction.3"), e.getStatus()); //$NON-NLS-1$ //$NON-NLS-2$
- }
- }
- }
-
- /**
- * Performs the specific breakpoint toggling.
- *
- * @param selection selection in the active part
- * @param part active part
- * @throws CoreException if an exception occurrs
- */
- protected abstract void performAction(Object target, ISelection selection, IWorkbenchPart part) throws CoreException;
-
- /* (non-Javadoc)
- * @see org.eclipse.ui.IActionDelegate#selectionChanged(org.eclipse.jface.action.IAction, org.eclipse.jface.viewers.ISelection)
- */
- public void selectionChanged(IAction action, ISelection selection) {
- this.fAction = action;
- // if the active part did not provide an adapter, see if the selectoin does
- if (fTargetAdapter == null && selection instanceof IStructuredSelection) {
- IStructuredSelection ss = (IStructuredSelection) selection;
- if (!ss.isEmpty()) {
- Object object = ss.getFirstElement();
- if (object instanceof IAdaptable) {
- fTargetAdapter = getAdapter((IAdaptable) object);
- }
- }
- }
- update();
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.ui.IPartListener#partActivated(org.eclipse.ui.IWorkbenchPart)
- */
- public void partActivated(IWorkbenchPart part) {
- fActivePart = part;
- fTargetAdapter = getAdapter(part);
- update();
- }
-
- protected Object getAdapter(IAdaptable adaptable) {
- Object adapter = adaptable.getAdapter(getAdapterClass());
- if (adapter == null) {
- IAdapterManager adapterManager = Platform.getAdapterManager();
- if (adapterManager.hasAdapter(adaptable, getAdapterClass().getName())) {
- fTargetAdapter = adapterManager.loadAdapter(adaptable, getAdapterClass().getName());
- }
- }
- return adapter;
- }
-
- /**
- * Returns the type of adapter (target) this action works on.
- *
- * @return the type of adapter this action works on
- */
- protected abstract Class getAdapterClass();
-
- /* (non-Javadoc)
- * @see org.eclipse.ui.IPartListener#partBroughtToTop(org.eclipse.ui.IWorkbenchPart)
- */
- public void partBroughtToTop(IWorkbenchPart part) {
- }
- /* (non-Javadoc)
- * @see org.eclipse.ui.IPartListener#partClosed(org.eclipse.ui.IWorkbenchPart)
- */
- public void partClosed(IWorkbenchPart part) {
- clearPart(part);
- }
-
- /**
- * Clears reference to active part and adapter when a relevant part
- * is closed or deactivated.
- *
- * @param part workbench part that has been closed or deactivated
- */
- protected void clearPart(IWorkbenchPart part) {
- if (part.equals(fActivePart)) {
- fActivePart = null;
- fTargetAdapter = null;
- }
- }
- /* (non-Javadoc)
- * @see org.eclipse.ui.IPartListener#partDeactivated(org.eclipse.ui.IWorkbenchPart)
- */
- public void partDeactivated(IWorkbenchPart part) {
- clearPart(part);
- }
- /* (non-Javadoc)
- * @see org.eclipse.ui.IPartListener#partOpened(org.eclipse.ui.IWorkbenchPart)
- */
- public void partOpened(IWorkbenchPart part) {
- }
- /* (non-Javadoc)
- * @see org.eclipse.ui.texteditor.IUpdate#update()
- */
- public void update() {
- if (fAction == null) {
- return;
- }
- if (fTargetAdapter != null) {
- fAction.setEnabled(canPerformAction(fTargetAdapter, getTargetSelection(), fActivePart));
- } else {
- fAction.setEnabled(false);
- }
- }
-
- /**
- * Returns whether the specific operation is supported.
- *
- * @param target the target adapter
- * @param selection the selection to verify the operation on
- * @param part the part the operation has been requested on
- * @return whether the operation can be performed
- */
- protected abstract boolean canPerformAction(Object target, ISelection selection, IWorkbenchPart part);
-}
diff --git a/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/actions/RetargetResumeAtLineAction.java b/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/actions/RetargetResumeAtLineAction.java
deleted file mode 100644
index caf5373b251..00000000000
--- a/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/actions/RetargetResumeAtLineAction.java
+++ /dev/null
@@ -1,96 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004, 2005 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.internal.ui.actions;
-
-import org.eclipse.core.runtime.CoreException;
-import org.eclipse.debug.core.model.ISuspendResume;
-import org.eclipse.debug.ui.IDebugUIConstants;
-import org.eclipse.jface.viewers.ISelection;
-import org.eclipse.jface.viewers.IStructuredSelection;
-import org.eclipse.ui.ISelectionListener;
-import org.eclipse.ui.IWorkbenchPart;
-import org.eclipse.ui.IWorkbenchWindow;
-
-/**
- * Global retargettable resume at line action.
- */
-public class RetargetResumeAtLineAction extends RetargetAction {
-
- private ISelectionListener fSelectionListener = new DebugSelectionListener();
-
- private ISuspendResume fTargetElement = null;
-
- class DebugSelectionListener implements ISelectionListener {
-
- /* (non-Javadoc)
- * @see org.eclipse.ui.ISelectionListener#selectionChanged(org.eclipse.ui.IWorkbenchPart, org.eclipse.jface.viewers.ISelection)
- */
- public void selectionChanged( IWorkbenchPart part, ISelection selection ) {
- setTargetElement( null );
- if ( selection instanceof IStructuredSelection ) {
- IStructuredSelection ss = (IStructuredSelection)selection;
- if ( ss.size() == 1 ) {
- Object object = ss.getFirstElement();
- if ( object instanceof ISuspendResume ) {
- setTargetElement( (ISuspendResume)object );
- }
- }
- }
- update();
- }
- }
-
-
- /* (non-Javadoc)
- * @see org.eclipse.ui.IWorkbenchWindowActionDelegate#dispose()
- */
- public void dispose() {
- fWindow.getSelectionService().removeSelectionListener( IDebugUIConstants.ID_DEBUG_VIEW, fSelectionListener );
- super.dispose();
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.ui.IWorkbenchWindowActionDelegate#init(org.eclipse.ui.IWorkbenchWindow)
- */
- public void init( IWorkbenchWindow window ) {
- super.init( window );
- window.getSelectionService().addSelectionListener( IDebugUIConstants.ID_DEBUG_VIEW, fSelectionListener );
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.cdt.debug.internal.ui.actions.RetargetAction#performAction(java.lang.Object, org.eclipse.jface.viewers.ISelection, org.eclipse.ui.IWorkbenchPart)
- */
- protected void performAction( Object target, ISelection selection, IWorkbenchPart part ) throws CoreException {
- ((IResumeAtLineTarget)target).resumeAtLine( part, selection, getTargetElement() );
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.cdt.debug.internal.ui.actions.RetargetAction#getAdapterClass()
- */
- protected Class getAdapterClass() {
- return IResumeAtLineTarget.class;
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.cdt.debug.internal.ui.actions.RetargetAction#canPerformAction(java.lang.Object, org.eclipse.jface.viewers.ISelection, org.eclipse.ui.IWorkbenchPart)
- */
- protected boolean canPerformAction( Object target, ISelection selection, IWorkbenchPart part ) {
- return getTargetElement() != null && ((IResumeAtLineTarget)target).canResumeAtLine( part, selection, getTargetElement() );
- }
-
- protected ISuspendResume getTargetElement() {
- return fTargetElement;
- }
-
- protected void setTargetElement( ISuspendResume targetElement ) {
- fTargetElement = targetElement;
- }
-}
diff --git a/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/actions/RetargettableActionAdapterFactory.java b/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/actions/RetargettableActionAdapterFactory.java
deleted file mode 100644
index e70c7e4fe6c..00000000000
--- a/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/actions/RetargettableActionAdapterFactory.java
+++ /dev/null
@@ -1,46 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004, 2005 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.internal.ui.actions;
-
-import org.eclipse.core.runtime.IAdapterFactory;
-import org.eclipse.debug.ui.actions.IRunToLineTarget;
-import org.eclipse.debug.ui.actions.IToggleBreakpointsTarget;
-
-/**
- * Creates adapters for retargettable actions in debug platform.
- * Contributed via <code>org.eclipse.core.runtime.adapters</code>
- * extension point.
- */
-public class RetargettableActionAdapterFactory implements IAdapterFactory {
-
- /* (non-Javadoc)
- * @see org.eclipse.core.runtime.IAdapterFactory#getAdapter(java.lang.Object, java.lang.Class)
- */
- public Object getAdapter( Object adaptableObject, Class adapterType ) {
- if ( adapterType == IToggleBreakpointsTarget.class ) {
- return new ToggleBreakpointAdapter();
- }
- if ( adapterType == IRunToLineTarget.class ) {
- return new RunToLineAdapter();
- }
- if ( adapterType == IResumeAtLineTarget.class ) {
- return new ResumeAtLineAdapter();
- }
- return null;
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.core.runtime.IAdapterFactory#getAdapterList()
- */
- public Class[] getAdapterList() {
- return new Class[]{ IRunToLineTarget.class, IToggleBreakpointsTarget.class, IResumeAtLineTarget.class };
- }
-}
diff --git a/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/actions/RunToLineAdapter.java b/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/actions/RunToLineAdapter.java
deleted file mode 100644
index 1c8edbe4e47..00000000000
--- a/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/actions/RunToLineAdapter.java
+++ /dev/null
@@ -1,194 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004, 2005 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.internal.ui.actions;
-
-import org.eclipse.cdt.core.IAddress;
-import org.eclipse.cdt.debug.core.CDIDebugModel;
-import org.eclipse.cdt.debug.core.CDebugUtils;
-import org.eclipse.cdt.debug.core.model.IRunToAddress;
-import org.eclipse.cdt.debug.core.model.IRunToLine;
-import org.eclipse.cdt.debug.internal.core.ICDebugInternalConstants;
-import org.eclipse.cdt.debug.internal.ui.IInternalCDebugUIConstants;
-import org.eclipse.cdt.debug.internal.ui.views.disassembly.DisassemblyEditorInput;
-import org.eclipse.cdt.debug.internal.ui.views.disassembly.DisassemblyView;
-import org.eclipse.cdt.debug.ui.CDebugUIPlugin;
-import org.eclipse.core.runtime.CoreException;
-import org.eclipse.core.runtime.IAdaptable;
-import org.eclipse.core.runtime.IStatus;
-import org.eclipse.core.runtime.MultiStatus;
-import org.eclipse.core.runtime.Status;
-import org.eclipse.debug.core.DebugException;
-import org.eclipse.debug.core.DebugPlugin;
-import org.eclipse.debug.core.model.ISuspendResume;
-import org.eclipse.debug.ui.DebugUITools;
-import org.eclipse.debug.ui.IDebugUIConstants;
-import org.eclipse.debug.ui.actions.IRunToLineTarget;
-import org.eclipse.jface.text.IDocument;
-import org.eclipse.jface.text.ITextSelection;
-import org.eclipse.jface.viewers.ISelection;
-import org.eclipse.ui.IEditorInput;
-import org.eclipse.ui.IEditorPart;
-import org.eclipse.ui.IFileEditorInput;
-import org.eclipse.ui.IStorageEditorInput;
-import org.eclipse.ui.IWorkbenchPart;
-import org.eclipse.ui.texteditor.ITextEditor;
-
-/**
- * Run to line target adapter for the CDI debugger
- */
-public class RunToLineAdapter implements IRunToLineTarget {
-
- /* (non-Javadoc)
- * @see org.eclipse.debug.ui.actions.IRunToLineTarget#runToLine(org.eclipse.ui.IWorkbenchPart, org.eclipse.jface.viewers.ISelection, org.eclipse.debug.core.model.ISuspendResume)
- */
- public void runToLine( IWorkbenchPart part, ISelection selection, ISuspendResume target ) throws CoreException {
- String errorMessage = null;
- if ( part instanceof ITextEditor ) {
- ITextEditor textEditor = (ITextEditor)part;
- IEditorInput input = textEditor.getEditorInput();
- if ( input == null ) {
- errorMessage = ActionMessages.getString( "RunToLineAdapter.Empty_editor_1" ); //$NON-NLS-1$
- }
- else {
- IDocument document = textEditor.getDocumentProvider().getDocument( input );
- if ( document == null ) {
- errorMessage = ActionMessages.getString( "RunToLineAdapter.Missing_document_1" ); //$NON-NLS-1$
- }
- else {
- final String fileName = getFileName( input );
- ITextSelection textSelection = (ITextSelection)selection;
- final int lineNumber = textSelection.getStartLine() + 1;
- if ( target instanceof IAdaptable ) {
- final IRunToLine runToLine = (IRunToLine)((IAdaptable)target).getAdapter( IRunToLine.class );
- if ( runToLine != null && runToLine.canRunToLine( fileName, lineNumber ) ) {
- Runnable r = new Runnable() {
-
- public void run() {
- try {
- runToLine.runToLine( fileName, lineNumber, DebugUITools.getPreferenceStore().getBoolean( IDebugUIConstants.PREF_SKIP_BREAKPOINTS_DURING_RUN_TO_LINE ) );
- }
- catch( DebugException e ) {
- failed( e );
- }
- }
- };
- runInBackground( r );
- }
- }
- return;
- }
- }
- }
- else if ( part instanceof DisassemblyView ) {
- IEditorInput input = ((DisassemblyView)part).getInput();
- if ( !(input instanceof DisassemblyEditorInput) ) {
- errorMessage = ActionMessages.getString( "RunToLineAdapter.Empty_editor_1" ); //$NON-NLS-1$
- }
- else {
- ITextSelection textSelection = (ITextSelection)selection;
- int lineNumber = textSelection.getStartLine() + 1;
- final IAddress address = ((DisassemblyEditorInput)input).getAddress( lineNumber );
- if ( address != null && target instanceof IAdaptable ) {
- final IRunToAddress runToAddress = (IRunToAddress)((IAdaptable)target).getAdapter( IRunToAddress.class );
- if ( runToAddress != null && runToAddress.canRunToAddress( address ) ) {
- Runnable r = new Runnable() {
-
- public void run() {
- try {
- runToAddress.runToAddress( address, DebugUITools.getPreferenceStore().getBoolean( IDebugUIConstants.PREF_SKIP_BREAKPOINTS_DURING_RUN_TO_LINE ) );
- }
- catch( DebugException e ) {
- failed( e );
- }
- }
- };
- runInBackground( r );
- }
- }
- return;
- }
- }
- else {
- errorMessage = ActionMessages.getString( "RunToLineAdapter.Operation_is_not_supported_1" ); //$NON-NLS-1$
- }
- throw new CoreException( new Status( IStatus.ERROR, CDebugUIPlugin.getUniqueIdentifier(), IInternalCDebugUIConstants.INTERNAL_ERROR, errorMessage, null ) );
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.debug.ui.actions.IRunToLineTarget#canRunToLine(org.eclipse.ui.IWorkbenchPart, org.eclipse.jface.viewers.ISelection, org.eclipse.debug.core.model.ISuspendResume)
- */
- public boolean canRunToLine( IWorkbenchPart part, ISelection selection, ISuspendResume target ) {
- if ( target instanceof IAdaptable ) {
- if ( part instanceof IEditorPart ) {
- IRunToLine runToLine = (IRunToLine)((IAdaptable)target).getAdapter( IRunToLine.class );
- if ( runToLine == null )
- return false;
- IEditorPart editorPart = (IEditorPart)part;
- IEditorInput input = editorPart.getEditorInput();
- if ( input == null ) {
- return false;
- }
- if ( !(editorPart instanceof ITextEditor) ) {
- return false;
- }
- ITextEditor textEditor = (ITextEditor)editorPart;
- IDocument document = textEditor.getDocumentProvider().getDocument( input );
- if ( document == null ) {
- return false;
- }
- String fileName;
- try {
- fileName = getFileName( input );
- }
- catch( CoreException e ) {
- return false;
- }
- ITextSelection textSelection = (ITextSelection)selection;
- int lineNumber = textSelection.getStartLine() + 1;
- return runToLine.canRunToLine( fileName, lineNumber );
- }
- if ( part instanceof DisassemblyView ) {
- IRunToAddress runToAddress = (IRunToAddress)((IAdaptable)target).getAdapter( IRunToAddress.class );
- if ( runToAddress == null )
- return false;
- IEditorInput input = ((DisassemblyView)part).getInput();
- if ( !(input instanceof DisassemblyEditorInput) ) {
- return false;
- }
- ITextSelection textSelection = (ITextSelection)selection;
- int lineNumber = textSelection.getStartLine() + 1;
- IAddress address = ((DisassemblyEditorInput)input).getAddress( lineNumber );
- return runToAddress.canRunToAddress( address );
- }
- }
- return false;
- }
-
- private String getFileName( IEditorInput input ) throws CoreException {
- if ( input instanceof IFileEditorInput ) {
- return ((IFileEditorInput)input).getFile().getName();
- }
- if ( input instanceof IStorageEditorInput ) {
- return ((IStorageEditorInput)input).getStorage().getName();
- }
- return null;
- }
-
- private void runInBackground( Runnable r ) {
- DebugPlugin.getDefault().asyncExec( r );
- }
-
- protected void failed( Throwable e ) {
- MultiStatus ms = new MultiStatus( CDIDebugModel.getPluginIdentifier(), ICDebugInternalConstants.STATUS_CODE_ERROR, ActionMessages.getString( "RunToLineAdapter.0" ), null ); //$NON-NLS-1$
- ms.add( new Status( IStatus.ERROR, CDIDebugModel.getPluginIdentifier(), ICDebugInternalConstants.STATUS_CODE_ERROR, e.getMessage(), e ) );
- CDebugUtils.error( ms, this );
- }
-}
diff --git a/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/actions/ShowFullPathsAction.java b/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/actions/ShowFullPathsAction.java
deleted file mode 100644
index 86cf43b33d9..00000000000
--- a/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/actions/ShowFullPathsAction.java
+++ /dev/null
@@ -1,68 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.cdt.debug.internal.ui.actions;
-
-import org.eclipse.cdt.debug.core.CDIDebugModel;
-import org.eclipse.cdt.debug.internal.ui.CDebugModelPresentation;
-import org.eclipse.cdt.debug.internal.ui.preferences.ICDebugPreferenceConstants;
-import org.eclipse.cdt.debug.ui.CDebugUIPlugin;
-import org.eclipse.debug.ui.IDebugModelPresentation;
-import org.eclipse.debug.ui.IDebugView;
-import org.eclipse.jface.action.IAction;
-import org.eclipse.jface.preference.IPreferenceStore;
-import org.eclipse.jface.viewers.StructuredViewer;
-import org.eclipse.jface.viewers.Viewer;
-import org.eclipse.swt.custom.BusyIndicator;
-
-/**
- * An action delegate that toggles the state of its viewer to show/hide full paths.
- */
-public class ShowFullPathsAction extends ViewFilterAction {
-
- /* (non-Javadoc)
- * @see org.eclipse.cdt.debug.internal.ui.actions.ViewFilterAction#getPreferenceKey()
- */
- protected String getPreferenceKey() {
- return ICDebugPreferenceConstants.PREF_SHOW_FULL_PATHS;
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.jface.viewers.ViewerFilter#select(org.eclipse.jface.viewers.Viewer, java.lang.Object, java.lang.Object)
- */
- public boolean select( Viewer viewer, Object parentElement, Object element ) {
- return true;
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.ui.IActionDelegate#run(org.eclipse.jface.action.IAction)
- */
- public void run( IAction action ) {
- final StructuredViewer viewer = getStructuredViewer();
- IDebugView view = (IDebugView)getView().getAdapter( IDebugView.class );
- if (view != null) {
- IDebugModelPresentation pres = view.getPresentation( CDIDebugModel.getPluginIdentifier() );
- if ( pres != null ) {
- pres.setAttribute( CDebugModelPresentation.DISPLAY_FULL_PATHS, Boolean.valueOf( getValue() ) );
- BusyIndicator.showWhile( viewer.getControl().getDisplay(),
- new Runnable() {
- public void run() {
- viewer.refresh();
- IPreferenceStore store = getPreferenceStore();
- String key = getView().getSite().getId() + "." + getPreferenceKey(); //$NON-NLS-1$
- store.setValue( key, getValue() );
- CDebugUIPlugin.getDefault().savePluginPreferences();
- }
- } );
- }
- }
- }
-}
diff --git a/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/actions/SignalActionDelegate.java b/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/actions/SignalActionDelegate.java
deleted file mode 100644
index 62beb967d5c..00000000000
--- a/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/actions/SignalActionDelegate.java
+++ /dev/null
@@ -1,109 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.internal.ui.actions;
-
-import org.eclipse.cdt.debug.core.model.ICSignal;
-import org.eclipse.cdt.debug.ui.CDebugUIPlugin;
-import org.eclipse.core.runtime.MultiStatus;
-import org.eclipse.debug.core.DebugException;
-import org.eclipse.jface.action.IAction;
-import org.eclipse.jface.viewers.ISelection;
-import org.eclipse.jface.viewers.IStructuredSelection;
-import org.eclipse.swt.custom.BusyIndicator;
-import org.eclipse.swt.widgets.Display;
-import org.eclipse.ui.IObjectActionDelegate;
-import org.eclipse.ui.IWorkbenchPart;
-import org.eclipse.ui.IWorkbenchWindow;
-import org.eclipse.ui.actions.ActionDelegate;
-
-/**
- * The delegate of the "Resume With Signal" action.
- */
-public class SignalActionDelegate extends ActionDelegate implements IObjectActionDelegate {
-
- private ICSignal fSignal = null;
-
- /*
- * (non-Javadoc)
- *
- * @see org.eclipse.ui.IObjectActionDelegate#setActivePart(IAction, IWorkbenchPart)
- */
- public void setActivePart( IAction action, IWorkbenchPart targetPart ) {
- }
-
- /*
- * (non-Javadoc)
- *
- * @see org.eclipse.ui.IActionDelegate#run(IAction)
- */
- public void run( IAction action ) {
- if ( getSignal() != null ) {
- final MultiStatus ms = new MultiStatus( CDebugUIPlugin.getUniqueIdentifier(), DebugException.REQUEST_FAILED, ActionMessages.getString( "SignalActionDelegate.0" ), null ); //$NON-NLS-1$
- BusyIndicator.showWhile( Display.getCurrent(), new Runnable() {
-
- public void run() {
- try {
- doAction( getSignal() );
- }
- catch( DebugException e ) {
- ms.merge( e.getStatus() );
- }
- }
- } );
- if ( !ms.isOK() ) {
- IWorkbenchWindow window = CDebugUIPlugin.getActiveWorkbenchWindow();
- if ( window != null ) {
- CDebugUIPlugin.errorDialog( ActionMessages.getString( "SignalActionDelegate.1" ), ms ); //$NON-NLS-1$
- }
- else {
- CDebugUIPlugin.log( ms );
- }
- }
- }
- }
-
- /*
- * (non-Javadoc)
- *
- * @see org.eclipse.ui.IActionDelegate#selectionChanged(IAction, ISelection)
- */
- public void selectionChanged( IAction action, ISelection selection ) {
- if ( selection instanceof IStructuredSelection ) {
- Object element = ((IStructuredSelection)selection).getFirstElement();
- if ( element instanceof ICSignal ) {
- boolean enabled = enablesFor( (ICSignal)element );
- action.setEnabled( enabled );
- if ( enabled ) {
- setSignal( (ICSignal)element );
- return;
- }
- }
- }
- action.setEnabled( false );
- setSignal( null );
- }
-
- protected void doAction( ICSignal signal ) throws DebugException {
- signal.signal();
- }
-
- private boolean enablesFor( ICSignal signal ) {
- return (signal != null && signal.getDebugTarget().isSuspended());
- }
-
- private void setSignal( ICSignal signal ) {
- fSignal = signal;
- }
-
- protected ICSignal getSignal() {
- return fSignal;
- }
-}
diff --git a/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/actions/SignalPropertiesActionDelegate.java b/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/actions/SignalPropertiesActionDelegate.java
deleted file mode 100644
index 9e57e43d59f..00000000000
--- a/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/actions/SignalPropertiesActionDelegate.java
+++ /dev/null
@@ -1,99 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004, 2005 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.internal.ui.actions;
-
-import org.eclipse.cdt.debug.core.model.ICSignal;
-import org.eclipse.jface.action.IAction;
-import org.eclipse.jface.viewers.ISelection;
-import org.eclipse.jface.viewers.ISelectionChangedListener;
-import org.eclipse.jface.viewers.ISelectionProvider;
-import org.eclipse.jface.viewers.IStructuredSelection;
-import org.eclipse.jface.viewers.StructuredSelection;
-import org.eclipse.ui.IObjectActionDelegate;
-import org.eclipse.ui.IWorkbenchPart;
-import org.eclipse.ui.actions.ActionDelegate;
-import org.eclipse.ui.dialogs.PropertyDialogAction;
-
-/**
- * Signal Properties action delegate.
- */
-public class SignalPropertiesActionDelegate extends ActionDelegate implements IObjectActionDelegate {
-
- private ICSignal fSignal;
-
- private IWorkbenchPart fTargetPart;
-
- /**
- * Constructor for SignalPropertiesActionDelegate.
- *
- */
- public SignalPropertiesActionDelegate() {
- super();
- // TODO Auto-generated constructor stub
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.ui.IObjectActionDelegate#setActivePart(org.eclipse.jface.action.IAction, org.eclipse.ui.IWorkbenchPart)
- */
- public void setActivePart( IAction action, IWorkbenchPart targetPart ) {
- fTargetPart = targetPart;
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.ui.IActionDelegate#selectionChanged(org.eclipse.jface.action.IAction, org.eclipse.jface.viewers.ISelection)
- */
- public void selectionChanged( IAction action, ISelection selection ) {
- if ( selection instanceof IStructuredSelection ) {
- Object element = ((IStructuredSelection)selection).getFirstElement();
- if ( element instanceof ICSignal ) {
- action.setEnabled( true );
- setSignal( (ICSignal)element );
- return;
- }
- }
- action.setEnabled( false );
- setSignal( null );
- }
-
- protected ICSignal getSignal() {
- return this.fSignal;
- }
-
- private void setSignal( ICSignal signal ) {
- this.fSignal = signal;
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.ui.IActionDelegate#run(org.eclipse.jface.action.IAction)
- */
- public void run( IAction action ) {
- PropertyDialogAction propertyAction = new PropertyDialogAction( getActivePart().getSite(), new ISelectionProvider() {
-
- public void addSelectionChangedListener( ISelectionChangedListener listener ) {
- }
-
- public ISelection getSelection() {
- return new StructuredSelection( getSignal() );
- }
-
- public void removeSelectionChangedListener( ISelectionChangedListener listener ) {
- }
-
- public void setSelection( ISelection selection ) {
- }
- } );
- propertyAction.run();
- }
-
- protected IWorkbenchPart getActivePart() {
- return fTargetPart;
- }
-}
diff --git a/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/actions/SignalZeroWorkbenchActionDelegate.java b/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/actions/SignalZeroWorkbenchActionDelegate.java
deleted file mode 100644
index e532bade2df..00000000000
--- a/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/actions/SignalZeroWorkbenchActionDelegate.java
+++ /dev/null
@@ -1,71 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004, 2005 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.internal.ui.actions;
-
-import org.eclipse.cdt.debug.core.model.IResumeWithoutSignal;
-import org.eclipse.debug.core.DebugException;
-
-/**
- * The workbench delegate of the "Resume Without Signal" action.
- */
-public class SignalZeroWorkbenchActionDelegate extends AbstractListenerActionDelegate {
-
- /*
- * (non-Javadoc)
- *
- * @see org.eclipse.cdt.debug.internal.ui.actions.AbstractDebugActionDelegate#doAction(java.lang.Object)
- */
- protected void doAction( Object element ) throws DebugException {
- if ( element instanceof IResumeWithoutSignal ) {
- ((IResumeWithoutSignal)element).resumeWithoutSignal();
- }
- }
-
- /*
- * (non-Javadoc)
- *
- * @see org.eclipse.cdt.debug.internal.ui.actions.AbstractDebugActionDelegate#isEnabledFor(java.lang.Object)
- */
- protected boolean isEnabledFor( Object element ) {
- if ( element instanceof IResumeWithoutSignal ) {
- return ((IResumeWithoutSignal)element).canResumeWithoutSignal();
- }
- return false;
- }
-
- /**
- * @see AbstractDebugActionDelegate#getStatusMessage()
- */
- protected String getStatusMessage() {
- return ActionMessages.getString( "SignalZeroWorkbenchActionDelegate.0" ); //$NON-NLS-1$
- }
-
- /**
- * @see AbstractDebugActionDelegate#getErrorDialogMessage()
- */
- protected String getErrorDialogMessage() {
- return ActionMessages.getString( "SignalZeroWorkbenchActionDelegate.1" ); //$NON-NLS-1$
- }
-
- /**
- * @see AbstractDebugActionDelegate#getErrorDialogTitle()
- */
- protected String getErrorDialogTitle() {
- return ActionMessages.getString( "SignalZeroWorkbenchActionDelegate.2" ); //$NON-NLS-1$
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.cdt.debug.internal.ui.actions.AbstractDebugActionDelegate#isRunInBackground()
- */
- protected boolean isRunInBackground() {
- return true;
- }
-}
diff --git a/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/actions/ToggleBreakpointAdapter.java b/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/actions/ToggleBreakpointAdapter.java
deleted file mode 100644
index ef846fcef3d..00000000000
--- a/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/actions/ToggleBreakpointAdapter.java
+++ /dev/null
@@ -1,504 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.internal.ui.actions;
-
-import org.eclipse.cdt.core.IAddress;
-import org.eclipse.cdt.core.model.CModelException;
-import org.eclipse.cdt.core.model.CoreModel;
-import org.eclipse.cdt.core.model.ICElement;
-import org.eclipse.cdt.core.model.IDeclaration;
-import org.eclipse.cdt.core.model.IFunction;
-import org.eclipse.cdt.core.model.IFunctionDeclaration;
-import org.eclipse.cdt.core.model.IMethod;
-import org.eclipse.cdt.core.model.ISourceRange;
-import org.eclipse.cdt.core.model.ITranslationUnit;
-import org.eclipse.cdt.core.model.IVariable;
-import org.eclipse.cdt.debug.core.CDIDebugModel;
-import org.eclipse.cdt.debug.core.model.ICFunctionBreakpoint;
-import org.eclipse.cdt.debug.core.model.ICLineBreakpoint;
-import org.eclipse.cdt.debug.core.model.ICWatchpoint;
-import org.eclipse.cdt.debug.internal.ui.IInternalCDebugUIConstants;
-import org.eclipse.cdt.debug.internal.ui.views.disassembly.DisassemblyEditorInput;
-import org.eclipse.cdt.debug.internal.ui.views.disassembly.DisassemblyView;
-import org.eclipse.cdt.debug.ui.CDebugUIPlugin;
-import org.eclipse.core.resources.IFile;
-import org.eclipse.core.resources.IResource;
-import org.eclipse.core.resources.IWorkspaceRoot;
-import org.eclipse.core.resources.ResourcesPlugin;
-import org.eclipse.core.runtime.CoreException;
-import org.eclipse.core.runtime.IPath;
-import org.eclipse.core.runtime.IStatus;
-import org.eclipse.core.runtime.Path;
-import org.eclipse.core.runtime.Status;
-import org.eclipse.debug.core.DebugPlugin;
-import org.eclipse.debug.ui.actions.IToggleBreakpointsTarget;
-import org.eclipse.jface.text.IDocument;
-import org.eclipse.jface.text.ITextSelection;
-import org.eclipse.jface.viewers.ISelection;
-import org.eclipse.jface.viewers.IStructuredSelection;
-import org.eclipse.jface.window.Window;
-import org.eclipse.ui.IEditorInput;
-import org.eclipse.ui.IEditorPart;
-import org.eclipse.ui.IFileEditorInput;
-import org.eclipse.ui.IPathEditorInput;
-import org.eclipse.ui.IStorageEditorInput;
-import org.eclipse.ui.IWorkbenchPart;
-import org.eclipse.ui.editors.text.ILocationProvider;
-import org.eclipse.ui.texteditor.IEditorStatusLine;
-import org.eclipse.ui.texteditor.ITextEditor;
-
-/**
- * Toggles a line breakpoint in a C/C++ editor.
- */
-public class ToggleBreakpointAdapter implements IToggleBreakpointsTarget {
-
- /* (non-Javadoc)
- * @see org.eclipse.debug.ui.actions.IToggleBreakpointsTarget#toggleLineBreakpoints(org.eclipse.ui.IWorkbenchPart, org.eclipse.jface.viewers.ISelection)
- */
- public void toggleLineBreakpoints( IWorkbenchPart part, ISelection selection ) throws CoreException {
- String errorMessage = null;
- if ( part instanceof ITextEditor ) {
- ITextEditor textEditor = (ITextEditor)part;
- IEditorInput input = textEditor.getEditorInput();
- if ( input == null ) {
- errorMessage = ActionMessages.getString( "ToggleBreakpointAdapter.Empty_editor_1" ); //$NON-NLS-1$
- }
- else {
- IDocument document = textEditor.getDocumentProvider().getDocument( input );
- if ( document == null ) {
- errorMessage = ActionMessages.getString( "ToggleBreakpointAdapter.Missing_document_1" ); //$NON-NLS-1$
- }
- else {
- IResource resource = getResource( textEditor );
- if ( resource == null ) {
- errorMessage = ActionMessages.getString( "ToggleBreakpointAdapter.Missing_resource_1" ); //$NON-NLS-1$
- }
- else {
- BreakpointLocationVerifier bv = new BreakpointLocationVerifier();
- int lineNumber = bv.getValidLineBreakpointLocation( document, ((ITextSelection)selection).getStartLine() );
- if ( lineNumber == -1 ) {
- errorMessage = ActionMessages.getString( "ToggleBreakpointAdapter.Invalid_line_1" ); //$NON-NLS-1$
- }
- else {
- String sourceHandle = getSourceHandle( input );
- ICLineBreakpoint breakpoint = CDIDebugModel.lineBreakpointExists( sourceHandle, resource, lineNumber );
- if ( breakpoint != null ) {
- DebugPlugin.getDefault().getBreakpointManager().removeBreakpoint( breakpoint, true );
- }
- else {
- CDIDebugModel.createLineBreakpoint( sourceHandle,
- resource,
- lineNumber,
- true,
- 0,
- "", //$NON-NLS-1$
- true );
- }
- return;
- }
- }
- }
- }
- }
- else if ( part instanceof DisassemblyView ) {
- IEditorInput input = ((DisassemblyView)part).getInput();
- if ( !(input instanceof DisassemblyEditorInput) ) {
- errorMessage = ActionMessages.getString( "ToggleBreakpointAdapter.Empty_editor_1" ); //$NON-NLS-1$
- }
- else {
- BreakpointLocationVerifier bv = new BreakpointLocationVerifier();
- int lineNumber = bv.getValidAddressBreakpointLocation( null, ((ITextSelection)selection).getStartLine() );
- if ( lineNumber == -1 ) {
- errorMessage = ActionMessages.getString( "ToggleBreakpointAdapter.Invalid_line_1" ); //$NON-NLS-1$
- }
- else {
- IAddress address = ((DisassemblyEditorInput)input).getAddress( lineNumber );
- if ( address == null ) {
- errorMessage = ActionMessages.getString( "ToggleBreakpointAdapter.Invalid_line_1" ); //$NON-NLS-1$
- }
- else {
- ICLineBreakpoint breakpoint = ((DisassemblyEditorInput)input).breakpointExists( address );
- if ( breakpoint != null ) {
- DebugPlugin.getDefault().getBreakpointManager().removeBreakpoint( breakpoint, true );
- }
- else {
- String module = ((DisassemblyEditorInput)input).getModuleFile();
- IResource resource = getAddressBreakpointResource( ((DisassemblyEditorInput)input).getSourceFile() );
- String sourceHandle = getSourceHandle( input );
- CDIDebugModel.createAddressBreakpoint( module,
- sourceHandle,
- resource,
- ((DisassemblyEditorInput)input).getSourceLine( lineNumber ),
- address,
- true,
- 0,
- "", //$NON-NLS-1$
- true );
- }
- return;
- }
- }
- }
- }
- else {
- errorMessage = ActionMessages.getString( "RunToLineAdapter.Operation_is_not_supported_1" ); //$NON-NLS-1$
- }
- throw new CoreException( new Status( IStatus.ERROR, CDebugUIPlugin.getUniqueIdentifier(), IInternalCDebugUIConstants.INTERNAL_ERROR, errorMessage, null ) );
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.debug.ui.actions.IToggleBreakpointsTarget#canToggleLineBreakpoints(org.eclipse.ui.IWorkbenchPart, org.eclipse.jface.viewers.ISelection)
- */
- public boolean canToggleLineBreakpoints( IWorkbenchPart part, ISelection selection ) {
- if ( part instanceof DisassemblyView ) {
- IEditorInput input = ((DisassemblyView)part).getInput();
- if ( !(input instanceof DisassemblyEditorInput) ||
- ((DisassemblyEditorInput)input).equals( DisassemblyEditorInput.EMPTY_EDITOR_INPUT ) ) {
- return false;
- }
- }
- return ( selection instanceof ITextSelection );
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.debug.ui.actions.IToggleBreakpointsTarget#toggleMethodBreakpoints(org.eclipse.ui.IWorkbenchPart, org.eclipse.jface.viewers.ISelection)
- */
- public void toggleMethodBreakpoints( IWorkbenchPart part, ISelection selection ) throws CoreException {
- if ( selection instanceof ITextSelection ) {
- String text = ((ITextSelection)selection).getText();
- if ( text != null ) {
- IResource resource = getResource( part );
- if ( resource instanceof IFile ) {
- ITranslationUnit tu = getTranslationUnit( (IFile)resource );
- if ( tu != null ) {
- try {
- ICElement element = tu.getElement( text.trim() );
- if ( element instanceof IFunction || element instanceof IMethod ) {
- toggleMethodBreakpoints0( (IDeclaration)element );
- }
- }
- catch( CModelException e ) {
- }
- }
- }
- }
- }
- else if ( selection instanceof IStructuredSelection ) {
- IStructuredSelection ss = (IStructuredSelection)selection;
- if ( ss.size() == 1 && (ss.getFirstElement() instanceof IFunction || ss.getFirstElement() instanceof IMethod) ) {
- toggleMethodBreakpoints0( (IDeclaration)ss.getFirstElement() );
- }
- }
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.debug.ui.actions.IToggleBreakpointsTarget#canToggleMethodBreakpoints(org.eclipse.ui.IWorkbenchPart, org.eclipse.jface.viewers.ISelection)
- */
- public boolean canToggleMethodBreakpoints( IWorkbenchPart part, ISelection selection ) {
- if ( selection instanceof ITextSelection ) {
- String text = ((ITextSelection)selection).getText();
- if ( text != null ) {
- IResource resource = getResource( part );
- if ( resource instanceof IFile ) {
- ITranslationUnit tu = getTranslationUnit( (IFile)resource );
- if ( tu != null ) {
- try {
- ICElement element = tu.getElement( text.trim() );
- return ( element instanceof IFunction || element instanceof IMethod );
- }
- catch( CModelException e ) {
- }
- }
- }
- }
- }
- else if ( selection instanceof IStructuredSelection ) {
- IStructuredSelection ss = (IStructuredSelection)selection;
- if ( ss.size() == 1 ) {
- return ( ss.getFirstElement() instanceof IFunction || ss.getFirstElement() instanceof IMethod );
- }
- }
- return false;
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.debug.ui.actions.IToggleBreakpointsTarget#toggleWatchpoints(org.eclipse.ui.IWorkbenchPart, org.eclipse.jface.viewers.ISelection)
- */
- public void toggleWatchpoints( IWorkbenchPart part, ISelection selection ) throws CoreException {
- if ( selection instanceof ITextSelection ) {
- String text = ((ITextSelection)selection).getText();
- if ( text != null ) {
- IResource resource = getResource( part );
- if ( resource instanceof IFile ) {
- ITranslationUnit tu = getTranslationUnit( (IFile)resource );
- if ( tu != null ) {
- try {
- ICElement element = tu.getElement( text.trim() );
- if ( element instanceof IVariable ) {
- toggleVariableWatchpoint( part, (IVariable)element );
- }
- }
- catch( CModelException e ) {
- }
- }
- }
- }
- }
- else if ( selection instanceof IStructuredSelection ) {
- IStructuredSelection ss = (IStructuredSelection)selection;
- if ( ss.size() == 1 && ss.getFirstElement() instanceof IVariable ) {
- toggleVariableWatchpoint( part, (IVariable)ss.getFirstElement() );
- }
- }
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.debug.ui.actions.IToggleBreakpointsTarget#canToggleWatchpoints(org.eclipse.ui.IWorkbenchPart, org.eclipse.jface.viewers.ISelection)
- */
- public boolean canToggleWatchpoints( IWorkbenchPart part, ISelection selection ) {
- if ( selection instanceof ITextSelection ) {
- String text = ((ITextSelection)selection).getText();
- if ( text != null ) {
- IResource resource = getResource( part );
- if ( resource instanceof IFile ) {
- ITranslationUnit tu = getTranslationUnit( (IFile)resource );
- if ( tu != null ) {
- try {
- return ( tu.getElement( text.trim() ) instanceof IVariable );
- }
- catch( CModelException e ) {
- }
- }
- }
- }
- }
- else if ( selection instanceof IStructuredSelection ) {
- IStructuredSelection ss = (IStructuredSelection)selection;
- if ( ss.size() == 1 ) {
- return ( ss.getFirstElement() instanceof IVariable );
- }
- }
- return false;
- }
-
- protected void report( String message, IWorkbenchPart part ) {
- IEditorStatusLine statusLine = (IEditorStatusLine)part.getAdapter( IEditorStatusLine.class );
- if ( statusLine != null ) {
- if ( message != null ) {
- statusLine.setMessage( true, message, null );
- }
- else {
- statusLine.setMessage( true, null, null );
- }
- }
- if ( message != null && CDebugUIPlugin.getActiveWorkbenchShell() != null ) {
- CDebugUIPlugin.getActiveWorkbenchShell().getDisplay().beep();
- }
- }
-
- protected static IResource getResource( IWorkbenchPart part ) {
- IWorkspaceRoot root = ResourcesPlugin.getWorkspace().getRoot();
- if ( part instanceof IEditorPart ) {
- IEditorInput editorInput = ((IEditorPart)part).getEditorInput();
- if ( editorInput instanceof IFileEditorInput ) {
- return ((IFileEditorInput)editorInput).getFile();
- }
- ILocationProvider provider = (ILocationProvider)editorInput.getAdapter( ILocationProvider.class );
- if ( provider != null ) {
- IPath location = provider.getPath( editorInput );
- IFile[] files = root.findFilesForLocation( location );
- if ( files.length > 0 )
- return files[0];
- }
- }
- return root;
- }
-
- private String getSourceHandle( IEditorInput input ) throws CoreException {
- if ( input instanceof IFileEditorInput ) {
- return ((IFileEditorInput)input).getFile().getLocation().toOSString();
- }
- if ( input instanceof IStorageEditorInput ) {
- return ((IStorageEditorInput)input).getStorage().getFullPath().toOSString();
- }
- if ( input instanceof IPathEditorInput ) {
- return ((IPathEditorInput)input).getPath().toOSString();
- }
- if ( input instanceof DisassemblyEditorInput ) {
- String sourceFile = ((DisassemblyEditorInput)input).getSourceFile();
- if ( sourceFile != null ) {
- return sourceFile;
- }
- return ((DisassemblyEditorInput)input).getModuleFile();
- }
- return ""; //$NON-NLS-1$
- }
-
- private void toggleVariableWatchpoint( IWorkbenchPart part, IVariable variable ) throws CoreException {
- String sourceHandle = getSourceHandle( variable );
- IResource resource = getElementResource( variable );
- String expression = getVariableName( variable );
- ICWatchpoint watchpoint = CDIDebugModel.watchpointExists( sourceHandle, resource, expression );
- if ( watchpoint != null ) {
- DebugPlugin.getDefault().getBreakpointManager().removeBreakpoint( watchpoint, true );
- }
- else {
- AddWatchpointDialog dlg = new AddWatchpointDialog( part.getSite().getShell(), true, false, expression, false );
- if ( dlg.open() != Window.OK )
- return;
- expression = dlg.getExpression();
- int lineNumber = -1;
- int charStart = -1;
- int charEnd = -1;
- try {
- ISourceRange sourceRange = variable.getSourceRange();
- if ( sourceRange != null ) {
- charStart = sourceRange.getStartPos();
- charEnd = charStart + sourceRange.getLength();
- if ( charEnd <= 0 ) {
- charStart = -1;
- charEnd = -1;
- }
- lineNumber = sourceRange.getStartLine();
- }
- }
- catch( CModelException e ) {
- DebugPlugin.log( e );
- }
- CDIDebugModel.createWatchpoint( sourceHandle,
- resource,
- charStart,
- charEnd,
- lineNumber,
- dlg.getWriteAccess(),
- dlg.getReadAccess(),
- expression,
- true,
- 0,
- "", //$NON-NLS-1$
- true );
- }
- }
-
- private String getSourceHandle( IDeclaration declaration ) {
- ITranslationUnit tu = declaration.getTranslationUnit();
- if ( tu != null ) {
- IResource resource = tu.getResource();
- if ( resource != null )
- return resource.getLocation().toOSString();
- return tu.getPath().toOSString();
- }
- return ""; //$NON-NLS-1$
- }
-
- private IResource getElementResource( IDeclaration declaration ) {
- return declaration.getUnderlyingResource();
- }
-
- private String getFunctionName( IFunction function ) {
- String functionName = function.getElementName();
- StringBuffer name = new StringBuffer( functionName );
- ITranslationUnit tu = function.getTranslationUnit();
- if ( tu != null && tu.isCXXLanguage() ) {
- appendParameters( name, function );
- }
- return name.toString();
- }
-
- private String getMethodName( IMethod method ) {
- StringBuffer name = new StringBuffer();
- String methodName = method.getElementName();
- ICElement parent = method.getParent();
- while ( parent != null && ( parent.getElementType() == ICElement.C_NAMESPACE || parent.getElementType() == ICElement.C_CLASS )
- || parent.getElementType() == ICElement.C_STRUCT || parent.getElementType() == ICElement.C_UNION) {
- name.append( parent.getElementName() ).append( "::" ); //$NON-NLS-1$
- parent = parent.getParent();
- }
- name.append( methodName );
- appendParameters( name, method );
- return name.toString();
- }
-
- private void appendParameters( StringBuffer sb, IFunctionDeclaration fd ) {
- String[] params = fd.getParameterTypes();
- sb.append( '(' );
- for( int i = 0; i < params.length; ++i ) {
- sb.append( params[i] );
- if ( i != params.length - 1 )
- sb.append( ',' );
- }
- sb.append( ')' );
- }
-
- private String getVariableName( IVariable variable ) {
- return variable.getElementName();
- }
-
- private ITranslationUnit getTranslationUnit( IFile file ) {
- Object element = CoreModel.getDefault().create( file );
- if ( element instanceof ITranslationUnit ) {
- return (ITranslationUnit)element;
- }
- return null;
- }
-
- private void toggleMethodBreakpoints0( IDeclaration declaration ) throws CoreException {
- String sourceHandle = getSourceHandle( declaration );
- IResource resource = getElementResource( declaration );
- String functionName = ( declaration instanceof IFunction ) ? getFunctionName( (IFunction)declaration ) : getMethodName( (IMethod)declaration );
- ICFunctionBreakpoint breakpoint = CDIDebugModel.functionBreakpointExists( sourceHandle, resource, functionName );
- if ( breakpoint != null ) {
- DebugPlugin.getDefault().getBreakpointManager().removeBreakpoint( breakpoint, true );
- }
- else {
- int lineNumber = -1;
- int charStart = -1;
- int charEnd = -1;
- try {
- ISourceRange sourceRange = declaration.getSourceRange();
- if ( sourceRange != null ) {
- charStart = sourceRange.getStartPos();
- charEnd = charStart + sourceRange.getLength();
- if ( charEnd <= 0 ) {
- charStart = -1;
- charEnd = -1;
- }
- lineNumber = sourceRange.getStartLine();
- }
- }
- catch( CModelException e ) {
- DebugPlugin.log( e );
- }
- CDIDebugModel.createFunctionBreakpoint( sourceHandle,
- resource,
- functionName,
- charStart,
- charEnd,
- lineNumber,
- true,
- 0,
- "", //$NON-NLS-1$
- true );
- }
- }
-
- private IResource getAddressBreakpointResource( String fileName ) {
- if ( fileName != null ) {
- IPath path = new Path( fileName );
- if ( path.isValidPath( fileName ) ) {
- IFile[] files = ResourcesPlugin.getWorkspace().getRoot().findFilesForLocation( path );
- if ( files.length > 0 )
- return files[0];
- }
- }
- return ResourcesPlugin.getWorkspace().getRoot();
- }
-}
diff --git a/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/actions/ToggleBreakpointRulerAction.java b/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/actions/ToggleBreakpointRulerAction.java
deleted file mode 100644
index 7db845fec30..00000000000
--- a/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/actions/ToggleBreakpointRulerAction.java
+++ /dev/null
@@ -1,136 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004, 2005 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.internal.ui.actions;
-
-import org.eclipse.cdt.debug.internal.ui.ICDebugHelpContextIds;
-import org.eclipse.cdt.debug.internal.ui.IInternalCDebugUIConstants;
-import org.eclipse.cdt.debug.internal.ui.views.disassembly.DisassemblyView;
-import org.eclipse.core.runtime.CoreException;
-import org.eclipse.debug.core.DebugPlugin;
-import org.eclipse.jface.action.Action;
-import org.eclipse.jface.dialogs.ErrorDialog;
-import org.eclipse.jface.text.BadLocationException;
-import org.eclipse.jface.text.IDocument;
-import org.eclipse.jface.text.IRegion;
-import org.eclipse.jface.text.TextSelection;
-import org.eclipse.jface.text.source.IVerticalRulerInfo;
-import org.eclipse.jface.viewers.ISelection;
-import org.eclipse.ui.IWorkbenchPart;
-import org.eclipse.ui.texteditor.IDocumentProvider;
-import org.eclipse.ui.texteditor.ITextEditor;
-
-public class ToggleBreakpointRulerAction extends Action {
-
- static class EmptySelection implements ISelection {
-
- public boolean isEmpty() {
- return true;
- }
- }
-
- private IVerticalRulerInfo fRuler;
- private IWorkbenchPart fTargetPart;
- private ToggleBreakpointAdapter fBreakpointAdapter;
- private static final ISelection EMPTY_SELECTION = new EmptySelection();
-
- /**
- * Constructor for ToggleBreakpointRulerAction.
- *
- * @param ruler
- * @param editor
- */
- public ToggleBreakpointRulerAction( IWorkbenchPart part, IVerticalRulerInfo ruler ) {
- super( ActionMessages.getString( "ToggleBreakpointRulerAction.Toggle_Breakpoint_1" ) ); //$NON-NLS-1$
- fRuler = ruler;
- setTargetPart( part );
- fBreakpointAdapter = new ToggleBreakpointAdapter();
- part.getSite().getWorkbenchWindow().getWorkbench().getHelpSystem().setHelp( this, ICDebugHelpContextIds.TOGGLE_BREAKPOINT_ACTION );
- setId( IInternalCDebugUIConstants.ACTION_TOGGLE_BREAKPOINT );
- }
-
- /**
- * Disposes this action
- */
- public void dispose() {
- setTargetPart( null );
- fRuler = null;
- }
-
- /**
- * @see Action#run()
- */
- public void run() {
- try {
- fBreakpointAdapter.toggleLineBreakpoints( getTargetPart(), getTargetSelection() );
- }
- catch( CoreException e ) {
- ErrorDialog.openError( getTargetPart().getSite().getShell(),
- ActionMessages.getString( "ToggleBreakpointRulerAction.Error_1" ), //$NON-NLS-1$
- ActionMessages.getString( "ToggleBreakpointRulerAction.Operation_failed_1" ), //$NON-NLS-1$
- e.getStatus() );
- }
- }
-
- /**
- * Returns this action's vertical ruler info.
- *
- * @return this action's vertical ruler
- */
- protected IVerticalRulerInfo getVerticalRulerInfo() {
- return fRuler;
- }
-
- private IWorkbenchPart getTargetPart() {
- return this.fTargetPart;
- }
-
- private void setTargetPart( IWorkbenchPart targetPart ) {
- this.fTargetPart = targetPart;
- }
-
- /**
- * Returns the current selection in the active part, possibly
- * and empty selection, but never <code>null</code>.
- *
- * @return the selection in the active part, possibly empty
- */
- private ISelection getTargetSelection() {
- IDocument doc = getDocument();
- if ( doc != null ) {
- int line = getVerticalRulerInfo().getLineOfLastMouseButtonActivity();
- try {
- IRegion region = doc.getLineInformation( line );
- return new TextSelection( doc, region.getOffset(), region.getLength() );
- }
- catch( BadLocationException e ) {
- DebugPlugin.log( e );
- }
- }
- return EMPTY_SELECTION;
- }
-
- private IDocument getDocument() {
- IWorkbenchPart targetPart = getTargetPart();
- if ( targetPart instanceof ITextEditor ) {
- ITextEditor textEditor = (ITextEditor)targetPart;
- IDocumentProvider provider = textEditor.getDocumentProvider();
- if ( provider != null )
- return provider.getDocument( textEditor.getEditorInput() );
- }
- else if ( targetPart instanceof DisassemblyView ) {
- DisassemblyView dv = (DisassemblyView)targetPart;
- IDocumentProvider provider = dv.getDocumentProvider();
- if ( provider != null )
- return provider.getDocument( dv.getInput() );
- }
- return null;
- }
-}
diff --git a/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/actions/ToggleDetailPaneAction.java b/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/actions/ToggleDetailPaneAction.java
deleted file mode 100644
index 2916bbd897c..00000000000
--- a/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/actions/ToggleDetailPaneAction.java
+++ /dev/null
@@ -1,87 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004, 2005 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.internal.ui.actions;
-
-import org.eclipse.cdt.debug.internal.ui.CDebugImages;
-import org.eclipse.cdt.debug.internal.ui.ICDebugHelpContextIds;
-import org.eclipse.cdt.debug.internal.ui.preferences.ICDebugPreferenceConstants;
-import org.eclipse.cdt.debug.internal.ui.views.modules.ModulesView;
-import org.eclipse.jface.action.Action;
-
-/**
- * Action that controls the appearance of the details pane in debug views
- * such as the modules view. Instances of this class can be created to show
- * the detail pane underneath the main tree, to the right of the main tree,
- * or not shown at all.
- */
-public class ToggleDetailPaneAction extends Action {
-
- private ModulesView fModulesView;
-
- private String fOrientation;
-
- /**
- * Constructor for ToggleDetailPaneAction.
- */
- public ToggleDetailPaneAction( ModulesView view, String orientation, String hiddenLabel ) {
- super( "", AS_RADIO_BUTTON ); //$NON-NLS-1$
- setModulesView( view );
- setOrientation( orientation );
- if ( orientation == ICDebugPreferenceConstants.MODULES_DETAIL_PANE_UNDERNEATH ) {
- setText( ActionMessages.getString( "ToggleDetailPaneAction.0" ) ); //$NON-NLS-1$
- setToolTipText( ActionMessages.getString( "ToggleDetailPaneAction.1" ) ); //$NON-NLS-1$
- setDescription( ActionMessages.getString( "ToggleDetailPaneAction.2" ) ); //$NON-NLS-1$
- setImageDescriptor( CDebugImages.DESC_LCL_DETAIL_PANE_UNDER );
- setDisabledImageDescriptor( CDebugImages.DESC_LCL_DETAIL_PANE_UNDER_DISABLED );
- setHoverImageDescriptor( CDebugImages.DESC_LCL_DETAIL_PANE_UNDER );
- }
- else if ( orientation == ICDebugPreferenceConstants.MODULES_DETAIL_PANE_RIGHT ) {
- setText( ActionMessages.getString( "ToggleDetailPaneAction.3" ) ); //$NON-NLS-1$
- setToolTipText( ActionMessages.getString( "ToggleDetailPaneAction.4" ) ); //$NON-NLS-1$
- setDescription( ActionMessages.getString( "ToggleDetailPaneAction.5" ) ); //$NON-NLS-1$
- setImageDescriptor( CDebugImages.DESC_LCL_DETAIL_PANE_RIGHT );
- setDisabledImageDescriptor( CDebugImages.DESC_LCL_DETAIL_PANE_RIGHT_DISABLED );
- setHoverImageDescriptor( CDebugImages.DESC_LCL_DETAIL_PANE_RIGHT );
- }
- else {
- setText( hiddenLabel );
- setToolTipText( ActionMessages.getString( "ToggleDetailPaneAction.6" ) ); //$NON-NLS-1$
- setDescription( ActionMessages.getString( "ToggleDetailPaneAction.7" ) ); //$NON-NLS-1$
- setImageDescriptor( CDebugImages.DESC_LCL_DETAIL_PANE_HIDE );
- setDisabledImageDescriptor( CDebugImages.DESC_LCL_DETAIL_PANE_HIDE_DISABLED );
- setHoverImageDescriptor( CDebugImages.DESC_LCL_DETAIL_PANE_HIDE );
- }
- view.getSite().getWorkbenchWindow().getWorkbench().getHelpSystem().setHelp( this, ICDebugHelpContextIds.SHOW_DETAIL_PANE_ACTION );
- }
-
- private ModulesView getModulesView() {
- return fModulesView;
- }
-
- private void setModulesView( ModulesView modulesView ) {
- fModulesView = modulesView;
- }
-
- private void setOrientation( String orientation ) {
- fOrientation = orientation;
- }
-
- public String getOrientation() {
- return fOrientation;
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.jface.action.IAction#run()
- */
- public void run() {
- getModulesView().setDetailPaneOrientation( getOrientation() );
- }
-}
diff --git a/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/actions/ToggleInstructionStepModeActionDelegate.java b/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/actions/ToggleInstructionStepModeActionDelegate.java
deleted file mode 100644
index f2eff78b361..00000000000
--- a/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/actions/ToggleInstructionStepModeActionDelegate.java
+++ /dev/null
@@ -1,157 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004, 2005 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.internal.ui.actions;
-
-import org.eclipse.cdt.debug.core.model.ICDebugTarget;
-import org.eclipse.cdt.debug.ui.CDebugUIPlugin;
-import org.eclipse.cdt.debug.ui.ICDebugUIConstants;
-import org.eclipse.core.runtime.Preferences.IPropertyChangeListener;
-import org.eclipse.core.runtime.Preferences.PropertyChangeEvent;
-import org.eclipse.debug.core.model.IDebugElement;
-import org.eclipse.debug.core.model.IDebugTarget;
-import org.eclipse.jface.action.IAction;
-import org.eclipse.jface.viewers.ISelection;
-import org.eclipse.jface.viewers.IStructuredSelection;
-import org.eclipse.swt.widgets.Event;
-import org.eclipse.ui.IViewActionDelegate;
-import org.eclipse.ui.IViewPart;
-import org.eclipse.ui.PartInitException;
-import org.eclipse.ui.actions.ActionDelegate;
-
-/**
- * Turns instruction step mode on/off for selected target.
- */
-public class ToggleInstructionStepModeActionDelegate extends ActionDelegate implements IViewActionDelegate, IPropertyChangeListener {
-
- private ICDebugTarget fTarget = null;
-
- private IAction fAction = null;
-
- private IViewPart fView;
-
- /* (non-Javadoc)
- * @see org.eclipse.core.runtime.Preferences.IPropertyChangeListener#propertyChange(org.eclipse.core.runtime.Preferences.PropertyChangeEvent)
- */
- public void propertyChange( PropertyChangeEvent event ) {
- IAction action = getAction();
- if ( action != null ) {
- if ( event.getNewValue() instanceof Boolean ) {
- boolean value = ((Boolean)event.getNewValue()).booleanValue();
- if ( value != action.isChecked() )
- action.setChecked( value );
- }
- }
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.ui.IViewActionDelegate#init(org.eclipse.ui.IViewPart)
- */
- public void init( IViewPart view ) {
- fView = view;
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.ui.IActionDelegate2#dispose()
- */
- public void dispose() {
- ICDebugTarget target = getTarget();
- if ( target != null )
- target.removePropertyChangeListener( this );
- setTarget( null );
- setAction( null );
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.ui.IActionDelegate2#init(org.eclipse.jface.action.IAction)
- */
- public void init( IAction action ) {
- setAction( action );
- action.setChecked( false );
- action.setEnabled( false );
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.ui.IActionDelegate#run(org.eclipse.jface.action.IAction)
- */
- public void run( IAction action ) {
- boolean enabled = getAction().isChecked();
- ICDebugTarget target = getTarget();
- if ( target != null ) {
- target.enableInstructionStepping( enabled );
- if ( enabled ) {
- try {
- getView().getSite().getPage().showView( ICDebugUIConstants.ID_DISASSEMBLY_VIEW );
- }
- catch( PartInitException e ) {
- CDebugUIPlugin.log( e.getStatus() );
- }
- }
- }
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.ui.IActionDelegate2#runWithEvent(org.eclipse.jface.action.IAction, org.eclipse.swt.widgets.Event)
- */
- public void runWithEvent( IAction action, Event event ) {
- run( action );
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.ui.IActionDelegate#selectionChanged(org.eclipse.jface.action.IAction, org.eclipse.jface.viewers.ISelection)
- */
- public void selectionChanged( IAction action, ISelection selection ) {
- ICDebugTarget newTarget = null;
- if ( selection instanceof IStructuredSelection ) {
- newTarget = getTargetFromSelection( ((IStructuredSelection)selection).getFirstElement() );
- }
- ICDebugTarget oldTarget = getTarget();
- if ( oldTarget != null && !oldTarget.equals( newTarget ) ) {
- oldTarget.removePropertyChangeListener( this );
- setTarget( null );
- action.setChecked( false );
- }
- if ( newTarget != null && !newTarget.isTerminated() && !newTarget.isDisconnected() ) {
- setTarget( newTarget );
- newTarget.addPropertyChangeListener( this );
- action.setChecked( newTarget.isInstructionSteppingEnabled() );
- }
- action.setEnabled( newTarget != null && newTarget.supportsInstructionStepping()
- && !newTarget.isTerminated() && !newTarget.isDisconnected() );
- }
-
- private ICDebugTarget getTarget() {
- return this.fTarget;
- }
-
- private void setTarget( ICDebugTarget target ) {
- this.fTarget = target;
- }
-
- private IAction getAction() {
- return this.fAction;
- }
-
- private void setAction( IAction action ) {
- this.fAction = action;
- }
-
- private ICDebugTarget getTargetFromSelection( Object element ) {
- if ( element instanceof IDebugElement ) {
- IDebugTarget target = ((IDebugElement)element).getDebugTarget();
- return ( target instanceof ICDebugTarget ) ? (ICDebugTarget)target : null;
- }
- return null;
- }
-
- private IViewPart getView() {
- return fView;
- }
-}
diff --git a/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/actions/ToggleWatchpointActionDelegate.java b/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/actions/ToggleWatchpointActionDelegate.java
deleted file mode 100644
index 21638332b84..00000000000
--- a/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/actions/ToggleWatchpointActionDelegate.java
+++ /dev/null
@@ -1,84 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004, 2005 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.internal.ui.actions;
-
-import org.eclipse.core.runtime.CoreException;
-import org.eclipse.jface.action.IAction;
-import org.eclipse.jface.dialogs.ErrorDialog;
-import org.eclipse.jface.viewers.ISelection;
-import org.eclipse.ui.IObjectActionDelegate;
-import org.eclipse.ui.IWorkbenchPart;
-import org.eclipse.ui.actions.ActionDelegate;
-
-/**
- * The delegate of the "Toggle Watchpoint" action.
- */
-public class ToggleWatchpointActionDelegate extends ActionDelegate implements IObjectActionDelegate {
-
- private ToggleBreakpointAdapter fBreakpointAdapter;
-
- private IWorkbenchPart fTargetPart;
-
- private ISelection fSelection;
-
- /**
- * Constructor for ToggleWatchpointActionDelegate.
- */
- public ToggleWatchpointActionDelegate() {
- fBreakpointAdapter = new ToggleBreakpointAdapter();
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.ui.IObjectActionDelegate#setActivePart(org.eclipse.jface.action.IAction, org.eclipse.ui.IWorkbenchPart)
- */
- public void setActivePart( IAction action, IWorkbenchPart targetPart ) {
- fTargetPart = targetPart;
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.ui.IActionDelegate#run(org.eclipse.jface.action.IAction)
- */
- public void run( IAction action ) {
- try {
- getBreakpointAdapter().toggleWatchpoints( getTargetPart(), getSelection() );
- }
- catch( CoreException e ) {
- ErrorDialog.openError( getTargetPart().getSite().getShell(),
- ActionMessages.getString( "ToggleWatchpointActionDelegate.Error_1" ), //$NON-NLS-1$
- ActionMessages.getString( "ToggleWatchpointActionDelegate.Operation_failed_1" ), //$NON-NLS-1$
- e.getStatus() );
- }
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.ui.IActionDelegate#selectionChanged(org.eclipse.jface.action.IAction, org.eclipse.jface.viewers.ISelection)
- */
- public void selectionChanged( IAction action, ISelection selection ) {
- setSelection( selection );
- action.setEnabled( getBreakpointAdapter().canToggleWatchpoints( getTargetPart(), getSelection() ) );
- }
-
- private IWorkbenchPart getTargetPart() {
- return fTargetPart;
- }
-
- private ISelection getSelection() {
- return fSelection;
- }
-
- private ToggleBreakpointAdapter getBreakpointAdapter() {
- return fBreakpointAdapter;
- }
-
- private void setSelection( ISelection selection ) {
- fSelection = selection;
- }
-}
diff --git a/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/actions/VariableFormatActionDelegate.java b/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/actions/VariableFormatActionDelegate.java
deleted file mode 100644
index 8abb3c43285..00000000000
--- a/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/actions/VariableFormatActionDelegate.java
+++ /dev/null
@@ -1,123 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.internal.ui.actions;
-
-import java.util.ArrayList;
-import java.util.Iterator;
-import java.util.List;
-import org.eclipse.cdt.debug.core.model.CVariableFormat;
-import org.eclipse.cdt.debug.core.model.ICVariable;
-import org.eclipse.cdt.debug.ui.CDebugUIPlugin;
-import org.eclipse.core.runtime.MultiStatus;
-import org.eclipse.debug.core.DebugException;
-import org.eclipse.jface.action.IAction;
-import org.eclipse.jface.viewers.ISelection;
-import org.eclipse.jface.viewers.IStructuredSelection;
-import org.eclipse.swt.custom.BusyIndicator;
-import org.eclipse.swt.widgets.Display;
-import org.eclipse.ui.IObjectActionDelegate;
-import org.eclipse.ui.IWorkbenchPart;
-import org.eclipse.ui.IWorkbenchWindow;
-
-/**
- * The superclass of the all format action delegates.
- */
-public abstract class VariableFormatActionDelegate implements IObjectActionDelegate {
-
- private CVariableFormat fFormat = CVariableFormat.NATURAL;
-
- private ICVariable[] fVariables = null;
-
- /**
- * Constructor for VariableFormatActionDelegate.
- */
- public VariableFormatActionDelegate( CVariableFormat format ) {
- fFormat = format;
- }
-
- /**
- * @see org.eclipse.ui.IObjectActionDelegate#setActivePart(IAction, IWorkbenchPart)
- */
- public void setActivePart( IAction action, IWorkbenchPart targetPart ) {
- }
-
- /**
- * @see org.eclipse.ui.IActionDelegate#run(IAction)
- */
- public void run( IAction action ) {
- ICVariable[] vars = getVariables();
- if ( vars != null && vars.length > 0 ) {
- final MultiStatus ms = new MultiStatus( CDebugUIPlugin.getUniqueIdentifier(), DebugException.REQUEST_FAILED, "", null ); //$NON-NLS-1$
- BusyIndicator.showWhile( Display.getCurrent(), new Runnable() {
-
- public void run() {
- try {
- doAction( getVariables() );
- }
- catch( DebugException e ) {
- ms.merge( e.getStatus() );
- }
- }
- } );
- if ( !ms.isOK() ) {
- IWorkbenchWindow window = CDebugUIPlugin.getActiveWorkbenchWindow();
- if ( window != null ) {
- CDebugUIPlugin.errorDialog( ActionMessages.getString( "VariableFormatActionDelegate.0" ), ms ); //$NON-NLS-1$
- }
- else {
- CDebugUIPlugin.log( ms );
- }
- }
- }
- }
-
- /**
- * @see org.eclipse.ui.IActionDelegate#selectionChanged(IAction, ISelection)
- */
- public void selectionChanged( IAction action, ISelection selection ) {
- if ( selection instanceof IStructuredSelection ) {
- List list = new ArrayList();
- IStructuredSelection ssel = (IStructuredSelection)selection;
- Iterator i = ssel.iterator();
- while( i.hasNext() ) {
- Object o = i.next();
- if ( o instanceof ICVariable ) {
- ICVariable var = (ICVariable)o;
- boolean enabled = var.supportsFormatting();
- action.setEnabled( enabled );
- if ( enabled ) {
- action.setChecked( var.getFormat() == fFormat );
- list.add( o );
- }
- }
- }
- setVariables( (ICVariable[])list.toArray( new ICVariable[list.size()] ) );
- }
- else {
- action.setChecked( false );
- action.setEnabled( false );
- }
- }
-
- protected void doAction( ICVariable[] vars ) throws DebugException {
- for( int i = 0; i < vars.length; i++ ) {
- vars[i].changeFormat( fFormat );
- }
- }
-
- protected ICVariable[] getVariables() {
- return fVariables;
- }
-
- private void setVariables( ICVariable[] variables ) {
- fVariables = variables;
- }
-}
diff --git a/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/actions/ViewFilterAction.java b/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/actions/ViewFilterAction.java
deleted file mode 100644
index 643b7134a85..00000000000
--- a/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/actions/ViewFilterAction.java
+++ /dev/null
@@ -1,151 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.internal.ui.actions;
-
-import org.eclipse.debug.ui.IDebugView;
-import org.eclipse.cdt.debug.ui.CDebugUIPlugin;
-import org.eclipse.jface.action.IAction;
-import org.eclipse.jface.preference.IPreferenceStore;
-import org.eclipse.jface.viewers.ISelection;
-import org.eclipse.jface.viewers.StructuredViewer;
-import org.eclipse.jface.viewers.Viewer;
-import org.eclipse.jface.viewers.ViewerFilter;
-import org.eclipse.swt.widgets.Event;
-import org.eclipse.ui.IActionDelegate2;
-import org.eclipse.ui.IViewActionDelegate;
-import org.eclipse.ui.IViewPart;
-
-/**
- * A base class for the view filtering actions.
- */
-public abstract class ViewFilterAction extends ViewerFilter implements IViewActionDelegate, IActionDelegate2 {
-
- private IViewPart fView;
- private IAction fAction;
-
- public ViewFilterAction() {
- super();
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.ui.IViewActionDelegate#init(org.eclipse.ui.IViewPart)
- */
- public void init(IViewPart view) {
- fView = view;
- fAction.setChecked(getPreferenceValue(view));
- run(fAction);
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.ui.IActionDelegate2#init(org.eclipse.jface.action.IAction)
- */
- public void init(IAction action) {
- fAction = action;
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.ui.IActionDelegate2#dispose()
- */
- public void dispose() {
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.ui.IActionDelegate2#runWithEvent(org.eclipse.jface.action.IAction, org.eclipse.swt.widgets.Event)
- */
- public void runWithEvent(IAction action, Event event) {
- run(action);
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.ui.IActionDelegate#run(org.eclipse.jface.action.IAction)
- */
- public void run(IAction action) {
- StructuredViewer viewer = getStructuredViewer();
- ViewerFilter[] filters = viewer.getFilters();
- ViewerFilter filter = null;
- for (int i = 0; i < filters.length; i++) {
- if (filters[i] == this) {
- filter = filters[i];
- break;
- }
- }
- if (filter == null) {
- viewer.addFilter(this);
- }
- viewer.refresh();
- IPreferenceStore store = getPreferenceStore();
- String key = getView().getSite().getId() + "." + getPreferenceKey(); //$NON-NLS-1$
- store.setValue(key, action.isChecked());
- CDebugUIPlugin.getDefault().savePluginPreferences();
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.ui.IActionDelegate#selectionChanged(org.eclipse.jface.action.IAction, org.eclipse.jface.viewers.ISelection)
- */
- public void selectionChanged(IAction action, ISelection selection) {
- }
-
- protected IPreferenceStore getPreferenceStore() {
- return CDebugUIPlugin.getDefault().getPreferenceStore();
- }
-
- /**
- * Returns the value of this filters preference (on/off) for the given
- * view.
- *
- * @param part
- * @return boolean
- */
- protected boolean getPreferenceValue(IViewPart part) {
- String baseKey = getPreferenceKey();
- String viewKey = part.getSite().getId();
- String compositeKey = viewKey + "." + baseKey; //$NON-NLS-1$
- IPreferenceStore store = getPreferenceStore();
- boolean value = false;
- if (store.contains(compositeKey)) {
- value = store.getBoolean(compositeKey);
- } else {
- value = store.getBoolean(baseKey);
- }
- return value;
- }
-
- /**
- * Returns the key for this action's preference
- *
- * @return String
- */
- protected abstract String getPreferenceKey();
-
- protected IViewPart getView() {
- return fView;
- }
-
- protected StructuredViewer getStructuredViewer() {
- IDebugView view = (IDebugView)getView().getAdapter(IDebugView.class);
- if (view != null) {
- Viewer viewer = view.getViewer();
- if (viewer instanceof StructuredViewer) {
- return (StructuredViewer)viewer;
- }
- }
- return null;
- }
-
- /**
- * Returns whether this action is seleted/checked.
- *
- * @return whether this action is seleted/checked
- */
- protected boolean getValue() {
- return fAction.isChecked();
- }
-}
diff --git a/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/actions/WatchpointExpressionVerifier.java b/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/actions/WatchpointExpressionVerifier.java
deleted file mode 100644
index 5335df117bf..00000000000
--- a/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/actions/WatchpointExpressionVerifier.java
+++ /dev/null
@@ -1,31 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.internal.ui.actions;
-
-import org.eclipse.jface.text.IDocument;
-
-/**
- *
- * Enter type comment.
- *
- * @since Sep 5, 2002
- */
-public class WatchpointExpressionVerifier
-{
- /**
- * Returns whether the specified expression is valid for a watchpoint.
- */
- public boolean isValidExpression( IDocument doc, String expression )
- {
- // for now
- return expression.trim().length() > 0;
- }
-}
diff --git a/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/dialogfields/CheckedListDialogField.java b/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/dialogfields/CheckedListDialogField.java
deleted file mode 100644
index 7732f521563..00000000000
--- a/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/dialogfields/CheckedListDialogField.java
+++ /dev/null
@@ -1,222 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.internal.ui.dialogfields;
-
-import java.util.ArrayList;
-import java.util.List;
-
-import org.eclipse.jface.util.Assert;
-import org.eclipse.jface.viewers.CheckStateChangedEvent;
-import org.eclipse.jface.viewers.CheckboxTableViewer;
-import org.eclipse.jface.viewers.ICheckStateListener;
-import org.eclipse.jface.viewers.ILabelProvider;
-import org.eclipse.jface.viewers.ISelection;
-import org.eclipse.jface.viewers.TableViewer;
-import org.eclipse.swt.SWT;
-import org.eclipse.swt.widgets.Composite;
-import org.eclipse.swt.widgets.Control;
-import org.eclipse.swt.widgets.Table;
-
-/**
- * A list with checkboxes and a button bar. Typical buttons are 'Check All' and 'Uncheck All'.
- * List model is independend of widget creation.
- * DialogFields controls are: Label, List and Composite containing buttons.
- */
-public class CheckedListDialogField extends ListDialogField {
-
- private int fCheckAllButtonIndex;
- private int fUncheckAllButtonIndex;
-
- private List fCheckElements;
-
- public CheckedListDialogField(IListAdapter adapter, String[] customButtonLabels, ILabelProvider lprovider) {
- super(adapter, customButtonLabels, lprovider);
- fCheckElements= new ArrayList();
-
- fCheckAllButtonIndex= -1;
- fUncheckAllButtonIndex= -1;
- }
-
- /**
- * Sets the index of the 'check' button in the button label array passed in the constructor.
- * The behaviour of the button marked as the check button will then be handled internally.
- * (enable state, button invocation behaviour)
- */
- public void setCheckAllButtonIndex(int checkButtonIndex) {
- Assert.isTrue(checkButtonIndex < fButtonLabels.length);
- fCheckAllButtonIndex= checkButtonIndex;
- }
-
- /**
- * Sets the index of the 'uncheck' button in the button label array passed in the constructor.
- * The behaviour of the button marked as the uncheck button will then be handled internally.
- * (enable state, button invocation behaviour)
- */
- public void setUncheckAllButtonIndex(int uncheckButtonIndex) {
- Assert.isTrue(uncheckButtonIndex < fButtonLabels.length);
- fUncheckAllButtonIndex= uncheckButtonIndex;
- }
-
-
- /*
- * @see ListDialogField#createTableViewer
- */
- protected TableViewer createTableViewer(Composite parent) {
- Table table= new Table(parent, SWT.CHECK + getListStyle());
- CheckboxTableViewer tableViewer= new CheckboxTableViewer(table);
- tableViewer.addCheckStateListener(new ICheckStateListener() {
- public void checkStateChanged(CheckStateChangedEvent e) {
- doCheckStateChanged(e);
- }
- });
- return tableViewer;
- }
-
-
- /*
- * @see ListDialogField#getListControl
- */
- public Control getListControl(Composite parent) {
- Control control= super.getListControl(parent);
- if (parent != null) {
- ((CheckboxTableViewer)fTable).setCheckedElements(fCheckElements.toArray());
- }
- return control;
- }
-
- /*
- * @see DialogField#dialogFieldChanged
- * Hooks in to get element changes to update check model.
- */
- public void dialogFieldChanged() {
- for (int i= fCheckElements.size() -1; i >= 0; i--) {
- if (!fElements.contains(fCheckElements.get(i))) {
- fCheckElements.remove(i);
- }
- }
- super.dialogFieldChanged();
- }
-
- private void checkStateChanged() {
- //call super and do not update check model
- super.dialogFieldChanged();
- }
-
- /**
- * Gets the checked elements.
- */
- public List getCheckedElements() {
- return new ArrayList(fCheckElements);
- }
-
- /**
- * Returns true if the element is checked.
- */
- public boolean isChecked(Object obj) {
- return fCheckElements.contains(obj);
- }
-
- /**
- * Sets the checked elements.
- */
- public void setCheckedElements(List list) {
- fCheckElements= new ArrayList(list);
- if (fTable != null) {
- ((CheckboxTableViewer)fTable).setCheckedElements(list.toArray());
- }
- checkStateChanged();
- }
-
- /**
- * Sets the checked state of an element.
- */
- public void setChecked(Object object, boolean state) {
- setCheckedWithoutUpdate(object, state);
- checkStateChanged();
- }
-
- /**
- * Sets the checked state of an element. no dialog changed listener informed
- */
- public void setCheckedWithoutUpdate(Object object, boolean state) {
- if (state) {
- if (!fCheckElements.contains(object)) {
- fCheckElements.add(object);
- }
- }
- else {
- if (fCheckElements.contains(object)) {
- fCheckElements.remove(object);
- }
- }
- if (fTable != null) {
- ((CheckboxTableViewer)fTable).setChecked(object, state);
- }
- }
-
- /**
- * Sets the check state of all elements
- */
- public void checkAll(boolean state) {
- if (state) {
- fCheckElements= getElements();
- } else {
- fCheckElements.clear();
- }
- if (fTable != null) {
- ((CheckboxTableViewer)fTable).setAllChecked(state);
- }
- checkStateChanged();
- }
-
-
- protected void doCheckStateChanged(CheckStateChangedEvent e) {
- if (e.getChecked()) {
- fCheckElements.add(e.getElement());
- } else {
- fCheckElements.remove(e.getElement());
- }
- checkStateChanged();
- }
-
- // ------ enable / disable management
-
- /*
- * @see ListDialogField#getManagedButtonState
- */
- protected boolean getManagedButtonState(ISelection sel, int index) {
- if (index == fCheckAllButtonIndex) {
- return !fElements.isEmpty();
- } else if (index == fUncheckAllButtonIndex) {
- return !fElements.isEmpty();
- }
- return super.getManagedButtonState(sel, index);
- }
-
- /*
- * @see ListDialogField#extraButtonPressed
- */
- protected boolean managedButtonPressed(int index) {
- if (index == fCheckAllButtonIndex) {
- checkAll(true);
- } else if (index == fUncheckAllButtonIndex) {
- checkAll(false);
- } else {
- return super.managedButtonPressed(index);
- }
- return true;
- }
-
-
-
-
-
-} \ No newline at end of file
diff --git a/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/dialogfields/ComboDialogField.java b/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/dialogfields/ComboDialogField.java
deleted file mode 100644
index 215495c4fd1..00000000000
--- a/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/dialogfields/ComboDialogField.java
+++ /dev/null
@@ -1,226 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.internal.ui.dialogfields;
-
-import org.eclipse.swt.events.ModifyEvent;
-import org.eclipse.swt.events.ModifyListener;
-import org.eclipse.swt.events.SelectionEvent;
-import org.eclipse.swt.events.SelectionListener;
-import org.eclipse.swt.layout.GridData;
-import org.eclipse.swt.widgets.Combo;
-import org.eclipse.swt.widgets.Composite;
-import org.eclipse.swt.widgets.Control;
-import org.eclipse.swt.widgets.Label;
-
-/**
- * Dialog field containing a label and a combo control.
- */
-public class ComboDialogField extends DialogField {
-
- private String fText;
- private int fSelectionIndex;
- private String[] fItems;
- private Combo fComboControl;
- private ModifyListener fModifyListener;
- private int fFlags;
-
- public ComboDialogField(int flags) {
- super();
- fText= ""; //$NON-NLS-1$
- fItems= new String[0];
- fFlags= flags;
- fSelectionIndex= -1;
- }
-
- // ------- layout helpers
-
- /*
- * @see DialogField#doFillIntoGrid
- */
- public Control[] doFillIntoGrid(Composite parent, int nColumns) {
- assertEnoughColumns(nColumns);
-
- Label label= getLabelControl(parent);
- label.setLayoutData(gridDataForLabel(1));
- Combo combo= getComboControl(parent);
- combo.setLayoutData(gridDataForCombo(nColumns - 1));
-
- return new Control[] { label, combo };
- }
-
- /*
- * @see DialogField#getNumberOfControls
- */
- public int getNumberOfControls() {
- return 2;
- }
-
- protected static GridData gridDataForCombo(int span) {
- GridData gd= new GridData();
- gd.horizontalAlignment= GridData.FILL;
- gd.grabExcessHorizontalSpace= false;
- gd.horizontalSpan= span;
- return gd;
- }
-
- // ------- focus methods
-
- /*
- * @see DialogField#setFocus
- */
- public boolean setFocus() {
- if (isOkToUse(fComboControl)) {
- fComboControl.setFocus();
- }
- return true;
- }
-
- // ------- ui creation
-
- /**
- * Creates or returns the created combo control.
- * @param parent The parent composite or <code>null</code> when the widget has
- * already been created.
- */
- public Combo getComboControl(Composite parent) {
- if (fComboControl == null) {
- assertCompositeNotNull(parent);
- fModifyListener= new ModifyListener() {
- public void modifyText(ModifyEvent e) {
- doModifyText(e);
- }
- };
- SelectionListener selectionListener= new SelectionListener() {
- public void widgetSelected(SelectionEvent e) {
- doSelectionChanged(e);
- }
-
- public void widgetDefaultSelected(SelectionEvent e) {
- }
- };
-
- fComboControl= new Combo(parent, fFlags);
- // moved up due to 1GEUNW2
- fComboControl.setItems(fItems);
- if (fSelectionIndex != -1) {
- fComboControl.select(fSelectionIndex);
- } else {
- fComboControl.setText(fText);
- }
- fComboControl.setFont(parent.getFont());
- fComboControl.addModifyListener(fModifyListener);
- fComboControl.addSelectionListener(selectionListener);
- fComboControl.setEnabled(isEnabled());
- }
- return fComboControl;
- }
-
- protected void doModifyText(ModifyEvent e) {
- if (isOkToUse(fComboControl)) {
- fText= fComboControl.getText();
- fSelectionIndex= fComboControl.getSelectionIndex();
- }
- dialogFieldChanged();
- }
-
- protected void doSelectionChanged(SelectionEvent e) {
- if (isOkToUse(fComboControl)) {
- fItems= fComboControl.getItems();
- fText= fComboControl.getText();
- fSelectionIndex= fComboControl.getSelectionIndex();
- }
- dialogFieldChanged();
- }
-
- // ------ enable / disable management
-
- /*
- * @see DialogField#updateEnableState
- */
- protected void updateEnableState() {
- super.updateEnableState();
- if (isOkToUse(fComboControl)) {
- fComboControl.setEnabled(isEnabled());
- }
- }
-
- // ------ text access
-
- /**
- * Gets the combo items.
- */
- public String[] getItems() {
- return fItems;
- }
-
- /**
- * Sets the combo items. Triggers a dialog-changed event.
- */
- public void setItems(String[] items) {
- fItems= items;
- if (isOkToUse(fComboControl)) {
- fComboControl.setItems(items);
- }
- dialogFieldChanged();
- }
-
- /**
- * Gets the text.
- */
- public String getText() {
- return fText;
- }
-
- /**
- * Sets the text. Triggers a dialog-changed event.
- */
- public void setText(String text) {
- fText= text;
- if (isOkToUse(fComboControl)) {
- fComboControl.setText(text);
- } else {
- dialogFieldChanged();
- }
- }
-
- /**
- * Selects an item.
- */
- public void selectItem(int index) {
- if (isOkToUse(fComboControl)) {
- fComboControl.select(index);
- } else {
- if (index >= 0 && index < fItems.length) {
- fText= fItems[index];
- fSelectionIndex= index;
- }
- }
- dialogFieldChanged();
- }
-
- public int getSelectionIndex() {
- return fSelectionIndex;
- }
-
-
- /**
- * Sets the text without triggering a dialog-changed event.
- */
- public void setTextWithoutUpdate(String text) {
- fText= text;
- if (isOkToUse(fComboControl)) {
- fComboControl.removeModifyListener(fModifyListener);
- fComboControl.setText(text);
- fComboControl.addModifyListener(fModifyListener);
- }
- }
-
-} \ No newline at end of file
diff --git a/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/dialogfields/DialogField.java b/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/dialogfields/DialogField.java
deleted file mode 100644
index 3d7c1938c60..00000000000
--- a/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/dialogfields/DialogField.java
+++ /dev/null
@@ -1,227 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.internal.ui.dialogfields;
-
-import org.eclipse.jface.util.Assert;
-import org.eclipse.swt.SWT;
-import org.eclipse.swt.layout.GridData;
-import org.eclipse.swt.widgets.Composite;
-import org.eclipse.swt.widgets.Control;
-import org.eclipse.swt.widgets.Display;
-import org.eclipse.swt.widgets.Label;
-
-/**
- * Base class of all dialog fields.
- * Dialog fields manage controls together with the model, independed
- * from the creation time of the widgets.
- * - support for automated layouting.
- * - enable / disable, set focus a concept of the base class.
- *
- * DialogField have a label.
- */
-public class DialogField {
-
- private Label fLabel;
- protected String fLabelText;
-
- private IDialogFieldListener fDialogFieldListener;
-
- private boolean fEnabled;
-
- public DialogField() {
- fEnabled= true;
- fLabel= null;
- fLabelText= ""; //$NON-NLS-1$
- }
-
- /**
- * Sets the label of the dialog field.
- */
- public void setLabelText(String labeltext) {
- fLabelText= labeltext;
- }
-
- // ------ change listener
-
- /**
- * Defines the listener for this dialog field.
- */
- public final void setDialogFieldListener(IDialogFieldListener listener) {
- fDialogFieldListener= listener;
- }
-
- /**
- * Programatical invocation of a dialog field change.
- */
- public void dialogFieldChanged() {
- if (fDialogFieldListener != null) {
- fDialogFieldListener.dialogFieldChanged(this);
- }
- }
-
- // ------- focus management
-
- /**
- * Tries to set the focus to the dialog field.
- * Returns <code>true</code> if the dialog field can take focus.
- * To be reimplemented by dialog field implementors.
- */
- public boolean setFocus() {
- return false;
- }
-
- /**
- * Posts <code>setFocus</code> to the display event queue.
- */
- public void postSetFocusOnDialogField(Display display) {
- if (display != null) {
- display.asyncExec(
- new Runnable() {
- public void run() {
- setFocus();
- }
- }
- );
- }
- }
-
- // ------- layout helpers
-
- /**
- * Creates all controls of the dialog field and fills it to a composite.
- * The composite is assumed to have <code>MGridLayout</code> as
- * layout.
- * The dialog field will adjust its controls' spans to the number of columns given.
- * To be reimplemented by dialog field implementors.
- */
- public Control[] doFillIntoGrid(Composite parent, int nColumns) {
- assertEnoughColumns(nColumns);
-
- Label label= getLabelControl(parent);
- label.setLayoutData(gridDataForLabel(nColumns));
-
- return new Control[] { label };
- }
-
- /**
- * Returns the number of columns of the dialog field.
- * To be reimplemented by dialog field implementors.
- */
- public int getNumberOfControls() {
- return 1;
- }
-
- protected static GridData gridDataForLabel(int span) {
- GridData gd= new GridData(GridData.HORIZONTAL_ALIGN_FILL);
- gd.horizontalSpan= span;
- return gd;
- }
-
- // ------- ui creation
-
- /**
- * Creates or returns the created label widget.
- * @param parent The parent composite or <code>null</code> if the widget has
- * already been created.
- */
- public Label getLabelControl(Composite parent) {
- if (fLabel == null) {
- assertCompositeNotNull(parent);
-
- fLabel= new Label(parent, SWT.LEFT | SWT.WRAP);
- fLabel.setFont(parent.getFont());
- fLabel.setEnabled(fEnabled);
- if (fLabelText != null && !"".equals(fLabelText)) { //$NON-NLS-1$
- fLabel.setText(fLabelText);
- } else {
- // XXX: to avoid a 16 pixel wide empty label - revisit
- fLabel.setText("."); //$NON-NLS-1$
- fLabel.setVisible(false);
- }
- }
- return fLabel;
- }
-
- /**
- * Creates a spacer control.
- * @param parent The parent composite
- */
- public static Control createEmptySpace(Composite parent) {
- return createEmptySpace(parent, 1);
- }
-
- /**
- * Creates a spacer control with the given span.
- * The composite is assumed to have <code>MGridLayout</code> as
- * layout.
- * @param parent The parent composite
- */
- public static Control createEmptySpace(Composite parent, int span) {
- Label label= new Label(parent, SWT.LEFT);
- GridData gd= new GridData();
- gd.horizontalAlignment= GridData.BEGINNING;
- gd.grabExcessHorizontalSpace= false;
- gd.horizontalSpan= span;
- gd.horizontalIndent= 0;
- gd.widthHint= 0;
- gd.heightHint= 0;
- label.setLayoutData(gd);
- return label;
- }
-
- /**
- * Tests is the control is not <code>null</code> and not disposed.
- */
- protected final boolean isOkToUse(Control control) {
- return (control != null) && !(control.isDisposed());
- }
-
- // --------- enable / disable management
-
- /**
- * Sets the enable state of the dialog field.
- */
- public final void setEnabled(boolean enabled) {
- if (enabled != fEnabled) {
- fEnabled= enabled;
- updateEnableState();
- }
- }
-
- /**
- * Called when the enable state changed.
- * To be extended by dialog field implementors.
- */
- protected void updateEnableState() {
- if (fLabel != null) {
- fLabel.setEnabled(fEnabled);
- }
- }
-
- /**
- * Gets the enable state of the dialog field.
- */
- public final boolean isEnabled() {
- return fEnabled;
- }
-
- protected final void assertCompositeNotNull(Composite comp) {
- Assert.isNotNull(comp, "uncreated control requested with composite null"); //$NON-NLS-1$
- }
-
- protected final void assertEnoughColumns(int nColumns) {
- Assert.isTrue(nColumns >= getNumberOfControls(), "given number of columns is too small"); //$NON-NLS-1$
- }
-
-
-
-
-} \ No newline at end of file
diff --git a/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/dialogfields/IDialogFieldListener.java b/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/dialogfields/IDialogFieldListener.java
deleted file mode 100644
index ec5b73da602..00000000000
--- a/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/dialogfields/IDialogFieldListener.java
+++ /dev/null
@@ -1,23 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.internal.ui.dialogfields;
-
-/**
- * Change listener used by <code>DialogField</code>
- */
-public interface IDialogFieldListener {
-
- /**
- * The dialog field has changed.
- */
- void dialogFieldChanged(DialogField field);
-
-} \ No newline at end of file
diff --git a/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/dialogfields/IListAdapter.java b/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/dialogfields/IListAdapter.java
deleted file mode 100644
index 4b6a9aa3540..00000000000
--- a/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/dialogfields/IListAdapter.java
+++ /dev/null
@@ -1,28 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.internal.ui.dialogfields;
-
-/**
- * Change listener used by <code>ListDialogField</code> and <code>CheckedListDialogField</code>
- */
-public interface IListAdapter {
-
- /**
- * A button from the button bar has been pressed.
- */
- void customButtonPressed(DialogField field, int index);
-
- /**
- * The selection of the list has changed.
- */
- void selectionChanged(DialogField field);
-
-} \ No newline at end of file
diff --git a/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/dialogfields/IStringButtonAdapter.java b/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/dialogfields/IStringButtonAdapter.java
deleted file mode 100644
index 676348bff54..00000000000
--- a/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/dialogfields/IStringButtonAdapter.java
+++ /dev/null
@@ -1,20 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.internal.ui.dialogfields;
-
-/**
- * Change listener used by <code>StringButtonDialogField</code>
- */
-public interface IStringButtonAdapter {
-
- void changeControlPressed(DialogField field);
-
-} \ No newline at end of file
diff --git a/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/dialogfields/LayoutUtil.java b/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/dialogfields/LayoutUtil.java
deleted file mode 100644
index b48eeb35ede..00000000000
--- a/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/dialogfields/LayoutUtil.java
+++ /dev/null
@@ -1,140 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.internal.ui.dialogfields;
-
-import org.eclipse.swt.SWT;
-import org.eclipse.swt.layout.GridData;
-import org.eclipse.swt.layout.GridLayout;
-import org.eclipse.swt.widgets.Composite;
-import org.eclipse.swt.widgets.Control;
-
-public class LayoutUtil {
-
- /**
- * Calculates the number of columns needed by field editors
- */
- public static int getNumberOfColumns(DialogField[] editors) {
- int nCulumns= 0;
- for (int i= 0; i < editors.length; i++) {
- nCulumns= Math.max(editors[i].getNumberOfControls(), nCulumns);
- }
- return nCulumns;
- }
-
- /**
- * Creates a composite and fills in the given editors.
- * @param labelOnTop Defines if the label of all fields should be on top of the fields
- */
- public static void doDefaultLayout(Composite parent, DialogField[] editors, boolean labelOnTop) {
- doDefaultLayout(parent, editors, labelOnTop, 0, 0, 0, 0);
- }
-
- /**
- * Creates a composite and fills in the given editors.
- * @param labelOnTop Defines if the label of all fields should be on top of the fields
- * @param minWidth The minimal width of the composite
- * @param minHeight The minimal height of the composite
- */
- public static void doDefaultLayout(Composite parent, DialogField[] editors, boolean labelOnTop, int minWidth, int minHeight) {
- doDefaultLayout(parent, editors, labelOnTop, minWidth, minHeight, 0, 0);
- }
-
- /**
- * Creates a composite and fills in the given editors.
- * @param labelOnTop Defines if the label of all fields should be on top of the fields
- * @param minWidth The minimal width of the composite
- * @param minHeight The minimal height of the composite
- * @param marginWidth The margin width to be used by the composite
- * @param marginHeight The margin height to be used by the composite
- * @deprecated
- */
- public static void doDefaultLayout(Composite parent, DialogField[] editors, boolean labelOnTop, int minWidth, int minHeight, int marginWidth, int marginHeight) {
- int nCulumns= getNumberOfColumns(editors);
- Control[][] controls= new Control[editors.length][];
- for (int i= 0; i < editors.length; i++) {
- controls[i]= editors[i].doFillIntoGrid(parent, nCulumns);
- }
- if (labelOnTop) {
- nCulumns--;
- modifyLabelSpans(controls, nCulumns);
- }
- GridLayout layout= new GridLayout();
- if (marginWidth != SWT.DEFAULT) {
- layout.marginWidth= marginWidth;
- }
- if (marginHeight != SWT.DEFAULT) {
- layout.marginHeight= marginHeight;
- }
- layout.numColumns= nCulumns;
- parent.setLayout(layout);
- }
-
- private static void modifyLabelSpans(Control[][] controls, int nCulumns) {
- for (int i= 0; i < controls.length; i++) {
- setHorizontalSpan(controls[i][0], nCulumns);
- }
- }
-
- /**
- * Sets the span of a control. Assumes that GridData is used.
- */
- public static void setHorizontalSpan(Control control, int span) {
- Object ld= control.getLayoutData();
- if (ld instanceof GridData) {
- ((GridData)ld).horizontalSpan= span;
- } else if (span != 1) {
- GridData gd= new GridData();
- gd.horizontalSpan= span;
- control.setLayoutData(gd);
- }
- }
-
- /**
- * Sets the width hint of a control. Assumes that GridData is used.
- */
- public static void setWidthHint(Control control, int widthHint) {
- Object ld= control.getLayoutData();
- if (ld instanceof GridData) {
- ((GridData)ld).widthHint= widthHint;
- }
- }
-
- /**
- * Sets the heigthHint hint of a control. Assumes that GridData is used.
- */
- public static void setHeigthHint(Control control, int heigthHint) {
- Object ld= control.getLayoutData();
- if (ld instanceof GridData) {
- ((GridData)ld).heightHint= heigthHint;
- }
- }
-
- /**
- * Sets the horizontal indent of a control. Assumes that GridData is used.
- */
- public static void setHorizontalIndent(Control control, int horizontalIndent) {
- Object ld= control.getLayoutData();
- if (ld instanceof GridData) {
- ((GridData)ld).horizontalIndent= horizontalIndent;
- }
- }
-
- /**
- * Sets the horizontal indent of a control. Assumes that GridData is used.
- */
- public static void setHorizontalGrabbing(Control control) {
- Object ld= control.getLayoutData();
- if (ld instanceof GridData) {
- ((GridData)ld).grabExcessHorizontalSpace= true;
- }
- }
-
-} \ No newline at end of file
diff --git a/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/dialogfields/ListDialogField.java b/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/dialogfields/ListDialogField.java
deleted file mode 100644
index 1b557b5b14e..00000000000
--- a/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/dialogfields/ListDialogField.java
+++ /dev/null
@@ -1,772 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.internal.ui.dialogfields;
-
-
-import java.util.ArrayList;
-import java.util.Iterator;
-import java.util.List;
-
-import org.eclipse.cdt.debug.internal.ui.PixelConverter;
-import org.eclipse.cdt.debug.internal.ui.SWTUtil;
-import org.eclipse.jface.util.Assert;
-import org.eclipse.jface.viewers.ILabelProvider;
-import org.eclipse.jface.viewers.ISelection;
-import org.eclipse.jface.viewers.ISelectionChangedListener;
-import org.eclipse.jface.viewers.IStructuredContentProvider;
-import org.eclipse.jface.viewers.IStructuredSelection;
-import org.eclipse.jface.viewers.SelectionChangedEvent;
-import org.eclipse.jface.viewers.StructuredSelection;
-import org.eclipse.jface.viewers.TableViewer;
-import org.eclipse.jface.viewers.Viewer;
-import org.eclipse.jface.viewers.ViewerSorter;
-import org.eclipse.swt.SWT;
-import org.eclipse.swt.events.SelectionEvent;
-import org.eclipse.swt.events.SelectionListener;
-import org.eclipse.swt.layout.GridData;
-import org.eclipse.swt.layout.GridLayout;
-import org.eclipse.swt.widgets.Button;
-import org.eclipse.swt.widgets.Composite;
-import org.eclipse.swt.widgets.Control;
-import org.eclipse.swt.widgets.Display;
-import org.eclipse.swt.widgets.Label;
-import org.eclipse.swt.widgets.Table;
-
-/**
- * A list with a button bar.
- * Typical buttons are 'Add', 'Remove', 'Up' and 'Down'.
- * List model is independend of widget creation.
- * DialogFields controls are: Label, List and Composite containing buttons.
- */
-public class ListDialogField extends DialogField {
-
- protected TableViewer fTable;
- protected ILabelProvider fLabelProvider;
- protected ListViewerAdapter fListViewerAdapter;
- protected List fElements;
- protected ViewerSorter fViewerSorter;
-
- protected String[] fButtonLabels;
- private Button[] fButtonControls;
-
- private boolean[] fButtonsEnabled;
-
- private int fRemoveButtonIndex;
- private int fUpButtonIndex;
- private int fDownButtonIndex;
-
- private Label fLastSeparator;
-
- protected Table fTableControl;
- private Composite fButtonsControl;
- private ISelection fSelectionWhenEnabled;
-
- private IListAdapter fListAdapter;
-
- private Object fParentElement;
-
- /**
- * Creates the <code>ListDialogField</code>.
- * @param adapter A listener for button invocation, selection changes.
- * @param buttonLabels The labels of all buttons: <code>null</code> is a valid array entry and
- * marks a separator.
- * @param lprovider The label provider to render the table entries
- */
- public ListDialogField(IListAdapter adapter, String[] buttonLabels, ILabelProvider lprovider) {
- super();
- fListAdapter= adapter;
-
- fLabelProvider= lprovider;
- fListViewerAdapter= new ListViewerAdapter();
- fParentElement= this;
-
- fElements= new ArrayList(10);
-
- fButtonLabels= buttonLabels;
- if (fButtonLabels != null) {
- int nButtons= fButtonLabels.length;
- fButtonsEnabled= new boolean[nButtons];
- for (int i= 0; i < nButtons; i++) {
- fButtonsEnabled[i]= true;
- }
- }
-
- fTable= null;
- fTableControl= null;
- fButtonsControl= null;
-
- fRemoveButtonIndex= -1;
- fUpButtonIndex= -1;
- fDownButtonIndex= -1;
- }
-
- /**
- * Sets the index of the 'remove' button in the button label array passed in the constructor.
- * The behaviour of the button marked as the 'remove' button will then be handled internally.
- * (enable state, button invocation behaviour)
- */
- public void setRemoveButtonIndex(int removeButtonIndex) {
- Assert.isTrue(removeButtonIndex < fButtonLabels.length);
- fRemoveButtonIndex= removeButtonIndex;
- }
-
- /**
- * Sets the index of the 'up' button in the button label array passed in the constructor.
- * The behaviour of the button marked as the 'up' button will then be handled internally.
- * (enable state, button invocation behaviour)
- */
- public void setUpButtonIndex(int upButtonIndex) {
- Assert.isTrue(upButtonIndex < fButtonLabels.length);
- fUpButtonIndex= upButtonIndex;
- }
-
- /**
- * Sets the index of the 'down' button in the button label array passed in the constructor.
- * The behaviour of the button marked as the 'down' button will then be handled internally.
- * (enable state, button invocation behaviour)
- */
- public void setDownButtonIndex(int downButtonIndex) {
- Assert.isTrue(downButtonIndex < fButtonLabels.length);
- fDownButtonIndex= downButtonIndex;
- }
-
- /**
- * Sets the viewerSorter.
- * @param viewerSorter The viewerSorter to set
- */
- public void setViewerSorter(ViewerSorter viewerSorter) {
- fViewerSorter= viewerSorter;
- }
-
- // ------ adapter communication
-
- private void buttonPressed(int index) {
- if (!managedButtonPressed(index)) {
- fListAdapter.customButtonPressed(this, index);
- }
- }
-
- /**
- * Checks if the button pressed is handled internally
- * @return Returns true if button has been handled.
- */
- protected boolean managedButtonPressed(int index) {
- if (index == fRemoveButtonIndex) {
- remove();
- } else if (index == fUpButtonIndex) {
- up();
- } else if (index == fDownButtonIndex) {
- down();
- } else {
- return false;
- }
- return true;
- }
-
-
- // ------ layout helpers
-
- /*
- * @see DialogField#doFillIntoGrid
- */
- public Control[] doFillIntoGrid(Composite parent, int nColumns) {
- PixelConverter converter= new PixelConverter(parent);
-
- assertEnoughColumns(nColumns);
-
- Label label= getLabelControl(parent);
- GridData gd= gridDataForLabel(1);
- gd.verticalAlignment= GridData.BEGINNING;
- label.setLayoutData(gd);
-
- Control list= getListControl(parent);
- gd= new GridData();
- gd.horizontalAlignment= GridData.FILL;
- gd.grabExcessHorizontalSpace= false;
- gd.verticalAlignment= GridData.FILL;
- gd.grabExcessVerticalSpace= true;
- gd.horizontalSpan= nColumns - 2;
- gd.widthHint= converter.convertWidthInCharsToPixels(50);
- gd.heightHint= converter.convertHeightInCharsToPixels(6);
-
- list.setLayoutData(gd);
-
- Composite buttons= getButtonBox(parent);
- gd= new GridData();
- gd.horizontalAlignment= GridData.FILL;
- gd.grabExcessHorizontalSpace= false;
- gd.verticalAlignment= GridData.FILL;
- gd.grabExcessVerticalSpace= true;
- gd.horizontalSpan= 1;
- buttons.setLayoutData(gd);
-
- return new Control[] { label, list, buttons };
- }
-
- /*
- * @see DialogField#getNumberOfControls
- */
- public int getNumberOfControls() {
- return 3;
- }
-
- /**
- * Sets the minimal width of the buttons. Must be called after widget creation.
- */
- public void setButtonsMinWidth(int minWidth) {
- if (fLastSeparator != null) {
- ((GridData)fLastSeparator.getLayoutData()).widthHint= minWidth;
- }
- }
-
-
- // ------ ui creation
-
- /**
- * Returns the list control. When called the first time, the control will be created.
- * @param The parent composite when called the first time, or <code>null</code>
- * after.
- */
- public Control getListControl(Composite parent) {
- if (fTableControl == null) {
- assertCompositeNotNull(parent);
-
- fTable= createTableViewer(parent);
- fTable.setContentProvider(fListViewerAdapter);
- fTable.setLabelProvider(fLabelProvider);
- fTable.addSelectionChangedListener(fListViewerAdapter);
-
- fTableControl= (Table)fTable.getControl();
-
- fTable.setInput(fParentElement);
-
- if (fViewerSorter != null) {
- fTable.setSorter(fViewerSorter);
- }
-
- fTableControl.setEnabled(isEnabled());
- if (fSelectionWhenEnabled != null) {
- postSetSelection(fSelectionWhenEnabled);
- }
- }
- return fTableControl;
- }
-
- /**
- * Returns the internally used table viewer.
- */
- public TableViewer getTableViewer() {
- return fTable;
- }
-
- /*
- * Subclasses may override to specify a different style.
- */
- protected int getListStyle(){
- return SWT.BORDER + SWT.MULTI + SWT.H_SCROLL + SWT.V_SCROLL;
- }
-
- protected TableViewer createTableViewer(Composite parent) {
- Table table= new Table(parent, getListStyle());
- return new TableViewer(table);
- }
-
- protected Button createButton(Composite parent, String label, SelectionListener listener) {
- Button button= new Button(parent, SWT.PUSH);
- button.setText(label);
- button.addSelectionListener(listener);
- GridData gd= new GridData();
- gd.horizontalAlignment= GridData.FILL;
- gd.grabExcessHorizontalSpace= true;
- gd.verticalAlignment= GridData.BEGINNING;
- gd.widthHint = SWTUtil.getButtonWidthHint(button);
-
- button.setLayoutData(gd);
- return button;
- }
-
- private Label createSeparator(Composite parent) {
- Label separator= new Label(parent, SWT.NONE);
- separator.setVisible(false);
- GridData gd= new GridData();
- gd.horizontalAlignment= GridData.FILL;
- gd.verticalAlignment= GridData.BEGINNING;
- gd.heightHint= 4;
- separator.setLayoutData(gd);
- return separator;
- }
-
- /**
- * Returns the composite containing the buttons. When called the first time, the control
- * will be created.
- * @param The parent composite when called the first time, or <code>null</code>
- * after.
- */
- public Composite getButtonBox(Composite parent) {
- if (fButtonsControl == null) {
- assertCompositeNotNull(parent);
-
- SelectionListener listener= new SelectionListener() {
- public void widgetDefaultSelected(SelectionEvent e) {
- doButtonSelected(e);
- }
- public void widgetSelected(SelectionEvent e) {
- doButtonSelected(e);
- }
- };
-
- Composite contents= new Composite(parent, SWT.NULL);
- GridLayout layout= new GridLayout();
- layout.marginWidth= 0;
- layout.marginHeight= 0;
- contents.setLayout(layout);
-
- if (fButtonLabels != null) {
- fButtonControls= new Button[fButtonLabels.length];
- for (int i= 0; i < fButtonLabels.length; i++) {
- String currLabel= fButtonLabels[i];
- if (currLabel != null) {
- fButtonControls[i]= createButton(contents, currLabel, listener);
- fButtonControls[i].setEnabled(isEnabled() && fButtonsEnabled[i]);
- } else {
- fButtonControls[i]= null;
- createSeparator(contents);
- }
- }
- }
-
- fLastSeparator= createSeparator(contents);
-
- updateButtonState();
- fButtonsControl= contents;
- }
-
- return fButtonsControl;
- }
-
- protected void doButtonSelected(SelectionEvent e) {
- if (fButtonControls != null) {
- for (int i= 0; i < fButtonControls.length; i++) {
- if (e.widget == fButtonControls[i]) {
- buttonPressed(i);
- return;
- }
- }
- }
- }
-
- // ------ enable / disable management
-
- /*
- * @see DialogField#dialogFieldChanged
- */
- public void dialogFieldChanged() {
- super.dialogFieldChanged();
- updateButtonState();
- }
-
- /*
- * Updates the enable state of the all buttons
- */
- protected void updateButtonState() {
- if (fButtonControls != null) {
- ISelection sel= fTable.getSelection();
- for (int i= 0; i < fButtonControls.length; i++) {
- Button button= fButtonControls[i];
- if (isOkToUse(button)) {
- boolean extraState= getManagedButtonState(sel, i);
- button.setEnabled(isEnabled() && extraState && fButtonsEnabled[i]);
- }
- }
- }
- }
-
- protected boolean getManagedButtonState(ISelection sel, int index) {
- if (index == fRemoveButtonIndex) {
- return !sel.isEmpty();
- } else if (index == fUpButtonIndex) {
- return !sel.isEmpty() && canMoveUp();
- } else if (index == fDownButtonIndex) {
- return !sel.isEmpty() && canMoveDown();
- }
- return true;
- }
-
- /*
- * @see DialogField#updateEnableState
- */
- protected void updateEnableState() {
- super.updateEnableState();
-
- boolean enabled= isEnabled();
- if (isOkToUse(fTableControl)) {
- if (!enabled) {
- fSelectionWhenEnabled= fTable.getSelection();
- selectElements(null);
- } else {
- selectElements(fSelectionWhenEnabled);
- fSelectionWhenEnabled= null;
- }
- fTableControl.setEnabled(enabled);
- }
- updateButtonState();
- }
-
- /**
- * Sets a button enabled or disabled.
- */
- public void enableButton(int index, boolean enable) {
- if (fButtonsEnabled != null && index < fButtonsEnabled.length) {
- fButtonsEnabled[index]= enable;
- updateButtonState();
- }
- }
-
- // ------ model access
-
- /**
- * Sets the elements shown in the list.
- */
- public void setElements(List elements) {
- fElements= new ArrayList(elements);
- if (fTable != null) {
- fTable.refresh();
- }
- dialogFieldChanged();
- }
-
- /**
- * Gets the elements shown in the list.
- * The list returned is a copy, so it can be modified by the user.
- */
- public List getElements() {
- return new ArrayList(fElements);
- }
-
- /**
- * Gets the elements shown at the given index.
- */
- public Object getElement(int index) {
- return fElements.get(index);
- }
-
- /**
- * Replace an element.
- */
- public void replaceElement(Object oldElement, Object newElement) throws IllegalArgumentException {
- int idx= fElements.indexOf(oldElement);
- if (idx != -1) {
- if (oldElement.equals(newElement) || fElements.contains(newElement)) {
- return;
- }
- fElements.set(idx, newElement);
- if (fTable != null) {
- List selected= getSelectedElements();
- if (selected.remove(oldElement)) {
- selected.add(newElement);
- }
- fTable.refresh();
- selectElements(new StructuredSelection(selected));
- }
- dialogFieldChanged();
- } else {
- throw new IllegalArgumentException();
- }
- }
-
- /**
- * Adds an element at the end of the list.
- */
- public void addElement(Object element) {
- if (fElements.contains(element)) {
- return;
- }
- fElements.add(element);
- if (fTable != null) {
- fTable.add(element);
- }
- dialogFieldChanged();
- }
-
- /**
- * Adds elements at the end of the list.
- */
- public void addElements(List elements) {
- int nElements= elements.size();
-
- if (nElements > 0) {
- // filter duplicated
- ArrayList elementsToAdd= new ArrayList(nElements);
-
- for (int i= 0; i < nElements; i++) {
- Object elem= elements.get(i);
- if (!fElements.contains(elem)) {
- elementsToAdd.add(elem);
- }
- }
- fElements.addAll(elementsToAdd);
- if (fTable != null) {
- fTable.add(elementsToAdd.toArray());
- }
- dialogFieldChanged();
- }
- }
-
- /**
- * Adds an element at a position.
- */
- public void insertElementAt(Object element, int index) {
- if (fElements.contains(element)) {
- return;
- }
- fElements.add(index, element);
- if (fTable != null) {
- fTable.add(element);
- }
-
- dialogFieldChanged();
- }
-
-
- /**
- * Adds an element at a position.
- */
- public void removeAllElements() {
- if (fElements.size() > 0) {
- fElements.clear();
- if (fTable != null) {
- fTable.refresh();
- }
- dialogFieldChanged();
- }
- }
-
- /**
- * Removes an element from the list.
- */
- public void removeElement(Object element) throws IllegalArgumentException {
- if (fElements.remove(element)) {
- if (fTable != null) {
- fTable.remove(element);
- }
- dialogFieldChanged();
- } else {
- throw new IllegalArgumentException();
- }
- }
-
- /**
- * Removes elements from the list.
- */
- public void removeElements(List elements) {
- if (elements.size() > 0) {
- fElements.removeAll(elements);
- if (fTable != null) {
- fTable.remove(elements.toArray());
- }
- dialogFieldChanged();
- }
- }
-
- /**
- * Gets the number of elements
- */
- public int getSize() {
- return fElements.size();
- }
-
-
- public void selectElements(ISelection selection) {
- fSelectionWhenEnabled= selection;
- if (fTable != null) {
- fTable.setSelection(selection, true);
- }
- }
-
- public void selectFirstElement() {
- Object element= null;
- if (fViewerSorter != null) {
- Object[] arr= fElements.toArray();
- fViewerSorter.sort(fTable, arr);
- if (arr.length > 0) {
- element= arr[0];
- }
- } else {
- if (fElements.size() > 0) {
- element= fElements.get(0);
- }
- }
- if (element != null) {
- selectElements(new StructuredSelection(element));
- }
- }
-
-
- public void postSetSelection(final ISelection selection) {
- if (isOkToUse(fTableControl)) {
- Display d= fTableControl.getDisplay();
- d.asyncExec(new Runnable() {
- public void run() {
- if (isOkToUse(fTableControl)) {
- selectElements(selection);
- }
- }
- });
- }
- }
-
- /**
- * Refreshes the table.
- */
- public void refresh() {
- fTable.refresh();
- }
-
- // ------- list maintenance
-
- private List moveUp(List elements, List move) {
- int nElements= elements.size();
- List res= new ArrayList(nElements);
- Object floating= null;
- for (int i= 0; i < nElements; i++) {
- Object curr= elements.get(i);
- if (move.contains(curr)) {
- res.add(curr);
- } else {
- if (floating != null) {
- res.add(floating);
- }
- floating= curr;
- }
- }
- if (floating != null) {
- res.add(floating);
- }
- return res;
- }
-
- private void moveUp(List toMoveUp) {
- if (toMoveUp.size() > 0) {
- setElements(moveUp(fElements, toMoveUp));
- fTable.reveal(toMoveUp.get(0));
- }
- }
-
- private void moveDown(List toMoveDown) {
- if (toMoveDown.size() > 0) {
- setElements(reverse(moveUp(reverse(fElements), toMoveDown)));
- fTable.reveal(toMoveDown.get(toMoveDown.size() - 1));
- }
- }
-
- private List reverse(List p) {
- List reverse= new ArrayList(p.size());
- for (int i= p.size()-1; i >= 0; i--) {
- reverse.add(p.get(i));
- }
- return reverse;
- }
-
-
- private void remove() {
- removeElements(getSelectedElements());
- }
-
- private void up() {
- moveUp(getSelectedElements());
- }
-
- private void down() {
- moveDown(getSelectedElements());
- }
-
- private boolean canMoveUp() {
- if (isOkToUse(fTableControl)) {
- int[] indc= fTableControl.getSelectionIndices();
- for (int i= 0; i < indc.length; i++) {
- if (indc[i] != i) {
- return true;
- }
- }
- }
- return false;
- }
-
- private boolean canMoveDown() {
- if (isOkToUse(fTableControl)) {
- int[] indc= fTableControl.getSelectionIndices();
- int k= fElements.size() - 1;
- for (int i= indc.length - 1; i >= 0 ; i--, k--) {
- if (indc[i] != k) {
- return true;
- }
- }
- }
- return false;
- }
-
- /**
- * Returns the selected elements.
- */
- public List getSelectedElements() {
- List result= new ArrayList();
- if (fTable != null) {
- ISelection selection= fTable.getSelection();
- if (selection instanceof IStructuredSelection) {
- Iterator iter= ((IStructuredSelection)selection).iterator();
- while (iter.hasNext()) {
- result.add(iter.next());
- }
- }
- }
- return result;
- }
-
- // ------- ListViewerAdapter
-
- private class ListViewerAdapter implements IStructuredContentProvider, ISelectionChangedListener {
-
- // ------- ITableContentProvider Interface ------------
-
- public void inputChanged(Viewer viewer, Object oldInput, Object newInput) {
- // will never happen
- }
-
- public boolean isDeleted(Object element) {
- return false;
- }
-
- public void dispose() {
- }
-
- public Object[] getElements(Object obj) {
- return fElements.toArray();
- }
-
- // ------- ISelectionChangedListener Interface ------------
-
- public void selectionChanged(SelectionChangedEvent event) {
- doListSelected(event);
- }
-
- }
-
-
- protected void doListSelected(SelectionChangedEvent event) {
- updateButtonState();
- if (fListAdapter != null) {
- fListAdapter.selectionChanged(this);
- }
- }
-
-
-
-} \ No newline at end of file
diff --git a/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/dialogfields/SelectionButtonDialogField.java b/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/dialogfields/SelectionButtonDialogField.java
deleted file mode 100644
index c318d849548..00000000000
--- a/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/dialogfields/SelectionButtonDialogField.java
+++ /dev/null
@@ -1,190 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.internal.ui.dialogfields;
-
-import org.eclipse.cdt.debug.internal.ui.SWTUtil;
-import org.eclipse.swt.SWT;
-import org.eclipse.swt.events.SelectionEvent;
-import org.eclipse.swt.events.SelectionListener;
-import org.eclipse.swt.layout.GridData;
-import org.eclipse.swt.widgets.Button;
-import org.eclipse.swt.widgets.Composite;
-import org.eclipse.swt.widgets.Control;
-
-/**
- * Dialog Field containing a single button: e.g. radio or checkbox button.
- */
-public class SelectionButtonDialogField extends DialogField {
-
- private Button fButton;
- private boolean fIsSelected;
- private DialogField[] fAttachedDialogFields;
- private int fButtonStyle;
-
- /**
- * Creates a selection button.
- * Allowed button styles: SWT.RADIO, SWT.CHECK, SWT.TOGGLE, SWT.PUSH
- */
- public SelectionButtonDialogField(int buttonStyle) {
- super();
- fIsSelected= false;
- fAttachedDialogFields= null;
- fButtonStyle= buttonStyle;
- }
-
- /**
- * Attaches a field to the selection state of the selection button.
- * The attached field will be disabled if the selection button is not selected.
- */
- public void attachDialogField(DialogField dialogField) {
- attachDialogFields(new DialogField[] { dialogField });
- }
-
- /**
- * Attaches fields to the selection state of the selection button.
- * The attached fields will be disabled if the selection button is not selected.
- */
- public void attachDialogFields(DialogField[] dialogFields) {
- fAttachedDialogFields= dialogFields;
- for (int i= 0; i < dialogFields.length; i++) {
- dialogFields[i].setEnabled(fIsSelected);
- }
- }
-
- /**
- * Returns <code>true</code> is teh gived field is attached to the selection button.
- */
- public boolean isAttached(DialogField editor) {
- if (fAttachedDialogFields != null) {
- for (int i=0; i < fAttachedDialogFields.length; i++) {
- if (fAttachedDialogFields[i] == editor) {
- return true;
- }
- }
- }
- return false;
- }
-
- // ------- layout helpers
-
- /*
- * @see DialogField#doFillIntoGrid
- */
- public Control[] doFillIntoGrid(Composite parent, int nColumns) {
- assertEnoughColumns(nColumns);
-
- Button button= getSelectionButton(parent);
- GridData gd= new GridData();
- gd.horizontalSpan= nColumns;
- gd.horizontalAlignment= GridData.FILL;
- if (fButtonStyle == SWT.PUSH) {
- gd.widthHint = SWTUtil.getButtonWidthHint(button);
- }
-
- button.setLayoutData(gd);
-
- return new Control[] { button };
- }
-
- /*
- * @see DialogField#getNumberOfControls
- */
- public int getNumberOfControls() {
- return 1;
- }
-
- // ------- ui creation
-
- /**
- * Returns the selection button widget. When called the first time, the widget will be created.
- * @param The parent composite when called the first time, or <code>null</code>
- * after.
- */
- public Button getSelectionButton(Composite group) {
- if (fButton == null) {
- assertCompositeNotNull(group);
-
- fButton= new Button(group, fButtonStyle);
- fButton.setFont(group.getFont());
- fButton.setText(fLabelText);
- fButton.setEnabled(isEnabled());
- fButton.setSelection(fIsSelected);
- fButton.addSelectionListener(new SelectionListener() {
- public void widgetDefaultSelected(SelectionEvent e) {
- doWidgetSelected(e);
- }
- public void widgetSelected(SelectionEvent e) {
- doWidgetSelected(e);
- }
- });
- }
- return fButton;
- }
-
- protected void doWidgetSelected(SelectionEvent e) {
- if (isOkToUse(fButton)) {
- changeValue(fButton.getSelection());
- }
- }
-
- private void changeValue(boolean newState) {
- if (fIsSelected != newState) {
- fIsSelected= newState;
- if (fAttachedDialogFields != null) {
- boolean focusSet= false;
- for (int i= 0; i < fAttachedDialogFields.length; i++) {
- fAttachedDialogFields[i].setEnabled(fIsSelected);
- if (fIsSelected && !focusSet) {
- focusSet= fAttachedDialogFields[i].setFocus();
- }
- }
- }
- dialogFieldChanged();
- } else if (fButtonStyle == SWT.PUSH) {
- dialogFieldChanged();
- }
- }
-
- // ------ model access
-
- /**
- * Returns the selection state of the button.
- */
- public boolean isSelected() {
- return fIsSelected;
- }
-
- /**
- * Sets the selection state of the button.
- */
- public void setSelection(boolean selected) {
- changeValue(selected);
- if (isOkToUse(fButton)) {
- fButton.setSelection(selected);
- }
- }
-
- // ------ enable / disable management
-
- /*
- * @see DialogField#updateEnableState
- */
- protected void updateEnableState() {
- super.updateEnableState();
- if (isOkToUse(fButton)) {
- fButton.setEnabled(isEnabled());
- }
- }
-
-
-
-
-} \ No newline at end of file
diff --git a/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/dialogfields/SelectionButtonDialogFieldGroup.java b/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/dialogfields/SelectionButtonDialogFieldGroup.java
deleted file mode 100644
index c9fe4551f00..00000000000
--- a/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/dialogfields/SelectionButtonDialogFieldGroup.java
+++ /dev/null
@@ -1,254 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.internal.ui.dialogfields;
-
-import org.eclipse.jface.util.Assert;
-import org.eclipse.swt.SWT;
-import org.eclipse.swt.events.SelectionEvent;
-import org.eclipse.swt.events.SelectionListener;
-import org.eclipse.swt.layout.GridData;
-import org.eclipse.swt.layout.GridLayout;
-import org.eclipse.swt.widgets.Button;
-import org.eclipse.swt.widgets.Composite;
-import org.eclipse.swt.widgets.Control;
-import org.eclipse.swt.widgets.Group;
-import org.eclipse.swt.widgets.Label;
-
-/**
- * Dialog field describing a group with buttons (Checkboxes, radio buttons..)
- */
-public class SelectionButtonDialogFieldGroup extends DialogField {
-
- private Composite fButtonComposite;
-
- private Button[] fButtons;
- private String[] fButtonNames;
- private boolean[] fButtonsSelected;
- private boolean[] fButtonsEnabled;
-
- private int fGroupBorderStyle;
- private int fGroupNumberOfColumns;
- private int fButtonsStyle;
-
- /**
- * Creates a group without border.
- */
- public SelectionButtonDialogFieldGroup(int buttonsStyle, String[] buttonNames, int nColumns) {
- this(buttonsStyle, buttonNames, nColumns, SWT.NONE);
- }
-
-
- /**
- * Creates a group with border (label in border).
- * Accepted button styles are: SWT.RADIO, SWT.CHECK, SWT.TOGGLE
- * For border styles see <code>Group</code>
- */
- public SelectionButtonDialogFieldGroup(int buttonsStyle, String[] buttonNames, int nColumns, int borderStyle) {
- super();
-
- Assert.isTrue(buttonsStyle == SWT.RADIO || buttonsStyle == SWT.CHECK || buttonsStyle == SWT.TOGGLE);
- fButtonNames= buttonNames;
-
- int nButtons= buttonNames.length;
- fButtonsSelected= new boolean[nButtons];
- fButtonsEnabled= new boolean[nButtons];
- for (int i= 0; i < nButtons; i++) {
- fButtonsSelected[i]= false;
- fButtonsEnabled[i]= true;
- }
- if (fButtonsStyle == SWT.RADIO) {
- fButtonsSelected[0]= true;
- }
-
- fGroupBorderStyle= borderStyle;
- fGroupNumberOfColumns= (nColumns <= 0) ? nButtons : nColumns;
-
- fButtonsStyle= buttonsStyle;
-
- }
-
- // ------- layout helpers
-
- /*
- * @see DialogField#doFillIntoGrid
- */
- public Control[] doFillIntoGrid(Composite parent, int nColumns) {
- assertEnoughColumns(nColumns);
-
- if (fGroupBorderStyle == SWT.NONE) {
- Label label= getLabelControl(parent);
- label.setLayoutData(gridDataForLabel(1));
-
- Composite buttonsgroup= getSelectionButtonsGroup(parent);
- GridData gd= new GridData();
- gd.horizontalSpan= nColumns - 1;
- buttonsgroup.setLayoutData(gd);
-
- return new Control[] { label, buttonsgroup };
- }
- Composite buttonsgroup= getSelectionButtonsGroup(parent);
- GridData gd= new GridData();
- gd.horizontalSpan= nColumns;
- buttonsgroup.setLayoutData(gd);
-
- return new Control[] { buttonsgroup };
- }
-
- /*
- * @see DialogField#doFillIntoGrid
- */
- public int getNumberOfControls() {
- return (fGroupBorderStyle == SWT.NONE) ? 2 : 1;
- }
-
- // ------- ui creation
-
- private Button createSelectionButton(int index, Composite group, SelectionListener listener) {
- Button button= new Button(group, fButtonsStyle | SWT.LEFT);
- button.setFont(group.getFont());
- button.setText(fButtonNames[index]);
- button.setEnabled(isEnabled() && fButtonsEnabled[index]);
- button.setSelection(fButtonsSelected[index]);
- button.addSelectionListener(listener);
- button.setLayoutData(new GridData());
- return button;
- }
-
- /**
- * Returns the group widget. When called the first time, the widget will be created.
- * @param The parent composite when called the first time, or <code>null</code>
- * after.
- */
- public Composite getSelectionButtonsGroup(Composite parent) {
- if (fButtonComposite == null) {
- assertCompositeNotNull(parent);
-
- GridLayout layout= new GridLayout();
- layout.makeColumnsEqualWidth= true;
- layout.numColumns= fGroupNumberOfColumns;
-
- if (fGroupBorderStyle != SWT.NONE) {
- Group group= new Group(parent, fGroupBorderStyle);
- if (fLabelText != null && fLabelText.length() > 0) {
- group.setText(fLabelText);
- }
- fButtonComposite= group;
- } else {
- fButtonComposite= new Composite(parent, SWT.NULL);
- layout.marginHeight= 0;
- layout.marginWidth= 0;
- }
-
- fButtonComposite.setLayout(layout);
-
- SelectionListener listener= new SelectionListener() {
- public void widgetDefaultSelected(SelectionEvent e) {
- doWidgetSelected(e);
- }
- public void widgetSelected(SelectionEvent e) {
- doWidgetSelected(e);
- }
- };
- int nButtons= fButtonNames.length;
- fButtons= new Button[nButtons];
- for (int i= 0; i < nButtons; i++) {
- fButtons[i]= createSelectionButton(i, fButtonComposite, listener);
- }
- int nRows= nButtons / fGroupNumberOfColumns;
- int nFillElements= nRows * fGroupNumberOfColumns - nButtons;
- for (int i= 0; i < nFillElements; i++) {
- createEmptySpace(fButtonComposite);
- }
- }
- return fButtonComposite;
- }
-
- /**
- * Returns a button from the group or <code>null</code> if not yet created.
- */
- public Button getSelectionButton(int index) {
- if (index >= 0 && index < fButtons.length) {
- return fButtons[index];
- }
- return null;
- }
-
- protected void doWidgetSelected(SelectionEvent e) {
- Button button= (Button)e.widget;
- for (int i= 0; i < fButtons.length; i++) {
- if (fButtons[i] == button) {
- fButtonsSelected[i]= button.getSelection();
- dialogFieldChanged();
- return;
- }
- }
- }
-
- // ------ model access
-
- /**
- * Returns the selection state of a button contained in the group.
- * @param The index of the button
- */
- public boolean isSelected(int index) {
- if (index >= 0 && index < fButtonsSelected.length) {
- return fButtonsSelected[index];
- }
- return false;
- }
-
- /**
- * Sets the selection state of a button contained in the group.
- */
- public void setSelection(int index, boolean selected) {
- if (index >= 0 && index < fButtonsSelected.length) {
- if (fButtonsSelected[index] != selected) {
- fButtonsSelected[index]= selected;
- if (fButtons != null) {
- Button button= fButtons[index];
- if (isOkToUse(button)) {
- button.setSelection(selected);
- }
- }
- }
- }
- }
-
- // ------ enable / disable management
-
- protected void updateEnableState() {
- super.updateEnableState();
- if (fButtons != null) {
- boolean enabled= isEnabled();
- for (int i= 0; i < fButtons.length; i++) {
- Button button= fButtons[i];
- if (isOkToUse(button)) {
- button.setEnabled(enabled && fButtonsEnabled[i]);
- }
- }
- }
- }
-
- /**
- * Sets the enable state of a button contained in the group.
- */
- public void enableSelectionButton(int index, boolean enable) {
- if (index >= 0 && index < fButtonsEnabled.length) {
- fButtonsEnabled[index]= enable;
- if (fButtons != null) {
- Button button= fButtons[index];
- if (isOkToUse(button)) {
- button.setEnabled(isEnabled() && enable);
- }
- }
- }
- }
-} \ No newline at end of file
diff --git a/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/dialogfields/Separator.java b/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/dialogfields/Separator.java
deleted file mode 100644
index 635e3b6b881..00000000000
--- a/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/dialogfields/Separator.java
+++ /dev/null
@@ -1,93 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.internal.ui.dialogfields;
-
-import org.eclipse.swt.SWT;
-import org.eclipse.swt.layout.GridData;
-import org.eclipse.swt.widgets.Composite;
-import org.eclipse.swt.widgets.Control;
-import org.eclipse.swt.widgets.Label;
-
-/**
- * Dialog field describing a separator.
- */
-public class Separator extends DialogField {
-
- private Label fSeparator;
- private int fStyle;
-
- public Separator() {
- this(SWT.NONE);
- }
-
- /**
- * @param style of the separator. See <code>Label</code> for possible
- * styles.
- */
- public Separator(int style) {
- super();
- fStyle= style;
- }
-
- // ------- layout helpers
-
- /**
- * Creates the separator and fills it in a MGridLayout.
- * @param height The heigth of the separator
- */
- public Control[] doFillIntoGrid(Composite parent, int nColumns, int height) {
- assertEnoughColumns(nColumns);
-
- Control separator= getSeparator(parent);
- separator.setLayoutData(gridDataForSeperator(nColumns, height));
-
- return new Control[] { separator };
- }
-
- /*
- * @see DialogField#doFillIntoGrid
- */
- public Control[] doFillIntoGrid(Composite parent, int nColumns) {
- return doFillIntoGrid(parent, nColumns, 4);
- }
-
- /*
- * @see DialogField#getNumberOfControls
- */
- public int getNumberOfControls() {
- return 1;
- }
-
- protected static GridData gridDataForSeperator(int span, int height) {
- GridData gd= new GridData();
- gd.horizontalAlignment= GridData.FILL;
- gd.verticalAlignment= GridData.BEGINNING;
- gd.heightHint= height;
- gd.horizontalSpan= span;
- return gd;
- }
-
- // ------- ui creation
-
- /**
- * Creates or returns the created separator.
- * @param parent The parent composite or <code>null</code> if the widget has
- * already been created.
- */
- public Control getSeparator(Composite parent) {
- if (fSeparator == null) {
- assertCompositeNotNull(parent);
- fSeparator= new Label(parent, fStyle);
- }
- return fSeparator;
- }
-
-} \ No newline at end of file
diff --git a/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/dialogfields/StringButtonDialogField.java b/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/dialogfields/StringButtonDialogField.java
deleted file mode 100644
index b802f78b93b..00000000000
--- a/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/dialogfields/StringButtonDialogField.java
+++ /dev/null
@@ -1,140 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.internal.ui.dialogfields;
-
-import org.eclipse.cdt.debug.internal.ui.SWTUtil;
-import org.eclipse.swt.SWT;
-import org.eclipse.swt.events.SelectionEvent;
-import org.eclipse.swt.events.SelectionListener;
-import org.eclipse.swt.layout.GridData;
-import org.eclipse.swt.widgets.Button;
-import org.eclipse.swt.widgets.Composite;
-import org.eclipse.swt.widgets.Control;
-import org.eclipse.swt.widgets.Label;
-import org.eclipse.swt.widgets.Text;
-
-/**
- * Dialog field containing a label, text control and a button control.
- */
-public class StringButtonDialogField extends StringDialogField {
-
- private Button fBrowseButton;
- private String fBrowseButtonLabel;
- private IStringButtonAdapter fStringButtonAdapter;
-
- private boolean fButtonEnabled;
-
- public StringButtonDialogField(IStringButtonAdapter adapter) {
- super();
- fStringButtonAdapter= adapter;
- fBrowseButtonLabel= "!Browse...!"; //$NON-NLS-1$
- fButtonEnabled= true;
- }
-
- /**
- * Sets the label of the button.
- */
- public void setButtonLabel(String label) {
- fBrowseButtonLabel= label;
- }
-
- // ------ adapter communication
-
- /**
- * Programmatical pressing of the button
- */
- public void changeControlPressed() {
- fStringButtonAdapter.changeControlPressed(this);
- }
-
- // ------- layout helpers
-
- /*
- * @see DialogField#doFillIntoGrid
- */
- public Control[] doFillIntoGrid(Composite parent, int nColumns) {
- assertEnoughColumns(nColumns);
-
- Label label= getLabelControl(parent);
- label.setLayoutData(gridDataForLabel(1));
- Text text= getTextControl(parent);
- text.setLayoutData(gridDataForText(nColumns - 2));
- Button button= getChangeControl(parent);
- button.setLayoutData(gridDataForButton(button, 1));
-
- return new Control[] { label, text, button };
- }
-
- /*
- * @see DialogField#getNumberOfControls
- */
- public int getNumberOfControls() {
- return 3;
- }
-
- protected static GridData gridDataForButton(Button button, int span) {
- GridData gd= new GridData();
- gd.horizontalAlignment= GridData.FILL;
- gd.grabExcessHorizontalSpace= false;
- gd.horizontalSpan= span;
- gd.widthHint = SWTUtil.getButtonWidthHint(button);
- return gd;
- }
-
- // ------- ui creation
-
- /**
- * Creates or returns the created buttom widget.
- * @param parent The parent composite or <code>null</code> if the widget has
- * already been created.
- */
- public Button getChangeControl(Composite parent) {
- if (fBrowseButton == null) {
- assertCompositeNotNull(parent);
-
- fBrowseButton= new Button(parent, SWT.PUSH);
- fBrowseButton.setText(fBrowseButtonLabel);
- fBrowseButton.setEnabled(isEnabled() && fButtonEnabled);
- fBrowseButton.addSelectionListener(new SelectionListener() {
- public void widgetDefaultSelected(SelectionEvent e) {
- changeControlPressed();
- }
- public void widgetSelected(SelectionEvent e) {
- changeControlPressed();
- }
- });
-
- }
- return fBrowseButton;
- }
-
- // ------ enable / disable management
-
- /**
- * Sets the enable state of the button.
- */
- public void enableButton(boolean enable) {
- if (isOkToUse(fBrowseButton)) {
- fBrowseButton.setEnabled(isEnabled() && enable);
- }
- fButtonEnabled= enable;
- }
-
- /*
- * @see DialogField#updateEnableState
- */
- protected void updateEnableState() {
- super.updateEnableState();
- if (isOkToUse(fBrowseButton)) {
- fBrowseButton.setEnabled(isEnabled() && fButtonEnabled);
- }
- }
-} \ No newline at end of file
diff --git a/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/dialogfields/StringButtonStatusDialogField.java b/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/dialogfields/StringButtonStatusDialogField.java
deleted file mode 100644
index 3458cf39684..00000000000
--- a/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/dialogfields/StringButtonStatusDialogField.java
+++ /dev/null
@@ -1,166 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.internal.ui.dialogfields;
-
-import org.eclipse.swt.SWT;
-import org.eclipse.swt.graphics.GC;
-import org.eclipse.swt.graphics.Image;
-import org.eclipse.swt.layout.GridData;
-import org.eclipse.swt.widgets.Button;
-import org.eclipse.swt.widgets.Composite;
-import org.eclipse.swt.widgets.Control;
-import org.eclipse.swt.widgets.Label;
-import org.eclipse.swt.widgets.Text;
-
-/**
- * Dialog field containing a label, text control, status label and a button control.
- * The status label can be either a image or text label, and can be usd to give
- * additional information about the current element chosen.
- */
-public class StringButtonStatusDialogField extends StringButtonDialogField {
-
- private Label fStatusLabelControl;
- private Object fStatus; // String or ImageDescriptor
-
- private String fWidthHintString;
- private int fWidthHint;
-
- public StringButtonStatusDialogField(IStringButtonAdapter adapter) {
- super(adapter);
- fStatus= null;
- fWidthHintString= null;
- fWidthHint= -1;
- }
-
- // ------ set status
-
- /**
- * Sets the status string.
- */
- public void setStatus(String status) {
- if (isOkToUse(fStatusLabelControl)) {
- fStatusLabelControl.setText(status);
- }
- fStatus= status;
- }
-
- /**
- * Sets the status image.
- * Caller is responsible to dispose image
- */
- public void setStatus(Image image) {
- if (isOkToUse(fStatusLabelControl)) {
- if (image == null) {
- fStatusLabelControl.setImage(null);
- } else {
- fStatusLabelControl.setImage(image);
- }
- }
- fStatus= image;
- }
-
- /**
- * Sets the staus string hint of the status label.
- * The string is used to calculate the size of the status label.
- */
- public void setStatusWidthHint(String widthHintString) {
- fWidthHintString= widthHintString;
- fWidthHint= -1;
- }
-
- /**
- * Sets the width hint of the status label.
- */
- public void setStatusWidthHint(int widthHint) {
- fWidthHint= widthHint;
- fWidthHintString= null;
- }
-
- // ------- layout helpers
-
- /*
- * @see DialogField#doFillIntoGrid
- */
- public Control[] doFillIntoGrid(Composite parent, int nColumns) {
- assertEnoughColumns(nColumns);
-
- Label label= getLabelControl(parent);
- label.setLayoutData(gridDataForLabel(1));
- Text text= getTextControl(parent);
- text.setLayoutData(gridDataForText(nColumns - 3));
- Label status= getStatusLabelControl(parent);
- status.setLayoutData(gridDataForStatusLabel(parent, 1));
- Button button= getChangeControl(parent);
- button.setLayoutData(gridDataForButton(button, 1));
-
- return new Control[] { label, text, status, button };
- }
-
- /*
- * @see DialogField#getNumberOfControls
- */
- public int getNumberOfControls() {
- return 4;
- }
-
- protected GridData gridDataForStatusLabel(Control aControl, int span) {
- GridData gd= new GridData();
- gd.horizontalAlignment= GridData.BEGINNING;
- gd.grabExcessHorizontalSpace= false;
- gd.horizontalIndent= 0;
- if (fWidthHintString != null) {
- GC gc= new GC(aControl);
- gd.widthHint= gc.textExtent(fWidthHintString).x;
- gc.dispose();
- } else if (fWidthHint != -1) {
- gd.widthHint= fWidthHint;
- } else {
- gd.widthHint= SWT.DEFAULT;
- }
- return gd;
- }
-
- // ------- ui creation
-
- /**
- * Creates or returns the created status label widget.
- * @param parent The parent composite or <code>null</code> when the widget has
- * already been created.
- */
- public Label getStatusLabelControl(Composite parent) {
- if (fStatusLabelControl == null) {
- assertCompositeNotNull(parent);
- fStatusLabelControl= new Label(parent, SWT.LEFT);
- fStatusLabelControl.setFont(parent.getFont());
- fStatusLabelControl.setEnabled(isEnabled());
- if (fStatus instanceof Image) {
- fStatusLabelControl.setImage((Image)fStatus);
- } else if (fStatus instanceof String) {
- fStatusLabelControl.setText((String)fStatus);
- } else {
- // must be null
- }
- }
- return fStatusLabelControl;
- }
-
- // ------ enable / disable management
-
- /*
- * @see DialogField#updateEnableState
- */
- protected void updateEnableState() {
- super.updateEnableState();
- if (isOkToUse(fStatusLabelControl)) {
- fStatusLabelControl.setEnabled(isEnabled());
- }
- }
-} \ No newline at end of file
diff --git a/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/dialogfields/StringDialogField.java b/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/dialogfields/StringDialogField.java
deleted file mode 100644
index 0cafbe492d5..00000000000
--- a/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/dialogfields/StringDialogField.java
+++ /dev/null
@@ -1,159 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.internal.ui.dialogfields;
-
-import org.eclipse.swt.SWT;
-import org.eclipse.swt.events.ModifyEvent;
-import org.eclipse.swt.events.ModifyListener;
-import org.eclipse.swt.layout.GridData;
-import org.eclipse.swt.widgets.Composite;
-import org.eclipse.swt.widgets.Control;
-import org.eclipse.swt.widgets.Label;
-import org.eclipse.swt.widgets.Text;
-
-/**
- * Dialog field containing a label and a text control.
- */
-public class StringDialogField extends DialogField {
-
- private String fText;
- private Text fTextControl;
- private ModifyListener fModifyListener;
-
- public StringDialogField() {
- super();
- fText= ""; //$NON-NLS-1$
- }
-
- // ------- layout helpers
-
- /*
- * @see DialogField#doFillIntoGrid
- */
- public Control[] doFillIntoGrid(Composite parent, int nColumns) {
- assertEnoughColumns(nColumns);
-
- Label label= getLabelControl(parent);
- label.setLayoutData(gridDataForLabel(1));
- Text text= getTextControl(parent);
- text.setLayoutData(gridDataForText(nColumns - 1));
-
- return new Control[] { label, text };
- }
-
- /*
- * @see DialogField#getNumberOfControls
- */
- public int getNumberOfControls() {
- return 2;
- }
-
- protected static GridData gridDataForText(int span) {
- GridData gd= new GridData();
- gd.horizontalAlignment= GridData.FILL;
- gd.grabExcessHorizontalSpace= false;
- gd.horizontalSpan= span;
- return gd;
- }
-
- // ------- focus methods
-
- /*
- * @see DialogField#setFocus
- */
- public boolean setFocus() {
- if (isOkToUse(fTextControl)) {
- fTextControl.setFocus();
- fTextControl.setSelection(0, fTextControl.getText().length());
- }
- return true;
- }
-
- // ------- ui creation
-
- /**
- * Creates or returns the created text control.
- * @param parent The parent composite or <code>null</code> when the widget has
- * already been created.
- */
- public Text getTextControl(Composite parent) {
- if (fTextControl == null) {
- assertCompositeNotNull(parent);
- fModifyListener= new ModifyListener() {
- public void modifyText(ModifyEvent e) {
- doModifyText(e);
- }
- };
-
- fTextControl= new Text(parent, SWT.SINGLE | SWT.BORDER);
- // moved up due to 1GEUNW2
- fTextControl.setText(fText);
- fTextControl.setFont(parent.getFont());
- fTextControl.addModifyListener(fModifyListener);
-
- fTextControl.setEnabled(isEnabled());
- }
- return fTextControl;
- }
-
- protected void doModifyText(ModifyEvent e) {
- if (isOkToUse(fTextControl)) {
- fText= fTextControl.getText();
- }
- dialogFieldChanged();
- }
-
- // ------ enable / disable management
-
- /*
- * @see DialogField#updateEnableState
- */
- protected void updateEnableState() {
- super.updateEnableState();
- if (isOkToUse(fTextControl)) {
- fTextControl.setEnabled(isEnabled());
- }
- }
-
- // ------ text access
-
- /**
- * Gets the text. Can not be <code>null</code>
- */
- public String getText() {
- return fText;
- }
-
- /**
- * Sets the text. Triggers a dialog-changed event.
- */
- public void setText(String text) {
- fText= text;
- if (isOkToUse(fTextControl)) {
- fTextControl.setText(text);
- } else {
- dialogFieldChanged();
- }
- }
-
- /**
- * Sets the text without triggering a dialog-changed event.
- */
- public void setTextWithoutUpdate(String text) {
- fText= text;
- if (isOkToUse(fTextControl)) {
- fTextControl.removeModifyListener(fModifyListener);
- fTextControl.setText(text);
- fTextControl.addModifyListener(fModifyListener);
- }
- }
-
-} \ No newline at end of file
diff --git a/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/editors/DebugTextHover.java b/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/editors/DebugTextHover.java
deleted file mode 100644
index af084bb626a..00000000000
--- a/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/editors/DebugTextHover.java
+++ /dev/null
@@ -1,344 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.internal.ui.editors;
-
-import org.eclipse.cdt.debug.core.model.ICStackFrame;
-import org.eclipse.cdt.debug.internal.ui.CDebugUIUtils;
-import org.eclipse.cdt.debug.ui.CDebugUIPlugin;
-import org.eclipse.cdt.ui.text.c.hover.ICEditorTextHover;
-import org.eclipse.core.runtime.IAdaptable;
-import org.eclipse.debug.core.DebugException;
-import org.eclipse.debug.ui.IDebugUIConstants;
-import org.eclipse.jface.text.BadLocationException;
-import org.eclipse.jface.text.IDocument;
-import org.eclipse.jface.text.IInformationControlCreator;
-import org.eclipse.jface.text.IRegion;
-import org.eclipse.jface.text.ITextHoverExtension;
-import org.eclipse.jface.text.ITextViewer;
-import org.eclipse.jface.text.ITextSelection;
-import org.eclipse.jface.viewers.ISelection;
-import org.eclipse.jface.viewers.ISelectionProvider;
-import org.eclipse.jface.viewers.IStructuredSelection;
-import java.util.regex.*;
-import org.eclipse.ui.IEditorPart;
-import org.eclipse.ui.IPartListener;
-import org.eclipse.ui.ISelectionListener;
-import org.eclipse.ui.IWorkbenchPage;
-import org.eclipse.ui.IWorkbenchPart;
-
-/* The class LanguageOperators protects some language specific
- * operator information used by the DebugTextHover class.
- */
-
-class LanguageOperators {
- public String getAssignmentOperator() {
- return "=";
- }
-
- public String getGreaterThanEqualToOperator() {
- return ">=";
- }
-
- public String getEqualToOperator() {
- return "==";
- }
-
- public String getNotEqualToOperator() {
- return "!=";
- }
-
- public String getLessThenEqualToOperator() {
- return "<=";
- }
-
- public String getValueChangeOperatorsRegex() {
- return "(\\+\\+)|(\\-\\-)|(\\+\\=)|"
- + "(\\-\\=)|(\\*\\=)|(/\\=)|(\\&\\=)"
- + "(\\%\\=)|(\\^\\=)|(\\|\\=)|(\\<\\<\\=)|(\\>\\>\\=)";
- }
-
- public String getEqualToOperatorsRegex() {
- return "\\=\\=|\\<\\=|\\>\\=|!\\=";
- }
-
- public String getIdentifierRegex() {
- return "[_A-Za-z][_A-Za-z0-9]*";
- }
-}
-
-/**
- * The text hovering support for C/C++ debugger.
- */
-
-public class DebugTextHover implements ICEditorTextHover, ITextHoverExtension,
- ISelectionListener, IPartListener {
-
- static final private int MAX_HOVER_INFO_SIZE = 100;
-
- protected ISelection fSelection = null;
-
- protected IEditorPart fEditor;
-
- /**
- * Constructor for DebugTextHover.
- */
- public DebugTextHover() {
- super();
- }
-
- /*
- * (non-Javadoc)
- *
- * @see org.eclipse.jface.text.ITextHover#getHoverInfo(org.eclipse.jface.text.ITextViewer,
- * org.eclipse.jface.text.IRegion)
- */
- public String getHoverInfo(ITextViewer textViewer, IRegion hoverRegion) {
- ICStackFrame frame = getFrame();
- if (frame != null && frame.canEvaluate()) {
- try {
- IDocument document = textViewer.getDocument();
- if (document == null)
- return null;
- String expression = document.get(hoverRegion.getOffset(),
- hoverRegion.getLength());
- if (expression == null)
- return null;
- expression = expression.trim();
- if (expression.length() == 0)
- return null;
- LanguageOperators operatorsObj = new LanguageOperators();
-
- Pattern pattern = Pattern.compile(operatorsObj
- .getValueChangeOperatorsRegex());
- Matcher matcher = pattern.matcher(expression);
-
- boolean match_found = matcher.find();
- // Get matching string
- // If the expression has some operators which can change the
- // value of a variable, that expresssion should not be
- // evaluated.
- if (match_found) {
- return null;
- } else {
- pattern = Pattern.compile(operatorsObj
- .getEqualToOperatorsRegex());
- String[] tokens = pattern.split(expression);
- for (int i = 0; i < tokens.length; i++) {
- //If the expression contains assignment operator that
- // can change the value of a variable, the expression
- // should not be evaluated.
- if (tokens[i].indexOf(operatorsObj
- .getAssignmentOperator()) != -1)
- return null;
- }
- //Supressing function calls from evaluation.
- String functionCallRegex = operatorsObj
- .getIdentifierRegex()
- + "\\s*\\(";
- pattern = Pattern.compile(functionCallRegex);
- matcher = pattern.matcher(expression);
- match_found = matcher.find();
- if (match_found) {
- return null;
- }
- }
- StringBuffer buffer = new StringBuffer();
- String result = evaluateExpression(frame, expression);
- if (result == null)
- return null;
- try {
- if (result != null)
- appendVariable(buffer, makeHTMLSafe(expression),
- makeHTMLSafe(result.trim()));
- } catch (DebugException x) {
- CDebugUIPlugin.log(x);
- }
- if (buffer.length() > 0) {
- return buffer.toString();
- }
- } catch (BadLocationException x) {
- CDebugUIPlugin.log(x);
- }
- }
- return null;
- }
-
- /*
- * (non-Javadoc)
- *
- * @see org.eclipse.jface.text.ITextHover#getHoverRegion(org.eclipse.jface.text.ITextViewer, int)
- */
- public IRegion getHoverRegion(ITextViewer viewer, int offset) {
- /*
- * Point selectedRange = viewer.getSelectedRange(); if ( selectedRange.x >= 0 && selectedRange.y > 0 && offset >= selectedRange.x && offset <=
- * selectedRange.x + selectedRange.y ) return new Region( selectedRange.x, selectedRange.y );
- */
- if (viewer != null)
- return CDebugUIUtils.findWord(viewer.getDocument(), offset);
- return null;
- }
-
- private String evaluateExpression(ICStackFrame frame, String expression) {
- String result = null;
- try {
- result = frame.evaluateExpressionToString(expression);
- } catch (DebugException e) {
- // ignore
- }
- return result;
- }
-
- /**
- * Append HTML for the given variable to the given buffer
- */
- private static void appendVariable(StringBuffer buffer, String expression,
- String value) throws DebugException {
- if (value.length() > MAX_HOVER_INFO_SIZE)
- value = value.substring(0, MAX_HOVER_INFO_SIZE) + " ..."; //$NON-NLS-1$
- buffer.append("<p>"); //$NON-NLS-1$
- buffer.append("<pre>").append(expression).append("</pre>"); //$NON-NLS-1$ //$NON-NLS-2$
- buffer.append(" = "); //$NON-NLS-1$
- buffer.append("<b><pre>").append(value).append("</pre></b>"); //$NON-NLS-1$ //$NON-NLS-2$
- buffer.append("</p>"); //$NON-NLS-1$
- }
-
- /*
- * (non-Javadoc)
- *
- * @see org.eclipse.cdt.ui.text.c.hover.ICEditorTextHover#setEditor(org.eclipse.ui.IEditorPart)
- */
- public void setEditor(IEditorPart editor) {
- if (editor != null) {
- fEditor = editor;
- final IWorkbenchPage page = editor.getSite().getPage();
- page.addSelectionListener(IDebugUIConstants.ID_DEBUG_VIEW, this);
- page.addPartListener(this);
- // initialize selection
- Runnable r = new Runnable() {
-
- public void run() {
- fSelection = page
- .getSelection(IDebugUIConstants.ID_DEBUG_VIEW);
- }
- };
- CDebugUIPlugin.getStandardDisplay().asyncExec(r);
- }
- }
-
- /*
- * (non-Javadoc)
- *
- * @see org.eclipse.ui.ISelectionListener#selectionChanged(org.eclipse.ui.IWorkbenchPart, org.eclipse.jface.viewers.ISelection)
- */
- public void selectionChanged(IWorkbenchPart part, ISelection selection) {
- fSelection = selection;
- }
-
- /*
- * (non-Javadoc)
- *
- * @see org.eclipse.ui.IPartListener#partActivated(org.eclipse.ui.IWorkbenchPart)
- */
- public void partActivated(IWorkbenchPart part) {
- }
-
- /*
- * (non-Javadoc)
- *
- * @see org.eclipse.ui.IPartListener#partBroughtToTop(org.eclipse.ui.IWorkbenchPart)
- */
- public void partBroughtToTop(IWorkbenchPart part) {
- }
-
- /*
- * (non-Javadoc)
- *
- * @see org.eclipse.ui.IPartListener#partClosed(org.eclipse.ui.IWorkbenchPart)
- */
- public void partClosed(IWorkbenchPart part) {
- if (part.equals(fEditor)) {
- IWorkbenchPage page = fEditor.getSite().getPage();
- page.removeSelectionListener(IDebugUIConstants.ID_DEBUG_VIEW, this);
- page.removePartListener(this);
- fSelection = null;
- fEditor = null;
- }
- }
-
- /*
- * (non-Javadoc)
- *
- * @see org.eclipse.ui.IPartListener#partDeactivated(org.eclipse.ui.IWorkbenchPart)
- */
- public void partDeactivated(IWorkbenchPart part) {
- }
-
- /*
- * (non-Javadoc)
- *
- * @see org.eclipse.ui.IPartListener#partOpened(org.eclipse.ui.IWorkbenchPart)
- */
- public void partOpened(IWorkbenchPart part) {
- }
-
- /**
- * Returns the evaluation stack frame, or <code>null</code> if none.
- *
- * @return the evaluation stack frame, or <code>null</code> if none
- */
- protected ICStackFrame getFrame() {
- if (fSelection instanceof IStructuredSelection) {
- IStructuredSelection selection = (IStructuredSelection) fSelection;
- if (selection.size() == 1) {
- Object el = selection.getFirstElement();
- if (el instanceof IAdaptable) {
- return (ICStackFrame) ((IAdaptable) el)
- .getAdapter(ICStackFrame.class);
- }
- }
- }
- return null;
- }
-
- /*
- * (non-Javadoc)
- *
- * @see org.eclipse.jface.text.ITextHoverExtension#getHoverControlCreator()
- */
- public IInformationControlCreator getHoverControlCreator() {
- return null;
- }
-
- /**
- * Replace any characters in the given String that would confuse an HTML parser with their escape sequences.
- */
- private static String makeHTMLSafe(String string) {
- StringBuffer buffer = new StringBuffer(string.length());
- for (int i = 0; i != string.length(); i++) {
- char ch = string.charAt(i);
- switch (ch) {
- case '&':
- buffer.append("&amp;"); //$NON-NLS-1$
- break;
- case '<':
- buffer.append("&lt;"); //$NON-NLS-1$
- break;
- case '>':
- buffer.append("&gt;"); //$NON-NLS-1$
- break;
- default:
- buffer.append(ch);
- break;
- }
- }
- return buffer.toString();
- }
-}
diff --git a/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/editors/SharedTextColors.java b/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/editors/SharedTextColors.java
deleted file mode 100644
index 46b016c39fd..00000000000
--- a/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/editors/SharedTextColors.java
+++ /dev/null
@@ -1,76 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.internal.ui.editors;
-
-import java.util.Iterator;
-import org.eclipse.swt.widgets.Display;
-import java.util.Map;
-import java.util.HashMap;
-import org.eclipse.swt.graphics.Color;
-import org.eclipse.jface.text.source.ISharedTextColors;
-import org.eclipse.swt.graphics.RGB;
-
-/*
- * @see org.eclipse.jface.text.source.ISharedTextColors
- * @since 2.1
- */
-class SharedTextColors implements ISharedTextColors {
-
- /** The display table. */
- private Map fDisplayTable;
-
- /** Creates an returns a shared color manager. */
- public SharedTextColors() {
- super();
- }
-
- /*
- * @see ISharedTextColors#getColor(RGB)
- */
- public Color getColor(RGB rgb) {
- if (rgb == null)
- return null;
-
- if (fDisplayTable == null)
- fDisplayTable= new HashMap(2);
-
- Display display= Display.getCurrent();
-
- Map colorTable= (Map) fDisplayTable.get(display);
- if (colorTable == null) {
- colorTable= new HashMap(10);
- fDisplayTable.put(display, colorTable);
- }
-
- Color color= (Color) colorTable.get(rgb);
- if (color == null) {
- color= new Color(display, rgb);
- colorTable.put(rgb, color);
- }
-
- return color;
- }
-
- /*
- * @see ISharedTextColors#dispose()
- */
- public void dispose() {
- if (fDisplayTable != null) {
- Iterator j= fDisplayTable.values().iterator();
- while (j.hasNext()) {
- Iterator i= ((Map) j.next()).values().iterator();
- while (i.hasNext())
- ((Color) i.next()).dispose();
- }
- }
- }
-
-}
diff --git a/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/elements/adapters/CDebugElementAdapterFactory.java b/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/elements/adapters/CDebugElementAdapterFactory.java
deleted file mode 100644
index 49d9e3b972c..00000000000
--- a/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/elements/adapters/CDebugElementAdapterFactory.java
+++ /dev/null
@@ -1,86 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.internal.ui.elements.adapters;
-
-import org.eclipse.cdt.core.model.ICElement;
-import org.eclipse.cdt.debug.core.model.ICModule;
-import org.eclipse.cdt.debug.core.model.IModuleRetrieval;
-import org.eclipse.cdt.debug.internal.ui.views.modules.ModuleContentProvider;
-import org.eclipse.cdt.debug.internal.ui.views.modules.ModuleLabelProvider;
-import org.eclipse.cdt.debug.internal.ui.views.modules.ModuleMementoProvider;
-import org.eclipse.cdt.debug.internal.ui.views.modules.ModuleProxyFactory;
-import org.eclipse.core.runtime.IAdapterFactory;
-import org.eclipse.debug.internal.ui.viewers.model.provisional.IElementContentProvider;
-import org.eclipse.debug.internal.ui.viewers.model.provisional.IElementLabelProvider;
-import org.eclipse.debug.internal.ui.viewers.model.provisional.IElementMementoProvider;
-import org.eclipse.debug.internal.ui.viewers.model.provisional.IModelProxyFactoryAdapter;
-
-/**
- * Comment for .
- */
-public class CDebugElementAdapterFactory implements IAdapterFactory {
-
- private static IElementLabelProvider fgModuleLabelProvider = new ModuleLabelProvider();
- private static IElementContentProvider fgModuleContentProvider = new ModuleContentProvider();
- private static IModelProxyFactoryAdapter fgModuleProxyFactory = new ModuleProxyFactory();
- private static IElementMementoProvider fgModuleMementoProvider = new ModuleMementoProvider();
-
- /* (non-Javadoc)
- * @see org.eclipse.core.runtime.IAdapterFactory#getAdapter(java.lang.Object, java.lang.Class)
- */
- public Object getAdapter( Object adaptableObject, Class adapterType ) {
- if ( adapterType.isInstance( adaptableObject ) ) {
- return adaptableObject;
- }
- if ( adapterType.equals( IElementLabelProvider.class ) ) {
- if ( adaptableObject instanceof ICModule ) {
- return fgModuleLabelProvider;
- }
- if ( adaptableObject instanceof ICElement ) {
- return fgModuleLabelProvider;
- }
- }
- if ( adapterType.equals( IElementContentProvider.class ) ) {
- if ( adaptableObject instanceof IModuleRetrieval ) {
- return fgModuleContentProvider;
- }
- if ( adaptableObject instanceof ICModule ) {
- return fgModuleContentProvider;
- }
- if ( adaptableObject instanceof ICElement ) {
- return fgModuleContentProvider;
- }
- }
- if ( adapterType.equals( IModelProxyFactoryAdapter.class ) ) {
- if ( adaptableObject instanceof IModuleRetrieval ) {
- return fgModuleProxyFactory;
- }
- }
- if ( adapterType.equals( IElementMementoProvider.class ) ) {
- if ( adaptableObject instanceof IModuleRetrieval ) {
- return fgModuleMementoProvider;
- }
- }
- return null;
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.core.runtime.IAdapterFactory#getAdapterList()
- */
- public Class[] getAdapterList() {
- return new Class[] {
- IElementLabelProvider.class,
- IElementContentProvider.class,
- IModelProxyFactoryAdapter.class,
- IElementMementoProvider.class,
- };
- }
-}
diff --git a/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/elements/adapters/CMemoryAdapterFactory.java b/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/elements/adapters/CMemoryAdapterFactory.java
deleted file mode 100644
index 6eefc29f777..00000000000
--- a/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/elements/adapters/CMemoryAdapterFactory.java
+++ /dev/null
@@ -1,68 +0,0 @@
-/*******************************************************************************
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * Freescale Semiconductor - initial API and implementation
- *
- *******************************************************************************/
-
-package org.eclipse.cdt.debug.internal.ui.elements.adapters;
-
-import org.eclipse.cdt.debug.internal.core.CMemoryBlockRetrievalExtension;
-import org.eclipse.cdt.debug.internal.core.model.CMemoryBlockExtension;
-import org.eclipse.cdt.debug.internal.ui.views.memory.AddMemoryBlocks;
-import org.eclipse.cdt.debug.internal.ui.views.memory.MemoryBlockLabelDecorator;
-import org.eclipse.core.runtime.IAdapterFactory;
-import org.eclipse.debug.ui.actions.IAddMemoryBlocksTarget;
-import org.eclipse.jface.viewers.ILabelDecorator;
-
-/**
- * Provides the IAdaptable mapping for things related to the memory-space
- * extension of the platform's Memory view
- */
-public class CMemoryAdapterFactory implements IAdapterFactory {
-
- private static IAddMemoryBlocksTarget fgAddMemoryBlocks = new AddMemoryBlocks();
-
- /*
- * (non-Javadoc)
- *
- * @see org.eclipse.core.runtime.IAdapterFactory#getAdapter(java.lang.Object,
- * java.lang.Class)
- */
- public Object getAdapter(Object adaptableObject, Class adapterType) {
- if (adapterType.isInstance(adaptableObject)) {
- return adaptableObject;
- }
-
- if (adapterType.equals(IAddMemoryBlocksTarget.class)) {
- if (adaptableObject instanceof CMemoryBlockRetrievalExtension) {
- if (((CMemoryBlockRetrievalExtension)adaptableObject).hasMemorySpaces())
- return fgAddMemoryBlocks;
- }
- }
-
- if (adapterType.equals(ILabelDecorator.class)) {
- if (adaptableObject instanceof CMemoryBlockExtension) {
- // If a memory space isn't involved, the standard label is fine
- CMemoryBlockExtension memBlock = (CMemoryBlockExtension)adaptableObject;
- if (memBlock.getMemorySpaceID() != null)
- return new MemoryBlockLabelDecorator(memBlock);
- }
- }
-
- return null;
- }
-
- /*
- * (non-Javadoc)
- *
- * @see org.eclipse.core.runtime.IAdapterFactory#getAdapterList()
- */
- public Class[] getAdapterList() {
- return new Class[] { IAddMemoryBlocksTarget.class, ILabelDecorator.class };
- }
-}
diff --git a/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/elements/adapters/CWatchExpressionFactoryAdapter.java b/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/elements/adapters/CWatchExpressionFactoryAdapter.java
deleted file mode 100644
index 8f8258ee97b..00000000000
--- a/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/elements/adapters/CWatchExpressionFactoryAdapter.java
+++ /dev/null
@@ -1,33 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2007 ARM and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * ARM - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.internal.ui.elements.adapters;
-
-import org.eclipse.cdt.debug.core.model.ICVariable;
-import org.eclipse.core.runtime.CoreException;
-import org.eclipse.debug.core.model.IVariable;
-import org.eclipse.debug.ui.actions.IWatchExpressionFactoryAdapterExtension;
-
-public class CWatchExpressionFactoryAdapter implements IWatchExpressionFactoryAdapterExtension {
-
- /* (non-Javadoc)
- * @see org.eclipse.debug.ui.actions.IWatchExpressionFactoryAdapterExtension#canCreateWatchExpression(org.eclipse.debug.core.model.IVariable)
- */
- public boolean canCreateWatchExpression( IVariable variable ) {
- return ( variable instanceof ICVariable );
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.debug.ui.actions.IWatchExpressionFactoryAdapter#createWatchExpression(org.eclipse.debug.core.model.IVariable)
- */
- public String createWatchExpression( IVariable variable ) throws CoreException {
- return ( variable instanceof ICVariable ) ? ((ICVariable)variable).getExpressionString() : null;
- }
-}
diff --git a/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/elements/adapters/CWatchExpressionFactoryAdapterFactory.java b/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/elements/adapters/CWatchExpressionFactoryAdapterFactory.java
deleted file mode 100644
index 256f9f97eca..00000000000
--- a/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/elements/adapters/CWatchExpressionFactoryAdapterFactory.java
+++ /dev/null
@@ -1,41 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2007 ARM and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * ARM - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.internal.ui.elements.adapters;
-
-import org.eclipse.cdt.debug.core.model.ICVariable;
-import org.eclipse.core.runtime.IAdapterFactory;
-import org.eclipse.debug.ui.actions.IWatchExpressionFactoryAdapter;
-
-public class CWatchExpressionFactoryAdapterFactory implements IAdapterFactory {
-
- private static IWatchExpressionFactoryAdapter fgWatchExpressionFactoryAdapter = new CWatchExpressionFactoryAdapter();
-
- /* (non-Javadoc)
- * @see org.eclipse.core.runtime.IAdapterFactory#getAdapter(java.lang.Object, java.lang.Class)
- */
- public Object getAdapter( Object adaptableObject, Class adapterType ) {
- if ( adapterType.equals( IWatchExpressionFactoryAdapter.class ) ) {
- if ( adaptableObject instanceof ICVariable ) {
- return fgWatchExpressionFactoryAdapter;
- }
- }
- return null;
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.core.runtime.IAdapterFactory#getAdapterList()
- */
- public Class[] getAdapterList() {
- return new Class[] {
- IWatchExpressionFactoryAdapter.class,
- };
- }
-}
diff --git a/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/preferences/CDebugPreferencePage.java b/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/preferences/CDebugPreferencePage.java
deleted file mode 100644
index 15ad5eaba25..00000000000
--- a/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/preferences/CDebugPreferencePage.java
+++ /dev/null
@@ -1,381 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004, 2005 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.internal.ui.preferences;
-
-import java.text.MessageFormat;
-import org.eclipse.cdt.debug.core.CDebugCorePlugin;
-import org.eclipse.cdt.debug.core.ICDebugConstants;
-import org.eclipse.cdt.debug.core.cdi.ICDIFormat;
-import org.eclipse.cdt.debug.internal.ui.ICDebugHelpContextIds;
-import org.eclipse.cdt.debug.internal.ui.IInternalCDebugUIConstants;
-import org.eclipse.cdt.debug.ui.CDebugUIPlugin;
-import org.eclipse.cdt.utils.ui.controls.ControlFactory;
-import org.eclipse.debug.ui.IDebugUIConstants;
-import org.eclipse.debug.ui.IDebugView;
-import org.eclipse.jface.preference.ColorFieldEditor;
-import org.eclipse.jface.preference.FieldEditor;
-import org.eclipse.jface.preference.IPreferenceStore;
-import org.eclipse.jface.preference.IntegerFieldEditor;
-import org.eclipse.jface.preference.PreferenceConverter;
-import org.eclipse.jface.preference.PreferencePage;
-import org.eclipse.jface.preference.StringFieldEditor;
-import org.eclipse.jface.util.IPropertyChangeListener;
-import org.eclipse.jface.util.PropertyChangeEvent;
-import org.eclipse.jface.viewers.StructuredViewer;
-import org.eclipse.jface.viewers.Viewer;
-import org.eclipse.swt.SWT;
-import org.eclipse.swt.custom.BusyIndicator;
-import org.eclipse.swt.layout.GridData;
-import org.eclipse.swt.layout.GridLayout;
-import org.eclipse.swt.widgets.Button;
-import org.eclipse.swt.widgets.Combo;
-import org.eclipse.swt.widgets.Composite;
-import org.eclipse.swt.widgets.Control;
-import org.eclipse.swt.widgets.Label;
-import org.eclipse.ui.IViewPart;
-import org.eclipse.ui.IWorkbench;
-import org.eclipse.ui.IWorkbenchPage;
-import org.eclipse.ui.IWorkbenchPreferencePage;
-import org.eclipse.ui.IWorkbenchWindow;
-
-/**
- * Preference page for debug preferences that apply specifically to C/C++ Debugging.
- */
-public class CDebugPreferencePage extends PreferencePage implements IWorkbenchPreferencePage {
-
- private IWorkbench fWorkbench;
-
- // View setting widgets
- private Button fPathsButton;
-
- private Combo fVariableFormatCombo;
-
- private Combo fExpressionFormatCombo;
-
- private Combo fRegisterFormatCombo;
-
- // Maximum number of disassembly instructions to display
- private IntegerFieldEditor fMaxNumberOfInstructionsText;
-
- // The color of source lines in the disassembly view.
- private ColorFieldEditor fDisassemblySourceColor;
-
- private static final int NUMBER_OF_DIGITS = 3;
-
- // Format constants
- private static int[] fFormatIds = new int[]{ ICDIFormat.NATURAL, ICDIFormat.HEXADECIMAL, ICDIFormat.DECIMAL, ICDIFormat.BINARY };
-
- private static String[] fFormatLabels = new String[]{ PreferenceMessages.getString( "CDebugPreferencePage.0" ), PreferenceMessages.getString( "CDebugPreferencePage.1" ), PreferenceMessages.getString( "CDebugPreferencePage.2" ), PreferenceMessages.getString( "CDebugPreferencePage.14" ) }; //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$ //$NON-NLS-4$
-
- private PropertyChangeListener fPropertyChangeListener;
-
- protected class PropertyChangeListener implements IPropertyChangeListener {
-
- private boolean fHasStateChanged = false;
-
- public void propertyChange( PropertyChangeEvent event ) {
- if ( event.getProperty().equals( ICDebugPreferenceConstants.PREF_SHOW_HEX_VALUES ) ) {
- fHasStateChanged = true;
- }
- else if ( event.getProperty().equals( ICDebugPreferenceConstants.PREF_SHOW_CHAR_VALUES ) ) {
- fHasStateChanged = true;
- }
- }
-
- protected boolean hasStateChanged() {
- return fHasStateChanged;
- }
- }
-
- /**
- * Constructor for CDebugPreferencePage.
- */
- public CDebugPreferencePage() {
- super();
- setPreferenceStore( CDebugUIPlugin.getDefault().getPreferenceStore() );
- getPreferenceStore().addPropertyChangeListener( getPropertyChangeListener() );
- setDescription( PreferenceMessages.getString( "CDebugPreferencePage.3" ) ); //$NON-NLS-1$
- }
-
- /*
- * (non-Javadoc)
- *
- * @see org.eclipse.jface.preference.PreferencePage#createContents(Composite)
- */
- protected Control createContents( Composite parent ) {
- getWorkbench().getHelpSystem().setHelp( getControl(), ICDebugHelpContextIds.C_DEBUG_PREFERENCE_PAGE );
- //The main composite
- Composite composite = new Composite( parent, SWT.NULL );
- GridLayout layout = new GridLayout();
- layout.numColumns = 1;
- layout.marginHeight = 0;
- layout.marginWidth = 0;
- composite.setLayout( layout );
- GridData data = new GridData();
- data.verticalAlignment = GridData.FILL;
- data.horizontalAlignment = GridData.FILL;
- composite.setLayoutData( data );
- createSpacer( composite, 1 );
- createViewSettingPreferences( composite );
- createSpacer( composite, 1 );
- createDisassemblySettingPreferences( composite );
- setValues();
- return composite;
- }
-
- /**
- * Creates composite group and sets the default layout data.
- *
- * @param parent
- * the parent of the new composite
- * @param numColumns
- * the number of columns for the new composite
- * @param labelText
- * the text label of the new composite
- * @return the newly-created composite
- */
- private Composite createGroupComposite( Composite parent, int numColumns, String labelText ) {
- return ControlFactory.createGroup( parent, labelText, numColumns );
- }
-
- /**
- * Set the values of the component widgets based on the values in the preference store
- */
- private void setValues() {
- IPreferenceStore store = getPreferenceStore();
- fPathsButton.setSelection( store.getBoolean( ICDebugPreferenceConstants.PREF_SHOW_FULL_PATHS ) );
- getMaxNumberOfInstructionsText().setStringValue( new Integer( CDebugCorePlugin.getDefault().getPluginPreferences().getInt( ICDebugConstants.PREF_MAX_NUMBER_OF_INSTRUCTIONS ) ).toString() );
- getDisassemblySourceColor().load();
- fVariableFormatCombo.select( getFormatIndex( CDebugCorePlugin.getDefault().getPluginPreferences().getInt( ICDebugConstants.PREF_DEFAULT_VARIABLE_FORMAT ) ) );
- fExpressionFormatCombo.select( getFormatIndex( CDebugCorePlugin.getDefault().getPluginPreferences().getInt( ICDebugConstants.PREF_DEFAULT_EXPRESSION_FORMAT ) ) );
- fRegisterFormatCombo.select( getFormatIndex( CDebugCorePlugin.getDefault().getPluginPreferences().getInt( ICDebugConstants.PREF_DEFAULT_REGISTER_FORMAT ) ) );
- }
-
- /*
- * (non-Javadoc)
- *
- * @see org.eclipse.ui.IWorkbenchPreferencePage#init(IWorkbench)
- */
- public void init( IWorkbench workbench ) {
- fWorkbench = workbench;
- }
-
- protected PropertyChangeListener getPropertyChangeListener() {
- if ( fPropertyChangeListener == null ) {
- fPropertyChangeListener = new PropertyChangeListener();
- }
- return fPropertyChangeListener;
- }
-
- /**
- * Set the default preferences for this page.
- */
- public static void initDefaults( IPreferenceStore store ) {
- store.setDefault( ICDebugPreferenceConstants.PREF_SHOW_HEX_VALUES, false );
- store.setDefault( ICDebugPreferenceConstants.PREF_SHOW_FULL_PATHS, true );
- PreferenceConverter.setDefault( store, IInternalCDebugUIConstants.DISASSEMBLY_SOURCE_LINE_COLOR, IInternalCDebugUIConstants.DEFAULT_DISASSEMBLY_SOURCE_LINE_RGB );
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.jface.dialogs.IDialogPage#dispose()
- */
- public void dispose() {
- super.dispose();
- getPreferenceStore().removePropertyChangeListener( getPropertyChangeListener() );
- }
-
- /**
- * Create the view setting preferences composite widget
- */
- private void createViewSettingPreferences( Composite parent ) {
- Composite comp = createGroupComposite( parent, 1, PreferenceMessages.getString( "CDebugPreferencePage.4" ) ); //$NON-NLS-1$
- fPathsButton = createCheckButton( comp, PreferenceMessages.getString( "CDebugPreferencePage.5" ) ); //$NON-NLS-1$
- Composite formatComposite = ControlFactory.createCompositeEx( comp, 2, 0 );
- ((GridLayout)formatComposite.getLayout()).makeColumnsEqualWidth = true;
- fVariableFormatCombo = createComboBox( formatComposite, PreferenceMessages.getString( "CDebugPreferencePage.8" ), fFormatLabels, fFormatLabels[0] ); //$NON-NLS-1$
- fExpressionFormatCombo = createComboBox( formatComposite, PreferenceMessages.getString( "CDebugPreferencePage.9" ), fFormatLabels, fFormatLabels[0] ); //$NON-NLS-1$
- fRegisterFormatCombo = createComboBox( formatComposite, PreferenceMessages.getString( "CDebugPreferencePage.10" ), fFormatLabels, fFormatLabels[0] ); //$NON-NLS-1$
- }
-
- /**
- * Create the disassembly setting preferences composite widget
- */
- private void createDisassemblySettingPreferences( Composite parent ) {
- Composite group = createGroupComposite( parent, 1, PreferenceMessages.getString( "CDebugPreferencePage.11" ) ); //$NON-NLS-1$
- Composite comp = ControlFactory.createComposite( group, 2 );
- createMaxNumberOfInstructionsField( comp );
- createDisassemblyColorsField( comp );
- }
-
- private void createMaxNumberOfInstructionsField( Composite parent ) {
- fMaxNumberOfInstructionsText = new IntegerFieldEditor( ICDebugConstants.PREF_MAX_NUMBER_OF_INSTRUCTIONS, PreferenceMessages.getString( "CDebugPreferencePage.12" ), parent, NUMBER_OF_DIGITS ); //$NON-NLS-1$
- GridData data = (GridData)fMaxNumberOfInstructionsText.getTextControl( parent ).getLayoutData();
- data.horizontalAlignment = GridData.BEGINNING;
- data.widthHint = convertWidthInCharsToPixels( NUMBER_OF_DIGITS + 1 );
- fMaxNumberOfInstructionsText.setPage( this );
- fMaxNumberOfInstructionsText.setValidateStrategy( StringFieldEditor.VALIDATE_ON_KEY_STROKE );
- fMaxNumberOfInstructionsText.setValidRange( ICDebugConstants.MIN_NUMBER_OF_INSTRUCTIONS, ICDebugConstants.MAX_NUMBER_OF_INSTRUCTIONS );
- String minValue = Integer.toString( ICDebugConstants.MIN_NUMBER_OF_INSTRUCTIONS );
- String maxValue = Integer.toString( ICDebugConstants.MAX_NUMBER_OF_INSTRUCTIONS );
- fMaxNumberOfInstructionsText.setErrorMessage( MessageFormat.format( PreferenceMessages.getString( "CDebugPreferencePage.13" ), new String[]{ minValue, maxValue } ) ); //$NON-NLS-1$
- fMaxNumberOfInstructionsText.load();
- fMaxNumberOfInstructionsText.setPropertyChangeListener( new IPropertyChangeListener() {
-
- public void propertyChange( PropertyChangeEvent event ) {
- if ( event.getProperty().equals( FieldEditor.IS_VALID ) )
- setValid( getMaxNumberOfInstructionsText().isValid() );
- }
- } );
- }
-
- private void createDisassemblyColorsField( Composite parent ) {
- fDisassemblySourceColor = new ColorFieldEditor( IInternalCDebugUIConstants.DISASSEMBLY_SOURCE_LINE_COLOR, PreferenceMessages.getString( "CDebugPreferencePage.Color_of_disassembly_source_lines_1" ), parent ); //$NON-NLS-1$
- fDisassemblySourceColor.setPage( this );
- fDisassemblySourceColor.setPreferenceStore( getPreferenceStore() );
- fDisassemblySourceColor.load();
- }
-
- /**
- * Creates a button with the given label and sets the default configuration data.
- */
- private Button createCheckButton( Composite parent, String label ) {
- Button button = new Button( parent, SWT.CHECK | SWT.LEFT );
- button.setText( label );
- // FieldEditor GridData
- GridData data = new GridData();
- button.setLayoutData( data );
- return button;
- }
-
- /**
- * Creates a button with the given label and sets the default configuration data.
- */
- private Combo createComboBox( Composite parent, String label, String[] items, String selection ) {
- ControlFactory.createLabel( parent, label );
- Combo combo = ControlFactory.createSelectCombo( parent, items, selection );
- combo.setLayoutData( new GridData() );
- return combo;
- }
-
- protected void createSpacer( Composite composite, int columnSpan ) {
- Label label = new Label( composite, SWT.NONE );
- GridData gd = new GridData();
- gd.horizontalSpan = columnSpan;
- label.setLayoutData( gd );
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.jface.preference.IPreferencePage#performOk()
- */
- public boolean performOk() {
- storeValues();
- if ( getPropertyChangeListener().hasStateChanged() ) {
- refreshViews();
- }
- CDebugUIPlugin.getDefault().savePluginPreferences();
- CDebugCorePlugin.getDefault().savePluginPreferences();
- return true;
- }
-
- /**
- * Refresh the variables and expression views as changes have occurred that affects these views.
- */
- private void refreshViews() {
- BusyIndicator.showWhile( getShell().getDisplay(), new Runnable() {
-
- public void run() {
- // Refresh interested views
- IWorkbenchWindow[] windows = CDebugUIPlugin.getDefault().getWorkbench().getWorkbenchWindows();
- IWorkbenchPage page = null;
- for( int i = 0; i < windows.length; i++ ) {
- page = windows[i].getActivePage();
- if ( page != null ) {
- refreshViews( page, IDebugUIConstants.ID_EXPRESSION_VIEW );
- refreshViews( page, IDebugUIConstants.ID_VARIABLE_VIEW );
- refreshViews( page, IDebugUIConstants.ID_REGISTER_VIEW );
- }
- }
- }
- } );
- }
-
- /**
- * Refresh all views in the given workbench page with the given view id
- */
- protected void refreshViews( IWorkbenchPage page, String viewID ) {
- IViewPart part = page.findView( viewID );
- if ( part != null ) {
- IDebugView adapter = (IDebugView)part.getAdapter( IDebugView.class );
- if ( adapter != null ) {
- Viewer viewer = adapter.getViewer();
- if ( viewer instanceof StructuredViewer ) {
- ((StructuredViewer)viewer).refresh();
- }
- }
- }
- }
-
- /**
- * Store the preference values based on the state of the component widgets
- */
- private void storeValues() {
- IPreferenceStore store = getPreferenceStore();
- store.setValue( ICDebugPreferenceConstants.PREF_SHOW_FULL_PATHS, fPathsButton.getSelection() );
- CDebugCorePlugin.getDefault().getPluginPreferences().setValue( ICDebugConstants.PREF_MAX_NUMBER_OF_INSTRUCTIONS, getMaxNumberOfInstructionsText().getIntValue() );
- CDebugCorePlugin.getDefault().getPluginPreferences().setValue( ICDebugConstants.PREF_DEFAULT_VARIABLE_FORMAT, getFormatId( fVariableFormatCombo.getSelectionIndex() ) );
- CDebugCorePlugin.getDefault().getPluginPreferences().setValue( ICDebugConstants.PREF_DEFAULT_EXPRESSION_FORMAT, getFormatId( fExpressionFormatCombo.getSelectionIndex() ) );
- CDebugCorePlugin.getDefault().getPluginPreferences().setValue( ICDebugConstants.PREF_DEFAULT_REGISTER_FORMAT, getFormatId( fRegisterFormatCombo.getSelectionIndex() ) );
- getDisassemblySourceColor().store();
- }
-
- /**
- * Sets the default preferences.
- *
- * @see PreferencePage#performDefaults()
- */
- protected void performDefaults() {
- setDefaultValues();
- super.performDefaults();
- }
-
- private void setDefaultValues() {
- IPreferenceStore store = getPreferenceStore();
- fPathsButton.setSelection( store.getDefaultBoolean( ICDebugPreferenceConstants.PREF_SHOW_FULL_PATHS ) );
- getMaxNumberOfInstructionsText().setStringValue( new Integer( CDebugCorePlugin.getDefault().getPluginPreferences().getDefaultInt( ICDebugConstants.PREF_MAX_NUMBER_OF_INSTRUCTIONS ) ).toString() );
- getDisassemblySourceColor().loadDefault();
- fVariableFormatCombo.select( getFormatIndex( CDebugCorePlugin.getDefault().getPluginPreferences().getDefaultInt( ICDebugConstants.PREF_DEFAULT_VARIABLE_FORMAT ) ) );
- fExpressionFormatCombo.select( getFormatIndex( CDebugCorePlugin.getDefault().getPluginPreferences().getDefaultInt( ICDebugConstants.PREF_DEFAULT_EXPRESSION_FORMAT ) ) );
- fRegisterFormatCombo.select( getFormatIndex( CDebugCorePlugin.getDefault().getPluginPreferences().getDefaultInt( ICDebugConstants.PREF_DEFAULT_REGISTER_FORMAT ) ) );
- }
-
- private static int getFormatId( int index ) {
- return (index >= 0 && index < fFormatIds.length) ? fFormatIds[index] : fFormatIds[0];
- }
-
- private static int getFormatIndex( int id ) {
- for( int i = 0; i < fFormatIds.length; ++i )
- if ( fFormatIds[i] == id )
- return i;
- return -1;
- }
-
- protected IntegerFieldEditor getMaxNumberOfInstructionsText() {
- return fMaxNumberOfInstructionsText;
- }
-
- private ColorFieldEditor getDisassemblySourceColor() {
- return fDisassemblySourceColor;
- }
-
- private IWorkbench getWorkbench() {
- return fWorkbench;
- }
-}
diff --git a/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/preferences/ComboFieldEditor.java b/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/preferences/ComboFieldEditor.java
deleted file mode 100644
index 7e8e093108b..00000000000
--- a/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/preferences/ComboFieldEditor.java
+++ /dev/null
@@ -1,200 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * IBM Corporation - initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.cdt.debug.internal.ui.preferences;
-
-import org.eclipse.jface.preference.FieldEditor;
-import org.eclipse.jface.util.Assert;
-import org.eclipse.swt.SWT;
-import org.eclipse.swt.events.SelectionAdapter;
-import org.eclipse.swt.events.SelectionEvent;
-import org.eclipse.swt.layout.GridData;
-import org.eclipse.swt.widgets.Combo;
-import org.eclipse.swt.widgets.Composite;
-import org.eclipse.swt.widgets.Control;
-
-/**
- * A field editor for a combo box that allows the drop-down selection of one of a list of items.
- */
-public class ComboFieldEditor extends FieldEditor {
-
- /**
- * The <code>Combo</code> widget.
- */
- protected Combo fCombo;
-
- /**
- * The value (not the name) of the currently selected item in the Combo widget.
- */
- protected String fValue;
-
- /**
- * The names (labels) and underlying values to populate the combo widget. These should be
- * arranged as: { {name1, value1}, {name2, value2}, ...}
- */
- private String[][] fEntryNamesAndValues;
-
- public ComboFieldEditor(String name, String labelText, String[][] entryNamesAndValues, Composite parent) {
- init(name, labelText);
- Assert.isTrue(checkArray(entryNamesAndValues));
- fEntryNamesAndValues = entryNamesAndValues;
- createControl(parent);
- }
-
- /**
- * Checks whether given <code>String[][]</code> is of "type"
- * <code>String[][2]</code>.
- *
- * @return <code>true</code> if it is ok, and <code>false</code> otherwise
- */
- private boolean checkArray(String[][] table) {
- if (table == null) {
- return false;
- }
- for (int i = 0; i < table.length; i++) {
- String[] array = table[i];
- if (array == null || array.length != 2) {
- return false;
- }
- }
- return true;
- }
-
- /**
- * @see FieldEditor#adjustForNumColumns(int)
- */
- protected void adjustForNumColumns(int numColumns) {
- if ( numColumns <= 1 )
- return;
- int span = numColumns;
- Control control = getLabelControl();
- if (control != null) {
- ((GridData)control.getLayoutData()).horizontalSpan = 1;
- --span;
- }
- ((GridData)fCombo.getLayoutData()).horizontalSpan = span;
- }
-
- /**
- * @see FieldEditor#doFillIntoGrid(Composite, int)
- */
- protected void doFillIntoGrid(Composite parent, int numColumns) {
- Control control = getLabelControl(parent);
- GridData gd = new GridData();
- gd.horizontalSpan = numColumns;
- control.setLayoutData(gd);
- control = getComboBoxControl(parent);
- gd = new GridData();
- gd.horizontalSpan = numColumns;
- control.setLayoutData(gd);
- }
-
- /**
- * @see FieldEditor#doLoad()
- */
- protected void doLoad() {
- updateComboForValue(getPreferenceStore().getString(getPreferenceName()));
- }
-
- /**
- * @see FieldEditor#doLoadDefault()
- */
- protected void doLoadDefault() {
- updateComboForValue(getPreferenceStore().getDefaultString(getPreferenceName()));
- }
-
- /**
- * @see FieldEditor#doStore()
- */
- protected void doStore() {
- if (fValue == null) {
- getPreferenceStore().setToDefault(getPreferenceName());
- return;
- }
-
- getPreferenceStore().setValue(getPreferenceName(), fValue);
- }
-
- /**
- * @see FieldEditor#getNumberOfControls()
- */
- public int getNumberOfControls() {
- return 1;
- }
-
- /**
- * Lazily create and return the Combo control.
- */
- public Combo getComboBoxControl(Composite parent) {
- if (fCombo == null) {
- fCombo = new Combo(parent, SWT.READ_ONLY);
- for (int i = 0; i < fEntryNamesAndValues.length; i++) {
- fCombo.add(fEntryNamesAndValues[i][0], i);
- }
-
- fCombo.addSelectionListener(new SelectionAdapter() {
- public void widgetSelected(SelectionEvent evt) {
- String oldValue = fValue;
- String name = fCombo.getText();
- fValue = getValueForName(name);
- setPresentsDefaultValue(false);
- fireValueChanged(VALUE, oldValue, fValue);
- }
- });
- }
- return fCombo;
- }
-
- /**
- * Given the name (label) of an entry, return the corresponding value.
- */
- protected String getValueForName(String name) {
- for (int i = 0; i < fEntryNamesAndValues.length; i++) {
- String[] entry = fEntryNamesAndValues[i];
- if (name.equals(entry[0])) {
- return entry[1];
- }
- }
- return fEntryNamesAndValues[0][0];
- }
-
- /**
- * Set the name in the combo widget to match the specified value.
- */
- protected void updateComboForValue(String value) {
- fValue = value;
- for (int i = 0; i < fEntryNamesAndValues.length; i++) {
- if (value.equals(fEntryNamesAndValues[i][1])) {
- fCombo.setText(fEntryNamesAndValues[i][0]);
- return;
- }
- }
- if (fEntryNamesAndValues.length > 0) {
- fValue = fEntryNamesAndValues[0][1];
- }
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.jface.preference.FieldEditor#fireValueChanged(String, Object, Object)
- */
- protected void fireValueChanged( String property, Object oldValue, Object newValue )
- {
- super.fireValueChanged( property, oldValue, newValue );
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.jface.preference.FieldEditor#setPresentsDefaultValue(boolean)
- */
- protected void setPresentsDefaultValue( boolean b )
- {
- super.setPresentsDefaultValue( b );
- }
-}
diff --git a/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/preferences/DebuggerTypesPage.java b/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/preferences/DebuggerTypesPage.java
deleted file mode 100644
index d8fc303ce72..00000000000
--- a/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/preferences/DebuggerTypesPage.java
+++ /dev/null
@@ -1,251 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.internal.ui.preferences;
-
-import java.text.MessageFormat;
-import java.util.Arrays;
-import java.util.List;
-import org.eclipse.cdt.debug.core.CDebugCorePlugin;
-import org.eclipse.cdt.debug.core.ICDebugConfiguration;
-import org.eclipse.cdt.debug.internal.ui.ICDebugHelpContextIds;
-import org.eclipse.cdt.debug.internal.ui.PixelConverter;
-import org.eclipse.cdt.debug.internal.ui.dialogfields.CheckedListDialogField;
-import org.eclipse.cdt.debug.internal.ui.dialogfields.DialogField;
-import org.eclipse.cdt.debug.internal.ui.dialogfields.IListAdapter;
-import org.eclipse.jface.dialogs.Dialog;
-import org.eclipse.jface.preference.PreferencePage;
-import org.eclipse.jface.viewers.CheckStateChangedEvent;
-import org.eclipse.jface.viewers.ISelection;
-import org.eclipse.jface.viewers.IStructuredSelection;
-import org.eclipse.jface.viewers.LabelProvider;
-import org.eclipse.swt.SWT;
-import org.eclipse.swt.graphics.Font;
-import org.eclipse.swt.layout.GridData;
-import org.eclipse.swt.layout.GridLayout;
-import org.eclipse.swt.widgets.Composite;
-import org.eclipse.swt.widgets.Control;
-import org.eclipse.swt.widgets.Label;
-import org.eclipse.ui.IWorkbench;
-import org.eclipse.ui.IWorkbenchPreferencePage;
-
-/**
- * The "Debugger Types" preference page.
- */
-public class DebuggerTypesPage extends PreferencePage implements IWorkbenchPreferencePage {
-
- protected static String[] fgButtonLabels = new String[] { PreferenceMessages.getString( "DebuggerTypesPage.0" ), PreferenceMessages.getString( "DebuggerTypesPage.1" ), PreferenceMessages.getString( "DebuggerTypesPage.2" ) }; //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
-
- /**
- * Comment for DebuggerTypesPage.
- */
- class DebuggerTypesDialogField extends CheckedListDialogField {
-
- public DebuggerTypesDialogField() {
- super( new IListAdapter() {
- public void customButtonPressed( DialogField field, int index ) {
- }
-
- public void selectionChanged( DialogField field ) {
- }
- }, fgButtonLabels, new DebuggerTypeLabelProvider() );
- }
-
- public Control[] doFillIntoGrid( Composite parent, int nColumns ) {
- PixelConverter converter = new PixelConverter( parent );
- assertEnoughColumns( nColumns );
- Control list = getListControl( parent );
- GridData gd = new GridData();
- gd.horizontalAlignment = GridData.FILL;
- gd.grabExcessHorizontalSpace = true;
- gd.verticalAlignment = GridData.FILL;
- gd.grabExcessVerticalSpace = true;
- gd.horizontalSpan = nColumns - 2;
- gd.widthHint = converter.convertWidthInCharsToPixels( 50 );
- gd.heightHint = converter.convertHeightInCharsToPixels( 6 );
- list.setLayoutData( gd );
- Composite buttons = getButtonBox( parent );
- gd = new GridData();
- gd.horizontalAlignment = GridData.FILL;
- gd.grabExcessHorizontalSpace = false;
- gd.verticalAlignment = GridData.FILL;
- gd.grabExcessVerticalSpace = true;
- gd.horizontalSpan = 1;
- buttons.setLayoutData( gd );
- return new Control[]{ list, buttons };
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.cdt.debug.internal.ui.dialogfields.CheckedListDialogField#getManagedButtonState(org.eclipse.jface.viewers.ISelection, int)
- */
- protected boolean getManagedButtonState( ISelection sel, int index ) {
- // Enable/disable the "Default" button
- if ( index == 2 && sel instanceof IStructuredSelection ) {
- Object o = ((IStructuredSelection)sel).getFirstElement();
- return o != null && isChecked( o );
- }
- return super.getManagedButtonState( sel, index );
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.cdt.debug.internal.ui.dialogfields.CheckedListDialogField#managedButtonPressed(int)
- */
- protected boolean managedButtonPressed( int index ) {
- if ( index == 2 ) {
- List list = getSelectedElements();
- if ( !list.isEmpty() )
- setDefault( ((ICDebugConfiguration)list.get( 0 )).getID() );
- else
- setDefault( null );
- refresh();
- }
- return super.managedButtonPressed( index );
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.cdt.debug.internal.ui.dialogfields.ListDialogField#getListStyle()
- */
- protected int getListStyle() {
- return SWT.BORDER + SWT.SINGLE + SWT.H_SCROLL + SWT.V_SCROLL;
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.cdt.debug.internal.ui.dialogfields.CheckedListDialogField#doCheckStateChanged(org.eclipse.jface.viewers.CheckStateChangedEvent)
- */
- protected void doCheckStateChanged( CheckStateChangedEvent e ) {
- super.doCheckStateChanged( e );
- ICDebugConfiguration dc = (ICDebugConfiguration)e.getElement();
- if ( dc.getID().equals( getDefault() ) && !e.getChecked() ) {
- List list = getCheckedElements();
- setDefault( ( list.size() > 0 ) ? ((ICDebugConfiguration)list.get( 0 )).getID() : null );
- refresh();
- }
- else if ( e.getChecked() && getDefault() == null ) {
- setDefault( ((ICDebugConfiguration)e.getElement()).getID() );
- refresh();
- }
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.cdt.debug.internal.ui.dialogfields.CheckedListDialogField#checkAll(boolean)
- */
- public void checkAll( boolean state ) {
- super.checkAll( state );
- List list = getCheckedElements();
- setDefault( ( list.size() > 0 ) ? ((ICDebugConfiguration)list.get( 0 )).getID() : null );
- refresh();
- }
- }
-
- /**
- * Comment for DebuggerTypesPage.
- */
- class DebuggerTypeLabelProvider extends LabelProvider {
-
- public String getText( Object element ) {
- if ( element instanceof ICDebugConfiguration ) {
- ICDebugConfiguration dc = (ICDebugConfiguration)element;
- String label = dc.getName();
- if ( dc.getID().equals( getDefault() ) )
- label += MessageFormat.format( " ({0})", new String[] { PreferenceMessages.getString( "DebuggerTypesPage.3" ) } ); //$NON-NLS-1$ //$NON-NLS-2$
- return label;
- }
- return super.getText( element );
- }
- }
-
- private DebuggerTypesDialogField fListField;
- private IWorkbench fWorkbench;
- private String fDefault;
-
- /* (non-Javadoc)
- * @see org.eclipse.jface.preference.PreferencePage#createContents(org.eclipse.swt.widgets.Composite)
- */
- protected Control createContents( Composite parent ) {
- Font font = parent.getFont();
- Composite comp = new Composite( parent, SWT.NONE );
- GridLayout topLayout = new GridLayout();
- topLayout.numColumns = 3;
- comp.setLayout( topLayout );
- GridData gd = new GridData( GridData.FILL_BOTH );
- comp.setLayoutData( gd );
- comp.setFont( font );
- Label viewerLabel = new Label( comp, SWT.LEFT );
- viewerLabel.setText( PreferenceMessages.getString( "DebuggerTypesPage.4" ) ); //$NON-NLS-1$
- gd = new GridData( GridData.HORIZONTAL_ALIGN_FILL );
- gd.horizontalSpan = 3;
- viewerLabel.setLayoutData( gd );
- viewerLabel.setFont( font );
- fListField = new DebuggerTypesDialogField();
- fListField.setCheckAllButtonIndex( 0 );
- fListField.setUncheckAllButtonIndex( 1 );
- Dialog.applyDialogFont( comp );
- fListField.doFillIntoGrid( comp, 3 );
- initialize();
- getWorkbench().getHelpSystem().setHelp( comp, ICDebugHelpContextIds.DEBUGGER_TYPES_PAGE );
- return comp;
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.ui.IWorkbenchPreferencePage#init(org.eclipse.ui.IWorkbench)
- */
- public void init( IWorkbench workbench ) {
- fWorkbench = workbench;
- }
-
- private IWorkbench getWorkbench() {
- return fWorkbench;
- }
-
- private void initialize() {
- ICDebugConfiguration dc = CDebugCorePlugin.getDefault().getDefaultDebugConfiguration();
- setDefault( ( dc != null ) ? dc.getID() : null );
- fListField.addElements( Arrays.asList( CDebugCorePlugin.getDefault().getDebugConfigurations() ) );
- fListField.setCheckedElements( Arrays.asList( CDebugCorePlugin.getDefault().getActiveDebugConfigurations() ) );
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.jface.preference.PreferencePage#performOk()
- */
- public boolean performOk() {
- CDebugCorePlugin.getDefault().saveDefaultDebugConfiguration( getDefault() );
- List elements = fListField.getElements();
- elements.removeAll( fListField.getCheckedElements() );
- CDebugCorePlugin.getDefault().saveFilteredDebugConfigurations( (ICDebugConfiguration[])elements.toArray( new ICDebugConfiguration[elements.size()] ) );
- return super.performOk();
- }
-
- protected String getDefault() {
- return fDefault;
- }
-
- protected void setDefault( String defaultConfiguration ) {
- fDefault = defaultConfiguration;
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.jface.preference.PreferencePage#performDefaults()
- */
- protected void performDefaults() {
- fListField.setCheckedElements( Arrays.asList( CDebugCorePlugin.getDefault().getDefaultActiveDebugConfigurations() ) );
- ICDebugConfiguration defaultConfiguration = CDebugCorePlugin.getDefault().getDefaultDefaultDebugConfiguration();
- if ( defaultConfiguration != null ) {
- setDefault( defaultConfiguration.getID() );
- }
- else {
- List list = fListField.getCheckedElements();
- if ( !list.isEmpty() ) {
- setDefault( ((ICDebugConfiguration)list.get( 0 )).getID() );
- }
- }
- fListField.refresh();
- super.performDefaults();
- }
-}
diff --git a/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/preferences/ICDebugPreferenceConstants.java b/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/preferences/ICDebugPreferenceConstants.java
deleted file mode 100644
index 0ea1c2cb493..00000000000
--- a/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/preferences/ICDebugPreferenceConstants.java
+++ /dev/null
@@ -1,49 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2005 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.internal.ui.preferences;
-
-import org.eclipse.cdt.debug.ui.ICDebugUIConstants;
-
-/**
- * Constants defining the keys to be used for accessing preferences inside the debug ui plugin's preference bundle.
- * In descriptions (of the keys) below describe the preference stored at the given key.
- * The type indicates type of the stored preferences
- * The preference store is loaded by the plugin (CDebugUIPlugin).
- * @see CDebugUIPlugin.initializeDefaultPreferences(IPreferenceStore) - for initialization of the store
- */
-public interface ICDebugPreferenceConstants {
-
- /**
- * Boolean preference controlling whether the debugger shows full paths. When <code>true</code> the debugger will show full paths in newly opened views.
- */
- public static final String PREF_SHOW_FULL_PATHS = ICDebugUIConstants.PLUGIN_ID + ".cDebug.show_full_paths"; //$NON-NLS-1$
-
- /**
- * Boolean preference controlling whether primitive types types display hexidecimal values.
- */
- public static final String PREF_SHOW_HEX_VALUES = ICDebugUIConstants.PLUGIN_ID + ".cDebug.showHexValues"; //$NON-NLS-1$
-
- /**
- * Boolean preference controlling whether primitive types types display char values.
- */
- public static final String PREF_SHOW_CHAR_VALUES = ICDebugUIConstants.PLUGIN_ID + ".cDebug.showCharValues"; //$NON-NLS-1$
-
- /**
- * The orientation of the detail view in the ModulesView
- */
- public static final String MODULES_DETAIL_PANE_ORIENTATION = "Modules.detail.orientation"; //$NON-NLS-1$
-
- public static final String MODULES_DETAIL_PANE_RIGHT = "Modules.detail.orientation.right"; //$NON-NLS-1$
-
- public static final String MODULES_DETAIL_PANE_UNDERNEATH = "Modules.detail.orientation.underneath"; //$NON-NLS-1$
-
- public static final String MODULES_DETAIL_PANE_HIDDEN = "Modules.detail.orientation.hidden"; //$NON-NLS-1$
-}
diff --git a/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/preferences/PreferenceMessages.java b/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/preferences/PreferenceMessages.java
deleted file mode 100644
index 05238902e86..00000000000
--- a/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/preferences/PreferenceMessages.java
+++ /dev/null
@@ -1,33 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.internal.ui.preferences;
-
-import java.util.MissingResourceException;
-import java.util.ResourceBundle;
-
-public class PreferenceMessages {
-
- private static final String BUNDLE_NAME = "org.eclipse.cdt.debug.internal.ui.preferences.PreferenceMessages";//$NON-NLS-1$
-
- private static final ResourceBundle RESOURCE_BUNDLE = ResourceBundle.getBundle( BUNDLE_NAME );
-
- private PreferenceMessages() {
- }
-
- public static String getString( String key ) {
- try {
- return RESOURCE_BUNDLE.getString( key );
- }
- catch( MissingResourceException e ) {
- return '!' + key + '!';
- }
- }
-}
diff --git a/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/preferences/PreferenceMessages.properties b/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/preferences/PreferenceMessages.properties
deleted file mode 100644
index a33cbc2c066..00000000000
--- a/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/preferences/PreferenceMessages.properties
+++ /dev/null
@@ -1,32 +0,0 @@
-###############################################################################
-# Copyright (c) 2003, 2006 QNX Software Systems and others.
-# All rights reserved. This program and the accompanying materials
-# are made available under the terms of the Eclipse Public License v1.0
-# which accompanies this distribution, and is available at
-# http://www.eclipse.org/legal/epl-v10.html
-#
-# Contributors:
-# QNX Software Systems - initial API and implementation
-###############################################################################
-
-CDebugPreferencePage.Color_of_disassembly_source_lines_1=Color of source lines:
-CDebugPreferencePage.0=Natural
-CDebugPreferencePage.1=Hexadecimal
-CDebugPreferencePage.2=Decimal
-CDebugPreferencePage.3=General settings for C/C++ Debugging.
-CDebugPreferencePage.4=Opened view default settings
-CDebugPreferencePage.5=Show full &paths
-CDebugPreferencePage.8=Default variable format:
-CDebugPreferencePage.9=Default expression format:
-CDebugPreferencePage.10=Default register format:
-CDebugPreferencePage.11=Disassembly options
-CDebugPreferencePage.12=Maximum number of displayed instructions:
-CDebugPreferencePage.13=The valid value range is [{0},{1}].
-CDebugPreferencePage.14=Binary
-SourcePreferencePage.0=Common source lookup path settings.
-SourcePreferencePage.0=Common S&ource Lookup Path:
-DebuggerTypesPage.0=Select All
-DebuggerTypesPage.1=Deselect All
-DebuggerTypesPage.2=Default
-DebuggerTypesPage.3=default
-DebuggerTypesPage.4=Active debugger types:
diff --git a/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/preferences/SourcePreferencePage.java b/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/preferences/SourcePreferencePage.java
deleted file mode 100644
index 4459bb32645..00000000000
--- a/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/preferences/SourcePreferencePage.java
+++ /dev/null
@@ -1,186 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004, 2005 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.internal.ui.preferences;
-
-import java.util.ArrayList;
-import java.util.Iterator;
-import java.util.List;
-import org.eclipse.cdt.debug.core.CDebugCorePlugin;
-import org.eclipse.cdt.debug.internal.ui.ICDebugHelpContextIds;
-import org.eclipse.cdt.debug.internal.ui.sourcelookup.AddContainerAction;
-import org.eclipse.cdt.debug.internal.ui.sourcelookup.DownAction;
-import org.eclipse.cdt.debug.internal.ui.sourcelookup.EditContainerAction;
-import org.eclipse.cdt.debug.internal.ui.sourcelookup.RemoveAction;
-import org.eclipse.cdt.debug.internal.ui.sourcelookup.SourceContainerAction;
-import org.eclipse.cdt.debug.internal.ui.sourcelookup.SourceContainerViewer;
-import org.eclipse.cdt.debug.internal.ui.sourcelookup.UpAction;
-import org.eclipse.debug.core.sourcelookup.ISourceContainer;
-import org.eclipse.debug.core.sourcelookup.ISourceLookupDirector;
-import org.eclipse.jface.dialogs.Dialog;
-import org.eclipse.jface.dialogs.IDialogConstants;
-import org.eclipse.jface.preference.PreferencePage;
-import org.eclipse.swt.SWT;
-import org.eclipse.swt.graphics.Font;
-import org.eclipse.swt.graphics.FontMetrics;
-import org.eclipse.swt.graphics.GC;
-import org.eclipse.swt.layout.GridData;
-import org.eclipse.swt.layout.GridLayout;
-import org.eclipse.swt.widgets.Button;
-import org.eclipse.swt.widgets.Composite;
-import org.eclipse.swt.widgets.Control;
-import org.eclipse.swt.widgets.Label;
-import org.eclipse.ui.IWorkbench;
-import org.eclipse.ui.IWorkbenchPreferencePage;
-
-/**
- * The "Source Lookup Path" preference page.
- */
-public class SourcePreferencePage extends PreferencePage implements IWorkbenchPreferencePage {
-
- private SourceContainerViewer fPathViewer;
- private List fActions = new ArrayList(6);
- private IWorkbench fWorkbench;
- private AddContainerAction fAddAction;
- private EditContainerAction fEditAction;
-
- /* (non-Javadoc)
- * @see org.eclipse.jface.preference.PreferencePage#createContents(org.eclipse.swt.widgets.Composite)
- */
- protected Control createContents( Composite parent ) {
- Font font = parent.getFont();
- Composite comp = new Composite( parent, SWT.NONE );
- GridLayout topLayout = new GridLayout();
- topLayout.numColumns = 2;
- comp.setLayout( topLayout );
- GridData gd = new GridData( GridData.FILL_BOTH );
- comp.setLayoutData( gd );
- Label viewerLabel = new Label( comp, SWT.LEFT );
- viewerLabel.setText( PreferenceMessages.getString( "SourcePreferencePage.0" ) ); //$NON-NLS-1$
- gd = new GridData( GridData.HORIZONTAL_ALIGN_FILL );
- gd.horizontalSpan = 2;
- viewerLabel.setLayoutData( gd );
- viewerLabel.setFont( font );
- fPathViewer = new SourceContainerViewer( comp );
- gd = new GridData( GridData.FILL_BOTH );
- fPathViewer.getControl().setLayoutData( gd );
- fPathViewer.getControl().setFont( font );
- Composite pathButtonComp = new Composite( comp, SWT.NONE );
- GridLayout pathButtonLayout = new GridLayout();
- pathButtonLayout.marginHeight = 0;
- pathButtonLayout.marginWidth = 0;
- pathButtonComp.setLayout( pathButtonLayout );
- gd = new GridData( GridData.VERTICAL_ALIGN_BEGINNING | GridData.HORIZONTAL_ALIGN_FILL );
- pathButtonComp.setLayoutData( gd );
- pathButtonComp.setFont( font );
- createVerticalSpacer( comp, 2 );
- GC gc = new GC( parent );
- gc.setFont( parent.getFont() );
- FontMetrics fontMetrics = gc.getFontMetrics();
- gc.dispose();
- fAddAction = new AddContainerAction();
- Button button = createPushButton( pathButtonComp, fAddAction.getText(), fontMetrics );
- fAddAction.setButton( button );
- addAction( fAddAction );
- fEditAction = new EditContainerAction();
- button = createPushButton( pathButtonComp, fEditAction.getText(), fontMetrics );
- fEditAction.setButton( button );
- addAction( fEditAction );
- SourceContainerAction action = new RemoveAction();
- button = createPushButton( pathButtonComp, action.getText(), fontMetrics );
- action.setButton( button );
- addAction( action );
- action = new UpAction();
- button = createPushButton( pathButtonComp, action.getText(), fontMetrics );
- action.setButton( button );
- addAction( action );
- action = new DownAction();
- button = createPushButton( pathButtonComp, action.getText(), fontMetrics );
- action.setButton( button );
- addAction( action );
- retargetActions( fPathViewer );
- Dialog.applyDialogFont( comp );
- getWorkbench().getHelpSystem().setHelp( comp, ICDebugHelpContextIds.SOURCE_PREFERENCE_PAGE );
- initialize();
- return comp;
- }
-
- /*
- * (non-Javadoc)
- *
- * @see org.eclipse.ui.IWorkbenchPreferencePage#init(org.eclipse.ui.IWorkbench)
- */
- public void init( IWorkbench workbench ) {
- fWorkbench = workbench;
- }
-
- private Button createPushButton( Composite parent, String label, FontMetrics fontMetrics ) {
- Button button = new Button( parent, SWT.PUSH );
- button.setFont( parent.getFont() );
- button.setText( label );
- GridData gd = getButtonGridData( button, fontMetrics );
- button.setLayoutData( gd );
- return button;
- }
-
- private GridData getButtonGridData( Button button, FontMetrics fontMetrics ) {
- GridData gd = new GridData( GridData.FILL_HORIZONTAL | GridData.VERTICAL_ALIGN_BEGINNING );
- int widthHint = Dialog.convertHorizontalDLUsToPixels( fontMetrics, IDialogConstants.BUTTON_WIDTH );
- gd.widthHint = Math.max( widthHint, button.computeSize( SWT.DEFAULT, SWT.DEFAULT, true ).x );
- return gd;
- }
-
- private IWorkbench getWorkbench() {
- return fWorkbench;
- }
-
- private void addAction( SourceContainerAction action ) {
- fActions.add( action );
- }
-
- private void retargetActions( SourceContainerViewer viewer ) {
- Iterator actions = fActions.iterator();
- while( actions.hasNext() ) {
- SourceContainerAction action = (SourceContainerAction)actions.next();
- action.setViewer( viewer );
- }
- }
-
- private void createVerticalSpacer( Composite comp, int colSpan ) {
- Label label = new Label( comp, SWT.NONE );
- GridData gd = new GridData();
- gd.horizontalSpan = colSpan;
- label.setLayoutData( gd );
- }
-
- private void initialize() {
- ISourceLookupDirector director = CDebugCorePlugin.getDefault().getCommonSourceLookupDirector();
- fPathViewer.setEntries( director.getSourceContainers() );
- fAddAction.setSourceLookupDirector( director );
- fEditAction.setSourceLookupDirector( director );
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.jface.preference.PreferencePage#performDefaults()
- */
- protected void performDefaults() {
- fPathViewer.setEntries( new ISourceContainer[0] );
- super.performDefaults();
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.jface.preference.PreferencePage#performOk()
- */
- public boolean performOk() {
- CDebugCorePlugin.getDefault().getCommonSourceLookupDirector().setSourceContainers( fPathViewer.getEntries() );
- CDebugCorePlugin.getDefault().savePluginPreferences();
- return true;
- }
-}
diff --git a/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/propertypages/CBreakpointFilteringPage.java b/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/propertypages/CBreakpointFilteringPage.java
deleted file mode 100644
index 3e0de6b67b5..00000000000
--- a/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/propertypages/CBreakpointFilteringPage.java
+++ /dev/null
@@ -1,65 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.internal.ui.propertypages;
-
-import org.eclipse.cdt.debug.core.model.ICBreakpoint;
-import org.eclipse.swt.SWT;
-import org.eclipse.swt.layout.GridData;
-import org.eclipse.swt.layout.GridLayout;
-import org.eclipse.swt.widgets.Composite;
-import org.eclipse.swt.widgets.Control;
-import org.eclipse.ui.dialogs.PropertyPage;
-
-public class CBreakpointFilteringPage extends PropertyPage {
-
- private ThreadFilterEditor fThreadFilterEditor;
-
- /* (non-Javadoc)
- * @see org.eclipse.jface.preference.PreferencePage#createContents(org.eclipse.swt.widgets.Composite)
- */
- protected Control createContents( Composite parent ) {
- noDefaultAndApplyButton();
- Composite mainComposite = new Composite( parent, SWT.NONE );
- mainComposite.setFont( parent.getFont() );
- mainComposite.setLayout( new GridLayout() );
- mainComposite.setLayoutData( new GridData( GridData.FILL_BOTH ) );
- createThreadFilterEditor( mainComposite );
- setValid( true );
- return mainComposite;
- }
-
- public ICBreakpoint getBreakpoint() {
- return (ICBreakpoint)getElement();
- }
-
- protected void createThreadFilterEditor( Composite parent ) {
- fThreadFilterEditor = new ThreadFilterEditor( parent, this );
- }
-
- protected ThreadFilterEditor getThreadFilterEditor() {
- return fThreadFilterEditor;
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.jface.preference.IPreferencePage#performOk()
- */
- public boolean performOk() {
- doStore();
- return super.performOk();
- }
-
- /**
- * Stores the values configured in this page.
- */
- protected void doStore() {
- fThreadFilterEditor.doStore();
- }
-}
diff --git a/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/propertypages/CBreakpointPreferenceStore.java b/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/propertypages/CBreakpointPreferenceStore.java
deleted file mode 100644
index 3a0d826685f..00000000000
--- a/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/propertypages/CBreakpointPreferenceStore.java
+++ /dev/null
@@ -1,363 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.internal.ui.propertypages;
-
-import java.util.HashMap;
-import org.eclipse.core.runtime.ListenerList;
-import org.eclipse.jface.preference.IPreferenceStore;
-import org.eclipse.jface.util.IPropertyChangeListener;
-import org.eclipse.jface.util.PropertyChangeEvent;
-
-/**
- * A preference store that presents the state of the properties of a C/C++ breakpoint. Default settings are not supported.
- */
-public class CBreakpointPreferenceStore implements IPreferenceStore {
-
- protected final static String ENABLED = "ENABLED"; //$NON-NLS-1$
-
- protected final static String CONDITION = "CONDITION"; //$NON-NLS-1$
-
- protected final static String IGNORE_COUNT = "IGNORE_COUNT"; //$NON-NLS-1$
-
- protected HashMap fProperties;
-
- private boolean fIsDirty = false;
-
- private ListenerList fListeners;
-
- /**
- * Constructor for CBreakpointPreferenceStore.
- */
- public CBreakpointPreferenceStore() {
- fProperties = new HashMap( 3 );
- fListeners = new ListenerList();
- }
-
- /*
- * (non-Javadoc)
- *
- * @see org.eclipse.jface.preference.IPreferenceStore#addPropertyChangeListener(IPropertyChangeListener)
- */
- public void addPropertyChangeListener( IPropertyChangeListener listener ) {
- fListeners.add( listener );
- }
-
- /*
- * (non-Javadoc)
- *
- * @see org.eclipse.jface.preference.IPreferenceStore#contains(String)
- */
- public boolean contains( String name ) {
- return fProperties.containsKey( name );
- }
-
- /*
- * (non-Javadoc)
- *
- * @see org.eclipse.jface.preference.IPreferenceStore#firePropertyChangeEvent(String, Object, Object)
- */
- public void firePropertyChangeEvent( String name, Object oldValue, Object newValue ) {
- Object[] listeners = fListeners.getListeners();
- if ( listeners.length > 0 && (oldValue == null || !oldValue.equals( newValue )) ) {
- PropertyChangeEvent pe = new PropertyChangeEvent( this, name, oldValue, newValue );
- for( int i = 0; i < listeners.length; ++i ) {
- IPropertyChangeListener l = (IPropertyChangeListener)listeners[i];
- l.propertyChange( pe );
- }
- }
- }
-
- /*
- * (non-Javadoc)
- *
- * @see org.eclipse.jface.preference.IPreferenceStore#getBoolean(String)
- */
- public boolean getBoolean( String name ) {
- Object b = fProperties.get( name );
- if ( b instanceof Boolean ) {
- return ((Boolean)b).booleanValue();
- }
- return false;
- }
-
- /*
- * (non-Javadoc)
- *
- * @see org.eclipse.jface.preference.IPreferenceStore#getDefaultBoolean(String)
- */
- public boolean getDefaultBoolean( String name ) {
- return false;
- }
-
- /*
- * (non-Javadoc)
- *
- * @see org.eclipse.jface.preference.IPreferenceStore#getDefaultDouble(String)
- */
- public double getDefaultDouble( String name ) {
- return 0;
- }
-
- /*
- * (non-Javadoc)
- *
- * @see org.eclipse.jface.preference.IPreferenceStore#getDefaultFloat(String)
- */
- public float getDefaultFloat( String name ) {
- return 0;
- }
-
- /*
- * (non-Javadoc)
- *
- * @see org.eclipse.jface.preference.IPreferenceStore#getDefaultInt(String)
- */
- public int getDefaultInt( String name ) {
- return 0;
- }
-
- /*
- * (non-Javadoc)
- *
- * @see org.eclipse.jface.preference.IPreferenceStore#getDefaultLong(String)
- */
- public long getDefaultLong( String name ) {
- return 0;
- }
-
- /*
- * (non-Javadoc)
- *
- * @see org.eclipse.jface.preference.IPreferenceStore#getDefaultString(String)
- */
- public String getDefaultString( String name ) {
- return null;
- }
-
- /*
- * (non-Javadoc)
- *
- * @see org.eclipse.jface.preference.IPreferenceStore#getDouble(String)
- */
- public double getDouble( String name ) {
- return 0;
- }
-
- /*
- * (non-Javadoc)
- *
- * @see org.eclipse.jface.preference.IPreferenceStore#getFloat(String)
- */
- public float getFloat( String name ) {
- return 0;
- }
-
- /*
- * (non-Javadoc)
- *
- * @see org.eclipse.jface.preference.IPreferenceStore#getInt(String)
- */
- public int getInt( String name ) {
- Object i = fProperties.get( name );
- if ( i instanceof Integer ) {
- return ((Integer)i).intValue();
- }
- return 1;
- }
-
- /*
- * (non-Javadoc)
- *
- * @see org.eclipse.jface.preference.IPreferenceStore#getLong(String)
- */
- public long getLong( String name ) {
- return 0;
- }
-
- /*
- * (non-Javadoc)
- *
- * @see org.eclipse.jface.preference.IPreferenceStore#getString(String)
- */
- public String getString( String name ) {
- Object str = fProperties.get( name );
- if ( str instanceof String ) {
- return (String)str;
- }
- return null;
- }
-
- /*
- * (non-Javadoc)
- *
- * @see org.eclipse.jface.preference.IPreferenceStore#isDefault(String)
- */
- public boolean isDefault( String name ) {
- return false;
- }
-
- /*
- * (non-Javadoc)
- *
- * @see org.eclipse.jface.preference.IPreferenceStore#needsSaving()
- */
- public boolean needsSaving() {
- return fIsDirty;
- }
-
- /*
- * (non-Javadoc)
- *
- * @see org.eclipse.jface.preference.IPreferenceStore#putValue(String, String)
- */
- public void putValue( String name, String newValue ) {
- Object oldValue = fProperties.get( name );
- if ( oldValue == null || !oldValue.equals( newValue ) ) {
- fProperties.put( name, newValue );
- setDirty( true );
- }
- }
-
- /*
- * (non-Javadoc)
- *
- * @see org.eclipse.jface.preference.IPreferenceStore#removePropertyChangeListener(IPropertyChangeListener)
- */
- public void removePropertyChangeListener( IPropertyChangeListener listener ) {
- fListeners.remove( listener );
- }
-
- /*
- * (non-Javadoc)
- *
- * @see org.eclipse.jface.preference.IPreferenceStore#setDefault(String, double)
- */
- public void setDefault( String name, double value ) {
- }
-
- /*
- * (non-Javadoc)
- *
- * @see org.eclipse.jface.preference.IPreferenceStore#setDefault(String, float)
- */
- public void setDefault( String name, float value ) {
- }
-
- /*
- * (non-Javadoc)
- *
- * @see org.eclipse.jface.preference.IPreferenceStore#setDefault(String, int)
- */
- public void setDefault( String name, int value ) {
- }
-
- /*
- * (non-Javadoc)
- *
- * @see org.eclipse.jface.preference.IPreferenceStore#setDefault(String, long)
- */
- public void setDefault( String name, long value ) {
- }
-
- /*
- * (non-Javadoc)
- *
- * @see org.eclipse.jface.preference.IPreferenceStore#setDefault(String, String)
- */
- public void setDefault( String name, String defaultObject ) {
- }
-
- /*
- * (non-Javadoc)
- *
- * @see org.eclipse.jface.preference.IPreferenceStore#setDefault(String, boolean)
- */
- public void setDefault( String name, boolean value ) {
- }
-
- /*
- * (non-Javadoc)
- *
- * @see org.eclipse.jface.preference.IPreferenceStore#setToDefault(String)
- */
- public void setToDefault( String name ) {
- }
-
- /*
- * (non-Javadoc)
- *
- * @see org.eclipse.jface.preference.IPreferenceStore#setValue(String, double)
- */
- public void setValue( String name, double value ) {
- }
-
- /*
- * (non-Javadoc)
- *
- * @see org.eclipse.jface.preference.IPreferenceStore#setValue(String, float)
- */
- public void setValue( String name, float value ) {
- }
-
- /*
- * (non-Javadoc)
- *
- * @see org.eclipse.jface.preference.IPreferenceStore#setValue(String, int)
- */
- public void setValue( String name, int newValue ) {
- int oldValue = getInt( name );
- if ( oldValue != newValue ) {
- fProperties.put( name, new Integer( newValue ) );
- setDirty( true );
- firePropertyChangeEvent( name, new Integer( oldValue ), new Integer( newValue ) );
- }
- }
-
- /*
- * (non-Javadoc)
- *
- * @see org.eclipse.jface.preference.IPreferenceStore#setValue(String, long)
- */
- public void setValue( String name, long value ) {
- }
-
- /*
- * (non-Javadoc)
- *
- * @see org.eclipse.jface.preference.IPreferenceStore#setValue(String, String)
- */
- public void setValue( String name, String newValue ) {
- Object oldValue = fProperties.get( name );
- if ( oldValue == null || !oldValue.equals( newValue ) ) {
- fProperties.put( name, newValue );
- setDirty( true );
- firePropertyChangeEvent( name, oldValue, newValue );
- }
- }
-
- /*
- * (non-Javadoc)
- *
- * @see org.eclipse.jface.preference.IPreferenceStore#setValue(String, boolean)
- */
- public void setValue( String name, boolean newValue ) {
- boolean oldValue = getBoolean( name );
- if ( oldValue != newValue ) {
- fProperties.put( name, Boolean.valueOf( newValue ) );
- setDirty( true );
- firePropertyChangeEvent( name, Boolean.valueOf( oldValue ), Boolean.valueOf( newValue ) );
- }
- }
-
- protected void setDirty( boolean isDirty ) {
- fIsDirty = isDirty;
- }
-}
diff --git a/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/propertypages/CBreakpointPropertyPage.java b/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/propertypages/CBreakpointPropertyPage.java
deleted file mode 100644
index 9e0354360b7..00000000000
--- a/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/propertypages/CBreakpointPropertyPage.java
+++ /dev/null
@@ -1,450 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004, 2005 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.internal.ui.propertypages;
-
-import java.util.ArrayList;
-import java.util.Iterator;
-import java.util.List;
-import org.eclipse.cdt.debug.core.model.ICAddressBreakpoint;
-import org.eclipse.cdt.debug.core.model.ICBreakpoint;
-import org.eclipse.cdt.debug.core.model.ICFunctionBreakpoint;
-import org.eclipse.cdt.debug.core.model.ICWatchpoint;
-import org.eclipse.cdt.debug.ui.CDebugUIPlugin;
-import org.eclipse.core.resources.IWorkspaceRunnable;
-import org.eclipse.core.resources.ResourcesPlugin;
-import org.eclipse.core.runtime.CoreException;
-import org.eclipse.core.runtime.IAdaptable;
-import org.eclipse.core.runtime.IProgressMonitor;
-import org.eclipse.debug.core.model.ILineBreakpoint;
-import org.eclipse.jface.preference.BooleanFieldEditor;
-import org.eclipse.jface.preference.FieldEditor;
-import org.eclipse.jface.preference.FieldEditorPreferencePage;
-import org.eclipse.jface.preference.IPreferenceStore;
-import org.eclipse.jface.preference.IntegerFieldEditor;
-import org.eclipse.jface.preference.StringFieldEditor;
-import org.eclipse.jface.util.IPropertyChangeListener;
-import org.eclipse.jface.util.PropertyChangeEvent;
-import org.eclipse.swt.SWT;
-import org.eclipse.swt.layout.GridData;
-import org.eclipse.swt.layout.GridLayout;
-import org.eclipse.swt.widgets.Composite;
-import org.eclipse.swt.widgets.Label;
-import org.eclipse.swt.widgets.Text;
-import org.eclipse.ui.IWorkbenchPropertyPage;
-
-/**
- * The preference page used to present the properties of a breakpoint as preferences. A CBreakpointPreferenceStore is used to interface between this page and
- * the breakpoint.
- */
-public class CBreakpointPropertyPage extends FieldEditorPreferencePage implements IWorkbenchPropertyPage {
-
- class BreakpointIntegerFieldEditor extends IntegerFieldEditor {
-
- public BreakpointIntegerFieldEditor( String name, String labelText, Composite parent ) {
- super( name, labelText, parent );
- setErrorMessage( PropertyPageMessages.getString( "CBreakpointPropertyPage.0" ) ); //$NON-NLS-1$
- }
-
- /**
- * @see IntegerFieldEditor#checkState()
- */
- protected boolean checkState() {
- Text control = getTextControl();
- if ( !control.isEnabled() ) {
- clearErrorMessage();
- return true;
- }
- return super.checkState();
- }
-
- /**
- * Overrode here to be package visible.
- */
- protected void refreshValidState() {
- super.refreshValidState();
- }
-
- /**
- * Only store if the text control is enabled
- *
- * @see FieldEditor#doStore()
- */
- protected void doStore() {
- Text text = getTextControl();
- if ( text.isEnabled() ) {
- super.doStore();
- }
- }
-
- /**
- * Clears the error message from the message line if the error message is the error message from this field editor.
- */
- protected void clearErrorMessage() {
- if ( getPage() != null ) {
- String message = getPage().getErrorMessage();
- if ( message != null ) {
- if ( getErrorMessage().equals( message ) ) {
- super.clearErrorMessage();
- }
- }
- else {
- super.clearErrorMessage();
- }
- }
- }
- }
-
- class BreakpointStringFieldEditor extends StringFieldEditor {
-
- public BreakpointStringFieldEditor( String name, String labelText, Composite parent ) {
- super( name, labelText, parent );
- }
-
- /**
- * @see StringFieldEditor#checkState()
- */
- protected boolean checkState() {
- Text control = getTextControl();
- if ( !control.isEnabled() ) {
- clearErrorMessage();
- return true;
- }
- return super.checkState();
- }
-
- protected void doStore() {
- Text text = getTextControl();
- if ( text.isEnabled() ) {
- super.doStore();
- }
- }
-
- /**
- * @see FieldEditor#refreshValidState()
- */
- protected void refreshValidState() {
- super.refreshValidState();
- }
-
- /**
- * Clears the error message from the message line if the error message is the error message from this field editor.
- */
- protected void clearErrorMessage() {
- if ( getPage() != null ) {
- String message = getPage().getErrorMessage();
- if ( message != null ) {
- if ( getErrorMessage().equals( message ) ) {
- super.clearErrorMessage();
- }
- }
- else {
- super.clearErrorMessage();
- }
- }
- }
- }
-
- class LabelFieldEditor extends FieldEditor {
-
- private Label fTitleLabel;
-
- private Label fValueLabel;
-
- private Composite fBasicComposite;
-
- private String fValue;
-
- private String fTitle;
-
- public LabelFieldEditor( Composite parent, String title, String value ) {
- fValue = value;
- fTitle = title;
- this.createControl( parent );
- }
-
- protected void adjustForNumColumns( int numColumns ) {
- ((GridData)fBasicComposite.getLayoutData()).horizontalSpan = numColumns;
- }
-
- protected void doFillIntoGrid( Composite parent, int numColumns ) {
- fBasicComposite = new Composite( parent, SWT.NULL );
- GridLayout layout = new GridLayout();
- layout.marginWidth = 0;
- layout.marginHeight = 0;
- layout.numColumns = 2;
- fBasicComposite.setLayout( layout );
- GridData data = new GridData();
- data.verticalAlignment = GridData.FILL;
- data.horizontalAlignment = GridData.FILL;
- fBasicComposite.setLayoutData( data );
- fTitleLabel = new Label( fBasicComposite, SWT.NONE );
- fTitleLabel.setText( fTitle );
- GridData gd = new GridData();
- gd.verticalAlignment = SWT.TOP;
- fTitleLabel.setLayoutData( gd );
- fValueLabel = new Label( fBasicComposite, SWT.WRAP );
- fValueLabel.setText( fValue );
- gd = new GridData();
- fValueLabel.setLayoutData( gd );
- }
-
- public int getNumberOfControls() {
- return 1;
- }
-
- /**
- * The label field editor is only used to present a text label on a preference page.
- */
- protected void doLoad() {
- }
-
- protected void doLoadDefault() {
- }
-
- protected void doStore() {
- }
- }
-
- private BooleanFieldEditor fEnabled;
-
- private BreakpointStringFieldEditor fCondition;
-
- private Text fIgnoreCountTextControl;
-
- private BreakpointIntegerFieldEditor fIgnoreCount;
-
- private IAdaptable fElement;
-
- /**
- * The "fake" preference store used to interface between
- * the breakpoint and the breakpoint preference page.
- */
- private CBreakpointPreferenceStore fCBreakpointPreferenceStore;
-
- /**
- * Constructor for CBreakpointPropertyPage.
- *
- * @param breakpoint
- */
- public CBreakpointPropertyPage() {
- super( GRID );
- noDefaultAndApplyButton();
- fCBreakpointPreferenceStore = new CBreakpointPreferenceStore();
- }
-
- /*
- * (non-Javadoc)
- *
- * @see org.eclipse.jface.preference.FieldEditorPreferencePage#createFieldEditors()
- */
- protected void createFieldEditors() {
- ICBreakpoint breakpoint = getBreakpoint();
- createTypeSpecificLabelFieldEditors( breakpoint );
- createEnabledField( getFieldEditorParent() );
- IPreferenceStore store = getPreferenceStore();
- try {
- String condition = breakpoint.getCondition();
- if ( condition == null ) {
- condition = ""; //$NON-NLS-1$
- }
- store.setValue( CBreakpointPreferenceStore.CONDITION, condition );
- createConditionEditor( getFieldEditorParent() );
- store.setValue( CBreakpointPreferenceStore.ENABLED, breakpoint.isEnabled() );
- int ignoreCount = breakpoint.getIgnoreCount();
- store.setValue( CBreakpointPreferenceStore.IGNORE_COUNT, (ignoreCount >= 0) ? ignoreCount : 0 );
- createIgnoreCountEditor( getFieldEditorParent() );
- }
- catch( CoreException ce ) {
- CDebugUIPlugin.log( ce );
- }
- }
-
- /**
- * Method createTypeSpecificLabelFieldEditors.
- *
- * @param breakpoint
- */
- private void createTypeSpecificLabelFieldEditors( ICBreakpoint breakpoint ) {
- if ( breakpoint instanceof ICFunctionBreakpoint ) {
- ICFunctionBreakpoint fbrkpt = (ICFunctionBreakpoint)breakpoint;
- addField( createLabelEditor( getFieldEditorParent(), PropertyPageMessages.getString( "CBreakpointPropertyPage.18" ), PropertyPageMessages.getString( "CBreakpointPropertyPage.3" ) ) ); //$NON-NLS-1$//$NON-NLS-2$
- String function = PropertyPageMessages.getString( "CBreakpointPropertyPage.1" ); //$NON-NLS-1$
- try {
- function = fbrkpt.getFunction();
- }
- catch( CoreException e ) {
- }
- catch( NumberFormatException e ) {
- }
- if ( function != null ) {
- addField( createLabelEditor( getFieldEditorParent(), PropertyPageMessages.getString( "CBreakpointPropertyPage.2" ), function ) ); //$NON-NLS-1$
- }
- }
- else if ( breakpoint instanceof ICAddressBreakpoint ) {
- ICAddressBreakpoint abrkpt = (ICAddressBreakpoint)breakpoint;
- addField( createLabelEditor( getFieldEditorParent(), PropertyPageMessages.getString( "CBreakpointPropertyPage.18" ), PropertyPageMessages.getString( "CBreakpointPropertyPage.6" ) ) ); //$NON-NLS-1$//$NON-NLS-2$
- String address = PropertyPageMessages.getString( "CBreakpointPropertyPage.4" ); //$NON-NLS-1$
- try {
- address = abrkpt.getAddress();
- }
- catch( CoreException e ) {
- }
- if ( address != null ) {
- addField( createLabelEditor( getFieldEditorParent(), PropertyPageMessages.getString( "CBreakpointPropertyPage.5" ), address ) ); //$NON-NLS-1$
- }
- }
- else if ( breakpoint instanceof ICWatchpoint ) {
- ICWatchpoint watchpoint = (ICWatchpoint)breakpoint;
- String type = ""; //$NON-NLS-1$
- String expression = ""; //$NON-NLS-1$
- try {
- if ( watchpoint.isReadType() && !watchpoint.isWriteType() )
- type = PropertyPageMessages.getString( "CBreakpointPropertyPage.11" ); //$NON-NLS-1$
- else if ( !watchpoint.isReadType() && watchpoint.isWriteType() )
- type = PropertyPageMessages.getString( "CBreakpointPropertyPage.12" ); //$NON-NLS-1$
- else
- type = PropertyPageMessages.getString( "CBreakpointPropertyPage.13" ); //$NON-NLS-1$
- expression = watchpoint.getExpression();
- }
- catch( CoreException ce ) {
- CDebugUIPlugin.log( ce );
- }
- addField( createLabelEditor( getFieldEditorParent(), PropertyPageMessages.getString( "CBreakpointPropertyPage.18" ), type ) ); //$NON-NLS-1$
- String projectName = breakpoint.getMarker().getResource().getLocation().toOSString();
- if ( projectName != null ) {
- addField( createLabelEditor( getFieldEditorParent(), PropertyPageMessages.getString( "CBreakpointPropertyPage.10" ), projectName ) ); //$NON-NLS-1$
- }
- addField( createLabelEditor( getFieldEditorParent(), PropertyPageMessages.getString( "CBreakpointPropertyPage.14" ), expression ) ); //$NON-NLS-1$
- }
- else if ( breakpoint instanceof ILineBreakpoint ) {
- addField( createLabelEditor( getFieldEditorParent(), PropertyPageMessages.getString( "CBreakpointPropertyPage.18" ), PropertyPageMessages.getString( "CBreakpointPropertyPage.8" ) ) ); //$NON-NLS-1$//$NON-NLS-2$
- String fileName = null;
- try {
- fileName = breakpoint.getSourceHandle();
- }
- catch( CoreException e ) {
- }
- if ( fileName != null ) {
- addField( createLabelEditor( getFieldEditorParent(), PropertyPageMessages.getString( "CBreakpointPropertyPage.7" ), fileName ) ); //$NON-NLS-1$
- }
- ILineBreakpoint lBreakpoint = (ILineBreakpoint)breakpoint;
- StringBuffer lineNumber = new StringBuffer( 4 );
- try {
- int lNumber = lBreakpoint.getLineNumber();
- if ( lNumber > 0 ) {
- lineNumber.append( lNumber );
- }
- }
- catch( CoreException ce ) {
- CDebugUIPlugin.log( ce );
- }
- if ( lineNumber.length() > 0 ) {
- addField( createLabelEditor( getFieldEditorParent(), PropertyPageMessages.getString( "CBreakpointPropertyPage.9" ), lineNumber.toString() ) ); //$NON-NLS-1$
- }
- }
- }
-
- protected void createEnabledField( Composite parent ) {
- fEnabled = new BooleanFieldEditor( CBreakpointPreferenceStore.ENABLED, PropertyPageMessages.getString( "CBreakpointPropertyPage.19" ), parent ); //$NON-NLS-1$
- addField( fEnabled );
- }
-
- protected void createConditionEditor( Composite parent ) {
- fCondition = new BreakpointStringFieldEditor( CBreakpointPreferenceStore.CONDITION, PropertyPageMessages.getString( "CBreakpointPropertyPage.15" ), parent ); //$NON-NLS-1$
- fCondition.setEmptyStringAllowed( true );
- fCondition.setErrorMessage( PropertyPageMessages.getString( "CBreakpointPropertyPage.16" ) ); //$NON-NLS-1$
- addField( fCondition );
- }
-
- protected void createIgnoreCountEditor( Composite parent ) {
- fIgnoreCount = new BreakpointIntegerFieldEditor( CBreakpointPreferenceStore.IGNORE_COUNT, PropertyPageMessages.getString( "CBreakpointPropertyPage.17" ), parent ); //$NON-NLS-1$
- fIgnoreCount.setValidRange( 0, Integer.MAX_VALUE );
- fIgnoreCountTextControl = fIgnoreCount.getTextControl( parent );
- try {
- fIgnoreCountTextControl.setEnabled( getBreakpoint().getIgnoreCount() >= 0 );
- }
- catch( CoreException ce ) {
- CDebugUIPlugin.log( ce );
- }
- addField( fIgnoreCount );
- }
-
- protected FieldEditor createLabelEditor( Composite parent, String title, String value ) {
- return new LabelFieldEditor( parent, title, value );
- }
-
- protected ICBreakpoint getBreakpoint() {
- IAdaptable element = getElement();
- return ( element instanceof ICBreakpoint ) ? (ICBreakpoint)element : null;
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.ui.IWorkbenchPropertyPage#getElement()
- */
- public IAdaptable getElement() {
- return fElement;
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.ui.IWorkbenchPropertyPage#setElement(org.eclipse.core.runtime.IAdaptable)
- */
- public void setElement( IAdaptable element ) {
- fElement = element;
- }
-
- public IPreferenceStore getPreferenceStore() {
- return fCBreakpointPreferenceStore;
- }
-
- public boolean performOk() {
- final List changedProperties = new ArrayList( 5 );
- getPreferenceStore().addPropertyChangeListener( new IPropertyChangeListener() {
-
- /**
- * @see IPropertyChangeListener#propertyChange(PropertyChangeEvent)
- */
- public void propertyChange( PropertyChangeEvent event ) {
- changedProperties.add( event.getProperty() );
- }
- } );
- boolean result = super.performOk();
- setBreakpointProperties( changedProperties );
- return result;
- }
-
- protected void setBreakpointProperties( final List changedProperties ) {
- IWorkspaceRunnable wr = new IWorkspaceRunnable() {
-
- public void run( IProgressMonitor monitor ) throws CoreException {
- ICBreakpoint breakpoint = getBreakpoint();
- Iterator changed = changedProperties.iterator();
- while( changed.hasNext() ) {
- String property = (String)changed.next();
- if ( property.equals( CBreakpointPreferenceStore.ENABLED ) ) {
- breakpoint.setEnabled( getPreferenceStore().getBoolean( CBreakpointPreferenceStore.ENABLED ) );
- }
- else if ( property.equals( CBreakpointPreferenceStore.IGNORE_COUNT ) ) {
- breakpoint.setIgnoreCount( getPreferenceStore().getInt( CBreakpointPreferenceStore.IGNORE_COUNT ) );
- }
- else if ( property.equals( CBreakpointPreferenceStore.CONDITION ) ) {
- breakpoint.setCondition( getPreferenceStore().getString( CBreakpointPreferenceStore.CONDITION ) );
- }
- }
- }
- };
- try {
- ResourcesPlugin.getWorkspace().run( wr, null );
- }
- catch( CoreException ce ) {
- CDebugUIPlugin.log( ce );
- }
- }
-}
diff --git a/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/propertypages/ModuleProperties.java b/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/propertypages/ModuleProperties.java
deleted file mode 100644
index 6d158fc18f0..00000000000
--- a/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/propertypages/ModuleProperties.java
+++ /dev/null
@@ -1,121 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004, 2005 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.internal.ui.propertypages;
-
-import java.util.ArrayList;
-import java.util.Iterator;
-import org.eclipse.cdt.debug.core.model.ICModule;
-
-/**
- * A module's properties store.
- */
-public class ModuleProperties {
-
- final static public String TYPE = "type"; //$NON-NLS-1$
- final static public String CPU = "cpu"; //$NON-NLS-1$
- final static public String BASE_ADDRESS = "baseAddress"; //$NON-NLS-1$
- final static public String SIZE = "size"; //$NON-NLS-1$
- final static public String SYMBOLS_LOADED = "symbolsLoaded"; //$NON-NLS-1$
- final static public String SYMBOLS_FILE = "symbolsFile"; //$NON-NLS-1$
-
- public class Property {
-
- private String fKey;
- private Object fValue;
-
- /**
- * Constructor for Property.
- */
- public Property( String key, Object value ) {
- fKey = key;
- fValue = value;
- }
-
- public String getKey() {
- return fKey;
- }
-
- public Object getValue() {
- return fValue;
- }
-
- public String toString() {
- String result = ""; //$NON-NLS-1$
- if ( getKey() != null )
- result += getKey();
- if ( getValue() != null ) {
- result += "="; //$NON-NLS-1$
- result += getValue().toString();
- }
- return result;
- }
- }
-
- private ArrayList fProperties;
-
- private boolean fIsDirty = false;
-
- static ModuleProperties create( ICModule module ) {
- return new ModuleProperties( module );
- }
-
- /**
- * Constructor for ModuleProperties.
- */
- private ModuleProperties( ICModule module ) {
- fProperties = new ArrayList( 10 );
- fProperties.add( new Property( TYPE, new Integer( module.getType() ) ) );
- fProperties.add( new Property( CPU, module.getCPU() ) );
- fProperties.add( new Property( BASE_ADDRESS, module.getBaseAddress() ) );
- fProperties.add( new Property( SIZE, new Long( module.getSize() ) ) );
- fProperties.add( new Property( SYMBOLS_LOADED, Boolean.valueOf( module.areSymbolsLoaded() ) ) );
- fProperties.add( new Property( SYMBOLS_FILE, module.getSymbolsFileName() ) );
- }
-
- public Property[] getProperties() {
- return (Property[])fProperties.toArray( new Property[fProperties.size()] );
- }
-
- public Object getProperty( String key ) {
- return find( key ).getValue();
- }
-
- public void setProperty( String key, Object value ) {
- Property p = find( key );
- if ( !p.getValue().equals( value ) ) {
- fProperties.set( fProperties.indexOf( p ), new Property( key, value ) );
- setDirty( true );
- }
- }
-
- public boolean isDirty() {
- return fIsDirty;
- }
-
- public void dispose() {
- fProperties.clear();
- }
-
- private void setDirty( boolean dirty ) {
- fIsDirty = dirty;
- }
-
- private Property find( String key ) {
- Iterator it = fProperties.iterator();
- while( it.hasNext() ) {
- Property p = (Property)it.next();
- if ( p.getKey().equals( key ) ) {
- return p;
- }
- }
- throw new IllegalArgumentException( key );
- }
-}
diff --git a/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/propertypages/ModulePropertyPage.java b/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/propertypages/ModulePropertyPage.java
deleted file mode 100644
index 858decce6e6..00000000000
--- a/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/propertypages/ModulePropertyPage.java
+++ /dev/null
@@ -1,237 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004, 2005 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.internal.ui.propertypages;
-
-import org.eclipse.cdt.core.IAddress;
-import org.eclipse.cdt.debug.core.CDIDebugModel;
-import org.eclipse.cdt.debug.core.CDebugUtils;
-import org.eclipse.cdt.debug.core.model.ICModule;
-import org.eclipse.cdt.debug.internal.core.ICDebugInternalConstants;
-import org.eclipse.core.runtime.IPath;
-import org.eclipse.core.runtime.IStatus;
-import org.eclipse.core.runtime.MultiStatus;
-import org.eclipse.core.runtime.Path;
-import org.eclipse.core.runtime.Status;
-import org.eclipse.debug.core.DebugException;
-import org.eclipse.debug.core.DebugPlugin;
-import org.eclipse.swt.SWT;
-import org.eclipse.swt.events.SelectionEvent;
-import org.eclipse.swt.events.SelectionListener;
-import org.eclipse.swt.graphics.Font;
-import org.eclipse.swt.layout.GridData;
-import org.eclipse.swt.layout.GridLayout;
-import org.eclipse.swt.widgets.Button;
-import org.eclipse.swt.widgets.Composite;
-import org.eclipse.swt.widgets.Control;
-import org.eclipse.swt.widgets.FileDialog;
-import org.eclipse.swt.widgets.Label;
-import org.eclipse.swt.widgets.Text;
-import org.eclipse.ui.dialogs.PropertyPage;
-
-/**
- * The property page for a module.
- */
-public class ModulePropertyPage extends PropertyPage {
-
- private Label fTypeField;
- private Label fCPUField;
- private Label fBaseAddressField;
- private Label fSizeField;
- private Label fSymbolsField;
- protected Text fSymbolsFileField;
- protected Button fBrowseButton;
-
- private ModuleProperties fProperties = null;
-
- /* (non-Javadoc)
- * @see org.eclipse.jface.preference.PreferencePage#createContents(org.eclipse.swt.widgets.Composite)
- */
- protected Control createContents( Composite parent ) {
- noDefaultAndApplyButton();
- Composite composite = new Composite( parent, SWT.NONE );
- Font font = parent.getFont();
- composite.setFont( font );
- GridLayout topLayout = new GridLayout();
- topLayout.numColumns = 2;
- composite.setLayout( topLayout );
- composite.setLayoutData( new GridData( GridData.FILL_BOTH ) );
-
- createFields( composite );
- initializeFields();
-
- setValid( true );
- return composite;
- }
-
- protected ICModule getModule() {
- return (ICModule)getElement();
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.jface.preference.IPreferencePage#performOk()
- */
- public boolean performOk() {
- if ( getModuleProperties() != null && getModuleProperties().isDirty() ) {
- final IPath path = (IPath)getModuleProperties().getProperty( ModuleProperties.SYMBOLS_FILE );
- final ICModule module = getModule();
- if ( module != null ) {
-
- DebugPlugin.getDefault().asyncExec(
- new Runnable() {
- public void run() {
- try {
- module.setSymbolsFileName( path );
- }
- catch( DebugException e ) {
- failed( PropertyPageMessages.getString( "ModulePropertyPage.15" ), e ); //$NON-NLS-1$
- }
- }
- } );
- }
- }
- return super.performOk();
- }
-
- protected ModuleProperties getModuleProperties() {
- if ( fProperties == null ) {
- fProperties = ModuleProperties.create( getModule() );
- }
- return fProperties;
- }
-
- protected void failed( String message, Throwable e ) {
- MultiStatus ms = new MultiStatus( CDIDebugModel.getPluginIdentifier(), ICDebugInternalConstants.STATUS_CODE_ERROR, message, null );
- ms.add( new Status( IStatus.ERROR, CDIDebugModel.getPluginIdentifier(), ICDebugInternalConstants.STATUS_CODE_ERROR, e.getMessage(), null ) );
- CDebugUtils.error( ms, getModule() );
- }
-
- private void createFields( Composite parent ) {
- fTypeField = createField( parent, PropertyPageMessages.getString( "ModulePropertyPage.0" ) ); //$NON-NLS-1$
- fCPUField = createField( parent, PropertyPageMessages.getString( "ModulePropertyPage.4" ) ); //$NON-NLS-1$
- fBaseAddressField = createField( parent, PropertyPageMessages.getString( "ModulePropertyPage.6" ) ); //$NON-NLS-1$
- fSizeField = createField( parent, PropertyPageMessages.getString( "ModulePropertyPage.8" ) ); //$NON-NLS-1$
- fSymbolsField = createField( parent, PropertyPageMessages.getString( "ModulePropertyPage.10" ) ); //$NON-NLS-1$
- createSymbolsFileField( parent );
- }
-
- private Label createField( Composite parent, String label ) {
- Font font = parent.getFont();
- Label l = new Label( parent, SWT.LEFT );
- l.setText( label );
- GridData gd = new GridData( GridData.HORIZONTAL_ALIGN_FILL );
- l.setLayoutData( gd );
- l.setFont( font );
- Label v = new Label( parent, SWT.LEFT );
- gd = new GridData( GridData.HORIZONTAL_ALIGN_FILL );
- v.setLayoutData( gd );
- v.setFont( font );
- return v;
- }
-
- private void createSymbolsFileField( Composite parent ) {
- Font font = parent.getFont();
-
- // Separator
- Label l = new Label( parent, SWT.LEFT );
- GridData gd = new GridData( GridData.FILL_HORIZONTAL );
- gd.horizontalSpan = 2;
- l.setLayoutData( gd );
-
- l = new Label( parent, SWT.LEFT );
- l.setText( PropertyPageMessages.getString( "ModulePropertyPage.13" ) ); //$NON-NLS-1$
- gd = new GridData( GridData.FILL_HORIZONTAL );
- gd.horizontalSpan = 2;
- l.setLayoutData( gd );
- l.setFont( font );
- Composite composite = new Composite( parent, SWT.NONE );
- composite.setFont( font );
- GridLayout layout = new GridLayout();
- layout.numColumns = 5;
- composite.setLayout( layout );
- gd = new GridData( GridData.FILL_BOTH );
- gd.horizontalSpan = 2;
- composite.setLayoutData( gd );
-
- // Text
- fSymbolsFileField = new Text( composite, SWT.SINGLE | SWT.BORDER );
- gd = new GridData( GridData.FILL_HORIZONTAL );
- gd.horizontalSpan = 4;
- fSymbolsFileField.setLayoutData( gd );
-
- fBrowseButton = new Button( composite, SWT.PUSH );
- fBrowseButton.setText( PropertyPageMessages.getString( "ModulePropertyPage.3" ) ); //$NON-NLS-1$
- fBrowseButton.addSelectionListener(
- new SelectionListener() {
-
- public void widgetSelected( SelectionEvent e ) {
- FileDialog dialog = new FileDialog( fBrowseButton.getShell() );
- dialog.setFileName( ((IPath)getModuleProperties().getProperty( ModuleProperties.SYMBOLS_FILE )).toOSString() );
- String fn = dialog.open();
- if ( fn != null ) {
- IPath path = new Path( fn );
- fSymbolsFileField.setText( path.toOSString() );
- getModuleProperties().setProperty( ModuleProperties.SYMBOLS_FILE, path );
- }
- }
-
- public void widgetDefaultSelected( SelectionEvent e ) {
- }
- } );
- }
-
- private void initializeFields() {
- // Type
- Integer type = (Integer)getModuleProperties().getProperty( ModuleProperties.TYPE );
- String value = PropertyPageMessages.getString( "ModulePropertyPage.16" ); //$NON-NLS-1$
- if ( type.intValue() == ICModule.EXECUTABLE ) {
- value = PropertyPageMessages.getString( "ModulePropertyPage.1" ); //$NON-NLS-1$
- }
- if ( type.intValue() == ICModule.SHARED_LIBRARY ) {
- value = PropertyPageMessages.getString( "ModulePropertyPage.2" ); //$NON-NLS-1$
- }
- fTypeField.setText( value );
-
- // CPU
- String cpu = (String)getModuleProperties().getProperty( ModuleProperties.CPU );
- value = ( cpu != null ) ? cpu : PropertyPageMessages.getString( "ModulePropertyPage.5" ); //$NON-NLS-1$
- fCPUField.setText( value );
-
- // Base address
- IAddress address = (IAddress)getModuleProperties().getProperty( ModuleProperties.BASE_ADDRESS );
- value = ( address != null && !address.isZero() ) ? address.toHexAddressString() : PropertyPageMessages.getString( "ModulePropertyPage.7" ); //$NON-NLS-1$
- fBaseAddressField.setText( value );
-
- // Size
- Long size = (Long)getModuleProperties().getProperty( ModuleProperties.SIZE );
- value = ( size != null && size.longValue() > 0 ) ? size.toString() : PropertyPageMessages.getString( "ModulePropertyPage.9" ); //$NON-NLS-1$
- fSizeField.setText( value );
-
- // Symbols flag
- Boolean loaded = (Boolean)getModuleProperties().getProperty( ModuleProperties.SYMBOLS_LOADED );
- value = ( loaded != null && loaded.booleanValue() ) ? PropertyPageMessages.getString( "ModulePropertyPage.11" ) : PropertyPageMessages.getString( "ModulePropertyPage.12" ); //$NON-NLS-1$ //$NON-NLS-2$
- fSymbolsField.setText( value );
-
- // Symbols file:
- IPath path = (IPath)getModuleProperties().getProperty( ModuleProperties.SYMBOLS_FILE );
- value = ( path != null ) ? path.toOSString() : PropertyPageMessages.getString( "ModulePropertyPage.14" ); //$NON-NLS-1$
- fSymbolsFileField.setText( value );
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.jface.dialogs.IDialogPage#dispose()
- */
- public void dispose() {
- if ( getModuleProperties() != null ) {
- getModuleProperties().dispose();
- }
- super.dispose();
- }
-}
diff --git a/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/propertypages/PropertyPageMessages.java b/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/propertypages/PropertyPageMessages.java
deleted file mode 100644
index a144ba507b3..00000000000
--- a/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/propertypages/PropertyPageMessages.java
+++ /dev/null
@@ -1,33 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.internal.ui.propertypages;
-
-import java.util.MissingResourceException;
-import java.util.ResourceBundle;
-
-public class PropertyPageMessages {
-
- private static final String BUNDLE_NAME = "org.eclipse.cdt.debug.internal.ui.propertypages.PropertyPageMessages"; //$NON-NLS-1$
-
- private static final ResourceBundle RESOURCE_BUNDLE = ResourceBundle.getBundle( BUNDLE_NAME );
-
- private PropertyPageMessages() {
- }
-
- public static String getString( String key ) {
- try {
- return RESOURCE_BUNDLE.getString( key );
- }
- catch( MissingResourceException e ) {
- return '!' + key + '!';
- }
- }
-}
diff --git a/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/propertypages/PropertyPageMessages.properties b/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/propertypages/PropertyPageMessages.properties
deleted file mode 100644
index c6f28cbcf17..00000000000
--- a/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/propertypages/PropertyPageMessages.properties
+++ /dev/null
@@ -1,57 +0,0 @@
-###############################################################################
-# Copyright (c) 2003, 2005 QNX Software Systems and others.
-# All rights reserved. This program and the accompanying materials
-# are made available under the terms of the Eclipse Public License v1.0
-# which accompanies this distribution, and is available at
-# http://www.eclipse.org/legal/epl-v10.html
-#
-# Contributors:
-# QNX Software Systems - initial API and implementation
-###############################################################################
-
-CBreakpointPropertyPage.0=Ignore count must be a nonnegative integer
-CBreakpointPropertyPage.1=Not available
-CBreakpointPropertyPage.2=Function name:
-CBreakpointPropertyPage.3=C/C++ function breakpoint
-CBreakpointPropertyPage.4=Not available
-CBreakpointPropertyPage.5=Address:
-CBreakpointPropertyPage.6=C/C++ address breakpoint
-CBreakpointPropertyPage.7=File:
-CBreakpointPropertyPage.8=C/C++ line breakpoint
-CBreakpointPropertyPage.9=Line number:
-CBreakpointPropertyPage.10=Project:
-CBreakpointPropertyPage.11=C/C++ read watchpoint
-CBreakpointPropertyPage.12=C/C++ watchpoint
-CBreakpointPropertyPage.13=C/C++ access watchpoint
-CBreakpointPropertyPage.14=Expression to watch:
-CBreakpointPropertyPage.15=&Condition:
-CBreakpointPropertyPage.16=Invalid condition.
-CBreakpointPropertyPage.17=&Ignore count:
-CBreakpointPropertyPage.18=Type:
-CBreakpointPropertyPage.19=Enabled
-ThreadFilterEditor.0=&Restrict to Selected Targets and Threads:
-SignalPropertyPage.0=Description: {0}.
-SignalPropertyPage.1=Pass this signal to the program.
-SignalPropertyPage.2=Suspend the program when this signal happens.
-SignalPropertyPage.4=Operation failed.
-SignalPropertyPage.5=Unable to change signal's properties.
-ModulePropertyPage.0=Type:
-ModulePropertyPage.1=executable
-ModulePropertyPage.2=shared library
-ModulePropertyPage.3=core file
-ModulePropertyPage.3=Browse...
-ModulePropertyPage.4=CPU:
-ModulePropertyPage.5=not available
-ModulePropertyPage.6=Base address:
-ModulePropertyPage.7=not available
-ModulePropertyPage.8=Size:
-ModulePropertyPage.9=not available
-ModulePropertyPage.10=Symbols:
-ModulePropertyPage.11=loaded
-ModulePropertyPage.12=not loaded
-ModulePropertyPage.13=Symbols file:
-ModulePropertyPage.14=not found
-ModulePropertyPage.15=Error
-ModulePropertyPage.15=Unable to load symbols.
-ModulePropertyPage.16=Unable to load symbols.
-ModulePropertyPage.16=not available
diff --git a/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/propertypages/SignalPropertyPage.java b/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/propertypages/SignalPropertyPage.java
deleted file mode 100644
index 46f6f86ad94..00000000000
--- a/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/propertypages/SignalPropertyPage.java
+++ /dev/null
@@ -1,144 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004, 2005 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.internal.ui.propertypages;
-
-import java.text.MessageFormat;
-import org.eclipse.cdt.debug.core.CDIDebugModel;
-import org.eclipse.cdt.debug.core.CDebugUtils;
-import org.eclipse.cdt.debug.core.model.ICSignal;
-import org.eclipse.cdt.debug.internal.core.ICDebugInternalConstants;
-import org.eclipse.cdt.debug.internal.ui.dialogfields.SelectionButtonDialogField;
-import org.eclipse.core.runtime.IStatus;
-import org.eclipse.core.runtime.MultiStatus;
-import org.eclipse.core.runtime.Status;
-import org.eclipse.debug.core.DebugException;
-import org.eclipse.debug.core.DebugPlugin;
-import org.eclipse.jface.dialogs.IDialogConstants;
-import org.eclipse.swt.SWT;
-import org.eclipse.swt.graphics.Font;
-import org.eclipse.swt.layout.GridData;
-import org.eclipse.swt.layout.GridLayout;
-import org.eclipse.swt.widgets.Composite;
-import org.eclipse.swt.widgets.Control;
-import org.eclipse.swt.widgets.Label;
-import org.eclipse.ui.dialogs.PropertyPage;
-
-/**
- * The property page for a signal.
- */
-public class SignalPropertyPage extends PropertyPage {
-
- private SelectionButtonDialogField fPassButton;
- private SelectionButtonDialogField fStopButton;
-
- /* (non-Javadoc)
- * @see org.eclipse.jface.preference.PreferencePage#createContents(org.eclipse.swt.widgets.Composite)
- */
- protected Control createContents( Composite parent ) {
- noDefaultAndApplyButton();
- Composite composite = new Composite( parent, SWT.NONE );
- Font font = parent.getFont();
- composite.setFont( font );
- composite.setLayout( new GridLayout() );
- composite.setLayoutData( new GridData( GridData.FILL_BOTH ) );
-
- // Create description field
- try {
- String description = getSignal().getDescription();
- Label label = new Label( composite, SWT.WRAP );
- label.setText( MessageFormat.format( PropertyPageMessages.getString( "SignalPropertyPage.0" ), new String[] { description } ) ); //$NON-NLS-1$
- GridData data = new GridData( GridData.GRAB_HORIZONTAL | GridData.HORIZONTAL_ALIGN_FILL | GridData.VERTICAL_ALIGN_CENTER );
- data.widthHint = convertHorizontalDLUsToPixels( IDialogConstants.MINIMUM_MESSAGE_AREA_WIDTH );
- label.setLayoutData( data );
- label.setFont( font );
- }
- catch( DebugException e1 ) {
- }
-
- // Create pass button
- try {
- boolean pass = getSignal().isPassEnabled();
- fPassButton = new SelectionButtonDialogField( SWT.CHECK );
- fPassButton.setLabelText( PropertyPageMessages.getString( "SignalPropertyPage.1" ) ); //$NON-NLS-1$
- fPassButton.setSelection( pass );
- fPassButton.setEnabled( getSignal().canModify() );
- fPassButton.doFillIntoGrid( composite, 1 );
- }
- catch( DebugException e ) {
- }
-
- // Create stop button
- try {
- boolean stop = getSignal().isStopEnabled();
- fStopButton = new SelectionButtonDialogField( SWT.CHECK );
- fStopButton.setLabelText( PropertyPageMessages.getString( "SignalPropertyPage.2" ) ); //$NON-NLS-1$
- fStopButton.setSelection( stop );
- fStopButton.setEnabled( getSignal().canModify() );
- fStopButton.doFillIntoGrid( composite, 1 );
- }
- catch( DebugException e ) {
- }
-
- setValid( true );
- return composite;
- }
-
- protected SelectionButtonDialogField getPassButton() {
- return fPassButton;
- }
-
- protected SelectionButtonDialogField getStopButton() {
- return fStopButton;
- }
-
- public ICSignal getSignal() {
- return (ICSignal)getElement();
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.jface.preference.IPreferencePage#performOk()
- */
- public boolean performOk() {
- boolean result = super.performOk();
- if ( result ) {
- DebugPlugin.getDefault().asyncExec(
- new Runnable() {
- public void run() {
- if ( !getSignal().canModify() )
- return;
- if ( getPassButton() != null ) {
- try {
- getSignal().setPassEnabled( getPassButton().isSelected() );
- }
- catch( DebugException e ) {
- failed( PropertyPageMessages.getString( "SignalPropertyPage.5" ), e ); //$NON-NLS-1$
- }
- }
- if ( getStopButton() != null ) {
- try {
- getSignal().setStopEnabled( getStopButton().isSelected() );
- }
- catch( DebugException e ) {
- failed( PropertyPageMessages.getString( "SignalPropertyPage.5" ), e ); //$NON-NLS-1$
- }
- }
- }
- } );
- }
- return result;
- }
-
- protected void failed( String message, Throwable e ) {
- MultiStatus ms = new MultiStatus( CDIDebugModel.getPluginIdentifier(), ICDebugInternalConstants.STATUS_CODE_ERROR, message, null );
- ms.add( new Status( IStatus.ERROR, CDIDebugModel.getPluginIdentifier(), ICDebugInternalConstants.STATUS_CODE_ERROR, e.getMessage(), null ) );
- CDebugUtils.error( ms, getSignal() );
- }
-}
diff --git a/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/propertypages/ThreadFilterEditor.java b/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/propertypages/ThreadFilterEditor.java
deleted file mode 100644
index 8deec49fd7d..00000000000
--- a/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/propertypages/ThreadFilterEditor.java
+++ /dev/null
@@ -1,340 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004, 2005 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.internal.ui.propertypages;
-
-import java.util.ArrayList;
-import java.util.List;
-import org.eclipse.cdt.debug.core.model.ICBreakpoint;
-import org.eclipse.cdt.debug.core.model.ICDebugTarget;
-import org.eclipse.cdt.debug.core.model.ICThread;
-import org.eclipse.cdt.debug.ui.CDebugUIPlugin;
-import org.eclipse.core.runtime.CoreException;
-import org.eclipse.debug.core.DebugException;
-import org.eclipse.debug.core.DebugPlugin;
-import org.eclipse.debug.core.ILaunch;
-import org.eclipse.debug.core.ILaunchManager;
-import org.eclipse.debug.core.model.IDebugElement;
-import org.eclipse.debug.core.model.IDebugTarget;
-import org.eclipse.debug.core.model.IStackFrame;
-import org.eclipse.debug.core.model.IThread;
-import org.eclipse.debug.ui.DebugUITools;
-import org.eclipse.jface.viewers.AbstractTreeViewer;
-import org.eclipse.jface.viewers.CheckStateChangedEvent;
-import org.eclipse.jface.viewers.CheckboxTreeViewer;
-import org.eclipse.jface.viewers.ICheckStateListener;
-import org.eclipse.jface.viewers.ITreeContentProvider;
-import org.eclipse.jface.viewers.Viewer;
-import org.eclipse.swt.SWT;
-import org.eclipse.swt.layout.GridData;
-import org.eclipse.swt.widgets.Composite;
-import org.eclipse.swt.widgets.Label;
-
-public class ThreadFilterEditor {
-
- /**
- * Comment for ThreadFilterEditor.
- */
- public class CheckHandler implements ICheckStateListener {
-
- /* (non-Javadoc)
- * @see org.eclipse.jface.viewers.ICheckStateListener#checkStateChanged(org.eclipse.jface.viewers.CheckStateChangedEvent)
- */
- public void checkStateChanged( CheckStateChangedEvent event ) {
- Object element = event.getElement();
- if ( element instanceof IDebugTarget ) {
- checkTarget( (IDebugTarget)element, event.getChecked() );
- }
- else if ( element instanceof IThread ) {
- checkThread( (IThread)element, event.getChecked() );
- }
- }
-
- /**
- * Check or uncheck a debug target in the tree viewer.
- * When a debug target is checked, attempt to
- * check all of the target's threads by default.
- * When a debug target is unchecked, uncheck all
- * its threads.
- */
- protected void checkTarget( IDebugTarget target, boolean checked ) {
- getThreadViewer().setChecked( target, checked );
- getThreadViewer().setGrayed( target, false );
- getThreadViewer().expandToLevel( target, AbstractTreeViewer.ALL_LEVELS );
- IThread[] threads;
- try {
- threads = target.getThreads();
- }
- catch( DebugException exception ) {
- CDebugUIPlugin.log( exception );
- return;
- }
- for( int i = 0; i < threads.length; i++ ) {
- getThreadViewer().setChecked( threads[i], checked );
- getThreadViewer().setGrayed( threads[i], false );
- }
- }
-
- /**
- * Check or uncheck a thread.
- * Update the thread's debug target.
- */
- protected void checkThread( IThread thread, boolean checked ) {
- getThreadViewer().setChecked( thread, checked );
- IDebugTarget target = (thread).getDebugTarget();
- IThread[] threads;
- try {
- threads = target.getThreads();
- }
- catch( DebugException exception ) {
- CDebugUIPlugin.log( exception );
- return;
- }
- int checkedNumber = 0;
- for( int i = 0; i < threads.length; i++ ) {
- if ( getThreadViewer().getChecked( threads[i] ) ) {
- ++checkedNumber;
- }
- }
- if ( checkedNumber == 0 ) {
- getThreadViewer().setChecked( target, false );
- getThreadViewer().setGrayed( target, false );
- }
- else if ( checkedNumber == threads.length ) {
- getThreadViewer().setChecked( target, true );
- getThreadViewer().setGrayed( target, false );
- }
- else {
- getThreadViewer().setGrayChecked( target, true );
- }
- }
- }
-
- /**
- * Comment for ThreadFilterEditor.
- */
- public class ThreadFilterContentProvider implements ITreeContentProvider {
-
- /**
- * Constructor for ThreadFilterContentProvider.
- */
- public ThreadFilterContentProvider() {
- super();
- // TODO Auto-generated constructor stub
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.jface.viewers.ITreeContentProvider#getChildren(java.lang.Object)
- */
- public Object[] getChildren( Object parent ) {
- if ( parent instanceof IDebugTarget ) {
- ICDebugTarget target = (ICDebugTarget)((IDebugTarget)parent).getAdapter( ICDebugTarget.class );
- if ( target != null ) {
- try {
- return ((ICDebugTarget)parent).getThreads();
- }
- catch( DebugException e ) {
- CDebugUIPlugin.log( e );
- }
- }
- }
- if ( parent instanceof ILaunchManager ) {
- List children = new ArrayList();
- ILaunch[] launches = ((ILaunchManager)parent).getLaunches();
- IDebugTarget[] targets;
- ICDebugTarget target;
- for( int i = 0, numLaunches = launches.length; i < numLaunches; i++ ) {
- targets = launches[i].getDebugTargets();
- for( int j = 0, numTargets = targets.length; j < numTargets; j++ ) {
- target = (ICDebugTarget)targets[j].getAdapter( ICDebugTarget.class );
- if ( target != null && !target.isDisconnected() && !target.isTerminated() ) {
- children.add( target );
- }
- }
- }
- return children.toArray();
- }
- return new Object[0];
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.jface.viewers.ITreeContentProvider#getParent(java.lang.Object)
- */
- public Object getParent( Object element ) {
- if ( element instanceof IThread ) {
- return ((IThread)element).getDebugTarget();
- }
- if ( element instanceof IDebugTarget ) {
- return ((IDebugElement)element).getLaunch();
- }
- if ( element instanceof ILaunch ) {
- return DebugPlugin.getDefault().getLaunchManager();
- }
- return null;
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.jface.viewers.ITreeContentProvider#hasChildren(java.lang.Object)
- */
- public boolean hasChildren( Object element ) {
- if ( element instanceof IStackFrame ) {
- return false;
- }
- if ( element instanceof IDebugElement ) {
- return getChildren( element ).length > 0;
- }
- if ( element instanceof ILaunch ) {
- return true;
- }
- if ( element instanceof ILaunchManager ) {
- return ((ILaunchManager)element).getLaunches().length > 0;
- }
- return false;
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.jface.viewers.IStructuredContentProvider#getElements(java.lang.Object)
- */
- public Object[] getElements( Object inputElement ) {
- return getChildren( inputElement );
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.jface.viewers.IContentProvider#dispose()
- */
- public void dispose() {
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.jface.viewers.IContentProvider#inputChanged(org.eclipse.jface.viewers.Viewer, java.lang.Object, java.lang.Object)
- */
- public void inputChanged( Viewer viewer, Object oldInput, Object newInput ) {
- }
- }
-
- private CBreakpointFilteringPage fPage;
-
- private CheckboxTreeViewer fThreadViewer;
-
- private ThreadFilterContentProvider fContentProvider;
-
- private CheckHandler fCheckHandler;
-
- /**
- * Constructor for ThreadFilterEditor.
- */
- public ThreadFilterEditor( Composite parent, CBreakpointFilteringPage page ) {
- fPage = page;
- fContentProvider = new ThreadFilterContentProvider();
- fCheckHandler = new CheckHandler();
- createThreadViewer( parent );
- }
-
- protected CBreakpointFilteringPage getPage() {
- return fPage;
- }
-
- private void createThreadViewer( Composite parent ) {
- Label label = new Label( parent, SWT.NONE );
- label.setText( PropertyPageMessages.getString( "ThreadFilterEditor.0" ) ); //$NON-NLS-1$
- label.setFont( parent.getFont() );
- label.setLayoutData( new GridData() );
- GridData data = new GridData( GridData.FILL_BOTH );
- data.heightHint = 100;
- fThreadViewer = new CheckboxTreeViewer( parent, SWT.BORDER );
- fThreadViewer.addCheckStateListener( fCheckHandler );
- fThreadViewer.getTree().setLayoutData( data );
- fThreadViewer.getTree().setFont( parent.getFont() );
- fThreadViewer.setContentProvider( fContentProvider );
- fThreadViewer.setLabelProvider( DebugUITools.newDebugModelPresentation() );
- fThreadViewer.setInput( DebugPlugin.getDefault().getLaunchManager() );
- setInitialCheckedState();
- }
-
- /**
- * Returns the debug targets that appear in the tree
- */
- protected IDebugTarget[] getDebugTargets() {
- Object input = fThreadViewer.getInput();
- if ( !(input instanceof ILaunchManager) ) {
- return new IDebugTarget[0];
- }
- ILaunchManager launchManager = (ILaunchManager)input;
- return launchManager.getDebugTargets();
- }
-
- protected CheckboxTreeViewer getThreadViewer() {
- return fThreadViewer;
- }
-
- /**
- * Sets the initial checked state of the tree viewer.
- * The initial state should reflect the current state
- * of the breakpoint. If the breakpoint has a thread
- * filter in a given thread, that thread should be
- * checked.
- */
- protected void setInitialCheckedState() {
- ICBreakpoint breakpoint = fPage.getBreakpoint();
- try {
- ICDebugTarget[] targets = breakpoint.getTargetFilters();
- for( int i = 0; i < targets.length; i++ ) {
- ICThread[] filteredThreads = breakpoint.getThreadFilters( targets[i] );
- if ( filteredThreads != null ) {
- for ( int j = 0; j < filteredThreads.length; ++j )
- fCheckHandler.checkThread( filteredThreads[j], true );
- }
- else {
- fCheckHandler.checkTarget( targets[i], true );
- }
- }
- }
- catch( CoreException e ) {
- CDebugUIPlugin.log( e );
- }
- }
-
- protected void doStore() {
- ICBreakpoint breakpoint = fPage.getBreakpoint();
- IDebugTarget[] targets = getDebugTargets();
- for ( int i = 0; i < targets.length; ++i ) {
- if ( !(targets[i] instanceof ICDebugTarget) )
- continue;
- try {
- if ( getThreadViewer().getChecked( targets[i] ) ) {
- if ( getThreadViewer().getGrayed( targets[i] ) ) {
- ICThread[] threads = getTargetThreadFilters( (ICDebugTarget)targets[i] );
- breakpoint.setThreadFilters( threads );
- }
- else {
- breakpoint.setTargetFilter( (ICDebugTarget)targets[i] );
- }
- }
- else {
- breakpoint.removeTargetFilter( (ICDebugTarget)targets[i] );
- }
- DebugPlugin.getDefault().getBreakpointManager().fireBreakpointChanged( breakpoint );
- }
- catch( CoreException e ) {
- CDebugUIPlugin.log( e );
- }
- }
- }
-
- private ICThread[] getTargetThreadFilters( ICDebugTarget target ) {
- Object[] threads = ((ITreeContentProvider)getThreadViewer().getContentProvider()).getChildren( target );
- ArrayList list = new ArrayList( threads.length );
- for ( int i = 0; i < threads.length; ++i ) {
- if ( getThreadViewer().getChecked( threads[i] ) )
- list.add( threads[i] );
- }
- return (ICThread[])list.toArray( new ICThread[list.size()] );
- }
-}
diff --git a/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/sourcelookup/AddContainerAction.java b/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/sourcelookup/AddContainerAction.java
deleted file mode 100644
index 074c7fd289a..00000000000
--- a/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/sourcelookup/AddContainerAction.java
+++ /dev/null
@@ -1,52 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004, 2005 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.internal.ui.sourcelookup;
-
-import org.eclipse.debug.core.sourcelookup.ISourceLookupDirector;
-import org.eclipse.jface.viewers.IStructuredSelection;
-
-/**
- * The action to add a new source container.
- * Used by the CommonSourceNotFoundEditor, the launch configuration source tab,
- * and the EditSourceLookupPathDialog.
- */
-public class AddContainerAction extends SourceContainerAction {
-
- private ISourceLookupDirector fDirector;
-
- public AddContainerAction() {
- super(SourceLookupUIMessages.getString( "AddContainerAction.0" )); //$NON-NLS-1$
- }
-
- /**
- * Prompts for a project to add.
- *
- * @see org.eclipse.jface.action.IAction#run()
- */
- public void run() {
- AddSourceContainerDialog dialog = new AddSourceContainerDialog(getShell(), getViewer(), fDirector);
- dialog.open();
- }
-
- public void setSourceLookupDirector(ISourceLookupDirector director) {
- fDirector = director;
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.ui.actions.BaseSelectionListenerAction#updateSelection(org.eclipse.jface.viewers.IStructuredSelection)
- */
- protected boolean updateSelection(IStructuredSelection selection) {
- if(selection == null || selection.isEmpty()) {
- return true;
- }
- return getViewer().getTree().getSelection()[0].getParentItem()==null;
- }
-}
diff --git a/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/sourcelookup/AddSourceContainerDialog.java b/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/sourcelookup/AddSourceContainerDialog.java
deleted file mode 100644
index 1cd9105fb4f..00000000000
--- a/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/sourcelookup/AddSourceContainerDialog.java
+++ /dev/null
@@ -1,155 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2003, 2006 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.internal.ui.sourcelookup;
-
-import java.util.ArrayList;
-import org.eclipse.cdt.debug.internal.ui.ICDebugHelpContextIds;
-import org.eclipse.debug.core.DebugPlugin;
-import org.eclipse.debug.core.sourcelookup.ISourceContainer;
-import org.eclipse.debug.core.sourcelookup.ISourceContainerType;
-import org.eclipse.debug.core.sourcelookup.ISourceLookupDirector;
-import org.eclipse.debug.ui.DebugUITools;
-import org.eclipse.debug.ui.sourcelookup.ISourceContainerBrowser;
-import org.eclipse.jface.dialogs.Dialog;
-import org.eclipse.jface.dialogs.TitleAreaDialog;
-import org.eclipse.jface.viewers.ArrayContentProvider;
-import org.eclipse.jface.viewers.ISelection;
-import org.eclipse.jface.viewers.ISelectionChangedListener;
-import org.eclipse.jface.viewers.IStructuredSelection;
-import org.eclipse.jface.viewers.SelectionChangedEvent;
-import org.eclipse.jface.viewers.StructuredSelection;
-import org.eclipse.jface.viewers.TableViewer;
-import org.eclipse.jface.viewers.ViewerSorter;
-import org.eclipse.swt.SWT;
-import org.eclipse.swt.events.SelectionAdapter;
-import org.eclipse.swt.events.SelectionEvent;
-import org.eclipse.swt.layout.GridData;
-import org.eclipse.swt.layout.GridLayout;
-import org.eclipse.swt.widgets.Composite;
-import org.eclipse.swt.widgets.Control;
-import org.eclipse.swt.widgets.Shell;
-import org.eclipse.swt.widgets.Table;
-import org.eclipse.ui.PlatformUI;
-
-/**
- * The dialog for adding new source containers. Presents the user with a list of
- * source container types and allows them to select one.
- *
- * @since 3.0
- */
-public class AddSourceContainerDialog extends TitleAreaDialog {
-
- private TableViewer fViewer;
- private SourceContainerViewer fSourceContainerViewer;
- private boolean fDoubleClickSelects = true;
- private ISourceLookupDirector fDirector;
-
- /**
- * Constructor
- */
- public AddSourceContainerDialog(Shell shell, SourceContainerViewer viewer, ISourceLookupDirector director) {
- super(shell);
- setShellStyle(getShellStyle() | SWT.RESIZE);
- fSourceContainerViewer=viewer;
- fDirector = director;
- }
-
- /**
- * Creates the dialog area to display source container types that are "browseable"
- */
- protected Control createDialogArea(Composite ancestor) {
-
- getShell().setText(SourceLookupUIMessages.getString( "AddSourceContainerDialog.0" )); //$NON-NLS-1$
- setTitle(SourceLookupUIMessages.getString( "AddSourceContainerDialog.1" )); //$NON-NLS-1$
-
- Composite parent = new Composite(ancestor, SWT.NULL);
- GridData gd= new GridData(GridData.FILL_BOTH);
- GridLayout topLayout = new GridLayout();
- topLayout.numColumns = 1;
- parent.setLayout(topLayout);
- parent.setLayoutData(gd);
-
- ISourceContainerType[] types = filterTypes(DebugPlugin.getDefault().getLaunchManager().getSourceContainerTypes());
-
- fViewer = new TableViewer(parent, SWT.H_SCROLL | SWT.V_SCROLL | SWT.BORDER | SWT.SINGLE);
- final Table table = fViewer.getTable();
- gd = new GridData(GridData.FILL_BOTH);
- table.setLayoutData(gd);
-
- if (fDoubleClickSelects) {
- table.addSelectionListener(new SelectionAdapter() {
- public void widgetDefaultSelected(SelectionEvent e) {
- if (table.getSelectionCount() == 1)
- okPressed();
- }
- });
- }
-
- fViewer.setLabelProvider(new SourceContainerLabelProvider());
- fViewer.setContentProvider(new ArrayContentProvider());
- fViewer.setSorter(new ViewerSorter());
- fViewer.addSelectionChangedListener(new ISelectionChangedListener() {
- public void selectionChanged(SelectionChangedEvent event) {
- ISelection selection = event.getSelection();
- String desc = null;
- if (!selection.isEmpty()) {
- ISourceContainerType type = (ISourceContainerType) ((IStructuredSelection)selection).getFirstElement();
- desc = type.getDescription();
- }
- setMessage(desc);
- }
- });
- if(types.length != 0) {
- fViewer.setInput(types);
- }
- Dialog.applyDialogFont(parent);
- PlatformUI.getWorkbench().getHelpSystem().setHelp( getShell(), ICDebugHelpContextIds.ADD_SOURCE_CONTAINER_DIALOG );
- return parent;
- }
-
- /**
- * Removes types without browsers from the provided list of types.
- * @param types the complete list of source container types
- * @return the list of source container types that have browsers
- */
- private ISourceContainerType[] filterTypes(ISourceContainerType[] types){
- ArrayList validTypes = new ArrayList();
- for (int i=0; i< types.length; i++) {
- ISourceContainerType type = types[i];
- if (fDirector.supportsSourceContainerType(type)) {
- ISourceContainerBrowser sourceContainerBrowser = DebugUITools.getSourceContainerBrowser(type.getId());
- if(sourceContainerBrowser != null && sourceContainerBrowser.canAddSourceContainers(fDirector)) {
- validTypes.add(type);
- }
- }
- }
- return (ISourceContainerType[]) validTypes.toArray(new ISourceContainerType[validTypes.size()]);
-
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.jface.dialogs.Dialog#okPressed()
- */
- protected void okPressed() {
- //single selection dialog, so take first item in array
- //there will always be a selected item since we set it with viewer.setSelection
- ISourceContainerType type = (ISourceContainerType) ((StructuredSelection) fViewer.getSelection()).getFirstElement();
- ISourceContainerBrowser browser = DebugUITools.getSourceContainerBrowser(type.getId());
- if (browser != null) {
- ISourceContainer[] results = browser.addSourceContainers(getShell(), fDirector);
- if(results != null) {
- fSourceContainerViewer.addEntries(results);
- }
- }
- super.okPressed();
- }
-
-}
diff --git a/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/sourcelookup/CSourceNotFoundEditor.java b/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/sourcelookup/CSourceNotFoundEditor.java
deleted file mode 100644
index 203594f254b..00000000000
--- a/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/sourcelookup/CSourceNotFoundEditor.java
+++ /dev/null
@@ -1,201 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2006 Nokia and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * Nokia - initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.cdt.debug.internal.ui.sourcelookup;
-
-import java.text.MessageFormat;
-import java.util.ArrayList;
-import java.util.Arrays;
-import java.util.Iterator;
-
-import org.eclipse.cdt.debug.core.sourcelookup.MappingSourceContainer;
-import org.eclipse.cdt.debug.internal.core.sourcelookup.CSourceNotFoundElement;
-import org.eclipse.cdt.debug.internal.core.sourcelookup.MapEntrySourceContainer;
-import org.eclipse.cdt.debug.internal.ui.ICDebugHelpContextIds;
-import org.eclipse.core.runtime.CoreException;
-import org.eclipse.core.runtime.IPath;
-import org.eclipse.core.runtime.Path;
-import org.eclipse.debug.core.DebugPlugin;
-import org.eclipse.debug.core.ILaunch;
-import org.eclipse.debug.core.ILaunchConfiguration;
-import org.eclipse.debug.core.ILaunchConfigurationWorkingCopy;
-import org.eclipse.debug.core.ILaunchManager;
-import org.eclipse.debug.core.model.IDebugElement;
-import org.eclipse.debug.core.model.ISourceLocator;
-import org.eclipse.debug.core.sourcelookup.AbstractSourceLookupDirector;
-import org.eclipse.debug.core.sourcelookup.ISourceContainer;
-import org.eclipse.debug.internal.ui.sourcelookup.SourceLookupManager;
-import org.eclipse.debug.ui.sourcelookup.CommonSourceNotFoundEditor;
-import org.eclipse.swt.SWT;
-import org.eclipse.swt.events.SelectionAdapter;
-import org.eclipse.swt.events.SelectionEvent;
-import org.eclipse.swt.layout.GridData;
-import org.eclipse.swt.widgets.Button;
-import org.eclipse.swt.widgets.Composite;
-import org.eclipse.swt.widgets.FileDialog;
-import org.eclipse.ui.IEditorInput;
-import org.eclipse.ui.IEditorSite;
-import org.eclipse.ui.IWorkbenchPage;
-import org.eclipse.ui.PartInitException;
-import org.eclipse.ui.PlatformUI;
-
-/**
- * Editor that lets you select a replacement for the missing source file
- * and modifies the source locator accordingly.
- *
- */
-public class CSourceNotFoundEditor extends CommonSourceNotFoundEditor {
-
- public final String foundMappingsContainerName = "Found Mappings"; //$NON-NLS-1$
-
- private String missingFile;
- private ILaunch launch;
- private IDebugElement context;
-
- public CSourceNotFoundEditor() {
- super();
- }
-
- public void createPartControl(Composite parent) {
- super.createPartControl(parent);
- PlatformUI.getWorkbench().getHelpSystem().setHelp(parent, ICDebugHelpContextIds.SOURCE_NOT_FOUND);
- }
-
- public void init(IEditorSite site, IEditorInput input) throws PartInitException {
- super.init(site, input);
- Object artifact = this.getArtifact();
- if (artifact instanceof CSourceNotFoundElement)
- {
- CSourceNotFoundElement element = (CSourceNotFoundElement) artifact;
- missingFile = element.getFile();
- launch = element.getLaunch();
- context = element.getElement();
- }
- else
- missingFile = ""; //$NON-NLS-1$
- }
-
- protected String getText() {
- if (missingFile.length() > 0) {
- return MessageFormat.format(SourceLookupUIMessages.getString( "CSourceNotFoundEditor.0" ), new String[] { missingFile }); //$NON-NLS-1$
- }
- return super.getText();
- }
-
- protected void createButtons(Composite parent) {
- if (missingFile.length() > 0) {
- GridData data;
- Button button = new Button(parent, SWT.PUSH);
- data = new GridData();
- data.grabExcessHorizontalSpace = false;
- data.grabExcessVerticalSpace = false;
- button.setLayoutData(data);
- button.setText(SourceLookupUIMessages.getString( "CSourceNotFoundEditor.1" )); //$NON-NLS-1$
- button.addSelectionListener(new SelectionAdapter() {
- public void widgetSelected(SelectionEvent evt) {
- locateFile();
- }
- });
- }
- super.createButtons(parent);
- }
-
- private void addSourceMapping(IPath missingPath, IPath newSourcePath) throws CoreException {
- String memento = null;
- String type = null;
-
- ILaunchConfigurationWorkingCopy configuration = launch.getLaunchConfiguration().getWorkingCopy();
- memento = configuration.getAttribute(ILaunchConfiguration.ATTR_SOURCE_LOCATOR_MEMENTO, (String) null);
- type = configuration.getAttribute(ILaunchConfiguration.ATTR_SOURCE_LOCATOR_ID, (String) null);
- if (type == null) {
- type = configuration.getType().getSourceLocatorId();
- }
- ILaunchManager launchManager = DebugPlugin.getDefault().getLaunchManager();
- ISourceLocator locator = launchManager.newSourceLocator(type);
- if (locator instanceof AbstractSourceLookupDirector) {
- AbstractSourceLookupDirector director = (AbstractSourceLookupDirector) locator;
- if (memento == null) {
- director.initializeDefaults(configuration);
- } else {
- director.initializeFromMemento(memento, configuration);
- }
-
- ArrayList containerList = new ArrayList(Arrays.asList(director.getSourceContainers()));
-
- boolean hasFoundMappings = false;
-
- MappingSourceContainer foundMappings = null;
-
- for (Iterator iter = containerList.iterator(); iter.hasNext() && !hasFoundMappings;) {
- ISourceContainer container = (ISourceContainer) iter.next();
- if (container instanceof MappingSourceContainer)
- {
- hasFoundMappings = container.getName().equals(foundMappingsContainerName);
- if (hasFoundMappings)
- foundMappings = (MappingSourceContainer) container;
- }
- }
-
- if (!hasFoundMappings) {
- foundMappings = new MappingSourceContainer(foundMappingsContainerName);
- foundMappings.init(director);
- containerList.add(foundMappings);
- director.setSourceContainers((ISourceContainer[]) containerList.toArray(new ISourceContainer[containerList.size()]));
- }
-
- foundMappings.addMapEntry(new MapEntrySourceContainer(missingPath, newSourcePath));
- configuration.setAttribute(ILaunchConfiguration.ATTR_SOURCE_LOCATOR_MEMENTO, director.getMemento());
- configuration.setAttribute(ILaunchConfiguration.ATTR_SOURCE_LOCATOR_ID, director.getId());
- configuration.doSave();
-
- }
- }
-
- protected void locateFile() {
- FileDialog dialog = new FileDialog(getEditorSite().getShell(), SWT.NONE);
- Path missingPath = new Path(missingFile);
- dialog.setFilterNames(new String[] {SourceLookupUIMessages.getString("CSourceNotFoundEditor.2")}); //$NON-NLS-1$
- dialog.setFilterExtensions(new String[] {"*." + missingPath.getFileExtension()}); //$NON-NLS-1$
- String res = dialog.open();
- if (res != null) {
- Path newPath = new Path(res);
-
- if (newPath.lastSegment().equalsIgnoreCase(missingPath.lastSegment()))
- {
-
- if (missingPath.segmentCount() > 1)
- {
- int missingPathSegCount = missingPath.segmentCount() - 2;
- int newPathSegCount = newPath.segmentCount() - 2;
- while (missingPathSegCount >= 0 && newPathSegCount >= 0)
- {
- if (!newPath.segment(newPathSegCount).equalsIgnoreCase(missingPath.segment(missingPathSegCount)))
- break;
- newPathSegCount--;
- missingPathSegCount--;
- }
- IPath compPath = missingPath.removeLastSegments(missingPath.segmentCount() - missingPathSegCount - 1);
- IPath newSourcePath = newPath.removeLastSegments(newPath.segmentCount() - newPathSegCount - 1);
- try {
- addSourceMapping(compPath, newSourcePath);
- } catch (CoreException e) {}
-
- }
-
- IWorkbenchPage page = getEditorSite().getPage();
- SourceLookupManager.getDefault().displaySource(context, page, true);
- closeEditor();
-
- }
- }
- }
-
-}
diff --git a/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/sourcelookup/CSourceNotFoundEditorInput.java b/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/sourcelookup/CSourceNotFoundEditorInput.java
deleted file mode 100644
index 9eb10838550..00000000000
--- a/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/sourcelookup/CSourceNotFoundEditorInput.java
+++ /dev/null
@@ -1,27 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2006 Nokia and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * Nokia - initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.cdt.debug.internal.ui.sourcelookup;
-
-import org.eclipse.cdt.debug.internal.core.sourcelookup.CSourceNotFoundElement;
-import org.eclipse.debug.ui.sourcelookup.CommonSourceNotFoundEditorInput;
-
-public class CSourceNotFoundEditorInput extends CommonSourceNotFoundEditorInput {
-
- public CSourceNotFoundElement getElement() {
- return (CSourceNotFoundElement) getArtifact();
- }
-
- public CSourceNotFoundEditorInput(CSourceNotFoundElement artifact) {
- super(artifact);
- }
-
-}
diff --git a/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/sourcelookup/DownAction.java b/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/sourcelookup/DownAction.java
deleted file mode 100644
index bc9a532bcf9..00000000000
--- a/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/sourcelookup/DownAction.java
+++ /dev/null
@@ -1,57 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2003, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.internal.ui.sourcelookup;
-import java.util.List;
-
-import org.eclipse.jface.viewers.IStructuredSelection;
-
-/**
- * The action for sorting the order of source containers in the dialog.
- *
- */
-public class DownAction extends SourceContainerAction {
-
- public DownAction() {
- super(SourceLookupUIMessages.getString( "DownAction.0" )); //$NON-NLS-1$
- }
- /**
- * @see IAction#run()
- */
- public void run() {
- List targets = getOrderedSelection();
- if (targets.isEmpty()) {
- return;
- }
- List list = getEntriesAsList();
- int bottom = list.size() - 1;
- int index = 0;
- for (int i = targets.size() - 1; i >= 0; i--) {
- Object target = targets.get(i);
- index = list.indexOf(target);
- if (index < bottom) {
- bottom = index + 1;
- Object temp = list.get(bottom);
- list.set(bottom, target);
- list.set(index, temp);
- }
- bottom = index;
- }
- setEntries(list);
- }
-
- /**
- * @see SelectionListenerAction#updateSelection(IStructuredSelection)
- */
- protected boolean updateSelection(IStructuredSelection selection) {
- return !selection.isEmpty() && !isIndexSelected(selection, getEntriesAsList().size() - 1) && getViewer().getTree().getSelection()[0].getParentItem()==null;
- }
-
-}
diff --git a/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/sourcelookup/EditContainerAction.java b/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/sourcelookup/EditContainerAction.java
deleted file mode 100644
index 5340eb946d3..00000000000
--- a/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/sourcelookup/EditContainerAction.java
+++ /dev/null
@@ -1,89 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2003, 2006 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.internal.ui.sourcelookup;
-
-import java.util.Iterator;
-import org.eclipse.debug.core.sourcelookup.ISourceContainer;
-import org.eclipse.debug.core.sourcelookup.ISourceContainerType;
-import org.eclipse.debug.core.sourcelookup.ISourceLookupDirector;
-import org.eclipse.debug.ui.DebugUITools;
-import org.eclipse.debug.ui.sourcelookup.ISourceContainerBrowser;
-import org.eclipse.jface.viewers.IStructuredSelection;
-
-/**
- * Action used to edit source containers on a source lookup path
- */
-public class EditContainerAction extends SourceContainerAction {
-
- private ISourceLookupDirector fDirector;
- private ISourceContainer[] fContainers;
- private ISourceContainerBrowser fBrowser;
-
- public EditContainerAction() {
- super(SourceLookupUIMessages.getString( "EditContainerAction.0" )); //$NON-NLS-1$
- }
-
- /**
- * Prompts for a project to add.
- *
- * @see org.eclipse.jface.action.IAction#run()
- */
- public void run() {
- ISourceContainer[] replacements = fBrowser.editSourceContainers(getShell(), fDirector, fContainers);
- int j = 0;
- ISourceContainer[] existing = getViewer().getEntries();
- for (int i = 0; i < existing.length && j < replacements.length; i++) {
- ISourceContainer toBeReplaced = fContainers[j];
- ISourceContainer container = existing[i];
- if (container.equals(toBeReplaced)) {
- existing[i] = replacements[j];
- j++;
- }
- }
- getViewer().setEntries(existing);
- }
-
- public void setSourceLookupDirector(ISourceLookupDirector director) {
- fDirector = director;
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.ui.actions.BaseSelectionListenerAction#updateSelection(org.eclipse.jface.viewers.IStructuredSelection)
- */
- protected boolean updateSelection(IStructuredSelection selection) {
- if(selection == null || selection.isEmpty()) {
- return false;
- }
- if (getViewer().getTree().getSelection()[0].getParentItem()==null) {
- // can only edit top level items of same type
- fContainers = new ISourceContainer[selection.size()];
- Iterator iterator = selection.iterator();
- ISourceContainer container = (ISourceContainer) iterator.next();
- ISourceContainerType type = container.getType();
- fContainers[0] = container;
- int i = 1;
- while (iterator.hasNext()) {
- container = (ISourceContainer) iterator.next();
- fContainers[i] = container;
- i++;
- if (!container.getType().equals(type)) {
- return false;
- }
- }
- // all the same type, see if editing is supported
- fBrowser = DebugUITools.getSourceContainerBrowser(type.getId());
- if (fBrowser != null) {
- return fBrowser.canEditSourceContainers(fDirector, fContainers);
- }
- }
- return false;
- }
-}
diff --git a/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/sourcelookup/MappingSourceContainerBrowser.java b/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/sourcelookup/MappingSourceContainerBrowser.java
deleted file mode 100644
index 20a69484408..00000000000
--- a/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/sourcelookup/MappingSourceContainerBrowser.java
+++ /dev/null
@@ -1,81 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004, 2005 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.internal.ui.sourcelookup;
-
-import org.eclipse.cdt.debug.core.sourcelookup.MappingSourceContainer;
-import org.eclipse.debug.core.sourcelookup.ISourceContainer;
-import org.eclipse.debug.core.sourcelookup.ISourceLookupDirector;
-import org.eclipse.debug.ui.sourcelookup.AbstractSourceContainerBrowser;
-import org.eclipse.jface.window.Window;
-import org.eclipse.swt.widgets.Shell;
-
-/**
- * Adds a path mapping to the source lookup path.
- */
-public class MappingSourceContainerBrowser extends AbstractSourceContainerBrowser {
-
- private static final String MAPPING = SourceLookupUIMessages.getString( "MappingSourceContainerBrowser.0" ); //$NON-NLS-1$
-
- /* (non-Javadoc)
- * @see org.eclipse.debug.ui.sourcelookup.AbstractSourceContainerBrowser#addSourceContainers(org.eclipse.swt.widgets.Shell, org.eclipse.debug.core.sourcelookup.ISourceLookupDirector)
- */
- public ISourceContainer[] addSourceContainers( Shell shell, ISourceLookupDirector director ) {
- return new ISourceContainer[] { new MappingSourceContainer( generateName( director ) ) };
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.debug.ui.sourcelookup.AbstractSourceContainerBrowser#canAddSourceContainers(org.eclipse.debug.core.sourcelookup.ISourceLookupDirector)
- */
- public boolean canAddSourceContainers( ISourceLookupDirector director ) {
- return true;
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.debug.ui.sourcelookup.AbstractSourceContainerBrowser#canEditSourceContainers(org.eclipse.debug.core.sourcelookup.ISourceLookupDirector, org.eclipse.debug.core.sourcelookup.ISourceContainer[])
- */
- public boolean canEditSourceContainers( ISourceLookupDirector director, ISourceContainer[] containers ) {
- return ( containers.length == 1 && containers[0] instanceof MappingSourceContainer );
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.debug.ui.sourcelookup.AbstractSourceContainerBrowser#editSourceContainers(org.eclipse.swt.widgets.Shell, org.eclipse.debug.core.sourcelookup.ISourceLookupDirector, org.eclipse.debug.core.sourcelookup.ISourceContainer[])
- */
- public ISourceContainer[] editSourceContainers( Shell shell, ISourceLookupDirector director, ISourceContainer[] containers ) {
- if ( containers.length == 1 && containers[0] instanceof MappingSourceContainer ) {
- PathMappingDialog dialog = new PathMappingDialog( shell, (MappingSourceContainer)containers[0] );
- if ( dialog.open() == Window.OK ) {
- return new ISourceContainer[] { dialog.getMapping() };
- }
- }
- return new ISourceContainer[0];
- }
-
- private String generateName( ISourceLookupDirector director ) {
-// int counter = 1;
-// ISourceContainer[] containers = director.getSourceContainers();
-// for ( int i = 0; i < containers.length; ++i ) {
-// if ( MappingSourceContainer.TYPE_ID.equals( containers[i].getType().getId() ) ) {
-// String name = containers[i].getName();
-// if ( name.startsWith( MAPPING ) ) {
-// try {
-// int number = Integer.valueOf( name.substring( MAPPING.length() ) ).intValue();
-// if ( number == counter )
-// ++counter;
-// }
-// catch( NumberFormatException e ) {
-// }
-// }
-// }
-// }
-// return MAPPING + counter;
- return MAPPING;
- }
-}
diff --git a/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/sourcelookup/PathMappingDialog.java b/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/sourcelookup/PathMappingDialog.java
deleted file mode 100644
index bea17ab4617..00000000000
--- a/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/sourcelookup/PathMappingDialog.java
+++ /dev/null
@@ -1,532 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004, 2005 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.internal.ui.sourcelookup;
-
-import java.io.File;
-import org.eclipse.cdt.debug.core.sourcelookup.MappingSourceContainer;
-import org.eclipse.cdt.debug.internal.core.sourcelookup.MapEntrySourceContainer;
-import org.eclipse.cdt.debug.internal.ui.CDebugImages;
-import org.eclipse.cdt.debug.internal.ui.ICDebugHelpContextIds;
-import org.eclipse.core.runtime.CoreException;
-import org.eclipse.core.runtime.IPath;
-import org.eclipse.core.runtime.Path;
-import org.eclipse.debug.core.sourcelookup.ISourceContainer;
-import org.eclipse.jface.dialogs.Dialog;
-import org.eclipse.jface.dialogs.IDialogConstants;
-import org.eclipse.jface.dialogs.TitleAreaDialog;
-import org.eclipse.jface.viewers.ILabelProvider;
-import org.eclipse.jface.viewers.ISelection;
-import org.eclipse.jface.viewers.ISelectionChangedListener;
-import org.eclipse.jface.viewers.IStructuredContentProvider;
-import org.eclipse.jface.viewers.IStructuredSelection;
-import org.eclipse.jface.viewers.LabelProvider;
-import org.eclipse.jface.viewers.SelectionChangedEvent;
-import org.eclipse.jface.viewers.TableViewer;
-import org.eclipse.jface.viewers.Viewer;
-import org.eclipse.jface.window.Window;
-import org.eclipse.swt.SWT;
-import org.eclipse.swt.events.ModifyEvent;
-import org.eclipse.swt.events.ModifyListener;
-import org.eclipse.swt.events.SelectionAdapter;
-import org.eclipse.swt.events.SelectionEvent;
-import org.eclipse.swt.events.SelectionListener;
-import org.eclipse.swt.graphics.Font;
-import org.eclipse.swt.graphics.FontMetrics;
-import org.eclipse.swt.graphics.GC;
-import org.eclipse.swt.graphics.Image;
-import org.eclipse.swt.layout.GridData;
-import org.eclipse.swt.layout.GridLayout;
-import org.eclipse.swt.widgets.Button;
-import org.eclipse.swt.widgets.Composite;
-import org.eclipse.swt.widgets.Control;
-import org.eclipse.swt.widgets.DirectoryDialog;
-import org.eclipse.swt.widgets.Label;
-import org.eclipse.swt.widgets.Shell;
-import org.eclipse.swt.widgets.Text;
-import org.eclipse.ui.PlatformUI;
-import org.eclipse.ui.model.WorkbenchLabelProvider;
-
-/**
- * A dialog for editing a path mapping source container.
- */
-public class PathMappingDialog extends TitleAreaDialog {
-
- class MapEntryDialog extends TitleAreaDialog {
-
- private MapEntrySourceContainer fEntry;
-
- protected Text fBackendPathText;
- protected Text fLocalPathText;
-
- /**
- * Constructor for MapEntryDialog.
- */
- public MapEntryDialog( Shell parentShell ) {
- super( parentShell );
- fEntry = null;
- }
-
- /**
- * Constructor for MapEntryDialog.
- */
- public MapEntryDialog( Shell parentShell, MapEntrySourceContainer entry ) {
- super( parentShell );
- fEntry = entry;
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.jface.dialogs.Dialog#createDialogArea(org.eclipse.swt.widgets.Composite)
- */
- protected Control createDialogArea( Composite parent ) {
- setTitle( SourceLookupUIMessages.getString( "PathMappingDialog.0" ) ); //$NON-NLS-1$
- setTitleImage( CDebugImages.get( CDebugImages.IMG_WIZBAN_PATH_MAP_ENTRY ) );
-
- Font font = parent.getFont();
- Composite composite = new Composite( parent, SWT.NONE );
- GridLayout layout = new GridLayout();
- layout.numColumns = 2;
- layout.marginHeight = convertVerticalDLUsToPixels( IDialogConstants.VERTICAL_MARGIN );
- layout.marginWidth = convertHorizontalDLUsToPixels( IDialogConstants.HORIZONTAL_MARGIN );
- layout.verticalSpacing = convertVerticalDLUsToPixels( IDialogConstants.VERTICAL_SPACING );
- layout.horizontalSpacing = convertHorizontalDLUsToPixels( IDialogConstants.HORIZONTAL_SPACING );
- composite.setLayout( layout );
- GridData data = new GridData( GridData.FILL_BOTH );
- composite.setLayoutData( data );
- composite.setFont( font );
-
- Dialog.applyDialogFont( composite );
- PlatformUI.getWorkbench().getHelpSystem().setHelp( getShell(), ICDebugHelpContextIds.SOURCE_PATH_MAP_ENTRY_DIALOG );
-
- setMessage( null );
-
- Label label = new Label( composite, SWT.LEFT );
- label.setText( SourceLookupUIMessages.getString( "PathMappingDialog.1" ) ); //$NON-NLS-1$
- data = new GridData( GridData.FILL_HORIZONTAL );
- data.horizontalSpan = 2;
- label.setLayoutData( data );
- label.setFont( font );
-
- fBackendPathText = new Text( composite, SWT.SINGLE | SWT.BORDER );
- data = new GridData( GridData.FILL_HORIZONTAL );
- data.horizontalSpan = 2;
- fBackendPathText.setLayoutData( data );
- fBackendPathText.setFont( font );
- fBackendPathText.addModifyListener( new ModifyListener() {
- public void modifyText( ModifyEvent e ) {
- update();
- }
- } );
-
- label = new Label( composite, SWT.LEFT );
- label.setText( SourceLookupUIMessages.getString( "PathMappingDialog.2" ) ); //$NON-NLS-1$
- data = new GridData( GridData.FILL_HORIZONTAL );
- data.horizontalSpan = 2;
- label.setLayoutData( data );
- label.setFont( font );
-
- fLocalPathText = new Text( composite, SWT.SINGLE | SWT.BORDER );
- data = new GridData( GridData.FILL_HORIZONTAL );
- fLocalPathText.setLayoutData( data );
- fLocalPathText.setFont( font );
- fLocalPathText.addModifyListener( new ModifyListener() {
- public void modifyText( ModifyEvent e ) {
- update();
- }
- } );
-
- Button button = new Button( composite, SWT.PUSH );
- button.setFont( font );
- button.setText( SourceLookupUIMessages.getString( "PathMappingDialog.3" ) ); //$NON-NLS-1$
- button.addSelectionListener( new SelectionListener() {
-
- public void widgetSelected( SelectionEvent e ) {
- DirectoryDialog dialog = new DirectoryDialog( MapEntryDialog.this.getShell() );
- String path = dialog.open();
- if ( path != null ) {
- fLocalPathText.setText( path );
- }
- }
-
- public void widgetDefaultSelected( SelectionEvent e ) {
- }
- } );
-
- return composite;
- }
-
- protected Control createContents( Composite parent ) {
- Control control = super.createContents( parent );
- initialize();
- update();
- return control;
- }
-
- protected void configureShell( Shell newShell ) {
- newShell.setText( SourceLookupUIMessages.getString( "PathMappingDialog.4" ) ); //$NON-NLS-1$
- super.configureShell( newShell );
- }
-
- private void initialize() {
- if ( fEntry != null ) {
- fBackendPathText.setText( fEntry.getBackendPath().toOSString() );
- fLocalPathText.setText( fEntry.getLocalPath().toOSString() );
- }
- }
-
- protected void update() {
- boolean isOk = updateErrorMessage();
- Button ok = getButton( IDialogConstants.OK_ID );
- if ( ok != null )
- ok.setEnabled( isOk );
- }
-
- protected boolean updateErrorMessage() {
- setErrorMessage( null );
- String backendText = fBackendPathText.getText().trim();
- if ( backendText.length() == 0 ) {
- setErrorMessage( SourceLookupUIMessages.getString( "PathMappingDialog.5" ) ); //$NON-NLS-1$
- return false;
- }
- if ( !new Path( backendText ).isValidPath( backendText ) ) {
- setErrorMessage( SourceLookupUIMessages.getString( "PathMappingDialog.6" ) ); //$NON-NLS-1$
- return false;
- }
- String localText = fLocalPathText.getText().trim();
- if ( localText.length() == 0 ) {
- setErrorMessage( SourceLookupUIMessages.getString( "PathMappingDialog.7" ) ); //$NON-NLS-1$
- return false;
- }
- File localPath = new File( localText );
- if ( !localPath.exists() ) {
- setErrorMessage( SourceLookupUIMessages.getString( "PathMappingDialog.8" ) ); //$NON-NLS-1$
- return false;
- }
- if ( !localPath.isDirectory() ) {
- setErrorMessage( SourceLookupUIMessages.getString( "PathMappingDialog.9" ) ); //$NON-NLS-1$
- return false;
- }
- if ( !localPath.isAbsolute() ) {
- setErrorMessage( SourceLookupUIMessages.getString( "PathMappingDialog.10" ) ); //$NON-NLS-1$
- return false;
- }
- return true;
- }
-
- protected IPath getBackendPath() {
- return new Path( fBackendPathText.getText().trim() );
- }
-
- protected IPath getLocalPath() {
- return new Path( fLocalPathText.getText().trim() );
- }
-
- protected void okPressed() {
- if ( fEntry == null ) {
- fEntry = new MapEntrySourceContainer();
- fMapping.addMapEntry( fEntry );
- }
- fEntry.setBackendPath( getBackendPath() );
- fEntry.setLocalPath( getLocalPath() );
- super.okPressed();
- }
- }
-
- class PathMappingLabelProvider extends LabelProvider {
-
- private ILabelProvider fLabelProvider = null;
-
- /* (non-Javadoc)
- * @see org.eclipse.jface.viewers.ILabelProvider#getImage(java.lang.Object)
- */
- public Image getImage( Object element ) {
- Image image = getWorkbenchLabelProvider().getImage( element );
- if ( image != null ) {
- return image;
- }
- return super.getImage( element );
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.jface.viewers.ILabelProvider#getText(java.lang.Object)
- */
- public String getText( Object element ) {
- String label = getWorkbenchLabelProvider().getText( element );
- if ( label == null || label.length() == 0 ) {
- if ( element instanceof ISourceContainer ) {
- return ((ISourceContainer)element).getName();
- }
- }
- else {
- return label;
- }
- return super.getText( element );
- }
-
- private ILabelProvider getWorkbenchLabelProvider() {
- if ( fLabelProvider == null ) {
- fLabelProvider = new WorkbenchLabelProvider();
- }
- return fLabelProvider;
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.jface.viewers.IBaseLabelProvider#dispose()
- */
- public void dispose() {
- super.dispose();
- if ( fLabelProvider != null ) {
- fLabelProvider.dispose();
- }
- }
- }
-
- class ContentProvider implements IStructuredContentProvider {
-
- /* (non-Javadoc)
- * @see org.eclipse.jface.viewers.IStructuredContentProvider#getElements(java.lang.Object)
- */
- public Object[] getElements( Object input ) {
- if ( input instanceof MappingSourceContainer ) {
- try {
- return ((MappingSourceContainer)input).getSourceContainers();
- }
- catch( CoreException e ) {
- setErrorMessage( e.getMessage() );
- }
- }
- return null;
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.jface.viewers.IContentProvider#dispose()
- */
- public void dispose() {
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.jface.viewers.IContentProvider#inputChanged(org.eclipse.jface.viewers.Viewer, java.lang.Object, java.lang.Object)
- */
- public void inputChanged( Viewer viewer, Object oldInput, Object newInput ) {
- }
- }
-
- private MappingSourceContainer fOriginalMapping;
-
- protected MappingSourceContainer fMapping;
-
- private TableViewer fViewer;
-
- private Text fNameText;
- private Button fAddButton;
- private Button fEditButton;
- private Button fRemoveButton;
-
- public PathMappingDialog( Shell parentShell, MappingSourceContainer mapping ) {
- super( parentShell );
- fOriginalMapping = mapping;
- fMapping = fOriginalMapping.copy();
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.jface.window.Window#createContents(org.eclipse.swt.widgets.Composite)
- */
- protected Control createContents( Composite parent ) {
- Control control = super.createContents( parent );
- updateButtons();
- return control;
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.jface.dialogs.TitleAreaDialog#createDialogArea(org.eclipse.swt.widgets.Composite)
- */
- protected Control createDialogArea( Composite parent ) {
- setTitle( SourceLookupUIMessages.getString( "PathMappingDialog.11" ) ); //$NON-NLS-1$
- setTitleImage( CDebugImages.get( CDebugImages.IMG_WIZBAN_PATH_MAPPING ) );
-
- Font font = parent.getFont();
- Composite composite = new Composite( parent, SWT.NONE );
- GridLayout layout = new GridLayout();
- layout.numColumns = 2;
- layout.marginHeight = convertVerticalDLUsToPixels( IDialogConstants.VERTICAL_MARGIN );
- layout.marginWidth = convertHorizontalDLUsToPixels( IDialogConstants.HORIZONTAL_MARGIN );
- layout.verticalSpacing = convertVerticalDLUsToPixels( IDialogConstants.VERTICAL_SPACING );
- layout.horizontalSpacing = convertHorizontalDLUsToPixels( IDialogConstants.HORIZONTAL_SPACING );
- composite.setLayout( layout );
- GridData data = new GridData( GridData.FILL_BOTH );
- composite.setLayoutData( data );
- composite.setFont( font );
-
- Dialog.applyDialogFont( composite );
- PlatformUI.getWorkbench().getHelpSystem().setHelp( getShell(), ICDebugHelpContextIds.SOURCE_PATH_MAPPING_DIALOG );
-
- Composite nameComp = new Composite( composite, SWT.NONE );
- layout = new GridLayout();
- layout.numColumns = 2;
- nameComp.setLayout( layout );
- data = new GridData( GridData.FILL_HORIZONTAL );
- data.horizontalSpan = 2;
- nameComp.setLayoutData( data );
- nameComp.setFont( font );
-
- Label label = new Label( nameComp, SWT.LEFT );
- data = new GridData( GridData.HORIZONTAL_ALIGN_BEGINNING );
- label.setLayoutData( data );
- label.setFont( font );
- label.setText( SourceLookupUIMessages.getString( "PathMappingDialog.12" ) ); //$NON-NLS-1$
- fNameText = new Text( nameComp, SWT.SINGLE | SWT.BORDER );
- data = new GridData( GridData.FILL_HORIZONTAL );
- fNameText.setLayoutData( data );
- fNameText.setFont( font );
- fNameText.setText( getMapping().getName() );
- fNameText.addModifyListener( new ModifyListener() {
- public void modifyText( ModifyEvent e ) {
- }
- } );
-
- fViewer = createViewer( composite );
- data = new GridData( GridData.FILL_BOTH );
- fViewer.getControl().setLayoutData( data );
- fViewer.getControl().setFont( font );
- fViewer.addSelectionChangedListener( new ISelectionChangedListener() {
- public void selectionChanged( SelectionChangedEvent event ) {
- updateButtons();
- }
- } );
-
- Composite buttonComp = new Composite( composite, SWT.NONE );
- GridLayout buttonLayout = new GridLayout();
- buttonLayout.marginHeight = 0;
- buttonLayout.marginWidth = 0;
- buttonComp.setLayout( buttonLayout );
- data = new GridData( GridData.VERTICAL_ALIGN_BEGINNING | GridData.HORIZONTAL_ALIGN_FILL );
- buttonComp.setLayoutData( data );
- buttonComp.setFont( font );
-
- GC gc = new GC( parent );
- gc.setFont( parent.getFont() );
- FontMetrics fontMetrics = gc.getFontMetrics();
- gc.dispose();
-
- fAddButton = createPushButton( buttonComp, SourceLookupUIMessages.getString( "PathMappingDialog.13" ), fontMetrics ); //$NON-NLS-1$
- fAddButton.addSelectionListener( new SelectionAdapter() {
- public void widgetSelected( SelectionEvent evt ) {
- MapEntryDialog dialog = new MapEntryDialog( getShell() );
- if ( dialog.open() == Window.OK ) {
- getViewer().refresh();
- }
- }
- } );
-
- fEditButton = createPushButton( buttonComp, SourceLookupUIMessages.getString( "PathMappingDialog.14" ), fontMetrics ); //$NON-NLS-1$
- fEditButton.addSelectionListener( new SelectionAdapter() {
- public void widgetSelected( SelectionEvent evt ) {
- MapEntrySourceContainer[] entries = getSelection();
- if ( entries.length > 0 ) {
- MapEntryDialog dialog = new MapEntryDialog( getShell(), entries[0] );
- if ( dialog.open() == Window.OK ) {
- getViewer().refresh();
- }
- }
- }
- } );
-
- fRemoveButton = createPushButton( buttonComp, SourceLookupUIMessages.getString( "PathMappingDialog.15" ), fontMetrics ); //$NON-NLS-1$
- fRemoveButton.addSelectionListener( new SelectionAdapter() {
- public void widgetSelected( SelectionEvent evt ) {
- MapEntrySourceContainer[] entries = getSelection();
- for ( int i = 0; i < entries.length; ++i ) {
- fMapping.removeMapEntry( entries[i] );
- }
- getViewer().refresh();
- }
- } );
-
- setMessage( null );
-
- fViewer.setInput( fMapping );
-
- return composite;
- }
-
- private TableViewer createViewer( Composite parent ) {
- TableViewer viewer = new TableViewer( parent );
- viewer.setContentProvider( new ContentProvider() );
- viewer.setLabelProvider( new PathMappingLabelProvider() );
- return viewer;
- }
-
- protected MappingSourceContainer getMapping() {
- return fOriginalMapping;
- }
-
- protected Button createPushButton( Composite parent, String label, FontMetrics fontMetrics ) {
- Button button = new Button( parent, SWT.PUSH );
- button.setFont( parent.getFont() );
- button.setText( label );
- GridData gd = getButtonGridData( button, fontMetrics );
- button.setLayoutData( gd );
- return button;
- }
-
- private GridData getButtonGridData( Button button, FontMetrics fontMetrics ) {
- GridData gd = new GridData( GridData.FILL_HORIZONTAL | GridData.VERTICAL_ALIGN_BEGINNING );
- int widthHint = Dialog.convertHorizontalDLUsToPixels( fontMetrics, IDialogConstants.BUTTON_WIDTH );
- gd.widthHint = Math.max( widthHint, button.computeSize( SWT.DEFAULT, SWT.DEFAULT, true ).x );
- return gd;
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.jface.window.Window#configureShell(org.eclipse.swt.widgets.Shell)
- */
- protected void configureShell( Shell newShell ) {
- newShell.setText( SourceLookupUIMessages.getString( "PathMappingDialog.16" ) ); //$NON-NLS-1$
- super.configureShell( newShell );
- }
-
- protected Viewer getViewer() {
- return fViewer;
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.jface.dialogs.Dialog#okPressed()
- */
- protected void okPressed() {
- fOriginalMapping.clear();
- fOriginalMapping.setName( fNameText.getText().trim() );
- try {
- fOriginalMapping.addMapEntries( (MapEntrySourceContainer[])fMapping.getSourceContainers() );
- }
- catch( CoreException e ) {
- }
- fMapping.dispose();
- super.okPressed();
- }
-
- protected MapEntrySourceContainer[] getSelection() {
- MapEntrySourceContainer[] result = new MapEntrySourceContainer[0];
- ISelection s = getViewer().getSelection();
- if ( s instanceof IStructuredSelection ) {
- int size = ((IStructuredSelection)s).size();
- result = (MapEntrySourceContainer[])((IStructuredSelection)s).toList().toArray( new MapEntrySourceContainer[size] );
- }
- return result;
- }
-
- protected void updateButtons() {
- MapEntrySourceContainer[] entries = getSelection();
- if ( fEditButton != null ) {
- fEditButton.setEnabled( entries.length == 1 );
- }
- if ( fRemoveButton != null ) {
- fRemoveButton.setEnabled( entries.length > 0 );
- }
- }
-}
diff --git a/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/sourcelookup/RemoveAction.java b/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/sourcelookup/RemoveAction.java
deleted file mode 100644
index f2449434000..00000000000
--- a/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/sourcelookup/RemoveAction.java
+++ /dev/null
@@ -1,45 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2003, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.internal.ui.sourcelookup;
-
-import java.util.List;
-
-import org.eclipse.jface.viewers.IStructuredSelection;
-
-/**
- * The action used to remove source containers in the source location dialog/tab.
- *
- */
-public class RemoveAction extends SourceContainerAction {
- public RemoveAction() {
- super(SourceLookupUIMessages.getString( "RemoveAction.0" )); //$NON-NLS-1$
- }
- /**
- * Removes all selected entries.
- *
- * @see IAction#run()
- */
- public void run() {
- List targets = getOrderedSelection();
- List list = getEntriesAsList();
- list.removeAll(targets);
- setEntries(list);
- }
-
- /**
- * @see SelectionListenerAction#updateSelection(IStructuredSelection)
- */
- protected boolean updateSelection(IStructuredSelection selection) {
- //check that something is selected and it is a root tree node.
- return !selection.isEmpty() && getViewer().getTree().getSelection()[0].getParentItem()==null;
- }
-
-}
diff --git a/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/sourcelookup/SourceContainerAction.java b/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/sourcelookup/SourceContainerAction.java
deleted file mode 100644
index bd77e60ebac..00000000000
--- a/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/sourcelookup/SourceContainerAction.java
+++ /dev/null
@@ -1,176 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2003, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.internal.ui.sourcelookup;
-import java.util.ArrayList;
-import java.util.Iterator;
-import java.util.List;
-
-import org.eclipse.debug.core.sourcelookup.ISourceContainer;
-import org.eclipse.jface.viewers.IStructuredSelection;
-import org.eclipse.swt.events.SelectionAdapter;
-import org.eclipse.swt.events.SelectionEvent;
-import org.eclipse.swt.widgets.Button;
-import org.eclipse.swt.widgets.Shell;
-import org.eclipse.ui.actions.SelectionListenerAction;
-
-/**
- * The abstract class for all source lookup actions.
- */
-public abstract class SourceContainerAction extends SelectionListenerAction {
- //the viewer that the action is operating on
- private SourceContainerViewer fViewer;
- //the button that is used to invoke the action
- private Button fButton;
- //the shell used to realize this action's dialog (if any)
- private Shell fShell;
-
- /**
- * The constructor for the action
- * @param label the label for the action's button
- */
- public SourceContainerAction(String label) {
- super(label);
- }
-
- /**
- * Sets the viewer on which this action operates.
- *
- * @param viewer the viewer on which this action operates
- */
- public void setViewer(SourceContainerViewer viewer) {
- if (fViewer != null) {
- fViewer.removeSelectionChangedListener(this);
- }
- fViewer = viewer;
- if (fViewer != null) {
- fViewer.addSelectionChangedListener(this);
- update();
- }
- }
-
- /**
- * Returns the viewer on which this action operates.
- *
- * @return the viewer on which this action operates
- */
- protected SourceContainerViewer getViewer() {
- return fViewer;
- }
-
- /**
- * Returns the selected items in the list, in the order they are
- * displayed.
- *
- * @return targets for an action
- */
- protected List getOrderedSelection() {
- List targets = new ArrayList();
- List selection =
- ((IStructuredSelection) getViewer().getSelection()).toList();
- ISourceContainer[] entries = getViewer().getEntries();
- for (int i = 0; i < entries.length; i++) {
- ISourceContainer target = entries[i];
- if (selection.contains(target)) {
- targets.add(target);
- }
- }
- return targets;
- }
-
- /**
- * Returns a list (copy) of the entries in the viewer
- */
- protected List getEntriesAsList() {
- ISourceContainer[] entries = getViewer().getEntries();
- List list = new ArrayList(entries.length);
- for (int i = 0; i < entries.length; i++) {
- list.add(entries[i]);
- }
- return list;
- }
-
- /**
- * Updates the entries to the entries in the given list
- */
- protected void setEntries(List list) {
- getViewer().setEntries(
- (ISourceContainer[]) list.toArray(new ISourceContainer[list.size()]));
- // update all selection listeners
- getViewer().setSelection(getViewer().getSelection());
- }
-
- /**
- * Returns whether the item at the given index in the list
- * (visually) is selected.
- */
- protected boolean isIndexSelected(
- IStructuredSelection selection,
- int index) {
- if (selection.isEmpty()) {
- return false;
- }
- Iterator entries = selection.iterator();
- List list = getEntriesAsList();
- while (entries.hasNext()) {
- Object next = entries.next();
- if (list.indexOf(next) == index) {
- return true;
- }
- }
- return false;
- }
-
- /**
- * Sets the button that invokes this action
- */
- public void setButton(Button button) {
- fButton = button;
- button.addSelectionListener(new SelectionAdapter() {
- public void widgetSelected(SelectionEvent evt) {
- run();
- }
- });
- }
-
- /**
- * @see IAction#setEnabled(boolean)
- */
- public void setEnabled(boolean enabled) {
- super.setEnabled(enabled);
- if (fButton != null) {
- fButton.setEnabled(enabled);
- }
- }
-
- /**
- * Updates the enabled state.
- */
- protected void update() {
- selectionChanged((IStructuredSelection) getViewer().getSelection());
- }
-
- /**
- * Returns the shell used to realize this action's dialog (if any).
- */
- protected Shell getShell() {
- if (fShell == null) {
- fShell = getViewer().getControl().getShell();
- }
- return fShell;
- }
-
- /**
- * Sets the shell used to realize this action's dialog (if any).
- */
- public void setShell(Shell shell) {
- fShell = shell;
- }
-}
diff --git a/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/sourcelookup/SourceContainerAdapterFactory.java b/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/sourcelookup/SourceContainerAdapterFactory.java
deleted file mode 100644
index 2f2d582e6f5..00000000000
--- a/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/sourcelookup/SourceContainerAdapterFactory.java
+++ /dev/null
@@ -1,37 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004, 2005 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.internal.ui.sourcelookup;
-
-import org.eclipse.core.runtime.IAdapterFactory;
-import org.eclipse.ui.model.IWorkbenchAdapter;
-
-/**
- * Adapter factory for CDT source containers.
- */
-public class SourceContainerAdapterFactory implements IAdapterFactory {
-
- /* (non-Javadoc)
- * @see org.eclipse.core.runtime.IAdapterFactory#getAdapter(java.lang.Object, java.lang.Class)
- */
- public Object getAdapter( Object adaptableObject, Class adapterType ) {
- if ( adapterType.equals( IWorkbenchAdapter.class ) ) {
- return new SourceContainerWorkbenchAdapter();
- }
- return null;
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.core.runtime.IAdapterFactory#getAdapterList()
- */
- public Class[] getAdapterList() {
- return new Class[]{ IWorkbenchAdapter.class };
- }
-}
diff --git a/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/sourcelookup/SourceContainerLabelProvider.java b/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/sourcelookup/SourceContainerLabelProvider.java
deleted file mode 100644
index 60688aa71df..00000000000
--- a/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/sourcelookup/SourceContainerLabelProvider.java
+++ /dev/null
@@ -1,89 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2003, 2006 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.internal.ui.sourcelookup;
-
-import org.eclipse.debug.core.sourcelookup.ISourceContainer;
-import org.eclipse.debug.core.sourcelookup.ISourceContainerType;
-import org.eclipse.debug.internal.ui.DebugUIPlugin;
-import org.eclipse.debug.ui.DebugUITools;
-import org.eclipse.jface.viewers.ILabelProvider;
-import org.eclipse.jface.viewers.LabelProvider;
-import org.eclipse.swt.graphics.Image;
-import org.eclipse.ui.model.WorkbenchLabelProvider;
-
-/**
- * Label provider for source containers and source container types.
- */
-public class SourceContainerLabelProvider extends LabelProvider {
-
- private ILabelProvider fLabelProvider = null;
-
- /* (non-Javadoc)
- * @see org.eclipse.jface.viewers.ILabelProvider#getImage(java.lang.Object)
- */
- public Image getImage(Object element) {
- // Temporary fix for https://bugs.eclipse.org/bugs/show_bug.cgi?id=144277
- DebugUIPlugin.getDefault().getImageRegistry();
- // first allow workbench adapter to provide image
- Image image = getWorkbenchLabelProvider().getImage(element);
- if (image == null) {
- ISourceContainerType type = null;
- if (element instanceof ISourceContainer) {
- type = ((ISourceContainer)element).getType();
- } else if (element instanceof ISourceContainerType) {
- type = (ISourceContainerType) element;
- }
- if (type != null) {
- // next consult contributed image
- image = DebugUITools.getSourceContainerImage(type.getId());
- }
- }
- if (image != null) {
- return image;
- }
- return super.getImage(element);
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.jface.viewers.ILabelProvider#getText(java.lang.Object)
- */
- public String getText(Object element) {
- // first, allo workbench adapter to provide label
- String label = getWorkbenchLabelProvider().getText(element);
- if (label == null || label.length() == 0) {
- if (element instanceof ISourceContainer) {
- return ((ISourceContainer) element).getName();
- } else if (element instanceof ISourceContainerType) {
- return ((ISourceContainerType)element).getName();
- }
- } else {
- return label;
- }
- return super.getText(element);
- }
-
- private ILabelProvider getWorkbenchLabelProvider() {
- if (fLabelProvider == null) {
- fLabelProvider = new WorkbenchLabelProvider();
- }
- return fLabelProvider;
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.jface.viewers.IBaseLabelProvider#dispose()
- */
- public void dispose() {
- super.dispose();
- if (fLabelProvider != null) {
- fLabelProvider.dispose();
- }
- }
-}
diff --git a/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/sourcelookup/SourceContainerViewer.java b/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/sourcelookup/SourceContainerViewer.java
deleted file mode 100644
index 07b706fe207..00000000000
--- a/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/sourcelookup/SourceContainerViewer.java
+++ /dev/null
@@ -1,188 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004, 2005 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.internal.ui.sourcelookup;
-
-import java.util.ArrayList;
-import java.util.List;
-import org.eclipse.core.runtime.CoreException;
-import org.eclipse.debug.core.sourcelookup.ISourceContainer;
-import org.eclipse.jface.viewers.IStructuredSelection;
-import org.eclipse.jface.viewers.ITreeContentProvider;
-import org.eclipse.jface.viewers.StructuredSelection;
-import org.eclipse.jface.viewers.TreeViewer;
-import org.eclipse.jface.viewers.Viewer;
-import org.eclipse.swt.widgets.Composite;
-
-/**
- * The viewer containing the source containers.
- * It is a tree viewer since the containers are represented in tree form.
- */
-public class SourceContainerViewer extends TreeViewer {
-
- /**
- * Whether enabled/editable.
- */
- private boolean fEnabled = true;
- /**
- * The source container entries displayed in this viewer
- */
- protected List fEntries = new ArrayList();
-
- class ContentProvider implements ITreeContentProvider {
-
- /**
- * @see IStructuredContentProvider#getElements(Object)
- */
- public Object[] getElements(Object inputElement) {
- return getEntries();
- }
-
- /**
- * @see IContentProvider#dispose()
- */
- public void dispose() {
- }
-
- /**
- * @see IContentProvider#inputChanged(Viewer, Object, Object)
- */
- public void inputChanged(Viewer viewer, Object oldInput, Object newInput) {
- }
-
- /**
- * @see org.eclipse.jface.viewers.ITreeContentProvider#getChildren(java.lang.Object)
- */
- public Object[] getChildren(Object parentElement) {
- try {
- return ((ISourceContainer)parentElement).getSourceContainers();
- } catch (CoreException e) {
- return new Object[0];
- }
- }
-
- /**
- * @see org.eclipse.jface.viewers.ITreeContentProvider#getParent(java.lang.Object)
- */
- public Object getParent(Object element) {
- return null;
- }
-
- /**
- * @see org.eclipse.jface.viewers.ITreeContentProvider#hasChildren(java.lang.Object)
- */
- public boolean hasChildren(Object element) {
- return ((ISourceContainer)element).isComposite();
- }
-
- }
-
- /**
- * Creates a runtime classpath viewer with the given parent.
- *
- * @param parent the parent control
- * @param panel the panel hosting this viewer
- */
- public SourceContainerViewer(Composite parent) {
- super(parent);
- setContentProvider(new ContentProvider());
- SourceContainerLabelProvider lp = new SourceContainerLabelProvider();
- setLabelProvider(lp);
- }
-
- /**
- * Sets the entries in this viewer
- *
- * @param entries source container entries
- */
- public void setEntries(ISourceContainer[] entries) {
- fEntries.clear();
- for (int i = 0; i < entries.length; i++) {
- if(entries[i] != null)
- fEntries.add(entries[i]);
- }
- if (getInput() == null) {
- setInput(fEntries);
- //select first item in list
- if(!fEntries.isEmpty() && fEntries.get(0)!=null)
- setSelection(new StructuredSelection(fEntries.get(0)));
- } else {
- refresh();
- }
- }
-
- /**
- * Returns the entries in this viewer
- *
- * @return the entries in this viewer
- */
- public ISourceContainer[] getEntries() {
- return (ISourceContainer[])fEntries.toArray(new ISourceContainer[fEntries.size()]);
- }
-
- /**
- * Adds the given entries to the list. If there is no selection
- * in the list, the entries are added at the end of the list,
- * otherwise the new entries are added before the (first) selected
- * entry. The new entries are selected.
- *
- * @param entries additions
- */
- public void addEntries(ISourceContainer[] entries) {
- IStructuredSelection sel = (IStructuredSelection)getSelection();
- if (sel.isEmpty()) {
- for (int i = 0; i < entries.length; i++) {
- if (!fEntries.contains(entries[i])) {
- fEntries.add(entries[i]);
- }
- }
- }
- else {
- int index = fEntries.indexOf(sel.getFirstElement());
- for (int i = 0; i < entries.length; i++) {
- if (!fEntries.contains(entries[i])) {
- fEntries.add(index, entries[i]);
- index++;
- }
- }
- }
-
- if(!fEntries.isEmpty() && fEntries.get(0)!=null)
- setSelection(new StructuredSelection(fEntries.get(0)));
- refresh();
- }
-
- /**
- * Enables/disables this viewer. Note the control is not disabled, since
- * we still want the user to be able to scroll if required to see the
- * existing entries. Just actions should be disabled.
- */
- public void setEnabled(boolean enabled) {
- fEnabled = enabled;
- // fire selection change to upate actions
- setSelection(getSelection());
- }
-
- /**
- * Returns whether this viewer is enabled
- */
- public boolean isEnabled() {
- return fEnabled;
- }
-
- /**
- * Returns the index of an equivalent entry, or -1 if none.
- *
- * @return the index of an equivalent entry, or -1 if none
- */
- public int indexOf(ISourceContainer entry) {
- return fEntries.indexOf(entry);
- }
-}
diff --git a/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/sourcelookup/SourceContainerWorkbenchAdapter.java b/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/sourcelookup/SourceContainerWorkbenchAdapter.java
deleted file mode 100644
index 217996d063f..00000000000
--- a/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/sourcelookup/SourceContainerWorkbenchAdapter.java
+++ /dev/null
@@ -1,104 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.internal.ui.sourcelookup;
-
-import java.io.File;
-import org.eclipse.cdt.core.CCorePlugin;
-import org.eclipse.cdt.core.model.ICElement;
-import org.eclipse.cdt.core.model.ICProject;
-import org.eclipse.cdt.debug.core.sourcelookup.MappingSourceContainer;
-import org.eclipse.cdt.debug.internal.core.sourcelookup.MapEntrySourceContainer;
-import org.eclipse.cdt.debug.internal.ui.CDebugImages;
-import org.eclipse.core.resources.IProject;
-import org.eclipse.core.runtime.IPath;
-import org.eclipse.debug.core.sourcelookup.containers.ProjectSourceContainer;
-import org.eclipse.jface.resource.ImageDescriptor;
-import org.eclipse.ui.model.IWorkbenchAdapter;
-
-/**
- * Workbench adapter for CDT source containers.
- */
-public class SourceContainerWorkbenchAdapter implements IWorkbenchAdapter {
-
- /* (non-Javadoc)
- * @see org.eclipse.ui.model.IWorkbenchAdapter#getChildren(java.lang.Object)
- */
- public Object[] getChildren( Object o ) {
- return null;
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.ui.model.IWorkbenchAdapter#getImageDescriptor(java.lang.Object)
- */
- public ImageDescriptor getImageDescriptor( Object o ) {
- if ( o instanceof MappingSourceContainer ) {
- return CDebugImages.DESC_OBJS_PATH_MAPPING;
- }
- if ( o instanceof MapEntrySourceContainer ) {
- return CDebugImages.DESC_OBJS_PATH_MAP_ENTRY;
- }
- if ( o instanceof ProjectSourceContainer ) {
- IProject project = ((ProjectSourceContainer)o).getProject();
- ICProject cProject = CCorePlugin.getDefault().getCoreModel().create( project );
- if ( cProject != null )
- return getImageDescriptor( cProject );
- }
- return null;
- }
-
- protected ImageDescriptor getImageDescriptor( ICElement element ) {
- IWorkbenchAdapter adapter = (IWorkbenchAdapter)element.getAdapter( IWorkbenchAdapter.class );
- if ( adapter != null ) {
- return adapter.getImageDescriptor( element );
- }
- return null;
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.ui.model.IWorkbenchAdapter#getLabel(java.lang.Object)
- */
- public String getLabel( Object o ) {
- if ( o instanceof MappingSourceContainer ) {
- return SourceLookupUIMessages.getString( "SourceContainerWorkbenchAdapter.0" ) + ((MappingSourceContainer)o).getName(); //$NON-NLS-1$
- }
- if ( o instanceof MapEntrySourceContainer ) {
- return ((MapEntrySourceContainer)o).getName();
- }
- return null;
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.ui.model.IWorkbenchAdapter#getParent(java.lang.Object)
- */
- public Object getParent( Object o ) {
- return null;
- }
-
- public String getQualifiedName( IPath path ) {
- StringBuffer buffer = new StringBuffer();
- String[] segments = path.segments();
- if ( segments.length > 0 ) {
- buffer.append( path.lastSegment() );
- if ( segments.length > 1 ) {
- buffer.append( " - " ); //$NON-NLS-1$
- if ( path.getDevice() != null ) {
- buffer.append( path.getDevice() );
- }
- for( int i = 0; i < segments.length - 1; i++ ) {
- buffer.append( File.separatorChar );
- buffer.append( segments[i] );
- }
- }
- return buffer.toString();
- }
- return ""; //$NON-NLS-1$
- }
-}
diff --git a/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/sourcelookup/SourceLookupUIMessages.java b/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/sourcelookup/SourceLookupUIMessages.java
deleted file mode 100644
index a249c44919b..00000000000
--- a/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/sourcelookup/SourceLookupUIMessages.java
+++ /dev/null
@@ -1,34 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004, 2005 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.internal.ui.sourcelookup;
-
-import java.util.MissingResourceException;
-import java.util.ResourceBundle;
-
-public class SourceLookupUIMessages {
-
- private static final String BUNDLE_NAME = "org.eclipse.cdt.debug.internal.ui.sourcelookup.SourceLookupUIMessages"; //$NON-NLS-1$
-
- private static final ResourceBundle RESOURCE_BUNDLE = ResourceBundle.getBundle( BUNDLE_NAME );
-
- private SourceLookupUIMessages() {
- }
-
- public static String getString( String key ) {
- // TODO Auto-generated method stub
- try {
- return RESOURCE_BUNDLE.getString( key );
- }
- catch( MissingResourceException e ) {
- return '!' + key + '!';
- }
- }
-}
diff --git a/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/sourcelookup/SourceLookupUIMessages.properties b/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/sourcelookup/SourceLookupUIMessages.properties
deleted file mode 100644
index 6279e96b6e0..00000000000
--- a/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/sourcelookup/SourceLookupUIMessages.properties
+++ /dev/null
@@ -1,40 +0,0 @@
-###############################################################################
-# Copyright (c) 2005, 2006 QNX Software Systems and others.
-# All rights reserved. This program and the accompanying materials
-# are made available under the terms of the Eclipse Public License v1.0
-# which accompanies this distribution, and is available at
-# http://www.eclipse.org/legal/epl-v10.html
-#
-# Contributors:
-# QNX Software Systems - initial API and implementation
-# Nokia - Added support for CSourceNotFoundElement ( 167305 )
-###############################################################################
-AddContainerAction.0=&Add...
-AddSourceContainerDialog.0=Add Source
-AddSourceContainerDialog.1=Select the type of source to add to the source lookup path
-DownAction.0=&Down
-EditContainerAction.0=&Edit...
-MappingSourceContainerBrowser.0=New Mapping
-PathMappingDialog.0=Specify the mapping paths
-PathMappingDialog.1=Compilation path:
-PathMappingDialog.2=Local file system path:
-PathMappingDialog.3=&Browse...
-PathMappingDialog.4=Path Mapping
-PathMappingDialog.5=The compilation path must not be empty
-PathMappingDialog.6=Invalid compilation path.
-PathMappingDialog.7=The local file systems path must not be empty
-PathMappingDialog.8=The specified local file system path doesn't exist
-PathMappingDialog.9=The local file system path must be a directory
-PathMappingDialog.10=The local file system path must be absolute
-PathMappingDialog.11=Modify the path mappings
-PathMappingDialog.12=Name:
-PathMappingDialog.13=&Add...
-PathMappingDialog.14=&Edit...
-PathMappingDialog.15=Re&move
-PathMappingDialog.16=Path Mappings
-RemoveAction.0=Re&move
-SourceContainerWorkbenchAdapter.0=Path Mapping:
-UpAction.0=U&p
-CSourceNotFoundEditor.0=Can''t find a source file at \"{0}\" \nLocate the file or edit the source lookup path to include its location.
-CSourceNotFoundEditor.1=Locate File...
-CSourceNotFoundEditor.2=Missing Source File
diff --git a/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/sourcelookup/UpAction.java b/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/sourcelookup/UpAction.java
deleted file mode 100644
index 168b558936f..00000000000
--- a/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/sourcelookup/UpAction.java
+++ /dev/null
@@ -1,62 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2003, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.internal.ui.sourcelookup;
-
-import java.util.Iterator;
-import java.util.List;
-
-import org.eclipse.jface.viewers.IStructuredSelection;
-
-/**
- * The action used to move source containers up in the list
- */
-public class UpAction extends SourceContainerAction {
-
- public UpAction() {
- super(SourceLookupUIMessages.getString( "UpAction.0" )); //$NON-NLS-1$
- }
- /**
- * Moves all selected entries up one position (if possible).
- *
- * @see IAction#run()
- */
- public void run() {
- List targets = getOrderedSelection();
- if (targets.isEmpty()) {
- return;
- }
- int top = 0;
- int index = 0;
- List list = getEntriesAsList();
- Iterator entries = targets.iterator();
- while (entries.hasNext()) {
- Object target = entries.next();
- index = list.indexOf(target);
- if (index > top) {
- top = index - 1;
- Object temp = list.get(top);
- list.set(top, target);
- list.set(index, temp);
- }
- top = index;
- }
- setEntries(list);
- }
-
- /**
- * @see SelectionListenerAction#updateSelection(IStructuredSelection)
- */
- protected boolean updateSelection(IStructuredSelection selection) {
- //check that something is selected, it's not first in the list, and it is a root tree node.
- return !selection.isEmpty() && !isIndexSelected(selection, 0) && getViewer().getTree().getSelection()[0].getParentItem()==null;
- }
-
-}
diff --git a/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/views/AbstractDebugEventHandler.java b/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/views/AbstractDebugEventHandler.java
deleted file mode 100644
index 099d6b78423..00000000000
--- a/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/views/AbstractDebugEventHandler.java
+++ /dev/null
@@ -1,279 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.internal.ui.views;
-
-
-import org.eclipse.debug.core.DebugEvent;
-import org.eclipse.debug.core.DebugPlugin;
-import org.eclipse.debug.core.IDebugEventSetListener;
-import org.eclipse.debug.ui.AbstractDebugView;
-import org.eclipse.jface.viewers.IBasicPropertyConstants;
-import org.eclipse.jface.viewers.ITreeContentProvider;
-import org.eclipse.jface.viewers.StructuredSelection;
-import org.eclipse.jface.viewers.StructuredViewer;
-import org.eclipse.jface.viewers.TableTreeViewer;
-import org.eclipse.jface.viewers.TreeViewer;
-import org.eclipse.jface.viewers.Viewer;
-import org.eclipse.ui.IWorkbenchPage;
-import org.eclipse.ui.IWorkbenchWindow;
-import org.eclipse.ui.PlatformUI;
-
-/**
- * Handles debug events, updating a view and viewer.
- */
-public abstract class AbstractDebugEventHandler implements IDebugEventSetListener {
-
- /**
- * This event handler's view
- */
- private AbstractDebugView fView;
-
- /**
- * Constructs an event handler for the given view.
- *
- * @param view debug view
- */
- public AbstractDebugEventHandler(AbstractDebugView view) {
- setView(view);
- DebugPlugin plugin= DebugPlugin.getDefault();
- plugin.addDebugEventListener(this);
- }
-
- /**
- * Returns the active workbench page or <code>null</code> if none.
- */
- protected IWorkbenchPage getActivePage() {
- IWorkbenchWindow window= PlatformUI.getWorkbench().getActiveWorkbenchWindow();
- if (window == null) {
- return null;
- }
- return window.getActivePage();
- }
-
- /**
- * @see IDebugEventSetListener#handleDebugEvents(DebugEvent[])
- */
- public void handleDebugEvents(final DebugEvent[] events) {
- if (!isAvailable()) {
- return;
- }
- Runnable r= new Runnable() {
- public void run() {
- if (isAvailable()) {
- if (isViewVisible()) {
- doHandleDebugEvents(events);
- }
- updateForDebugEvents(events);
- }
- }
- };
- getView().asyncExec(r);
- }
-
- /**
- * Updates this view for the given debug events. Unlike
- * doHandleDebugEvents(DebugEvent[]) which is only called if the view is
- * visible, this method is always called. This allows the view to perform
- * updating that must always be performed, even when the view is not
- * visible.
- */
- protected void updateForDebugEvents(DebugEvent[] events) {
- }
-
- /**
- * Implementation specific handling of debug events.
- * Subclasses should override.
- */
- protected abstract void doHandleDebugEvents(DebugEvent[] events);
-
- /**
- * Helper method for inserting the given element in the tree viewer -
- * must be called in UI thread
- */
- protected void insert(Object element) {
- TreeViewer viewer = getTreeViewer();
- if (isAvailable() && viewer != null) {
- Object parent= ((ITreeContentProvider)viewer.getContentProvider()).getParent(element);
- // a parent can be null for a debug target or process that has not yet been associated
- // with a launch
- if (parent != null) {
- getView().showViewer();
- viewer.add(parent, element);
- }
- }
- }
-
- /**
- * Helper method to remove the given element from the tree viewer -
- * must be called in UI thread.
- */
- protected void remove(Object element) {
- TreeViewer viewer = getTreeViewer();
- if (isAvailable() && viewer != null) {
- getView().showViewer();
- viewer.remove(element);
- }
- }
-
- /**
- * Helper method to update the label of the given element - must be called in UI thread
- */
- protected void labelChanged(Object element) {
- if (isAvailable()) {
- getView().showViewer();
- getStructuredViewer().update(element, new String[] {IBasicPropertyConstants.P_TEXT});
- }
- }
-
- /**
- * Refresh the given element in the viewer - must be called in UI thread.
- */
- protected void refresh(Object element) {
- if (isAvailable()) {
- getView().showViewer();
- getStructuredViewer().refresh(element);
- }
- }
-
- /**
- * Refresh the viewer - must be called in UI thread.
- */
- public void refresh() {
- if (isAvailable()) {
- getView().showViewer();
- getStructuredViewer().refresh();
- }
- }
-
- /**
- * Helper method to select and reveal the given element - must be called in UI thread
- */
- protected void selectAndReveal(Object element) {
- if (isAvailable()) {
- getViewer().setSelection(new StructuredSelection(element), true);
- }
- }
-
- /**
- * De-registers this event handler from the debug model.
- */
- public void dispose() {
- DebugPlugin plugin= DebugPlugin.getDefault();
- plugin.removeDebugEventListener(this);
- }
-
- /**
- * Returns the view this event handler is
- * updating.
- *
- * @return debug view
- */
- protected AbstractDebugView getView() {
- return this.fView;
- }
-
- /**
- * Sets the view this event handler is updating.
- *
- * @param view debug view
- */
- private void setView(AbstractDebugView view) {
- this.fView = view;
- }
-
- /**
- * Returns the viewer this event handler is
- * updating.
- *
- * @return viewer
- */
- protected Viewer getViewer() {
- return getView().getViewer();
- }
-
- /**
- * Returns this event handler's viewer as a tree
- * viewer or <code>null</code> if none.
- *
- * @return this event handler's viewer as a tree
- * viewer or <code>null</code> if none
- */
- protected TreeViewer getTreeViewer() {
- if (getViewer() instanceof TreeViewer) {
- return (TreeViewer)getViewer();
- }
- return null;
- }
-
- /**
- * Returns this event handler's viewer as a table tree
- * viewer or <code>null</code> if none.
- *
- * @return this event handler's viewer as a table tree
- * viewer or <code>null</code> if none
- */
- protected TableTreeViewer getTableTreeViewer() {
- if (getViewer() instanceof TableTreeViewer) {
- return (TableTreeViewer)getViewer();
- }
- return null;
- }
-
- /**
- * Returns this event handler's viewer as a structured
- * viewer or <code>null</code> if none.
- *
- * @return this event handler's viewer as a structured
- * viewer or <code>null</code> if none
- */
- protected StructuredViewer getStructuredViewer() {
- if (getViewer() instanceof StructuredViewer) {
- return (StructuredViewer)getViewer();
- }
- return null;
- }
-
- /**
- * Returns whether this event handler's viewer is
- * currently available.
- *
- * @return whether this event handler's viewer is
- * currently available
- */
- protected boolean isAvailable() {
- return getView().isAvailable();
- }
-
- /**
- * Returns whether this event handler's view is currently visible.
- *
- * @return whether this event handler's view is currently visible
- */
- protected boolean isViewVisible() {
- return getView().isVisible();
- }
-
- /**
- * Called when this event handler's view becomes visible. Default behavior
- * is to refresh the view.
- */
- protected void viewBecomesVisible() {
- refresh();
- }
-
- /**
- * Called when this event handler's view becomes hidden. Default behavior is
- * to do nothing. Subclasses may override.
- */
- protected void viewBecomesHidden() {
- }
-
-}
diff --git a/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/views/AbstractDebugEventHandlerView.java b/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/views/AbstractDebugEventHandlerView.java
deleted file mode 100644
index 10e7c175b2c..00000000000
--- a/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/views/AbstractDebugEventHandlerView.java
+++ /dev/null
@@ -1,77 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.internal.ui.views;
-
-
-import org.eclipse.debug.ui.AbstractDebugView;
-import org.eclipse.jface.action.IStatusLineManager;
-
-/**
- * A debug view that uses an event handler to update its
- * view/viewer.
- */
-public abstract class AbstractDebugEventHandlerView extends AbstractDebugView {
-
- /**
- * Event handler for this view
- */
- private AbstractDebugEventHandler fEventHandler;
-
- /**
- * Sets the event handler for this view
- *
- * @param eventHandler event handler
- */
- protected void setEventHandler(AbstractDebugEventHandler eventHandler) {
- this.fEventHandler = eventHandler;
- }
-
- /**
- * Returns the event handler for this view
- *
- * @return The event handler for this view
- */
- protected AbstractDebugEventHandler getEventHandler() {
- return this.fEventHandler;
- }
-
- /**
- * @see IWorkbenchPart#dispose()
- */
- public void dispose() {
- super.dispose();
- if (getEventHandler() != null) {
- getEventHandler().dispose();
- }
- }
-
- /**
- * @see org.eclipse.debug.ui.AbstractDebugView#becomesHidden()
- */
- protected void becomesHidden() {
- super.becomesHidden();
- getEventHandler().viewBecomesHidden();
- }
-
- /**
- * @see org.eclipse.debug.ui.AbstractDebugView#becomesVisible()
- */
- protected void becomesVisible() {
- super.becomesVisible();
- getEventHandler().viewBecomesVisible();
- }
-
- protected void clearStatusLine() {
- IStatusLineManager manager = getViewSite().getActionBars().getStatusLineManager();
- manager.setErrorMessage(null);
- manager.setMessage(null);
- }
-}
diff --git a/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/views/IDebugExceptionHandler.java b/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/views/IDebugExceptionHandler.java
deleted file mode 100644
index 7ee8aeb882e..00000000000
--- a/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/views/IDebugExceptionHandler.java
+++ /dev/null
@@ -1,25 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.internal.ui.views;
-
-import org.eclipse.debug.core.DebugException;
-
-/**
- * A plugable exception handler.
- */
-public interface IDebugExceptionHandler {
- /**
- * Handles the given debug exception.
- *
- * @param e debug exception
- */
- public abstract void handleException( DebugException e );
-}
diff --git a/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/views/disassembly/DisassemblyAnnotationHover.java b/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/views/disassembly/DisassemblyAnnotationHover.java
deleted file mode 100644
index 6e4e07d0735..00000000000
--- a/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/views/disassembly/DisassemblyAnnotationHover.java
+++ /dev/null
@@ -1,145 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.internal.ui.views.disassembly;
-
-import java.util.ArrayList;
-import java.util.Iterator;
-import java.util.List;
-
-import org.eclipse.cdt.debug.internal.ui.HTMLPrinter;
-import org.eclipse.core.resources.IMarker;
-import org.eclipse.jface.text.BadLocationException;
-import org.eclipse.jface.text.IDocument;
-import org.eclipse.jface.text.Position;
-import org.eclipse.jface.text.source.IAnnotationHover;
-import org.eclipse.jface.text.source.IAnnotationModel;
-import org.eclipse.jface.text.source.ISourceViewer;
-import org.eclipse.ui.texteditor.MarkerAnnotation;
-
-/**
- * Annotation hovering support for disassembly view.
- */
-public class DisassemblyAnnotationHover implements IAnnotationHover {
-
- /*
- * (non-Javadoc)
- *
- * @see org.eclipse.jface.text.source.IAnnotationHover#getHoverInfo(org.eclipse.jface.text.source.ISourceViewer, int)
- */
- public String getHoverInfo( ISourceViewer sourceViewer, int lineNumber ) {
- List markers = getMarkersForLine( sourceViewer, lineNumber );
- if ( markers != null ) {
- if ( markers.size() == 1 ) {
- // optimization
- IMarker marker = (IMarker)markers.get( 0 );
- String message = marker.getAttribute( IMarker.MESSAGE, (String)null );
- if ( message != null && message.trim().length() > 0 )
- return formatSingleMessage( message );
- }
- else {
- List messages = new ArrayList();
- Iterator e = markers.iterator();
- while( e.hasNext() ) {
- IMarker marker = (IMarker)e.next();
- String message = marker.getAttribute( IMarker.MESSAGE, (String)null );
- if ( message != null && message.trim().length() > 0 )
- messages.add( message.trim() );
- }
- if ( messages.size() == 1 )
- return formatSingleMessage( (String)messages.get( 0 ) );
- if ( messages.size() > 1 )
- return formatMultipleMessages( messages );
- }
- }
- return null;
- }
-
- /**
- * Returns the distance to the ruler line.
- */
- protected int compareRulerLine( Position position, IDocument document, int line ) {
- if ( position.getOffset() > -1 && position.getLength() > -1 ) {
- try {
- int markerLine = document.getLineOfOffset( position.getOffset() );
- if ( line == markerLine )
- return 1;
- if ( markerLine <= line && line <= document.getLineOfOffset( position.getOffset() + position.getLength() ) )
- return 2;
- }
- catch( BadLocationException x ) {
- }
- }
- return 0;
- }
-
- /*
- * Formats a message as HTML text.
- */
- private String formatSingleMessage( String message ) {
- StringBuffer buffer = new StringBuffer();
- HTMLPrinter.addPageProlog( buffer );
- HTMLPrinter.addParagraph( buffer, HTMLPrinter.convertToHTMLContent( message ) );
- HTMLPrinter.addPageEpilog( buffer );
- return buffer.toString();
- }
-
- /*
- * Formats several message as HTML text.
- */
- private String formatMultipleMessages( List messages ) {
- StringBuffer buffer = new StringBuffer();
- HTMLPrinter.addPageProlog( buffer );
- HTMLPrinter.addParagraph( buffer, HTMLPrinter.convertToHTMLContent( DisassemblyMessages.getString( "DisassemblyAnnotationHover.Multiple_markers_at_this_line_1" ) ) ); //$NON-NLS-1$
- HTMLPrinter.startBulletList( buffer );
- Iterator e = messages.iterator();
- while( e.hasNext() )
- HTMLPrinter.addBullet( buffer, HTMLPrinter.convertToHTMLContent( (String)e.next() ) );
- HTMLPrinter.endBulletList( buffer );
- HTMLPrinter.addPageEpilog( buffer );
- return buffer.toString();
- }
-
- /**
- * Returns one marker which includes the ruler's line of activity.
- */
- protected List getMarkersForLine( ISourceViewer viewer, int line ) {
- IDocument document = viewer.getDocument();
- IAnnotationModel model = viewer.getAnnotationModel();
- if ( model == null )
- return null;
- List exact = new ArrayList();
- List including = new ArrayList();
- Iterator e = model.getAnnotationIterator();
- while( e.hasNext() ) {
- Object o = e.next();
- if ( o instanceof MarkerAnnotation ) {
- MarkerAnnotation a = (MarkerAnnotation)o;
- switch( compareRulerLine( model.getPosition( a ), document, line ) ) {
- case 1:
- exact.add( a.getMarker() );
- break;
- case 2:
- including.add( a.getMarker() );
- break;
- }
- }
- }
- return select( exact, including );
- }
-
- /**
- * Selects a set of markers from the two lists. By default, it just returns
- * the set of exact matches.
- */
- protected List select( List exactMatch, List including ) {
- return exactMatch;
- }
-}
diff --git a/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/views/disassembly/DisassemblyAnnotationModel.java b/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/views/disassembly/DisassemblyAnnotationModel.java
deleted file mode 100644
index 76852ecbafd..00000000000
--- a/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/views/disassembly/DisassemblyAnnotationModel.java
+++ /dev/null
@@ -1,202 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004, 2005 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.internal.ui.views.disassembly;
-
-import java.util.ArrayList;
-import java.util.Iterator;
-import java.util.LinkedList;
-import java.util.List;
-import org.eclipse.cdt.debug.core.model.ICLineBreakpoint;
-import org.eclipse.core.resources.IMarker;
-import org.eclipse.debug.core.DebugPlugin;
-import org.eclipse.debug.core.model.IBreakpoint;
-import org.eclipse.jface.text.BadLocationException;
-import org.eclipse.jface.text.IDocument;
-import org.eclipse.jface.text.Position;
-import org.eclipse.jface.text.source.Annotation;
-import org.eclipse.jface.text.source.AnnotationModel;
-import org.eclipse.swt.widgets.Display;
-import org.eclipse.ui.texteditor.MarkerAnnotation;
-
-/**
- * Annotation model for Disassembly view.
- */
-public class DisassemblyAnnotationModel extends AnnotationModel {
-
- private DisassemblyEditorInput fInput;
-
-// private IDocument fDisassemblyDocument;
-
- /**
- * Constructor for DisassemblyAnnotationModel.
- */
- public DisassemblyAnnotationModel() {
- super();
- }
-
- protected void breakpointsAdded( final IBreakpoint[] breakpoints, final IDocument document ) {
- DisassemblyEditorInput input = getInput();
- if ( DisassemblyEditorInput.EMPTY_EDITOR_INPUT.equals( input ) ||
- DisassemblyEditorInput.PENDING_EDITOR_INPUT.equals( input ) )
- return;
- asyncExec( new Runnable() {
- public void run() {
- breakpointsAdded0( breakpoints, document );
- }
- } );
- }
-
- protected void breakpointsRemoved( final IBreakpoint[] breakpoints, final IDocument document ) {
- DisassemblyEditorInput input = getInput();
- if ( DisassemblyEditorInput.EMPTY_EDITOR_INPUT.equals( input ) ||
- DisassemblyEditorInput.PENDING_EDITOR_INPUT.equals( input ) )
- return;
- asyncExec( new Runnable() {
- public void run() {
- breakpointsRemoved0( breakpoints, document );
- }
- } );
- }
-
- protected void breakpointsChanged( final IBreakpoint[] breakpoints, final IDocument document ) {
- DisassemblyEditorInput input = getInput();
- if ( DisassemblyEditorInput.EMPTY_EDITOR_INPUT.equals( input ) ||
- DisassemblyEditorInput.PENDING_EDITOR_INPUT.equals( input ) )
- return;
- asyncExec( new Runnable() {
- public void run() {
- breakpointsChanged0( breakpoints, document );
- }
- } );
- }
-
- protected void breakpointsAdded0( IBreakpoint[] breakpoints, IDocument document ) {
- for ( int i = 0; i < breakpoints.length; ++i ) {
- if ( breakpoints[i] instanceof ICLineBreakpoint && isApplicable( breakpoints[i] ) ) {
- addBreakpointAnnotation( (ICLineBreakpoint)breakpoints[i], document );
- }
- }
- fireModelChanged();
- }
-
- protected void breakpointsRemoved0( IBreakpoint[] breakpoints, IDocument document ) {
- removeAnnotations( findAnnotationsforBreakpoints( breakpoints ), true, false );
- }
-
- protected void breakpointsChanged0( IBreakpoint[] breakpoints, IDocument document ) {
- List annotations = findAnnotationsforBreakpoints( breakpoints );
- List markers = new ArrayList( annotations.size() );
- Iterator it = annotations.iterator();
- while( it.hasNext() ) {
- MarkerAnnotation ma = (MarkerAnnotation)it.next();
- markers.add( ma.getMarker() );
- modifyAnnotationPosition( ma, getPosition( ma ), false );
- }
- for ( int i = 0; i < breakpoints.length; ++i ) {
- if ( breakpoints[i] instanceof ICLineBreakpoint && !markers.contains( breakpoints[i].getMarker() ) ) {
- addBreakpointAnnotation( (ICLineBreakpoint)breakpoints[i], document );
- }
- }
- fireModelChanged();
- }
-
- protected DisassemblyEditorInput getInput() {
- return this.fInput;
- }
-
- protected void setInput( DisassemblyEditorInput input, IDocument document ) {
- DisassemblyEditorInput oldInput = this.fInput;
- this.fInput = input;
- if ( this.fInput != null && !this.fInput.equals( oldInput ) )
- updateAnnotations( document );
- }
-
- private boolean isApplicable( IBreakpoint breakpoint ) {
- return true;
- }
-
- private void addBreakpointAnnotation( ICLineBreakpoint breakpoint, IDocument document ) {
- Position position = createBreakpointPosition( breakpoint, document );
- if ( position != null ) {
- try {
- addAnnotation( createMarkerAnnotation( breakpoint ), position, false );
- }
- catch( BadLocationException e ) {
- }
- }
- }
-
- private Position createBreakpointPosition( ICLineBreakpoint breakpoint, IDocument document ) {
- Position position = null;
- DisassemblyEditorInput input = getInput();
- if ( input != null ) {
- int start = -1;
- if ( document != null ) {
- int instrNumber = input.getInstructionLine( breakpoint );
- if ( instrNumber > 0 ) {
- try {
- start = fDocument.getLineOffset( instrNumber - 1 );
- if ( start > -1 ) {
- return new Position( start, document.getLineLength( instrNumber - 1 ) );
- }
- }
- catch( BadLocationException e ) {
- }
- }
- }
- }
- return position;
- }
-
- private MarkerAnnotation createMarkerAnnotation( IBreakpoint breakpoint ) {
- return new MarkerAnnotation( breakpoint.getMarker() );
- }
-
- protected void dispose() {
- }
-
- private List findAnnotationsforBreakpoints( IBreakpoint[] breakpoints ) {
- List annotations = new LinkedList();
- Iterator it = getAnnotationIterator();
- while ( it.hasNext() ) {
- Annotation ann = (Annotation)it.next();
- if ( ann instanceof MarkerAnnotation ) {
- IMarker marker = ((MarkerAnnotation)ann).getMarker();
- if ( marker != null ) {
- for ( int i = 0; i < breakpoints.length; ++i ) {
- if ( marker.equals( breakpoints[i].getMarker() ) ) {
- annotations.add( ann );
- }
- }
- }
- }
- }
- return annotations;
- }
-
- private void asyncExec( Runnable r ) {
- Display display = Display.getDefault();
- if ( display != null )
- display.asyncExec( r );
- }
-
- private void updateAnnotations( final IDocument document ) {
- asyncExec( new Runnable() {
- public void run() {
- doUpdateAnnotations( document );
- }
- } );
- }
-
- protected void doUpdateAnnotations( IDocument document ) {
- breakpointsAdded0( DebugPlugin.getDefault().getBreakpointManager().getBreakpoints(), document );
- }
-}
diff --git a/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/views/disassembly/DisassemblyDocumentProvider.java b/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/views/disassembly/DisassemblyDocumentProvider.java
deleted file mode 100644
index a90759ec288..00000000000
--- a/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/views/disassembly/DisassemblyDocumentProvider.java
+++ /dev/null
@@ -1,189 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.internal.ui.views.disassembly;
-
-import org.eclipse.core.resources.IMarkerDelta;
-import org.eclipse.core.runtime.CoreException;
-import org.eclipse.core.runtime.IProgressMonitor;
-import org.eclipse.debug.core.DebugPlugin;
-import org.eclipse.debug.core.IBreakpointsListener;
-import org.eclipse.debug.core.model.IBreakpoint;
-import org.eclipse.jface.text.Document;
-import org.eclipse.jface.text.IDocument;
-import org.eclipse.jface.text.source.IAnnotationModel;
-import org.eclipse.ui.texteditor.IDocumentProvider;
-import org.eclipse.ui.texteditor.IElementStateListener;
-
-/**
- * Document provider for disassembly view.
- */
-public class DisassemblyDocumentProvider implements IDocumentProvider, IBreakpointsListener {
-
- private IDocument fDocument;
- private DisassemblyAnnotationModel fAnnotationModel;
-
- /**
- * Constructor for DisassemblyDocumentProvider.
- */
- public DisassemblyDocumentProvider() {
- fDocument = new Document();
- fAnnotationModel = new DisassemblyAnnotationModel();
- DebugPlugin.getDefault().getBreakpointManager().addBreakpointListener( this );
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.ui.texteditor.IDocumentProvider#connect(java.lang.Object)
- */
- public void connect( Object element ) throws CoreException {
- if ( element instanceof DisassemblyEditorInput ) {
- String contents = ((DisassemblyEditorInput)element).getContents();
- fDocument.set( contents );
- }
- else {
- fDocument.set( "" ); //$NON-NLS-1$
- }
- fAnnotationModel.setInput( ( element instanceof DisassemblyEditorInput ) ? (DisassemblyEditorInput)element : null, fDocument );
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.ui.texteditor.IDocumentProvider#disconnect(java.lang.Object)
- */
- public void disconnect( Object element ) {
- fDocument.set( "" ); //$NON-NLS-1$
- fAnnotationModel.setInput( null, fDocument );
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.ui.texteditor.IDocumentProvider#getDocument(java.lang.Object)
- */
- public IDocument getDocument( Object element ) {
- return fDocument;
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.ui.texteditor.IDocumentProvider#resetDocument(java.lang.Object)
- */
- public void resetDocument( Object element ) throws CoreException {
- // TODO Auto-generated method stub
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.ui.texteditor.IDocumentProvider#saveDocument(org.eclipse.core.runtime.IProgressMonitor, java.lang.Object, org.eclipse.jface.text.IDocument, boolean)
- */
- public void saveDocument( IProgressMonitor monitor, Object element, IDocument document, boolean overwrite ) throws CoreException {
- // TODO Auto-generated method stub
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.ui.texteditor.IDocumentProvider#getModificationStamp(java.lang.Object)
- */
- public long getModificationStamp( Object element ) {
- // TODO Auto-generated method stub
- return 0;
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.ui.texteditor.IDocumentProvider#getSynchronizationStamp(java.lang.Object)
- */
- public long getSynchronizationStamp( Object element ) {
- // TODO Auto-generated method stub
- return 0;
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.ui.texteditor.IDocumentProvider#isDeleted(java.lang.Object)
- */
- public boolean isDeleted( Object element ) {
- // TODO Auto-generated method stub
- return false;
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.ui.texteditor.IDocumentProvider#mustSaveDocument(java.lang.Object)
- */
- public boolean mustSaveDocument( Object element ) {
- // TODO Auto-generated method stub
- return false;
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.ui.texteditor.IDocumentProvider#canSaveDocument(java.lang.Object)
- */
- public boolean canSaveDocument( Object element ) {
- // TODO Auto-generated method stub
- return false;
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.ui.texteditor.IDocumentProvider#getAnnotationModel(java.lang.Object)
- */
- public IAnnotationModel getAnnotationModel( Object element ) {
- return fAnnotationModel;
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.ui.texteditor.IDocumentProvider#aboutToChange(java.lang.Object)
- */
- public void aboutToChange( Object element ) {
- // TODO Auto-generated method stub
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.ui.texteditor.IDocumentProvider#changed(java.lang.Object)
- */
- public void changed( Object element ) {
- // TODO Auto-generated method stub
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.ui.texteditor.IDocumentProvider#addElementStateListener(org.eclipse.ui.texteditor.IElementStateListener)
- */
- public void addElementStateListener( IElementStateListener listener ) {
- // TODO Auto-generated method stub
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.ui.texteditor.IDocumentProvider#removeElementStateListener(org.eclipse.ui.texteditor.IElementStateListener)
- */
- public void removeElementStateListener( IElementStateListener listener ) {
- // TODO Auto-generated method stub
- }
-
- protected void dispose() {
- fDocument = null;
- if ( fAnnotationModel != null ) {
- fAnnotationModel.dispose();
- fAnnotationModel = null;
- }
- DebugPlugin.getDefault().getBreakpointManager().removeBreakpointListener( this );
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.debug.core.IBreakpointsListener#breakpointsAdded(org.eclipse.debug.core.model.IBreakpoint[])
- */
- public void breakpointsAdded( IBreakpoint[] breakpoints ) {
- fAnnotationModel.breakpointsAdded( breakpoints, fDocument );
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.debug.core.IBreakpointsListener#breakpointsChanged(org.eclipse.debug.core.model.IBreakpoint[], org.eclipse.core.resources.IMarkerDelta[])
- */
- public void breakpointsChanged( IBreakpoint[] breakpoints, IMarkerDelta[] deltas ) {
- fAnnotationModel.breakpointsChanged( breakpoints, fDocument );
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.debug.core.IBreakpointsListener#breakpointsRemoved(org.eclipse.debug.core.model.IBreakpoint[], org.eclipse.core.resources.IMarkerDelta[])
- */
- public void breakpointsRemoved( IBreakpoint[] breakpoints, IMarkerDelta[] deltas ) {
- fAnnotationModel.breakpointsRemoved( breakpoints, fDocument );
- }
-}
diff --git a/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/views/disassembly/DisassemblyEditorInput.java b/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/views/disassembly/DisassemblyEditorInput.java
deleted file mode 100644
index 35f50d391cc..00000000000
--- a/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/views/disassembly/DisassemblyEditorInput.java
+++ /dev/null
@@ -1,349 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004, 2005 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.internal.ui.views.disassembly;
-
-import java.util.Arrays;
-import org.eclipse.cdt.core.IAddress;
-import org.eclipse.cdt.debug.core.CDIDebugModel;
-import org.eclipse.cdt.debug.core.model.IAsmInstruction;
-import org.eclipse.cdt.debug.core.model.IAsmSourceLine;
-import org.eclipse.cdt.debug.core.model.ICDebugTarget;
-import org.eclipse.cdt.debug.core.model.ICLineBreakpoint;
-import org.eclipse.cdt.debug.core.model.ICStackFrame;
-import org.eclipse.cdt.debug.core.model.IDisassembly;
-import org.eclipse.cdt.debug.core.model.IDisassemblyBlock;
-import org.eclipse.core.resources.IFile;
-import org.eclipse.core.resources.IStorage;
-import org.eclipse.core.runtime.CoreException;
-import org.eclipse.debug.core.DebugException;
-import org.eclipse.debug.core.DebugPlugin;
-import org.eclipse.debug.core.model.IBreakpoint;
-import org.eclipse.jface.resource.ImageDescriptor;
-import org.eclipse.jface.text.IRegion;
-import org.eclipse.jface.text.Region;
-import org.eclipse.jface.util.Assert;
-import org.eclipse.ui.IEditorInput;
-import org.eclipse.ui.IPersistableElement;
-
-/**
- * Editor input associated with a debug element.
- */
-public class DisassemblyEditorInput implements IEditorInput {
-
- public static final IEditorInput EMPTY_EDITOR_INPUT = new DisassemblyEditorInput();
-
- public static final IEditorInput PENDING_EDITOR_INPUT =
- new DisassemblyEditorInput() {
- public String getContents() {
- return DisassemblyMessages.getString( "DisassemblyDocumentProvider.Pending_1" ); //$NON-NLS-1$
- }
- };
-
- /**
- * Disassembly block associated with this editor input
- */
- private IDisassemblyBlock fBlock;
-
- private String fContents = ""; //$NON-NLS-1$
-
- private IRegion[] fSourceRegions = new IRegion[0];
-
- /**
- * Constructor for DisassemblyEditorInput.
- */
- protected DisassemblyEditorInput() {
- }
-
- /**
- * Constructor for DisassemblyEditorInput.
- *
- * @param disassembly
- * @param instructions
- */
- private DisassemblyEditorInput( IDisassemblyBlock block) {
- fBlock = block;
- createContents();
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.ui.IEditorInput#exists()
- */
- public boolean exists() {
- return true;
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.ui.IEditorInput#getImageDescriptor()
- */
- public ImageDescriptor getImageDescriptor() {
- return null;
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.ui.IEditorInput#getName()
- */
- public String getName() {
- return null;
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.ui.IEditorInput#getPersistable()
- */
- public IPersistableElement getPersistable() {
- return null;
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.ui.IEditorInput#getToolTipText()
- */
- public String getToolTipText() {
- return null;
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.core.runtime.IAdaptable#getAdapter(java.lang.Class)
- */
- public Object getAdapter( Class adapter ) {
- return null;
- }
-
- public boolean contains( ICStackFrame frame ) {
- if ( fBlock != null ) {
- return fBlock.contains( frame );
- }
- return false;
- }
-
- public String getContents() {
- return fContents;
- }
-
- public int getInstructionLine( IAddress address ) {
- if ( fBlock != null ) {
- IAsmSourceLine[] lines = fBlock.getSourceLines();
- int result = 0;
- for ( int i = 0; i < lines.length; ++i ) {
- IAsmInstruction[] instructions = lines[i].getInstructions();
- if ( fBlock.isMixedMode() )
- ++result;
- for ( int j = 0; j < instructions.length; ++j ) {
- ++result;
- if ( address.equals( instructions[j].getAdress() ) ) {
- return result;
- }
- }
- }
- }
- return -1;
- }
-
- public int getInstructionLine( ICLineBreakpoint breakpoint ) {
- if ( fBlock != null ) {
- IDisassembly dis = fBlock.getDisassembly();
- if ( dis != null ) {
- ICDebugTarget target = (ICDebugTarget)dis.getDebugTarget().getAdapter( ICDebugTarget.class );
- if ( target != null ) {
- try {
- IAddress address = target.getBreakpointAddress( breakpoint );
- if ( address != null && !address.isZero() )
- return getInstructionLine( address );
- }
- catch( DebugException e ) {
- }
- }
- }
- }
- return -1;
- }
-
- public IAddress getAddress( int lineNumber ) {
- if ( fBlock != null ) {
- IAsmSourceLine[] lines = fBlock.getSourceLines();
- int current = 0;
- for ( int i = 0; i < lines.length; ++i ) {
- IAsmInstruction[] instructions = lines[i].getInstructions();
- if ( fBlock.isMixedMode() ) {
- ++current;
- }
- if ( lineNumber == current && instructions.length > 0 )
- return instructions[0].getAdress();
- if ( lineNumber > current && lineNumber <= current + instructions.length )
- return instructions[lineNumber - current - 1].getAdress();
- current += instructions.length;
- }
- }
- return null;
- }
-
- public String getModuleFile() {
- return ( fBlock != null ) ? fBlock.getModuleFile() : null;
- }
-
- public String getSourceFile() {
- if ( fBlock != null ) {
- Object element = fBlock.getSourceElement();
- if ( element instanceof IFile ) {
- return ((IFile)element).getLocation().toOSString();
- }
- else if ( element instanceof IStorage ) {
- return ((IStorage)element).getFullPath().toOSString();
- }
- }
- return null;
- }
-
- public int getSourceLine( int instrNumber ) {
- if ( fBlock != null ) {
- IAsmSourceLine[] sl = fBlock.getSourceLines();
- int current = 0;
- for ( int i = 0; i < sl.length; ++i ) {
- ++current;
- IAsmInstruction[] ins = sl[i].getInstructions();
- if ( instrNumber >= current && instrNumber <= current + ins.length )
- return sl[i].getLineNumber();
- current += ins.length;
- }
- }
- return -1;
- }
-
- public static DisassemblyEditorInput create( ICStackFrame frame ) throws DebugException {
- DisassemblyEditorInput input = null;
- ICDebugTarget target = ((ICDebugTarget)frame.getDebugTarget());
- IDisassembly disassembly = target.getDisassembly();
- if ( disassembly != null ) {
- IDisassemblyBlock block = disassembly.getDisassemblyBlock( frame );
- input = new DisassemblyEditorInput( block);
- }
- return input;
- }
-
- private void createContents() {
- fSourceRegions = new IRegion[0];
- StringBuffer lines = new StringBuffer();
- int maxFunctionName = 0;
- int maxOpcodeLength = 0;
- long maxOffset = 0;
- if ( fBlock != null ) {
- IAsmSourceLine[] mi = fBlock.getSourceLines();
- for ( int j = 0; j < mi.length; ++j ) {
- IAsmInstruction[] instructions = mi[j].getInstructions();
- for( int i = 0; i < instructions.length; ++i ) {
- String functionName = instructions[i].getFunctionName();
- if ( functionName.length() > maxFunctionName ) {
- maxFunctionName = functionName.length();
- }
- String opcode = instructions[i].getOpcode();
- if ( opcode.length() > maxOpcodeLength )
- maxOpcodeLength = opcode.length();
- long offset = Math.abs( instructions[i].getOffset() );
- if ( offset > maxOffset ) {
- maxOffset = offset;
- }
- }
- }
- int instrPos = calculateInstructionPosition( maxFunctionName, maxOffset );
- int argPosition = instrPos + maxOpcodeLength + 1;
- if ( fBlock.isMixedMode() )
- fSourceRegions = new IRegion[mi.length];
- for ( int j = 0; j < mi.length; ++j ) {
- if ( fBlock.isMixedMode() ) {
- String sl = getSourceLineString( mi[j] );
- fSourceRegions[j] = new Region( lines.length(), sl.length() );
- lines.append( sl );
- }
- IAsmInstruction[] instructions = mi[j].getInstructions();
- for( int i = 0; i < instructions.length; ++i ) {
- lines.append( getInstructionString( instructions[i], instrPos, argPosition ) );
- }
- }
- }
- fContents = lines.toString();
- }
-
- private String getInstructionString( IAsmInstruction instruction, int instrPosition, int argPosition ) {
- int worstCaseSpace = Math.max( instrPosition, argPosition );
- char[] spaces = new char[worstCaseSpace];
- Arrays.fill( spaces, ' ' );
- StringBuffer sb = new StringBuffer();
- if ( instruction != null ) {
- sb.append( instruction.getAdress().toHexAddressString() );
- sb.append( ' ' );
- String functionName = instruction.getFunctionName();
- if ( functionName != null && functionName.length() > 0 ) {
- sb.append( '<' );
- sb.append( functionName );
- long offset = instruction.getOffset();
- if ( offset != 0 ) {
- if ( offset > 0 )
- sb.append( '+' );
- sb.append( instruction.getOffset() );
- }
- sb.append( ">:" ); //$NON-NLS-1$
- sb.append( spaces, 0, instrPosition - sb.length() );
- }
- sb.append( instruction.getOpcode() );
- sb.append( spaces, 0, argPosition - sb.length() );
- sb.append( instruction.getArguments() );
- sb.append( '\n' );
- }
- return sb.toString();
- }
-
- private int calculateInstructionPosition( int maxFunctionName, long maxOffset ) {
- //(Address prefix address representation in chars) + (space) + (<) + (+) + (>) + (:) + (space)
- int addressLength = getDisassembly().getAddressFactory().getMax().getCharsNum();
- return ( addressLength + 6 + maxFunctionName + Long.toString( maxOffset ).length() );
- }
-
- private String getSourceLineString( IAsmSourceLine line ) {
- String text = line.toString();
- if ( text == null ) {
- text = DisassemblyMessages.getString( "DisassemblyEditorInput.source_line_is_not_available_1" ) + '\n'; //$NON-NLS-1$
- }
- return text;
- }
-
- public IRegion[] getSourceRegions() {
- return this.fSourceRegions;
- }
-
- protected IDisassembly getDisassembly() {
- return ( fBlock != null ) ? fBlock.getDisassembly() : null;
- }
-
- public ICLineBreakpoint breakpointExists( IAddress address ) throws CoreException {
- Assert.isTrue( address != null );
- IDisassembly dis = getDisassembly();
- if ( dis != null ) {
- ICDebugTarget bt = (ICDebugTarget)dis.getDebugTarget().getAdapter( ICDebugTarget.class );
- if ( bt != null ) {
- String modelId = CDIDebugModel.getPluginIdentifier();
- IBreakpoint[] bps = DebugPlugin.getDefault().getBreakpointManager().getBreakpoints( modelId );
- for ( int i = 0; i < bps.length; ++i ) {
- if ( bps[i] instanceof ICLineBreakpoint ) {
- ICLineBreakpoint b = (ICLineBreakpoint)bps[i];
- try {
- IAddress a = bt.getBreakpointAddress( b );
- if ( a != null && address.compareTo( a ) == 0 )
- return b;
- }
- catch( NumberFormatException e ) {
- }
- catch( CoreException e ) {
- }
- }
- }
- }
- }
- return null;
- }
-}
diff --git a/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/views/disassembly/DisassemblyInstructionPointerAnnotation.java b/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/views/disassembly/DisassemblyInstructionPointerAnnotation.java
deleted file mode 100644
index 7fdd28b6c22..00000000000
--- a/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/views/disassembly/DisassemblyInstructionPointerAnnotation.java
+++ /dev/null
@@ -1,79 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.internal.ui.views.disassembly;
-
-import org.eclipse.cdt.core.IAddress;
-import org.eclipse.cdt.debug.core.model.ICDebugTarget;
-import org.eclipse.cdt.debug.core.model.ICStackFrame;
-import org.eclipse.cdt.debug.core.model.IDisassembly;
-import org.eclipse.cdt.debug.internal.ui.IInternalCDebugUIConstants;
-import org.eclipse.debug.core.DebugException;
-import org.eclipse.jface.text.source.Annotation;
-
-/**
- * An annotation for the vertical ruler in the disassembly view that shows one
- * of two images for the current instruction pointer when debugging (one for
- * the top stack frame, one for all others).
- */
-public class DisassemblyInstructionPointerAnnotation extends Annotation {
-
- private int fHashCode = 0;
-
- /**
- * Construct an instruction pointer annotation for the given stack frame.
- *
- * @param stackFrame frame to create an instruction pointer annotation for
- * @param isTopFrame whether the given frame is the top stack frame in its thread
- */
- public DisassemblyInstructionPointerAnnotation( ICStackFrame stackFrame, boolean isTopFrame ) {
- super( isTopFrame ? IInternalCDebugUIConstants.ANN_DISASM_INSTR_POINTER_CURRENT : IInternalCDebugUIConstants.ANN_DISASM_INSTR_POINTER_SECONDARY,
- false,
- isTopFrame ? DisassemblyMessages.getString( "DisassemblyInstructionPointerAnnotation.Current_Pointer_1" ) : DisassemblyMessages.getString( "DisassemblyInstructionPointerAnnotation.Secondary_Pointer_1" ) ); //$NON-NLS-1$ //$NON-NLS-2$
- fHashCode = getHashCode( stackFrame );
- }
-
- private IDisassembly getDisassembly( ICStackFrame frame ) {
- if ( frame != null ) {
- ICDebugTarget target = (ICDebugTarget)frame.getDebugTarget();
- try {
- return target.getDisassembly();
- }
- catch( DebugException e ) {
- }
- }
- return null;
- }
-
- /* (non-Javadoc)
- * @see java.lang.Object#hashCode()
- */
- public int hashCode() {
- return fHashCode;
- }
-
- private int getHashCode( ICStackFrame frame ) {
- int hashCode = 17;
- IDisassembly disassembly = getDisassembly( frame );
- hashCode = 37*hashCode + (( disassembly != null ) ? disassembly.hashCode() : 0);
- if ( frame != null ) {
- IAddress address = frame.getAddress();
- hashCode = 37*hashCode + address.hashCode();
- }
- return hashCode;
- }
-
- /* (non-Javadoc)
- * @see java.lang.Object#equals(java.lang.Object)
- */
- public boolean equals( Object obj ) {
- return ( obj != null ? obj.hashCode() == hashCode() : false );
- }
-}
diff --git a/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/views/disassembly/DisassemblyMessages.java b/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/views/disassembly/DisassemblyMessages.java
deleted file mode 100644
index 023dd7cde61..00000000000
--- a/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/views/disassembly/DisassemblyMessages.java
+++ /dev/null
@@ -1,33 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.internal.ui.views.disassembly;
-
-import java.util.MissingResourceException;
-import java.util.ResourceBundle;
-
-public class DisassemblyMessages {
-
- private static final String BUNDLE_NAME = "org.eclipse.cdt.debug.internal.ui.views.disassembly.DisassemblyMessages"; //$NON-NLS-1$
-
- private static final ResourceBundle RESOURCE_BUNDLE = ResourceBundle.getBundle( BUNDLE_NAME );
-
- private DisassemblyMessages() {
- }
-
- public static String getString( String key ) {
- try {
- return RESOURCE_BUNDLE.getString( key );
- }
- catch( MissingResourceException e ) {
- return '!' + key + '!';
- }
- }
-}
diff --git a/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/views/disassembly/DisassemblyMessages.properties b/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/views/disassembly/DisassemblyMessages.properties
deleted file mode 100644
index 37fb64272ab..00000000000
--- a/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/views/disassembly/DisassemblyMessages.properties
+++ /dev/null
@@ -1,18 +0,0 @@
-###############################################################################
-# Copyright (c) 2003, 2006 QNX Software Systems and others.
-# All rights reserved. This program and the accompanying materials
-# are made available under the terms of the Eclipse Public License v1.0
-# which accompanies this distribution, and is available at
-# http://www.eclipse.org/legal/epl-v10.html
-#
-# Contributors:
-# QNX Software Systems - initial API and implementation
-###############################################################################
-
-DisassemblyDocumentProvider.Pending_1=Pending...
-DisassemblyInstructionPointerAnnotation.Current_Pointer_1=Current Disassembly Instruction Pointer
-DisassemblyInstructionPointerAnnotation.Secondary_Pointer_1=Secondary Disassembly Instruction Pointer
-DisassemblyAnnotationHover.Multiple_markers_at_this_line_1=Multiple markers at this line
-HTMLTextPresenter.ellipsis=
-HTML2TextReader.dash=-
-DisassemblyEditorInput.source_line_is_not_available_1=<source line is not available>
diff --git a/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/views/disassembly/DisassemblyView.java b/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/views/disassembly/DisassemblyView.java
deleted file mode 100644
index 50b374b3e76..00000000000
--- a/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/views/disassembly/DisassemblyView.java
+++ /dev/null
@@ -1,956 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.internal.ui.views.disassembly;
-
-import java.util.HashMap;
-import java.util.Iterator;
-import java.util.Map;
-import org.eclipse.cdt.debug.core.CDebugCorePlugin;
-import org.eclipse.cdt.debug.core.ICDebugConstants;
-import org.eclipse.cdt.debug.core.model.ICStackFrame;
-import org.eclipse.cdt.debug.core.model.IDisassembly;
-import org.eclipse.cdt.debug.internal.ui.ICDebugHelpContextIds;
-import org.eclipse.cdt.debug.internal.ui.IInternalCDebugUIConstants;
-import org.eclipse.cdt.debug.internal.ui.actions.CBreakpointPropertiesRulerAction;
-import org.eclipse.cdt.debug.internal.ui.actions.EnableDisableBreakpointRulerAction;
-import org.eclipse.cdt.debug.internal.ui.actions.ToggleBreakpointRulerAction;
-import org.eclipse.cdt.debug.internal.ui.views.AbstractDebugEventHandler;
-import org.eclipse.cdt.debug.internal.ui.views.AbstractDebugEventHandlerView;
-import org.eclipse.cdt.debug.internal.ui.views.IDebugExceptionHandler;
-import org.eclipse.cdt.debug.ui.CDebugUIPlugin;
-import org.eclipse.core.runtime.CoreException;
-import org.eclipse.core.runtime.IAdaptable;
-import org.eclipse.core.runtime.IStatus;
-import org.eclipse.core.runtime.Status;
-import org.eclipse.debug.core.DebugException;
-import org.eclipse.debug.core.DebugPlugin;
-import org.eclipse.debug.core.model.IThread;
-import org.eclipse.debug.ui.DebugUITools;
-import org.eclipse.debug.ui.IDebugUIConstants;
-import org.eclipse.jface.action.IAction;
-import org.eclipse.jface.action.IMenuListener;
-import org.eclipse.jface.action.IMenuManager;
-import org.eclipse.jface.action.IToolBarManager;
-import org.eclipse.jface.action.MenuManager;
-import org.eclipse.jface.action.Separator;
-import org.eclipse.jface.preference.IPreferenceStore;
-import org.eclipse.jface.resource.JFaceResources;
-import org.eclipse.jface.text.BadLocationException;
-import org.eclipse.jface.text.IRegion;
-import org.eclipse.jface.text.Position;
-import org.eclipse.jface.text.TextPresentation;
-import org.eclipse.jface.text.source.IAnnotationAccess;
-import org.eclipse.jface.text.source.IAnnotationModel;
-import org.eclipse.jface.text.source.IOverviewRuler;
-import org.eclipse.jface.text.source.ISharedTextColors;
-import org.eclipse.jface.text.source.ISourceViewer;
-import org.eclipse.jface.text.source.IVerticalRuler;
-import org.eclipse.jface.text.source.OverviewRuler;
-import org.eclipse.jface.text.source.SourceViewer;
-import org.eclipse.jface.text.source.VerticalRuler;
-import org.eclipse.jface.util.Assert;
-import org.eclipse.jface.util.IPropertyChangeListener;
-import org.eclipse.jface.util.PropertyChangeEvent;
-import org.eclipse.jface.viewers.ISelection;
-import org.eclipse.jface.viewers.IStructuredSelection;
-import org.eclipse.jface.viewers.StructuredSelection;
-import org.eclipse.jface.viewers.Viewer;
-import org.eclipse.swt.custom.StyleRange;
-import org.eclipse.swt.custom.StyledText;
-import org.eclipse.swt.events.MouseEvent;
-import org.eclipse.swt.events.MouseListener;
-import org.eclipse.swt.graphics.Point;
-import org.eclipse.swt.widgets.Composite;
-import org.eclipse.swt.widgets.Control;
-import org.eclipse.swt.widgets.Display;
-import org.eclipse.swt.widgets.Menu;
-import org.eclipse.ui.IEditorInput;
-import org.eclipse.ui.INullSelectionListener;
-import org.eclipse.ui.ISelectionListener;
-import org.eclipse.ui.IViewPart;
-import org.eclipse.ui.IWorkbenchActionConstants;
-import org.eclipse.ui.IWorkbenchPart;
-import org.eclipse.ui.editors.text.EditorsUI;
-import org.eclipse.ui.texteditor.AbstractDecoratedTextEditorPreferenceConstants;
-import org.eclipse.ui.texteditor.AnnotationPreference;
-import org.eclipse.ui.texteditor.DefaultMarkerAnnotationAccess;
-import org.eclipse.ui.texteditor.DefaultRangeIndicator;
-import org.eclipse.ui.texteditor.ITextEditorActionConstants;
-import org.eclipse.ui.texteditor.IUpdate;
-import org.eclipse.ui.texteditor.MarkerAnnotationPreferences;
-import org.eclipse.ui.texteditor.SourceViewerDecorationSupport;
-
-/**
- * This view shows disassembly for a particular stack frame.
- */
-public class DisassemblyView extends AbstractDebugEventHandlerView
- implements ISelectionListener,
- INullSelectionListener,
- IPropertyChangeListener,
- IDebugExceptionHandler,
- IDisassemblyListener {
-
- /**
- * Creates and returns the listener on this view's context menus.
- *
- * @return the menu listener
- */
- protected final IMenuListener getContextMenuListener() {
- if ( fMenuListener == null ) {
- fMenuListener = new IMenuListener() {
-
- public void menuAboutToShow( IMenuManager menu ) {
- String id = menu.getId();
- if ( getRulerContextMenuId().equals( id ) ) {
- setFocus();
- rulerContextMenuAboutToShow( menu );
- }
- else if ( getViewContextMenuId().equals( id ) ) {
- setFocus();
- viewContextMenuAboutToShow( menu );
- }
- }
- };
- }
- return fMenuListener;
- }
-
- /**
- * Creates and returns the listener on this editor's vertical ruler.
- *
- * @return the mouse listener
- */
- protected final MouseListener getRulerMouseListener() {
- if ( fMouseListener == null ) {
- fMouseListener = new MouseListener() {
-
- private boolean fDoubleClicked = false;
-
- private void triggerAction( String actionID ) {
- IAction action = getAction( actionID );
- if ( action != null ) {
- if ( action instanceof IUpdate )
- ((IUpdate)action).update();
- if ( action.isEnabled() )
- action.run();
- }
- }
-
- public void mouseUp( MouseEvent e ) {
- setFocus();
- if ( 1 == e.button && !fDoubleClicked )
- triggerAction( ITextEditorActionConstants.RULER_CLICK );
- fDoubleClicked = false;
- }
-
- public void mouseDoubleClick( MouseEvent e ) {
- if ( 1 == e.button ) {
- fDoubleClicked = true;
- triggerAction( IInternalCDebugUIConstants.ACTION_TOGGLE_BREAKPOINT );
- }
- }
-
- public void mouseDown( MouseEvent e ) {
- StyledText text = getSourceViewer().getTextWidget();
- if ( text != null && !text.isDisposed() ) {
- Display display = text.getDisplay();
- Point location = display.getCursorLocation();
- getRulerContextMenu().setLocation( location.x, location.y );
- }
- }
- };
- }
- return fMouseListener;
- }
-
- /**
- * The width of the vertical ruler.
- */
- private final static int VERTICAL_RULER_WIDTH = 12;
-
- /**
- * Preference key for highlighting current line.
- */
- private final static String CURRENT_LINE = AbstractDecoratedTextEditorPreferenceConstants.EDITOR_CURRENT_LINE;
-
- /**
- * Preference key for highlight color of current line.
- */
- private final static String CURRENT_LINE_COLOR = AbstractDecoratedTextEditorPreferenceConstants.EDITOR_CURRENT_LINE_COLOR;
-
- /**
- * The view's context menu id.
- */
- private String fViewContextMenuId;
-
- /**
- * The ruler's context menu id.
- */
- private String fRulerContextMenuId;
-
- /**
- * The vertical ruler.
- */
- private IVerticalRuler fVerticalRuler;
-
- /**
- * The overview ruler.
- */
- private IOverviewRuler fOverviewRuler;
-
- /**
- * The last stack frame for which the disassembly storage has
- * been requested.
- */
- protected ICStackFrame fLastStackFrame = null;
-
- /**
- * Helper for managing the decoration support of this view's viewer.
- */
- private SourceViewerDecorationSupport fSourceViewerDecorationSupport;
-
- /**
- * Helper for accessing annotation from the perspective of this view.
- */
- private IAnnotationAccess fAnnotationAccess;
-
- /**
- * The annotation preferences.
- */
- private MarkerAnnotationPreferences fAnnotationPreferences;
-
- /**
- * Disassembly document provider.
- */
- private DisassemblyDocumentProvider fDocumentProvider;
-
- /**
- * Current instruction pointer nnotation.
- */
- private DisassemblyInstructionPointerAnnotation fInstrPointerAnnotation;
-
- /**
- * Context menu listener.
- */
- private IMenuListener fMenuListener;
-
- /**
- * Vertical ruler mouse listener.
- */
- private MouseListener fMouseListener;
-
- /**
- * The ruler context menu to be disposed.
- */
- private Menu fRulerContextMenu;
-
- /**
- * The text context menu to be disposed.
- */
- private Menu fTextContextMenu;
-
- /**
- * The actions registered with the view.
- */
- private Map fActions = new HashMap( 10 );
-
- /**
- * Constructor for DisassemblyView.
- */
- public DisassemblyView() {
- super();
- setViewContextMenuId( "#DisassemblyViewContext" ); //$NON-NLS-1$
- setRulerContextMenuId( "#DisassemblyEditorRulerContext" ); //$NON-NLS-1$
- fAnnotationPreferences = new MarkerAnnotationPreferences();
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.debug.ui.AbstractDebugView#createViewer(org.eclipse.swt.widgets.Composite)
- */
- protected Viewer createViewer( Composite parent ) {
- fVerticalRuler = createVerticalRuler();
- fOverviewRuler = createOverviewRuler( getSharedColors() );
-
- SourceViewer viewer = createSourceViewer( parent, fVerticalRuler, getOverviewRuler() );
- viewer.configure( new DisassemblyViewerConfiguration() );
- getSourceViewerDecorationSupport( viewer );
-
- getEditorPreferenceStore().addPropertyChangeListener( this );
- CDebugUIPlugin.getDefault().getPreferenceStore().addPropertyChangeListener( this );
- getSite().getPage().addSelectionListener( IDebugUIConstants.ID_DEBUG_VIEW, this );
- getSite().setSelectionProvider( viewer.getSelectionProvider() );
- setEventHandler( createEventHandler() );
-
- viewer.setDocument( getDocumentProvider().getDocument( DisassemblyEditorInput.EMPTY_EDITOR_INPUT ), getDocumentProvider().getAnnotationModel( null ) );
-
- resetViewerInput();
-
- return viewer;
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.debug.ui.AbstractDebugView#createActions()
- */
- protected void createActions() {
- IAction action;
- IVerticalRuler ruler = getVerticalRuler();
- action= new ToggleBreakpointRulerAction( this, ruler );
- setAction( IInternalCDebugUIConstants.ACTION_TOGGLE_BREAKPOINT, action );
- action= new EnableDisableBreakpointRulerAction( this, ruler );
- setAction( IInternalCDebugUIConstants.ACTION_ENABLE_DISABLE_BREAKPOINT, action );
- action= new CBreakpointPropertiesRulerAction( this, ruler );
- setAction( IInternalCDebugUIConstants.ACTION_BREAKPOINT_PROPERTIES, action );
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.debug.ui.AbstractDebugView#getHelpContextId()
- */
- protected String getHelpContextId() {
- return ICDebugHelpContextIds.DISASSEMBLY_VIEW;
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.debug.ui.AbstractDebugView#fillContextMenu(org.eclipse.jface.action.IMenuManager)
- */
- protected void fillContextMenu( IMenuManager menu ) {
- menu.add( new Separator( IWorkbenchActionConstants.MB_ADDITIONS ) );
- updateObjects();
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.debug.ui.AbstractDebugView#configureToolBar(org.eclipse.jface.action.IToolBarManager)
- */
- protected void configureToolBar( IToolBarManager tbm ) {
- // TODO Auto-generated method stub
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.ui.ISelectionListener#selectionChanged(org.eclipse.ui.IWorkbenchPart, org.eclipse.jface.viewers.ISelection)
- */
- public void selectionChanged( IWorkbenchPart part, ISelection selection ) {
- if ( !isAvailable() || !isVisible() )
- return;
- if ( selection == null )
- resetViewerInput();
- else if ( selection instanceof IStructuredSelection )
- computeInput( (IStructuredSelection)selection );
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.jface.util.IPropertyChangeListener#propertyChange(org.eclipse.jface.util.PropertyChangeEvent)
- */
- public void propertyChange( PropertyChangeEvent event ) {
- String propertyName = event.getProperty();
- if ( IInternalCDebugUIConstants.DISASSEMBLY_SOURCE_LINE_COLOR.equals( propertyName ) ) {
- IEditorInput input = getInput();
- if ( input instanceof DisassemblyEditorInput )
- getSourceViewer().changeTextPresentation( createTextPresentation( ((DisassemblyEditorInput)input).getSourceRegions() ), true );
- }
- else if ( IInternalCDebugUIConstants.DISASSEMBLY_FONT.equals( propertyName ) ) {
- getSourceViewer().getTextWidget().setFont( JFaceResources.getFont( IInternalCDebugUIConstants.DISASSEMBLY_FONT ) );
- }
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.cdt.debug.internal.ui.views.IDebugExceptionHandler#handleException(org.eclipse.debug.core.DebugException)
- */
- public void handleException( DebugException e ) {
- showMessage( e.getMessage() );
- }
-
- /**
- * Creates the vertical ruler to be used by this view.
- *
- * @return the vertical ruler
- */
- protected IVerticalRuler createVerticalRuler() {
- IVerticalRuler ruler = new VerticalRuler( VERTICAL_RULER_WIDTH, getAnnotationAccess() );
- return ruler;
- }
-
- private IOverviewRuler createOverviewRuler( ISharedTextColors sharedColors ) {
- IOverviewRuler ruler = new OverviewRuler( getAnnotationAccess(), VERTICAL_RULER_WIDTH, sharedColors );
- Iterator e = fAnnotationPreferences.getAnnotationPreferences().iterator();
- while( e.hasNext() ) {
- AnnotationPreference preference = (AnnotationPreference)e.next();
- if ( preference.contributesToHeader() )
- ruler.addHeaderAnnotationType( preference.getAnnotationType() );
- }
- return ruler;
- }
-
- /**
- * Creates the source viewer to be used by this view.
- *
- * @param parent the parent control
- * @param ruler the vertical ruler
- * @param styles style bits
- * @return the source viewer
- */
- private SourceViewer createSourceViewer( Composite parent, IVerticalRuler vertRuler, IOverviewRuler ovRuler ) {
- DisassemblyViewer viewer = new DisassemblyViewer( parent, vertRuler, ovRuler );
- viewer.setRangeIndicator( new DefaultRangeIndicator() );
- JFaceResources.getFontRegistry().addListener( this );
- JFaceResources.getColorRegistry().addListener( this );
- return viewer;
- }
-
- protected SourceViewer getSourceViewer() {
- return (SourceViewer)getViewer();
- }
-
- /**
- * Creates this view's event handler.
- *
- * @return an event handler
- */
- protected AbstractDebugEventHandler createEventHandler() {
- return new DisassemblyViewEventHandler( this );
- }
-
- protected void computeInput( IStructuredSelection ssel ) {
- SourceViewer viewer = getSourceViewer();
- if ( viewer == null )
- return;
-
- fLastStackFrame = null;
- if ( ssel != null && ssel.size() == 1 ) {
- Object element = ssel.getFirstElement();
- if ( element instanceof ICStackFrame ) {
- fLastStackFrame = (ICStackFrame)element;
- IEditorInput input = getInput();
- if ( input instanceof DisassemblyEditorInput &&
- !((DisassemblyEditorInput)input).contains( (ICStackFrame)element ) )
- setViewerInput( DisassemblyEditorInput.PENDING_EDITOR_INPUT );
- computeInput( input, (ICStackFrame)element, this );
- return;
- }
- }
- resetViewerInput();
- }
-
- protected void setViewerInput( IEditorInput input ) {
- SourceViewer viewer = getSourceViewer();
- if ( viewer == null )
- return;
-
- if ( input == null )
- input = DisassemblyEditorInput.EMPTY_EDITOR_INPUT;
-
- IEditorInput current = getInput();
- if ( current != null && current.equals( input ) ) {
- updateObjects();
- return;
- }
-
- setInput( input );
- showViewer();
- try {
- getDocumentProvider().connect( input );
- }
- catch( CoreException e ) {
- // never happens
- }
- getSourceViewer().setDocument( getDocumentProvider().getDocument( input ),
- getDocumentProvider().getAnnotationModel( input ) );
- if ( input instanceof DisassemblyEditorInput ) {
- // Workaround for bug #69728
- IRegion[] sourceRegions = ((DisassemblyEditorInput)input).getSourceRegions();
- if ( sourceRegions.length > 0 ) {
- getSourceViewer().changeTextPresentation( createTextPresentation( sourceRegions ), true );
- }
- }
- updateObjects();
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.ui.IWorkbenchPart#dispose()
- */
- public void dispose() {
- getSite().getPage().removeSelectionListener( IDebugUIConstants.ID_DEBUG_VIEW, this );
- JFaceResources.getFontRegistry().removeListener( this );
- JFaceResources.getColorRegistry().removeListener( this );
- getEditorPreferenceStore().removePropertyChangeListener( this );
- CDebugUIPlugin.getDefault().getPreferenceStore().removePropertyChangeListener( this );
-
- if ( fSourceViewerDecorationSupport != null ) {
- fSourceViewerDecorationSupport.dispose();
- fSourceViewerDecorationSupport = null;
- }
-
- if ( fDocumentProvider != null ) {
- fDocumentProvider.dispose();
- fDocumentProvider = null;
- }
-
- if ( fActions != null ) {
- fActions.clear();
- fActions = null;
- }
-
- super.dispose();
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.cdt.debug.internal.ui.views.disassembly.IDisassemblyListener#inputComputed(org.eclipse.cdt.debug.core.model.ICStackFrame, org.eclipse.core.runtime.IStatus, org.eclipse.ui.IEditorInput)
- */
- public void inputComputed( final ICStackFrame frame, final IStatus status, final IEditorInput input ) {
- Runnable runnable = new Runnable() {
- public void run() {
- if ( isAvailable() ) {
- if ( fLastStackFrame != null && fLastStackFrame.equals( frame ) ) {
- fLastStackFrame = null;
- if ( !status.isOK() ) {
- setInput( null );
- getViewer().setInput( null );
- showMessage( status.getMessage() );
- return;
- }
- }
- if ( input != null ) {
- setViewerInput( input );
- selectAndReveal( frame, input );
- }
- else {
- resetViewerInput();
- }
- }
- }
- };
- asyncExec( runnable );
- }
-
- /**
- * Asynchronousy computes the editor input for the given stack frame.
- *
- * @param current the current editor input
- * @param frame the stack frame for which the input is required
- * @param listener the listener to be notified when the computation is completed
- */
- public void computeInput( final Object current,
- final ICStackFrame frame,
- final IDisassemblyListener listener ) {
- Runnable runnable = new Runnable() {
- public void run() {
- IStatus status = Status.OK_STATUS;
- IEditorInput input = null;
- if ( current instanceof DisassemblyEditorInput &&
- ((DisassemblyEditorInput)current).contains( frame ) ) {
- input = (IEditorInput)current;
- }
- else {
- try {
- input = DisassemblyEditorInput.create( frame );
- }
- catch( DebugException e ) {
- status = new Status( IStatus.ERROR,
- CDebugUIPlugin.getUniqueIdentifier(),
- 0,
- e.getMessage(),
- null );
- }
-
- }
- listener.inputComputed( frame, status, input );
- }
- };
- DebugPlugin.getDefault().asyncExec( runnable );
- }
-
- protected void selectAndReveal( ICStackFrame frame, IEditorInput input ) {
- IRegion region = getLineInformation( frame, input );
- if ( region != null ) {
- int start = region.getOffset();
- int length = region.getLength();
- StyledText widget = getSourceViewer().getTextWidget();
- widget.setRedraw( false );
- {
- getSourceViewer().revealRange( start, length );
- getSourceViewer().setSelectedRange( start, 0 );
- }
- widget.setRedraw( true );
- setInstructionPointer( frame, start, length, getDocumentProvider().getAnnotationModel( input ) );
- }
- }
-
- /**
- * Returns the line information for the given line in the given editor
- */
- private IRegion getLineInformation( ICStackFrame frame, IEditorInput input ) {
- if ( input instanceof DisassemblyEditorInput ) {
- int line = ((DisassemblyEditorInput)input).getInstructionLine( frame.getAddress() );
- if ( line > 0 ) {
- try {
- return getSourceViewer().getDocument().getLineInformation( --line );
- }
- catch( BadLocationException e1 ) {
- }
- }
- }
- return null;
- }
-
- public IEditorInput getInput() {
- if ( getSourceViewer() != null ) {
- Object input = getSourceViewer().getInput();
- if ( input instanceof IEditorInput )
- return (IEditorInput)input;
- }
- return null;
- }
-
- protected void setInput( IEditorInput input ) {
- getSourceViewer().setInput( input );
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.ui.IWorkbenchPart#createPartControl(org.eclipse.swt.widgets.Composite)
- */
- public void createPartControl( Composite parent ) {
- super.createPartControl( parent );
- createViewContextMenu();
- createRulerContextMenu();
- if ( fSourceViewerDecorationSupport != null )
- fSourceViewerDecorationSupport.install( getEditorPreferenceStore() );
- }
-
- /**
- * Returns the source viewer decoration support.
- *
- * @return the source viewer decoration support
- */
- protected SourceViewerDecorationSupport getSourceViewerDecorationSupport( ISourceViewer viewer ) {
- if ( fSourceViewerDecorationSupport == null ) {
- fSourceViewerDecorationSupport = new SourceViewerDecorationSupport( viewer, getOverviewRuler(), getAnnotationAccess(), getSharedColors() );
- configureSourceViewerDecorationSupport( fSourceViewerDecorationSupport );
- }
- return fSourceViewerDecorationSupport;
- }
-
- /**
- * Creates the annotation access for this view.
- *
- * @return the created annotation access
- */
- private IAnnotationAccess createAnnotationAccess() {
- return new DefaultMarkerAnnotationAccess();
- }
-
- /**
- * Configures the decoration support for this view's the source viewer.
- */
- private void configureSourceViewerDecorationSupport( SourceViewerDecorationSupport support ) {
- Iterator e = fAnnotationPreferences.getAnnotationPreferences().iterator();
- while( e.hasNext() )
- support.setAnnotationPreference( (AnnotationPreference)e.next() );
- support.setCursorLinePainterPreferenceKeys( CURRENT_LINE, CURRENT_LINE_COLOR );
- }
-
- /**
- * Returns the annotation access.
- *
- * @return the annotation access
- */
- private IAnnotationAccess getAnnotationAccess() {
- if ( fAnnotationAccess == null )
- fAnnotationAccess = createAnnotationAccess();
- return fAnnotationAccess;
- }
-
- private ISharedTextColors getSharedColors() {
- ISharedTextColors sharedColors = CDebugUIPlugin.getDefault().getSharedTextColors();
- return sharedColors;
- }
-
- private IPreferenceStore getEditorPreferenceStore() {
- return EditorsUI.getPreferenceStore();
- }
-
- public DisassemblyDocumentProvider getDocumentProvider() {
- if ( this.fDocumentProvider == null )
- this.fDocumentProvider = new DisassemblyDocumentProvider();
- return this.fDocumentProvider;
- }
-
- protected void setInstructionPointer( ICStackFrame frame, int start, int length, IAnnotationModel model ) {
- Assert.isNotNull( model );
- boolean tos = isTopStackFrame( frame );
- DisassemblyInstructionPointerAnnotation instPtrAnnotation = new DisassemblyInstructionPointerAnnotation( frame, tos );
- Position position = new Position( start, length );
- DisassemblyInstructionPointerAnnotation oldPointer = getCurrentInstructionPointer();
- if ( oldPointer != null )
- model.removeAnnotation( oldPointer );
- model.addAnnotation( instPtrAnnotation, position );
- setCurrentInstructionPointer( instPtrAnnotation );
- }
-
- private boolean isTopStackFrame( ICStackFrame stackFrame ) {
- IThread thread = stackFrame.getThread();
- boolean tos = false;
- try {
- tos = stackFrame.equals( thread.getTopStackFrame() );
- }
- catch( DebugException e ) {
- }
- return tos;
- }
-
- private DisassemblyInstructionPointerAnnotation getCurrentInstructionPointer() {
- return fInstrPointerAnnotation;
- }
-
- private void setCurrentInstructionPointer( DisassemblyInstructionPointerAnnotation instrPointer ) {
- fInstrPointerAnnotation = instrPointer;
- }
-
- protected void removeCurrentInstructionPointer( IAnnotationModel model ) {
- Assert.isNotNull( model );
- DisassemblyInstructionPointerAnnotation instrPointer = getCurrentInstructionPointer();
- if ( instrPointer != null ) {
- model.removeAnnotation( instrPointer );
- setCurrentInstructionPointer( null );
- }
- }
-
- protected void resetViewerInput() {
- SourceViewer viewer = getSourceViewer();
- if ( viewer == null )
- return;
-
- IEditorInput input = DisassemblyEditorInput.EMPTY_EDITOR_INPUT;
- setInput( input );
- showViewer();
- try {
- getDocumentProvider().connect( input );
- }
- catch( CoreException e ) {
- // never happens
- }
- IAnnotationModel model = getDocumentProvider().getAnnotationModel( input );
- getSourceViewer().setDocument( getDocumentProvider().getDocument( input ), model );
- removeCurrentInstructionPointer( model );
-
- updateObjects();
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.debug.ui.AbstractDebugView#becomesHidden()
- */
- protected void becomesHidden() {
- selectionChanged( null, new StructuredSelection() );
- super.becomesHidden();
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.debug.ui.AbstractDebugView#becomesVisible()
- */
- protected void becomesVisible() {
- super.becomesVisible();
- IViewPart part = getSite().getPage().findView( IDebugUIConstants.ID_DEBUG_VIEW );
- if ( part != null ) {
- ISelection selection = getSite().getPage().getSelection( IDebugUIConstants.ID_DEBUG_VIEW );
- selectionChanged( part, selection );
- }
- }
-
- /**
- * Returns the overview ruler.
- *
- * @return the overview ruler
- */
- private IOverviewRuler getOverviewRuler() {
- if ( fOverviewRuler == null )
- fOverviewRuler = createOverviewRuler( getSharedColors() );
- return fOverviewRuler;
- }
-
- protected String getRulerContextMenuId() {
- return this.fRulerContextMenuId;
- }
-
- private void setRulerContextMenuId( String rulerContextMenuId ) {
- Assert.isNotNull( rulerContextMenuId );
- this.fRulerContextMenuId = rulerContextMenuId;
- }
-
- protected String getViewContextMenuId() {
- return this.fViewContextMenuId;
- }
-
- private void setViewContextMenuId( String viewContextMenuId ) {
- Assert.isNotNull( viewContextMenuId );
- this.fViewContextMenuId = viewContextMenuId;
- }
-
- /**
- * Sets up the ruler context menu before it is made visible.
- *
- * @param menu the menu
- */
- protected void rulerContextMenuAboutToShow( IMenuManager menu ) {
- menu.add( new Separator( ITextEditorActionConstants.GROUP_REST ) );
- menu.add( new Separator( IWorkbenchActionConstants.MB_ADDITIONS ) );
- addAction( menu, IInternalCDebugUIConstants.ACTION_TOGGLE_BREAKPOINT );
- addAction( menu, IInternalCDebugUIConstants.ACTION_ENABLE_DISABLE_BREAKPOINT );
- addAction( menu, IInternalCDebugUIConstants.ACTION_BREAKPOINT_PROPERTIES );
- }
-
- /**
- * Sets up the view context menu before it is made visible.
- *
- * @param menu the menu
- */
- protected void viewContextMenuAboutToShow( IMenuManager menu ) {
- menu.add( new Separator( ITextEditorActionConstants.GROUP_REST ) );
- menu.add( new Separator( IWorkbenchActionConstants.MB_ADDITIONS ) );
- }
-
- /**
- * Convenience method to add the action installed under the given action id to the specified group of the menu.
- * @param menu the menu to add the action to
- * @param group the group in the menu
- * @param actionId the id of the action to add
- */
- protected final void addAction( IMenuManager menu, String group, String actionId ) {
- IAction action = getAction( actionId );
- if ( action != null ) {
- if ( action instanceof IUpdate )
- ((IUpdate)action).update();
- IMenuManager subMenu = menu.findMenuUsingPath( group );
- if ( subMenu != null )
- subMenu.add( action );
- else
- menu.appendToGroup( group, action );
- }
- }
-
- /**
- * Convenience method to add the action installed under the given action id to the given menu.
- * @param menu the menu to add the action to
- * @param actionId the id of the action to be added
- */
- protected final void addAction( IMenuManager menu, String actionId ) {
- IAction action = getAction( actionId );
- if ( action != null ) {
- if ( action instanceof IUpdate )
- ((IUpdate)action).update();
- menu.add( action );
- }
- }
-
- protected Menu getRulerContextMenu() {
- return this.fRulerContextMenu;
- }
-
- private void setRulerContextMenu( Menu rulerContextMenu ) {
- this.fRulerContextMenu = rulerContextMenu;
- }
-
- private void createViewContextMenu() {
- String id = getViewContextMenuId();
- MenuManager manager = new MenuManager( id, id );
- manager.setRemoveAllWhenShown( true );
- manager.addMenuListener( getContextMenuListener() );
- StyledText styledText = getSourceViewer().getTextWidget();
- setTextContextMenu( manager.createContextMenu( styledText ) );
- styledText.setMenu( getTextContextMenu() );
-
- // register the context menu such that other plugins may contribute to it
- if ( getSite() != null ) {
- getSite().registerContextMenu( getViewContextMenuId(), manager, getSourceViewer() );
- }
- }
-
- private void createRulerContextMenu() {
- String id = getRulerContextMenuId();
- MenuManager manager = new MenuManager( id, id );
- manager.setRemoveAllWhenShown( true );
- manager.addMenuListener( getContextMenuListener() );
- Control rulerControl = fVerticalRuler.getControl();
- setRulerContextMenu( manager.createContextMenu( rulerControl ) );
- rulerControl.setMenu( getRulerContextMenu() );
- rulerControl.addMouseListener( getRulerMouseListener() );
- }
-
- private Menu getTextContextMenu() {
- return this.fTextContextMenu;
- }
-
- private void setTextContextMenu( Menu textContextMenu ) {
- this.fTextContextMenu = textContextMenu;
- }
-
- public void setAction( String actionID, IAction action ) {
- Assert.isNotNull( actionID );
- if ( action == null ) {
- action = (IAction)fActions.remove( actionID );
- }
- else {
- fActions.put( actionID, action );
- }
- }
-
- public IAction getAction( String actionID ) {
- Assert.isNotNull( actionID );
- return (IAction)fActions.get( actionID );
- }
-
- private IVerticalRuler getVerticalRuler() {
- return this.fVerticalRuler;
- }
-
- private TextPresentation createTextPresentation( IRegion[] regions ) {
- TextPresentation p = new TextPresentation();
- for ( int i = 0; i < regions.length; ++i ) {
- p.addStyleRange( new StyleRange( regions[i].getOffset(),
- regions[i].getLength(),
- CDebugUIPlugin.getPreferenceColor( IInternalCDebugUIConstants.DISASSEMBLY_SOURCE_LINE_COLOR ),
- null ) );
- }
- return p;
- }
-
- protected void refresh( IDisassembly disassembly ) {
- if ( !(getInput() instanceof DisassemblyEditorInput) || !disassembly.equals( ((DisassemblyEditorInput)getInput()).getDisassembly() ) )
- return;
- resetViewerInput();
- if ( !isAvailable() || !isVisible() )
- return;
- IAdaptable context = DebugUITools.getDebugContext();
- if ( context instanceof ICStackFrame ) {
- fLastStackFrame = (ICStackFrame)context;
- IEditorInput input = getInput();
- if ( input instanceof DisassemblyEditorInput )
- setViewerInput( DisassemblyEditorInput.PENDING_EDITOR_INPUT );
- computeInput( input, (ICStackFrame)context, this );
- }
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.ui.part.PageBookView#partActivated(org.eclipse.ui.IWorkbenchPart)
- */
- public void partActivated( IWorkbenchPart part ) {
- if ( this.equals( part ) ) {
- CDebugCorePlugin.getDefault().getPluginPreferences().setValue( ICDebugConstants.PREF_INSTRUCTION_STEP_MODE_ON, true );
- }
- super.partActivated( part );
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.ui.part.PageBookView#partDeactivated(org.eclipse.ui.IWorkbenchPart)
- */
- public void partDeactivated( IWorkbenchPart part ) {
- if ( this.equals( part ) ) {
- CDebugCorePlugin.getDefault().getPluginPreferences().setValue( ICDebugConstants.PREF_INSTRUCTION_STEP_MODE_ON, false );
- }
- super.partDeactivated( part );
- }
-}
diff --git a/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/views/disassembly/DisassemblyViewEventHandler.java b/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/views/disassembly/DisassemblyViewEventHandler.java
deleted file mode 100644
index 87ea66e53e3..00000000000
--- a/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/views/disassembly/DisassemblyViewEventHandler.java
+++ /dev/null
@@ -1,85 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.internal.ui.views.disassembly;
-
-import org.eclipse.cdt.debug.core.model.IDisassembly;
-import org.eclipse.cdt.debug.internal.ui.views.AbstractDebugEventHandler;
-import org.eclipse.debug.core.DebugEvent;
-import org.eclipse.debug.ui.AbstractDebugView;
-
-
-/**
- * Updates the disassembly view.
- */
-public class DisassemblyViewEventHandler extends AbstractDebugEventHandler {
-
- /**
- * Constructor for DisassemblyViewEventHandler.
- *
- * @param view
- */
- public DisassemblyViewEventHandler( AbstractDebugView view ) {
- super( view );
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.cdt.debug.internal.ui.views.AbstractDebugEventHandler#doHandleDebugEvents(org.eclipse.debug.core.DebugEvent[])
- */
- protected void doHandleDebugEvents( DebugEvent[] events ) {
- for ( int i = 0; i < events.length; i++ ) {
- DebugEvent event = events[i];
- switch( event.getKind() ) {
- case DebugEvent.TERMINATE:
- handleTerminateEvent( events[i] );
- break;
- case DebugEvent.SUSPEND:
- handleSuspendEvent( events[i] );
- break;
- case DebugEvent.RESUME:
- handleResumeEvent( events[i] );
- break;
- case DebugEvent.CHANGE:
- handleChangeEvent( events[i] );
- break;
- }
- }
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.cdt.debug.internal.ui.views.AbstractDebugEventHandler#refresh()
- */
- public void refresh() {
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.cdt.debug.internal.ui.views.AbstractDebugEventHandler#refresh(java.lang.Object)
- */
- protected void refresh( Object element ) {
- }
-
- private void handleTerminateEvent( DebugEvent event ) {
- }
-
- private void handleResumeEvent( DebugEvent event ) {
- }
-
- private void handleSuspendEvent( DebugEvent event ) {
- }
-
- private void handleChangeEvent( DebugEvent event ) {
- if ( event.getSource() instanceof IDisassembly )
- getDisassemblyView().refresh( (IDisassembly)event.getSource() );
- }
-
- protected DisassemblyView getDisassemblyView() {
- return (DisassemblyView)getView();
- }
-}
diff --git a/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/views/disassembly/DisassemblyViewer.java b/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/views/disassembly/DisassemblyViewer.java
deleted file mode 100644
index 51bb66fba0a..00000000000
--- a/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/views/disassembly/DisassemblyViewer.java
+++ /dev/null
@@ -1,60 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.internal.ui.views.disassembly;
-
-import org.eclipse.cdt.debug.internal.ui.IInternalCDebugUIConstants;
-import org.eclipse.jface.resource.JFaceResources;
-import org.eclipse.jface.text.source.IOverviewRuler;
-import org.eclipse.jface.text.source.IVerticalRuler;
-import org.eclipse.jface.text.source.SourceViewer;
-import org.eclipse.swt.SWT;
-import org.eclipse.swt.layout.GridData;
-import org.eclipse.swt.widgets.Composite;
-
-/**
- * The disassembly viewer.
- */
-public class DisassemblyViewer extends SourceViewer {
-
- /**
- * The current input.
- */
- private Object fInput;
-
- /**
- * Constructor for DisassemblyViewer.
- *
- * @param parent
- * @param ruler
- * @param styles
- */
- public DisassemblyViewer( Composite parent, IVerticalRuler vertRuler, IOverviewRuler ovRuler ) {
- super( parent, vertRuler, ovRuler, true, SWT.V_SCROLL | SWT.H_SCROLL | SWT.MULTI | SWT.BORDER | SWT.FULL_SELECTION );
- getTextWidget().setFont( JFaceResources.getFont( IInternalCDebugUIConstants.DISASSEMBLY_FONT ) );
- setEditable( false );
- GridData gd = new GridData( GridData.FILL_BOTH );
- getControl().setLayoutData( gd );
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.jface.viewers.IInputProvider#getInput()
- */
- public Object getInput() {
- return fInput;
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.jface.viewers.Viewer#setInput(java.lang.Object)
- */
- public void setInput( Object input ) {
- fInput = input;
- }
-}
diff --git a/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/views/disassembly/DisassemblyViewerConfiguration.java b/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/views/disassembly/DisassemblyViewerConfiguration.java
deleted file mode 100644
index 72f4fd9d84a..00000000000
--- a/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/views/disassembly/DisassemblyViewerConfiguration.java
+++ /dev/null
@@ -1,56 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.internal.ui.views.disassembly;
-
-import org.eclipse.cdt.debug.internal.ui.HTMLTextPresenter;
-import org.eclipse.jface.text.DefaultInformationControl;
-import org.eclipse.jface.text.IInformationControl;
-import org.eclipse.jface.text.IInformationControlCreator;
-import org.eclipse.jface.text.source.IAnnotationHover;
-import org.eclipse.jface.text.source.ISourceViewer;
-import org.eclipse.jface.text.source.SourceViewerConfiguration;
-import org.eclipse.swt.SWT;
-import org.eclipse.swt.widgets.Shell;
-
-/**
- * Viewer configuration for disassembly.
- */
-public class DisassemblyViewerConfiguration extends SourceViewerConfiguration {
-
- /*
- * (non-Javadoc)
- *
- * @see org.eclipse.jface.text.source.SourceViewerConfiguration#getAnnotationHover(org.eclipse.jface.text.source.ISourceViewer)
- */
- public IAnnotationHover getAnnotationHover( ISourceViewer sourceViewer ) {
- return new DisassemblyAnnotationHover();
- }
-
- /*
- * (non-Javadoc)
- *
- * @see org.eclipse.jface.text.source.SourceViewerConfiguration#getInformationControlCreator(org.eclipse.jface.text.source.ISourceViewer)
- */
- public IInformationControlCreator getInformationControlCreator( ISourceViewer sourceViewer ) {
- return getInformationControlCreator( sourceViewer, true );
- }
-
- public IInformationControlCreator getInformationControlCreator( ISourceViewer sourceViewer, final boolean cutDown ) {
- return new IInformationControlCreator() {
-
- public IInformationControl createInformationControl( Shell parent ) {
- int style = cutDown ? SWT.NONE : (SWT.V_SCROLL | SWT.H_SCROLL);
- return new DefaultInformationControl( parent, style, new HTMLTextPresenter( cutDown ) );
- // return new HoverBrowserControl(parent);
- }
- };
- }
-}
diff --git a/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/views/disassembly/IDisassemblyListener.java b/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/views/disassembly/IDisassemblyListener.java
deleted file mode 100644
index e1e643449f5..00000000000
--- a/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/views/disassembly/IDisassemblyListener.java
+++ /dev/null
@@ -1,32 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.internal.ui.views.disassembly;
-
-import org.eclipse.cdt.debug.core.model.ICStackFrame;
-import org.eclipse.core.runtime.IStatus;
-import org.eclipse.ui.IEditorInput;
-
-/**
- * A disassembly listener is notified when the storage
- * retrieval operation for given stack frame is completed.
- */
-public interface IDisassemblyListener {
-
- /**
- * Notifies this listener that the input is computed.
- *
- * @param frame the stack frame.
- * @param status the result status.
- * @param input the resulting editor input.
- * <code>null</code> if status is not OK.
- */
- public void inputComputed( ICStackFrame frame, IStatus status, IEditorInput input );
-}
diff --git a/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/views/memory/AddMemoryBlockDialog.java b/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/views/memory/AddMemoryBlockDialog.java
deleted file mode 100644
index d295480ffc2..00000000000
--- a/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/views/memory/AddMemoryBlockDialog.java
+++ /dev/null
@@ -1,266 +0,0 @@
-/*******************************************************************************
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * Freescale Semiconductor - initial API and implementation
- *
- *******************************************************************************/
-
-package org.eclipse.cdt.debug.internal.ui.views.memory;
-
-import java.util.ArrayList;
-
-import org.eclipse.cdt.debug.internal.core.CMemoryBlockRetrievalExtension;
-import org.eclipse.debug.core.model.IMemoryBlockRetrieval;
-import org.eclipse.debug.ui.IDebugUIConstants;
-import org.eclipse.jface.dialogs.TrayDialog;
-import org.eclipse.swt.SWT;
-import org.eclipse.swt.events.ModifyEvent;
-import org.eclipse.swt.events.ModifyListener;
-import org.eclipse.swt.events.SelectionEvent;
-import org.eclipse.swt.events.SelectionListener;
-import org.eclipse.swt.events.VerifyEvent;
-import org.eclipse.swt.events.VerifyListener;
-import org.eclipse.swt.graphics.FontMetrics;
-import org.eclipse.swt.graphics.GC;
-import org.eclipse.swt.layout.GridData;
-import org.eclipse.swt.layout.GridLayout;
-import org.eclipse.swt.widgets.Button;
-import org.eclipse.swt.widgets.Combo;
-import org.eclipse.swt.widgets.Composite;
-import org.eclipse.swt.widgets.Control;
-import org.eclipse.swt.widgets.Shell;
-import org.eclipse.ui.PlatformUI;
-
-/**
- * Dialog CDT puts up when adding a memory monitor to the memory view for a
- * debug target that supports memory spaces.
- * <p>
- * It differs from the platform one in that you can enter an expression or
- * an address + memory space pair.
- *
- * @since 3.2
- */
-public class AddMemoryBlockDialog extends TrayDialog implements ModifyListener, SelectionListener {
-
- private Combo fAddressInput;
- private Button fAddressRadio;
- private Combo fMemorySpaceInput;
- private Combo fExpressionInput;
- private String fExpression;
- private Button fExpressionRadio;
- private String fAddress;
- private String fMemorySpace;
- private boolean fEnteredExpression; // basically, which of the two radio buttons was selected when OK was hit
- private CMemoryBlockRetrievalExtension fMemRetrieval;
-
- private static ArrayList sAddressHistory = new ArrayList();
- private static ArrayList sExpressionHistory = new ArrayList();
-
- public AddMemoryBlockDialog(Shell parentShell,
- IMemoryBlockRetrieval memRetrieval) {
- super(parentShell);
-
- setShellStyle(getShellStyle() | SWT.RESIZE);
-
- if (memRetrieval instanceof CMemoryBlockRetrievalExtension) {
- fMemRetrieval = (CMemoryBlockRetrievalExtension)memRetrieval;
- }
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.jface.dialogs.Dialog#createDialogArea(org.eclipse.swt.widgets.Composite)
- */
- protected Control createDialogArea(Composite parent) {
- PlatformUI.getWorkbench().getHelpSystem().setHelp(
- parent,
- IDebugUIConstants.PLUGIN_ID
- + ".MonitorMemoryBlockDialog_context"); //$NON-NLS-1$
-
- // The button bar will work better if we make the parent composite
- // a single column grid layout. For the widgets we add, we want a
- // a two-column grid, so we just create a sub composite for that.
- GridLayout gridLayout = new GridLayout();
- parent.setLayout(gridLayout);
- GridData gridData = new GridData(GridData.FILL_BOTH);
- parent.setLayoutData(gridData);
- Composite composite = new Composite(parent, SWT.None);
- gridLayout = new GridLayout();
- gridLayout.numColumns = 2;
- composite.setLayout(gridLayout);
- gridData = new GridData(GridData.FILL_BOTH);
- composite.setLayoutData(gridData);
- parent = composite; // for all our widgets, the two-column composite is the real parent
-
- fAddressRadio = new Button(parent, SWT.RADIO);
- final int radioButtonWidth = fAddressRadio.computeSize(SWT.DEFAULT, SWT.DEFAULT).x;
- fAddressRadio.setText(Messages.AddMemBlockDlg_enterAddrAndMemSpace);
- gridData = new GridData(GridData.FILL_HORIZONTAL);
- gridData.horizontalSpan = 2;
- fAddressRadio.setLayoutData(gridData);
- fAddressRadio.addSelectionListener(this);
-
- fMemorySpaceInput = new Combo(parent, SWT.BORDER | SWT.READ_ONLY);
- gridData = new GridData();
- gridData.horizontalIndent = radioButtonWidth;
- fMemorySpaceInput.setLayoutData(gridData);
- fMemorySpaceInput.addSelectionListener(this);
-
- fAddressInput = new Combo(parent, SWT.BORDER);
- gridData = new GridData(GridData.FILL_HORIZONTAL);
- GC gc = new GC(fAddressInput);
- FontMetrics fm = gc.getFontMetrics();
- // Give enough room for a 64 bit hex address (25 is a guess at the combobox selector)
- gridData.minimumWidth = gridData.minimumWidth = 18 * fm.getAverageCharWidth() + 25;
- gc.dispose();
- fAddressInput.setLayoutData(gridData);
- fAddressInput.addModifyListener(this);
- fAddressInput.addVerifyListener(new VerifyListener() {
- // limit entry to hex or decimal
- public void verifyText(VerifyEvent e) {
- e.doit = false;
- final char c = e.character;
- if (Character.isDigit(c) || ('a' <= c && c <= 'f') || ('A' <= c && c <= 'F') ||
- c == 'x' || Character.isISOControl(e.character)) {
- e.doit = true;
- }
- }
- });
-
- // Populate the memory space combobox with the available spaces
- if (fMemRetrieval != null) {
- String [] memorySpaces = fMemRetrieval.getMemorySpaces();
- for (int i = 0; i < memorySpaces.length; i++)
- fMemorySpaceInput.add(memorySpaces[i]);
-
- if (memorySpaces.length > 0)
- fMemorySpaceInput.select(0);
- }
-
- fExpressionRadio = new Button(parent, SWT.RADIO);
- fExpressionRadio.setText(Messages.AddMemBlockDlg_enterExpression);
- gridData = new GridData();
- gridData.horizontalSpan = 2;
- fExpressionRadio.setLayoutData(gridData);
- fExpressionRadio.addSelectionListener(this);
-
- fExpressionInput = new Combo(parent, SWT.BORDER);
- gridData = new GridData(GridData.FILL_HORIZONTAL);
- gridData.horizontalSpan = 2;
- gridData.horizontalIndent = radioButtonWidth;
- fExpressionInput.setLayoutData(gridData);
-
- // add the history into the combo boxes
- String[] history = getHistory(sExpressionHistory);
- for (int i = 0; i < history.length; i++)
- fExpressionInput.add(history[i]);
-
- history = getHistory(sAddressHistory);
- for (int i = 0; i < history.length; i++)
- fAddressInput.add(history[i]);
-
- fExpressionInput.addModifyListener(this);
-
- return parent;
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.jface.window.Window#configureShell(org.eclipse.swt.widgets.Shell)
- */
- protected void configureShell(Shell newShell) {
- super.configureShell(newShell);
-
- // use the same title used by the platform dialog
- newShell.setText(Messages.AddMemBlockDlg_MonitorMemory);
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.jface.dialogs.Dialog#okPressed()
- */
- protected void okPressed() {
- fExpression = fExpressionInput.getText();
- fAddress = fAddressInput.getText();
- fMemorySpace = fMemorySpaceInput.getText();
-
- // add to HISTORY list; add to the platform dialog's for the expression
- if (fExpression.length() > 0)
- addHistory(sExpressionHistory, fExpression);
- if (fAddress.length() > 0)
- addHistory(sAddressHistory, fAddress);
-
- fEnteredExpression = fExpressionRadio.getSelection();
- super.okPressed();
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.swt.events.ModifyListener#modifyText(org.eclipse.swt.events.ModifyEvent)
- */
- public void modifyText(ModifyEvent e) {
- // if user enters text into either the address field or the expression one, automatically
- // select its associated radio button (and deselect the other, these are mutually exclusive)
- if (e.widget == fAddressInput ||
- e.widget == fExpressionInput) {
-
- fAddressRadio.setSelection(e.widget != fExpressionInput);
- fExpressionRadio.setSelection(e.widget == fExpressionInput);
- }
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.jface.dialogs.TrayDialog#createButtonBar(org.eclipse.swt.widgets.Composite)
- */
- protected Control createButtonBar(Composite parent) {
- return super.createButtonBar(parent);
- }
-
- public String getExpression() {
- return fExpression;
- }
-
- public String getAddress() {
- return fAddress;
- }
-
- public String getMemorySpace() {
- return fMemorySpace;
- }
-
- public boolean enteredExpression() {
- return fEnteredExpression;
- }
-
- private static void addHistory(ArrayList list, String item) {
- if (!list.contains(item))
- list.add(0, item);
-
- if (list.size() > 5)
- list.remove(list.size()-1);
- }
-
- private static String[] getHistory(ArrayList list) {
- return (String[])list.toArray(new String[list.size()]);
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.swt.events.SelectionListener#widgetDefaultSelected(org.eclipse.swt.events.SelectionEvent)
- */
- public void widgetDefaultSelected(SelectionEvent e) {
- // TODO Auto-generated method stub
-
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.swt.events.SelectionListener#widgetSelected(org.eclipse.swt.events.SelectionEvent)
- */
- public void widgetSelected(SelectionEvent e) {
- // if user selects a memory space, select its associated radio button (and deselect the
- // other, these are mutually exclusive)
- if (e.widget == fMemorySpaceInput) {
- fAddressRadio.setSelection(true);
- fExpressionRadio.setSelection(false);
- }
- }
-}
diff --git a/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/views/memory/AddMemoryBlocks.java b/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/views/memory/AddMemoryBlocks.java
deleted file mode 100644
index 90c06e91566..00000000000
--- a/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/views/memory/AddMemoryBlocks.java
+++ /dev/null
@@ -1,295 +0,0 @@
-/*******************************************************************************
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * Freescale Semiconductor - initial API and implementation
- *
- *******************************************************************************/
-
-package org.eclipse.cdt.debug.internal.ui.views.memory;
-
-import java.util.ArrayList;
-import java.util.StringTokenizer;
-
-import org.eclipse.cdt.debug.internal.core.CMemoryBlockRetrievalExtension;
-import org.eclipse.cdt.debug.ui.CDebugUIPlugin;
-import org.eclipse.core.runtime.CoreException;
-import org.eclipse.core.runtime.IAdaptable;
-import org.eclipse.core.runtime.IProgressMonitor;
-import org.eclipse.core.runtime.IStatus;
-import org.eclipse.core.runtime.Status;
-import org.eclipse.core.runtime.jobs.Job;
-import org.eclipse.debug.core.DebugException;
-import org.eclipse.debug.core.DebugPlugin;
-import org.eclipse.debug.core.model.IDebugElement;
-import org.eclipse.debug.core.model.IMemoryBlock;
-import org.eclipse.debug.core.model.IMemoryBlockExtension;
-import org.eclipse.debug.core.model.IMemoryBlockRetrieval;
-import org.eclipse.debug.ui.DebugUITools;
-import org.eclipse.debug.ui.IDebugUIConstants;
-import org.eclipse.debug.ui.actions.IAddMemoryBlocksTarget;
-import org.eclipse.debug.ui.memory.IMemoryRendering;
-import org.eclipse.debug.ui.memory.IMemoryRenderingContainer;
-import org.eclipse.debug.ui.memory.IMemoryRenderingSite;
-import org.eclipse.debug.ui.memory.IMemoryRenderingType;
-import org.eclipse.jface.dialogs.MessageDialog;
-import org.eclipse.jface.viewers.ISelection;
-import org.eclipse.jface.window.Window;
-import org.eclipse.swt.widgets.Shell;
-import org.eclipse.ui.IWorkbenchPart;
-import org.eclipse.ui.progress.UIJob;
-
-/**
- * Adds memory blocks to the Memory view.
- *
- * <p>
- * CDT adapter logic will link us to a CMemoryBlockRetrievalExtension
- * if and only if the CDI backend support memory spaces. When this is the case,
- * the platform will call us to add a memory monitor to the Memory view. We
- * must put up a dialog, handle the user input, create the memory blocks
- * with default renderings and add them to the view.
- *
- * <p>
- * @since 3.2
- *
- */
-public class AddMemoryBlocks implements IAddMemoryBlocksTarget {
-
- public void addMemoryBlocks(IWorkbenchPart part, ISelection selection) throws CoreException {
-
- if (!(part instanceof IMemoryRenderingSite))
- return;
-
- IAdaptable debugViewElement = DebugUITools.getDebugContext();
-
-
- CMemoryBlockRetrievalExtension cdtRetrieval = null;
-
- {
- IMemoryBlockRetrieval retrieval = (IMemoryBlockRetrieval)debugViewElement.getAdapter(IMemoryBlockRetrieval.class);
-
- if (retrieval == null && debugViewElement instanceof IDebugElement)
- retrieval = ((IDebugElement)debugViewElement).getDebugTarget();
-
- if (retrieval == null || !(retrieval instanceof CMemoryBlockRetrievalExtension))
- return;
-
- cdtRetrieval = (CMemoryBlockRetrievalExtension) retrieval;
- }
-
- Shell shell = CDebugUIPlugin.getDefault().getWorkbench().getActiveWorkbenchWindow().getShell();
-
- // create dialog to ask for expression/address to block
- AddMemoryBlockDialog dialog = new AddMemoryBlockDialog(shell, cdtRetrieval);
- dialog.open();
- int returnCode = dialog.getReturnCode();
- if (returnCode == Window.CANCEL)
- return;
-
- String input = dialog.enteredExpression() ? dialog.getExpression() : dialog.getAddress();
-
- ArrayList list = new ArrayList();
-
- if (input.length() == 0)
- list.add(""); //$NON-NLS-1$
- else {
- StringTokenizer tokenizer = new StringTokenizer(input, ","); //$NON-NLS-1$
- while (tokenizer.hasMoreTokens())
- list.add(tokenizer.nextToken());
- }
-
- final String[] addrsOrExprs = (String[]) list.toArray(new String[list.size()]);
-
- ParamHolder params;
- if (dialog.enteredExpression())
- params = new ExpressionsHolder(addrsOrExprs);
- else
- params = new AddressAndSpaceHolder(addrsOrExprs, dialog.getMemorySpace());
-
- final IAdaptable debugViewElement_f = debugViewElement;
- final CMemoryBlockRetrievalExtension retrieval_f = cdtRetrieval;
- final ParamHolder params_f = params;
- final IMemoryRenderingSite memRendSite = (IMemoryRenderingSite) part;
- Job job = new Job("Add Memory Block") { //$NON-NLS-1$
- protected IStatus run(IProgressMonitor monitor) {
- addMemoryBlocks(debugViewElement_f, retrieval_f, params_f,
- memRendSite);
- return Status.OK_STATUS;
- }
- };
- job.setSystem(true);
- job.schedule();
- }
-
- public boolean canAddMemoryBlocks(IWorkbenchPart part, ISelection selection)
- throws CoreException {
- return true;
- }
-
- public boolean supportsAddMemoryBlocks(IWorkbenchPart part) {
- return (IDebugUIConstants.ID_MEMORY_VIEW.equals(part.getSite().getId()));
- }
-
- // In order to avoid duplicating the addMemoryBlocks method--one
- // version for expressions, one for memory-space+address, we pass in a
- // an opaque parameter and let the logic within addMemoryBlocks
- // differentiate where needed via isinstanceof
-
- private class ParamHolder {
- }
-
- class AddressAndSpaceHolder extends ParamHolder {
- public AddressAndSpaceHolder(final String[] addresses,
- final String memorySpace) {
- this.addresses = addresses;
- this.memorySpace = memorySpace;
- }
-
- public String[] addresses;
-
- public String memorySpace;
- }
-
- private class ExpressionsHolder extends ParamHolder {
- public ExpressionsHolder(final String[] expressions) {
- this.expressions = expressions;
- }
-
- public String[] expressions;
- }
-
- private void addMemoryBlocks(IAdaptable debugViewElement,
- CMemoryBlockRetrievalExtension memRetrieval,
- final ParamHolder params, IMemoryRenderingSite memRendSite) {
-
- final String[] addrsOrExprs = (params instanceof AddressAndSpaceHolder) ? ((AddressAndSpaceHolder) params).addresses
- : ((ExpressionsHolder) params).expressions;
-
- for (int i = 0; i < addrsOrExprs.length; i++) {
- String addrOrExpr = addrsOrExprs[i].trim();
- try {
-
- // get extended memory block with the expression or address
- // entered
- IMemoryBlockExtension memBlock;
-
- if (params instanceof AddressAndSpaceHolder)
- memBlock = memRetrieval.getMemoryBlockWithMemorySpaceID(
- addrOrExpr,
- ((AddressAndSpaceHolder) params).memorySpace,
- debugViewElement);
- else
- memBlock = memRetrieval.getExtendedMemoryBlock(addrOrExpr,
- debugViewElement);
-
- // add block to memory block manager
- if (memBlock != null) {
- IMemoryBlock[] memArray = new IMemoryBlock[] { memBlock };
-
- DebugPlugin.getDefault().getMemoryBlockManager().addMemoryBlocks(memArray);
-
- addDefaultRenderings(memBlock, memRendSite);
- } else {
- // open error if it failed to retrieve a memory block
- openError(Messages.AddMemBlocks_title,
- Messages.AddMemBlocks_noMemoryBlock,
- null);
- }
- } catch (DebugException e1) {
- openError(Messages.AddMemBlocks_title,
- Messages.AddMemBlocks_failed, e1);
- } catch (NumberFormatException e2) {
- String message = Messages.AddMemBlocks_failed + "\n" + Messages.AddMemBlocks_input_invalid; //$NON-NLS-1$
- openError(Messages.AddMemBlocks_title, message,
- null);
- }
- }
- }
-
- private void addDefaultRenderings(IMemoryBlock memoryBlock,
- IMemoryRenderingSite memRendSite) {
-
- // This method was mostly lifted from the platform's AddMemoryBlockAction
-
- IMemoryRenderingType primaryType = DebugUITools.getMemoryRenderingManager().getPrimaryRenderingType(
- memoryBlock);
- IMemoryRenderingType renderingTypes[] = DebugUITools.getMemoryRenderingManager().getDefaultRenderingTypes(
- memoryBlock);
-
- // create primary rendering
- try {
- if (primaryType != null) {
- createRenderingInContainer(memoryBlock, memRendSite,
- primaryType, IDebugUIConstants.ID_RENDERING_VIEW_PANE_1);
- } else if (renderingTypes.length > 0) {
- primaryType = renderingTypes[0];
- createRenderingInContainer(memoryBlock, memRendSite,
- renderingTypes[0],
- IDebugUIConstants.ID_RENDERING_VIEW_PANE_1);
- }
- } catch (CoreException e1) {
- CDebugUIPlugin.log(e1);
- }
-
- for (int i = 0; i < renderingTypes.length; i++) {
- try {
- boolean create = true;
- if (primaryType != null) {
- if (primaryType.getId().equals(renderingTypes[i].getId()))
- create = false;
- }
- if (create)
- createRenderingInContainer(memoryBlock, memRendSite,
- renderingTypes[i],
- IDebugUIConstants.ID_RENDERING_VIEW_PANE_2);
- } catch (CoreException e) {
- CDebugUIPlugin.log(e);
- }
- }
- }
-
- private void createRenderingInContainer(IMemoryBlock memoryBlock,
- IMemoryRenderingSite memRendSite, IMemoryRenderingType primaryType,
- String paneId) throws CoreException {
-
- // This method was mostly lifted from the platform's AddMemoryBlockAction
-
- IMemoryRendering rendering = primaryType.createRendering();
- IMemoryRenderingContainer container = memRendSite.getContainer(paneId);
- rendering.init(container, memoryBlock);
- container.addMemoryRendering(rendering);
- }
-
- /**
- * Helper function to open an error dialog.
- * @param title
- * @param message
- * @param e
- */
- static public void openError (final String title, final String message, final Exception e)
- {
- UIJob uiJob = new UIJob("open error"){ //$NON-NLS-1$
-
- public IStatus runInUIThread(IProgressMonitor monitor) {
- // open error for the exception
- String detail = ""; //$NON-NLS-1$
- if (e != null)
- detail = e.getMessage();
-
- Shell shell = CDebugUIPlugin.getDefault().getWorkbench().getActiveWorkbenchWindow().getShell();
-
- MessageDialog.openError(
- shell,
- title,
- message + "\n" + detail); //$NON-NLS-1$
- return Status.OK_STATUS;
- }};
- uiJob.setSystem(true);
- uiJob.schedule();
- }
-
-}
-
diff --git a/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/views/memory/MemoryBlockLabelDecorator.java b/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/views/memory/MemoryBlockLabelDecorator.java
deleted file mode 100644
index 349f45daa98..00000000000
--- a/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/views/memory/MemoryBlockLabelDecorator.java
+++ /dev/null
@@ -1,100 +0,0 @@
-/*******************************************************************************
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * Freescale Semiconductor - initial API and implementation
- *
- *******************************************************************************/
-
-package org.eclipse.cdt.debug.internal.ui.views.memory;
-
-import org.eclipse.cdt.debug.internal.core.model.CMemoryBlockExtension;
-import org.eclipse.jface.viewers.ILabelDecorator;
-import org.eclipse.jface.viewers.ILabelProviderListener;
-import org.eclipse.swt.graphics.Image;
-
-/**
- * Modifies the label shown in a rendering tab of the memory view.
- *
- * <p> CDT adapter logic will link us to a CMemoryBlockExtension if and
- * only if that block was created by specifying a memory space. In that
- * case, a literal address and memory space identifier are the basis for
- * the memory monitor, and the default label provided by the platform:
- * <PRE> expression : address &lt;rendering-name&gt; </PRE>
- * isn't well suited. Our job is to reduce this to
- * <pre> expression &lt;rendering-name&gt; </PRE>
- * The expression ends up being the back-end provided string encoding of
- * a memory space + address pair.
- * <p>
- * @since 3.2
- */
-public class MemoryBlockLabelDecorator implements ILabelDecorator {
-
- /**
- * The memory block we decorate the label for
- */
- private CMemoryBlockExtension fMemoryBlock;
-
- /**
- * Constructor
- * @param memoryBlock the memory block we decorate the label for
- */
- public MemoryBlockLabelDecorator(CMemoryBlockExtension memoryBlock) {
- super();
- fMemoryBlock = memoryBlock;
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.jface.viewers.ILabelDecorator#decorateImage(org.eclipse.swt.graphics.Image, java.lang.Object)
- */
- public Image decorateImage(Image image, Object element) {
- // we only decorate the text
- return null;
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.jface.viewers.ILabelDecorator#decorateText(java.lang.String, java.lang.Object)
- */
- public String decorateText(String text, Object element) {
- // The rendering name is enclosed in <>. We replace everything before
- // that with the memory block's expression.
- int i = text.indexOf('<');
- if (i >= 0)
- return fMemoryBlock.getExpression() + " " + text.substring(i);
-
- return text;
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.jface.viewers.IBaseLabelProvider#addListener(org.eclipse.jface.viewers.ILabelProviderListener)
- */
- public void addListener(ILabelProviderListener listener) {
- // how we decorate labels is not affected by any state
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.jface.viewers.IBaseLabelProvider#dispose()
- */
- public void dispose() {
- // nothing to clean up
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.jface.viewers.IBaseLabelProvider#isLabelProperty(java.lang.Object, java.lang.String)
- */
- public boolean isLabelProperty(Object element, String property) {
- // how we decorate a label is not affected by any properties
- return false;
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.jface.viewers.IBaseLabelProvider#removeListener(org.eclipse.jface.viewers.ILabelProviderListener)
- */
- public void removeListener(ILabelProviderListener listener) {
- // how we decorate labels is not affected by any state
- }
-
-}
diff --git a/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/views/memory/Messages.java b/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/views/memory/Messages.java
deleted file mode 100644
index c30a63d2ee4..00000000000
--- a/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/views/memory/Messages.java
+++ /dev/null
@@ -1,36 +0,0 @@
-/*******************************************************************************
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * Freescale Semiconductor - initial API and implementation
- *
- *******************************************************************************/
-
-package org.eclipse.cdt.debug.internal.ui.views.memory;
-
-import org.eclipse.osgi.util.NLS;
-
-public class Messages extends NLS {
-
- private static final String BUNDLE_NAME = Messages.class.getPackage().getName() + ".messages"; //$NON-NLS-1$
-
- static {
- // initialize resource bundle
- NLS.initializeMessages(BUNDLE_NAME, Messages.class);
- }
-
- public static String AddMemBlockDlg_enterAddrAndMemSpace;
- public static String AddMemBlockDlg_enterExpression;
- public static String AddMemBlockDlg_or;
- public static String AddMemBlockDlg_MonitorMemory;
-
- public static String AddMemBlocks_title;
- public static String AddMemBlocks_noMemoryBlock;
- public static String AddMemBlocks_failed;
- public static String AddMemBlocks_input_invalid;
-
-}
-
diff --git a/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/views/memory/messages.properties b/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/views/memory/messages.properties
deleted file mode 100644
index 8633f1c6220..00000000000
--- a/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/views/memory/messages.properties
+++ /dev/null
@@ -1,10 +0,0 @@
-AddMemBlockDlg_enterAddrAndMemSpace=Enter memory space and address
-AddMemBlockDlg_enterExpression=Enter expression
-AddMemBlockDlg_or=or
-AddMemBlockDlg_MonitorMemory = Monitor Memory
-
-AddMemBlocks_title=Add Memory Monitor
-AddMemBlocks_noMemoryBlock = Failed to get memory monitor.
-AddMemBlocks_failed =Add Memory Monitor Failed.
-AddMemBlocks_input_invalid = Input is invalid.
-
diff --git a/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/views/modules/ModuleContentProvider.java b/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/views/modules/ModuleContentProvider.java
deleted file mode 100644
index bfe8659e962..00000000000
--- a/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/views/modules/ModuleContentProvider.java
+++ /dev/null
@@ -1,70 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2007 ARM and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * ARM - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.internal.ui.views.modules;
-
-import org.eclipse.cdt.core.model.CModelException;
-import org.eclipse.cdt.core.model.IBinary;
-import org.eclipse.cdt.core.model.IParent;
-import org.eclipse.cdt.debug.core.model.ICModule;
-import org.eclipse.cdt.debug.core.model.IModuleRetrieval;
-import org.eclipse.cdt.debug.ui.ICDebugUIConstants;
-import org.eclipse.core.runtime.CoreException;
-import org.eclipse.debug.internal.ui.model.elements.ElementContentProvider;
-import org.eclipse.debug.internal.ui.viewers.model.provisional.IPresentationContext;
-import org.eclipse.debug.internal.ui.viewers.model.provisional.IViewerUpdate;
-
-public class ModuleContentProvider extends ElementContentProvider {
-
- /* (non-Javadoc)
- * @see org.eclipse.debug.internal.ui.model.elements.ElementContentProvider#getChildCount(java.lang.Object, org.eclipse.debug.internal.ui.viewers.model.provisional.IPresentationContext, org.eclipse.debug.internal.ui.viewers.model.provisional.IViewerUpdate)
- */
- protected int getChildCount( Object element, IPresentationContext context, IViewerUpdate monitor ) throws CoreException {
- return getAllChildren( element, context ).length;
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.debug.internal.ui.model.elements.ElementContentProvider#getChildren(java.lang.Object, int, int, org.eclipse.debug.internal.ui.viewers.model.provisional.IPresentationContext, org.eclipse.debug.internal.ui.viewers.model.provisional.IViewerUpdate)
- */
- protected Object[] getChildren( Object parent, int index, int length, IPresentationContext context, IViewerUpdate monitor ) throws CoreException {
- return getElements( getAllChildren( parent, context ), index, length );
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.debug.internal.ui.model.elements.ElementContentProvider#supportsContextId(java.lang.String)
- */
- protected boolean supportsContextId( String id ) {
- return ICDebugUIConstants.ID_MODULES_VIEW.equals( id );
- }
-
- protected Object[] getAllChildren( Object parent, IPresentationContext context ) throws CoreException {
- if ( parent instanceof IModuleRetrieval ) {
- return ((IModuleRetrieval)parent).getModules();
- }
- else if ( parent instanceof ICModule ) {
- IBinary binary = (IBinary)((ICModule)parent).getAdapter( IBinary.class );
- if ( binary != null ) {
- try {
- return binary.getChildren();
- }
- catch( CModelException e ) {
- }
- }
- }
- else if ( parent instanceof IParent ) {
- try {
- return ((IParent)parent).getChildren();
- }
- catch( CModelException e ) {
- }
- }
- return EMPTY;
- }
-}
diff --git a/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/views/modules/ModuleLabelProvider.java b/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/views/modules/ModuleLabelProvider.java
deleted file mode 100644
index 7a30d352dc1..00000000000
--- a/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/views/modules/ModuleLabelProvider.java
+++ /dev/null
@@ -1,76 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2007 ARM and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * ARM - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.internal.ui.views.modules;
-
-import org.eclipse.cdt.core.model.ICElement;
-import org.eclipse.cdt.debug.core.model.ICModule;
-import org.eclipse.cdt.debug.internal.ui.CDebugImages;
-import org.eclipse.cdt.debug.internal.ui.views.modules.ModulesView.ModulesViewPresentationContext;
-import org.eclipse.core.runtime.CoreException;
-import org.eclipse.core.runtime.IAdaptable;
-import org.eclipse.debug.internal.ui.model.elements.ElementLabelProvider;
-import org.eclipse.debug.internal.ui.viewers.model.provisional.IPresentationContext;
-import org.eclipse.debug.ui.IDebugModelPresentation;
-import org.eclipse.jface.resource.ImageDescriptor;
-import org.eclipse.jface.viewers.TreePath;
-import org.eclipse.ui.model.IWorkbenchAdapter;
-
-/**
- * org.eclipse.cdt.debug.internal.ui.views.modules.CElementLabelProvider:
- * //TODO Add description.
- */
-public class ModuleLabelProvider extends ElementLabelProvider {
-
- /* (non-Javadoc)
- * @see org.eclipse.debug.internal.ui.model.elements.ElementLabelProvider#getLabel(org.eclipse.jface.viewers.TreePath, org.eclipse.debug.internal.ui.viewers.model.provisional.IPresentationContext, java.lang.String)
- */
- protected String getLabel( TreePath elementPath, IPresentationContext presentationContext, String columnId ) throws CoreException {
- Object element = elementPath.getLastSegment();
- if ( element instanceof ICModule && presentationContext instanceof ModulesViewPresentationContext ) {
- IDebugModelPresentation presentation = ((ModulesViewPresentationContext)presentationContext).getModelPresentation();
- return presentation.getText( element );
- }
- if ( element instanceof IAdaptable ) {
- IWorkbenchAdapter adapter = (IWorkbenchAdapter)(((IAdaptable)element).getAdapter( IWorkbenchAdapter.class ));
- if ( adapter != null )
- return adapter.getLabel( element );
- }
- return ""; //$NON-NLS-1$
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.debug.internal.ui.model.elements.ElementLabelProvider#getImageDescriptor(org.eclipse.jface.viewers.TreePath, org.eclipse.debug.internal.ui.viewers.model.provisional.IPresentationContext, java.lang.String)
- */
- protected ImageDescriptor getImageDescriptor( TreePath elementPath, IPresentationContext presentationContext, String columnId ) throws CoreException {
- Object element = elementPath.getLastSegment();
- if ( element instanceof ICModule ) {
- ICModule module = (ICModule)element;
- switch( module.getType() ) {
- case ICModule.EXECUTABLE:
- if ( module.areSymbolsLoaded() ) {
- return CDebugImages.DESC_OBJS_EXECUTABLE_WITH_SYMBOLS;
- }
- return CDebugImages.DESC_OBJS_EXECUTABLE;
- case ICModule.SHARED_LIBRARY:
- if ( module.areSymbolsLoaded() ) {
- return CDebugImages.DESC_OBJS_SHARED_LIBRARY_WITH_SYMBOLS;
- }
- return CDebugImages.DESC_OBJS_SHARED_LIBRARY;
- }
- }
- if ( element instanceof ICElement ) {
- IWorkbenchAdapter adapter = (IWorkbenchAdapter)(((IAdaptable)element).getAdapter( IWorkbenchAdapter.class ));
- if ( adapter != null )
- return adapter.getImageDescriptor( element );
- }
- return super.getImageDescriptor( elementPath, presentationContext, columnId );
- }
-}
diff --git a/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/views/modules/ModuleMementoProvider.java b/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/views/modules/ModuleMementoProvider.java
deleted file mode 100644
index dd473c10749..00000000000
--- a/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/views/modules/ModuleMementoProvider.java
+++ /dev/null
@@ -1,75 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2007 ARM and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * ARM - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.internal.ui.views.modules;
-
-import org.eclipse.cdt.core.model.ICElement;
-import org.eclipse.cdt.debug.core.CDIDebugModel;
-import org.eclipse.cdt.debug.core.model.ICModule;
-import org.eclipse.cdt.debug.core.model.IModuleRetrieval;
-import org.eclipse.core.runtime.CoreException;
-import org.eclipse.debug.internal.ui.model.elements.ElementMementoProvider;
-import org.eclipse.debug.internal.ui.viewers.model.provisional.IPresentationContext;
-import org.eclipse.ui.IMemento;
-
-/**
- * org.eclipse.cdt.debug.internal.ui.views.modules.ModuleMementoProvider:
- * //TODO Add description.
- */
-public class ModuleMementoProvider extends ElementMementoProvider {
-
- /**
- * memento attribute
- */
- private static final String ELEMENT_NAME = "ELEMENT_NAME"; //$NON-NLS-1$
-
- /* (non-Javadoc)
- * @see org.eclipse.debug.internal.ui.model.elements.ElementMementoProvider#encodeElement(java.lang.Object, org.eclipse.ui.IMemento, org.eclipse.debug.internal.ui.viewers.model.provisional.IPresentationContext)
- */
- protected boolean encodeElement( Object element, IMemento memento, IPresentationContext context ) throws CoreException {
- if ( element instanceof IModuleRetrieval ) {
- // attempt to maintain expansion for target ????
- memento.putString( ELEMENT_NAME, CDIDebugModel.getPluginIdentifier() );
- }
- else if ( element instanceof ICModule ) {
- memento.putString( ELEMENT_NAME, ((ICModule)element).getName() );
- }
- else if ( element instanceof ICElement ) {
- memento.putString( ELEMENT_NAME, ((ICElement)element).getElementName() );
- }
- else {
- return false;
- }
- return true;
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.debug.internal.ui.model.elements.ElementMementoProvider#isEqual(java.lang.Object, org.eclipse.ui.IMemento, org.eclipse.debug.internal.ui.viewers.model.provisional.IPresentationContext)
- */
- protected boolean isEqual( Object element, IMemento memento, IPresentationContext context ) throws CoreException {
- String mementoName = memento.getString( ELEMENT_NAME );
- if ( mementoName != null ) {
- String elementName = null;
- if ( element instanceof IModuleRetrieval ) {
- elementName = CDIDebugModel.getPluginIdentifier();
- }
- else if ( element instanceof ICModule ) {
- elementName = ((ICModule)element).getName();
- }
- else if ( element instanceof ICElement ) {
- elementName = ((ICElement)element).getElementName();
- }
- if ( elementName != null ) {
- return elementName.equals( mementoName );
- }
- }
- return false;
- }
-}
diff --git a/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/views/modules/ModuleProxyFactory.java b/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/views/modules/ModuleProxyFactory.java
deleted file mode 100644
index f38dc658367..00000000000
--- a/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/views/modules/ModuleProxyFactory.java
+++ /dev/null
@@ -1,32 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.internal.ui.views.modules;
-
-import org.eclipse.cdt.debug.core.model.IModuleRetrieval;
-import org.eclipse.cdt.debug.ui.ICDebugUIConstants;
-import org.eclipse.debug.internal.ui.viewers.model.provisional.IModelProxy;
-import org.eclipse.debug.internal.ui.viewers.model.provisional.IModelProxyFactoryAdapter;
-import org.eclipse.debug.internal.ui.viewers.model.provisional.IPresentationContext;
-
-public class ModuleProxyFactory implements IModelProxyFactoryAdapter {
-
- /* (non-Javadoc)
- * @see org.eclipse.debug.internal.ui.viewers.provisional.IModelProxyFactoryAdapter#createModelProxy(java.lang.Object, org.eclipse.debug.internal.ui.viewers.provisional.IPresentationContext)
- */
- public IModelProxy createModelProxy( Object element, IPresentationContext context ) {
- if ( ICDebugUIConstants.ID_MODULES_VIEW.equals( context.getId() ) ) {
- if ( element instanceof IModuleRetrieval ) {
- return new ModulesViewModelProxy( (IModuleRetrieval)element );
- }
- }
- return null;
- }
-}
diff --git a/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/views/modules/ModulesMessages.java b/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/views/modules/ModulesMessages.java
deleted file mode 100644
index feee40e939a..00000000000
--- a/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/views/modules/ModulesMessages.java
+++ /dev/null
@@ -1,37 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004, 2005 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.internal.ui.views.modules;
-
-import java.util.MissingResourceException;
-import java.util.ResourceBundle;
-
-/**
- * Comment for .
- */
-public class ModulesMessages {
-
- private static final String BUNDLE_NAME = "org.eclipse.cdt.debug.internal.ui.views.modules.ModulesMessages";//$NON-NLS-1$
-
- private static final ResourceBundle RESOURCE_BUNDLE = ResourceBundle.getBundle( BUNDLE_NAME );
-
- private ModulesMessages() {
- }
-
- public static String getString( String key ) {
- // TODO Auto-generated method stub
- try {
- return RESOURCE_BUNDLE.getString( key );
- }
- catch( MissingResourceException e ) {
- return '!' + key + '!';
- }
- }
-}
diff --git a/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/views/modules/ModulesMessages.properties b/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/views/modules/ModulesMessages.properties
deleted file mode 100644
index 4c34b69d4de..00000000000
--- a/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/views/modules/ModulesMessages.properties
+++ /dev/null
@@ -1,25 +0,0 @@
-###############################################################################
-# Copyright (c) 2005 QNX Software Systems and others.
-# All rights reserved. This program and the accompanying materials
-# are made available under the terms of the Eclipse Public License v1.0
-# which accompanies this distribution, and is available at
-# http://www.eclipse.org/legal/epl-v10.html
-#
-# Contributors:
-# QNX Software Systems - initial API and implementation
-###############################################################################
-ModulesView.0=Modules View Only
-ModulesView.1=executable
-ModulesView.10=Size:
-ModulesView.11=\ (symbols loaded)
-ModulesView.12=(symbols not loaded)
-ModulesView.13=Select &All
-ModulesView.16=&Copy
-ModulesView.2=shared library
-ModulesView.3=Type:
-ModulesView.4=Symbols:
-ModulesView.5=loaded
-ModulesView.6=not loaded
-ModulesView.7=Symbols file:
-ModulesView.8=CPU:
-ModulesView.9=Base address:
diff --git a/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/views/modules/ModulesView.java b/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/views/modules/ModulesView.java
deleted file mode 100644
index 05f165ca48d..00000000000
--- a/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/views/modules/ModulesView.java
+++ /dev/null
@@ -1,960 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.internal.ui.views.modules;
-
-import java.io.ByteArrayInputStream;
-import java.io.ByteArrayOutputStream;
-import java.io.IOException;
-import java.io.InputStreamReader;
-import java.io.OutputStreamWriter;
-import java.util.HashMap;
-import java.util.Iterator;
-
-import org.eclipse.cdt.core.IAddress;
-import org.eclipse.cdt.core.model.ICElement;
-import org.eclipse.cdt.debug.core.model.ICDebugTarget;
-import org.eclipse.cdt.debug.core.model.ICModule;
-import org.eclipse.cdt.debug.core.model.IModuleRetrieval;
-import org.eclipse.cdt.debug.internal.ui.ICDebugHelpContextIds;
-import org.eclipse.cdt.debug.internal.ui.IInternalCDebugUIConstants;
-import org.eclipse.cdt.debug.internal.ui.actions.ToggleDetailPaneAction;
-import org.eclipse.cdt.debug.internal.ui.preferences.ICDebugPreferenceConstants;
-import org.eclipse.cdt.debug.internal.ui.views.IDebugExceptionHandler;
-import org.eclipse.cdt.debug.ui.CDebugUIPlugin;
-import org.eclipse.cdt.debug.ui.ICDebugUIConstants;
-import org.eclipse.core.runtime.IAdaptable;
-import org.eclipse.core.runtime.IStatus;
-import org.eclipse.debug.core.DebugException;
-import org.eclipse.debug.core.DebugPlugin;
-import org.eclipse.debug.internal.ui.viewers.model.provisional.IModelChangedListener;
-import org.eclipse.debug.internal.ui.viewers.model.provisional.IModelDelta;
-import org.eclipse.debug.internal.ui.viewers.model.provisional.IModelProxy;
-import org.eclipse.debug.internal.ui.viewers.model.provisional.IPresentationContext;
-import org.eclipse.debug.internal.ui.viewers.model.provisional.IViewerUpdate;
-import org.eclipse.debug.internal.ui.viewers.model.provisional.IViewerUpdateListener;
-import org.eclipse.debug.internal.ui.viewers.model.provisional.PresentationContext;
-import org.eclipse.debug.internal.ui.viewers.model.provisional.TreeModelViewer;
-import org.eclipse.debug.ui.AbstractDebugView;
-import org.eclipse.debug.ui.DebugUITools;
-import org.eclipse.debug.ui.IDebugModelPresentation;
-import org.eclipse.debug.ui.contexts.DebugContextEvent;
-import org.eclipse.debug.ui.contexts.IDebugContextListener;
-import org.eclipse.jface.action.IAction;
-import org.eclipse.jface.action.IMenuListener;
-import org.eclipse.jface.action.IMenuManager;
-import org.eclipse.jface.action.IStatusLineManager;
-import org.eclipse.jface.action.IToolBarManager;
-import org.eclipse.jface.action.MenuManager;
-import org.eclipse.jface.action.Separator;
-import org.eclipse.jface.preference.IPreferenceStore;
-import org.eclipse.jface.resource.ImageDescriptor;
-import org.eclipse.jface.resource.JFaceResources;
-import org.eclipse.jface.text.Document;
-import org.eclipse.jface.text.DocumentEvent;
-import org.eclipse.jface.text.IDocument;
-import org.eclipse.jface.text.IDocumentListener;
-import org.eclipse.jface.text.ITextOperationTarget;
-import org.eclipse.jface.text.source.ISourceViewer;
-import org.eclipse.jface.text.source.SourceViewer;
-import org.eclipse.jface.text.source.SourceViewerConfiguration;
-import org.eclipse.jface.util.IPropertyChangeListener;
-import org.eclipse.jface.util.PropertyChangeEvent;
-import org.eclipse.jface.viewers.ISelection;
-import org.eclipse.jface.viewers.ISelectionChangedListener;
-import org.eclipse.jface.viewers.IStructuredSelection;
-import org.eclipse.jface.viewers.SelectionChangedEvent;
-import org.eclipse.jface.viewers.StructuredSelection;
-import org.eclipse.jface.viewers.StructuredViewer;
-import org.eclipse.jface.viewers.Viewer;
-import org.eclipse.swt.SWT;
-import org.eclipse.swt.custom.SashForm;
-import org.eclipse.swt.events.FocusAdapter;
-import org.eclipse.swt.events.FocusEvent;
-import org.eclipse.swt.events.KeyEvent;
-import org.eclipse.swt.events.KeyListener;
-import org.eclipse.swt.events.MouseEvent;
-import org.eclipse.swt.events.MouseListener;
-import org.eclipse.swt.graphics.Image;
-import org.eclipse.swt.layout.GridData;
-import org.eclipse.swt.widgets.Composite;
-import org.eclipse.swt.widgets.Control;
-import org.eclipse.swt.widgets.Event;
-import org.eclipse.swt.widgets.Listener;
-import org.eclipse.swt.widgets.Menu;
-import org.eclipse.ui.IActionBars;
-import org.eclipse.ui.IMemento;
-import org.eclipse.ui.IPerspectiveDescriptor;
-import org.eclipse.ui.IPerspectiveListener;
-import org.eclipse.ui.IViewSite;
-import org.eclipse.ui.IWorkbenchActionConstants;
-import org.eclipse.ui.IWorkbenchPage;
-import org.eclipse.ui.IWorkbenchPart;
-import org.eclipse.ui.PartInitException;
-import org.eclipse.ui.WorkbenchException;
-import org.eclipse.ui.XMLMemento;
-import org.eclipse.ui.actions.ActionFactory;
-import org.eclipse.ui.console.actions.TextViewerAction;
-import org.eclipse.ui.texteditor.IUpdate;
-import org.eclipse.ui.texteditor.IWorkbenchActionDefinitionIds;
-
-/**
- * Displays the modules currently loaded by the process being debugged.
- */
-public class ModulesView extends AbstractDebugView implements IDebugContextListener, IDebugExceptionHandler, IPropertyChangeListener, IPerspectiveListener, IModelChangedListener, IViewerUpdateListener {
-
- public class ModulesViewPresentationContext extends PresentationContext {
-
- private IDebugModelPresentation fModelPresentation;
-
- public ModulesViewPresentationContext( IDebugModelPresentation modelPresentation ) {
- super( ICDebugUIConstants.ID_MODULES_VIEW );
- fModelPresentation = modelPresentation;
- }
-
- public IDebugModelPresentation getModelPresentation() {
- return fModelPresentation;
- }
- }
-
- /**
- * Internal interface for a cursor listener. I.e. aggregation
- * of mouse and key listener.
- */
- interface ICursorListener extends MouseListener, KeyListener {
- }
-
- protected String PREF_STATE_MEMENTO = "pref_state_memento."; //$NON-NLS-1$
-
- /**
- * the preference name for the view part of the sash form
- */
- protected static final String SASH_VIEW_PART = CDebugUIPlugin.getUniqueIdentifier() + ".SASH_VIEW_PART"; //$NON-NLS-1$
-
- /**
- * the preference name for the details part of the sash form
- */
- protected static final String SASH_DETAILS_PART = CDebugUIPlugin.getUniqueIdentifier() + ".SASH_DETAILS_PART"; //$NON-NLS-1$
-
- /**
- * The UI construct that provides a sliding sash between the modules tree
- * and the detail pane.
- */
- private SashForm fSashForm;
-
- /**
- * The detail pane viewer.
- */
- private ISourceViewer fDetailViewer;
-
- /**
- * The document associated with the detail pane viewer.
- */
- private IDocument fDetailDocument;
-
- /**
- * Stores whether the tree viewer was the last control to have focus in the
- * view. Used to give focus to the correct component if the user leaves the view.
- */
- private boolean fTreeHasFocus = true;
-
- /**
- * Remembers which viewer (tree viewer or details viewer) had focus, so we
- * can reset the focus properly when re-activated.
- */
- private Viewer fFocusViewer = null;
-
- /**
- * Various listeners used to update the enabled state of actions and also to
- * populate the detail pane.
- */
- private ISelectionChangedListener fTreeSelectionChangedListener;
- private ISelectionChangedListener fDetailSelectionChangedListener;
- private IDocumentListener fDetailDocumentListener;
-
- /**
- * These are used to initialize and persist the position of the sash that
- * separates the tree viewer from the detail pane.
- */
- private static final int[] DEFAULT_SASH_WEIGHTS = { 13, 6 };
- private int[] fLastSashWeights;
- private boolean fToggledDetailOnce;
- private ToggleDetailPaneAction[] fToggleDetailPaneActions;
- private String fCurrentDetailPaneOrientation = ICDebugPreferenceConstants.MODULES_DETAIL_PANE_HIDDEN;
- protected static final String SASH_WEIGHTS = CDebugUIPlugin.getUniqueIdentifier() + ".modulesView.SASH_WEIGHTS"; //$NON-NLS-1$
-
- private ICursorListener fCursorListener;
-
- private HashMap fSelectionStates = new HashMap( 10 );
-
- private HashMap fImageCache = new HashMap( 10 );
-
- /* (non-Javadoc)
- * @see org.eclipse.debug.ui.AbstractDebugView#createViewer(org.eclipse.swt.widgets.Composite)
- */
- protected Viewer createViewer( Composite parent ) {
-
- // create the sash form that will contain the tree viewer & text viewer
- setSashForm( new SashForm( parent, SWT.NONE ) );
-
- CDebugUIPlugin.getDefault().getPreferenceStore().addPropertyChangeListener( this );
- JFaceResources.getFontRegistry().addListener( this );
-
- TreeModelViewer viewer = createTreeViewer( getSashForm() );
-
- createDetailsViewer();
- getSashForm().setMaximizedControl( viewer.getControl() );
-
- createOrientationActions();
- IPreferenceStore prefStore = CDebugUIPlugin.getDefault().getPreferenceStore();
- String orientation = prefStore.getString( getDetailPanePreferenceKey() );
- for( int i = 0; i < fToggleDetailPaneActions.length; i++ ) {
- fToggleDetailPaneActions[i].setChecked( fToggleDetailPaneActions[i].getOrientation().equals( orientation ) );
- }
- setDetailPaneOrientation( orientation );
-
- viewer.addModelChangedListener( this );
- viewer.addViewerUpdateListener( this );
-
- return viewer;
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.debug.ui.AbstractDebugView#createActions()
- */
- protected void createActions() {
- TextViewerAction textAction = new TextViewerAction( getDetailViewer(), ITextOperationTarget.SELECT_ALL );
- textAction.configureAction( ModulesMessages.getString( "ModulesView.13" ), "", "" ); //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
- textAction.setActionDefinitionId( IWorkbenchActionDefinitionIds.SELECT_ALL );
- setAction( ActionFactory.SELECT_ALL.getId(), textAction );
- textAction = new TextViewerAction( getDetailViewer(), ITextOperationTarget.COPY );
- textAction.configureAction( ModulesMessages.getString( "ModulesView.16" ), "", "" ); //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
- textAction.setActionDefinitionId( IWorkbenchActionDefinitionIds.COPY );
- setAction( ActionFactory.COPY.getId(), textAction );
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.debug.ui.AbstractDebugView#getHelpContextId()
- */
- protected String getHelpContextId() {
- return ICDebugHelpContextIds.MODULES_VIEW;
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.debug.ui.AbstractDebugView#fillContextMenu(org.eclipse.jface.action.IMenuManager)
- */
- protected void fillContextMenu( IMenuManager menu ) {
- menu.add( new Separator( ICDebugUIConstants.EMPTY_MODULES_GROUP ) );
- menu.add( new Separator( ICDebugUIConstants.MODULES_GROUP ) );
- menu.add( new Separator( ICDebugUIConstants.EMPTY_REFRESH_GROUP ) );
- menu.add( new Separator( ICDebugUIConstants.REFRESH_GROUP ) );
- menu.add( new Separator( IWorkbenchActionConstants.MB_ADDITIONS ) );
- updateObjects();
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.debug.ui.AbstractDebugView#configureToolBar(org.eclipse.jface.action.IToolBarManager)
- */
- protected void configureToolBar( IToolBarManager tbm ) {
- tbm.add( new Separator( ICDebugUIConstants.MODULES_GROUP ) );
- tbm.add( new Separator( ICDebugUIConstants.REFRESH_GROUP ) );
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.cdt.debug.internal.ui.views.IDebugExceptionHandler#handleException(org.eclipse.debug.core.DebugException)
- */
- public void handleException( DebugException e ) {
- showMessage( e.getMessage() );
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.jface.util.IPropertyChangeListener#propertyChange(org.eclipse.jface.util.PropertyChangeEvent)
- */
- public void propertyChange( PropertyChangeEvent event ) {
- String propertyName = event.getProperty();
- if ( propertyName.equals( IInternalCDebugUIConstants.DETAIL_PANE_FONT ) ) {
- getDetailViewer().getTextWidget().setFont( JFaceResources.getFont( IInternalCDebugUIConstants.DETAIL_PANE_FONT ) );
- }
- }
-
- protected void setViewerInput( Object context ) {
- IModuleRetrieval mr = null;
- if ( context instanceof IAdaptable ) {
- ICDebugTarget target = (ICDebugTarget)((IAdaptable)context).getAdapter( ICDebugTarget.class );
- if ( target != null )
- mr = (IModuleRetrieval)target.getAdapter( IModuleRetrieval.class );
- }
-
- if ( context == null ) {
- clearDetails();
- }
- Object current = getViewer().getInput();
- if ( current == null && mr == null ) {
- return;
- }
- if ( current != null && current.equals( mr ) ) {
- return;
- }
-
- showViewer();
- getViewer().setInput( mr );
- }
-
- protected TreeModelViewer createTreeViewer( Composite parent ) {
- // add tree viewer
- final TreeModelViewer modulesViewer = new TreeModelViewer( parent, SWT.MULTI | SWT.V_SCROLL | SWT.H_SCROLL | SWT.VIRTUAL | SWT.FULL_SELECTION, getPresentationContext() );
- modulesViewer.getControl().addFocusListener( new FocusAdapter() {
-
- /* (non-Javadoc)
- * @see org.eclipse.swt.events.FocusListener#focusGained(org.eclipse.swt.events.FocusEvent)
- */
- public void focusGained( FocusEvent e ) {
- fTreeHasFocus = true;
- getSite().setSelectionProvider( modulesViewer );
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.swt.events.FocusAdapter#focusLost(org.eclipse.swt.events.FocusEvent)
- */
- public void focusLost( FocusEvent e ) {
- getSite().setSelectionProvider( null );
- }
- } );
-
- getSite().setSelectionProvider( modulesViewer );
- modulesViewer.addPostSelectionChangedListener( getTreeSelectionChangedListener() );
-
- // listen to debug context
- DebugUITools.getDebugContextManager().getContextService( getSite().getWorkbenchWindow() ).addDebugContextListener( this );
- return modulesViewer;
- }
-
- /**
- * Create the widgetry for the details viewer.
- */
- protected void createDetailsViewer() {
- // Create & configure a SourceViewer
- SourceViewer detailsViewer = new SourceViewer( getSashForm(), null, SWT.V_SCROLL | SWT.H_SCROLL );
- Listener activateListener = new Listener() {
-
- public void handleEvent( Event event ) {
- fTreeHasFocus = false;
- }
- };
- detailsViewer.getControl().addListener( SWT.Activate, activateListener );
- setDetailViewer( detailsViewer );
- detailsViewer.setDocument( getDetailDocument() );
- detailsViewer.getTextWidget().setFont( JFaceResources.getFont( IInternalCDebugUIConstants.DETAIL_PANE_FONT ) );
- getDetailDocument().addDocumentListener( getDetailDocumentListener() );
- detailsViewer.configure( new SourceViewerConfiguration() );
- detailsViewer.setEditable( false );
- Control control = detailsViewer.getControl();
- GridData gd = new GridData( GridData.FILL_BOTH );
- control.setLayoutData( gd );
- detailsViewer.getSelectionProvider().addSelectionChangedListener( getDetailSelectionChangedListener() );
- detailsViewer.getControl().addFocusListener( new FocusAdapter() {
-
- /* (non-Javadoc)
- * @see org.eclipse.swt.events.FocusListener#focusGained(org.eclipse.swt.events.FocusEvent)
- */
- public void focusGained( FocusEvent e ) {
- setFocusViewer( (Viewer)getDetailViewer() );
- }
- } );
- // add a context menu to the detail area
- createDetailContextMenu( detailsViewer.getTextWidget() );
- detailsViewer.getTextWidget().addMouseListener( getCursorListener() );
- detailsViewer.getTextWidget().addKeyListener( getCursorListener() );
- }
-
- private void setDetailViewer( ISourceViewer viewer ) {
- fDetailViewer = viewer;
- }
-
- protected ISourceViewer getDetailViewer() {
- return fDetailViewer;
- }
-
- protected SashForm getSashForm() {
- return fSashForm;
- }
-
- private void setSashForm( SashForm sashForm ) {
- fSashForm = sashForm;
- }
-
- protected TreeModelViewer getModulesViewer() {
- return (TreeModelViewer)getViewer();
- }
-
- protected void setFocusViewer( Viewer viewer ) {
- fFocusViewer = viewer;
- }
-
- protected Viewer getFocusViewer() {
- return fFocusViewer;
- }
-
- /**
- * Lazily instantiate and return a selection listener that populates the detail pane,
- * but only if the detail is currently visible.
- */
- protected ISelectionChangedListener getTreeSelectionChangedListener() {
- if ( fTreeSelectionChangedListener == null ) {
- fTreeSelectionChangedListener = new ISelectionChangedListener() {
-
- public void selectionChanged( SelectionChangedEvent event ) {
- if ( event.getSelectionProvider().equals( getModulesViewer() ) ) {
- clearStatusLine();
- // if the detail pane is not visible, don't waste time retrieving details
- if ( getSashForm().getMaximizedControl() == getViewer().getControl() ) {
- return;
- }
- IStructuredSelection selection = (IStructuredSelection)event.getSelection();
- populateDetailPaneFromSelection( selection );
- treeSelectionChanged( event );
- }
- }
- };
- }
- return fTreeSelectionChangedListener;
- }
-
- protected void treeSelectionChanged( SelectionChangedEvent event ) {
- }
-
- /**
- * Ask the modules tree for its current selection, and use this to populate
- * the detail pane.
- */
- public void populateDetailPane() {
- if ( isDetailPaneVisible() ) {
- Viewer viewer = getViewer();
- if ( viewer != null ) {
- IStructuredSelection selection = (IStructuredSelection)viewer.getSelection();
- populateDetailPaneFromSelection( selection );
- }
- }
- }
-
- /**
- * Show the details associated with the first of the selected elements in the
- * detail pane.
- */
- protected void populateDetailPaneFromSelection( IStructuredSelection selection ) {
- getDetailDocument().set( "" ); //$NON-NLS-1$
- if ( !selection.isEmpty() ) {
- computeDetail( selection.getFirstElement() );
- }
- }
-
- /**
- * Lazily instantiate and return a selection listener that updates the enabled
- * state of the selection oriented actions in this view.
- */
- protected ISelectionChangedListener getDetailSelectionChangedListener() {
- if ( fDetailSelectionChangedListener == null ) {
- fDetailSelectionChangedListener = new ISelectionChangedListener() {
-
- public void selectionChanged( SelectionChangedEvent event ) {
- }
- };
- }
- return fDetailSelectionChangedListener;
- }
-
- /**
- * Lazily instantiate and return a document listener that updates the enabled state
- * of the 'Find/Replace' action.
- */
- protected IDocumentListener getDetailDocumentListener() {
- if ( fDetailDocumentListener == null ) {
- fDetailDocumentListener = new IDocumentListener() {
-
- public void documentAboutToBeChanged( DocumentEvent event ) {
- }
-
- public void documentChanged( DocumentEvent event ) {
- }
- };
- }
- return fDetailDocumentListener;
- }
-
- /**
- * Lazily instantiate and return a Document for the detail pane text viewer.
- */
- protected IDocument getDetailDocument() {
- if ( fDetailDocument == null ) {
- fDetailDocument = new Document();
- }
- return fDetailDocument;
- }
-
- protected void updateSelectionDependentActions() {
- }
-
- protected void updateAction( String actionId ) {
- IAction action = getAction( actionId );
- if ( action instanceof IUpdate ) {
- ((IUpdate)action).update();
- }
- }
-
- protected void createDetailContextMenu( Control menuControl ) {
- MenuManager menuMgr = new MenuManager();
- menuMgr.setRemoveAllWhenShown( true );
- menuMgr.addMenuListener( new IMenuListener() {
-
- public void menuAboutToShow( IMenuManager mgr ) {
- fillDetailContextMenu( mgr );
- }
- } );
- Menu menu = menuMgr.createContextMenu( menuControl );
- menuControl.setMenu( menu );
- // register the context menu such that other plugins may contribute to it
- getSite().registerContextMenu( ICDebugUIConstants.MODULES_VIEW_DETAIL_ID, menuMgr, getDetailViewer().getSelectionProvider() );
- addContextMenuManager( menuMgr );
- }
-
- protected void fillDetailContextMenu( IMenuManager menu ) {
- menu.add( new Separator( ICDebugUIConstants.MODULES_GROUP ) );
- menu.add( new Separator() );
- menu.add( getAction( ActionFactory.COPY.getId() ) );
- menu.add( getAction( ActionFactory.SELECT_ALL.getId() ) );
- menu.add( new Separator( IWorkbenchActionConstants.MB_ADDITIONS ) );
- updateObjects();
- }
-
- private ICursorListener getCursorListener() {
- if ( fCursorListener == null ) {
- fCursorListener = new ICursorListener() {
-
- public void keyPressed( KeyEvent e ) {
- }
-
- public void keyReleased( KeyEvent e ) {
- }
-
- public void mouseDoubleClick( MouseEvent e ) {
- }
-
- public void mouseDown( MouseEvent e ) {
- }
-
- public void mouseUp( MouseEvent e ) {
- }
- };
- }
- return fCursorListener;
- }
-
- public void setDetailPaneOrientation( String orientation ) {
- if ( orientation.equals( fCurrentDetailPaneOrientation ) ) {
- return;
- }
- if ( orientation.equals( ICDebugPreferenceConstants.MODULES_DETAIL_PANE_HIDDEN ) ) {
- hideDetailPane();
- }
- else {
- int vertOrHoriz = orientation.equals( ICDebugPreferenceConstants.MODULES_DETAIL_PANE_UNDERNEATH ) ? SWT.VERTICAL : SWT.HORIZONTAL;
- getSashForm().setOrientation( vertOrHoriz );
- if ( ICDebugPreferenceConstants.MODULES_DETAIL_PANE_HIDDEN.equals( fCurrentDetailPaneOrientation ) ) {
- showDetailPane();
- }
- }
- fCurrentDetailPaneOrientation = orientation;
- CDebugUIPlugin.getDefault().getPreferenceStore().setValue( getDetailPanePreferenceKey(), orientation );
- }
-
- private void hideDetailPane() {
- if ( fToggledDetailOnce ) {
- setLastSashWeights( getSashForm().getWeights() );
- }
- getSashForm().setMaximizedControl( getViewer().getControl() );
- }
-
- private void showDetailPane() {
- getSashForm().setMaximizedControl( null );
- getSashForm().setWeights( getLastSashWeights() );
- populateDetailPane();
- revealTreeSelection();
- fToggledDetailOnce = true;
- }
-
- protected String getDetailPanePreferenceKey() {
- return ICDebugPreferenceConstants.MODULES_DETAIL_PANE_ORIENTATION;
- }
-
- protected int[] getLastSashWeights() {
- if ( fLastSashWeights == null ) {
- fLastSashWeights = DEFAULT_SASH_WEIGHTS;
- }
- return fLastSashWeights;
- }
-
- protected void setLastSashWeights( int[] weights ) {
- fLastSashWeights = weights;
- }
-
- private void createOrientationActions() {
- IActionBars actionBars = getViewSite().getActionBars();
- IMenuManager viewMenu = actionBars.getMenuManager();
- fToggleDetailPaneActions = new ToggleDetailPaneAction[3];
- fToggleDetailPaneActions[0] = new ToggleDetailPaneAction( this, ICDebugPreferenceConstants.MODULES_DETAIL_PANE_UNDERNEATH, null );
- fToggleDetailPaneActions[1] = new ToggleDetailPaneAction( this, ICDebugPreferenceConstants.MODULES_DETAIL_PANE_RIGHT, null );
- fToggleDetailPaneActions[2] = new ToggleDetailPaneAction( this, ICDebugPreferenceConstants.MODULES_DETAIL_PANE_HIDDEN, getToggleActionLabel() );
- viewMenu.add( new Separator() );
- viewMenu.add( fToggleDetailPaneActions[0] );
- viewMenu.add( fToggleDetailPaneActions[1] );
- viewMenu.add( fToggleDetailPaneActions[2] );
- viewMenu.add( new Separator() );
- }
-
- protected String getToggleActionLabel() {
- return ModulesMessages.getString( "ModulesView.0" ); //$NON-NLS-1$
- }
-
- protected boolean isDetailPaneVisible() {
- return !fToggleDetailPaneActions[2].isChecked();
- }
-
- /**
- * Make sure the currently selected item in the tree is visible.
- */
- protected void revealTreeSelection() {
- StructuredViewer viewer = (StructuredViewer)getViewer();
- if ( viewer != null ) {
- ISelection selection = viewer.getSelection();
- if ( selection instanceof IStructuredSelection ) {
- Object selected = ((IStructuredSelection)selection).getFirstElement();
- if ( selected != null ) {
- viewer.reveal( selected );
- }
- }
- }
- }
-
- /**
- * Set on or off the word wrap flag for the detail pane.
- */
- public void toggleDetailPaneWordWrap( boolean on ) {
- fDetailViewer.getTextWidget().setWordWrap( on );
- }
-
- /**
- * Saves the current state of the viewer
- * @param memento the memento to write the viewer state into
- */
- public void saveViewerState( IMemento memento ) {
- if ( fSashForm != null && !fSashForm.isDisposed() ) {
- int[] weights = fSashForm.getWeights();
- memento.putInteger( SASH_VIEW_PART, weights[0] );
- memento.putInteger( SASH_DETAILS_PART, weights[1] );
- }
- getModulesViewer().saveState( memento );
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.ui.IViewPart#init(org.eclipse.ui.IViewSite, org.eclipse.ui.IMemento)
- */
- public void init( IViewSite site, IMemento memento ) throws PartInitException {
- super.init( site, memento );
-
- PREF_STATE_MEMENTO = PREF_STATE_MEMENTO + site.getId();
- IPreferenceStore store = CDebugUIPlugin.getDefault().getPreferenceStore();
- String string = store.getString( PREF_STATE_MEMENTO );
- if ( string.length() > 0 ) {
- ByteArrayInputStream bin = new ByteArrayInputStream( string.getBytes() );
- InputStreamReader reader = new InputStreamReader( bin );
- try {
- XMLMemento stateMemento = XMLMemento.createReadRoot( reader );
- setMemento( stateMemento );
- }
- catch( WorkbenchException e ) {
- }
- finally {
- try {
- reader.close();
- bin.close();
- }
- catch( IOException e ) {
- }
- }
- }
-
- IMemento mem = getMemento();
- setLastSashWeights( DEFAULT_SASH_WEIGHTS );
- setLastSashWeights( DEFAULT_SASH_WEIGHTS );
- if ( mem != null ) {
- Integer sw = mem.getInteger( SASH_VIEW_PART );
- if ( sw != null ) {
- int view = sw.intValue();
- sw = mem.getInteger( SASH_DETAILS_PART );
- if ( sw != null ) {
- int details = sw.intValue();
- if ( view > -1 & details > -1 ) {
- setLastSashWeights( new int[] { view, details } );
- }
- }
- }
- }
- site.getWorkbenchWindow().addPerspectiveListener( this );
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.debug.ui.AbstractDebugView#getDefaultControl()
- */
- protected Control getDefaultControl() {
- return getSashForm();
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.debug.ui.AbstractDebugView#becomesHidden()
- */
- protected void becomesHidden() {
- setViewerInput( new StructuredSelection() );
- super.becomesHidden();
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.debug.ui.AbstractDebugView#becomesVisible()
- */
- protected void becomesVisible() {
- super.becomesVisible();
- ISelection selection = DebugUITools.getDebugContextManager().getContextService( getSite().getWorkbenchWindow() ).getActiveContext();
- contextActivated( selection );
- }
-
- private void computeDetail( final Object element ) {
- if ( element != null ) {
- DebugPlugin.getDefault().asyncExec( new Runnable() {
-
- public void run() {
- detailComputed( element, doComputeDetail( element ) );
- }
- } );
- }
- }
-
- protected String doComputeDetail( Object element ) {
- if ( element instanceof ICModule ) {
- return getModuleDetail( ((ICModule)element) );
- }
- if ( element instanceof ICElement ) {
- return element.toString();
- }
- return ""; //$NON-NLS-1$
- }
-
- private String getModuleDetail( ICModule module ) {
- StringBuffer sb = new StringBuffer();
-
- // Type
- String type = null;
- switch( module.getType() ) {
- case ICModule.EXECUTABLE:
- type = ModulesMessages.getString( "ModulesView.1" ); //$NON-NLS-1$
- break;
- case ICModule.SHARED_LIBRARY:
- type = ModulesMessages.getString( "ModulesView.2" ); //$NON-NLS-1$
- break;
- }
- if ( type != null ) {
- sb.append( ModulesMessages.getString( "ModulesView.3" ) ); //$NON-NLS-1$
- sb.append( type );
- sb.append( '\n' );
- }
-
- // Symbols flag
- sb.append( ModulesMessages.getString( "ModulesView.4" ) ); //$NON-NLS-1$
- sb.append( ( module.areSymbolsLoaded() ) ? ModulesMessages.getString( "ModulesView.5" ) : ModulesMessages.getString( "ModulesView.6" ) ); //$NON-NLS-1$ //$NON-NLS-2$
- sb.append( '\n' );
-
- // Symbols file
- sb.append( ModulesMessages.getString( "ModulesView.7" ) ); //$NON-NLS-1$
- sb.append( module.getSymbolsFileName().toOSString() );
- sb.append( '\n' );
-
- // CPU
- String cpu = module.getCPU();
- if ( cpu != null ) {
- sb.append( ModulesMessages.getString( "ModulesView.8" ) ); //$NON-NLS-1$
- sb.append( cpu );
- sb.append( '\n' );
- }
-
- // Base address
- IAddress baseAddress = module.getBaseAddress();
- if ( !baseAddress.isZero() ) {
- sb.append( ModulesMessages.getString( "ModulesView.9" ) ); //$NON-NLS-1$
- sb.append( baseAddress.toHexAddressString() );
- sb.append( '\n' );
- }
-
- // Size
- long size = module.getSize();
- if ( size > 0 ) {
- sb.append( ModulesMessages.getString( "ModulesView.10" ) ); //$NON-NLS-1$
- sb.append( size );
- sb.append( '\n' );
- }
-
- return sb.toString();
- }
-
- protected void detailComputed( Object element, final String result ) {
- Runnable runnable = new Runnable() {
-
- public void run() {
- if ( isAvailable() ) {
- getDetailDocument().set( result );
- }
- }
- };
- asyncExec( runnable );
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.ui.IWorkbenchPart#dispose()
- */
- public void dispose() {
- DebugUITools.getDebugContextManager().getContextService( getSite().getWorkbenchWindow() ).removeDebugContextListener( this );
- getSite().getWorkbenchWindow().removePerspectiveListener( this );
- CDebugUIPlugin.getDefault().getPreferenceStore().removePropertyChangeListener( this );
- JFaceResources.getFontRegistry().removeListener( this );
- TreeModelViewer viewer = getModulesViewer();
- if ( viewer != null ) {
- viewer.removeModelChangedListener( this );
- viewer.removeViewerUpdateListener( this );
- }
- if ( viewer != null ) {
- getDetailDocument().removeDocumentListener( getDetailDocumentListener() );
- }
- disposeImageCache();
- super.dispose();
- }
-
- protected Image getImage( ImageDescriptor desc ) {
- Image image = (Image)fImageCache.get( desc );
- if ( image == null ) {
- image = desc.createImage();
- fImageCache.put( desc, image );
- }
- return image;
- }
-
- private void disposeImageCache() {
- Iterator it = fImageCache.values().iterator();
- while( it.hasNext() ) {
- ((Image)it.next()).dispose();
- }
- fImageCache.clear();
- }
-
- public void contextActivated( ISelection selection ) {
- if ( !isAvailable() || !isVisible() ) {
- return;
- }
- if ( selection instanceof IStructuredSelection ) {
- setViewerInput( ((IStructuredSelection)selection).getFirstElement() );
- }
- showViewer();
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.debug.ui.contexts.IDebugContextListener#debugContextChanged(org.eclipse.debug.ui.contexts.DebugContextEvent)
- */
- public void debugContextChanged( DebugContextEvent event ) {
- if ( (event.getFlags() & DebugContextEvent.ACTIVATED) > 0 ) {
- contextActivated( event.getContext() );
- }
- }
-
- private IPresentationContext getPresentationContext() {
- return new ModulesViewPresentationContext( CDebugUIPlugin.getDebugModelPresentation() );
- }
-
- private void clearDetails() {
- getDetailDocument().set( "" ); //$NON-NLS-1$
- }
-
- public void perspectiveActivated( IWorkbenchPage page, IPerspectiveDescriptor perspective ) {
- }
-
- public void perspectiveChanged( IWorkbenchPage page, IPerspectiveDescriptor perspective, String changeId ) {
- if ( changeId.equals( IWorkbenchPage.CHANGE_RESET ) ) {
- setLastSashWeights( DEFAULT_SASH_WEIGHTS );
- fSashForm.setWeights( DEFAULT_SASH_WEIGHTS );
- }
- }
-
- public void modelChanged( IModelDelta delta, IModelProxy proxy ) {
- }
-
- public void updateComplete( IViewerUpdate update ) {
- IStatus status = update.getStatus();
- if ( !update.isCanceled() ) {
- if ( status != null && status.getCode() != IStatus.OK ) {
- showMessage( status.getMessage() );
- }
- else {
- showViewer();
- }
- }
- }
-
- public void updateStarted( IViewerUpdate update ) {
- }
-
- public void viewerUpdatesBegin() {
- }
-
- public void viewerUpdatesComplete() {
- }
-
- protected void clearStatusLine() {
- IStatusLineManager manager = getViewSite().getActionBars().getStatusLineManager();
- manager.setErrorMessage( null );
- manager.setMessage( null );
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.ui.part.PageBookView#partDeactivated(org.eclipse.ui.IWorkbenchPart)
- */
- public void partDeactivated( IWorkbenchPart part ) {
- String id = part.getSite().getId();
- if ( id.equals( getSite().getId() ) ) {
- ByteArrayOutputStream bout = new ByteArrayOutputStream();
- OutputStreamWriter writer = new OutputStreamWriter( bout );
-
- try {
- XMLMemento memento = XMLMemento.createWriteRoot( "ModulesViewMemento" ); //$NON-NLS-1$
- saveViewerState( memento );
- memento.save( writer );
-
- IPreferenceStore store = CDebugUIPlugin.getDefault().getPreferenceStore();
- String xmlString = bout.toString();
- store.putValue( PREF_STATE_MEMENTO, xmlString );
- }
- catch( IOException e ) {
- }
- finally {
- try {
- writer.close();
- bout.close();
- }
- catch( IOException e ) {
- }
- }
- }
- super.partDeactivated( part );
- }
-}
diff --git a/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/views/modules/ModulesViewEventHandler.java b/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/views/modules/ModulesViewEventHandler.java
deleted file mode 100644
index 793c792e9fa..00000000000
--- a/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/views/modules/ModulesViewEventHandler.java
+++ /dev/null
@@ -1,102 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.internal.ui.views.modules;
-
-import org.eclipse.cdt.debug.core.model.ICModule;
-import org.eclipse.cdt.debug.core.model.IModuleRetrieval;
-import org.eclipse.debug.core.DebugEvent;
-import org.eclipse.debug.core.model.IDebugTarget;
-import org.eclipse.debug.internal.ui.viewers.model.provisional.IModelDelta;
-import org.eclipse.debug.internal.ui.viewers.model.provisional.ModelDelta;
-import org.eclipse.debug.internal.ui.viewers.provisional.AbstractModelProxy;
-import org.eclipse.debug.internal.ui.viewers.update.DebugEventHandler;
-
-/**
- * Comment for .
- */
-public class ModulesViewEventHandler extends DebugEventHandler {
-
- private IModuleRetrieval fModuleRetrieval;
-
- /**
- * Constructor for ModulesViewEventHandler.
- */
- public ModulesViewEventHandler( AbstractModelProxy proxy, IModuleRetrieval moduleRetrieval ) {
- super( proxy );
- fModuleRetrieval = moduleRetrieval;
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.debug.internal.ui.viewers.update.DebugEventHandler#handlesEvent(org.eclipse.debug.core.DebugEvent)
- */
- protected boolean handlesEvent( DebugEvent event ) {
- if ( event.getKind() == DebugEvent.CREATE ||
- event.getKind() == DebugEvent.TERMINATE ||
- event.getKind() == DebugEvent.CHANGE )
- return true;
- return false;
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.debug.internal.ui.viewers.update.DebugEventHandler#handleChange(org.eclipse.debug.core.DebugEvent)
- */
- protected void handleChange( DebugEvent event ) {
- if ( event.getSource() instanceof ICModule )
- fireDelta( (ICModule)event.getSource(), IModelDelta.STATE );
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.debug.internal.ui.viewers.update.DebugEventHandler#handleCreate(org.eclipse.debug.core.DebugEvent)
- */
- protected void handleCreate( DebugEvent event ) {
- Object source = event.getSource();
- if ( source instanceof IDebugTarget ) {
- refreshRoot( event );
- }
- else if ( source instanceof ICModule ) {
- if ( accept( (ICModule)source ) ) {
- ICModule module = (ICModule)source;
- fireDelta( module, IModelDelta.ADDED );
- }
- }
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.debug.internal.ui.viewers.update.DebugEventHandler#handleTerminate(org.eclipse.debug.core.DebugEvent)
- */
- protected void handleTerminate( DebugEvent event ) {
- Object source = event.getSource();
- if ( source instanceof IDebugTarget ) {
- refreshRoot( event );
- }
- else if ( source instanceof ICModule ) {
- fireDelta( (ICModule)source, IModelDelta.REMOVED );
- }
- }
-
- private void fireDelta( ICModule module, int flags ) {
- ModelDelta root = new ModelDelta( fModuleRetrieval, IModelDelta.NO_CHANGE );
- root.addNode( module, flags );
- fireDelta( root );
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.debug.internal.ui.viewers.update.DebugEventHandler#dispose()
- */
- public synchronized void dispose() {
- super.dispose();
- fModuleRetrieval = null;
- }
-
- private boolean accept( ICModule module ) {
- return fModuleRetrieval.equals( module.getAdapter( IModuleRetrieval.class ) );
- }
-}
diff --git a/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/views/modules/ModulesViewModelProxy.java b/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/views/modules/ModulesViewModelProxy.java
deleted file mode 100644
index 550198337a7..00000000000
--- a/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/views/modules/ModulesViewModelProxy.java
+++ /dev/null
@@ -1,46 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.internal.ui.views.modules;
-
-import org.eclipse.cdt.debug.core.model.IModuleRetrieval;
-import org.eclipse.debug.internal.ui.viewers.update.DebugEventHandler;
-import org.eclipse.debug.internal.ui.viewers.update.EventHandlerModelProxy;
-
-/**
- * Default update for modules view.
- */
-public class ModulesViewModelProxy extends EventHandlerModelProxy {
-
- private IModuleRetrieval fModuleRetrieval;
-
- /**
- * Constructor for ModulesViewModelProxy.
- */
- public ModulesViewModelProxy( IModuleRetrieval moduleRetrieval ) {
- super();
- fModuleRetrieval = moduleRetrieval;
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.debug.internal.ui.viewers.update.EventHandlerModelProxy#createEventHandlers()
- */
- protected DebugEventHandler[] createEventHandlers() {
- return new DebugEventHandler[] { new ModulesViewEventHandler( this, fModuleRetrieval ) };
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.debug.internal.ui.viewers.update.EventHandlerModelProxy#dispose()
- */
- public synchronized void dispose() {
- super.dispose();
- fModuleRetrieval = null;
- }
-}
diff --git a/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/views/signals/SignalsMessages.java b/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/views/signals/SignalsMessages.java
deleted file mode 100644
index a30dbe25d30..00000000000
--- a/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/views/signals/SignalsMessages.java
+++ /dev/null
@@ -1,32 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.internal.ui.views.signals;
-
-import java.util.MissingResourceException;
-import java.util.ResourceBundle;
-
-public class SignalsMessages {
-
- private static final String BUNDLE_NAME = "org.eclipse.cdt.debug.internal.ui.views.signals.SignalsMessages";//$NON-NLS-1$
-
- private static final ResourceBundle RESOURCE_BUNDLE = ResourceBundle.getBundle( BUNDLE_NAME );
-
- private SignalsMessages() {
- }
-
- public static String getString( String key ) {
- try {
- return RESOURCE_BUNDLE.getString( key );
- } catch( MissingResourceException e ) {
- return '!' + key + '!';
- }
- }
-}
diff --git a/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/views/signals/SignalsMessages.properties b/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/views/signals/SignalsMessages.properties
deleted file mode 100644
index 8f94b7d9e46..00000000000
--- a/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/views/signals/SignalsMessages.properties
+++ /dev/null
@@ -1,17 +0,0 @@
-###############################################################################
-# Copyright (c) 2003, 2006 QNX Software Systems and others.
-# All rights reserved. This program and the accompanying materials
-# are made available under the terms of the Eclipse Public License v1.0
-# which accompanies this distribution, and is available at
-# http://www.eclipse.org/legal/epl-v10.html
-#
-# Contributors:
-# QNX Software Systems - initial API and implementation
-###############################################################################
-
-SignalsViewer.4=Name
-SignalsViewer.5=Pass
-SignalsViewer.6=Suspend
-SignalsViewer.7=Description
-SignalsViewer.8=yes
-SignalsViewer.9=no
diff --git a/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/views/signals/SignalsView.java b/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/views/signals/SignalsView.java
deleted file mode 100644
index b7b9e505633..00000000000
--- a/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/views/signals/SignalsView.java
+++ /dev/null
@@ -1,228 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.internal.ui.views.signals;
-
-import org.eclipse.cdt.debug.core.model.ICDebugTarget;
-import org.eclipse.cdt.debug.core.model.ICSignal;
-import org.eclipse.cdt.debug.internal.ui.ICDebugHelpContextIds;
-import org.eclipse.cdt.debug.internal.ui.views.AbstractDebugEventHandlerView;
-import org.eclipse.cdt.debug.internal.ui.views.IDebugExceptionHandler;
-import org.eclipse.cdt.debug.ui.CDebugUIPlugin;
-import org.eclipse.debug.core.DebugException;
-import org.eclipse.debug.core.model.IDebugElement;
-import org.eclipse.debug.ui.IDebugModelPresentation;
-import org.eclipse.debug.ui.IDebugUIConstants;
-import org.eclipse.jface.action.IMenuManager;
-import org.eclipse.jface.action.IToolBarManager;
-import org.eclipse.jface.action.Separator;
-import org.eclipse.jface.util.IPropertyChangeListener;
-import org.eclipse.jface.util.PropertyChangeEvent;
-import org.eclipse.jface.viewers.IContentProvider;
-import org.eclipse.jface.viewers.ISelection;
-import org.eclipse.jface.viewers.IStructuredSelection;
-import org.eclipse.jface.viewers.ITableLabelProvider;
-import org.eclipse.jface.viewers.LabelProvider;
-import org.eclipse.jface.viewers.StructuredSelection;
-import org.eclipse.jface.viewers.Viewer;
-import org.eclipse.swt.SWT;
-import org.eclipse.swt.graphics.Image;
-import org.eclipse.swt.widgets.Composite;
-import org.eclipse.ui.INullSelectionListener;
-import org.eclipse.ui.ISelectionListener;
-import org.eclipse.ui.IViewPart;
-import org.eclipse.ui.IWorkbenchActionConstants;
-import org.eclipse.ui.IWorkbenchPart;
-
-
-/**
- * Displays signals.
- *
- * @since: Mar 8, 2004
- */
-public class SignalsView extends AbstractDebugEventHandlerView
- implements ISelectionListener,
- INullSelectionListener,
- IPropertyChangeListener,
- IDebugExceptionHandler {
-
- public class SignalsViewLabelProvider extends LabelProvider implements ITableLabelProvider {
-
- /* (non-Javadoc)
- * @see org.eclipse.jface.viewers.ITableLabelProvider#getColumnImage(java.lang.Object, int)
- */
- public Image getColumnImage( Object element, int columnIndex ) {
- if ( columnIndex == 0 )
- return getModelPresentation().getImage( element );
- return null;
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.jface.viewers.ITableLabelProvider#getColumnText(java.lang.Object, int)
- */
- public String getColumnText( Object element, int columnIndex ) {
- if ( element instanceof ICSignal ) {
- try {
- switch( columnIndex ) {
- case 0:
- return ((ICSignal)element).getName();
- case 1:
- return (((ICSignal)element).isPassEnabled()) ? SignalsViewer.YES_VALUE : SignalsViewer.NO_VALUE;
- case 2:
- return (((ICSignal)element).isStopEnabled()) ? SignalsViewer.YES_VALUE : SignalsViewer.NO_VALUE;
- case 3:
- return ((ICSignal)element).getDescription();
- }
- } catch( DebugException e ) {
- }
- }
- return null;
- }
-
- private IDebugModelPresentation getModelPresentation() {
- return CDebugUIPlugin.getDebugModelPresentation();
- }
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.debug.ui.AbstractDebugView#createViewer(org.eclipse.swt.widgets.Composite)
- */
- protected Viewer createViewer( Composite parent ) {
-
- // add tree viewer
- final SignalsViewer vv = new SignalsViewer( parent, SWT.MULTI | SWT.V_SCROLL | SWT.H_SCROLL );
- vv.setContentProvider( createContentProvider() );
- vv.setLabelProvider( new SignalsViewLabelProvider() );
- vv.setUseHashlookup( true );
-
- // listen to preference changes
- CDebugUIPlugin.getDefault().getPreferenceStore().addPropertyChangeListener( this );
-
- // listen to selection in debug view
- getSite().getPage().addSelectionListener( IDebugUIConstants.ID_DEBUG_VIEW, this );
- setEventHandler( new SignalsViewEventHandler( this ) );
-
- return vv;
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.debug.ui.AbstractDebugView#createActions()
- */
- protected void createActions() {
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.debug.ui.AbstractDebugView#getHelpContextId()
- */
- protected String getHelpContextId() {
- return ICDebugHelpContextIds.SIGNALS_VIEW;
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.debug.ui.AbstractDebugView#fillContextMenu(org.eclipse.jface.action.IMenuManager)
- */
- protected void fillContextMenu( IMenuManager menu ) {
- menu.add( new Separator( IWorkbenchActionConstants.MB_ADDITIONS ) );
- updateObjects();
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.debug.ui.AbstractDebugView#configureToolBar(org.eclipse.jface.action.IToolBarManager)
- */
- protected void configureToolBar( IToolBarManager tbm ) {
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.ui.ISelectionListener#selectionChanged(org.eclipse.ui.IWorkbenchPart, org.eclipse.jface.viewers.ISelection)
- */
- public void selectionChanged( IWorkbenchPart part, ISelection selection ) {
- if ( !isAvailable() || !isVisible() )
- return;
- if ( selection == null )
- setViewerInput( new StructuredSelection() );
- else if ( selection instanceof IStructuredSelection )
- setViewerInput( (IStructuredSelection)selection );
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.jface.util.IPropertyChangeListener#propertyChange(org.eclipse.jface.util.PropertyChangeEvent)
- */
- public void propertyChange( PropertyChangeEvent event ) {
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.cdt.debug.internal.ui.views.IDebugExceptionHandler#handleException(org.eclipse.debug.core.DebugException)
- */
- public void handleException( DebugException e ) {
- showMessage( e.getMessage() );
- }
-
- /**
- * Creates this view's content provider.
- *
- * @return a content provider
- */
- private IContentProvider createContentProvider() {
- SignalsViewContentProvider cp = new SignalsViewContentProvider();
- cp.setExceptionHandler( this );
- return cp;
- }
-
- protected void setViewerInput( IStructuredSelection ssel ) {
- ICDebugTarget target = null;
- if ( ssel != null && ssel.size() == 1 ) {
- Object input = ssel.getFirstElement();
- if ( input instanceof IDebugElement && ((IDebugElement)input).getDebugTarget() instanceof ICDebugTarget )
- target = (ICDebugTarget)((IDebugElement)input).getDebugTarget();
- }
-
- if ( getViewer() == null )
- return;
-
- Object current = getViewer().getInput();
- if ( current != null && current.equals( target ) ) {
- updateObjects();
- return;
- }
-
- showViewer();
- getViewer().setInput( target );
- updateObjects();
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.debug.ui.AbstractDebugView#becomesHidden()
- */
- protected void becomesHidden() {
- setViewerInput( new StructuredSelection() );
- super.becomesHidden();
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.debug.ui.AbstractDebugView#becomesVisible()
- */
- protected void becomesVisible() {
- super.becomesVisible();
- IViewPart part = getSite().getPage().findView( IDebugUIConstants.ID_DEBUG_VIEW );
- if ( part != null ) {
- ISelection selection = getSite().getPage().getSelection( IDebugUIConstants.ID_DEBUG_VIEW );
- selectionChanged( part, selection );
- }
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.ui.IWorkbenchPart#dispose()
- */
- public void dispose() {
- getSite().getPage().removeSelectionListener( IDebugUIConstants.ID_DEBUG_VIEW, this );
- CDebugUIPlugin.getDefault().getPreferenceStore().removePropertyChangeListener( this );
- super.dispose();
- }
-}
diff --git a/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/views/signals/SignalsViewContentProvider.java b/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/views/signals/SignalsViewContentProvider.java
deleted file mode 100644
index 7816c3c4d24..00000000000
--- a/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/views/signals/SignalsViewContentProvider.java
+++ /dev/null
@@ -1,89 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.cdt.debug.internal.ui.views.signals;
-
-import org.eclipse.cdt.debug.core.model.ICDebugTarget;
-import org.eclipse.cdt.debug.internal.ui.views.IDebugExceptionHandler;
-import org.eclipse.cdt.debug.ui.CDebugUIPlugin;
-import org.eclipse.debug.core.DebugException;
-import org.eclipse.jface.viewers.IStructuredContentProvider;
-import org.eclipse.jface.viewers.Viewer;
-
-
-/**
- * Provides content for the signals view.
- *
- * @since: Mar 8, 2004
- */
-public class SignalsViewContentProvider implements IStructuredContentProvider {
-
- /**
- * Handler for exceptions as content is retrieved
- */
- private IDebugExceptionHandler fExceptionHandler = null;
-
- public SignalsViewContentProvider() {
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.jface.viewers.IStructuredContentProvider#getElements(java.lang.Object)
- */
- public Object[] getElements( Object inputElement ) {
- if ( inputElement instanceof ICDebugTarget ) {
- ICDebugTarget target = (ICDebugTarget)inputElement;
- try {
- if ( target != null ) {
- Object[] signals = target.getSignals();
- if ( signals != null )
- return signals;
- }
- }
- catch( DebugException e ) {
- if ( getExceptionHandler() != null )
- getExceptionHandler().handleException( e );
- else
- CDebugUIPlugin.log( e );
- }
- }
- return new Object[0];
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.jface.viewers.IContentProvider#dispose()
- */
- public void dispose() {
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.jface.viewers.IContentProvider#inputChanged(org.eclipse.jface.viewers.Viewer, java.lang.Object, java.lang.Object)
- */
- public void inputChanged( Viewer viewer, Object oldInput, Object newInput ) {
- }
-
- /**
- * Sets an exception handler for this content provider.
- *
- * @param handler debug exception handler or <code>null</code>
- */
- protected void setExceptionHandler(IDebugExceptionHandler handler) {
- fExceptionHandler = handler;
- }
-
- /**
- * Returns the exception handler for this content provider.
- *
- * @return debug exception handler or <code>null</code>
- */
- protected IDebugExceptionHandler getExceptionHandler() {
- return fExceptionHandler;
- }
-}
diff --git a/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/views/signals/SignalsViewEventHandler.java b/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/views/signals/SignalsViewEventHandler.java
deleted file mode 100644
index 6f521dbcfbb..00000000000
--- a/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/views/signals/SignalsViewEventHandler.java
+++ /dev/null
@@ -1,59 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.cdt.debug.internal.ui.views.signals;
-
-import org.eclipse.cdt.debug.core.model.ICSignal;
-import org.eclipse.cdt.debug.internal.ui.views.AbstractDebugEventHandler;
-import org.eclipse.debug.core.DebugEvent;
-import org.eclipse.debug.core.model.IDebugTarget;
-import org.eclipse.debug.ui.AbstractDebugView;
-
-
-/**
- * Updates the signals view.
- *
- * @since: Mar 8, 2004
- */
-public class SignalsViewEventHandler extends AbstractDebugEventHandler {
-
- /**
- * Constructs a new event handler on the given view
- *
- * @param view signals view
- */
- public SignalsViewEventHandler( AbstractDebugView view ) {
- super( view );
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.cdt.debug.internal.ui.views.AbstractDebugEventHandler#doHandleDebugEvents(org.eclipse.debug.core.DebugEvent[])
- */
- protected void doHandleDebugEvents( DebugEvent[] events ) {
- for( int i = 0; i < events.length; i++ ) {
- DebugEvent event = events[i];
- switch( event.getKind() ) {
- case DebugEvent.CREATE:
- case DebugEvent.TERMINATE:
- if ( event.getSource() instanceof IDebugTarget || event.getSource() instanceof ICSignal )
- refresh();
- break;
- case DebugEvent.SUSPEND:
- refresh();
- break;
- case DebugEvent.CHANGE:
- if ( event.getSource() instanceof ICSignal )
- refresh( event.getSource() );
- break;
- }
- }
- }
-}
diff --git a/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/views/signals/SignalsViewer.java b/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/views/signals/SignalsViewer.java
deleted file mode 100644
index c856956c779..00000000000
--- a/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/views/signals/SignalsViewer.java
+++ /dev/null
@@ -1,83 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.cdt.debug.internal.ui.views.signals;
-
-import org.eclipse.cdt.debug.internal.ui.PixelConverter;
-import org.eclipse.jface.viewers.TableViewer;
-import org.eclipse.swt.SWT;
-import org.eclipse.swt.layout.GridData;
-import org.eclipse.swt.widgets.Composite;
-import org.eclipse.swt.widgets.Table;
-import org.eclipse.swt.widgets.TableColumn;
-
-
-/**
- * Signals viewer.
- *
- * @since: Mar 8, 2004
- */
-public class SignalsViewer extends TableViewer {
-
- // String constants
- protected static final String YES_VALUE = SignalsMessages.getString( "SignalsViewer.8" ); //$NON-NLS-1$
- protected static final String NO_VALUE = SignalsMessages.getString( "SignalsViewer.9" ); //$NON-NLS-1$
-
- // Column properties
- private static final String CP_NAME = "name"; //$NON-NLS-1$
- private static final String CP_PASS = "pass"; //$NON-NLS-1$
- private static final String CP_SUSPEND = "suspend"; //$NON-NLS-1$
- private static final String CP_DESCRIPTION = "description"; //$NON-NLS-1$
-
- // Column labels
- private static final String CL_NAME = SignalsMessages.getString( "SignalsViewer.4" ); //$NON-NLS-1$
- private static final String CL_PASS = SignalsMessages.getString( "SignalsViewer.5" ); //$NON-NLS-1$
- private static final String CL_SUSPEND = SignalsMessages.getString( "SignalsViewer.6" ); //$NON-NLS-1$
- private static final String CL_DESCRIPTION = SignalsMessages.getString( "SignalsViewer.7" ); //$NON-NLS-1$
-
- /**
- * Constructor for SignalsViewer
- *
- * @param parent
- * @param style
- */
- public SignalsViewer( Composite parent, int style ) {
- super( parent, style );
- Table table = getTable();
- table.setLinesVisible( true );
- table.setHeaderVisible( true );
- table.setLayoutData( new GridData( GridData.FILL_BOTH ) );
-
- // Create the table columns
- new TableColumn( table, SWT.NULL );
- new TableColumn( table, SWT.NULL );
- new TableColumn( table, SWT.NULL );
- new TableColumn( table, SWT.NULL );
- TableColumn[] columns = table.getColumns();
- columns[0].setResizable( true );
- columns[1].setResizable( false );
- columns[2].setResizable( false );
- columns[3].setResizable( true );
-
- columns[0].setText( CL_NAME );
- columns[1].setText( CL_PASS );
- columns[2].setText( CL_SUSPEND );
- columns[3].setText( CL_DESCRIPTION );
-
- PixelConverter pc = new PixelConverter( parent );
- columns[0].setWidth( pc.convertWidthInCharsToPixels( 20 ) );
- columns[1].setWidth( pc.convertWidthInCharsToPixels( 15 ) );
- columns[2].setWidth( pc.convertWidthInCharsToPixels( 15 ) );
- columns[3].setWidth( pc.convertWidthInCharsToPixels( 50 ) );
-
- setColumnProperties( new String[]{ CP_NAME, CP_PASS, CP_SUSPEND, CP_DESCRIPTION } );
- }
-}
diff --git a/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/ui/AbstractCDebuggerPage.java b/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/ui/AbstractCDebuggerPage.java
deleted file mode 100644
index 6946141cf0f..00000000000
--- a/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/ui/AbstractCDebuggerPage.java
+++ /dev/null
@@ -1,36 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.ui;
-
-import org.eclipse.debug.ui.AbstractLaunchConfigurationTab;
-
-/**
- * Common function for debugger pages.
- * @since 3.1
- */
-abstract public class AbstractCDebuggerPage extends AbstractLaunchConfigurationTab implements ICDebuggerPage {
-
- private String fDebuggerID = null;
-
- /* (non-Javadoc)
- * @see org.eclipse.cdt.debug.ui.ICDebuggerPage#init(java.lang.String)
- */
- public void init( String debuggerID ) {
- fDebuggerID = debuggerID;
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.cdt.debug.ui.ICDebuggerPage#getDebuggerIdentifier()
- */
- public String getDebuggerIdentifier() {
- return fDebuggerID;
- }
-}
diff --git a/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/ui/CDebugUIPlugin.java b/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/ui/CDebugUIPlugin.java
deleted file mode 100644
index aff58cc6290..00000000000
--- a/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/ui/CDebugUIPlugin.java
+++ /dev/null
@@ -1,320 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.ui;
-
-import java.util.HashMap;
-import java.util.Map;
-
-import org.eclipse.cdt.core.model.ICElement;
-import org.eclipse.cdt.debug.core.CDebugCorePlugin;
-import org.eclipse.cdt.debug.core.model.ICModule;
-import org.eclipse.cdt.debug.core.model.ICVariable;
-import org.eclipse.cdt.debug.core.model.IModuleRetrieval;
-import org.eclipse.cdt.debug.internal.ui.CBreakpointUpdater;
-import org.eclipse.cdt.debug.internal.ui.CDebugImageDescriptorRegistry;
-import org.eclipse.cdt.debug.internal.ui.CDebugModelPresentation;
-import org.eclipse.cdt.debug.internal.ui.CDebuggerPageAdapter;
-import org.eclipse.cdt.debug.internal.ui.ColorManager;
-import org.eclipse.cdt.debug.internal.ui.EvaluationContextManager;
-import org.eclipse.cdt.debug.internal.ui.IInternalCDebugUIConstants;
-import org.eclipse.cdt.debug.internal.ui.elements.adapters.CDebugElementAdapterFactory;
-import org.eclipse.cdt.debug.internal.ui.elements.adapters.CMemoryAdapterFactory;
-import org.eclipse.cdt.debug.internal.ui.elements.adapters.CWatchExpressionFactoryAdapterFactory;
-import org.eclipse.cdt.debug.ui.sourcelookup.DefaultSourceLocator;
-import org.eclipse.cdt.debug.ui.sourcelookup.OldDefaultSourceLocator;
-import org.eclipse.cdt.ui.CUIPlugin;
-import org.eclipse.core.resources.IWorkspace;
-import org.eclipse.core.resources.ResourcesPlugin;
-import org.eclipse.core.runtime.CoreException;
-import org.eclipse.core.runtime.IAdapterManager;
-import org.eclipse.core.runtime.IConfigurationElement;
-import org.eclipse.core.runtime.IExtensionPoint;
-import org.eclipse.core.runtime.IStatus;
-import org.eclipse.core.runtime.Platform;
-import org.eclipse.core.runtime.Status;
-import org.eclipse.debug.core.model.IMemoryBlockExtension;
-import org.eclipse.debug.core.model.IMemoryBlockRetrievalExtension;
-import org.eclipse.debug.core.model.IPersistableSourceLocator;
-import org.eclipse.debug.ui.ILaunchConfigurationTab;
-import org.eclipse.jface.dialogs.ErrorDialog;
-import org.eclipse.jface.preference.PreferenceConverter;
-import org.eclipse.jface.text.source.ISharedTextColors;
-import org.eclipse.swt.graphics.Color;
-import org.eclipse.swt.widgets.Display;
-import org.eclipse.swt.widgets.Shell;
-import org.eclipse.ui.IWorkbenchPage;
-import org.eclipse.ui.IWorkbenchWindow;
-import org.eclipse.ui.plugin.AbstractUIPlugin;
-import org.osgi.framework.BundleContext;
-
-/**
- * The main plugin class to be used in the desktop.
- */
-public class CDebugUIPlugin extends AbstractUIPlugin {
-
- /**
- * The plug-in identifier (value <code>"org.eclipse.cdt.debug.ui"</code>).
- */
- public static final String PLUGIN_ID = "org.eclipse.cdt.debug.ui"; //$NON-NLS-1$
-
- //The shared instance.
- private static CDebugUIPlugin plugin;
-
- protected Map fDebuggerPageMap;
-
- private CDebugImageDescriptorRegistry fImageDescriptorRegistry;
-
- private ISharedTextColors fSharedTextColors;
-
- /**
- * The constructor.
- */
- public CDebugUIPlugin() {
- super();
- plugin = this;
- }
-
- /**
- * Returns the shared instance.
- */
- public static CDebugUIPlugin getDefault() {
- return plugin;
- }
-
- /**
- * Returns the workspace instance.
- */
- public static IWorkspace getWorkspace() {
- return ResourcesPlugin.getWorkspace();
- }
-
- /**
- * Convenience method which returns the unique identifier of this plugin.
- */
- public static String getUniqueIdentifier() {
- if ( getDefault() == null ) {
- // If the default instance is not yet initialized,
- // return a static identifier. This identifier must
- // match the plugin id defined in plugin.xml
- return PLUGIN_ID;
- }
- return getDefault().getBundle().getSymbolicName();
- }
-
- /**
- * Returns the a color based on the type of output. Valid types:
- * <li>CHANGED_REGISTER_RGB</li>
- */
- public static Color getPreferenceColor( String type ) {
- return ColorManager.getDefault().getColor( PreferenceConverter.getColor( getDefault().getPreferenceStore(), type ) );
- }
-
- public static CDebugModelPresentation getDebugModelPresentation() {
- return CDebugModelPresentation.getDefault();
- }
-
- /**
- * Logs the specified status with this plug-in's log.
- *
- * @param status
- * status to log
- */
- public static void log( IStatus status ) {
- getDefault().getLog().log( status );
- }
-
- /**
- * Logs an internal error with the specified throwable
- *
- * @param e
- * the exception to be logged
- */
- public static void log( Throwable e ) {
- log( new Status( IStatus.ERROR, getUniqueIdentifier(), IInternalCDebugUIConstants.INTERNAL_ERROR, "Internal Error", e ) ); //$NON-NLS-1$
- }
-
- /**
- * Logs an internal error with the specified message.
- *
- * @param message
- * the error message to log
- */
- public static void logErrorMessage( String message ) {
- log( new Status( IStatus.ERROR, getUniqueIdentifier(), IInternalCDebugUIConstants.INTERNAL_ERROR, message, null ) );
- }
-
- public ICDebuggerPage getDebuggerPage( String debuggerID ) throws CoreException {
- if ( fDebuggerPageMap == null ) {
- initializeDebuggerPageMap();
- }
- IConfigurationElement configElement = (IConfigurationElement)fDebuggerPageMap.get( debuggerID );
- ICDebuggerPage tab = null;
- if ( configElement != null ) {
- Object o = configElement.createExecutableExtension( "class" ); //$NON-NLS-1$
- if ( o instanceof ICDebuggerPage ) {
- tab = (ICDebuggerPage)o;
- tab.init( debuggerID );
- }
- else if ( o instanceof ILaunchConfigurationTab ) {
- tab = new CDebuggerPageAdapter( (ILaunchConfigurationTab)o );
- tab.init( debuggerID );
- }
- }
- return tab;
- }
-
- protected void initializeDebuggerPageMap() {
- fDebuggerPageMap = new HashMap( 10 );
- IExtensionPoint extensionPoint = Platform.getExtensionRegistry().getExtensionPoint( PLUGIN_ID, "CDebuggerPage" ); //$NON-NLS-1$
- IConfigurationElement[] infos = extensionPoint.getConfigurationElements();
- for( int i = 0; i < infos.length; i++ ) {
- String id = infos[i].getAttribute( "debuggerID" ); //$NON-NLS-1$
- fDebuggerPageMap.put( id, infos[i] );
- }
- }
-
- public static void errorDialog( String message, IStatus status ) {
- log( status );
- Shell shell = getActiveWorkbenchShell();
- if ( shell != null ) {
- ErrorDialog.openError( shell, UIMessages.getString( "CDebugUIPlugin.0" ), message, status ); //$NON-NLS-1$
- }
- }
-
- public static void errorDialog( String message, Throwable t ) {
- log( t );
- Shell shell = getActiveWorkbenchShell();
- if ( shell != null ) {
- IStatus status = new Status( IStatus.ERROR, getUniqueIdentifier(), IInternalCDebugUIConstants.INTERNAL_ERROR, t.getMessage(), null );
- ErrorDialog.openError( shell, UIMessages.getString( "CDebugUIPlugin.0" ), message, status ); //$NON-NLS-1$
- }
- }
-
- /**
- * Returns the active workbench window
- *
- * @return the active workbench window
- */
- public static IWorkbenchWindow getActiveWorkbenchWindow() {
- return getDefault().getWorkbench().getActiveWorkbenchWindow();
- }
-
- public static IWorkbenchPage getActivePage() {
- IWorkbenchWindow w = getActiveWorkbenchWindow();
- if ( w != null ) {
- return w.getActivePage();
- }
- return null;
- }
-
- /**
- * Returns the active workbench shell or <code>null</code> if none
- *
- * @return the active workbench shell or <code>null</code> if none
- */
- public static Shell getActiveWorkbenchShell() {
- IWorkbenchWindow window = getActiveWorkbenchWindow();
- if ( window != null ) {
- return window.getShell();
- }
- return null;
- }
-
- /**
- * Returns the standard display to be used. The method first checks, if the thread calling this method has an associated display. If so, this display is
- * returned. Otherwise the method returns the default display.
- */
- public static Display getStandardDisplay() {
- Display display;
- display = Display.getCurrent();
- if ( display == null )
- display = Display.getDefault();
- return display;
- }
-
- /**
- * Returns the image descriptor registry used for this plugin.
- */
- public static CDebugImageDescriptorRegistry getImageDescriptorRegistry() {
- if ( getDefault().fImageDescriptorRegistry == null ) {
- getDefault().fImageDescriptorRegistry = new CDebugImageDescriptorRegistry();
- }
- return getDefault().fImageDescriptorRegistry;
- }
-
- public static IPersistableSourceLocator createDefaultSourceLocator() {
- return new DefaultSourceLocator();
- }
-
- public static String getDefaultSourceLocatorID() {
- return OldDefaultSourceLocator.ID_DEFAULT_SOURCE_LOCATOR;
- }
-
- /*
- * to support old launch configurations
- */
- public static String getDefaultSourceLocatorOldID() {
- return OldDefaultSourceLocator.ID_OLD_DEFAULT_SOURCE_LOCATOR;
- }
-
- /*
- * (non-Javadoc)
- *
- * @see org.osgi.framework.BundleActivator#start(org.osgi.framework.BundleContext)
- */
- public void start( BundleContext context ) throws Exception {
- super.start( context );
- EvaluationContextManager.startup();
- CDebugCorePlugin.getDefault().addCBreakpointListener( CBreakpointUpdater.getInstance() );
-
- IAdapterManager manager= Platform.getAdapterManager();
- CDebugElementAdapterFactory elementAdapterFactory = new CDebugElementAdapterFactory();
- manager.registerAdapters( elementAdapterFactory, IModuleRetrieval.class );
- manager.registerAdapters( elementAdapterFactory, ICModule.class );
- manager.registerAdapters( elementAdapterFactory, ICElement.class );
-
- CWatchExpressionFactoryAdapterFactory watchExpressionAdapterFactory = new CWatchExpressionFactoryAdapterFactory();
- manager.registerAdapters( watchExpressionAdapterFactory, ICVariable.class );
-
- CMemoryAdapterFactory memoryAdapterFactory = new CMemoryAdapterFactory();
- manager.registerAdapters( memoryAdapterFactory, IMemoryBlockRetrievalExtension.class );
- manager.registerAdapters( memoryAdapterFactory, IMemoryBlockExtension.class );
- }
-
- /*
- * (non-Javadoc)
- *
- * @see org.osgi.framework.BundleActivator#stop(org.osgi.framework.BundleContext)
- */
- public void stop( BundleContext context ) throws Exception {
- CDebugCorePlugin.getDefault().removeCBreakpointListener( CBreakpointUpdater.getInstance() );
- if ( fSharedTextColors != null ) {
- fSharedTextColors.dispose();
- fSharedTextColors = null;
- }
- if ( fImageDescriptorRegistry != null ) {
- fImageDescriptorRegistry.dispose();
- }
- super.stop( context );
- }
-
- /**
- * Returns the shared text colors of this plug-in.
- *
- * @return the shared text colors
- * @since 3.1
- */
- public ISharedTextColors getSharedTextColors() {
- if ( fSharedTextColors == null )
- fSharedTextColors = CUIPlugin.getDefault().getSharedTextColors();
- return fSharedTextColors;
- }
-}
diff --git a/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/ui/ICDebugUIConstants.java b/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/ui/ICDebugUIConstants.java
deleted file mode 100644
index ed5079427a4..00000000000
--- a/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/ui/ICDebugUIConstants.java
+++ /dev/null
@@ -1,77 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2005 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.ui;
-
-/**
- * Constant definitions for C/C++ Debug UI plug-in.
- */
-public interface ICDebugUIConstants {
- /**
- * C/C++ Debug UI plug-in identifier (value <code>"org.eclipse.cdt.debug.ui"</code>).
- */
- public static final String PLUGIN_ID = CDebugUIPlugin.getUniqueIdentifier();
-
- public static final String PREFIX = PLUGIN_ID + "."; //$NON-NLS-1$
-
- /**
- * Disassembly view identifier (value <code>"org.eclipse.cdt.debug.ui.DisassemblyView"</code>).
- */
- public static final String ID_DISASSEMBLY_VIEW = PREFIX + "DisassemblyView"; //$NON-NLS-1$
-
- /**
- * Modules view identifier (value <code>"org.eclipse.cdt.debug.ui.ModulesView"</code>).
- */
- public static final String ID_MODULES_VIEW = PREFIX + "ModulesView"; //$NON-NLS-1$
-
- /**
- * Id for the popup menu associated with the variables (tree viewer) part of the VariableView
- */
- public static final String MODULES_VIEW_MODULES_ID = PREFIX + "ModulesView.modules"; //$NON-NLS-1$
-
- /**
- * Id for the popup menu associated with the detail (text viewer) part of the Modules view
- */
- public static final String MODULES_VIEW_DETAIL_ID = PREFIX + "ModulesView.detail"; //$NON-NLS-1$
-
- /**
- * Identifier for an empty group preceeding a
- * format group in a menu (value <code>"emptyFormatGroup"</code>).
- */
- public static final String EMPTY_FORMAT_GROUP = "emptyFormatGroup"; //$NON-NLS-1$
-
- /**
- * Identifier for a format group in a menu (value <code>"formatGroup"</code>).
- */
- public static final String FORMAT_GROUP = "formatGroup"; //$NON-NLS-1$
-
- /**
- * Identifier for an empty group preceeding a
- * refresh group in a menu (value <code>"emptyRefreshGroup"</code>).
- */
- public static final String EMPTY_REFRESH_GROUP = "emptyRefreshGroup"; //$NON-NLS-1$
-
- /**
- * Identifier for a refresh group in a menu (value <code>"refreshGroup"
- * </code>).
- */
- public static final String REFRESH_GROUP = "refreshGroup"; //$NON-NLS-1$
-
- /**
- * Identifier for an empty group preceeding a
- * modules group in a menu (value <code>"emptyModulesGroup"</code>).
- */
- public static final String EMPTY_MODULES_GROUP = "emptyModulesGroup"; //$NON-NLS-1$
-
- /**
- * Identifier for a shared libraries group in a menu (value <code>"modulesGroup"</code>).
- */
- public static final String MODULES_GROUP = "modulesGroup"; //$NON-NLS-1$
-}
diff --git a/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/ui/ICDebuggerPage.java b/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/ui/ICDebuggerPage.java
deleted file mode 100644
index e38a25125e9..00000000000
--- a/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/ui/ICDebuggerPage.java
+++ /dev/null
@@ -1,36 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.ui;
-
-import org.eclipse.debug.ui.ILaunchConfigurationTab;
-
-/**
- * Interface for debugger pages contributed via the "CDebuggerPage"
- * extension point.
- *
- * @since 3.1
- */
-public interface ICDebuggerPage extends ILaunchConfigurationTab {
-
- /**
- * Allows the page to initialize itself after being created.
- * This lifecycle method is called after the page has been created
- * and before any other method of the page is called.
- *
- * @param debuggerID the identifier of the debugger this page is created for.
- */
- public void init( String debuggerID );
-
- /**
- * Returns the identifier of the debugger this page is associated with.
- */
- public String getDebuggerIdentifier();
-}
diff --git a/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/ui/UIMessages.java b/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/ui/UIMessages.java
deleted file mode 100644
index 0b1bc6cfd87..00000000000
--- a/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/ui/UIMessages.java
+++ /dev/null
@@ -1,33 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.ui;
-
-import java.util.MissingResourceException;
-import java.util.ResourceBundle;
-
-public class UIMessages {
-
- private static final String BUNDLE_NAME = "org.eclipse.cdt.debug.ui.UIMessages";//$NON-NLS-1$
-
- private static final ResourceBundle RESOURCE_BUNDLE = ResourceBundle.getBundle( BUNDLE_NAME );
-
- private UIMessages() {
- }
-
- public static String getString( String key ) {
- try {
- return RESOURCE_BUNDLE.getString( key );
- }
- catch( MissingResourceException e ) {
- return '!' + key + '!';
- }
- }
-}
diff --git a/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/ui/UIMessages.properties b/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/ui/UIMessages.properties
deleted file mode 100644
index eae72f80163..00000000000
--- a/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/ui/UIMessages.properties
+++ /dev/null
@@ -1,12 +0,0 @@
-###############################################################################
-# Copyright (c) 2003, 2006 QNX Software Systems and others.
-# All rights reserved. This program and the accompanying materials
-# are made available under the terms of the Eclipse Public License v1.0
-# which accompanies this distribution, and is available at
-# http://www.eclipse.org/legal/epl-v10.html
-#
-# Contributors:
-# QNX Software Systems - initial API and implementation
-###############################################################################
-
-CDebugUIPlugin.0=Error
diff --git a/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/ui/importexecutable/AbstractImportExecutableWizard.java b/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/ui/importexecutable/AbstractImportExecutableWizard.java
deleted file mode 100644
index e87d4a111bf..00000000000
--- a/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/ui/importexecutable/AbstractImportExecutableWizard.java
+++ /dev/null
@@ -1,280 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2007 Nokia and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * Nokia - initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.ui.importexecutable;
-
-import java.io.File;
-
-import org.eclipse.cdt.core.CCorePlugin;
-import org.eclipse.cdt.core.ICDescriptor;
-import org.eclipse.cdt.core.ICDescriptorOperation;
-import org.eclipse.cdt.core.model.ICProject;
-import org.eclipse.cdt.debug.core.ICDTLaunchConfigurationConstants;
-import org.eclipse.cdt.ui.CUIPlugin;
-import org.eclipse.core.resources.IFile;
-import org.eclipse.core.resources.IProject;
-import org.eclipse.core.resources.IProjectDescription;
-import org.eclipse.core.resources.IResource;
-import org.eclipse.core.resources.IWorkspace;
-import org.eclipse.core.resources.ResourcesPlugin;
-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.OperationCanceledException;
-import org.eclipse.core.runtime.Path;
-import org.eclipse.core.runtime.Platform;
-import org.eclipse.core.runtime.Status;
-import org.eclipse.core.runtime.jobs.IJobManager;
-import org.eclipse.core.runtime.jobs.Job;
-import org.eclipse.debug.core.ILaunchConfigurationType;
-import org.eclipse.debug.core.ILaunchConfigurationWorkingCopy;
-import org.eclipse.debug.ui.DebugUITools;
-import org.eclipse.jface.viewers.IStructuredSelection;
-import org.eclipse.jface.viewers.StructuredSelection;
-import org.eclipse.jface.wizard.IWizardPage;
-import org.eclipse.jface.wizard.Wizard;
-import org.eclipse.swt.widgets.FileDialog;
-import org.eclipse.ui.INewWizard;
-import org.eclipse.ui.IWorkbench;
-import org.eclipse.ui.progress.UIJob;
-
-public abstract class AbstractImportExecutableWizard extends Wizard implements INewWizard {
-
- // The ImportExecutableWizard lets you select one or more executables and
- // import them into the workspace. You can bring the executables into an
- // existing project or have the wizard create a new project that
- // will contains the executables and allow you to debug them. The wizard can
- // also create a default launch configuration for you that's pre configured
- // to debug the executables.
-
- public static final String DEBUG_PROJECT_ID = "org.eclipse.cdt.debug"; //$NON-NLS-1$
-
- protected ImportExecutablePageOne pageOne;
-
- protected ImportExecutablePageTwo pageTwo;
-
- private String parserID;
-
-
- private void waitForJob(String name)
- {
- IJobManager jobMan = Platform.getJobManager();
- Job[] jobs = jobMan.find(null);
-
- for (int i = 0; i < jobs.length; i++) {
- if (jobs[i].getName().equals(name)) {
- try {
- jobs[i].join();
- } catch (InterruptedException e) {
- }
- }
- }
- }
-
- private void waitForDescSave() {
- String taskName = CCorePlugin.getResourceString("CDescriptorManager.async_updater"); //$NON-NLS-1$
- waitForJob(taskName);
- }
-
- public void addBinaryParsers(IProject newProject) throws CoreException {
- ICDescriptorOperation op = new ICDescriptorOperation() {
-
- public void execute(ICDescriptor descriptor, IProgressMonitor monitor) throws CoreException {
- descriptor.create(CCorePlugin.BINARY_PARSER_UNIQ_ID, parserID);
- }
- };
-
- String[] parserIDs = pageOne.getSupportedBinaryParserIds();
- for (int i = 0; i < parserIDs.length; i++) {
- parserID = parserIDs[i];
- CCorePlugin.getDefault().getCDescriptorManager().runDescriptorOperation(newProject.getProject(), op, null);
- waitForDescSave();
- }
- }
-
- /**
- * Adds the executables to a new or existing project. The executables are
- * added as external links.
- *
- * @param project -
- * project receiving the executables
- * @throws CoreException
- */
- private void addExecutables(ICProject project) throws CoreException {
-
- String[] executables = pageOne.getSelectedExecutables();
-
- for (int i = 0; i < executables.length; i++) {
- IPath location = Path.fromOSString(executables[i]);
- String executableName = location.toFile().getName();
- IFile exeFile = project.getProject().getFile(executableName);
- if (!exeFile.exists())
- exeFile.createLink(location, 0, null);
- }
- }
-
- public void addPages() {
- super.addPages();
- pageOne = new ImportExecutablePageOne(this);
- addPage(pageOne);
- pageTwo = new ImportExecutablePageTwo(this);
- addPage(pageTwo);
- }
-
- public IProject createCProjectForExecutable(String projectName) throws OperationCanceledException, CoreException {
-
- IWorkspace workspace = ResourcesPlugin.getWorkspace();
- IProject newProjectHandle = workspace.getRoot().getProject(projectName);
-
- IProjectDescription description = workspace.newProjectDescription(newProjectHandle.getName());
- description.setLocation(null);
-
- IProject newProject = CCorePlugin.getDefault().createCProject(description, newProjectHandle, null,
- DEBUG_PROJECT_ID);
-
- return newProject;
- }
-
- public void createLaunchConfiguration(ICProject targetProject) throws CoreException {
-
- ILaunchConfigurationWorkingCopy wc = this.getSelectedLaunchConfigurationType().newInstance(null,
- this.getImportExecutablePage2().getNewConfigurationName());
-
- setConfigurationDefaults(wc, targetProject);
-
- final IStructuredSelection selection = new StructuredSelection(wc.doSave());
- final String identifier = new String("org.eclipse.debug.ui.launchGroup.debug");
-
- UIJob openLaunchConfigJob = new UIJob(Messages.AbstractImportExecutableWizard_CreateLaunchConfiguration) {
-
- public IStatus runInUIThread(IProgressMonitor monitor) {
- DebugUITools.openLaunchConfigurationDialogOnGroup(CUIPlugin.getActiveWorkbenchShell(), selection, identifier);
- return Status.OK_STATUS;
- }};
- openLaunchConfigJob.schedule();
-
- }
-
- public abstract String getExecutableListLabel();
-
- public ImportExecutablePageOne getImportExecutablePage() {
- return pageOne;
- }
-
- public ImportExecutablePageTwo getImportExecutablePage2() {
- return pageTwo;
- }
-
- public IWizardPage getNextPage(IWizardPage page) {
- if (page == pageOne) {
- pageTwo.checkExecutableSettings();
- }
- return super.getNextPage(page);
- }
-
- public abstract String getPageOneDescription();
-
- public abstract String getPageOneTitle();
-
- public ILaunchConfigurationType getSelectedLaunchConfigurationType() {
- return pageTwo.getSelectedLaunchConfigurationType();
- }
-
- public String getDefaultWindowTitle() {
- return Messages.AbstractImportExecutableWizard_windowTitle;
- }
-
- public void init(IWorkbench workbench, IStructuredSelection selection) {
- setWindowTitle(getDefaultWindowTitle());
- setNeedsProgressMonitor(true);
- }
-
- public boolean performFinish() {
-
- ICProject targetProject = null;
- try {
- if (pageTwo.isCreateNewProjectSelected()) {
- IProject newProject = createCProjectForExecutable(pageTwo
- .getNewProjectName());
- setupProject(newProject);
- targetProject = CCorePlugin.getDefault().getCoreModel().create(
- newProject);
- } else {
- targetProject = pageTwo.getExistingCProject();
- }
- addBinaryParsers(targetProject.getProject());
- addExecutables(targetProject);
- if (pageTwo.isCreateLaunchConfigurationSelected()) {
- createLaunchConfiguration(targetProject);
- }
- } catch (OperationCanceledException e) {
- } catch (CoreException e) {
- }
- return true;
- }
-
- /**
- * Subclasses should override this method to modify the launch configuration
- * created by the wizard. The default implementation sets up the project
- * and program names.
- * @param config the launch configuration created by the wizard
- * @param targetProject
- */
- public void setConfigurationDefaults(ILaunchConfigurationWorkingCopy config, ICProject project) {
-
- config.setMappedResources(new IResource[] {project.getProject()});
- config.setAttribute(ICDTLaunchConfigurationConstants.ATTR_PROJECT_NAME, project.getProject().getName());
- config.setAttribute(ICDTLaunchConfigurationConstants.ATTR_PROGRAM_NAME, new File(getImportExecutablePage()
- .getSelectedExecutables()[0]).getName());
-
- }
-
- public abstract void setupFileDialog(FileDialog dialog);
-
- public void setupProject(IProject newProject) throws CoreException {
- }
-
- /**
- * The wizard will only display launch configuration types that you support.
- * This method will be called for each available type.
- *
- * @param type -
- * the type of launch configuration
- * @return - if the wizard supports this launch configuration type
- */
- public abstract boolean supportsConfigurationType(
- ILaunchConfigurationType type);
-
- /**
- * Return true if you want the wizard to ask the user to select
- * the binary parser. Otherwise it will only use the default one.
- * A subclass can specify the default parser by overriding
- * getDefaultBinaryParserID.
- * @return - If the binary parser selection combo should be displayed.
- */
- public boolean userSelectsBinaryParser() {
- return true;
- }
-
- /** Get the default binary parser the wizard will use to determine if
- * single file selections are valid and to filter the list for multi
- * file selection.
- * @return
- */
- public String[] getDefaultBinaryParserIDs() {
- String defaultBinaryParserId = CCorePlugin.getDefault().getPluginPreferences().getDefaultString(CCorePlugin.PREF_BINARY_PARSER);
- if (defaultBinaryParserId == null || defaultBinaryParserId.length() == 0) {
- defaultBinaryParserId = CCorePlugin.DEFAULT_BINARY_PARSER_UNIQ_ID;
- }
- return new String[] { defaultBinaryParserId };
- }
-
-}
diff --git a/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/ui/importexecutable/ImportExecutablePageOne.java b/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/ui/importexecutable/ImportExecutablePageOne.java
deleted file mode 100644
index 6e13a4ed6f3..00000000000
--- a/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/ui/importexecutable/ImportExecutablePageOne.java
+++ /dev/null
@@ -1,636 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2006 Nokia and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * Nokia - initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.ui.importexecutable;
-
-import java.io.File;
-import java.io.IOException;
-import java.lang.reflect.InvocationTargetException;
-import java.util.ArrayList;
-import java.util.Collection;
-
-import org.eclipse.cdt.core.CCorePlugin;
-import org.eclipse.cdt.core.IBinaryParser;
-import org.eclipse.cdt.debug.ui.CDebugUIPlugin;
-import org.eclipse.core.runtime.CoreException;
-import org.eclipse.core.runtime.IConfigurationElement;
-import org.eclipse.core.runtime.IExtension;
-import org.eclipse.core.runtime.IExtensionPoint;
-import org.eclipse.core.runtime.IProgressMonitor;
-import org.eclipse.core.runtime.Path;
-import org.eclipse.core.runtime.Platform;
-import org.eclipse.core.runtime.SubProgressMonitor;
-import org.eclipse.jface.dialogs.Dialog;
-import org.eclipse.jface.operation.IRunnableWithProgress;
-import org.eclipse.jface.viewers.CheckStateChangedEvent;
-import org.eclipse.jface.viewers.CheckboxTreeViewer;
-import org.eclipse.jface.viewers.ICheckStateListener;
-import org.eclipse.jface.viewers.ITreeContentProvider;
-import org.eclipse.jface.viewers.LabelProvider;
-import org.eclipse.jface.viewers.Viewer;
-import org.eclipse.jface.wizard.WizardPage;
-import org.eclipse.swt.SWT;
-import org.eclipse.swt.events.FocusAdapter;
-import org.eclipse.swt.events.FocusEvent;
-import org.eclipse.swt.events.ModifyEvent;
-import org.eclipse.swt.events.ModifyListener;
-import org.eclipse.swt.events.SelectionAdapter;
-import org.eclipse.swt.events.SelectionEvent;
-import org.eclipse.swt.events.SelectionListener;
-import org.eclipse.swt.layout.GridData;
-import org.eclipse.swt.layout.GridLayout;
-import org.eclipse.swt.widgets.Button;
-import org.eclipse.swt.widgets.Combo;
-import org.eclipse.swt.widgets.Composite;
-import org.eclipse.swt.widgets.DirectoryDialog;
-import org.eclipse.swt.widgets.FileDialog;
-import org.eclipse.swt.widgets.Label;
-import org.eclipse.swt.widgets.Text;
-
-public class ImportExecutablePageOne extends WizardPage {
-
- // Keep track of the directory that we browsed the last time
- // the wizard was invoked.
- private static String previouslyBrowsedDirectory = ""; //$NON-NLS-1$
-
- private Text multipleExecutablePathField;
-
- private CheckboxTreeViewer executablesViewer;
-
- private File[] executables = new File[0];
-
- private String previouslySearchedDirectory;
-
- private Text singleExecutablePathField;
-
- private boolean selectSingleFile = true;
-
- private Button selectSingleButton;
-
- private Button selectSingleBrowseButton;
-
- private Button selectMultipleButton;
-
- private Button selectMultipleBrowseButton;
-
- private Button selectAll;
-
- private Button deselectAll;
-
- private Label selectMultipleTitle;
-
- private AbstractImportExecutableWizard wizard;
-
- private String[] supportedBinaryParserIds;
- private IBinaryParser[] supportedBinaryParsers;
-
- private IExtension[] binaryParserExtensions;
-
- private Combo binaryParserCombo;
-
- public ImportExecutablePageOne(AbstractImportExecutableWizard wizard) {
- super("ImportApplicationPageOne");
- this.wizard = wizard;
- setPageComplete(false);
- setTitle(wizard.getPageOneTitle());
- setDescription(wizard.getPageOneDescription());
-
- supportedBinaryParserIds = wizard.getDefaultBinaryParserIDs();
-
- IExtensionPoint point = Platform.getExtensionRegistry().getExtensionPoint(CCorePlugin.PLUGIN_ID, CCorePlugin.BINARY_PARSER_SIMPLE_ID);
- if (point != null)
- {
- IExtension[] exts = point.getExtensions();
- ArrayList extensionsInUse = new ArrayList();
- for (int i = 0; i < exts.length; i++) {
- if (isExtensionVisible(exts[i])) {
- extensionsInUse.add(exts[i]);
- }
- }
- binaryParserExtensions = (IExtension[]) extensionsInUse.toArray(new IExtension[extensionsInUse.size()]);
- }
-
- supportedBinaryParsers = new IBinaryParser[supportedBinaryParserIds.length];
- for (int i = 0; i < supportedBinaryParserIds.length; i++) {
- for (int j = 0; j < binaryParserExtensions.length; j++) {
- if (binaryParserExtensions[j].getUniqueIdentifier().equals(supportedBinaryParserIds[i]))
- supportedBinaryParsers[i] = instantiateBinaryParser(binaryParserExtensions[j]);
- }
- }
-
- }
-
- public String[] getSupportedBinaryParserIds() {
- return supportedBinaryParserIds;
- }
-
- private void checkControlState() {
- selectSingleFile = selectSingleButton.getSelection();
- singleExecutablePathField.setEnabled(selectSingleFile);
- selectSingleBrowseButton.setEnabled(selectSingleFile);
-
- multipleExecutablePathField.setEnabled(!selectSingleFile);
- selectMultipleBrowseButton.setEnabled(!selectSingleFile);
- selectAll.setEnabled(!selectSingleFile);
- deselectAll.setEnabled(!selectSingleFile);
- selectMultipleTitle.setEnabled(!selectSingleFile);
- }
-
- private boolean collectExecutableFiles(Collection files, File directory,
- IProgressMonitor monitor) {
-
- if (monitor.isCanceled())
- return false;
- File[] contents = directory.listFiles();
- monitor.subTask(directory.getPath());
- SubProgressMonitor sm = new SubProgressMonitor(monitor, IProgressMonitor.UNKNOWN);
- sm.beginTask(directory.getPath(), contents.length);
- for (int i = 0; i < contents.length; i++) {
- if (monitor.isCanceled())
- return false;
- File file = contents[i];
- sm.worked(1);
- if (contents[i].isDirectory())
- collectExecutableFiles(files, contents[i], monitor);
- else if (file.isFile() && isBinary(file, false)) {
- files.add(file);
- }
- }
- sm.done();
- return true;
- }
-
- public void createControl(Composite parent) {
-
- initializeDialogUnits(parent);
-
- Composite workArea = new Composite(parent, SWT.NONE);
- setControl(workArea);
-
- workArea.setLayout(new GridLayout());
- workArea.setLayoutData(new GridData(GridData.FILL_BOTH
- | GridData.GRAB_HORIZONTAL | GridData.GRAB_VERTICAL));
-
- Composite selectExecutableGroup = new Composite(workArea, SWT.NONE);
- GridLayout layout = new GridLayout();
- layout.numColumns = 3;
- layout.makeColumnsEqualWidth = false;
- layout.marginWidth = 0;
- selectExecutableGroup.setLayout(layout);
- selectExecutableGroup.setLayoutData(new GridData(
- GridData.FILL_HORIZONTAL));
-
- if (wizard.userSelectsBinaryParser())
- createSelectBinaryParser(selectExecutableGroup);
- createSelectExecutable(selectExecutableGroup);
- createExecutablesRoot(selectExecutableGroup);
- createExecutablesList(workArea);
- Dialog.applyDialogFont(workArea);
- selectSingleButton.setSelection(true);
- checkControlState();
- }
-
- private void createExecutablesList(Composite workArea) {
-
- selectMultipleTitle = new Label(workArea, SWT.NONE);
- selectMultipleTitle.setText(wizard.getExecutableListLabel());
-
- Composite listComposite = new Composite(workArea, SWT.NONE);
- GridLayout layout = new GridLayout();
- layout.numColumns = 2;
- layout.marginWidth = 0;
- layout.makeColumnsEqualWidth = false;
- listComposite.setLayout(layout);
-
- listComposite.setLayoutData(new GridData(GridData.GRAB_HORIZONTAL
- | GridData.GRAB_VERTICAL | GridData.FILL_BOTH));
-
- executablesViewer = new CheckboxTreeViewer(listComposite, SWT.BORDER);
- GridData listData = new GridData(GridData.GRAB_HORIZONTAL
- | GridData.GRAB_VERTICAL | GridData.FILL_BOTH);
- executablesViewer.getControl().setLayoutData(listData);
-
- executablesViewer.setContentProvider(new ITreeContentProvider() {
-
- public void dispose() {
-
- }
-
- public Object[] getChildren(Object parentElement) {
- return null;
- }
-
- public Object[] getElements(Object inputElement) {
- return executables;
- }
-
- public Object getParent(Object element) {
- return null;
- }
-
- public boolean hasChildren(Object element) {
- return false;
- }
-
- public void inputChanged(Viewer viewer, Object oldInput,
- Object newInput) {
- }
-
- });
-
- executablesViewer.setLabelProvider(new LabelProvider() {
- public String getText(Object element) {
- return ((File) element).getName();
- }
- });
-
- executablesViewer.addCheckStateListener(new ICheckStateListener() {
-
- public void checkStateChanged(CheckStateChangedEvent event) {
- setPageComplete(executablesViewer.getCheckedElements().length > 0);
- }
- });
-
- executablesViewer.setInput(this);
- createSelectionButtons(listComposite);
-
- }
-
- private void createExecutablesRoot(Composite workArea) {
-
- selectMultipleButton = new Button(workArea, SWT.RADIO);
- selectMultipleButton.setText(Messages.ImportExecutablePageOne_SearchDirectory);
- selectMultipleButton.addSelectionListener(new SelectionAdapter() {
-
- public void widgetSelected(SelectionEvent e) {
- checkControlState();
- String selectedDirectory = multipleExecutablePathField
- .getText().trim();
- setErrorMessage(null);
-
- if (selectedDirectory.length() == 0) {
- noFilesSelected();
- } else
- updateExecutablesList(selectedDirectory);
- }
-
- });
-
- // project location entry field
- this.multipleExecutablePathField = new Text(workArea, SWT.BORDER);
-
- this.multipleExecutablePathField.setLayoutData(new GridData(
- GridData.FILL_HORIZONTAL | GridData.GRAB_HORIZONTAL));
- selectMultipleBrowseButton = new Button(workArea, SWT.PUSH);
- selectMultipleBrowseButton.setText(Messages.ImportExecutablePageOne_Browse);
- setButtonLayoutData(selectMultipleBrowseButton);
-
- selectMultipleBrowseButton.addSelectionListener(new SelectionAdapter() {
- public void widgetSelected(SelectionEvent e) {
- handleLocationBrowseButtonPressed();
- }
-
- });
-
- multipleExecutablePathField.addFocusListener(new FocusAdapter() {
- public void focusLost(FocusEvent e) {
- updateExecutablesList(multipleExecutablePathField.getText()
- .trim());
- }
- });
-
- }
-
- private void createSelectBinaryParser(Composite workArea) {
-
- if (binaryParserExtensions.length == 0)
- return;
-
- Label label = new Label(workArea, SWT.NONE);
- label.setText(Messages.ImportExecutablePageOne_SelectBinaryParser);
-
- binaryParserCombo = new Combo(workArea, SWT.READ_ONLY);
- final IExtension[] exts = binaryParserExtensions;
- for (int i = 0; i < exts.length; i++) {
- binaryParserCombo.add(exts[i].getLabel());
- if (supportedBinaryParserIds[0].equals(exts[i].getUniqueIdentifier()))
- binaryParserCombo.select(i);
- }
-
-
- binaryParserCombo.addSelectionListener(new SelectionListener() {
- public void widgetDefaultSelected(SelectionEvent e) {
- }
- public void widgetSelected(SelectionEvent e) {
- supportedBinaryParsers[0] = instantiateBinaryParser(exts[binaryParserCombo.getSelectionIndex()]);
- supportedBinaryParserIds[0] = exts[binaryParserCombo.getSelectionIndex()].getUniqueIdentifier();
- if (selectSingleFile) {
- String path = singleExecutablePathField.getText();
- if (path.length() > 0)
- validateExe(path);
- } else {
- previouslySearchedDirectory = null;
- updateExecutablesList(multipleExecutablePathField.getText().trim());
- }
- }
- });
-
- // Dummy to fill out the third column
- new Label(workArea, SWT.NONE);
- }
-
- private static boolean isExtensionVisible(IExtension ext) {
- IConfigurationElement[] elements = ext.getConfigurationElements();
- for (int i = 0; i < elements.length; i++) {
- IConfigurationElement[] children = elements[i].getChildren("filter"); //$NON-NLS-1$
- for (int j = 0; j < children.length; j++) {
- String name = children[j].getAttribute("name"); //$NON-NLS-1$
- if (name != null && name.equals("visibility")) { //$NON-NLS-1$
- String value = children[j].getAttribute("value"); //$NON-NLS-1$
- if (value != null && value.equals("private")) { //$NON-NLS-1$
- return false;
- }
- }
- }
- return true;
- }
- return false; // invalid extension definition (must have at least cextension elements)
- }
-
- private IBinaryParser instantiateBinaryParser(IExtension ext) {
- IBinaryParser parser = null;
- IConfigurationElement[] elements = ext.getConfigurationElements();
- for (int i = 0; i < elements.length; i++) {
- IConfigurationElement[] children = elements[i].getChildren("run"); //$NON-NLS-1$
- for (int j = 0; j < children.length; j++) {
- try {
- parser = (IBinaryParser)children[j].createExecutableExtension("class");
- } catch (CoreException e) {
- CDebugUIPlugin.log(e);
- }
- }
- }
- return parser;
- }
-
- private void createSelectExecutable(Composite workArea) {
- // project specification group
-
- selectSingleButton = new Button(workArea, SWT.RADIO);
- selectSingleButton.setText(Messages.ImportExecutablePageOne_SelectExecutable);
- selectSingleButton.addSelectionListener(new SelectionAdapter() {
- public void widgetSelected(SelectionEvent e) {
- checkControlState();
- if (selectSingleFile) {
- if (singleExecutablePathField.getText().trim().length() == 0)
- noFilesSelected();
- else
- validateExe(singleExecutablePathField.getText());
- }
- }
- });
-
- // project location entry field
- this.singleExecutablePathField = new Text(workArea, SWT.BORDER);
- // Set the data name field so Abbot based tests can find it.
- singleExecutablePathField.setData("name", "singleExecutablePathField");
- singleExecutablePathField.addModifyListener(new ModifyListener() {
-
- public void modifyText(ModifyEvent e) {
- validateExe(singleExecutablePathField.getText());
- }
-
- });
-
- this.singleExecutablePathField.setLayoutData(new GridData(
- GridData.FILL_HORIZONTAL | GridData.GRAB_HORIZONTAL));
- selectSingleBrowseButton = new Button(workArea, SWT.PUSH);
- selectSingleBrowseButton.setText(Messages.ImportExecutablePageOne_Browse);
- setButtonLayoutData(selectSingleBrowseButton);
-
- selectSingleBrowseButton.addSelectionListener(new SelectionAdapter() {
- public void widgetSelected(SelectionEvent e) {
- FileDialog dialog = new FileDialog(getShell(), SWT.NONE);
- wizard.setupFileDialog(dialog);
- String res = dialog.open();
- if (res != null) {
- if (Platform.getOS().equals(Platform.OS_MACOSX) && res.endsWith(".app"))
- {
- // On Mac OS X the file dialog will let you select the
- // package but not the executable inside.
- Path macPath = new Path(res);
- res = res + "/Contents/MacOS/" + macPath.lastSegment();
- res = res.substring(0, res.length() - 4);
- }
- singleExecutablePathField.setText(res);
- }
- }
- });
-
- }
-
- private void createSelectionButtons(Composite listComposite) {
- Composite buttonsComposite = new Composite(listComposite, SWT.NONE);
- GridLayout layout = new GridLayout();
- layout.marginWidth = 0;
- layout.marginHeight = 0;
- buttonsComposite.setLayout(layout);
-
- buttonsComposite.setLayoutData(new GridData(
- GridData.VERTICAL_ALIGN_BEGINNING));
-
- selectAll = new Button(buttonsComposite, SWT.PUSH);
- selectAll.setText(Messages.ImportExecutablePageOne_SelectAll);
- selectAll.addSelectionListener(new SelectionAdapter() {
- public void widgetSelected(SelectionEvent e) {
- executablesViewer.setAllChecked(true);
- setPageComplete(executables.length > 0);
- }
- });
-
- setButtonLayoutData(selectAll);
-
- deselectAll = new Button(buttonsComposite, SWT.PUSH);
- deselectAll.setText(Messages.ImportExecutablePageOne_DeselectAll);
- deselectAll.addSelectionListener(new SelectionAdapter() {
- public void widgetSelected(SelectionEvent e) {
-
- executablesViewer.setAllChecked(false);
- setPageComplete(false);
- }
- });
-
- setButtonLayoutData(deselectAll);
-
- }
-
- public String[] getSelectedExecutables() {
- String[] selectedExecutablePaths = new String[0];
- if (selectSingleFile) {
- if (executables.length > 0) {
- selectedExecutablePaths = new String[1];
- selectedExecutablePaths[0] = executables[0].getAbsolutePath();
-
- }
- } else {
- Object[] checkedFiles = executablesViewer.getCheckedElements();
- selectedExecutablePaths = new String[checkedFiles.length];
- for (int i = 0; i < checkedFiles.length; i++) {
- selectedExecutablePaths[i] = ((File) checkedFiles[i])
- .getAbsolutePath();
- }
- }
- return selectedExecutablePaths;
- }
-
- protected void handleLocationBrowseButtonPressed() {
-
- DirectoryDialog dialog = new DirectoryDialog(
- multipleExecutablePathField.getShell());
- dialog
- .setMessage(Messages.ImportExecutablePageOne_SelectADirectory);
-
- String dirName = multipleExecutablePathField.getText().trim();
- if (dirName.length() == 0)
- dirName = previouslyBrowsedDirectory;
-
- if (dirName.length() > 0) {
- File path = new File(dirName);
- if (path.exists())
- dialog.setFilterPath(new Path(dirName).toOSString());
- }
-
- String selectedDirectory = dialog.open();
- if (selectedDirectory != null) {
- previouslyBrowsedDirectory = selectedDirectory;
- multipleExecutablePathField.setText(previouslyBrowsedDirectory);
- updateExecutablesList(selectedDirectory);
- }
-
- }
-
- protected void noFilesSelected() {
- executables = new File[0];
- executablesViewer.refresh(true);
- executablesViewer.setAllChecked(false);
- previouslySearchedDirectory = "";
- setPageComplete(false);
- }
-
- protected void updateExecutablesList(final String path) {
- // don't search on empty path
- if (path == null || path.length() == 0)
- return;
- // don't repeat the same search - the user might just be tabbing to
- // traverse
- if (previouslySearchedDirectory != null
- && previouslySearchedDirectory.equals(path))
- return;
- previouslySearchedDirectory = path;
- try {
- getContainer().run(true, true, new IRunnableWithProgress() {
- public void run(IProgressMonitor monitor) {
-
- monitor.beginTask(Messages.ImportExecutablePageOne_Searching, IProgressMonitor.UNKNOWN);
- File directory = new File(path);
- executables = new File[0];
- if (directory.isDirectory()) {
-
- Collection files = new ArrayList();
- if (!collectExecutableFiles(files, directory, monitor))
- return;
- executables = (File[]) files.toArray(new File[files.size()]);
- }
- monitor.done();
- }
-
- });
- } catch (InvocationTargetException e) {
- } catch (InterruptedException e) {
- // Nothing to do if the user interrupts.
- }
-
- executablesViewer.refresh(true);
- executablesViewer.setAllChecked(true);
- setPageComplete(executables.length > 0);
- }
-
- private boolean isBinary(File file, IBinaryParser parser) {
- if (parser != null) {
- try {
- IBinaryParser.IBinaryFile bin = parser.getBinary(new Path(file
- .getAbsolutePath()));
- return bin != null
- && (bin.getType() == IBinaryParser.IBinaryFile.EXECUTABLE || bin
- .getType() == IBinaryParser.IBinaryFile.SHARED);
- } catch (IOException e) {
- return false;
- }
- } else
- return false;
- }
-
- /**
- * Checks to see if the file is a valid binary recognized by any of the
- * available binary parsers. If the currently selected parser doesn't work
- * it checks the other parsers. If another recognizes the file then the
- * selected binary parser is changed accordingly.
- * The effect is to allow the user's file choice to trump the binary
- * parser selection since most people will have a better idea of what
- * file they want to select and may not know which binary parser to try.
- * @param file - the executable file.
- * @return - is it recognized by any of the binary parsers?
- */
- private boolean isBinary(File file, boolean checkOthers) {
-
- for (int i = 0; i < supportedBinaryParsers.length; i++) {
- if (isBinary(file, supportedBinaryParsers[i]))
- return true;
- }
- // See if any of the other parsers will work with this file.
- // If so, pick the first one that will. Only do this if the user
- // is picking the binary parser.
- if (checkOthers && binaryParserCombo != null)
- {
- for (int i = 0; i < binaryParserExtensions.length; i++) {
- IBinaryParser parser = instantiateBinaryParser(binaryParserExtensions[i]);
- if (isBinary(file, parser))
- {
- supportedBinaryParserIds[0] = binaryParserExtensions[i].getUniqueIdentifier();
- supportedBinaryParsers[0] = parser;
- binaryParserCombo.select(i);
- return true;
- }
- }
- }
-
- return false;
- }
-
- private void validateExe(String path) {
- setErrorMessage(null);
- setPageComplete(false);
- if (path.length() > 0) {
- File testFile = new File(path);
- if (testFile.exists()) {
- if (isBinary(testFile, true))
- {
- executables = new File[1];
- executables[0] = testFile;
- setPageComplete(true);
- }
- else
- setErrorMessage(Messages.ImportExecutablePageOne_NoteAnEXE);
- } else {
- setErrorMessage(Messages.ImportExecutablePageOne_NoSuchFile);
- }
- }
- }
-}
diff --git a/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/ui/importexecutable/ImportExecutablePageTwo.java b/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/ui/importexecutable/ImportExecutablePageTwo.java
deleted file mode 100644
index 547cbc12420..00000000000
--- a/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/ui/importexecutable/ImportExecutablePageTwo.java
+++ /dev/null
@@ -1,426 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2006 Nokia and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * Nokia - initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.ui.importexecutable;
-
-import java.io.File;
-import java.util.ArrayList;
-
-import org.eclipse.cdt.core.CCorePlugin;
-import org.eclipse.cdt.core.ICDescriptor;
-import org.eclipse.cdt.core.model.CModelException;
-import org.eclipse.cdt.core.model.CoreModel;
-import org.eclipse.cdt.core.model.ICProject;
-import org.eclipse.cdt.ui.CElementLabelProvider;
-import org.eclipse.core.resources.IProject;
-import org.eclipse.core.runtime.CoreException;
-import org.eclipse.debug.core.DebugPlugin;
-import org.eclipse.debug.core.ILaunchConfigurationType;
-import org.eclipse.debug.core.ILaunchManager;
-import org.eclipse.jface.viewers.ILabelProvider;
-import org.eclipse.jface.window.Window;
-import org.eclipse.jface.wizard.WizardPage;
-import org.eclipse.swt.SWT;
-import org.eclipse.swt.events.ModifyEvent;
-import org.eclipse.swt.events.ModifyListener;
-import org.eclipse.swt.events.SelectionAdapter;
-import org.eclipse.swt.events.SelectionEvent;
-import org.eclipse.swt.layout.GridData;
-import org.eclipse.swt.layout.GridLayout;
-import org.eclipse.swt.widgets.Button;
-import org.eclipse.swt.widgets.Combo;
-import org.eclipse.swt.widgets.Composite;
-import org.eclipse.swt.widgets.Label;
-import org.eclipse.swt.widgets.Text;
-import org.eclipse.ui.dialogs.ElementListSelectionDialog;
-
-public class ImportExecutablePageTwo extends WizardPage {
-
- private Combo configTypes;
-
- private Text configurationName;
-
- private Label configurationNameLabel;
-
- private Button createLaunch;
-
- private Button existingProjectButton;
-
- private Text existingProjectName;
-
- private String filterPlatform;
-
- private boolean isCreateLaunchConfigurationSelected = true;
-
- private boolean isCreateNewProjectSelected = true;
-
- private Button newProjectButton;
-
- private Label newProjectLabel;
-
- private Text newProjectName;
-
- private Button searchButton;
-
- private AbstractImportExecutableWizard wizard;
-
- private boolean shouldUpdateButtons = true;
-
- public ImportExecutablePageTwo(AbstractImportExecutableWizard wizard) {
- super("ImportExecutablePageTwo");
- this.wizard = wizard;
- setTitle(Messages.ImportExecutablePageTwo_ChooseProject);
- setDescription(Messages.ImportExecutablePageTwo_ChooseExisting);
- filterPlatform = "*";
- }
-
- private void addLaunchConfigTypes() {
- ILaunchConfigurationType[] configTypeList = DebugPlugin.getDefault()
- .getLaunchManager().getLaunchConfigurationTypes();
- for (int i = 0; i < configTypeList.length; i++) {
- String configTypeName = configTypeList[i].getName();
- if (configTypeList[i].isPublic()
- && configTypeList[i]
- .supportsMode(ILaunchManager.DEBUG_MODE)) {
- if (wizard.supportsConfigurationType(configTypeList[i])) {
- configTypes.add(configTypeName);
- }
- }
- }
- configTypes.select(0);
- }
-
- public void checkExecutableSettings() {
- shouldUpdateButtons = false;
- if (isCreateNewProjectSelected) {
- String defaultName = getDefaultProjectName();
- if (defaultName.length() > 0) {
- ICProject cProject = CoreModel.getDefault().getCModel()
- .getCProject(defaultName);
- if (cProject.exists()) {
- isCreateNewProjectSelected = false;
- existingProjectName.setText(defaultName);
- existingProjectButton.setSelection(true);
- newProjectButton.setSelection(false);
- } else {
- newProjectName.setText(defaultName);
- }
- setLaunchConfigurationName(defaultName);
- }
- }
- updateControls();
- shouldUpdateButtons = true;
- }
-
- protected ICProject chooseCProject() {
- try {
- ICProject[] projects = getCProjects();
-
- ILabelProvider labelProvider = new CElementLabelProvider();
- ElementListSelectionDialog dialog = new ElementListSelectionDialog(
- getShell(), labelProvider);
- dialog.setTitle("Select a Project"); //$NON-NLS-1$
- dialog.setMessage("Choose a project for the executable."); //$NON-NLS-1$
- dialog.setElements(projects);
-
- ICProject cProject = getExistingCProject();
- if (cProject != null) {
- dialog.setInitialSelections(new Object[] { cProject });
- }
- if (dialog.open() == Window.OK) {
- return (ICProject) dialog.getFirstResult();
- }
- } catch (CModelException e) {
- }
- return null;
- }
-
- public void createControl(Composite parent) {
- Composite container = new Composite(parent, SWT.NULL);
- container.setLayout(new GridLayout());
- //
- setControl(container);
-
- final Composite composite = new Composite(container, SWT.NONE);
- composite.setLayoutData(new GridData(GridData.FILL_HORIZONTAL));
- final GridLayout gridLayout = new GridLayout();
- gridLayout.numColumns = 4;
- composite.setLayout(gridLayout);
-
- newProjectButton = new Button(composite, SWT.RADIO);
- newProjectButton.setText(Messages.ImportExecutablePageTwo_NewProjectName);
- newProjectButton.addSelectionListener(new SelectionAdapter() {
- public void widgetSelected(SelectionEvent e) {
- isCreateNewProjectSelected = newProjectButton.getSelection();
- updateControls();
- }
- });
-
- newProjectName = new Text(composite, SWT.BORDER);
- final GridData gridData = new GridData(GridData.HORIZONTAL_ALIGN_FILL);
- gridData.horizontalSpan = 3;
- newProjectName.setLayoutData(gridData);
- newProjectName.addModifyListener(new ModifyListener() {
-
- public void modifyText(ModifyEvent e) {
- updateControls();
- }
-
- });
-
- new Label(composite, SWT.NONE);
-
- newProjectLabel = new Label(composite, SWT.NONE);
- final GridData gridData_1 = new GridData();
- gridData_1.horizontalSpan = 3;
- newProjectLabel.setLayoutData(gridData_1);
- newProjectLabel
- .setText(Messages.ImportExecutablePageTwo_ProjectLabel);
-
- final Label dummy2 = new Label(composite, SWT.NONE);
- final GridData gridData_2 = new GridData();
- gridData_2.horizontalSpan = 4;
- dummy2.setLayoutData(gridData_2);
-
- existingProjectButton = new Button(composite, SWT.RADIO);
- existingProjectButton.setText(Messages.ImportExecutablePageTwo_ExistingProject);
- existingProjectButton.addSelectionListener(new SelectionAdapter() {
- public void widgetSelected(SelectionEvent e) {
- isCreateNewProjectSelected = !newProjectButton.getSelection();
- updateControls();
- }
- });
-
- existingProjectName = new Text(composite, SWT.BORDER);
- final GridData gridData_3 = new GridData(GridData.FILL_HORIZONTAL);
- gridData_3.horizontalSpan = 2;
- existingProjectName.setLayoutData(gridData_3);
- existingProjectName.addModifyListener(new ModifyListener() {
-
- public void modifyText(ModifyEvent e) {
- updateControls();
- }
-
- });
-
- searchButton = new Button(composite, SWT.NONE);
- searchButton.setLayoutData(new GridData());
- searchButton.setText(Messages.ImportExecutablePageTwo_Search);
- searchButton.addSelectionListener(new SelectionAdapter() {
- public void widgetSelected(SelectionEvent e) {
- ICProject project = chooseCProject();
- if (project == null) {
- return;
- }
- String projectName = project.getElementName();
- existingProjectName.setText(projectName);
- updateControls();
- }
- });
-
- newProjectButton.setSelection(true);
-
- final Label label = new Label(composite, SWT.SEPARATOR | SWT.HORIZONTAL);
- final GridData gridData_4 = new GridData(GridData.HORIZONTAL_ALIGN_FILL);
- gridData_4.horizontalSpan = 4;
- label.setLayoutData(gridData_4);
-
- final Composite composite_1 = new Composite(composite, SWT.NONE);
- final GridData gridData_5 = new GridData();
- gridData_5.horizontalSpan = 4;
- composite_1.setLayoutData(gridData_5);
- final GridLayout gridLayout_1 = new GridLayout();
- gridLayout_1.numColumns = 3;
- composite_1.setLayout(gridLayout_1);
-
- createLaunch = new Button(composite_1, SWT.CHECK);
- createLaunch.setText(Messages.ImportExecutablePageTwo_CreateLaunch);
- createLaunch.setSelection(true);
- createLaunch.addSelectionListener(new SelectionAdapter() {
- public void widgetSelected(SelectionEvent e) {
- isCreateLaunchConfigurationSelected = createLaunch
- .getSelection();
- setLaunchConfigurationName(configurationName.getText().trim());
- updateControls();
- }
- });
-
- configTypes = new Combo(composite_1, SWT.READ_ONLY);
- final GridData gridData_6 = new GridData(GridData.HORIZONTAL_ALIGN_FILL);
- gridData_6.horizontalSpan = 2;
- configTypes.setLayoutData(gridData_6);
- configTypes.addModifyListener(new ModifyListener() {
-
- public void modifyText(ModifyEvent e) {
- setLaunchConfigurationName(configurationName.getText().trim());
- }
-
- });
-
- configurationNameLabel = new Label(composite, SWT.NONE);
- configurationNameLabel.setLayoutData(new GridData(
- GridData.HORIZONTAL_ALIGN_END));
- configurationNameLabel.setText(Messages.ImportExecutablePageTwo_Name);
-
- configurationName = new Text(composite, SWT.BORDER);
- final GridData gridData_7 = new GridData(GridData.HORIZONTAL_ALIGN_FILL);
- gridData_7.horizontalSpan = 3;
- configurationName.setLayoutData(gridData_7);
- configurationName.addModifyListener(new ModifyListener() {
-
- public void modifyText(ModifyEvent e) {
- updateControls();
- }
-
- });
- addLaunchConfigTypes();
- updateControls();
-
- }
-
- private ICProject[] getCProjects() throws CModelException {
- ICProject cproject[] = CoreModel.getDefault().getCModel()
- .getCProjects();
- ArrayList list = new ArrayList(cproject.length);
-
- for (int i = 0; i < cproject.length; i++) {
- ICDescriptor cdesciptor = null;
- try {
- cdesciptor = CCorePlugin.getDefault().getCProjectDescription(
- (IProject) cproject[i].getResource(), false);
- if (cdesciptor != null) {
- String projectPlatform = cdesciptor.getPlatform();
- if (filterPlatform.equals("*") //$NON-NLS-1$
- || projectPlatform.equals("*") //$NON-NLS-1$
- || filterPlatform.equalsIgnoreCase(projectPlatform) == true) {
- list.add(cproject[i]);
- }
- } else {
- list.add(cproject[i]);
- }
- } catch (CoreException e) {
- list.add(cproject[i]);
- }
- }
- return (ICProject[]) list.toArray(new ICProject[list.size()]);
- }
-
- protected String getDefaultProjectName() {
- String defaultName = new String();
- String[] executables = wizard.getImportExecutablePage()
- .getSelectedExecutables();
- if (executables.length > 0) {
- String fileName = new File(executables[0]).getName();
- defaultName = new String(Messages.ImportExecutablePageTwo_DefaultProjectPrefix + fileName);
- }
- return defaultName;
- }
-
- protected ICProject getExistingCProject() {
- String projectName = existingProjectName.getText().trim();
- if (projectName.length() < 1) {
- return null;
- }
- ICProject cProject = CoreModel.getDefault().getCModel().getCProject(
- projectName);
- if (!cProject.exists())
- return null;
- return cProject;
- }
-
- public String getExistingProjectName() {
- return existingProjectName.getText().trim();
- }
-
- public String getNewConfigurationName() {
- return configurationName.getText().trim();
- }
-
- public String getNewProjectName() {
- return newProjectName.getText().trim();
- }
-
- protected ILaunchConfigurationType getSelectedLaunchConfigurationType() {
- ILaunchConfigurationType result = null;
- String selectedTypeName = configTypes.getText();
- ILaunchConfigurationType[] configTypeList = DebugPlugin.getDefault()
- .getLaunchManager().getLaunchConfigurationTypes();
- for (int i = 0; i < configTypeList.length; i++) {
- if (selectedTypeName.equals(configTypeList[i].getName())) {
- result = configTypeList[i];
- break;
- }
- }
- return result;
- }
-
- public boolean isCreateLaunchConfigurationSelected() {
- return isCreateLaunchConfigurationSelected;
- }
-
- public boolean isCreateNewProjectSelected() {
- return isCreateNewProjectSelected;
- }
-
- private void setLaunchConfigurationName(String defaultName) {
- configurationName.setText(DebugPlugin.getDefault().getLaunchManager()
- .generateUniqueLaunchConfigurationNameFrom(defaultName));
- updateControls();
- }
-
- protected void updateControls() {
- isCreateNewProjectSelected = newProjectButton.getSelection();
- searchButton.setEnabled(!isCreateNewProjectSelected);
- newProjectName.setEnabled(isCreateNewProjectSelected);
- existingProjectName.setEnabled(!isCreateNewProjectSelected);
- newProjectLabel.setEnabled(isCreateNewProjectSelected);
-
- configTypes.setEnabled(isCreateLaunchConfigurationSelected);
- configurationName.setEnabled(isCreateLaunchConfigurationSelected);
- configurationNameLabel.setEnabled(isCreateLaunchConfigurationSelected);
- if (shouldUpdateButtons )
- getContainer().updateButtons();
- }
-
- public boolean isPageComplete() {
- setErrorMessage(null);
- if (isCreateNewProjectSelected()) {
- if (getNewProjectName().length() == 0) {
-
- setErrorMessage(Messages.ImportExecutablePageTwo_EnterProjectName);
- return false;
- }
- ICProject cProject = CoreModel.getDefault().getCModel().getCProject(getNewProjectName());
- if (cProject.exists()) {
-
- setErrorMessage(Messages.ImportExecutablePageTwo_ProjectAlreadyExists);
- return false;
- }
-
- } else if (!isCreateNewProjectSelected()) {
-
- ICProject project = getExistingCProject();
- if (project == null) {
-
- setErrorMessage(Messages.ImportExecutablePageTwo_BadProjectName);
- return false;
- }
-
- }
- if (isCreateLaunchConfigurationSelected() && getNewConfigurationName().length() == 0) {
-
- setErrorMessage(Messages.ImportExecutablePageTwo_EnterLaunchConfig);
- return false;
- }
- return super.isPageComplete();
- }
-
-
-}
diff --git a/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/ui/importexecutable/ImportExecutableWizard.java b/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/ui/importexecutable/ImportExecutableWizard.java
deleted file mode 100644
index c517fb22fc1..00000000000
--- a/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/ui/importexecutable/ImportExecutableWizard.java
+++ /dev/null
@@ -1,50 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2006 Nokia and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * Nokia - initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.ui.importexecutable;
-
-import org.eclipse.debug.core.ILaunchConfigurationType;
-import org.eclipse.swt.widgets.FileDialog;
-
-/**
- * Reference implementation of a wizard that imports executables.
- * Create your own version to import specific kinds of executables
- * with product specific messages and launch configuration types.
- *
- *
- */
-public class ImportExecutableWizard extends AbstractImportExecutableWizard {
-
- public String getPageOneTitle() {
- return Messages.ImportExecutableWizard_pageOneTitle;
- }
-
- public String getPageOneDescription() {
- return Messages.ImportExecutableWizard_pageOneDescription;
- }
-
- public String getExecutableListLabel() {
- return Messages.ImportExecutableWizard_executableListLabel;
- }
-
- public void setupFileDialog(FileDialog dialog) {
- dialog.setText(Messages.ImportExecutableWizard_fileDialogTitle);
- dialog.setFilterExtensions(new String[] { "*.*", "*.exe", "*.dll" });
- dialog.setFilterNames(new String[] { Messages.ImportExecutableWizard_AllFiles, Messages.ImportExecutableWizard_Applications, Messages.ImportExecutableWizard_LIbaries });
- }
-
- public boolean supportsConfigurationType(ILaunchConfigurationType type) {
- return type.getIdentifier().startsWith("org.eclipse.cdt.launch")
- // Just for fun, lets support QNX launches too.
- // Really points at something missing, no?
- || type.getIdentifier().startsWith("com.qnx");
- }
-
-}
diff --git a/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/ui/importexecutable/Messages.java b/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/ui/importexecutable/Messages.java
deleted file mode 100644
index 4140b156359..00000000000
--- a/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/ui/importexecutable/Messages.java
+++ /dev/null
@@ -1,92 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2006 Nokia and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * Nokia - initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.cdt.debug.ui.importexecutable;
-
-import org.eclipse.osgi.util.NLS;
-
-public class Messages extends NLS {
- private static final String BUNDLE_NAME = "org.eclipse.cdt.debug.ui.importexecutable.messages"; //$NON-NLS-1$
-
- private Messages() {
- }
-
- static {
- // initialize resource bundle
- NLS.initializeMessages(BUNDLE_NAME, Messages.class);
- }
-
- public static String ImportExecutableWizard_pageOneTitle;
-
- public static String ImportExecutableWizard_pageOneDescription;
-
- public static String ImportExecutableWizard_executableListLabel;
-
- public static String ImportExecutableWizard_fileDialogTitle;
-
- public static String ImportExecutableWizard_AllFiles;
-
- public static String ImportExecutableWizard_Applications;
-
- public static String ImportExecutableWizard_LIbaries;
-
- public static String ImportExecutablePageOne_SearchDirectory;
-
- public static String ImportExecutablePageOne_SelectExecutable;
-
- public static String ImportExecutablePageOne_NoteAnEXE;
-
- public static String ImportExecutablePageOne_NoSuchFile;
-
- public static String ImportExecutablePageOne_Browse;
-
- public static String ImportExecutablePageOne_SelectAll;
-
- public static String ImportExecutablePageOne_DeselectAll;
-
- public static String ImportExecutablePageOne_SelectADirectory;
-
- public static String ImportExecutablePageOne_Searching;
-
- public static String ImportExecutablePageOne_ProcessingResults;
-
- public static String ImportExecutablePageTwo_ChooseProject;
-
- public static String ImportExecutablePageTwo_ChooseExisting;
-
- public static String ImportExecutablePageTwo_BadProjectName;
-
- public static String ImportExecutablePageTwo_EnterLaunchConfig;
-
- public static String ImportExecutablePageTwo_EnterProjectName;
-
- public static String ImportExecutablePageTwo_ProjectAlreadyExists;
-
- public static String ImportExecutablePageTwo_NewProjectName;
-
- public static String ImportExecutablePageTwo_ProjectLabel;
-
- public static String ImportExecutablePageTwo_ExistingProject;
-
- public static String ImportExecutablePageTwo_Search;
-
- public static String ImportExecutablePageTwo_CreateLaunch;
-
- public static String ImportExecutablePageTwo_Name;
-
- public static String ImportExecutablePageTwo_DefaultProjectPrefix;
-
- public static String AbstractImportExecutableWizard_windowTitle;
-
- public static String AbstractImportExecutableWizard_CreateLaunchConfiguration;
-
- public static String ImportExecutablePageOne_SelectBinaryParser;
-}
diff --git a/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/ui/importexecutable/messages.properties b/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/ui/importexecutable/messages.properties
deleted file mode 100644
index 042ee663fb3..00000000000
--- a/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/ui/importexecutable/messages.properties
+++ /dev/null
@@ -1,44 +0,0 @@
-###############################################################################
-# Copyright (c) 2006 Nokia and others.
-# All rights reserved. This program and the accompanying materials
-# are made available under the terms of the Eclipse Public License v1.0
-# which accompanies this distribution, and is available at
-# http://www.eclipse.org/legal/epl-v10.html
-#
-# Contributors:
-# Nokia - initial API and implementation
-###############################################################################
-
-ImportExecutableWizard_pageOneTitle=Import C/C++ Executable Files
-ImportExecutableWizard_pageOneDescription=Select a file or a directory to search for C/C++ executable files.
-ImportExecutablePageOne_SelectBinaryParser=Select binary parser:
-ImportExecutablePageOne_SelectExecutable=Select executable:
-ImportExecutablePageOne_SelectADirectory=Select a directory to search for C/C++ executable files.
-ImportExecutablePageTwo_EnterProjectName=Enter a project name.
-ImportExecutablePageOne_ProcessingResults=Processing results
-ImportExecutablePageTwo_EnterLaunchConfig=Enter a launch configuration name.
-ImportExecutablePageTwo_ProjectAlreadyExists=That project already exists, enter a new name.
-ImportExecutablePageTwo_DefaultProjectPrefix=Debug
-ImportExecutableWizard_executableListLabel=C/C++ Executable Files:
-ImportExecutableWizard_fileDialogTitle=Choose an executable file
-ImportExecutablePageOne_SearchDirectory=Search directory:
-ImportExecutablePageTwo_ChooseExisting=Choose an existing project or create a new one.
-ImportExecutablePageTwo_BadProjectName=Invalid project name.
-ImportExecutablePageTwo_NewProjectName=New project name:
-ImportExecutablePageTwo_ExistingProject=Existing project:
-ImportExecutableWizard_AllFiles=All Files
-ImportExecutableWizard_Applications=Applications
-ImportExecutablePageOne_NoSuchFile=That file does not exist.
-ImportExecutablePageOne_DeselectAll=Deselect All
-ImportExecutablePageTwo_ChooseProject=Choose Project
-ImportExecutablePageTwo_ProjectLabel=The new project will let you debug but not build the executable.
-ImportExecutablePageTwo_CreateLaunch=Create a Launch Configuration:
-ImportExecutableWizard_LIbaries=Libraries
-ImportExecutablePageOne_Browse=Browse...
-ImportExecutablePageTwo_Search=Search...
-ImportExecutablePageTwo_Name=Name:
-ImportExecutablePageOne_NoteAnEXE=Not an executable file.
-ImportExecutablePageOne_SelectAll=Select All
-ImportExecutablePageOne_Searching=Searching:
-AbstractImportExecutableWizard_windowTitle=Import Executable
-AbstractImportExecutableWizard_CreateLaunchConfiguration=Create Launch Configuration
diff --git a/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/ui/sourcelookup/DefaultSourceLocator.java b/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/ui/sourcelookup/DefaultSourceLocator.java
deleted file mode 100644
index 276d6f66722..00000000000
--- a/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/ui/sourcelookup/DefaultSourceLocator.java
+++ /dev/null
@@ -1,96 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004, 2005 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.ui.sourcelookup;
-
-import java.util.ArrayList;
-import java.util.Arrays;
-import java.util.HashSet;
-import java.util.Iterator;
-import java.util.List;
-import org.eclipse.cdt.debug.core.CDebugUtils;
-import org.eclipse.cdt.debug.core.sourcelookup.ICSourceLocation;
-import org.eclipse.cdt.debug.core.sourcelookup.ICSourceLocator;
-import org.eclipse.cdt.debug.core.sourcelookup.IProjectSourceLocation;
-import org.eclipse.cdt.debug.internal.core.sourcelookup.CSourceLookupDirector;
-import org.eclipse.cdt.debug.internal.core.sourcelookup.SourceUtils;
-import org.eclipse.core.resources.IProject;
-import org.eclipse.core.runtime.CoreException;
-import org.eclipse.debug.core.DebugPlugin;
-import org.eclipse.debug.core.ILaunchConfiguration;
-import org.eclipse.debug.core.sourcelookup.ISourceContainer;
-import org.eclipse.debug.core.sourcelookup.containers.DefaultSourceContainer;
-import org.w3c.dom.Element;
-
-/**
- * The replacement of the old default source locator. Used only for migration purposes.
- */
-public class DefaultSourceLocator extends CSourceLookupDirector {
-
- /* (non-Javadoc)
- * @see org.eclipse.debug.core.sourcelookup.AbstractSourceLookupDirector#initializeFromMemento(java.lang.String, org.eclipse.debug.core.ILaunchConfiguration)
- */
- public void initializeFromMemento( String memento, ILaunchConfiguration configuration ) throws CoreException {
- Element rootElement = DebugPlugin.parseDocument( memento );
- if ( rootElement.getNodeName().equalsIgnoreCase( OldDefaultSourceLocator.ELEMENT_NAME ) ) {
- initializeFromOldMemento( memento, configuration );
- }
- else {
- super.initializeFromMemento( memento, configuration );
- }
- }
-
- private void initializeFromOldMemento( String memento, ILaunchConfiguration configuration ) throws CoreException {
- dispose();
- setLaunchConfiguration( configuration );
- OldDefaultSourceLocator old = new OldDefaultSourceLocator();
- old.initializeFromMemento( memento );
- ICSourceLocator csl = (ICSourceLocator)old.getAdapter( ICSourceLocator.class );
- setFindDuplicates( csl.searchForDuplicateFiles() );
- ICSourceLocation[] locations = csl.getSourceLocations();
-
- // Check if the old source locator includes all referenced projects.
- // If so, DefaultSpourceContainer should be used.
- IProject project = csl.getProject();
- List list = CDebugUtils.getReferencedProjects( project );
- HashSet names = new HashSet( list.size() + 1 );
- names.add( project.getName() );
- Iterator it = list.iterator();
- while( it.hasNext() ) {
- names.add( ((IProject)it.next()).getName() );
- }
- boolean includesDefault = true;
- for( int i = 0; i < locations.length; ++i ) {
- if ( locations[i] instanceof IProjectSourceLocation && ((IProjectSourceLocation)locations[i]).isGeneric() ) {
- if ( !names.contains( ((IProjectSourceLocation)locations[i]).getProject().getName() ) ) {
- includesDefault = false;
- break;
- }
- }
- }
-
- // Generate an array of new source containers including DefaultSourceContainer
- ArrayList locs = new ArrayList( locations.length );
- for ( int i = 0; i < locations.length; ++i ) {
- if ( !includesDefault || !( locations[i] instanceof IProjectSourceLocation && names.contains( ((IProjectSourceLocation)locations[i]).getProject().getName() ) ) )
- locs.add( locations[i] );
- }
-
- ISourceContainer[] containers = SourceUtils.convertSourceLocations( (ICSourceLocation[])locs.toArray( new ICSourceLocation[locs.size()] ) );
- ArrayList cons = new ArrayList( Arrays.asList( containers ) );
- if ( includesDefault ) {
- DefaultSourceContainer defaultContainer = new DefaultSourceContainer();
- defaultContainer.init( this );
- cons.add( 0, defaultContainer );
- }
- setSourceContainers( (ISourceContainer[])cons.toArray( new ISourceContainer[cons.size()] ) );
- initializeParticipants();
- }
-}
diff --git a/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/ui/sourcelookup/OldDefaultSourceLocator.java b/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/ui/sourcelookup/OldDefaultSourceLocator.java
deleted file mode 100644
index bf693e10799..00000000000
--- a/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/ui/sourcelookup/OldDefaultSourceLocator.java
+++ /dev/null
@@ -1,213 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004, 2005 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.ui.sourcelookup;
-
-import java.io.IOException;
-import java.io.StringReader;
-import java.text.MessageFormat;
-import javax.xml.parsers.DocumentBuilder;
-import javax.xml.parsers.DocumentBuilderFactory;
-import javax.xml.parsers.ParserConfigurationException;
-import javax.xml.transform.TransformerException;
-import org.eclipse.cdt.debug.core.CDebugUtils;
-import org.eclipse.cdt.debug.core.ICDTLaunchConfigurationConstants;
-import org.eclipse.cdt.debug.core.sourcelookup.ICSourceLocator;
-import org.eclipse.cdt.debug.core.sourcelookup.SourceLookupFactory;
-import org.eclipse.cdt.debug.ui.CDebugUIPlugin;
-import org.eclipse.core.resources.IProject;
-import org.eclipse.core.resources.IResourceChangeListener;
-import org.eclipse.core.resources.ResourcesPlugin;
-import org.eclipse.core.runtime.CoreException;
-import org.eclipse.core.runtime.IAdaptable;
-import org.eclipse.core.runtime.IStatus;
-import org.eclipse.core.runtime.Status;
-import org.eclipse.debug.core.ILaunchConfiguration;
-import org.eclipse.debug.core.model.IPersistableSourceLocator;
-import org.eclipse.debug.core.model.IStackFrame;
-import org.w3c.dom.Document;
-import org.w3c.dom.Element;
-import org.xml.sax.InputSource;
-import org.xml.sax.SAXException;
-
-/**
- * Old default source locator. We keep it for migration purposes.
- */
-public class OldDefaultSourceLocator implements IPersistableSourceLocator, IAdaptable {
-
- /**
- * Identifier for the 'Default C/C++ Source Locator' extension (value <code>"org.eclipse.cdt.debug.ui.DefaultSourceLocator"</code>).
- */
- public static final String ID_DEFAULT_SOURCE_LOCATOR = CDebugUIPlugin.getUniqueIdentifier() + ".DefaultSourceLocator"; //$NON-NLS-1$
-
- // to support old configurations
- public static final String ID_OLD_DEFAULT_SOURCE_LOCATOR = "org.eclipse.cdt.launch" + ".DefaultSourceLocator"; //$NON-NLS-1$ //$NON-NLS-2$
-
- protected static final String ELEMENT_NAME = "PromptingSourceLocator"; //$NON-NLS-1$
-
- private static final String ATTR_PROJECT = "project"; //$NON-NLS-1$
-
- private static final String ATTR_MEMENTO = "memento"; //$NON-NLS-1$
-
- /**
- * Underlying source locator.
- */
- private ICSourceLocator fSourceLocator;
-
- public OldDefaultSourceLocator() {
- super();
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.debug.core.model.IPersistableSourceLocator#getMemento()
- */
- public String getMemento() throws CoreException {
- if ( getCSourceLocator() != null ) {
- Document document = null;
- Throwable ex = null;
- try {
- document = DocumentBuilderFactory.newInstance().newDocumentBuilder().newDocument();
- Element element = document.createElement( ELEMENT_NAME );
- document.appendChild( element );
- element.setAttribute( ATTR_PROJECT, getCSourceLocator().getProject().getName() );
- IPersistableSourceLocator psl = getPersistableSourceLocator();
- if ( psl != null ) {
- element.setAttribute( ATTR_MEMENTO, psl.getMemento() );
- }
- return CDebugUtils.serializeDocument( document );
- }
- catch( ParserConfigurationException e ) {
- ex = e;
- }
- catch( IOException e ) {
- ex = e;
- }
- catch( TransformerException e ) {
- ex = e;
- }
- abort( SourceLookupMessages.getString( "OldDefaultSourceLocator.1" ), ex ); //$NON-NLS-1$
- }
- return null;
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.debug.core.model.IPersistableSourceLocator#initializeFromMemento(java.lang.String)
- */
- public void initializeFromMemento( String memento ) throws CoreException {
- Exception ex = null;
- try {
- Element root = null;
- DocumentBuilder parser = DocumentBuilderFactory.newInstance().newDocumentBuilder();
- StringReader reader = new StringReader( memento );
- InputSource source = new InputSource( reader );
- root = parser.parse( source ).getDocumentElement();
- if ( !root.getNodeName().equalsIgnoreCase( ELEMENT_NAME ) ) {
- abort( SourceLookupMessages.getString( "OldDefaultSourceLocator.2" ), null ); //$NON-NLS-1$
- }
- String projectName = root.getAttribute( ATTR_PROJECT );
- String data = root.getAttribute( ATTR_MEMENTO );
- if ( isEmpty( projectName ) ) {
- abort( SourceLookupMessages.getString( "OldDefaultSourceLocator.3" ), null ); //$NON-NLS-1$
- }
- IProject project = ResourcesPlugin.getWorkspace().getRoot().getProject( projectName );
- if ( getCSourceLocator() == null )
- setCSourceLocator( SourceLookupFactory.createSourceLocator( project ) );
- if ( getCSourceLocator().getProject() != null && !getCSourceLocator().getProject().equals( project ) )
- return;
- if ( project == null || !project.exists() || !project.isOpen() )
- abort( MessageFormat.format( SourceLookupMessages.getString( "OldDefaultSourceLocator.4" ), new String[]{ projectName } ), null ); //$NON-NLS-1$
- IPersistableSourceLocator psl = getPersistableSourceLocator();
- if ( psl != null )
- psl.initializeFromMemento( data );
- else
- abort( SourceLookupMessages.getString( "OldDefaultSourceLocator.5" ), null ); //$NON-NLS-1$
- return;
- }
- catch( ParserConfigurationException e ) {
- ex = e;
- }
- catch( SAXException e ) {
- ex = e;
- }
- catch( IOException e ) {
- ex = e;
- }
- abort( SourceLookupMessages.getString( "OldDefaultSourceLocator.6" ), ex ); //$NON-NLS-1$
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.debug.core.model.IPersistableSourceLocator#initializeDefaults(org.eclipse.debug.core.ILaunchConfiguration)
- */
- public void initializeDefaults( ILaunchConfiguration configuration ) throws CoreException {
- setCSourceLocator( SourceLookupFactory.createSourceLocator( getProject( configuration ) ) );
- String memento = configuration.getAttribute( ILaunchConfiguration.ATTR_SOURCE_LOCATOR_MEMENTO, "" ); //$NON-NLS-1$
- if ( !isEmpty( memento ) )
- initializeFromMemento( memento );
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.core.runtime.IAdaptable#getAdapter(java.lang.Class)
- */
- public Object getAdapter( Class adapter ) {
- if ( getCSourceLocator() instanceof IAdaptable ) {
- if ( adapter.equals( ICSourceLocator.class ) ) {
- return ((IAdaptable)getCSourceLocator()).getAdapter( adapter );
- }
- if ( adapter.equals( IResourceChangeListener.class ) ) {
- return ((IAdaptable)getCSourceLocator()).getAdapter( adapter );
- }
- }
- return null;
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.debug.core.model.ISourceLocator#getSourceElement(org.eclipse.debug.core.model.IStackFrame)
- */
- public Object getSourceElement( IStackFrame stackFrame ) {
- return null;
- }
-
- private ICSourceLocator getCSourceLocator() {
- return fSourceLocator;
- }
-
- private void setCSourceLocator( ICSourceLocator locator ) {
- fSourceLocator = locator;
- }
-
- private IPersistableSourceLocator getPersistableSourceLocator() {
- ICSourceLocator sl = getCSourceLocator();
- return (sl instanceof IPersistableSourceLocator) ? (IPersistableSourceLocator)sl : null;
- }
-
- /**
- * Throws an internal error exception
- */
- private void abort( String message, Throwable e ) throws CoreException {
- IStatus s = new Status( IStatus.ERROR, CDebugUIPlugin.getUniqueIdentifier(), 0, message, e );
- throw new CoreException( s );
- }
-
- private boolean isEmpty( String string ) {
- return string == null || string.trim().length() == 0;
- }
-
- private IProject getProject( ILaunchConfiguration configuration ) throws CoreException {
- String projectName = configuration.getAttribute( ICDTLaunchConfigurationConstants.ATTR_PROJECT_NAME, (String)null );
- if ( !isEmpty( projectName ) ) {
- IProject project = ResourcesPlugin.getWorkspace().getRoot().getProject( projectName );
- if ( project.exists() ) {
- return project;
- }
- }
- abort( MessageFormat.format( SourceLookupMessages.getString( "OldDefaultSourceLocator.9" ), new String[]{ projectName } ), null ); //$NON-NLS-1$
- return null;
- }
-}
diff --git a/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/ui/sourcelookup/SourceLookupMessages.java b/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/ui/sourcelookup/SourceLookupMessages.java
deleted file mode 100644
index 26a5fff739e..00000000000
--- a/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/ui/sourcelookup/SourceLookupMessages.java
+++ /dev/null
@@ -1,33 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004, 2006 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.ui.sourcelookup;
-
-import java.util.MissingResourceException;
-import java.util.ResourceBundle;
-
-public class SourceLookupMessages {
-
- private static final String BUNDLE_NAME = "org.eclipse.cdt.debug.ui.sourcelookup.SourceLookupMessages";//$NON-NLS-1$
-
- private static final ResourceBundle RESOURCE_BUNDLE = ResourceBundle.getBundle( BUNDLE_NAME );
-
- private SourceLookupMessages() {
- }
-
- public static String getString( String key ) {
- try {
- return RESOURCE_BUNDLE.getString( key );
- }
- catch( MissingResourceException e ) {
- return '!' + key + '!';
- }
- }
-}
diff --git a/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/ui/sourcelookup/SourceLookupMessages.properties b/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/ui/sourcelookup/SourceLookupMessages.properties
deleted file mode 100644
index aea0bb6f466..00000000000
--- a/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/ui/sourcelookup/SourceLookupMessages.properties
+++ /dev/null
@@ -1,20 +0,0 @@
-###############################################################################
-# Copyright (c) 2003, 2005 QNX Software Systems and others.
-# All rights reserved. This program and the accompanying materials
-# are made available under the terms of the Eclipse Public License v1.0
-# which accompanies this distribution, and is available at
-# http://www.eclipse.org/legal/epl-v10.html
-#
-# Contributors:
-# QNX Software Systems - initial API and implementation
-###############################################################################
-
-DefaultSourceLocator.1=Unable to create memento for C/C++ source locator.
-DefaultSourceLocator.2=Unable to restore prompting source locator - invalid format.
-DefaultSourceLocator.3=Unable to restore prompting source locator - invalid format.
-DefaultSourceLocator.4=Unable to restore prompting source locator - project {0} not found.
-DefaultSourceLocator.5=Unable to restore prompting source locator - invalid format.
-DefaultSourceLocator.6=Exception occurred initializing source locator.
-DefaultSourceLocator.7=Selection needed
-DefaultSourceLocator.8=Debugger has found multiple files with the same name.\nPlease select one associated with the selected stack frame.
-DefaultSourceLocator.9=Project ''{0}'' does not exist.

Back to the top