blob: 6b037558f33fa84bbe3259c1238ea58666a408dc [file] [log] [blame]
/*******************************************************************************
* 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;
}
}