Package org.eclipse.pde.ui
Interface IPluginContentWizard
-
- All Superinterfaces:
IBasePluginWizard
,IWizard
- All Known Subinterfaces:
IBundleContentWizard
- All Known Implementing Classes:
AbstractNewPluginTemplateWizard
,NewPluginTemplateWizard
public interface IPluginContentWizard extends IBasePluginWizard
Classes that implement this interface are contributed via the extension pointorg.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 methodWizard.performFinish()
. Instead, they should simply returntrue
and have all the real code inperformFinish
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
All Methods Instance Methods Abstract Methods Modifier and Type Method Description IPluginReference[]
getDependencies(String schemaVersion)
Returns new dependencies that are 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 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, getNextPage, getPage, getPageCount, getPages, getPreviousPage, getStartingPage, getTitleBarColor, getWindowTitle, isHelpAvailable, needsPreviousAndNextButtons, needsProgressMonitor, performCancel, performFinish, setContainer
-
-
-
-
Method Detail
-
init
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.- Parameters:
data
- all the information collected in the parent wizard that can be used in configuring the generated content
-
getDependencies
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.- 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
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.- 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.
-
-