Class WizardBase
- java.lang.Object
-
- org.eclipse.birt.core.ui.frameworks.taskwizard.WizardBase
-
- All Implemented Interfaces:
IRegistrationListener
public class WizardBase extends java.lang.Object implements IRegistrationListener
-
-
Field Summary
Fields Modifier and Type Field Description protected IWizardContextcontext
-
Constructor Summary
Constructors Constructor Description WizardBase()WizardBase(java.lang.String sID)WizardBase(java.lang.String sID, int iInitialWidth, int iInitialHeight, java.lang.String strTitle, org.eclipse.swt.graphics.Image imgTitle, java.lang.String strHeader, org.eclipse.swt.graphics.Image imgHeader)Deprecated.WizardBase(org.eclipse.swt.widgets.Shell parentShell, java.lang.String sID, int iInitialWidth, int iInitialHeight, java.lang.String strTitle, org.eclipse.swt.graphics.Image imgTitle, java.lang.String strHeader, org.eclipse.swt.graphics.Image imgHeader)Creates an instance of the wizard.
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description voidaddCustomButton(IButtonHandler buttonHandler)Adds a custom button after built-in buttons.voidaddTabToolButton(IButtonHandler buttonHandler)Adds tab tool button.voidaddTask(java.lang.String sTaskID)protected booleanapplyCustomPack()The method makes user can do custom pack actions for current dialog.voidattachPopup(java.lang.String sPopupTitle, int iWidth, int iHeight)Attaches the popup window.voidclearCache()Clears the cached task instances.protected WizardBaseDialogcreateDialog(org.eclipse.swt.widgets.Shell shell, int initialWidth, int initialHeight, java.lang.String strTitle, org.eclipse.swt.graphics.Image imgTitle)org.eclipse.swt.widgets.ShellcreatePopupContainer()voiddetachPopup()voiddisplayError(java.lang.String[] sErrors, java.lang.String[] sFixes, java.lang.String[] sTaskIDs, IWizardContext currentContext, java.lang.Object[] hints)Displays the errors in a common Error Display UI mechanism.static voiddisplayException(java.lang.Throwable t)Displays the exception in a common Error Display UI mechanism.voiddispose()voidfirePageChanged(org.eclipse.jface.dialogs.IDialogPage taskPage)ITaskgetCurrentTask()protected java.util.List<IButtonHandler>getCustomButtons()protected org.eclipse.jface.dialogs.TitleAreaDialoggetDialog()static java.lang.StringgetErrors()org.eclipse.swt.widgets.ShellgetPopupContainer()java.util.List<IButtonHandler>getTabToolButtons()Returns all tab tool buttons.protected java.lang.StringgetTitle()booleanisDisposed()IWizardContextopen(java.lang.String[] sTasks, java.lang.String topTaskId, IWizardContext initialContext)Launches the wizard with the specified tasks in 'Available' state...and the specified task sets as the 'Active' task.IWizardContextopen(IWizardContext initialContext)Launches the wizard with the first tasks in 'Available' state.voidpackWizard()Packs the wizard to display enough sizestatic voidremoveException()Remove the error message in the dialog.voidremoveTask(java.lang.String sTaskID)voidsetMinimumSize(int iWidth, int iHeight)Sets the minimum size of the wizardprotected voidsetTitle(java.lang.String wizardTitle)voidsetWizardClosedWhenEnterPressed(boolean bClosed)Sets if wizard should be closed when Enter key is pressed.static voidshowException(java.lang.String errorMessage)Displays the exception in an Eclipse error mechanism.voidswitchTo(java.lang.String sTaskID)voidtaskDeregistered(java.lang.String sTaskID)Notification method called by the org.eclipse.birt.frameworks.taskwizard.interfaces.TasksManager instance when an existing ITask instance is successfully deregistered.voidtaskRegistered(java.lang.String sTaskID)Notification method called by the org.eclipse.birt.frameworks.taskwizard.interfaces.TasksManager instance when a new ITask instance is successfully registered.voidupdateContext(IWizardContext wizardcontext)protected java.lang.String[]validate()Validates before pressing OK.
-
-
-
Field Detail
-
context
protected transient IWizardContext context
-
-
Constructor Detail
-
WizardBase
public WizardBase(java.lang.String sID)
-
WizardBase
@Deprecated public WizardBase(java.lang.String sID, int iInitialWidth, int iInitialHeight, java.lang.String strTitle, org.eclipse.swt.graphics.Image imgTitle, java.lang.String strHeader, org.eclipse.swt.graphics.Image imgHeader)Deprecated.Creates an instance of the wizard. Needs to invokeopenmethod to create the wizard dialog.- Parameters:
sID- wizard idiInitialWidth- width minimumiInitialHeight- height minimumstrTitle- wizard titleimgTitle- wizard imagestrHeader- the header descriptionimgHeader- image displayed in the task bar. If null, leave blank. *
-
WizardBase
public WizardBase(org.eclipse.swt.widgets.Shell parentShell, java.lang.String sID, int iInitialWidth, int iInitialHeight, java.lang.String strTitle, org.eclipse.swt.graphics.Image imgTitle, java.lang.String strHeader, org.eclipse.swt.graphics.Image imgHeader)Creates an instance of the wizard. Needs to invokeopenmethod to create the wizard dialog.- Parameters:
parentShell- parent shellsID- wizard idiInitialWidth- width minimumiInitialHeight- height minimumstrTitle- wizard titleimgTitle- wizard imagestrHeader- the header descriptionimgHeader- image displayed in the task bar. If null, leave blank.- Since:
- 2.1.1
-
WizardBase
public WizardBase()
-
-
Method Detail
-
open
public IWizardContext open(java.lang.String[] sTasks, java.lang.String topTaskId, IWizardContext initialContext)
Launches the wizard with the specified tasks in 'Available' state...and the specified task sets as the 'Active' task.- Parameters:
sTasks- Array of task IDs to add. Null indicates nothing added.topTaskId- Task to open at first. Null indicates the first task will be the top.initialContext- Initial Context for the wizard- Returns:
- Wizard Context
-
open
public IWizardContext open(IWizardContext initialContext)
Launches the wizard with the first tasks in 'Available' state. Ensure the task is registered at first.- Parameters:
initialContext- Initial Context for the wizard- Returns:
- Wizard Context
-
setMinimumSize
public void setMinimumSize(int iWidth, int iHeight)Sets the minimum size of the wizard- Parameters:
iWidth- width minimumiHeight- height minimum
-
firePageChanged
public void firePageChanged(org.eclipse.jface.dialogs.IDialogPage taskPage)
-
setWizardClosedWhenEnterPressed
public void setWizardClosedWhenEnterPressed(boolean bClosed)
Sets if wizard should be closed when Enter key is pressed. Default value is true.- Parameters:
bClosed- true then close wizard when Enter key is pressed- Since:
- 2.3.1 and 2.5
-
addCustomButton
public void addCustomButton(IButtonHandler buttonHandler)
Adds a custom button after built-in buttons. This method must be invoked before invokingopen(String[], String, IWizardContext)- Parameters:
buttonHandler- Custom button handler
-
getCustomButtons
protected java.util.List<IButtonHandler> getCustomButtons()
-
addTabToolButton
public void addTabToolButton(IButtonHandler buttonHandler)
Adds tab tool button.- Parameters:
buttonHandler-
-
getTabToolButtons
public java.util.List<IButtonHandler> getTabToolButtons()
Returns all tab tool buttons.- Returns:
- all tab tool buttons.
-
addTask
public void addTask(java.lang.String sTaskID)
-
removeTask
public void removeTask(java.lang.String sTaskID)
-
getCurrentTask
public ITask getCurrentTask()
-
switchTo
public void switchTo(java.lang.String sTaskID)
-
createPopupContainer
public org.eclipse.swt.widgets.Shell createPopupContainer()
-
getPopupContainer
public org.eclipse.swt.widgets.Shell getPopupContainer()
-
attachPopup
public void attachPopup(java.lang.String sPopupTitle, int iWidth, int iHeight)Attaches the popup window.- Parameters:
sPopupTitle- popup title
-
detachPopup
public void detachPopup()
-
updateContext
public void updateContext(IWizardContext wizardcontext)
-
createDialog
protected WizardBaseDialog createDialog(org.eclipse.swt.widgets.Shell shell, int initialWidth, int initialHeight, java.lang.String strTitle, org.eclipse.swt.graphics.Image imgTitle)
-
clearCache
public void clearCache()
Clears the cached task instances. This can be used between invocations when a wizard instance is being reused in an application. Calling this will cause fresh instances of tasks to be fetched from the TasksManager when the wizard is invoked.
-
displayException
public static void displayException(java.lang.Throwable t)
Displays the exception in a common Error Display UI mechanism.- Parameters:
t- exception to be displayed to the user
-
showException
public static void showException(java.lang.String errorMessage)
Displays the exception in an Eclipse error mechanism.- Parameters:
t- exception to be displayed to the user
-
removeException
public static void removeException()
Remove the error message in the dialog.
-
getErrors
public static java.lang.String getErrors()
-
displayError
public void displayError(java.lang.String[] sErrors, java.lang.String[] sFixes, java.lang.String[] sTaskIDs, IWizardContext currentContext, java.lang.Object[] hints)Displays the errors in a common Error Display UI mechanism. Also displayed are possible solutions to the problems. The user can also be given the option of switching to a different task where the fix needs to be made. (This is not implemented yet).- Parameters:
sErrors- Array of error stringssFixes- Array of strings listing possible solutions to above errorssTaskIDs- Array of task IDs which the user can switch to. The appropriate task labels should be indicated in the solutions to allow users to make the connectioncurrentContext- Updated IWizardContext instance...this instance will include the erroneous settingshints- Object array that will be passed to the target task...which can be used to indicate specific problems or to customize behavior of the task UI
-
taskRegistered
public void taskRegistered(java.lang.String sTaskID)
Notification method called by the org.eclipse.birt.frameworks.taskwizard.interfaces.TasksManager instance when a new ITask instance is successfully registered. Default behavior is to do nothing.- Specified by:
taskRegisteredin interfaceIRegistrationListener- Parameters:
sTaskID- The ID for the newly registered task
-
taskDeregistered
public void taskDeregistered(java.lang.String sTaskID)
Notification method called by the org.eclipse.birt.frameworks.taskwizard.interfaces.TasksManager instance when an existing ITask instance is successfully deregistered. Default behavior is to do nothing. This can be overridden by individual wizards to handle deregistration of tasks currently available in the wizard.- Specified by:
taskDeregisteredin interfaceIRegistrationListener- Parameters:
sTaskID- The ID for the deregistered task
-
validate
protected java.lang.String[] validate()
Validates before pressing OK.- Returns:
- validation results
-
dispose
public void dispose()
-
isDisposed
public boolean isDisposed()
-
getDialog
protected org.eclipse.jface.dialogs.TitleAreaDialog getDialog()
-
setTitle
protected void setTitle(java.lang.String wizardTitle)
-
getTitle
protected java.lang.String getTitle()
-
packWizard
public void packWizard()
Packs the wizard to display enough size
-
applyCustomPack
protected boolean applyCustomPack()
The method makes user can do custom pack actions for current dialog.- Returns:
truemeans custom pack has been done.
-
-