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_AfterHideActionsthe actions to execute after the dialog has been hidden.protected Set<Runnable>m_AfterShowActionsthe actions to execute after the dialog has been made visible.protected Set<Runnable>m_BeforeHideActionsthe actions to execute before the dialog is hidden.protected Set<Runnable>m_BeforeShowActionsthe actions to execute before the dialog is made visible.protected booleanm_DisposeCalledwhether the dispose method has been called already manually.protected Pointm_LocationBeforeMaximizethe position of the dialog before maximizing it.protected Dimensionm_SizeBeforeMaximizethe dimensions of the dialog before maximizing it.protected booleanm_UISettingsAppliedwhether UI settings were applied.protected Stringm_UISettingsPrefixthe UI settings prefix to use.protected booleanm_UISettingsStoredwhether 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 voidaddAfterHideAction(Runnable r)Adds the specified action to the list of actions to execute after hiding the dialog.voidaddAfterShowAction(Runnable r)Adds the specified action to the list of actions to execute after showing the dialog.voidaddBeforeHideAction(Runnable r)Adds the specified action to the list of actions to execute before hiding the dialog.voidaddBeforeShowAction(Runnable r)Adds the specified action to the list of actions to execute before showing the dialog.protected voidafterHide()Hook method just after the dialog was hidden.protected voidafterShow()Hook method just after the dialog was made visible.voidapplyUISettings()Applies any UI settings if present.protected voidbeforeHide()Hook method just before the dialog is hidden.protected voidbeforeShow()Hook method just before the dialog is made visible.booleancanMaximize()Returns whether the dialog can be maximized, i.e., not yet maximized.booleancanMinimize()Returns whether the dialog can be minimized, i.e., previously maximized.voiddispose()de-registers the child frame with the parent first.protected voidexecuteAfterHideActions()Places the after hide actions on the swing queue.protected voidexecuteAfterShowActions()Places the after show actions on the swing queue.protected voidexecuteBeforeHideActions()Places the before hide actions on the swing queue.protected voidexecuteBeforeShowActions()Places the before show actions on the swing queue.protected voidfinishInit()finishes the initialization, by setting size/location.booleangetUISettingsApplied()Returns whether UI settings were applied.StringgetUISettingsPrefix()Returns the prefix for the UI settings.protected voidinitGUI()For initializing the GUI.protected voidinitialize()For initializing members.voidmaximize()Maximizes the dialog.voidminimize()Minimizes the dialog.voidpack(Dimension min, Dimension max)Packs the dialog with optional min/max dimensions.voidremoveAfterHideAction(Runnable r)Removes the specified action to the list of actions to execute after hiding the dialog.voidremoveAfterShowAction(Runnable r)Removes the specified action to the list of actions to execute after showing the dialog.voidremoveBeforeHideAction(Runnable r)Removes the specified action to the list of actions to execute before hiding the dialog.voidremoveBeforeShowAction(Runnable r)Removes the specified action to the list of actions to execute before showing the dialog.voidsetLocationRelativeTo(Component c)Sets the location relative to this component, but adjust window size and position if necessary.voidsetUISettingsPrefix(Class cls)Sets the prefix for the UI settings (eg stores width/height).voidsetUISettingsPrefix(String value)Sets the prefix for the UI settings (eg stores width/height).voidsetVisible(boolean value)closes/shows the dialog.voidstoreUISettings()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.
-
m_AfterHideActions
protected Set<Runnable> m_AfterHideActions
the actions to execute after the dialog has been hidden.
-
m_SizeBeforeMaximize
protected Dimension m_SizeBeforeMaximize
the dimensions of the dialog before maximizing it.
-
m_LocationBeforeMaximize
protected Point m_LocationBeforeMaximize
the position of the dialog before maximizing it.
-
-
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:
setVisiblein 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:
setLocationRelativeToin 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.
-
canMaximize
public boolean canMaximize()
Returns whether the dialog can be maximized, i.e., not yet maximized.- Returns:
- true if it can be maximized
-
maximize
public void maximize()
Maximizes the dialog.
-
canMinimize
public boolean canMinimize()
Returns whether the dialog can be minimized, i.e., previously maximized.- Returns:
- true if it can be minimized
-
minimize
public void minimize()
Minimizes the dialog.
-
-