public class MultiplePageDialog extends StandardDialog
StandardDialog.DefaultStandardDialogPane
javax.swing.JDialog.AccessibleJDialog
java.awt.Dialog.AccessibleAWTDialog, java.awt.Dialog.ModalExclusionType, java.awt.Dialog.ModalityType
java.awt.Window.AccessibleAWTWindow, java.awt.Window.Type
Modifier and Type | Field and Description |
---|---|
javax.swing.JTree |
_tree |
static int |
ICON_STYLE
Predefined style of multiple page dialog.
|
static int |
LIST_STYLE
Predefined style of multiple page dialog.
|
static int |
TAB_STYLE
Predefined style of multiple page dialog.
|
static int |
TREE_STYLE
Predefined style of multiple page dialog.
|
_propertyChangeListener, _standardDialogPane, RESULT_AFFIRMED, RESULT_CANCELLED
accessibleContext, rootPane, rootPaneCheckingEnabled
BOTTOM_ALIGNMENT, CENTER_ALIGNMENT, LEFT_ALIGNMENT, RIGHT_ALIGNMENT, TOP_ALIGNMENT
APPLY, BACK, BROWSE, CANCEL, CLEAR, CLOSE, DETAILS, EDIT, EXIT, FIND, FIND_NEXT, FINISH, FORWARD, HELP, NEW, NEXT, NO, OK, OPEN, PRINT, REPLACE, RETRY, RUN, SAVE, SAVE_AS, STOP, YES
Constructor and Description |
---|
MultiplePageDialog()
Creates a non-modal MultiplePageDialog without a title and without a specified
Frame owner. |
MultiplePageDialog(java.awt.Dialog owner)
Creates a non-modal MultiplePageDialog without a title with the specified
Dialog as its owner. |
MultiplePageDialog(java.awt.Dialog owner,
boolean modal)
Creates a modal or non-modal MultiplePageDialog without a title and with the specified owner
Dialog . |
MultiplePageDialog(java.awt.Dialog owner,
java.lang.String title)
Creates a non-modal MultiplePageDialog with the specified title and with the specified owner frame.
|
MultiplePageDialog(java.awt.Dialog owner,
java.lang.String title,
boolean modal)
Creates a modal or non-modal dialog with the specified title and the specified owner
Dialog . |
MultiplePageDialog(java.awt.Dialog owner,
java.lang.String title,
boolean modal,
int style)
Creates a modal or non-modal MultiplePageDialog with the specified style, the specified title and the specified
owner
Dialog . |
MultiplePageDialog(java.awt.Frame owner)
Creates a non-modal MultiplePageDialog without a title with the specified
Frame as its owner. |
MultiplePageDialog(java.awt.Frame owner,
boolean modal)
Creates a modal or non-modal MultiplePageDialog without a title and with the specified owner
Frame . |
MultiplePageDialog(java.awt.Frame owner,
java.lang.String title)
Creates a non-modal MultiplePageDialog with the specified title and with the specified owner frame.
|
MultiplePageDialog(java.awt.Frame owner,
java.lang.String title,
boolean modal)
Creates a modal or non-modal dialog with the specified title and the specified owner
Frame . |
MultiplePageDialog(java.awt.Frame owner,
java.lang.String title,
boolean modal,
int style)
Creates a modal or non-modal MultiplePageDialog with the specified style, the specified title and the specified
owner
Frame . |
Modifier and Type | Method and Description |
---|---|
protected void |
configureTree(javax.swing.JTree tree)
Configure the JTree used in TREE_STYLE dialog.
|
javax.swing.JComponent |
createBannerPanel()
Implements the method in StandardDialog.
|
ButtonPanel |
createButtonPanel()
Creates the button panel.
|
javax.swing.JComponent |
createContentPanel()
Implements the method in StandardDialog.
|
protected JideButton |
createIconButton(java.lang.String title,
javax.swing.Icon icon)
Creates the button for each icon.
|
protected ButtonPanel |
createIconButtonPanel()
Creates the ButtonPanel used by IconPanel.
|
protected javax.swing.JComponent |
createIconPanel()
Creates the panel that contains several icons.
|
javax.swing.JComponent |
createIndexPanel()
Creates the index panel based on the style.
|
protected javax.swing.JList |
createList(javax.swing.DefaultListModel listModel)
Creates list that is used in LIST_STYLE dialog's index panel.
|
protected javax.swing.ListCellRenderer |
createListCellRenderer()
Creates a list cell renderer used by list in LIST_STYLE dialog's index panel.
|
protected javax.swing.JComponent |
createPagesPanel()
Creates the pages panel.
|
protected javax.swing.JTabbedPane |
createTabbedPane()
Creates the JTabbedPane used by TAB_STYLE dialog.
|
protected javax.swing.JTree |
createTree(javax.swing.tree.DefaultMutableTreeNode root)
Creates tree that is used in TREE_STYLE dialog's index panel.
|
protected javax.swing.tree.TreeCellRenderer |
createTreeCellRenderer()
Creates the tree cell renderer used by tree in TREE_STYLE dialog's index panel.
|
javax.swing.JButton |
getApplyButton()
Gets the apply button.
|
javax.swing.JButton |
getCancelButton()
Gets the cancel button.
|
AbstractDialogPage |
getCurrentPage()
Gets the current selected page.
|
javax.swing.JComponent |
getIndexPanel()
Gets the index panel.
|
java.lang.String |
getInitialPageTitle()
Gets the initial page title.
|
protected javax.swing.ListCellRenderer |
getListCellRenderer()
Gets the cell renderer used by the list.
|
javax.swing.JButton |
getOkButton()
Gets the OK Button only if you didn't override the createButtonPanel() and remove the OK button.
|
PageList |
getPageList()
Gets the page list of this dialog.
|
javax.swing.JComponent |
getPagesPanel()
Gets the pages panel.
|
int |
getStyle()
Gets the style of this dialog.
|
protected javax.swing.tree.TreeCellRenderer |
getTreeCellRenderer()
Gets the cell renderer used by the tree.
|
protected void |
setCurrentPage(AbstractDialogPage currentPage) |
protected void |
setCurrentPage(AbstractDialogPage currentPage,
java.lang.Object source) |
protected void |
setCurrentPage(java.lang.String pageTitle) |
void |
setInitialPageTitle(java.lang.String initialPageTitle)
Sets the initial page title.
|
void |
setListCellRenderer(javax.swing.ListCellRenderer listCellRenderer)
Sets the list cell renderer that will be used by JList when the style is LIST_STYLE.
|
void |
setPageList(PageList pageList)
Sets the page list of this dialog.
|
void |
setStyle(int style)
Sets the style of this dialog.
|
void |
setTreeCellRenderer(javax.swing.tree.TreeCellRenderer treeCellRenderer)
Sets the tree cell renderer that will be used by JTree when the style is TREE_STYLE.
|
protected javax.swing.JComponent |
setupContentPanel(javax.swing.JComponent indexPanel,
javax.swing.JComponent pagesPanel)
Setups the content panel.
|
protected void |
showCurrentPage(AbstractDialogPage currentPage)
Displays the current page.
|
createOKCancelButtonPanel, createStandardDialogPane, getBannerPanel, getButtonPanel, getContentPanel, getDefaultAction, getDefaultCancelAction, getDialogResult, getInitFocusedComponent, getStandardDialogPane, initComponents, initialize, pack, setDefaultAction, setDefaultCancelAction, setDialogResult, setInitFocusedComponent, show
addImpl, createRootPane, dialogInit, getAccessibleContext, getContentPane, getDefaultCloseOperation, getGlassPane, getGraphics, getJMenuBar, getLayeredPane, getRootPane, getTransferHandler, isDefaultLookAndFeelDecorated, isRootPaneCheckingEnabled, paramString, processWindowEvent, remove, repaint, setContentPane, setDefaultCloseOperation, setDefaultLookAndFeelDecorated, setGlassPane, setJMenuBar, setLayeredPane, setLayout, setRootPane, setRootPaneCheckingEnabled, setTransferHandler, update
addNotify, getModalityType, getTitle, hide, isModal, isResizable, isUndecorated, setBackground, setModal, setModalityType, setOpacity, setResizable, setShape, setTitle, setUndecorated, setVisible, toBack
addPropertyChangeListener, addPropertyChangeListener, addWindowFocusListener, addWindowListener, addWindowStateListener, applyResourceBundle, applyResourceBundle, createBufferStrategy, createBufferStrategy, dispose, getBackground, getBufferStrategy, getFocusableWindowState, getFocusCycleRootAncestor, getFocusOwner, getFocusTraversalKeys, getIconImages, getInputContext, getListeners, getLocale, getModalExclusionType, getMostRecentFocusOwner, getOpacity, getOwnedWindows, getOwner, getOwnerlessWindows, getShape, getToolkit, getType, getWarningString, getWindowFocusListeners, getWindowListeners, getWindows, getWindowStateListeners, isActive, isAlwaysOnTop, isAlwaysOnTopSupported, isAutoRequestFocus, isFocusableWindow, isFocusCycleRoot, isFocused, isLocationByPlatform, isOpaque, isShowing, isValidateRoot, paint, postEvent, processEvent, processWindowFocusEvent, processWindowStateEvent, removeNotify, removeWindowFocusListener, removeWindowListener, removeWindowStateListener, reshape, setAlwaysOnTop, setAutoRequestFocus, setBounds, setBounds, setCursor, setFocusableWindowState, setFocusCycleRoot, setIconImage, setIconImages, setLocation, setLocation, setLocationByPlatform, setLocationRelativeTo, setMinimumSize, setModalExclusionType, setSize, setSize, setType, toFront
add, add, add, add, add, addContainerListener, applyComponentOrientation, areFocusTraversalKeysSet, countComponents, deliverEvent, doLayout, findComponentAt, findComponentAt, getAlignmentX, getAlignmentY, getComponent, getComponentAt, getComponentAt, getComponentCount, getComponents, getComponentZOrder, getContainerListeners, getFocusTraversalPolicy, getInsets, getLayout, getMaximumSize, getMinimumSize, getMousePosition, getPreferredSize, insets, invalidate, isAncestorOf, isFocusCycleRoot, isFocusTraversalPolicyProvider, isFocusTraversalPolicySet, layout, list, list, locate, minimumSize, paintComponents, preferredSize, print, printComponents, processContainerEvent, remove, removeAll, removeContainerListener, setComponentZOrder, setFocusTraversalKeys, setFocusTraversalPolicy, setFocusTraversalPolicyProvider, setFont, transferFocusDownCycle, validate, validateTree
action, add, addComponentListener, addFocusListener, addHierarchyBoundsListener, addHierarchyListener, addInputMethodListener, addKeyListener, addMouseListener, addMouseMotionListener, addMouseWheelListener, bounds, checkImage, checkImage, coalesceEvents, contains, contains, createImage, createImage, createVolatileImage, createVolatileImage, disable, disableEvents, dispatchEvent, enable, enable, enableEvents, enableInputMethods, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, getBaseline, getBaselineResizeBehavior, getBounds, getBounds, getColorModel, getComponentListeners, getComponentOrientation, getCursor, getDropTarget, getFocusListeners, getFocusTraversalKeysEnabled, getFont, getFontMetrics, getForeground, getGraphicsConfiguration, getHeight, getHierarchyBoundsListeners, getHierarchyListeners, getIgnoreRepaint, getInputMethodListeners, getInputMethodRequests, getKeyListeners, getLocation, getLocation, getLocationOnScreen, getMouseListeners, getMouseMotionListeners, getMousePosition, getMouseWheelListeners, getName, getParent, getPeer, getPropertyChangeListeners, getPropertyChangeListeners, getSize, getSize, getTreeLock, getWidth, getX, getY, gotFocus, handleEvent, hasFocus, imageUpdate, inside, isBackgroundSet, isCursorSet, isDisplayable, isDoubleBuffered, isEnabled, isFocusable, isFocusOwner, isFocusTraversable, isFontSet, isForegroundSet, isLightweight, isMaximumSizeSet, isMinimumSizeSet, isPreferredSizeSet, isValid, isVisible, keyDown, keyUp, list, list, list, location, lostFocus, mouseDown, mouseDrag, mouseEnter, mouseExit, mouseMove, mouseUp, move, nextFocus, paintAll, prepareImage, prepareImage, printAll, processComponentEvent, processFocusEvent, processHierarchyBoundsEvent, processHierarchyEvent, processInputMethodEvent, processKeyEvent, processMouseEvent, processMouseMotionEvent, processMouseWheelEvent, remove, removeComponentListener, removeFocusListener, removeHierarchyBoundsListener, removeHierarchyListener, removeInputMethodListener, removeKeyListener, removeMouseListener, removeMouseMotionListener, removeMouseWheelListener, removePropertyChangeListener, removePropertyChangeListener, repaint, repaint, repaint, requestFocus, requestFocus, requestFocusInWindow, requestFocusInWindow, resize, resize, revalidate, setComponentOrientation, setDropTarget, setEnabled, setFocusable, setFocusTraversalKeysEnabled, setForeground, setIgnoreRepaint, setLocale, setMaximumSize, setName, setPreferredSize, show, size, toString, transferFocus, transferFocusBackward, transferFocusUpCycle
public static final int TAB_STYLE
public static final int TREE_STYLE
public static final int LIST_STYLE
public static final int ICON_STYLE
public javax.swing.JTree _tree
public MultiplePageDialog() throws java.awt.HeadlessException
Frame
owner. A
shared, hidden frame will be set as the owner of the dialog. By default TAB_STYLE is used.java.awt.HeadlessException
public MultiplePageDialog(java.awt.Frame owner) throws java.awt.HeadlessException
Frame
as its owner. If
owner
is null
, a shared, hidden frame will be set as the owner of the dialog. By
default TAB_STYLE is used.owner
- java.awt.HeadlessException
public MultiplePageDialog(java.awt.Frame owner, boolean modal) throws java.awt.HeadlessException
Frame
.
If owner
is null
, a shared, hidden frame will be set as the owner of the dialog. By
default TAB_STYLE is used.owner
- the Frame
from which the dialog is displayedmodal
- true for a modal dialog, false for one that allows others windows to be active at the same timejava.awt.HeadlessException
public MultiplePageDialog(java.awt.Frame owner, java.lang.String title) throws java.awt.HeadlessException
owner
is null
, a shared, hidden frame will be set as the owner of the dialog.owner
- the Frame
from which the dialog is displayedtitle
- the String
to display in the dialog's title barjava.awt.HeadlessException
- if GraphicsEnvironment.isHeadless() returns true.GraphicsEnvironment.isHeadless()
,
JComponent.getDefaultLocale()
public MultiplePageDialog(java.awt.Frame owner, java.lang.String title, boolean modal) throws java.awt.HeadlessException
Frame
. If
owner
is null
, a shared, hidden frame will be set as the owner of this dialog.owner
- the Frame
from which the dialog is displayedtitle
- the String
to display in the dialog's title barmodal
- true for a modal dialog, false for one that allows other windows to be active at the same timejava.awt.HeadlessException
- if GraphicsEnvironment.isHeadless() returns true.GraphicsEnvironment.isHeadless()
,
JComponent.getDefaultLocale()
public MultiplePageDialog(java.awt.Frame owner, java.lang.String title, boolean modal, int style) throws java.awt.HeadlessException
Frame
. If owner
is null
, a shared, hidden frame will be set as the
owner of this dialog. All constructors defer to this one.owner
- the Frame
from which the dialog is displayedtitle
- the String
to display in the dialog's title barmodal
- true for a modal dialog, false for one that allows other windows to be active at the same timestyle
- the style. It must be one of the following: TAB_STYLE, ICON_STYLE, LIST_STYLE or TREE_STYLE.java.awt.HeadlessException
- if GraphicsEnvironment.isHeadless() returns true.GraphicsEnvironment.isHeadless()
,
JComponent.getDefaultLocale()
public MultiplePageDialog(java.awt.Dialog owner) throws java.awt.HeadlessException
Dialog
as its owner. If
owner
is null
, a shared, hidden frame will be set as the owner of the dialog. By
default TAB_STYLE is used.owner
- java.awt.HeadlessException
public MultiplePageDialog(java.awt.Dialog owner, boolean modal) throws java.awt.HeadlessException
Dialog
.
If owner
is null
, a shared, hidden frame will be set as the owner of the dialog. By
default TAB_STYLE is used.owner
- the Frame
from which the dialog is displayedmodal
- true for a modal dialog, false for one that allows others windows to be active at the same timejava.awt.HeadlessException
public MultiplePageDialog(java.awt.Dialog owner, java.lang.String title) throws java.awt.HeadlessException
owner
is null
, a shared, hidden frame will be set as the owner of the dialog.owner
- the Frame
from which the dialog is displayedtitle
- the String
to display in the dialog's title barjava.awt.HeadlessException
- if GraphicsEnvironment.isHeadless() returns true.GraphicsEnvironment.isHeadless()
,
JComponent.getDefaultLocale()
public MultiplePageDialog(java.awt.Dialog owner, java.lang.String title, boolean modal) throws java.awt.HeadlessException
Dialog
. If
owner
is null
, a shared, hidden frame will be set as the owner of this dialog.owner
- the Dialog
from which the dialog is displayedtitle
- the String
to display in the dialog's title barmodal
- true for a modal dialog, false for one that allows other windows to be active at the same timejava.awt.HeadlessException
- if GraphicsEnvironment.isHeadless() returns true.GraphicsEnvironment.isHeadless()
,
JComponent.getDefaultLocale()
public MultiplePageDialog(java.awt.Dialog owner, java.lang.String title, boolean modal, int style) throws java.awt.HeadlessException
Dialog
. If owner
is null
, a shared, hidden frame will be set as the
owner of this dialog. All constructors defer to this one.owner
- the Dialog
from which the dialog is displayedtitle
- the String
to display in the dialog's title barmodal
- true for a modal dialog, false for one that allows other windows to be active at the same timestyle
- the style. It must be one of the following: TAB_STYLE, ICON_STYLE, LIST_STYLE or TREE_STYLE.java.awt.HeadlessException
- if GraphicsEnvironment.isHeadless() returns true.GraphicsEnvironment.isHeadless()
,
JComponent.getDefaultLocale()
public javax.swing.JComponent createBannerPanel()
createBannerPanel
in class StandardDialog
public javax.swing.JComponent createContentPanel()
createContentPanel
in class StandardDialog
protected javax.swing.JComponent setupContentPanel(javax.swing.JComponent indexPanel, javax.swing.JComponent pagesPanel)
indexPanel
- the index panel. It has the nagivation control to control which page to show.pagesPanel
- the pages panel. It contains all the pages of this dialog.public ButtonPanel createButtonPanel()
createButtonPanel
in class StandardDialog
ButtonPanel
public javax.swing.JButton getOkButton()
public javax.swing.JButton getCancelButton()
public javax.swing.JButton getApplyButton()
protected javax.swing.JComponent createPagesPanel()
protected javax.swing.JTabbedPane createTabbedPane()
public javax.swing.JComponent createIndexPanel()
public void setPageList(PageList pageList)
pageList
- public PageList getPageList()
public AbstractDialogPage getCurrentPage()
protected void setCurrentPage(java.lang.String pageTitle)
protected void setCurrentPage(AbstractDialogPage currentPage)
protected void setCurrentPage(AbstractDialogPage currentPage, java.lang.Object source)
protected void showCurrentPage(AbstractDialogPage currentPage)
currentPage
- protected javax.swing.JTree createTree(javax.swing.tree.DefaultMutableTreeNode root)
setTreeCellRenderer(javax.swing.tree.TreeCellRenderer)
to
set a new one.
UIManager.put("Tree.hash", Color.white);
return new JTree(root);
root
- protected void configureTree(javax.swing.JTree tree)
tree.setToggleClickCount(1);
tree.setCellRenderer(createTreeCellRenderer());
tree.setRootVisible(false);
tree.setShowsRootHandles(false);
tree.addTreeSelectionListener(new TreeSelectionListener() {
public void valueChanged(TreeSelectionEvent e) {
if (tree.getSelectionPath() == null) {
return;
}
DefaultMutableTreeNode treeNode = (DefaultMutableTreeNode)
tree.getSelectionPath().getLastPathComponent();
// comment this while block if you want the parent page shows its own page instead
of
showing its first child page.
while (!treeNode.isLeaf()) {
final DefaultMutableTreeNode tn = treeNode;
Runnable runnable = new Runnable() {
public void run() {
tree.expandPath(new TreePath(tn.getPath()));
}
};
SwingUtilities.invokeLater(runnable);
treeNode = (DefaultMutableTreeNode) treeNode.getChildAt(0);
}
if (treeNode != null) {
Object userObject = treeNode.getUserObject();
if (userObject instanceof AbstractDialogPage) {
setCurrentPage((AbstractDialogPage) userObject, tree);
}
}
}
});
tree
- protected javax.swing.JList createList(javax.swing.DefaultListModel listModel)
setListCellRenderer(javax.swing.ListCellRenderer)
to set a
new one.
JList list = new JList(listModel);
list.setCellRenderer(createListCellRenderer());
return list;
listModel
- protected javax.swing.JComponent createIconPanel()
protected ButtonPanel createIconButtonPanel()
new
ScrollableButtonPanel(SwingConstants.TOP, ButtonPanel.SAME_SIZE)
.protected JideButton createIconButton(java.lang.String title, javax.swing.Icon icon)
title
- icon
- public int getStyle()
public void setStyle(int style)
style
- It must be one of the following: TAB_STYLE, ICON_STYLE, LIST_STYLE or TREE_STYLE.public javax.swing.JComponent getIndexPanel()
public javax.swing.JComponent getPagesPanel()
protected javax.swing.tree.TreeCellRenderer getTreeCellRenderer()
public void setTreeCellRenderer(javax.swing.tree.TreeCellRenderer treeCellRenderer)
treeCellRenderer
- protected javax.swing.ListCellRenderer getListCellRenderer()
public void setListCellRenderer(javax.swing.ListCellRenderer listCellRenderer)
listCellRenderer
- protected javax.swing.ListCellRenderer createListCellRenderer()
protected javax.swing.tree.TreeCellRenderer createTreeCellRenderer()
public java.lang.String getInitialPageTitle()
public void setInitialPageTitle(java.lang.String initialPageTitle)
initialPageTitle
-