|
 |
|
|
org.eclipse.jface.wizard
Class WizardDialog
java.lang.Object
org.eclipse.jface.window.Window
org.eclipse.jface.dialogs.Dialog
org.eclipse.jface.dialogs.TrayDialog
org.eclipse.jface.dialogs.TitleAreaDialog
org.eclipse.jface.wizard.WizardDialog
-
All Implemented Interfaces:
-
IPageChangeProvider,
IRunnableContext,
IShellProvider,
IWizardContainer,
IWizardContainer2
-
public class WizardDialog
- extends
TitleAreaDialog
- implements
IWizardContainer2,
IPageChangeProvider
A dialog to show a wizard to the end user.
In typical usage, the client instantiates this class with a particular
wizard. The dialog serves as the wizard container and orchestrates the
presentation of its pages.
The standard layout is roughly as follows: it has an area at the top
containing both the wizard's title, description, and image; the actual wizard
page appears in the middle; below that is a progress indicator (which is made
visible if needed); and at the bottom of the page is message line and a
button bar containing Help, Next, Back, Finish, and Cancel buttons (or some
subset).
Clients may subclass WizardDialog , although this is rarely
required.
Field Summary
|
static
String
|
WIZ_IMG_ERROR
Image registry key for error message image (value
"dialog_title_error_image" ). |
Fields inherited from class org.eclipse.jface.dialogs.
Dialog
|
blockedHandler,
buttonBar,
DIALOG_DEFAULT_BOUNDS,
DIALOG_PERSISTLOCATION,
DIALOG_PERSISTSIZE,
dialogArea,
DLG_IMG_ERROR,
DLG_IMG_HELP,
DLG_IMG_INFO,
DLG_IMG_MESSAGE_ERROR,
DLG_IMG_MESSAGE_INFO,
DLG_IMG_MESSAGE_WARNING,
DLG_IMG_QUESTION,
DLG_IMG_WARNING,
ELLIPSIS
|
Fields inherited from class org.eclipse.jface.window.
Window
|
CANCEL,
OK
|
Constructor Summary
|
WizardDialog
(
Shell parentShell,
IWizard newWizard)
Creates a new wizard dialog for the given wizard. |
Method Summary
|
void
|
addPageChangedListener
(
IPageChangedListener listener)
Adds a listener for page changes in this page change provider. |
void
|
addPageChangingListener
(
IPageChangingListener listener)
Adds a listener for page changes to the list of page changing listeners
registered for this dialog. |
protected void
|
backPressed
()
The Back button has been pressed. |
protected void
|
buttonPressed
(int buttonId)
Notifies that this dialog's button with the given id has been pressed. |
protected void
|
cancelPressed
()
Notifies that the cancel button of this dialog has been pressed. |
boolean
|
close
()
Closes this window, disposes its shell, and removes this window from its
window manager (if it has one). |
protected void
|
configureShell
(
Shell newShell)
Configures the given shell in preparation for opening this window in it. |
protected void
|
createButtonsForButtonBar
(
Composite parent)
Creates the buttons for this dialog's button bar. |
protected
Control
|
createContents
(
Composite parent)
The WizardDialog implementation of this
Window method calls call IWizard.addPages
to allow the current wizard to add extra pages, then
super.createContents to create the controls. |
protected
Control
|
createDialogArea
(
Composite parent)
Creates and returns the contents of the upper part of this dialog (above
the button bar). |
protected
ProgressMonitorPart
|
createProgressMonitorPart
(
Composite composite,
GridLayout pmlayout)
Create the progress monitor part in the receiver. |
protected void
|
finishPressed
()
The Finish button has been pressed. |
protected void
|
firePageChanged
(
PageChangedEvent event)
Notifies any selection changed listeners that the selected page has
changed. |
protected void
|
firePageChanging
(
PageChangingEvent event)
Notifies any page changing listeners that the currently selected dialog
page is changing. |
protected
Button
|
getButton
(int id)
Return the cancel button if the id is a the cancel id. |
IWizardPage
|
getCurrentPage
()
Returns the current wizard page for this container. |
protected
IProgressMonitor
|
getProgressMonitor
()
Returns the progress monitor for this wizard dialog (if it has one). |
Object
|
getSelectedPage
()
Returns the currently selected page in the dialog. |
protected
IWizard
|
getWizard
()
Returns the wizard this dialog is currently displaying. |
protected void
|
helpPressed
()
The Help button has been pressed. |
protected void
|
nextPressed
()
The Next button has been pressed. |
void
|
removePageChangedListener
(
IPageChangedListener listener)
Removes the given page change listener from this page change provider. |
void
|
removePageChangingListener
(
IPageChangingListener listener)
Removes the provided page changing listener from the list of page
changing listeners registered for the dialog. |
void
|
run
(boolean fork,
boolean cancelable,
IRunnableWithProgress runnable)
This implementation of IRunnableContext#run(boolean, boolean,
IRunnableWithProgress) blocks until the runnable has been run, regardless
of the value of fork . |
protected void
|
setButtonLayoutData
(
Button button)
Set the layout data of the button to a GridData with appropriate heights
and widths. |
void
|
setMinimumPageSize
(int minWidth,
int minHeight)
Sets the minimum page size used for the pages. |
void
|
setMinimumPageSize
(
Point size)
Sets the minimum page size used for the pages. |
void
|
setPageSize
(int width,
int height)
Sets the size of all pages. |
void
|
setPageSize
(
Point size)
Sets the size of all pages. |
protected void
|
setWizard
(
IWizard newWizard)
Sets the wizard this dialog is currently displaying. |
void
|
showPage
(
IWizardPage page)
Makes the given page visible. |
protected void
|
update
()
Updates this dialog's controls to reflect the current page. |
void
|
updateButtons
()
Adjusts the enable state of the Back, Next, and Finish
buttons to reflect the state of the currently active
page in this container. |
void
|
updateMessage
()
Updates the message (or error message) shown in the message line to
reflect the state of the currently active page in this container. |
void
|
updateSize
()
Updates the window size to reflect the state of the current wizard. |
protected void
|
updateSize
(
IWizardPage page)
Computes the correct dialog size for the current page and resizes its
shell if nessessary. |
void
|
updateTitleBar
()
Updates the title bar (title, description, and image) to
reflect the state of the currently active page in this container. |
void
|
updateWindowTitle
()
Updates the window title to reflect the state of the current wizard. |
Methods inherited from class org.eclipse.jface.dialogs.
Dialog
|
applyDialogFont,
convertHeightInCharsToPixels,
convertHeightInCharsToPixels,
convertHorizontalDLUsToPixels,
convertHorizontalDLUsToPixels,
convertVerticalDLUsToPixels,
convertVerticalDLUsToPixels,
convertWidthInCharsToPixels,
convertWidthInCharsToPixels,
create,
createButton,
dialogFontIsDefault,
getBlockedHandler,
getButtonBar,
getCancelButton,
getDialogArea,
getDialogBoundsSettings,
getDialogBoundsStrategy,
getImage,
getInitialLocation,
getOKButton,
initializeBounds,
initializeDialogUnits,
isResizable,
okPressed,
setBlockedHandler,
setButtonLayoutFormData,
shortenText
|
Methods inherited from class org.eclipse.jface.window.
Window
|
canHandleShellCloseEvent,
constrainShellSize,
createShell,
getConstrainedShellBounds,
getContents,
getDefaultImage,
getDefaultImages,
getDefaultOrientation,
getParentShell,
getReturnCode,
getShell,
getShellListener,
getShellStyle,
getWindowManager,
handleFontChange,
handleShellCloseEvent,
open,
setBlockOnOpen,
setDefaultImage,
setDefaultImages,
setDefaultModalParent,
setDefaultOrientation,
setExceptionHandler,
setParentShell,
setReturnCode,
setShellStyle,
setWindowManager
|
Methods inherited from class java.lang.
Object
|
clone,
equals,
finalize,
getClass,
hashCode,
notify,
notifyAll,
toString,
wait,
wait,
wait
|
WIZ_IMG_ERROR
public static final
String WIZ_IMG_ERROR
- Image registry key for error message image (value
"dialog_title_error_image" ).
-
See Also:
-
Constant Field Values
WizardDialog
public WizardDialog(
Shell parentShell,
IWizard newWizard)
- Creates a new wizard dialog for the given wizard.
-
Parameters:
-
parentShell - the parent shell -
newWizard - the wizard this dialog is working on
backPressed
protected void backPressed()
- The Back button has been pressed.
-
-
buttonPressed
protected void buttonPressed(int buttonId)
-
Description copied from class:
Dialog
- Notifies that this dialog's button with the given id has been pressed.
The Dialog implementation of this framework method calls
okPressed if the ok button is the pressed, and
cancelPressed if the cancel button is the pressed. All
other button presses are ignored. Subclasses may override to handle other
buttons, but should call super.buttonPressed if the
default handling of the ok and cancel buttons is desired.
-
-
Overrides:
-
buttonPressed
in class
Dialog
-
-
Parameters:
-
buttonId - the id of the button that was pressed (see
IDialogConstants.*_ID constants)
cancelPressed
protected void cancelPressed()
-
Description copied from class:
Dialog
- Notifies that the cancel button of this dialog has been pressed.
The Dialog implementation of this framework method sets
this dialog's return code to Window.CANCEL and closes the
dialog. Subclasses may override if desired.
-
-
Overrides:
-
cancelPressed
in class
Dialog
-
close
public boolean close()
-
Description copied from class:
Window
- Closes this window, disposes its shell, and removes this window from its
window manager (if it has one).
This framework method may be extended (super.close must
be called).
Note that in order to prevent recursive calls to this method
it does not call Shell#close() . As a result ShellListener s
will not receive a shellClosed event.
-
-
Overrides:
-
close
in class
TrayDialog
-
-
Returns:
-
true if the window is (or was already) closed, and
false if it is still open -
See Also:
-
Window.close()
configureShell
protected void configureShell(
Shell newShell)
-
Description copied from class:
Window
- Configures the given shell in preparation for opening this window in it.
The default implementation of this framework method sets the shell's
image and gives it a grid layout. Subclasses may extend or reimplement.
-
-
Overrides:
-
configureShell
in class
Window
-
-
Parameters:
-
newShell - the shell
createButtonsForButtonBar
protected void createButtonsForButtonBar(
Composite parent)
- Creates the buttons for this dialog's button bar.
The WizardDialog implementation of this framework method
prevents the parent composite's columns from being made equal width in
order to remove the margin between the Back and Next buttons.
-
-
Overrides:
-
createButtonsForButtonBar
in class
Dialog
-
-
Parameters:
-
parent - the parent composite to contain the buttons
setButtonLayoutData
protected void setButtonLayoutData(
Button button)
-
Description copied from class:
Dialog
- Set the layout data of the button to a GridData with appropriate heights
and widths.
-
-
Overrides:
-
setButtonLayoutData
in class
Dialog
-
getButton
protected
Button getButton(int id)
- Return the cancel button if the id is a the cancel id.
-
-
Overrides:
-
getButton
in class
Dialog
-
-
Parameters:
-
id - the button id
-
Returns:
- the button corresponding to the button id
-
See Also:
-
Dialog.createButton(Composite, int, String, boolean)
createContents
protected
Control createContents(
Composite parent)
- The
WizardDialog implementation of this
Window method calls call IWizard.addPages
to allow the current wizard to add extra pages, then
super.createContents to create the controls. It then calls
IWizard.createPageControls to allow the wizard to
pre-create their page controls prior to opening, so that the wizard opens
to the correct size. And finally it shows the first page.
-
-
Overrides:
-
createContents
in class
TitleAreaDialog
-
-
Parameters:
-
parent - the parent composite for the controls in this window. The type
of layout used is determined by getLayout()
-
Returns:
- the control that will be returned by subsequent calls to
getContents()
createDialogArea
protected
Control createDialogArea(
Composite parent)
-
Description copied from class:
TitleAreaDialog
- Creates and returns the contents of the upper part of this dialog (above
the button bar).
The Dialog implementation of this framework method creates
and returns a new Composite with no margins and spacing.
Subclasses should override.
-
-
Overrides:
-
createDialogArea
in class
TitleAreaDialog
-
-
Parameters:
-
parent - The parent composite to contain the dialog area
-
Returns:
- the dialog area control
createProgressMonitorPart
protected
ProgressMonitorPart createProgressMonitorPart(
Composite composite,
GridLayout pmlayout)
- Create the progress monitor part in the receiver.
-
-
-
Parameters:
-
composite - -
pmlayout -
-
Returns:
- ProgressMonitorPart
finishPressed
protected void finishPressed()
- The Finish button has been pressed.
-
-
getCurrentPage
public
IWizardPage getCurrentPage()
-
Description copied from interface:
IWizardContainer
- Returns the current wizard page for this container.
-
-
Specified by:
-
getCurrentPage
in interface
IWizardContainer
-
-
Returns:
- the current wizard page, or
null if the container
is not yet showing the wizard -
See Also:
-
IWizardContainer.showPage(org.eclipse.jface.wizard.IWizardPage)
getProgressMonitor
protected
IProgressMonitor getProgressMonitor()
- Returns the progress monitor for this wizard dialog (if it has one).
-
-
-
Returns:
- the progress monitor, or
null if this wizard
dialog does not have one
getWizard
protected
IWizard getWizard()
- Returns the wizard this dialog is currently displaying.
-
-
-
Returns:
- the current wizard
helpPressed
protected void helpPressed()
- The Help button has been pressed.
-
-
nextPressed
protected void nextPressed()
- The Next button has been pressed.
-
-
run
public void run(boolean fork,
boolean cancelable,
IRunnableWithProgress runnable)
throws
InvocationTargetException,
InterruptedException
- This implementation of IRunnableContext#run(boolean, boolean,
IRunnableWithProgress) blocks until the runnable has been run, regardless
of the value of
fork . It is recommended that
fork is set to true in most cases. If fork
is set to false , the runnable will run in the UI thread
and it is the runnable's responsibility to call
Display.readAndDispatch() to ensure UI responsiveness.
UI state is saved prior to executing the long-running operation and is
restored after the long-running operation completes executing. Any
attempt to change the UI state of the wizard in the long-running
operation will be nullified when original UI state is restored.
-
-
Specified by:
-
run
in interface
IRunnableContext
-
-
Parameters:
-
fork - true if the runnable should be run in a separate thread,
and false to run in the same thread -
cancelable - true to enable the cancelation, and
false to make the operation uncancellable -
runnable - the runnable to run
-
Throws:
-
InvocationTargetException
- wraps any exception or error which occurs
while running the runnable
-
InterruptedException
- propagated by the context if the runnable
acknowledges cancelation by throwing this exception. This should not be thrown
if cancelable is false .
setMinimumPageSize
public void setMinimumPageSize(int minWidth,
int minHeight)
- Sets the minimum page size used for the pages.
-
-
-
Parameters:
-
minWidth - the minimum page width -
minHeight - the minimum page height -
See Also:
-
setMinimumPageSize(Point)
setMinimumPageSize
public void setMinimumPageSize(
Point size)
- Sets the minimum page size used for the pages.
-
-
-
Parameters:
-
size - the page size encoded as new Point(width,height)
-
See Also:
-
setMinimumPageSize(int,int)
setPageSize
public void setPageSize(int width,
int height)
- Sets the size of all pages. The given size takes precedence over computed
sizes.
-
-
-
Parameters:
-
width - the page width -
height - the page height -
See Also:
-
setPageSize(Point)
setPageSize
public void setPageSize(
Point size)
- Sets the size of all pages. The given size takes precedence over computed
sizes.
-
-
-
Parameters:
-
size - the page size encoded as new Point(width,height)
-
See Also:
-
setPageSize(int,int)
setWizard
protected void setWizard(
IWizard newWizard)
- Sets the wizard this dialog is currently displaying.
-
-
-
Parameters:
-
newWizard - the wizard
showPage
public void showPage(
IWizardPage page)
-
Description copied from interface:
IWizardContainer
- Makes the given page visible.
This method should not be use for normal page
sequencing (back, next) which is handled by the
container itself. It may, however, be used to
move to another page in response to some custom
action such as double clicking in a list.
-
-
Specified by:
-
showPage
in interface
IWizardContainer
-
-
Parameters:
-
page - the page to show -
See Also:
-
IWizardContainer.getCurrentPage()
update
protected void update()
- Updates this dialog's controls to reflect the current page.
-
-
updateButtons
public void updateButtons()
-
Description copied from interface:
IWizardContainer
- Adjusts the enable state of the Back, Next, and Finish
buttons to reflect the state of the currently active
page in this container.
This method is called by the container itself
when its wizard page changes and may be called
by the page at other times to force a button state
update.
-
-
Specified by:
-
updateButtons
in interface
IWizardContainer
-
updateMessage
public void updateMessage()
-
Description copied from interface:
IWizardContainer
- Updates the message (or error message) shown in the message line to
reflect the state of the currently active page in this container.
This method is called by the container itself
when its wizard page changes and may be called
by the page at other times to force a message
update.
-
-
Specified by:
-
updateMessage
in interface
IWizardContainer
-
updateSize
protected void updateSize(
IWizardPage page)
- Computes the correct dialog size for the current page and resizes its
shell if nessessary. Also causes the container to refresh its layout.
-
-
-
Parameters:
-
page - the wizard page to use to resize the dialog -
Since:
- 2.0
updateSize
public void updateSize()
-
Description copied from interface:
IWizardContainer2
- Updates the window size to reflect the state of the current wizard.
This method is called by the container itself
when its wizard changes and may be called
by the wizard at other times to force a window
size change.
-
-
Specified by:
-
updateSize
in interface
IWizardContainer2
-
updateTitleBar
public void updateTitleBar()
-
Description copied from interface:
IWizardContainer
- Updates the title bar (title, description, and image) to
reflect the state of the currently active page in this container.
This method is called by the container itself
when its wizard page changes and may be called
by the page at other times to force a title bar
update.
-
-
Specified by:
-
updateTitleBar
in interface
IWizardContainer
-
updateWindowTitle
public void updateWindowTitle()
-
Description copied from interface:
IWizardContainer
- Updates the window title to reflect the state of the current wizard.
This method is called by the container itself
when its wizard changes and may be called
by the wizard at other times to force a window
title change.
-
-
Specified by:
-
updateWindowTitle
in interface
IWizardContainer
-
getSelectedPage
public
Object getSelectedPage()
-
Description copied from interface:
IPageChangeProvider
- Returns the currently selected page in the dialog.
-
-
Specified by:
-
getSelectedPage
in interface
IPageChangeProvider
-
-
Returns:
- the selected page in the dialog or
null if none is
selected. The type may be domain specific. In
the JFace provided dialogs this will be an instance of
IDialogPage .
addPageChangedListener
public void addPageChangedListener(
IPageChangedListener listener)
-
Description copied from interface:
IPageChangeProvider
- Adds a listener for page changes in this page change provider. Has no
effect if an identical listener is already registered.
-
-
Specified by:
-
addPageChangedListener
in interface
IPageChangeProvider
-
-
Parameters:
-
listener - a page changed listener
removePageChangedListener
public void removePageChangedListener(
IPageChangedListener listener)
-
Description copied from interface:
IPageChangeProvider
- Removes the given page change listener from this page change provider.
Has no effect if an identical listener is not registered.
-
-
Specified by:
-
removePageChangedListener
in interface
IPageChangeProvider
-
-
Parameters:
-
listener - a page changed listener
firePageChanged
protected void firePageChanged(
PageChangedEvent event)
- Notifies any selection changed listeners that the selected page has
changed. Only listeners registered at the time this method is called are
notified.
-
-
-
Parameters:
-
event - a selection changed event -
Since:
- 3.1
-
See Also:
-
IPageChangedListener.pageChanged(org.eclipse.jface.dialogs.PageChangedEvent)
addPageChangingListener
public void addPageChangingListener(
IPageChangingListener listener)
- Adds a listener for page changes to the list of page changing listeners
registered for this dialog. Has no effect if an identical listener is
already registered.
-
-
-
Parameters:
-
listener - a page changing listener -
Since:
- 3.3
removePageChangingListener
public void removePageChangingListener(
IPageChangingListener listener)
- Removes the provided page changing listener from the list of page
changing listeners registered for the dialog.
-
-
-
Parameters:
-
listener - a page changing listener -
Since:
- 3.3
firePageChanging
protected void firePageChanging(
PageChangingEvent event)
- Notifies any page changing listeners that the currently selected dialog
page is changing. Only listeners registered at the time this method is
called are notified.
-
-
-
Parameters:
-
event - a selection changing event -
Since:
- 3.3
-
See Also:
-
IPageChangingListener.handlePageChanging(PageChangingEvent)
Guidelines for using Eclipse APIs.
Copyright (c) Eclipse contributors and others 2000, 2008. All rights reserved.
|
|
|