/******************************************************************************* * Copyright (c) 2000, 2010 QNX Software Systems and others. * All rights reserved. This program and the accompanying materials * are made available under the terms of the Eclipse Public License v1.0 * which accompanies this distribution, and is available at * http://www.eclipse.org/legal/epl-v10.html * * Contributors: * QNX Software Systems - Initial API and implementation *******************************************************************************/ package org.eclipse.cdt.make.internal.ui; import java.util.Iterator; import java.util.List; import org.eclipse.cdt.make.core.MakeBuilder; import org.eclipse.cdt.make.core.MakeCorePlugin; import org.eclipse.cdt.make.internal.ui.properties.MakePropertyPage; import org.eclipse.cdt.make.ui.IMakeHelpContextIds; import org.eclipse.cdt.make.ui.dialogs.DiscoveryOptionsBlock; import org.eclipse.cdt.make.ui.dialogs.SettingsBlock; import org.eclipse.cdt.ui.dialogs.BinaryParserBlock; import org.eclipse.cdt.ui.dialogs.ICOptionContainer; import org.eclipse.cdt.ui.dialogs.ICOptionPage; import org.eclipse.cdt.ui.dialogs.TabFolderOptionBlock; import org.eclipse.swt.widgets.Composite; import org.eclipse.swt.widgets.Control; import org.eclipse.ui.help.IWorkbenchHelpSystem; /** * @deprecated as of CDT 4.0. This option block was used to set preferences/properties * for 3.X style projects. */ @Deprecated public class MakeProjectOptionBlock extends TabFolderOptionBlock { private ICOptionContainer optionContainer; public MakeProjectOptionBlock() { super(true); } public MakeProjectOptionBlock(ICOptionContainer parent) { super(parent); optionContainer = parent; } @Override protected void addTabs() { addTab(new SettingsBlock(MakeCorePlugin.getDefault().getPluginPreferences(), MakeBuilder.BUILDER_ID)); addTab(new MakeEnvironmentBlock(MakeCorePlugin.getDefault().getPluginPreferences(), MakeBuilder.BUILDER_ID)); addTab(new ErrorParserBlock(MakeCorePlugin.getDefault().getPluginPreferences())); addTab(new BinaryParserBlock()); addTab(new DiscoveryOptionsBlock()); } @Override public void setOptionContainer(ICOptionContainer parent) { super.setOptionContainer( parent ); optionContainer = parent; } @Override public Control createContents(Composite parent) { Control control = super.createContents( parent ); List<ICOptionPage> optionPages = getOptionPages(); Iterator<ICOptionPage> iter = optionPages.iterator(); for( int i = 0; i < 4 && iter.hasNext(); i++ ){ ICOptionPage page = iter.next(); IWorkbenchHelpSystem helpSystem = MakeUIPlugin.getDefault().getWorkbench().getHelpSystem(); if( optionContainer != null && optionContainer instanceof MakePropertyPage ) switch( i ){ case 0 : helpSystem.setHelp(page.getControl(), IMakeHelpContextIds.MAKE_PROP_BUILDER_SETTINGS); break; case 1 : helpSystem.setHelp(page.getControl(), IMakeHelpContextIds.MAKE_PROP_ERROR_PARSER ); break; case 2 : helpSystem.setHelp(page.getControl(), IMakeHelpContextIds.MAKE_PROP_BINARY_PARSER ); break; case 3 : helpSystem.setHelp(page.getControl(), IMakeHelpContextIds.MAKE_PROP_DISCOVERY ); break; } else switch( i ){ case 0 : helpSystem.setHelp(page.getControl(), IMakeHelpContextIds.MAKE_BUILDER_SETTINGS); break; case 1 : helpSystem.setHelp(page.getControl(), IMakeHelpContextIds.MAKE_PREF_ERROR_PARSER ); break; case 2 : helpSystem.setHelp(page.getControl(), IMakeHelpContextIds.MAKE_PREF_BINARY_PARSER ); break; case 3 : helpSystem.setHelp(page.getControl(), IMakeHelpContextIds.SCANNER_CONFIG_DISCOVERY_OPTIONS ); break; } } return control; } }