Package adams.gui.core
Class BaseDialog
- java.lang.Object
-
- java.awt.Component
-
- java.awt.Container
-
- java.awt.Window
-
- java.awt.Dialog
-
- javax.swing.JDialog
-
- adams.gui.core.BaseDialog
-
- All Implemented Interfaces:
ImageObserver
,MenuContainer
,Serializable
,Accessible
,RootPaneContainer
,WindowConstants
- Direct Known Subclasses:
AbstractScriptingDialog
,ComposeEmailDialog
,DatabaseConnectionDialog
,DatabaseConnectionsDialog
,DialogWithButtons
,FilterDialog
,FlowEditorDialog
,GenericArrayEditorDialog
,GenericObjectEditorDialog
,HistogramFactory.Dialog
,InformativeStatisticFactory.Dialog
,LoadDatasetDialog
,LoadSpreadSheetDialog
,NotesFactory.Dialog
,PreviewBrowserDialog
,ReportFactory.Dialog
,ReportFactory.StandardsDialog
,SimplePreviewBrowserDialog
,TextDialog
,TimeseriesImportDatabaseDialog
,WekaGenericArrayEditorDialog
,WekaGenericObjectEditorDialog
public class BaseDialog extends JDialog
A dialog that loads the size and location from the props file automatically.
Calling code needs to dispose the dialog manually or enable automatic disposal:BaseDialog dialog = new ... dialog.setDefaultCloseOperation(BaseDialog.DISPOSE_ON_CLOSE);
- Author:
- fracpete (fracpete at waikato dot ac dot nz)
- See Also:
- Serialized Form
-
-
Nested Class Summary
-
Nested classes/interfaces inherited from class javax.swing.JDialog
JDialog.AccessibleJDialog
-
Nested classes/interfaces inherited from class java.awt.Dialog
Dialog.AccessibleAWTDialog, Dialog.ModalExclusionType, Dialog.ModalityType
-
Nested classes/interfaces inherited from class java.awt.Window
Window.AccessibleAWTWindow, Window.Type
-
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
Fields Modifier and Type Field Description protected Set<Runnable>
m_AfterHideActions
the actions to execute after the dialog has been hidden.protected Set<Runnable>
m_AfterShowActions
the actions to execute after the dialog has been made visible.protected Set<Runnable>
m_BeforeHideActions
the actions to execute before the dialog is hidden.protected Set<Runnable>
m_BeforeShowActions
the actions to execute before the dialog is made visible.protected boolean
m_DisposeCalled
whether the dispose method has been called already manually.protected boolean
m_UISettingsApplied
whether UI settings were applied.protected String
m_UISettingsPrefix
the UI settings prefix to use.protected boolean
m_UISettingsStored
whether the UI settings got stored.-
Fields inherited from class javax.swing.JDialog
accessibleContext, rootPane, rootPaneCheckingEnabled
-
Fields inherited from class java.awt.Dialog
DEFAULT_MODALITY_TYPE
-
Fields inherited from class java.awt.Component
BOTTOM_ALIGNMENT, CENTER_ALIGNMENT, LEFT_ALIGNMENT, RIGHT_ALIGNMENT, TOP_ALIGNMENT
-
Fields inherited from interface java.awt.image.ImageObserver
ABORT, ALLBITS, ERROR, FRAMEBITS, HEIGHT, PROPERTIES, SOMEBITS, WIDTH
-
Fields inherited from interface javax.swing.WindowConstants
DISPOSE_ON_CLOSE, DO_NOTHING_ON_CLOSE, EXIT_ON_CLOSE, HIDE_ON_CLOSE
-
-
Constructor Summary
Constructors Constructor Description BaseDialog()
Creates a modeless dialog without a title and without a specified Frame owner.BaseDialog(Dialog owner)
Creates a modeless dialog without a title with the specified Dialog as its owner.BaseDialog(Dialog owner, Dialog.ModalityType modality)
Creates a dialog with the specified owner Dialog and modality.BaseDialog(Dialog owner, String title)
Creates a modeless dialog with the specified title and with the specified owner dialog.BaseDialog(Dialog owner, String title, Dialog.ModalityType modality)
Creates a dialog with the specified title, modality and the specified owner Dialog.BaseDialog(Frame owner)
Creates a modeless dialog without a title with the specified Frame as its owner.BaseDialog(Frame owner, boolean modal)
Creates a dialog with the specified owner Frame, modality and an empty title.BaseDialog(Frame owner, String title)
Creates a modeless dialog with the specified title and with the specified owner frame.BaseDialog(Frame owner, String title, boolean modal)
Creates a dialog with the specified owner Frame, modality and title.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description void
addAfterHideAction(Runnable r)
Adds the specified action to the list of actions to execute after hiding the dialog.void
addAfterShowAction(Runnable r)
Adds the specified action to the list of actions to execute after showing the dialog.void
addBeforeHideAction(Runnable r)
Adds the specified action to the list of actions to execute before hiding the dialog.void
addBeforeShowAction(Runnable r)
Adds the specified action to the list of actions to execute before showing the dialog.protected void
afterHide()
Hook method just after the dialog was hidden.protected void
afterShow()
Hook method just after the dialog was made visible.void
applyUISettings()
Applies any UI settings if present.protected void
beforeHide()
Hook method just before the dialog is hidden.protected void
beforeShow()
Hook method just before the dialog is made visible.void
dispose()
de-registers the child frame with the parent first.protected void
executeAfterHideActions()
Places the after hide actions on the swing queue.protected void
executeAfterShowActions()
Places the after show actions on the swing queue.protected void
executeBeforeHideActions()
Places the before hide actions on the swing queue.protected void
executeBeforeShowActions()
Places the before show actions on the swing queue.protected void
finishInit()
finishes the initialization, by setting size/location.boolean
getUISettingsApplied()
Returns whether UI settings were applied.String
getUISettingsPrefix()
Returns the prefix for the UI settings.protected void
initGUI()
For initializing the GUI.protected void
initialize()
For initializing members.void
pack(Dimension min, Dimension max)
Packs the dialog with optional min/max dimensions.void
removeAfterHideAction(Runnable r)
Removes the specified action to the list of actions to execute after hiding the dialog.void
removeAfterShowAction(Runnable r)
Removes the specified action to the list of actions to execute after showing the dialog.void
removeBeforeHideAction(Runnable r)
Removes the specified action to the list of actions to execute before hiding the dialog.void
removeBeforeShowAction(Runnable r)
Removes the specified action to the list of actions to execute before showing the dialog.void
setLocationRelativeTo(Component c)
Sets the location relative to this component, but adjust window size and position if necessary.void
setUISettingsPrefix(Class cls)
Sets the prefix for the UI settings (eg stores width/height).void
setUISettingsPrefix(String value)
Sets the prefix for the UI settings (eg stores width/height).void
setVisible(boolean value)
closes/shows the dialog.void
storeUISettings()
Stores the UI settings.-
Methods inherited from class javax.swing.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 java.awt.Dialog
addNotify, getModalityType, getTitle, hide, isModal, isResizable, isUndecorated, setBackground, setModal, setModalityType, setOpacity, setResizable, setShape, setTitle, setUndecorated, show, toBack
-
Methods inherited from class java.awt.Window
addPropertyChangeListener, addPropertyChangeListener, addWindowFocusListener, addWindowListener, addWindowStateListener, applyResourceBundle, applyResourceBundle, createBufferStrategy, createBufferStrategy, 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, setMinimumSize, setModalExclusionType, setSize, setSize, setType, toFront
-
Methods inherited from class java.awt.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 java.awt.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
-
-
-
-
Field Detail
-
m_DisposeCalled
protected boolean m_DisposeCalled
whether the dispose method has been called already manually.
-
m_UISettingsPrefix
protected String m_UISettingsPrefix
the UI settings prefix to use.
-
m_UISettingsStored
protected boolean m_UISettingsStored
whether the UI settings got stored.
-
m_UISettingsApplied
protected boolean m_UISettingsApplied
whether UI settings were applied.
-
m_BeforeShowActions
protected Set<Runnable> m_BeforeShowActions
the actions to execute before the dialog is made visible.
-
m_BeforeHideActions
protected Set<Runnable> m_BeforeHideActions
the actions to execute before the dialog is hidden.
-
m_AfterShowActions
protected Set<Runnable> m_AfterShowActions
the actions to execute after the dialog has been made visible.
-
-
Constructor Detail
-
BaseDialog
public BaseDialog()
Creates a modeless dialog without a title and without a specified Frame owner.
-
BaseDialog
public BaseDialog(Dialog owner)
Creates a modeless dialog without a title with the specified Dialog as its owner.- Parameters:
owner
- the owning dialog
-
BaseDialog
public BaseDialog(Dialog owner, Dialog.ModalityType modality)
Creates a dialog with the specified owner Dialog and modality.- Parameters:
owner
- the owning dialogmodality
- the type of modality
-
BaseDialog
public BaseDialog(Dialog owner, String title)
Creates a modeless dialog with the specified title and with the specified owner dialog.- Parameters:
owner
- the owning dialogtitle
- the title of the dialog
-
BaseDialog
public BaseDialog(Dialog owner, String title, Dialog.ModalityType modality)
Creates a dialog with the specified title, modality and the specified owner Dialog.- Parameters:
owner
- the owning dialogtitle
- the title of the dialogmodality
- the type of modality
-
BaseDialog
public BaseDialog(Frame owner)
Creates a modeless dialog without a title with the specified Frame as its owner.- Parameters:
owner
- the owning frame
-
BaseDialog
public BaseDialog(Frame owner, boolean modal)
Creates a dialog with the specified owner Frame, modality and an empty title.- Parameters:
owner
- the owning framemodal
- whether the dialog is modal or not
-
BaseDialog
public BaseDialog(Frame owner, String title)
Creates a modeless dialog with the specified title and with the specified owner frame.- Parameters:
owner
- the owning frametitle
- the title of the dialog
-
-
Method Detail
-
initialize
protected void initialize()
For initializing members.
-
initGUI
protected void initGUI()
For initializing the GUI.
-
finishInit
protected void finishInit()
finishes the initialization, by setting size/location.
-
setUISettingsPrefix
public void setUISettingsPrefix(Class cls)
Sets the prefix for the UI settings (eg stores width/height).- Parameters:
cls
- the class to use as prefix, ignored if null or empty
-
setUISettingsPrefix
public void setUISettingsPrefix(String value)
Sets the prefix for the UI settings (eg stores width/height).- Parameters:
value
- the prefix, ignored if null or empty
-
getUISettingsPrefix
public String getUISettingsPrefix()
Returns the prefix for the UI settings.- Returns:
- the prefix, empty if ignored
-
getUISettingsApplied
public boolean getUISettingsApplied()
Returns whether UI settings were applied. E.g., to determine whether still necessary to set default dimensions/location.- Returns:
- true if applied
-
applyUISettings
public void applyUISettings()
Applies any UI settings if present.
-
storeUISettings
public void storeUISettings()
Stores the UI settings.
-
beforeShow
protected void beforeShow()
Hook method just before the dialog is made visible.
-
afterShow
protected void afterShow()
Hook method just after the dialog was made visible.
-
beforeHide
protected void beforeHide()
Hook method just before the dialog is hidden.
-
afterHide
protected void afterHide()
Hook method just after the dialog was hidden.
-
setVisible
public void setVisible(boolean value)
closes/shows the dialog.- Overrides:
setVisible
in classDialog
- Parameters:
value
- if true then display the dialog, otherwise close it
-
dispose
public void dispose()
de-registers the child frame with the parent first.
-
setLocationRelativeTo
public void setLocationRelativeTo(Component c)
Sets the location relative to this component, but adjust window size and position if necessary.- Overrides:
setLocationRelativeTo
in classWindow
- Parameters:
c
- the component to position the window relative to
-
pack
public void pack(Dimension min, Dimension max)
Packs the dialog with optional min/max dimensions.- Parameters:
min
- the minimum dimensions, ignored if nullmax
- the maximum dimensions, ignored if null
-
addAfterShowAction
public void addAfterShowAction(Runnable r)
Adds the specified action to the list of actions to execute after showing the dialog.- Parameters:
r
- the action to run
-
removeAfterShowAction
public void removeAfterShowAction(Runnable r)
Removes the specified action to the list of actions to execute after showing the dialog.- Parameters:
r
- the action to run
-
executeAfterShowActions
protected void executeAfterShowActions()
Places the after show actions on the swing queue.
-
addAfterHideAction
public void addAfterHideAction(Runnable r)
Adds the specified action to the list of actions to execute after hiding the dialog.- Parameters:
r
- the action to run
-
removeAfterHideAction
public void removeAfterHideAction(Runnable r)
Removes the specified action to the list of actions to execute after hiding the dialog.- Parameters:
r
- the action to run
-
executeAfterHideActions
protected void executeAfterHideActions()
Places the after hide actions on the swing queue.
-
addBeforeShowAction
public void addBeforeShowAction(Runnable r)
Adds the specified action to the list of actions to execute before showing the dialog.- Parameters:
r
- the action to run
-
removeBeforeShowAction
public void removeBeforeShowAction(Runnable r)
Removes the specified action to the list of actions to execute before showing the dialog.- Parameters:
r
- the action to run
-
executeBeforeShowActions
protected void executeBeforeShowActions()
Places the before show actions on the swing queue.
-
addBeforeHideAction
public void addBeforeHideAction(Runnable r)
Adds the specified action to the list of actions to execute before hiding the dialog.- Parameters:
r
- the action to run
-
removeBeforeHideAction
public void removeBeforeHideAction(Runnable r)
Removes the specified action to the list of actions to execute before hiding the dialog.- Parameters:
r
- the action to run
-
executeBeforeHideActions
protected void executeBeforeHideActions()
Places the before hide actions on the swing queue.
-
-