Skip to main content
aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorOleg Krasilnikov2008-01-29 14:49:58 +0000
committerOleg Krasilnikov2008-01-29 14:49:58 +0000
commitbb3803a6053b1736593f2c57c696cd14be126b7d (patch)
treed0a470e9977caef98d32d00fa16f0722cd2fd561
parent4f17acd8ade9d8a5fd4261bca01288037d05874e (diff)
downloadorg.eclipse.cdt-bb3803a6053b1736593f2c57c696cd14be126b7d.tar.gz
org.eclipse.cdt-bb3803a6053b1736593f2c57c696cd14be126b7d.tar.xz
org.eclipse.cdt-bb3803a6053b1736593f2c57c696cd14be126b7d.zip
Bug #182450 : Multi-config
-rw-r--r--build/org.eclipse.cdt.managedbuilder.core/src/org/eclipse/cdt/build/core/scannerconfig/ICfgScannerConfigBuilderInfo2Set.java2
-rw-r--r--build/org.eclipse.cdt.managedbuilder.core/src/org/eclipse/cdt/managedbuilder/core/BuildListComparator.java6
-rw-r--r--build/org.eclipse.cdt.managedbuilder.core/src/org/eclipse/cdt/managedbuilder/internal/core/MultiConfiguration.java29
-rw-r--r--build/org.eclipse.cdt.managedbuilder.core/src/org/eclipse/cdt/managedbuilder/internal/core/MultiFolderInfo.java24
-rw-r--r--build/org.eclipse.cdt.managedbuilder.core/src/org/eclipse/cdt/managedbuilder/internal/core/MultiResourceInfo.java28
-rw-r--r--build/org.eclipse.cdt.managedbuilder.ui/src/org/eclipse/cdt/managedbuilder/ui/properties/BuildOptionSettingsUI.java27
-rw-r--r--build/org.eclipse.cdt.managedbuilder.ui/src/org/eclipse/cdt/managedbuilder/ui/properties/BuildStepsTab.java4
-rw-r--r--build/org.eclipse.cdt.managedbuilder.ui/src/org/eclipse/cdt/managedbuilder/ui/properties/CPropertyVarsTab.java13
-rw-r--r--build/org.eclipse.cdt.managedbuilder.ui/src/org/eclipse/cdt/managedbuilder/ui/properties/DiscoveryTab.java29
-rw-r--r--build/org.eclipse.cdt.managedbuilder.ui/src/org/eclipse/cdt/managedbuilder/ui/properties/FileListControlFieldEditor.java8
-rw-r--r--build/org.eclipse.cdt.managedbuilder.ui/src/org/eclipse/cdt/managedbuilder/ui/properties/NewCfgDialog.java4
-rw-r--r--build/org.eclipse.cdt.managedbuilder.ui/src/org/eclipse/cdt/managedbuilder/ui/properties/NewVarDialog.java10
-rw-r--r--build/org.eclipse.cdt.managedbuilder.ui/src/org/eclipse/cdt/managedbuilder/ui/properties/ToolChainEditTab.java8
-rw-r--r--build/org.eclipse.cdt.managedbuilder.ui/src/org/eclipse/cdt/managedbuilder/ui/properties/ToolListContentProvider.java6
-rw-r--r--build/org.eclipse.cdt.managedbuilder.ui/src/org/eclipse/cdt/managedbuilder/ui/properties/ToolListElement.java6
-rw-r--r--build/org.eclipse.cdt.managedbuilder.ui/src/org/eclipse/cdt/managedbuilder/ui/properties/ToolSelectionDialog.java30
-rw-r--r--build/org.eclipse.cdt.managedbuilder.ui/src/org/eclipse/cdt/managedbuilder/ui/properties/ToolSettingsPrefStore.java3
-rw-r--r--build/org.eclipse.cdt.managedbuilder.ui/src/org/eclipse/cdt/managedbuilder/ui/properties/ToolSettingsTab.java29
-rw-r--r--core/org.eclipse.cdt.core/model/org/eclipse/cdt/core/model/util/CDTListComparator.java8
-rw-r--r--core/org.eclipse.cdt.ui/src/org/eclipse/cdt/ui/newui/AbstractCPropertyTab.java49
20 files changed, 175 insertions, 148 deletions
diff --git a/build/org.eclipse.cdt.managedbuilder.core/src/org/eclipse/cdt/build/core/scannerconfig/ICfgScannerConfigBuilderInfo2Set.java b/build/org.eclipse.cdt.managedbuilder.core/src/org/eclipse/cdt/build/core/scannerconfig/ICfgScannerConfigBuilderInfo2Set.java
index eb431944ec5..e816375c5a2 100644
--- a/build/org.eclipse.cdt.managedbuilder.core/src/org/eclipse/cdt/build/core/scannerconfig/ICfgScannerConfigBuilderInfo2Set.java
+++ b/build/org.eclipse.cdt.managedbuilder.core/src/org/eclipse/cdt/build/core/scannerconfig/ICfgScannerConfigBuilderInfo2Set.java
@@ -22,7 +22,7 @@ public interface ICfgScannerConfigBuilderInfo2Set {
void setPerRcTypeDiscovery(boolean on);
- Map getInfoMap();
+ Map<CfgInfoContext, IScannerConfigBuilderInfo2> getInfoMap();
CfgInfoContext[] getContexts();
diff --git a/build/org.eclipse.cdt.managedbuilder.core/src/org/eclipse/cdt/managedbuilder/core/BuildListComparator.java b/build/org.eclipse.cdt.managedbuilder.core/src/org/eclipse/cdt/managedbuilder/core/BuildListComparator.java
index ad4993d8cd4..c2386459370 100644
--- a/build/org.eclipse.cdt.managedbuilder.core/src/org/eclipse/cdt/managedbuilder/core/BuildListComparator.java
+++ b/build/org.eclipse.cdt.managedbuilder.core/src/org/eclipse/cdt/managedbuilder/core/BuildListComparator.java
@@ -1,5 +1,5 @@
/*******************************************************************************
- * Copyright (c) 2007 Intel Corporation and others.
+ * Copyright (c) 2007, 2008 Intel 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
@@ -21,9 +21,9 @@ import org.eclipse.cdt.managedbuilder.buildproperties.IBuildPropertyValue;
public class BuildListComparator extends CDTListComparator {
private static final String EMPTY = ""; //$NON-NLS-1$
- private static Comparator comparator = null;
+ private static Comparator<Object> comparator = null;
- public static Comparator getInstance() {
+ public static Comparator<Object> getInstance() {
if (comparator == null)
comparator = new BuildListComparator();
return comparator;
diff --git a/build/org.eclipse.cdt.managedbuilder.core/src/org/eclipse/cdt/managedbuilder/internal/core/MultiConfiguration.java b/build/org.eclipse.cdt.managedbuilder.core/src/org/eclipse/cdt/managedbuilder/internal/core/MultiConfiguration.java
index 9c7867558c8..01b563acc2b 100644
--- a/build/org.eclipse.cdt.managedbuilder.core/src/org/eclipse/cdt/managedbuilder/internal/core/MultiConfiguration.java
+++ b/build/org.eclipse.cdt.managedbuilder.core/src/org/eclipse/cdt/managedbuilder/internal/core/MultiConfiguration.java
@@ -397,22 +397,6 @@ public class MultiConfiguration extends MultiItemsHolder implements
*/
public ITool[] getFilteredTools() {
ITool[] ts = curr().getFilteredTools();
- /*
- ITool[] ms = new ITool[ts.length];
- for (int i=0; i<ts.length; i++) {
- ArrayList lst = new ArrayList(fCfgs.length);
- String ext = ts[i].getDefaultInputExtension();
- for (int j=0; j<fCfgs.length; j++) {
- ITool t = fCfgs[j].getToolFromInputExtension(ext);
- if (t != null)
- lst.add(t);
- }
- if (lst.size() > 1)
- ms[i] = (ITool)new MultiTool(lst, curr);
- else
- ms[i] = ts[i];
- }
- */
return ts;
}
@@ -583,8 +567,17 @@ public class MultiConfiguration extends MultiItemsHolder implements
*/
public IResourceInfo getResourceInfo(IPath path, boolean exactPath) {
IResourceInfo ris[] = new IResourceInfo[fCfgs.length];
- for (int i=0; i<fCfgs.length; i++)
+ boolean isFolder = true;
+ for (int i=0; i<fCfgs.length; i++) {
ris[i] = fCfgs[i].getResourceInfo(path, exactPath);
+ if (! (ris[i] instanceof IFolderInfo))
+ isFolder = false;
+ }
+ if (isFolder) {
+ IFolderInfo fis[] = new IFolderInfo[ris.length];
+ System.arraycopy(ris, 0, fis, 0, ris.length);
+ return new MultiFolderInfo(fis, this);
+ }
return new MultiResourceInfo(ris, this);
}
@@ -600,7 +593,7 @@ public class MultiConfiguration extends MultiItemsHolder implements
* @see org.eclipse.cdt.managedbuilder.core.IConfiguration#getResourceInfos()
*/
public IResourceInfo[] getResourceInfos() {
- ArrayList ri = new ArrayList();
+ ArrayList<IResourceInfo> ri = new ArrayList<IResourceInfo>();
for (int i=0; i<fCfgs.length; i++) {
IResourceInfo[] ris = fCfgs[i].getResourceInfos();
ri.addAll(Arrays.asList(ris));
diff --git a/build/org.eclipse.cdt.managedbuilder.core/src/org/eclipse/cdt/managedbuilder/internal/core/MultiFolderInfo.java b/build/org.eclipse.cdt.managedbuilder.core/src/org/eclipse/cdt/managedbuilder/internal/core/MultiFolderInfo.java
index 670d5e8fe56..e70cb5f9703 100644
--- a/build/org.eclipse.cdt.managedbuilder.core/src/org/eclipse/cdt/managedbuilder/internal/core/MultiFolderInfo.java
+++ b/build/org.eclipse.cdt.managedbuilder.core/src/org/eclipse/cdt/managedbuilder/internal/core/MultiFolderInfo.java
@@ -47,53 +47,53 @@ public class MultiFolderInfo extends MultiResourceInfo implements IFolderInfo {
}
public ITool[] getFilteredTools() {
- return ((IFolderInfo)fRis[0]).getFilteredTools();
+ return ((IFolderInfo)fRis[curr]).getFilteredTools();
}
public CFolderData getFolderData() {
- return ((IFolderInfo)fRis[0]).getFolderData();
+ return ((IFolderInfo)fRis[curr]).getFolderData();
}
public String getOutputExtension(String resourceExtension) {
- return ((IFolderInfo)fRis[0]).getOutputExtension(resourceExtension);
+ return ((IFolderInfo)fRis[curr]).getOutputExtension(resourceExtension);
}
public ITool getTool(String id) {
- return ((IFolderInfo)fRis[0]).getTool(id);
+ return ((IFolderInfo)fRis[curr]).getTool(id);
}
public IToolChain getToolChain() {
- return ((IFolderInfo)fRis[0]).getToolChain();
+ return ((IFolderInfo)fRis[curr]).getToolChain();
}
public IModificationStatus getToolChainModificationStatus(ITool[] removed,
ITool[] added) {
- return ((IFolderInfo)fRis[0]).getToolChainModificationStatus(removed, added);
+ return ((IFolderInfo)fRis[curr]).getToolChainModificationStatus(removed, added);
}
public ITool getToolFromInputExtension(String sourceExtension) {
- return ((IFolderInfo)fRis[0]).getToolFromInputExtension(sourceExtension);
+ return ((IFolderInfo)fRis[curr]).getToolFromInputExtension(sourceExtension);
}
public ITool getToolFromOutputExtension(String extension) {
- return ((IFolderInfo)fRis[0]).getToolFromOutputExtension(extension);
+ return ((IFolderInfo)fRis[curr]).getToolFromOutputExtension(extension);
}
public ITool[] getToolsBySuperClassId(String id) {
- return ((IFolderInfo)fRis[0]).getToolsBySuperClassId(id);
+ return ((IFolderInfo)fRis[curr]).getToolsBySuperClassId(id);
}
public boolean isHeaderFile(String ext) {
- return ((IFolderInfo)fRis[0]).isHeaderFile(ext);
+ return ((IFolderInfo)fRis[curr]).isHeaderFile(ext);
}
public boolean isToolChainCompatible(IToolChain ch) {
- return ((IFolderInfo)fRis[0]).isToolChainCompatible(ch);
+ return ((IFolderInfo)fRis[curr]).isToolChainCompatible(ch);
}
public void modifyToolChain(ITool[] removed, ITool[] added)
throws BuildException {
- ((IFolderInfo)fRis[0]).modifyToolChain(removed, added);
+ ((IFolderInfo)fRis[curr]).modifyToolChain(removed, added);
}
}
diff --git a/build/org.eclipse.cdt.managedbuilder.core/src/org/eclipse/cdt/managedbuilder/internal/core/MultiResourceInfo.java b/build/org.eclipse.cdt.managedbuilder.core/src/org/eclipse/cdt/managedbuilder/internal/core/MultiResourceInfo.java
index e937f6e222f..e90278d1546 100644
--- a/build/org.eclipse.cdt.managedbuilder.core/src/org/eclipse/cdt/managedbuilder/internal/core/MultiResourceInfo.java
+++ b/build/org.eclipse.cdt.managedbuilder.core/src/org/eclipse/cdt/managedbuilder/internal/core/MultiResourceInfo.java
@@ -38,7 +38,7 @@ public class MultiResourceInfo extends MultiItemsHolder implements
private static final int MODE_COMMAND = 5;
protected IResourceInfo[] fRis = null;
- private int activeCfg = 0;
+ protected int curr = 0;
IConfiguration parent = null;
public MultiResourceInfo(IResourceInfo[] ris, IConfiguration _parent) {
@@ -49,7 +49,7 @@ public class MultiResourceInfo extends MultiItemsHolder implements
continue;
Configuration cfg = (Configuration)fRis[i].getParent();
if (cfg.getConfigurationDescription().isActive()) {
- activeCfg = i;
+ curr = i;
break;
}
}
@@ -69,14 +69,14 @@ public class MultiResourceInfo extends MultiItemsHolder implements
* @see org.eclipse.cdt.managedbuilder.core.IResourceInfo#getCLanguageDatas()
*/
public CLanguageData[] getCLanguageDatas() {
- return fRis[activeCfg].getCLanguageDatas();
+ return fRis[curr].getCLanguageDatas();
}
/* (non-Javadoc)
* @see org.eclipse.cdt.managedbuilder.core.IResourceInfo#getKind()
*/
public int getKind() {
- return fRis[activeCfg].getKind();
+ return fRis[curr].getKind();
}
/* (non-Javadoc)
@@ -90,7 +90,7 @@ public class MultiResourceInfo extends MultiItemsHolder implements
* @see org.eclipse.cdt.managedbuilder.core.IResourceInfo#getPath()
*/
public IPath getPath() {
- return fRis[activeCfg].getPath();
+ return fRis[curr].getPath();
}
/* (non-Javadoc)
@@ -98,14 +98,14 @@ public class MultiResourceInfo extends MultiItemsHolder implements
*/
public CResourceData getResourceData() {
System.out.println("Strange call: MultiResourceInfo.getResourceData()"); //$NON-NLS-1$
- return fRis[activeCfg].getResourceData();
+ return fRis[curr].getResourceData();
}
/* (non-Javadoc)
* @see org.eclipse.cdt.managedbuilder.core.IResourceInfo#getTools()
*/
public ITool[] getTools() {
- return fRis[activeCfg].getTools();
+ return fRis[curr].getTools();
}
/* (non-Javadoc)
@@ -307,42 +307,42 @@ public class MultiResourceInfo extends MultiItemsHolder implements
* @see org.eclipse.cdt.managedbuilder.core.IResourceInfo#supportsBuild(boolean)
*/
public boolean supportsBuild(boolean managed) {
- return fRis[activeCfg].supportsBuild(managed);
+ return fRis[curr].supportsBuild(managed);
}
/* (non-Javadoc)
* @see org.eclipse.cdt.managedbuilder.core.IBuildObject#getBaseId()
*/
public String getBaseId() {
- return fRis[activeCfg].getBaseId();
+ return fRis[curr].getBaseId();
}
/* (non-Javadoc)
* @see org.eclipse.cdt.managedbuilder.core.IBuildObject#getId()
*/
public String getId() {
- return fRis[activeCfg].getId();
+ return fRis[curr].getId();
}
/* (non-Javadoc)
* @see org.eclipse.cdt.managedbuilder.core.IBuildObject#getManagedBuildRevision()
*/
public String getManagedBuildRevision() {
- return fRis[activeCfg].getManagedBuildRevision();
+ return fRis[curr].getManagedBuildRevision();
}
/* (non-Javadoc)
* @see org.eclipse.cdt.managedbuilder.core.IBuildObject#getName()
*/
public String getName() {
- return fRis[activeCfg].getName();
+ return fRis[curr].getName();
}
/* (non-Javadoc)
* @see org.eclipse.cdt.managedbuilder.core.IBuildObject#getVersion()
*/
public PluginVersionIdentifier getVersion() {
- return fRis[activeCfg].getVersion();
+ return fRis[curr].getVersion();
}
/* (non-Javadoc)
@@ -358,7 +358,7 @@ public class MultiResourceInfo extends MultiItemsHolder implements
}
public boolean isRoot() {
- return ((ResourceInfo)fRis[activeCfg]).isRoot();
+ return ((ResourceInfo)fRis[curr]).isRoot();
}
}
diff --git a/build/org.eclipse.cdt.managedbuilder.ui/src/org/eclipse/cdt/managedbuilder/ui/properties/BuildOptionSettingsUI.java b/build/org.eclipse.cdt.managedbuilder.ui/src/org/eclipse/cdt/managedbuilder/ui/properties/BuildOptionSettingsUI.java
index 63c90fb9639..895c5cd10a7 100644
--- a/build/org.eclipse.cdt.managedbuilder.ui/src/org/eclipse/cdt/managedbuilder/ui/properties/BuildOptionSettingsUI.java
+++ b/build/org.eclipse.cdt.managedbuilder.ui/src/org/eclipse/cdt/managedbuilder/ui/properties/BuildOptionSettingsUI.java
@@ -32,6 +32,7 @@ import org.eclipse.cdt.managedbuilder.core.IResourceInfo;
import org.eclipse.cdt.managedbuilder.core.ITool;
import org.eclipse.cdt.managedbuilder.core.ManagedBuildManager;
import org.eclipse.cdt.managedbuilder.internal.core.MultiResourceInfo;
+import org.eclipse.cdt.ui.newui.AbstractCPropertyTab;
import org.eclipse.cdt.ui.newui.AbstractPage;
import org.eclipse.jface.preference.BooleanFieldEditor;
import org.eclipse.jface.preference.DirectoryFieldEditor;
@@ -47,12 +48,14 @@ import org.eclipse.swt.widgets.Composite;
import org.eclipse.ui.PlatformUI;
public class BuildOptionSettingsUI extends AbstractToolSettingUI {
- private Map fieldsMap = new HashMap();
+ private Map<String, FieldEditor> fieldsMap =
+ new HashMap<String, FieldEditor>();
private IOptionCategory category;
private IHoldsOptions optionHolder;
private IHoldsOptions[] ohs;
private int curr;
- private Map fieldEditorsToParentMap = new HashMap();
+ private Map<FieldEditor, Composite> fieldEditorsToParentMap =
+ new HashMap<FieldEditor, Composite>();
public BuildOptionSettingsUI(AbstractCBuildPropertyTab page,
IResourceInfo info, IHoldsOptions optionHolder,
@@ -66,7 +69,7 @@ public class BuildOptionSettingsUI extends AbstractToolSettingUI {
IResourceInfo[] ris = (IResourceInfo[])mri.getItems();
String id = category.getId();
String ext = ((ITool)optionHolder).getDefaultInputExtension();
- ArrayList lst = new ArrayList();
+ ArrayList<ITool> lst = new ArrayList<ITool>();
for (int i=0; i<ris.length; i++) {
ITool[] ts = ris[i].getTools();
for (int j=0; j<ts.length; j++) {
@@ -182,7 +185,7 @@ public class BuildOptionSettingsUI extends AbstractToolSettingUI {
// in the plugin.xml file) in the UI Combobox. This refrains the user from selecting an
// invalid value and avoids issuing an error message.
String[] enumNames = opt.getApplicableValues();
- Vector enumValidList = new Vector();
+ Vector<String> enumValidList = new Vector<String>();
for (int i = 0; i < enumNames.length; ++i) {
if (opt.getValueHandler().isEnumValueAppropriate(config,
opt.getOptionHolder(), opt, opt.getValueHandlerExtraArgument(), enumNames[i])) {
@@ -247,6 +250,7 @@ public class BuildOptionSettingsUI extends AbstractToolSettingUI {
/* (non-Javadoc)
* @see org.eclipse.jface.preference.IPreferencePage#performOk()
*/
+ @SuppressWarnings("unchecked")
public boolean performOk() {
// Write the field editor contents out to the preference store
boolean ok = super.performOk();
@@ -323,7 +327,7 @@ public class BuildOptionSettingsUI extends AbstractToolSettingUI {
case IOption.UNDEF_LIBRARY_PATHS:
case IOption.UNDEF_LIBRARY_FILES:
case IOption.UNDEF_MACRO_FILES:
- String[] listVal = (String[])((List)clonedOption.getValue()).toArray(new String[0]);
+ String[] listVal = (String[])((List<String>)clonedOption.getValue()).toArray(new String[0]);
setOption = ManagedBuildManager.setOption(realCfg, realHolder, realOption, listVal);
// Reset the preference store since the Id may have changed
@@ -391,8 +395,8 @@ public class BuildOptionSettingsUI extends AbstractToolSettingUI {
}
}
- Collection fieldsList = fieldsMap.values();
- Iterator iter = fieldsList.iterator();
+ Collection<FieldEditor> fieldsList = fieldsMap.values();
+ Iterator<FieldEditor> iter = fieldsList.iterator();
while (iter.hasNext()) {
FieldEditor editor = (FieldEditor) iter.next();
if (editor instanceof TriStateBooleanFieldEditor)
@@ -530,7 +534,7 @@ public class BuildOptionSettingsUI extends AbstractToolSettingUI {
}
}
- Iterator iter = fieldsMap.values().iterator();
+ Iterator<FieldEditor> iter = fieldsMap.values().iterator();
while (iter.hasNext()) {
FieldEditor editor = (FieldEditor) iter.next();
if(id == null || !id.equals(editor.getPreferenceName()))
@@ -572,7 +576,7 @@ public class BuildOptionSettingsUI extends AbstractToolSettingUI {
boolean selectNewEnum = true;
boolean selectDefault = false;
- Vector enumValidList = new Vector();
+ Vector<String> enumValidList = new Vector<String>();
for (int i = 0; i < enumNames.length; ++i) {
if (opt.getValueHandler().isEnumValueAppropriate(config,
opt.getOptionHolder(), opt, opt.getValueHandlerExtraArgument(), enumNames[i])) {
@@ -629,7 +633,7 @@ public class BuildOptionSettingsUI extends AbstractToolSettingUI {
protected void valueChanged(boolean oldValue, boolean newValue) {
// TODO: uncomment before M5
//if (button.getGrayed())
- // button.setGrayed(false);
+ AbstractCPropertyTab.setGrayed(button, false);
super.valueChanged(!newValue, newValue);
}
protected void doLoad() {
@@ -654,8 +658,7 @@ public class BuildOptionSettingsUI extends AbstractToolSettingUI {
if (vals[0] > 0)
gray = true;
}
- // TODO: uncomment before M5
- // button.setGrayed(gray);
+ AbstractCPropertyTab.setGrayed(button, gray);
button.setSelection(value);
return;
}
diff --git a/build/org.eclipse.cdt.managedbuilder.ui/src/org/eclipse/cdt/managedbuilder/ui/properties/BuildStepsTab.java b/build/org.eclipse.cdt.managedbuilder.ui/src/org/eclipse/cdt/managedbuilder/ui/properties/BuildStepsTab.java
index 73a1db4656c..ee3cc5323c9 100644
--- a/build/org.eclipse.cdt.managedbuilder.ui/src/org/eclipse/cdt/managedbuilder/ui/properties/BuildStepsTab.java
+++ b/build/org.eclipse.cdt.managedbuilder.ui/src/org/eclipse/cdt/managedbuilder/ui/properties/BuildStepsTab.java
@@ -1,5 +1,5 @@
/*******************************************************************************
- * Copyright (c) 2007 Intel Corporation and others.
+ * Copyright (c) 2007, 2008 Intel 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
@@ -247,7 +247,7 @@ public class BuildStepsTab extends AbstractCBuildPropertyTab {
}
private ITool[] getRcbsTools(IResourceInfo rcConfig){
- List list = new ArrayList();
+ List<ITool> list = new ArrayList<ITool>();
ITool tools[] = rcConfig.getTools();
for (int i = 0; i < tools.length; i++) {
diff --git a/build/org.eclipse.cdt.managedbuilder.ui/src/org/eclipse/cdt/managedbuilder/ui/properties/CPropertyVarsTab.java b/build/org.eclipse.cdt.managedbuilder.ui/src/org/eclipse/cdt/managedbuilder/ui/properties/CPropertyVarsTab.java
index 073b02d0ae5..1f647abb9a2 100644
--- a/build/org.eclipse.cdt.managedbuilder.ui/src/org/eclipse/cdt/managedbuilder/ui/properties/CPropertyVarsTab.java
+++ b/build/org.eclipse.cdt.managedbuilder.ui/src/org/eclipse/cdt/managedbuilder/ui/properties/CPropertyVarsTab.java
@@ -1,5 +1,5 @@
/*******************************************************************************
- * Copyright (c) 2005, 2007 Intel Corporation and others.
+ * Copyright (c) 2005 - 2008 Intel 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
@@ -126,7 +126,7 @@ public class CPropertyVarsTab extends AbstractCPropertyTab {
};
private boolean fShowSysMacros = false;
- private Set fIncorrectlyDefinedMacrosNames = new HashSet();
+ private Set<String> fIncorrectlyDefinedMacrosNames = new HashSet<String>();
private static final int CONTEXT = ICoreVariableContextInfo.CONTEXT_CONFIGURATION;
private TableViewer tv;
@@ -325,9 +325,10 @@ public class CPropertyVarsTab extends AbstractCPropertyTab {
/*
* returnes the selected user-defined macros
*/
+ @SuppressWarnings("unchecked")
private ICdtVariable[] getSelectedUserMacros(){
if(tv == null) return null;
- List list = ((IStructuredSelection)tv.getSelection()).toList();
+ List<ICdtVariable> list = ((IStructuredSelection)tv.getSelection()).toList();
return (ICdtVariable[])list.toArray(new ICdtVariable[list.size()]);
}
@@ -495,7 +496,7 @@ public class CPropertyVarsTab extends AbstractCPropertyTab {
if (_vars == null) return;
if (cfgd == null) {
if (fShowSysMacros) {
- List lst = new ArrayList(_vars.length);
+ List<ICdtVariable> lst = new ArrayList<ICdtVariable>(_vars.length);
ICdtVariable[] uvars = vars.getMacros();
for (int i=0; i<uvars.length; i++) {
lst.add(uvars[i]);
@@ -517,7 +518,7 @@ public class CPropertyVarsTab extends AbstractCPropertyTab {
}
}
- ArrayList list = new ArrayList(_vars.length);
+ ArrayList<ICdtVariable> list = new ArrayList<ICdtVariable>(_vars.length);
for(int i = 0; i < _vars.length; i++){
if(_vars[i] != null && (fShowSysMacros || isUserVar(_vars[i])))
list.add(_vars[i]);
@@ -633,7 +634,7 @@ public class CPropertyVarsTab extends AbstractCPropertyTab {
return page.isForProject() || page.isForPrefs();
}
- private static class EnvCmp implements Comparator {
+ private static class EnvCmp implements Comparator<Object> {
public int compare(Object a0, Object a1) {
if (a0 == null || a1 == null)
diff --git a/build/org.eclipse.cdt.managedbuilder.ui/src/org/eclipse/cdt/managedbuilder/ui/properties/DiscoveryTab.java b/build/org.eclipse.cdt.managedbuilder.ui/src/org/eclipse/cdt/managedbuilder/ui/properties/DiscoveryTab.java
index 7fcdda0bdce..fce7ff52b4a 100644
--- a/build/org.eclipse.cdt.managedbuilder.ui/src/org/eclipse/cdt/managedbuilder/ui/properties/DiscoveryTab.java
+++ b/build/org.eclipse.cdt.managedbuilder.ui/src/org/eclipse/cdt/managedbuilder/ui/properties/DiscoveryTab.java
@@ -445,11 +445,9 @@ public class DiscoveryTab extends AbstractCBuildPropertyTab implements IBuildInf
CfgScannerConfigProfileManager.getCfgScannerConfigBuildInfo(getCfg(dst.getConfiguration()));
cbi2.setPerRcTypeDiscovery(cbi1.isPerRcTypeDiscovery());
- Map m1 = cbi1.getInfoMap();
- Map m2 = cbi2.getInfoMap();
- Iterator it2 = m2.keySet().iterator();
- while (it2.hasNext()) {
- CfgInfoContext ic = (CfgInfoContext)it2.next();
+ Map<CfgInfoContext, IScannerConfigBuilderInfo2> m1 = cbi1.getInfoMap();
+ Map<CfgInfoContext, IScannerConfigBuilderInfo2> m2 = cbi2.getInfoMap();
+ for (CfgInfoContext ic : m2.keySet()) {
if (m1.keySet().contains(ic)) {
IScannerConfigBuilderInfo2 bi1 = (IScannerConfigBuilderInfo2)m1.get(ic);
try {
@@ -503,11 +501,10 @@ public class DiscoveryTab extends AbstractCBuildPropertyTab implements IBuildInf
if(cbi == null || baseInfoMap == null)
return new ArrayList(0);
- Map cfgInfoMap = cbi.getInfoMap();
- HashMap baseCopy = new HashMap(baseInfoMap);
- List list = new ArrayList();
- for(Iterator iter = cfgInfoMap.entrySet().iterator(); iter.hasNext();){
- Map.Entry entry = (Map.Entry)iter.next();
+ Map<CfgInfoContext, IScannerConfigBuilderInfo2> cfgInfoMap = cbi.getInfoMap();
+ HashMap<InfoContext, Object> baseCopy = new HashMap<InfoContext, Object>(baseInfoMap);
+ List<CfgInfoContext> list = new ArrayList<CfgInfoContext>();
+ for(Map.Entry entry : cfgInfoMap.entrySet()){
CfgInfoContext cic = (CfgInfoContext)entry.getKey();
InfoContext c = cic.toInfoContext();
if(c == null)
@@ -525,8 +522,7 @@ public class DiscoveryTab extends AbstractCBuildPropertyTab implements IBuildInf
if(baseCopy.size() != 0){
IConfiguration cfg = cbi.getConfiguration();
- for(Iterator iter = baseCopy.keySet().iterator(); iter.hasNext();){
- InfoContext c = (InfoContext)iter.next();
+ for(InfoContext c : baseCopy.keySet()){
CfgInfoContext cic = CfgInfoContext.fromInfoContext(cfg, c);
if(cic != null)
list.add(cic);
@@ -557,7 +553,7 @@ public class DiscoveryTab extends AbstractCBuildPropertyTab implements IBuildInf
return true;
}
- private boolean listEqual(List l1, List l2) {
+ private boolean listEqual(List<Object> l1, List<Object> l2) {
if (l1 == null && l2 == null) return true;
if (l2 == null || l2 == null) return false;
if (l1.size() != l2.size()) return false;
@@ -565,7 +561,7 @@ public class DiscoveryTab extends AbstractCBuildPropertyTab implements IBuildInf
// since it's most probable, try it first.
if (l1.equals(l2)) return true;
// order may differ...
- Iterator it = l1.iterator();
+ Iterator<Object> it = l1.iterator();
while (it.hasNext())
if (!l2.contains(it.next())) return false;
return true;
@@ -592,10 +588,9 @@ public class DiscoveryTab extends AbstractCBuildPropertyTab implements IBuildInf
if (page.isMultiCfg())
return;
cbi.setPerRcTypeDiscovery(true);
- Iterator it = cbi.getInfoMap().keySet().iterator();
- while (it.hasNext()) {
+ for (CfgInfoContext cic : cbi.getInfoMap().keySet()) {
try {
- cbi.applyInfo((CfgInfoContext)it.next(), null);
+ cbi.applyInfo(cic, null);
} catch (CoreException e) {}
}
updateData();
diff --git a/build/org.eclipse.cdt.managedbuilder.ui/src/org/eclipse/cdt/managedbuilder/ui/properties/FileListControlFieldEditor.java b/build/org.eclipse.cdt.managedbuilder.ui/src/org/eclipse/cdt/managedbuilder/ui/properties/FileListControlFieldEditor.java
index 5428e1850ca..a8beea1d463 100644
--- a/build/org.eclipse.cdt.managedbuilder.ui/src/org/eclipse/cdt/managedbuilder/ui/properties/FileListControlFieldEditor.java
+++ b/build/org.eclipse.cdt.managedbuilder.ui/src/org/eclipse/cdt/managedbuilder/ui/properties/FileListControlFieldEditor.java
@@ -1,5 +1,5 @@
/*******************************************************************************
- * Copyright (c) 2004, 2007 BitMethods Inc and others.
+ * Copyright (c) 2004, 2008 BitMethods 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
@@ -293,11 +293,11 @@ public class FileListControlFieldEditor extends FieldEditor {
private String[] parseString(String stringList) {
StringTokenizer tokenizer =
new StringTokenizer(stringList, DEFAULT_SEPERATOR);
- ArrayList list = new ArrayList();
+ ArrayList<String> list = new ArrayList<String>();
while (tokenizer.hasMoreElements()) {
- list.add(tokenizer.nextElement());
+ list.add((String)tokenizer.nextElement());
}
- return (String[]) list.toArray(new String[list.size()]);
+ return list.toArray(new String[list.size()]);
}
/**
diff --git a/build/org.eclipse.cdt.managedbuilder.ui/src/org/eclipse/cdt/managedbuilder/ui/properties/NewCfgDialog.java b/build/org.eclipse.cdt.managedbuilder.ui/src/org/eclipse/cdt/managedbuilder/ui/properties/NewCfgDialog.java
index f9f507f23fc..705000c95d3 100644
--- a/build/org.eclipse.cdt.managedbuilder.ui/src/org/eclipse/cdt/managedbuilder/ui/properties/NewCfgDialog.java
+++ b/build/org.eclipse.cdt.managedbuilder.ui/src/org/eclipse/cdt/managedbuilder/ui/properties/NewCfgDialog.java
@@ -1,5 +1,5 @@
/*******************************************************************************
- * Copyright (c) 2007 Intel Corporation and others.
+ * Copyright (c) 2007, 2008 Intel 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
@@ -332,7 +332,7 @@ public class NewCfgDialog implements INewCfgDialog {
des = prj;
ICConfigurationDescription[] descs = des.getConfigurations();
cfgds = new IConfiguration[descs.length];
- ArrayList lst = new ArrayList();
+ ArrayList<IConfiguration> lst = new ArrayList<IConfiguration>();
for (int i = 0; i < descs.length; ++i) {
cfgds[i] = ManagedBuildManager.getConfigurationForDescription(descs[i]);
IConfiguration cfg = cfgds[i];
diff --git a/build/org.eclipse.cdt.managedbuilder.ui/src/org/eclipse/cdt/managedbuilder/ui/properties/NewVarDialog.java b/build/org.eclipse.cdt.managedbuilder.ui/src/org/eclipse/cdt/managedbuilder/ui/properties/NewVarDialog.java
index ef7528ab06a..ffd2605cbb3 100644
--- a/build/org.eclipse.cdt.managedbuilder.ui/src/org/eclipse/cdt/managedbuilder/ui/properties/NewVarDialog.java
+++ b/build/org.eclipse.cdt.managedbuilder.ui/src/org/eclipse/cdt/managedbuilder/ui/properties/NewVarDialog.java
@@ -1,5 +1,5 @@
/*******************************************************************************
- * Copyright (c) 2005, 2007 Intel Corporation and others.
+ * Copyright (c) 2005 - 2008 Intel 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
@@ -260,10 +260,10 @@ public class NewVarDialog extends Dialog {
for(int i = 0; i < vars.length; i++)
names[i] = vars[i].getName();
final Collator collator = Collator.getInstance();
- Arrays.sort(names, new Comparator() {
- public int compare(final Object a, final Object b) {
- final String strA = ((String)a).toUpperCase();
- final String strB = ((String)b).toUpperCase();
+ Arrays.sort(names, new Comparator<String>() {
+ public int compare(final String a, final String b) {
+ final String strA = a.toUpperCase();
+ final String strB = b.toUpperCase();
return collator.compare(strA,strB);
}
});
diff --git a/build/org.eclipse.cdt.managedbuilder.ui/src/org/eclipse/cdt/managedbuilder/ui/properties/ToolChainEditTab.java b/build/org.eclipse.cdt.managedbuilder.ui/src/org/eclipse/cdt/managedbuilder/ui/properties/ToolChainEditTab.java
index ec9253a20f7..5dc8897a750 100644
--- a/build/org.eclipse.cdt.managedbuilder.ui/src/org/eclipse/cdt/managedbuilder/ui/properties/ToolChainEditTab.java
+++ b/build/org.eclipse.cdt.managedbuilder.ui/src/org/eclipse/cdt/managedbuilder/ui/properties/ToolChainEditTab.java
@@ -1,5 +1,5 @@
/*******************************************************************************
- * Copyright (c) 2007 Intel Corporation and others.
+ * Copyright (c) 2007, 2008 Intel 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
@@ -222,7 +222,7 @@ public class ToolChainEditTab extends AbstractCBuildPropertyTab {
c_toolchain.removeAll();
boolean isMng = cfg.getBuilder().isManagedBuildOn();
- ArrayList list = new ArrayList();
+ ArrayList<IToolChain> list = new ArrayList<IToolChain>();
IToolChain[] tcs = r_tcs;
if (b_dispCompatible.getSelection() && (ri instanceof IFolderInfo)) {
@@ -264,7 +264,7 @@ public class ToolChainEditTab extends AbstractCBuildPropertyTab {
IBuilder b = ManagedBuildManager.getRealBuilder(cfg.getBuilder());
int pos = -1;
c_builder.removeAll();
- ArrayList list = new ArrayList();
+ ArrayList<IBuilder> list = new ArrayList<IBuilder>();
IBuilder[] bs = r_bs;
@@ -384,7 +384,7 @@ public class ToolChainEditTab extends AbstractCBuildPropertyTab {
private boolean updateCompatibleTools(ITool real) {
boolean result = false;
- ArrayList list = new ArrayList();
+ ArrayList<ITool> list = new ArrayList<ITool>();
IFileInfoModification fim = (IFileInfoModification)mod;
if (real != null) { // Current tool exists
diff --git a/build/org.eclipse.cdt.managedbuilder.ui/src/org/eclipse/cdt/managedbuilder/ui/properties/ToolListContentProvider.java b/build/org.eclipse.cdt.managedbuilder.ui/src/org/eclipse/cdt/managedbuilder/ui/properties/ToolListContentProvider.java
index 2ada54c9a65..e82264d16b8 100644
--- a/build/org.eclipse.cdt.managedbuilder.ui/src/org/eclipse/cdt/managedbuilder/ui/properties/ToolListContentProvider.java
+++ b/build/org.eclipse.cdt.managedbuilder.ui/src/org/eclipse/cdt/managedbuilder/ui/properties/ToolListContentProvider.java
@@ -1,5 +1,5 @@
/*******************************************************************************
- * Copyright (c) 2002, 2007 IBM Corporation and others.
+ * Copyright (c) 2002 - 2008 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
@@ -45,7 +45,7 @@ public class ToolListContentProvider implements ITreeContentProvider{
private ToolListElement[] createElements(IConfiguration config) {
IOptionCategory toolChainCategories[];
ITool filteredTools[];
- List elementList = new ArrayList();
+ List<ToolListElement> elementList = new ArrayList<ToolListElement>();
if (config != null) {
// Get the the option categories of the toolChain
IToolChain toolChain = config.getToolChain();
@@ -69,7 +69,7 @@ public class ToolListContentProvider implements ITreeContentProvider{
}
private ToolListElement[] createElements(IResourceInfo info) {
- List elementList = new ArrayList();
+ List<ToolListElement> elementList = new ArrayList<ToolListElement>();
if (info != null) {
ITool[] tools = null;
if(info instanceof IFolderInfo){
diff --git a/build/org.eclipse.cdt.managedbuilder.ui/src/org/eclipse/cdt/managedbuilder/ui/properties/ToolListElement.java b/build/org.eclipse.cdt.managedbuilder.ui/src/org/eclipse/cdt/managedbuilder/ui/properties/ToolListElement.java
index 1bc58051480..9f3f75630c5 100644
--- a/build/org.eclipse.cdt.managedbuilder.ui/src/org/eclipse/cdt/managedbuilder/ui/properties/ToolListElement.java
+++ b/build/org.eclipse.cdt.managedbuilder.ui/src/org/eclipse/cdt/managedbuilder/ui/properties/ToolListElement.java
@@ -1,5 +1,5 @@
/*******************************************************************************
- * Copyright (c) 2006, 2007 Intel Corporation and others.
+ * Copyright (c) 2006, 2008 Intel 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
@@ -33,7 +33,7 @@ public class ToolListElement {
* Bookeeping variables
*/
private ToolListElement parent = null;
- private List childElements = null;
+ private List<ToolListElement> childElements = null;
private IHoldsOptions optionHolder = null;
private IOptionCategory optionCategory = null;
@@ -116,7 +116,7 @@ public class ToolListElement {
public void addChildElement(ToolListElement element) {
if (childElements == null)
- childElements = new ArrayList();
+ childElements = new ArrayList<ToolListElement>();
childElements.add(element);
}
}
diff --git a/build/org.eclipse.cdt.managedbuilder.ui/src/org/eclipse/cdt/managedbuilder/ui/properties/ToolSelectionDialog.java b/build/org.eclipse.cdt.managedbuilder.ui/src/org/eclipse/cdt/managedbuilder/ui/properties/ToolSelectionDialog.java
index cdd899fcc28..afaf6abcee9 100644
--- a/build/org.eclipse.cdt.managedbuilder.ui/src/org/eclipse/cdt/managedbuilder/ui/properties/ToolSelectionDialog.java
+++ b/build/org.eclipse.cdt.managedbuilder.ui/src/org/eclipse/cdt/managedbuilder/ui/properties/ToolSelectionDialog.java
@@ -1,5 +1,5 @@
/*******************************************************************************
- * Copyright (c) 2007 Intel Corporation and others.
+ * Copyright (c) 2007, 2008 Intel 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
@@ -64,9 +64,9 @@ public class ToolSelectionDialog extends Dialog {
private Button b_add, b_del, b_rep, b_all;
private CLabel errorLabel, l1;
private Text txt2;
- private ArrayList left, right;
+ private ArrayList<ITool> left, right;
- public ArrayList added, removed;
+ public ArrayList<ITool> added, removed;
public ITool[] all, used;
public IFolderInfo fi;
public IToolListModification mod = null;
@@ -92,10 +92,10 @@ public class ToolSelectionDialog extends Dialog {
gd.heightHint = 300;
composite.setLayoutData(gd);
- added = new ArrayList();
- removed = new ArrayList();
- left = new ArrayList();
- right = new ArrayList();
+ added = new ArrayList<ITool>();
+ removed = new ArrayList<ITool>();
+ left = new ArrayList<ITool>();
+ right = new ArrayList<ITool>();
Composite c1 = new Composite(composite, SWT.NONE);
c1.setLayoutData(new GridData(GridData.FILL_BOTH));
@@ -419,9 +419,7 @@ public class ToolSelectionDialog extends Dialog {
Collections.sort(left, BuildListComparator.getInstance());
- Iterator it = left.iterator();
- while(it.hasNext()) {
- ITool t = (ITool)it.next();
+ for (ITool t : left) {
boolean exists = false;
for (int i=0; i<all.length; i++) {
if (all[i] != null && t.matches(all[i])) {
@@ -432,9 +430,7 @@ public class ToolSelectionDialog extends Dialog {
if (!exists) removed.add(t);
add(t, t1, !exists);
}
- it = right.iterator();
- while(it.hasNext()) {
- ITool t = (ITool)it.next();
+ for (ITool t : right) {
boolean exists = false;
for (int i=0; i<used.length; i++) {
if (t.matches(used[i])) {
@@ -458,7 +454,7 @@ public class ToolSelectionDialog extends Dialog {
if ((c & IModificationStatus.TOOLS_CONFLICT) != 0) {
s = s + Messages.getString("ToolSelectionDialog.7"); //$NON-NLS-1$
ITool[][] tools = st.getToolsConflicts();
- List conflictTools = new ArrayList();
+ List<String> conflictTools = new ArrayList<String>();
for (int k=0; k<t2.getItemCount(); k++) {
TableItem ti = t2.getItem(k);
ITool t = (ITool)ti.getData();
@@ -474,10 +470,10 @@ public class ToolSelectionDialog extends Dialog {
}
}
//bug 189229 - provide more information in the error message for accessibility
- Iterator iterator = conflictTools.iterator();
- s = s+" "+ (String)iterator.next(); //$NON-NLS-1$
+ Iterator<String> iterator = conflictTools.iterator();
+ s = s+" "+ iterator.next(); //$NON-NLS-1$
while (iterator.hasNext()) {
- s = s + ", " + (String)iterator.next(); //$NON-NLS-1$
+ s = s + ", " + iterator.next(); //$NON-NLS-1$
}
}
if ((c & IModificationStatus.TOOLS_DONT_SUPPORT_MANAGED_BUILD) != 0) {
diff --git a/build/org.eclipse.cdt.managedbuilder.ui/src/org/eclipse/cdt/managedbuilder/ui/properties/ToolSettingsPrefStore.java b/build/org.eclipse.cdt.managedbuilder.ui/src/org/eclipse/cdt/managedbuilder/ui/properties/ToolSettingsPrefStore.java
index 26e921c6680..0fb5fea9531 100644
--- a/build/org.eclipse.cdt.managedbuilder.ui/src/org/eclipse/cdt/managedbuilder/ui/properties/ToolSettingsPrefStore.java
+++ b/build/org.eclipse.cdt.managedbuilder.ui/src/org/eclipse/cdt/managedbuilder/ui/properties/ToolSettingsPrefStore.java
@@ -1,5 +1,5 @@
/*******************************************************************************
- * Copyright (c) 2005, 2007 Intel Corporation and others.
+ * Copyright (c) 2005, 2008 Intel 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
@@ -139,6 +139,7 @@ public class ToolSettingsPrefStore implements IPreferenceStore {
return getDefaultLong(name);
}
+ @SuppressWarnings("unchecked")
public String getString(String name) {
if(optCategory instanceof Tool){
if(optCategory.getId().equals(name))
diff --git a/build/org.eclipse.cdt.managedbuilder.ui/src/org/eclipse/cdt/managedbuilder/ui/properties/ToolSettingsTab.java b/build/org.eclipse.cdt.managedbuilder.ui/src/org/eclipse/cdt/managedbuilder/ui/properties/ToolSettingsTab.java
index 5b41101ab50..1e37a9035cc 100644
--- a/build/org.eclipse.cdt.managedbuilder.ui/src/org/eclipse/cdt/managedbuilder/ui/properties/ToolSettingsTab.java
+++ b/build/org.eclipse.cdt.managedbuilder.ui/src/org/eclipse/cdt/managedbuilder/ui/properties/ToolSettingsTab.java
@@ -67,7 +67,7 @@ public class ToolSettingsTab extends AbstractCBuildPropertyTab implements IPrefe
/*
* Bookeeping variables
*/
- private Map configToPageListMap;
+ private Map<String, List<AbstractToolSettingUI>> configToPageListMap;
private IPreferenceStore settingsStore;
private AbstractToolSettingUI currentSettingsPage;
private ToolListElement selectedElement;
@@ -80,7 +80,7 @@ public class ToolSettingsTab extends AbstractCBuildPropertyTab implements IPrefe
super.createControls(par);
usercomp.setLayout(new GridLayout());
- configToPageListMap = new HashMap();
+ configToPageListMap = new HashMap<String, List<AbstractToolSettingUI>>();
settingsStore = ToolSettingsPrefStore.getDefault();
// Create the sash form
@@ -157,8 +157,8 @@ public class ToolSettingsTab extends AbstractCBuildPropertyTab implements IPrefe
currentSettingsPage = null;
// Create a new settings page if necessary
- List pages = getPagesForConfig();
- ListIterator iter = pages.listIterator();
+ List<AbstractToolSettingUI> pages = getPagesForConfig();
+ ListIterator<AbstractToolSettingUI> iter = pages.listIterator();
while (iter.hasNext()) {
AbstractToolSettingUI page = (AbstractToolSettingUI) iter.next();
@@ -211,8 +211,8 @@ public class ToolSettingsTab extends AbstractCBuildPropertyTab implements IPrefe
currentSettingsPage = null;
// Create a new page if we need one
- List pages = getPagesForConfig();
- ListIterator iter = pages.listIterator();
+ List<AbstractToolSettingUI> pages = getPagesForConfig();
+ ListIterator<AbstractToolSettingUI> iter = pages.listIterator();
while (iter.hasNext()) {
AbstractToolSettingUI page = (AbstractToolSettingUI) iter.next();
if (page.isFor(tool, null)) {
@@ -444,6 +444,7 @@ public class ToolSettingsTab extends AbstractCBuildPropertyTab implements IPrefe
}
}
+ @SuppressWarnings("unchecked")
private void setOption(IOption op1, IOption op2, IHoldsOptions dst, IResourceInfo res){
try {
switch (op1.getValueType()) {
@@ -475,7 +476,7 @@ public class ToolSettingsTab extends AbstractCBuildPropertyTab implements IPrefe
case IOption.UNDEF_LIBRARY_PATHS:
case IOption.UNDEF_LIBRARY_FILES:
case IOption.UNDEF_MACRO_FILES:
- String[] data = (String[])((List)op1.getValue()).toArray(new String[0]);
+ String[] data = (String[])((List<String>)op1.getValue()).toArray(new String[0]);
ManagedBuildManager.setOption(res, dst, op2, data);
break;
default :
@@ -536,11 +537,11 @@ public class ToolSettingsTab extends AbstractCBuildPropertyTab implements IPrefe
/* (non-Javadoc)
* Answers the list of settings pages for the selected configuration
*/
- private List getPagesForConfig() {
+ private List<AbstractToolSettingUI> getPagesForConfig() {
if (getCfg() == null) return null;
- List pages = (List) configToPageListMap.get(getCfg().getId());
+ List<AbstractToolSettingUI> pages = (List<AbstractToolSettingUI>) configToPageListMap.get(getCfg().getId());
if (pages == null) {
- pages = new ArrayList();
+ pages = new ArrayList<AbstractToolSettingUI>();
configToPageListMap.put(getCfg().getId(), pages);
}
return pages;
@@ -554,9 +555,9 @@ public class ToolSettingsTab extends AbstractCBuildPropertyTab implements IPrefe
* Sets the "dirty" state
*/
public void setDirty(boolean b) {
- List pages = getPagesForConfig();
+ List<AbstractToolSettingUI> pages = getPagesForConfig();
if (pages == null) return;
- ListIterator iter = pages.listIterator();
+ ListIterator<AbstractToolSettingUI> iter = pages.listIterator();
while (iter.hasNext()) {
AbstractToolSettingUI page = (AbstractToolSettingUI) iter.next();
if (page == null) continue;
@@ -569,13 +570,13 @@ public class ToolSettingsTab extends AbstractCBuildPropertyTab implements IPrefe
*/
public boolean isDirty() {
// Check each settings page
- List pages = getPagesForConfig();
+ List<AbstractToolSettingUI> pages = getPagesForConfig();
// Make sure we have something to work on
if (pages == null) {
// Nothing to do
return false;
}
- ListIterator iter = pages.listIterator();
+ ListIterator<AbstractToolSettingUI> iter = pages.listIterator();
while (iter.hasNext()) {
AbstractToolSettingUI page = (AbstractToolSettingUI) iter.next();
if (page == null) continue;
diff --git a/core/org.eclipse.cdt.core/model/org/eclipse/cdt/core/model/util/CDTListComparator.java b/core/org.eclipse.cdt.core/model/org/eclipse/cdt/core/model/util/CDTListComparator.java
index 510cb1c40f2..c6c5f5008ec 100644
--- a/core/org.eclipse.cdt.core/model/org/eclipse/cdt/core/model/util/CDTListComparator.java
+++ b/core/org.eclipse.cdt.core/model/org/eclipse/cdt/core/model/util/CDTListComparator.java
@@ -1,5 +1,5 @@
/*******************************************************************************
- * Copyright (c) 2005, 2007 Intel Corporation and others
+ * Copyright (c) 2005 - 2008 Intel 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
@@ -17,10 +17,10 @@ import org.eclipse.cdt.core.settings.model.ICConfigurationDescription;
import org.eclipse.cdt.core.settings.model.ICLanguageSetting;
import org.eclipse.cdt.core.settings.model.ICLanguageSettingEntry;
-public class CDTListComparator implements Comparator {
- private static Comparator comparator = null;
+public class CDTListComparator implements Comparator<Object> {
+ private static Comparator<Object> comparator = null;
- public static Comparator getInstance() {
+ public static Comparator<Object> getInstance() {
if (comparator == null)
comparator = new CDTListComparator();
return comparator;
diff --git a/core/org.eclipse.cdt.ui/src/org/eclipse/cdt/ui/newui/AbstractCPropertyTab.java b/core/org.eclipse.cdt.ui/src/org/eclipse/cdt/ui/newui/AbstractCPropertyTab.java
index 355769584b9..60ae30598c9 100644
--- a/core/org.eclipse.cdt.ui/src/org/eclipse/cdt/ui/newui/AbstractCPropertyTab.java
+++ b/core/org.eclipse.cdt.ui/src/org/eclipse/cdt/ui/newui/AbstractCPropertyTab.java
@@ -10,6 +10,9 @@
*******************************************************************************/
package org.eclipse.cdt.ui.newui;
+import java.lang.reflect.InvocationTargetException;
+import java.lang.reflect.Method;
+
import org.eclipse.core.resources.IContainer;
import org.eclipse.core.resources.IFile;
import org.eclipse.core.resources.IProject;
@@ -70,6 +73,8 @@ import org.eclipse.cdt.internal.ui.dialogs.StatusInfo;
* communication way for new CDT model pages and tabs.
*/
public abstract class AbstractCPropertyTab implements ICPropertyTab {
+
+ public static final Method GRAY_METHOD = getGrayEnabled();
public static final int BUTTON_WIDTH = 120; // used as hint for all push buttons
// commonly used button names
@@ -322,8 +327,7 @@ public abstract class AbstractCPropertyTab implements ICPropertyTab {
setupControl(b, span, mode);
b.addSelectionListener(new SelectionAdapter() {
public void widgetSelected(SelectionEvent event) {
- // TODO: uncomment before M5
- //((Button)event.widget).setGrayed(false);
+ setGrayed((Button)event.widget, false);
checkPressed(event);
}});
return b;
@@ -535,22 +539,55 @@ public abstract class AbstractCPropertyTab implements ICPropertyTab {
*/
public static void setTriSelection(Button b, int state) {
switch (state) {
- // TODO: uncomment before M5
case TRI_NO:
- // b.setGrayed(false);
+ setGrayed(b, false);
b.setSelection(false);
break;
case TRI_YES:
- // b.setGrayed(false);
+ setGrayed(b, false);
b.setSelection(true);
break;
case TRI_UNKNOWN:
b.setSelection(true);
- // b.setGrayed(true);
+ setGrayed(b, true);
break;
}
}
+ /**
+ * This method will be simplified after M5 release,
+ * when Button.setGrayed() method will be accessible.
+ * In this case, reflection will not be required.
+ *
+ * @param b
+ * @param value
+ */
+ public static void setGrayed(Button b, boolean value) {
+ // TODO: uncomment before M5
+ // b.setGrayed(value);
+ if (GRAY_METHOD != null)
+ try {
+ GRAY_METHOD.invoke(b, new Object[] { new Boolean(value) });
+ }
+ catch (InvocationTargetException e) {}
+ catch (IllegalAccessException e) {}
+ }
+ /**
+ * This method will be removed after M5 release,
+ * when Button.setGrayed() will be officially accessible.
+ *
+ * @return reference to Button.setGrayed() method
+ */
+ private static Method getGrayEnabled() {
+ try {
+ Class cl = Class.forName("org.eclipse.swt.widgets.Button"); //$NON-NLS-1$
+ return cl.getMethod("setGrayed", new Class[] { boolean.class }); //$NON-NLS-1$
+ } catch (ClassNotFoundException e) {
+ return null;
+ } catch (NoSuchMethodException e) {
+ return null;
+ }
+ }
}

Back to the top