Class AbstractSimpleDialog

  • All Implemented Interfaces:
    ImageObserver, MenuContainer, Serializable, Accessible, RootPaneContainer, WindowConstants
    Direct Known Subclasses:
    JAboutDialog

    public abstract class AbstractSimpleDialog
    extends JDialog
    An abstract base class for simple dialogs with a single control panel (supplied by the sub-class) together with OK and Cancel buttons. The sub-class must implement the createControlPanel() and onOK() methods.
    Since:
    2.7
    Author:
    Michael Bedward
    See Also:
    Serialized Form
    • Nested Class Summary

      • Nested classes/interfaces inherited from class JDialog

        JDialog.AccessibleJDialog
      • Nested classes/interfaces inherited from class Dialog

        Dialog.AccessibleAWTDialog, Dialog.ModalExclusionType, Dialog.ModalityType
      • Nested classes/interfaces inherited from class Window

        Window.AccessibleAWTWindow, Window.Type
      • Nested classes/interfaces inherited from class Container

        Container.AccessibleAWTContainer
      • Nested classes/interfaces inherited from class Component

        Component.AccessibleAWTComponent, Component.BaselineResizeBehavior, Component.BltBufferStrategy, Component.FlipBufferStrategy
    • Field Summary

      • Fields inherited from class JDialog

        accessibleContext, rootPane, rootPaneCheckingEnabled
      • Fields inherited from class Dialog

        DEFAULT_MODALITY_TYPE
      • Fields inherited from class Component

        BOTTOM_ALIGNMENT, CENTER_ALIGNMENT, LEFT_ALIGNMENT, RIGHT_ALIGNMENT, TOP_ALIGNMENT
      • Fields inherited from interface ImageObserver

        ABORT, ALLBITS, ERROR, FRAMEBITS, HEIGHT, PROPERTIES, SOMEBITS, WIDTH
      • Fields inherited from interface WindowConstants

        DISPOSE_ON_CLOSE, DO_NOTHING_ON_CLOSE, EXIT_ON_CLOSE, HIDE_ON_CLOSE
    • Constructor Summary

      Constructors 
      Constructor Description
      AbstractSimpleDialog​(String title)
      Creates a new modal, non-resizable dialog with a null parent.
      AbstractSimpleDialog​(JDialog parent, String title)
      Creates a new modal, non-resizable dialog.
      AbstractSimpleDialog​(JDialog parent, String title, boolean modal, boolean resizable)
      Creates a new modal, non-resizable dialog.
      AbstractSimpleDialog​(JFrame parent, String title)
      Creates a new modal, non-resizable dialog.
      AbstractSimpleDialog​(JFrame parent, String title, boolean modal, boolean resizable)
      Creates a new modal, non-resizable dialog.
    • Method Summary

      All Methods Instance Methods Abstract Methods Concrete Methods 
      Modifier and Type Method Description
      void closeDialog()
      Close the dialog using a call to Window.dispose().
      protected JPanel createButtonPanel()
      Creates the OK and Cancel buttons on a panel.
      abstract JPanel createControlPanel()
      Implemented by the sub-class to provide a panel with controls.
      protected void initComponents()
      Creates the main control panel and components.
      void onCancel()
      Called when the cancel button is pressed.
      abstract void onOK()
      Implemented by the sub-class to respond to the OK button.
      void setVisible​(boolean b)
      • Methods inherited from class JDialog

        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
      • Methods inherited from class Dialog

        addNotify, getModalityType, getTitle, hide, isModal, isResizable, isUndecorated, setBackground, setModal, setModalityType, setOpacity, setResizable, setShape, setTitle, setUndecorated, show, toBack
      • Methods inherited from class Window

        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, pack, 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
      • Methods inherited from class Container

        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
      • Methods inherited from class Component

        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, 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, requestFocus, requestFocus, requestFocusInWindow, requestFocusInWindow, requestFocusInWindow, resize, resize, revalidate, setComponentOrientation, setDropTarget, setEnabled, setFocusable, setFocusTraversalKeysEnabled, setForeground, setIgnoreRepaint, setLocale, setMaximumSize, setMixingCutoutShape, setName, setPreferredSize, show, size, toString, transferFocus, transferFocusBackward, transferFocusUpCycle
      • Methods inherited from class Object

        clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
    • Constructor Detail

      • AbstractSimpleDialog

        public AbstractSimpleDialog​(String title)
        Creates a new modal, non-resizable dialog with a null parent.
        Parameters:
        title - dialog title
      • AbstractSimpleDialog

        public AbstractSimpleDialog​(JFrame parent,
                                    String title)
        Creates a new modal, non-resizable dialog.
        Parameters:
        parent - parent frame
        title - dialog title
      • AbstractSimpleDialog

        public AbstractSimpleDialog​(JDialog parent,
                                    String title)
        Creates a new modal, non-resizable dialog.
        Parameters:
        parent - parent dialog
        title - dialog title
      • AbstractSimpleDialog

        public AbstractSimpleDialog​(JFrame parent,
                                    String title,
                                    boolean modal,
                                    boolean resizable)
        Creates a new modal, non-resizable dialog.
        Parameters:
        parent - parent frame
        title - dialog title
        modal - whether to make the dialog application modal
        resizable - whether to make the dialog resizable
      • AbstractSimpleDialog

        public AbstractSimpleDialog​(JDialog parent,
                                    String title,
                                    boolean modal,
                                    boolean resizable)
        Creates a new modal, non-resizable dialog.
        Parameters:
        parent - parent dialog
        title - dialog title
        modal - whether to make the dialog application modal
        resizable - whether to make the dialog resizable
    • Method Detail

      • setVisible

        public void setVisible​(boolean b)
        Overrides:
        setVisible in class Dialog
      • initComponents

        protected void initComponents()
        Creates the main control panel and components. This must be called by the sub-class. We do this to give sub-classes the chance to initialize fields which can be used within createControlPanel() (called as part of this method).
      • createControlPanel

        public abstract JPanel createControlPanel()
        Implemented by the sub-class to provide a panel with controls.
        Returns:
        panel with controls
      • onOK

        public abstract void onOK()
        Implemented by the sub-class to respond to the OK button.
      • onCancel

        public void onCancel()
        Called when the cancel button is pressed. The base implementation simply closes (disposes) the dialog.
      • closeDialog

        public void closeDialog()
        Close the dialog using a call to Window.dispose().
      • createButtonPanel

        protected JPanel createButtonPanel()
        Creates the OK and Cancel buttons on a panel.
        Returns:
        the button panel