Package org.eclipse.pde.ui
Interface IPluginContentWizard
- All Superinterfaces:
IBasePluginWizard
,IWizard
- All Known Subinterfaces:
IBundleContentWizard
- All Known Implementing Classes:
AbstractNewPluginTemplateWizard
,NewPluginTemplateWizard
Classes 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 performFinish
in 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
true
and have all the real code in performFinish
defined 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.
- Since:
- 3.0
- Restriction:
- This interface is not intended to be extended by clients.
-
Method Summary
Modifier and TypeMethodDescriptiongetDependencies
(String schemaVersion) Returns new dependencies that are required by this wizard.String[]
The wizard is required to return an array of new file and folder names that are generated by it for the purpose of inclusion inbuild.properties
file.void
init
(IFieldData data) Initializes the wizard with the data collected from the parent wizard pages.boolean
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, getMinimumWizardSize, getNextPage, getPage, getPageCount, getPages, getPreviousPage, getStartingPage, getTitleBarColor, getWindowTitle, isHelpAvailable, needsPreviousAndNextButtons, needsProgressMonitor, performCancel, performFinish, setContainer
-
Method Details
-
init
Initializes the wizard with the data collected from the parent wizard pages. The data can be used to customize the generated content.- Parameters:
data
- all the information collected in the parent wizard that can be used in configuring the generated content
-
getDependencies
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.- Parameters:
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.- Returns:
- the array of plug-in dependencies required by this wizard
-
getNewFiles
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 inbuild.properties
file. All files and folders that must be part of the binary build must be listed inbin.includes
variable. 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 inbuild.properties
, such as "*.png".- Returns:
- an array of new file and folder names
-
performFinish
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.- Parameters:
project
- the newly created plug-in project handlemodel
- the model of the plug-in manifest that can be used to add extension markupmonitor
- the progress monitor to track progress of the content generation- Returns:
true
if the content has been generated successfully,false
otherwise. In case of failure, the wizard dialog will stay open.
-