JIDE 3.5.15

com.jidesoft.dialog
Class StandardDialogPane

java.lang.Object
  extended by java.awt.Component
      extended by java.awt.Container
          extended by javax.swing.JComponent
              extended by javax.swing.JPanel
                  extended by com.jidesoft.dialog.StandardDialogPane
All Implemented Interfaces:
ButtonNames, ImageObserver, MenuContainer, Serializable, Accessible
Direct Known Subclasses:
AggregateTableSettingsPanel, MultiplePageDialogPane, StandardDialog.DefaultStandardDialogPane, TipOfTheDayDialogPane, WizardDialogPane

public abstract class StandardDialogPane
extends JPanel
implements ButtonNames

StandardDialogPane is the content pane of StandardDialog. It can also be used when you want the template of StandardDialog but you don't want to use JDialog.

This class is abstract. Subclasses need to implement createBannerPanel(), createButtonPanel() and createContentPanel()

StandardDialogPane has lazy loading feature. So when you are done setup the page list, you need to call initComponents() to initialize everything. This method will be called automatically if the dialog pane is added to StandardDialog. Basically, if you want to add StandardDialogPane without StandardDialog, the following code are required for the pane to be ready to add to its parent container.

 pane = new StandardDialogPane() {
     public JComponent createBannerPanel() {
         return null;
     }
 

public JComponent createContentPanel() { return null; }

public ButtonPanel createButtonPanel() { return null; } }; pane.initComponents();

See Also:
Serialized Form

Nested Class Summary
 
Nested classes/interfaces inherited from class javax.swing.JPanel
JPanel.AccessibleJPanel
 
Nested classes/interfaces inherited from class javax.swing.JComponent
JComponent.AccessibleJComponent
 
Nested classes/interfaces inherited from class java.awt.Container
Container.AccessibleAWTContainer
 
Nested classes/interfaces inherited from class java.awt.Component
Component.AccessibleAWTComponent, Component.BaselineResizeBehavior, Component.BltBufferStrategy, Component.FlipBufferStrategy
 
Field Summary
protected  JComponent _bannerPanel
           
protected  ButtonPanel _buttonPanel
           
protected  JComponent _contentPanel
           
static String PROPERTY_CANCEL_ACTION
           
static String PROPERTY_DEFAULT_ACTION
           
 
Fields inherited from class javax.swing.JComponent
accessibleContext, listenerList, TOOL_TIP_TEXT_KEY, ui, UNDEFINED_CONDITION, WHEN_ANCESTOR_OF_FOCUSED_COMPONENT, WHEN_FOCUSED, WHEN_IN_FOCUSED_WINDOW
 
Fields inherited from class java.awt.Component
BOTTOM_ALIGNMENT, CENTER_ALIGNMENT, LEFT_ALIGNMENT, RIGHT_ALIGNMENT, TOP_ALIGNMENT
 
Fields inherited from interface com.jidesoft.dialog.ButtonNames
APPLY, BACK, BROWSE, CANCEL, CLEAR, CLOSE, DETAILS, EDIT, EXIT, FIND, FIND_NEXT, FINISH, FORWARD, HELP, NEW, NEXT, NO, OK, OPEN, PRINT, REPLACE, RESET, RETRY, RUN, SAVE, SAVE_AS, STOP, YES
 
Fields inherited from interface java.awt.image.ImageObserver
ABORT, ALLBITS, ERROR, FRAMEBITS, HEIGHT, PROPERTIES, SOMEBITS, WIDTH
 
Constructor Summary
StandardDialogPane()
           
 
Method Summary
abstract  JComponent createBannerPanel()
          Subclasses should implement this method to create the banner panel.
abstract  ButtonPanel createButtonPanel()
          Subclasses should implement this method to create the button panel.
abstract  JComponent createContentPanel()
          Subclasses should implement this method to create the content panel.
 JComponent getBannerPanel()
          Gets the banner panel created by createBannerPanel.
 ButtonPanel getButtonPanel()
          Gets the banner panel created by createButtonPanel.
 JComponent getContentPanel()
          Gets the banner panel created by createContentPanel.
 Action getDefaultAction()
          Gets the default action.
 Action getDefaultCancelAction()
          Get default cancel action.
 Component getInitFocusedComponent()
          Gets the initial focused component when dialog is shown.
 void initComponents()
          Call three createXxxPanel methods and layout them using BorderLayout.
protected  void layoutComponents(Component bannerPanel, Component contentPanel, ButtonPanel buttonPanel)
          Setups the layout for the three panels - banner panel, content panel and button panel.
 void setDefaultAction(Action defaultAction)
          Sets the default action.
 void setDefaultCancelAction(Action defaultCancelAction)
          Set default cancel action.
 void setInitFocusedComponent(Component initFocusedComponent)
          Sets the initial focused component when dialog is shown.
 
Methods inherited from class javax.swing.JPanel
getAccessibleContext, getUI, getUIClassID, paramString, setUI, updateUI
 
Methods inherited from class javax.swing.JComponent
addAncestorListener, addNotify, addVetoableChangeListener, computeVisibleRect, contains, createToolTip, disable, enable, firePropertyChange, firePropertyChange, firePropertyChange, fireVetoableChange, getActionForKeyStroke, getActionMap, getAlignmentX, getAlignmentY, getAncestorListeners, getAutoscrolls, getBaseline, getBaselineResizeBehavior, getBorder, getBounds, getClientProperty, getComponentGraphics, getComponentPopupMenu, getConditionForKeyStroke, getDebugGraphicsOptions, getDefaultLocale, getFontMetrics, getGraphics, getHeight, getInheritsPopupMenu, getInputMap, getInputMap, getInputVerifier, getInsets, getInsets, getListeners, getLocation, getMaximumSize, getMinimumSize, getNextFocusableComponent, getPopupLocation, getPreferredSize, getRegisteredKeyStrokes, getRootPane, getSize, getToolTipLocation, getToolTipText, getToolTipText, getTopLevelAncestor, getTransferHandler, getVerifyInputWhenFocusTarget, getVetoableChangeListeners, getVisibleRect, getWidth, getX, getY, grabFocus, isDoubleBuffered, isLightweightComponent, isManagingFocus, isOpaque, isOptimizedDrawingEnabled, isPaintingForPrint, isPaintingTile, isRequestFocusEnabled, isValidateRoot, paint, paintBorder, paintChildren, paintComponent, paintImmediately, paintImmediately, print, printAll, printBorder, printChildren, printComponent, processComponentKeyEvent, processKeyBinding, processKeyEvent, processMouseEvent, processMouseMotionEvent, putClientProperty, registerKeyboardAction, registerKeyboardAction, removeAncestorListener, removeNotify, removeVetoableChangeListener, repaint, repaint, requestDefaultFocus, requestFocus, requestFocus, requestFocusInWindow, requestFocusInWindow, resetKeyboardActions, reshape, revalidate, scrollRectToVisible, setActionMap, setAlignmentX, setAlignmentY, setAutoscrolls, setBackground, setBorder, setComponentPopupMenu, setDebugGraphicsOptions, setDefaultLocale, setDoubleBuffered, setEnabled, setFocusTraversalKeys, setFont, setForeground, setInheritsPopupMenu, setInputMap, setInputVerifier, setMaximumSize, setMinimumSize, setNextFocusableComponent, setOpaque, setPreferredSize, setRequestFocusEnabled, setToolTipText, setTransferHandler, setUI, setVerifyInputWhenFocusTarget, setVisible, unregisterKeyboardAction, update
 
Methods inherited from class java.awt.Container
add, add, add, add, add, addContainerListener, addImpl, addPropertyChangeListener, addPropertyChangeListener, applyComponentOrientation, areFocusTraversalKeysSet, countComponents, deliverEvent, doLayout, findComponentAt, findComponentAt, getComponent, getComponentAt, getComponentAt, getComponentCount, getComponents, getComponentZOrder, getContainerListeners, getFocusTraversalKeys, getFocusTraversalPolicy, getLayout, getMousePosition, insets, invalidate, isAncestorOf, isFocusCycleRoot, isFocusCycleRoot, isFocusTraversalPolicyProvider, isFocusTraversalPolicySet, layout, list, list, locate, minimumSize, paintComponents, preferredSize, printComponents, processContainerEvent, processEvent, remove, remove, removeAll, removeContainerListener, setComponentZOrder, setFocusCycleRoot, setFocusTraversalPolicy, setFocusTraversalPolicyProvider, setLayout, transferFocusBackward, transferFocusDownCycle, validate, validateTree
 
Methods inherited from class java.awt.Component
action, add, addComponentListener, addFocusListener, addHierarchyBoundsListener, addHierarchyListener, addInputMethodListener, addKeyListener, addMouseListener, addMouseMotionListener, addMouseWheelListener, bounds, checkImage, checkImage, coalesceEvents, contains, createImage, createImage, createVolatileImage, createVolatileImage, disableEvents, dispatchEvent, enable, enableEvents, enableInputMethods, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, getBackground, getBounds, getColorModel, getComponentListeners, getComponentOrientation, getCursor, getDropTarget, getFocusCycleRootAncestor, getFocusListeners, getFocusTraversalKeysEnabled, getFont, getForeground, getGraphicsConfiguration, getHierarchyBoundsListeners, getHierarchyListeners, getIgnoreRepaint, getInputContext, getInputMethodListeners, getInputMethodRequests, getKeyListeners, getLocale, getLocation, getLocationOnScreen, getMouseListeners, getMouseMotionListeners, getMousePosition, getMouseWheelListeners, getName, getParent, getPeer, getPropertyChangeListeners, getPropertyChangeListeners, getSize, getToolkit, getTreeLock, gotFocus, handleEvent, hasFocus, hide, imageUpdate, inside, isBackgroundSet, isCursorSet, isDisplayable, isEnabled, isFocusable, isFocusOwner, isFocusTraversable, isFontSet, isForegroundSet, isLightweight, isMaximumSizeSet, isMinimumSizeSet, isPreferredSizeSet, isShowing, isValid, isVisible, keyDown, keyUp, list, list, list, location, lostFocus, mouseDown, mouseDrag, mouseEnter, mouseExit, mouseMove, mouseUp, move, nextFocus, paintAll, postEvent, prepareImage, prepareImage, processComponentEvent, processFocusEvent, processHierarchyBoundsEvent, processHierarchyEvent, processInputMethodEvent, processMouseWheelEvent, remove, removeComponentListener, removeFocusListener, removeHierarchyBoundsListener, removeHierarchyListener, removeInputMethodListener, removeKeyListener, removeMouseListener, removeMouseMotionListener, removeMouseWheelListener, removePropertyChangeListener, removePropertyChangeListener, repaint, repaint, repaint, resize, resize, setBounds, setBounds, setComponentOrientation, setCursor, setDropTarget, setFocusable, setFocusTraversalKeysEnabled, setIgnoreRepaint, setLocale, setLocation, setLocation, setName, setSize, setSize, show, show, size, toString, transferFocus, transferFocusUpCycle
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Field Detail

_bannerPanel

protected JComponent _bannerPanel

_contentPanel

protected JComponent _contentPanel

_buttonPanel

protected ButtonPanel _buttonPanel

PROPERTY_CANCEL_ACTION

public static final String PROPERTY_CANCEL_ACTION
See Also:
Constant Field Values

PROPERTY_DEFAULT_ACTION

public static final String PROPERTY_DEFAULT_ACTION
See Also:
Constant Field Values
Constructor Detail

StandardDialogPane

public StandardDialogPane()
                   throws HeadlessException
Throws:
HeadlessException
Method Detail

getDefaultCancelAction

public Action getDefaultCancelAction()
Get default cancel action. Default cancel action will be triggered when ESC is pressed.

Returns:
the default cancel action

setDefaultCancelAction

public void setDefaultCancelAction(Action defaultCancelAction)
Set default cancel action. Default cancel action will be triggered when ESC is pressed.

Parameters:
defaultCancelAction - the default cancel action

getDefaultAction

public Action getDefaultAction()
Gets the default action. Default action will be trigger when ENTEY key is pressed.

Returns:
the default action.

setDefaultAction

public void setDefaultAction(Action defaultAction)
Sets the default action. Default action will be trigger when ENTEY key is pressed.

Parameters:
defaultAction - the default action.

initComponents

public void initComponents()
Call three createXxxPanel methods and layout them using BorderLayout. By default, banner panel, content panel and button panel are added to NORTH, CENTER and SOUTH of BorderLayout respectively.

You can override this method if you want to layout them in another way.


layoutComponents

protected void layoutComponents(Component bannerPanel,
                                Component contentPanel,
                                ButtonPanel buttonPanel)
Setups the layout for the three panels - banner panel, content panel and button panel. By default, we will use BorderLayout, put the content panel in the middle, banner panel on the top and button panel either right or bottom depending on its alignment.

Subclass can override it to do your own layout. The three panels are the three parameters.

Parameters:
bannerPanel - the banner panel
contentPanel - the content panel
buttonPanel - the button panel

getInitFocusedComponent

public Component getInitFocusedComponent()
Gets the initial focused component when dialog is shown.

Returns:
the initial focused component

setInitFocusedComponent

public void setInitFocusedComponent(Component initFocusedComponent)
Sets the initial focused component when dialog is shown.

Parameters:
initFocusedComponent - the initial focused component

getBannerPanel

public JComponent getBannerPanel()
Gets the banner panel created by createBannerPanel.

Returns:
the banner panel.

getContentPanel

public JComponent getContentPanel()
Gets the banner panel created by createContentPanel.

Returns:
the content panel.

getButtonPanel

public ButtonPanel getButtonPanel()
Gets the banner panel created by createButtonPanel.

Returns:
the button panel.

createBannerPanel

public abstract JComponent createBannerPanel()
Subclasses should implement this method to create the banner panel. By default banner panel will appear on top of the dialog unless you override initComponent() method. Banner panel is really used to balance the layout of dialog to make the dialog looking good. However it can be used to show some help text. It is highly recommended to use our BannerPanel

If subclass doesn't want to have a banner panel, just return null.

Returns:
the banner panel.

createContentPanel

public abstract JComponent createContentPanel()
Subclasses should implement this method to create the content panel. This is the main panel of the dialog which will be added to the center of the dialog. Subclass should never return null.

Returns:
the content panel.

createButtonPanel

public abstract ButtonPanel createButtonPanel()
Subclasses should implement this method to create the button panel. 90% of dialogs have buttons. It is highly recommended to use our ButtonPanel.

Returns:
the button panel.
See Also:
ButtonPanel

JIDE 3.5.15