diff options
author | Alain Magloire | 2004-06-18 18:56:40 +0000 |
---|---|---|
committer | Alain Magloire | 2004-06-18 18:56:40 +0000 |
commit | c191bced9d9f873acde8cf4bfc73225b887eeeab (patch) | |
tree | 0940f048fc9f6281327bd0675695bd21245026ab /build/org.eclipse.cdt.make.ui/src | |
parent | 03d8731b439714c327d1343c296313fd4cb7de29 (diff) | |
download | org.eclipse.cdt-c191bced9d9f873acde8cf4bfc73225b887eeeab.tar.gz org.eclipse.cdt-c191bced9d9f873acde8cf4bfc73225b887eeeab.tar.xz org.eclipse.cdt-c191bced9d9f873acde8cf4bfc73225b887eeeab.zip |
Patch from Andrew for Help support
Diffstat (limited to 'build/org.eclipse.cdt.make.ui/src')
5 files changed, 111 insertions, 4 deletions
diff --git a/build/org.eclipse.cdt.make.ui/src/org/eclipse/cdt/make/internal/ui/MakeProjectOptionBlock.java b/build/org.eclipse.cdt.make.ui/src/org/eclipse/cdt/make/internal/ui/MakeProjectOptionBlock.java index 3b1861720bc..58e3ecd5b21 100644 --- a/build/org.eclipse.cdt.make.ui/src/org/eclipse/cdt/make/internal/ui/MakeProjectOptionBlock.java +++ b/build/org.eclipse.cdt.make.ui/src/org/eclipse/cdt/make/internal/ui/MakeProjectOptionBlock.java @@ -8,22 +8,32 @@ ***********************************************************************/ 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.WorkbenchHelp; public class MakeProjectOptionBlock extends TabFolderOptionBlock { - + private ICOptionContainer optionContainer; public MakeProjectOptionBlock() { super(true); } public MakeProjectOptionBlock(ICOptionContainer parent) { super(parent); + optionContainer = parent; } protected void addTabs() { @@ -33,4 +43,33 @@ public class MakeProjectOptionBlock extends TabFolderOptionBlock { addTab(new DiscoveryOptionsBlock()); } + public void setOptionContainer(ICOptionContainer parent) { + super.setOptionContainer( parent ); + optionContainer = parent; + } + public Control createContents(Composite parent) { + Control control = super.createContents( parent ); + + List optionPages = getOptionPages(); + Iterator iter = optionPages.iterator(); + for( int i = 0; i < 4 && iter.hasNext(); i++ ){ + ICOptionPage page = (ICOptionPage) iter.next(); + if( optionContainer != null && optionContainer instanceof MakePropertyPage ) + switch( i ){ + case 0 : WorkbenchHelp.setHelp(page.getControl(), IMakeHelpContextIds.MAKE_PROP_BUILDER_SETTINGS); break; + case 1 : WorkbenchHelp.setHelp(page.getControl(), IMakeHelpContextIds.MAKE_PROP_ERROR_PARSER ); break; + case 2 : WorkbenchHelp.setHelp(page.getControl(), IMakeHelpContextIds.MAKE_PROP_BINARY_PARSER ); break; + case 3 : WorkbenchHelp.setHelp(page.getControl(), IMakeHelpContextIds.MAKE_PROP_DISCOVERY ); break; + } + else + switch( i ){ + case 0 : WorkbenchHelp.setHelp(page.getControl(), IMakeHelpContextIds.MAKE_BUILDER_SETTINGS); break; + case 1 : WorkbenchHelp.setHelp(page.getControl(), IMakeHelpContextIds.MAKE_PREF_ERROR_PARSER ); break; + case 2 : WorkbenchHelp.setHelp(page.getControl(), IMakeHelpContextIds.MAKE_PREF_BINARY_PARSER ); break; + case 3 : WorkbenchHelp.setHelp(page.getControl(), IMakeHelpContextIds.SCANNER_CONFIG_DISCOVERY_OPTIONS ); break; + } + } + + return control; + } } diff --git a/build/org.eclipse.cdt.make.ui/src/org/eclipse/cdt/make/ui/IMakeHelpContextIds.java b/build/org.eclipse.cdt.make.ui/src/org/eclipse/cdt/make/ui/IMakeHelpContextIds.java index 559dc1d55bf..bc113c663d7 100644 --- a/build/org.eclipse.cdt.make.ui/src/org/eclipse/cdt/make/ui/IMakeHelpContextIds.java +++ b/build/org.eclipse.cdt.make.ui/src/org/eclipse/cdt/make/ui/IMakeHelpContextIds.java @@ -16,6 +16,22 @@ public interface IMakeHelpContextIds { public static final String PREFIX = MakeUIPlugin.getUniqueIdentifier() + "."; //$NON-NLS-1$ public static final String MAKE_PATH_SYMBOL_SETTINGS = PREFIX + "cdt_paths_symbols_page"; //$NON-NLS-1$ - public static final String MAKE_BUILDER_SETTINGS = PREFIX + "cdt_make_builder_page"; //$NON-NLS-1$ - public static final String SCANNER_CONFIG_DISCOVERY_OPTIONS = PREFIX + "cdt_discovery_options_page"; //$NON-NLS-1$ + public static final String MAKE_BUILDER_SETTINGS = PREFIX + "newproj_buildset"; //$NON-NLS-1$ + public static final String MAKE_PROP_BUILDER_SETTINGS = PREFIX + "std_prop_build"; //$NON-NLS-1$ + public static final String SCANNER_CONFIG_DISCOVERY_OPTIONS = PREFIX + "discovery_preferences"; //$NON-NLS-1$ + public static final String MAKE_PROP_DISCOVERY = PREFIX + "std_prop_discovery"; //$NON-NLS-1$ + public static final String MAKE_VIEW = PREFIX + "make_targets_view"; //$NON-NLS-1$ + public static final String MAKE_PROJ_WIZ_NAME_PAGE = PREFIX + "new_proj_wiz_s_name"; //$NON-NLS-1$ + public static final String MAKE_PROJ_WIZ_PROJECTS_TAB = PREFIX + "new_proj_wiz_s_proj"; //$NON-NLS-1$ + public static final String MAKE_PROJ_WIZ_MAKEBUILDER_TAB = PREFIX + "new_proj_wiz_s_mbuilder"; //$NON-NLS-1$ + public static final String MAKE_PROJ_WIZ_ERRORPARSER_TAB = PREFIX + "new_proj_wiz_s_errorp"; //$NON-NLS-1$ + public static final String MAKE_PROJ_WIZ_BINARYPARSER_TAB = PREFIX + "new_proj_wiz_s_binary"; //$NON-NLS-1$ + public static final String MAKE_PROJ_WIZ_DISCOVERY_TAB = PREFIX + "new_proj_wiz_s_discovery"; //$NON-NLS-1$ + public static final String MAKE_PROJ_WIZ_INDEXER_TAB = PREFIX + "new_proj_wiz_s_cindexer"; //$NON-NLS-1$ + + public static final String MAKE_PROP_ERROR_PARSER = PREFIX + "std_prop_error"; //$NON-NLS-1$ + public static final String MAKE_PROP_BINARY_PARSER = PREFIX + "std_prop_binary"; //$NON-NLS-1$ + public static final String MAKE_PREF_ERROR_PARSER = PREFIX + "newproj_parser_error"; //$NON-NLS-1$ + public static final String MAKE_PREF_BINARY_PARSER = PREFIX + "newproj_parser_binary"; //$NON-NLS-1$ + } diff --git a/build/org.eclipse.cdt.make.ui/src/org/eclipse/cdt/make/ui/views/MakeView.java b/build/org.eclipse.cdt.make.ui/src/org/eclipse/cdt/make/ui/views/MakeView.java index 6d1350db349..fad42654bbc 100644 --- a/build/org.eclipse.cdt.make.ui/src/org/eclipse/cdt/make/ui/views/MakeView.java +++ b/build/org.eclipse.cdt.make.ui/src/org/eclipse/cdt/make/ui/views/MakeView.java @@ -4,7 +4,9 @@ package org.eclipse.cdt.make.ui.views; * (c) Copyright QNX Software Systems Ltd. 2002. All Rights Reserved. */ -import org.eclipse.cdt.make.ui.*; +import org.eclipse.cdt.make.ui.IMakeHelpContextIds; +import org.eclipse.cdt.make.ui.MakeContentProvider; +import org.eclipse.cdt.make.ui.MakeLabelProvider; import org.eclipse.core.resources.ResourcesPlugin; import org.eclipse.jface.action.IMenuListener; import org.eclipse.jface.action.IMenuManager; @@ -24,8 +26,11 @@ import org.eclipse.swt.events.KeyEvent; import org.eclipse.swt.widgets.Composite; import org.eclipse.swt.widgets.Menu; import org.eclipse.ui.IActionBars; +import org.eclipse.ui.IWorkbenchPart; +import org.eclipse.ui.help.WorkbenchHelp; import org.eclipse.ui.part.DrillDownAdapter; import org.eclipse.ui.part.ViewPart; +import org.eclipse.ui.views.contentoutline.ContentOutlinePage; public class MakeView extends ViewPart { @@ -51,6 +56,7 @@ public class MakeView extends ViewPart { * @see ContentOutlinePage#createControl */ public void createPartControl(Composite parent) { + WorkbenchHelp.setHelp(parent, IMakeHelpContextIds.MAKE_VIEW); viewer = new TreeViewer(parent, SWT.MULTI | SWT.H_SCROLL | SWT.V_SCROLL); viewer.setUseHashlookup(true); viewer.setContentProvider(new MakeContentProvider()); diff --git a/build/org.eclipse.cdt.make.ui/src/org/eclipse/cdt/make/ui/wizards/MakeProjectWizardOptionPage.java b/build/org.eclipse.cdt.make.ui/src/org/eclipse/cdt/make/ui/wizards/MakeProjectWizardOptionPage.java index 2d4f99b8a28..a4c089d2473 100644 --- a/build/org.eclipse.cdt.make.ui/src/org/eclipse/cdt/make/ui/wizards/MakeProjectWizardOptionPage.java +++ b/build/org.eclipse.cdt.make.ui/src/org/eclipse/cdt/make/ui/wizards/MakeProjectWizardOptionPage.java @@ -5,9 +5,14 @@ package org.eclipse.cdt.make.ui.wizards; * All Rights Reserved. */ +import java.util.Iterator; +import java.util.List; + import org.eclipse.cdt.make.core.MakeCorePlugin; import org.eclipse.cdt.make.internal.ui.MakeProjectOptionBlock; +import org.eclipse.cdt.make.ui.IMakeHelpContextIds; import org.eclipse.cdt.ui.dialogs.ICOptionContainer; +import org.eclipse.cdt.ui.dialogs.ICOptionPage; import org.eclipse.cdt.ui.dialogs.IndexerBlock; import org.eclipse.cdt.ui.dialogs.ReferenceBlock; import org.eclipse.cdt.ui.dialogs.TabFolderOptionBlock; @@ -15,6 +20,7 @@ import org.eclipse.cdt.ui.wizards.NewCProjectWizard; import org.eclipse.cdt.ui.wizards.NewCProjectWizardOptionPage; import org.eclipse.core.resources.IProject; import org.eclipse.core.runtime.Preferences; +import org.eclipse.ui.help.WorkbenchHelp; /** * Standard main page for a wizard that is creates a project resource. @@ -45,6 +51,26 @@ public class MakeProjectWizardOptionPage extends NewCProjectWizardOptionPage { super.addTabs(); addTab(indexBlock = new IndexerBlock()); } + + public void setupHelpContextIds(){ + List pages = getOptionPages(); + + Iterator iter = pages.iterator(); + for( int i = 0; i < 6 && iter.hasNext(); i++ ) { + ICOptionPage page = (ICOptionPage) iter.next(); + + String id = null; + switch( i ){ + case 0 : id = IMakeHelpContextIds.MAKE_PROJ_WIZ_PROJECTS_TAB; break; + case 1 : id = IMakeHelpContextIds.MAKE_PROJ_WIZ_MAKEBUILDER_TAB; break; + case 2 : id = IMakeHelpContextIds.MAKE_PROJ_WIZ_ERRORPARSER_TAB; break; + case 3 : id = IMakeHelpContextIds.MAKE_PROJ_WIZ_BINARYPARSER_TAB; break; + case 4 : id = IMakeHelpContextIds.MAKE_PROJ_WIZ_DISCOVERY_TAB; break; + case 5 : id = IMakeHelpContextIds.MAKE_PROJ_WIZ_INDEXER_TAB; break; + } + WorkbenchHelp.setHelp(page.getControl(), id); + } + } } public MakeProjectWizardOptionPage(String title, String description) { @@ -72,4 +98,7 @@ public class MakeProjectWizardOptionPage extends NewCProjectWizardOptionPage { return makeWizardBlock.indexBlock.isIndexEnabled(); } + public void setupHelpContextIds(){ + makeWizardBlock.setupHelpContextIds(); + } } diff --git a/build/org.eclipse.cdt.make.ui/src/org/eclipse/cdt/make/ui/wizards/NewMakeProjectWizard.java b/build/org.eclipse.cdt.make.ui/src/org/eclipse/cdt/make/ui/wizards/NewMakeProjectWizard.java index a6b44de723d..7673c2a06ac 100644 --- a/build/org.eclipse.cdt.make.ui/src/org/eclipse/cdt/make/ui/wizards/NewMakeProjectWizard.java +++ b/build/org.eclipse.cdt.make.ui/src/org/eclipse/cdt/make/ui/wizards/NewMakeProjectWizard.java @@ -9,11 +9,15 @@ import org.eclipse.cdt.make.core.MakeCorePlugin; import org.eclipse.cdt.make.core.MakeProjectNature; import org.eclipse.cdt.make.core.scannerconfig.ScannerConfigNature; import org.eclipse.cdt.make.internal.ui.MakeUIPlugin; +import org.eclipse.cdt.make.ui.IMakeHelpContextIds; import org.eclipse.cdt.ui.wizards.NewCProjectWizard; import org.eclipse.core.runtime.CoreException; import org.eclipse.core.runtime.IProgressMonitor; import org.eclipse.core.runtime.NullProgressMonitor; import org.eclipse.core.runtime.SubProgressMonitor; +import org.eclipse.jface.wizard.IWizardPage; +import org.eclipse.swt.widgets.Composite; +import org.eclipse.ui.help.WorkbenchHelp; /** */ @@ -53,4 +57,17 @@ public abstract class NewMakeProjectWizard extends NewCProjectWizard { public String getProjectID() { return MakeCorePlugin.MAKE_PROJECT_ID; } + + public void createPageControls(Composite pageContainer) { + super.createPageControls( pageContainer ); + + IWizardPage [] pages = getPages(); + + if( pages != null && pages.length == 2 ){ + WorkbenchHelp.setHelp(pages[0].getControl(), IMakeHelpContextIds.MAKE_PROJ_WIZ_NAME_PAGE); + + MakeProjectWizardOptionPage optionPage = (MakeProjectWizardOptionPage) pages[1]; + optionPage.setupHelpContextIds(); + } + } } |