From 13b4473581492ee3052250ff15651d23efe51803 Mon Sep 17 00:00:00 2001 From: Oleg Krasilnikov Date: Sat, 28 Apr 2007 11:43:25 +0000 Subject: [PATCH] Bug #184457 : toolchain filter for templates --- .../ui/wizards/MBSWizardHandler.java | 23 ++++++++++++++++++- 1 file changed, 22 insertions(+), 1 deletion(-) diff --git a/build/org.eclipse.cdt.managedbuilder.ui/src/org/eclipse/cdt/managedbuilder/ui/wizards/MBSWizardHandler.java b/build/org.eclipse.cdt.managedbuilder.ui/src/org/eclipse/cdt/managedbuilder/ui/wizards/MBSWizardHandler.java index 888c458fc20..77ddb673357 100644 --- a/build/org.eclipse.cdt.managedbuilder.ui/src/org/eclipse/cdt/managedbuilder/ui/wizards/MBSWizardHandler.java +++ b/build/org.eclipse.cdt.managedbuilder.ui/src/org/eclipse/cdt/managedbuilder/ui/wizards/MBSWizardHandler.java @@ -581,7 +581,28 @@ public class MBSWizardHandler extends CWizardHandler { * @return - true if toolchain can be displayed */ protected boolean isToolChainAcceptable(String tcId, EntryDescriptor ed) { - return true; + if (entryInfo == null || entryInfo.template == null || + entryInfo.template.getTemplateInfo() == null) + return true; + + String[] ss = entryInfo.template.getTemplateInfo().getToolChainIds(); + if (ss == null && ss.length == 0) + return true; + + Object ob = full_tcs.get(tcId); + if (ob == null || !(ob instanceof IToolChain)) + return false; + + String id1 = ((IToolChain)ob).getId(); + IToolChain sup = ((IToolChain)ob).getSuperClass(); + String id2 = sup == null ? null : sup.getId(); + + for (int i=0; i