- All Known Subinterfaces:
public interface IPluginContentWizard extends IBasePluginWizardClasses that implement this interface are contributed via the extension point
org.eclipse.pde.ui.pluginContent. The expectation is that classes also extend JFace Wizard class. The role of this wizard is to provide additional plug-in content after the project and the critical plug-in project files have been created. The wizard is nested in the overall 'New' wizard and can contribute one or more pages that allow users to configure how this content will be generated. A typical implementation of this interface would be a template wizard that populates the plug-in project with content that can be useful right away (for example, a view or an editor extension).
Due to the call order of the method
performFinishin nested wizards, classes that implement this interface should not place the code that generates new content in the implementation of the abstract method
Wizard.performFinish(). Instead, they should simply return
trueand have all the real code in
performFinishdefined in this interface. This version of the method passes all the context required for the content generation and is called AFTER the project and vital plug-in files have been already created.
- This interface is not intended to be extended by clients.
All Methods Instance Methods Abstract Methods Modifier and Type Method Description
getDependencies(String schemaVersion)Returns new dependencies that are required by this wizard.
getNewFiles()The wizard is required to return an array of new file and folder names that are generated by it for the purpose of inclusion in
init(IFieldData data)Initializes the wizard with the data collected from the parent wizard pages.
performFinish(IProject project, IPluginModelBase model, IProgressMonitor monitor)Executes the wizard when 'Finish' button has been pressed.
Methods inherited from interface org.eclipse.jface.wizard.IWizard
addPages, canFinish, createPageControls, dispose, getContainer, getDefaultPageImage, getDialogSettings, getNextPage, getPage, getPageCount, getPages, getPreviousPage, getStartingPage, getTitleBarColor, getWindowTitle, isHelpAvailable, needsPreviousAndNextButtons, needsProgressMonitor, performCancel, performFinish, setContainer
void init(IFieldData data)Initializes the wizard with the data collected from the parent wizard pages. The data can be used to customize the generated content.
data- all the information collected in the parent wizard that can be used in configuring the generated content
IPluginReference getDependencies(String schemaVersion)Returns new dependencies that are required by this wizard. If the wizard adds extensions or code to the plug-in that depend on other plug-ins, it must report it by returning a reference to that plug-in. This information will be used to compose a correct list of plug-in dependencies so that the plug-in compiles without errors in the first build after creation.
schemaVersion- version of the plug-in manifest, or null if older manifest (prior to 3.0) has been created. Depending on the manifest version, the list of dependencies may vary.
- the array of plug-in dependencies required by this wizard
String getNewFiles()The wizard is required to return an array of new file and folder names that are generated by it for the purpose of inclusion in
build.propertiesfile. All files and folders that must be part of the binary build must be listed in
bin.includesvariable. Since the tokens obtained by this method will be passed to the variable as-is, it is legal to use all wild cards also legal in
build.properties, such as "*.png".
- an array of new file and folder names
boolean performFinish(IProject project, IPluginModelBase model, IProgressMonitor monitor)Executes the wizard when 'Finish' button has been pressed. Note that you should put all your working code in this method and not in 'performFinish' of the Wizard class due to the wrong calling order. In addition, this method provides progress monitor so that the execution of the content wizard can be reported as a part of the overall new project creation operation.
project- the newly created plug-in project handle
model- the model of the plug-in manifest that can be used to add extension markup
monitor- the progress monitor to track progress of the content generation
trueif the content has been generated successfully,
falseotherwise. In case of failure, the wizard dialog will stay open.