PamView
Class PamDialog

java.lang.Object
  extended by java.awt.Component
      extended by java.awt.Container
          extended by java.awt.Window
              extended by java.awt.Dialog
                  extended by javax.swing.JDialog
                      extended by PamView.PamDialog
All Implemented Interfaces:
java.awt.image.ImageObserver, java.awt.MenuContainer, java.io.Serializable, javax.accessibility.Accessible, javax.swing.RootPaneContainer, javax.swing.WindowConstants
Direct Known Subclasses:
AcceptMeasurementDialog, AcquisitionDialog, AirgunParametersDialog, AISDisplayDialog, AISSettingsDialog, AmpDialog, AngleCalibrationDialog, AngleVetoDialog, AngleVetoesDialog, AnnotationsPopup, ArrayDialog, BatchFileConversion, BeakedDialog, BeakedLocationDialog, BinaryMapMakingDialog, BinaryStorageDialog, CheckWavFileHeaders, ClassifierTrainingDialog, ClassifierTrainingDialog, ClickClassifyDialog, ClickDisplayDialog, ClickMapDialog, ClickParamsDialog, ClickSpectrumDialog, ClickStorageOptionsDialog, ClickTrainIdDialog, ClickTypeDialog, ClickTypesDialog, DBDialog, DBMapMakingDialog, DecimatorParamsDialog, DeprecatedModuleDialog, DepthDialog, EdgeParamsDialog, EditOfflineEventDialog, EventListDialog, FFTParametersDialog, FFTPluginParamsDialog, FileMapMakingdialog, FilterDataSourceDialog, FilterDialog, FluxgateWorldDialog, GPSParametersDialog, HeightDialog, HydrophoneElementDialog, IshDetParamsDialog, IshLocParamsDialog, KernelSmoothingDialog, LabelClicksDialog, LandmarkDialog, LandmarksDialog, LatLongDialog, LikelihoodDetectionParametersDialog, ListeningDialog, LoadingDataDialog, LoadOptionsDialog, LookupEditDialog, MapCommentDialog, MapDetectionsDialog, MapParametersDialog, MatrixDialog, MccDialog, ModuleOrderDialog, NewModuleDialog, NMEAOutdialog, NMEAParametersDialog, NMEASimDialog, NoiseDialog, NoiseDisplayDialog, OfflienEventViewer, OfflineEventDialog, OfflineEventViewer, OfflineReanalDialog, OLProcessDialog, PamSymbolDialog, PamTipViewer, PatchPanelDialog, PerformanceDialog, PlaybackDialog, RadarParametersDialog, RecorderSettingsDialog, RoccaParametersDialog, SettingsFileDialog, SimObjectDialog, SpectrogramNoiseDialog, SpectrogramParamsDialog, StreamerDialog, SweepClassifierDialog, TerrellaParametersDialog, ThreadingDialog, TimesDialog, TowedArray3DParametersDialog, UserBandDialog, VetoParametersDialog, ViewTimesDialog, VRCalibrationDialog, VRParametersDialog, WaveDisplayDialog, WhistleClassificationDialog, WhistleParametersDialog, WhistleToneDialog, WhitesDialog, WignerPlotdialog, WorkshopParametersDialog

public abstract class PamDialog
extends javax.swing.JDialog

General functionality for PamGuard dialogs. Should be subclassed.

Author:
Doug Gillespie
See Also:
Serialized Form

Nested Class Summary
(package private)  class PamDialog.CancelButtonPressed
           
(package private)  class PamDialog.DefaultButtonPressed
           
(package private)  class PamDialog.DialogWindowAdapter
           
(package private)  class PamDialog.HelpButtonPressed
           
(package private)  class PamDialog.OkButtonPressed
          only closes the dialog if getParams returns true.
 class PamDialog.PopupListener
          Only activated in the smruDev version to provide a quick way of copying dialog displays for help file authoring.
 
Nested classes/interfaces inherited from class javax.swing.JDialog
javax.swing.JDialog.AccessibleJDialog
 
Nested classes/interfaces inherited from class java.awt.Dialog
java.awt.Dialog.AccessibleAWTDialog, java.awt.Dialog.ModalExclusionType, java.awt.Dialog.ModalityType
 
Nested classes/interfaces inherited from class java.awt.Window
java.awt.Window.AccessibleAWTWindow
 
Nested classes/interfaces inherited from class java.awt.Container
java.awt.Container.AccessibleAWTContainer
 
Nested classes/interfaces inherited from class java.awt.Component
java.awt.Component.AccessibleAWTComponent, java.awt.Component.BaselineResizeBehavior, java.awt.Component.BltBufferStrategy, java.awt.Component.FlipBufferStrategy
 
Field Summary
private  javax.swing.JPanel buttonPanel
           
private  javax.swing.JButton cancelButton
           
private  ClipboardCopier clipboardCopier
           
private  javax.swing.JPanel contentPane
           
private  javax.swing.JButton defaultButton
           
private  javax.swing.JButton helpButton
           
private  java.lang.String helpPoint
           
private  javax.swing.JButton okButton
           
private  boolean sendGeneralSettingsNotification
           
static long serialVersionUID
           
private  boolean smruDev
           
private  boolean warnDefaultSetting
           
private  java.lang.String warningTitle
           
 
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 javax.swing.WindowConstants
DISPOSE_ON_CLOSE, DO_NOTHING_ON_CLOSE, EXIT_ON_CLOSE, HIDE_ON_CLOSE
 
Fields inherited from interface java.awt.image.ImageObserver
ABORT, ALLBITS, ERROR, FRAMEBITS, HEIGHT, PROPERTIES, SOMEBITS, WIDTH
 
Constructor Summary
PamDialog(java.awt.Window parentFrame, java.lang.String title, boolean hasDefault)
          Dialogs are always constructed with OK and Cancel buttons.
 
Method Summary
static void addComponent(javax.swing.JPanel panel, java.awt.Component p, java.awt.GridBagConstraints constraints)
           
abstract  void cancelButtonPressed()
          called when the cancel button is pressed before the dialog closes.
 void enableHelpButton(boolean helpOn)
           
static java.lang.String formatDouble(double val)
          Use the standard internal Double formatting to print Double numbers with a minimum, but sensible number of decimal places.
 javax.swing.JPanel getButtonPanel()
           
 javax.swing.JButton getCancelButton()
          getter for cancel button so that you can change it's name from the default value
 javax.swing.JButton getDefaultButton()
           
 javax.swing.JButton getHelpButton()
           
 java.lang.String getHelpPoint()
           
 javax.swing.JButton getOkButton()
          getter for ok button so that you can change it's name from the default value
abstract  boolean getParams()
          called when the Ok button is pressed.
private  javax.swing.JPopupMenu getPopupMenu()
           
 java.lang.String getWarningTitle()
           
 boolean isSendGeneralSettingsNotification()
           
 boolean isWarnDefaultSetting()
           
protected  void okButtonPressed()
           
protected  void positionInFrame(java.awt.Window parentFrame)
           
abstract  void restoreDefaultSettings()
          standard function which should us used to copy default parameters into the dialog controls.
 void restoreDefaultSettingsQ()
          restore default setting ? Check with user before calling restoreDefaultSettings(); Thsi may be overridden if you want to ask a more complex question or offer options at this point.
 void setDialogComponent(javax.swing.JComponent component)
          Used to set the main panel containing dialog controls -
 void setHelpPoint(java.lang.String helpPoint)
          Sets the starting point for Java help.
 void setSendGeneralSettingsNotification(boolean sendGeneralSettingsNotification)
          Tell the Pamguard Controller to send a notification message around ALL program modules, processes and data blocks indicating that some settings have changed.
 void setVisible(boolean visible)
           
 void setWarnDefaultSetting(boolean warnDefaultSetting)
           
 void setWarningTitle(java.lang.String warningTitle)
           
 boolean showWarning(java.lang.String warningText)
          Display a warning message with a default title
 boolean showWarning(java.lang.String warningTitle, java.lang.String warningText)
          Display a warning message with given title and text
static boolean showWarning(java.awt.Window owner, java.lang.String warningTitle, java.lang.String warningText)
           
 
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, setModal, setModalityType, setResizable, setTitle, setUndecorated, show, toBack
 
Methods inherited from class java.awt.Window
addPropertyChangeListener, addPropertyChangeListener, addWindowFocusListener, addWindowListener, addWindowStateListener, applyResourceBundle, applyResourceBundle, createBufferStrategy, createBufferStrategy, dispose, getBufferStrategy, getFocusableWindowState, getFocusCycleRootAncestor, getFocusOwner, getFocusTraversalKeys, getGraphicsConfiguration, getIconImages, getInputContext, getListeners, getLocale, getModalExclusionType, getMostRecentFocusOwner, getOwnedWindows, getOwner, getOwnerlessWindows, getToolkit, getWarningString, getWindowFocusListeners, getWindowListeners, getWindows, getWindowStateListeners, isActive, isAlwaysOnTop, isAlwaysOnTopSupported, isFocusableWindow, isFocusCycleRoot, isFocused, isLocationByPlatform, isShowing, pack, postEvent, processEvent, processWindowFocusEvent, processWindowStateEvent, removeNotify, removeWindowFocusListener, removeWindowListener, removeWindowStateListener, reshape, setAlwaysOnTop, setBounds, setBounds, setCursor, setFocusableWindowState, setFocusCycleRoot, setIconImage, setIconImages, setLocationByPlatform, setLocationRelativeTo, setMinimumSize, setModalExclusionType, setSize, setSize, 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, paint, paintComponents, preferredSize, print, printComponents, processContainerEvent, remove, removeAll, removeContainerListener, setComponentZOrder, setFocusTraversalKeys, setFocusTraversalPolicy, setFocusTraversalPolicyProvider, setFont, 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, contains, createImage, createImage, createVolatileImage, createVolatileImage, disable, disableEvents, dispatchEvent, enable, enable, enableEvents, enableInputMethods, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, getBackground, getBaseline, getBaselineResizeBehavior, getBounds, getBounds, getColorModel, getComponentListeners, getComponentOrientation, getCursor, getDropTarget, getFocusListeners, getFocusTraversalKeysEnabled, getFont, getFontMetrics, getForeground, 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, isOpaque, 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, setBackground, setComponentOrientation, setDropTarget, setEnabled, setFocusable, setFocusTraversalKeysEnabled, setForeground, setIgnoreRepaint, setLocale, setLocation, setLocation, setMaximumSize, setName, setPreferredSize, show, size, toString, transferFocus, transferFocusUpCycle
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Field Detail

serialVersionUID

public static final long serialVersionUID
See Also:
Constant Field Values

okButton

private javax.swing.JButton okButton

cancelButton

private javax.swing.JButton cancelButton

defaultButton

private javax.swing.JButton defaultButton

helpButton

private javax.swing.JButton helpButton

contentPane

private javax.swing.JPanel contentPane

helpPoint

private java.lang.String helpPoint

buttonPanel

private javax.swing.JPanel buttonPanel

smruDev

private boolean smruDev

clipboardCopier

private ClipboardCopier clipboardCopier

sendGeneralSettingsNotification

private boolean sendGeneralSettingsNotification

warningTitle

private java.lang.String warningTitle

warnDefaultSetting

private boolean warnDefaultSetting
Constructor Detail

PamDialog

public PamDialog(java.awt.Window parentFrame,
                 java.lang.String title,
                 boolean hasDefault)
Dialogs are always constructed with OK and Cancel buttons. Help and Set Defaults buttons are optional.

Parameters:
parentFrame - owner frame - can be null, but preferably the owner frame of the menu that calls this dialog
title - dialog title
hasDefault - display a default button
Method Detail

getButtonPanel

public javax.swing.JPanel getButtonPanel()

positionInFrame

protected void positionInFrame(java.awt.Window parentFrame)

setDialogComponent

public void setDialogComponent(javax.swing.JComponent component)
Used to set the main panel containing dialog controls -

Parameters:
component - - usually a jPanel
See Also:
JPanel

setVisible

public void setVisible(boolean visible)
Overrides:
setVisible in class java.awt.Dialog

getParams

public abstract boolean getParams()
called when the Ok button is pressed. This must return true in order that the dialog may close. It should also copy all parameters into an object that will be returned by showDialog.


cancelButtonPressed

public abstract void cancelButtonPressed()
called when the cancel button is pressed before the dialog closes. Generally you should set the parameters returned by the dialog to null or some default value, or in some other way indicate that Cancel was pressed.


okButtonPressed

protected void okButtonPressed()

getHelpPoint

public java.lang.String getHelpPoint()

restoreDefaultSettingsQ

public void restoreDefaultSettingsQ()
restore default setting ? Check with user before calling restoreDefaultSettings(); Thsi may be overridden if you want to ask a more complex question or offer options at this point.


restoreDefaultSettings

public abstract void restoreDefaultSettings()
standard function which should us used to copy default parameters into the dialog controls.


setHelpPoint

public void setHelpPoint(java.lang.String helpPoint)
Sets the starting point for Java help. If this is null, then the help button is hidden, if it is not null, then the help button is displayed.

Parameters:
helpPoint -

enableHelpButton

public void enableHelpButton(boolean helpOn)

getCancelButton

public javax.swing.JButton getCancelButton()
getter for cancel button so that you can change it's name from the default value

Returns:
reference to the cancel button

getOkButton

public javax.swing.JButton getOkButton()
getter for ok button so that you can change it's name from the default value

Returns:
reference to the ok button

addComponent

public static void addComponent(javax.swing.JPanel panel,
                                java.awt.Component p,
                                java.awt.GridBagConstraints constraints)

getDefaultButton

public javax.swing.JButton getDefaultButton()

getHelpButton

public javax.swing.JButton getHelpButton()

getPopupMenu

private javax.swing.JPopupMenu getPopupMenu()

setSendGeneralSettingsNotification

public void setSendGeneralSettingsNotification(boolean sendGeneralSettingsNotification)
Tell the Pamguard Controller to send a notification message around ALL program modules, processes and data blocks indicating that some settings have changed.

Parameters:
sendGeneralSettingsNotification - the sendGeneralSettingsNotification to set

isSendGeneralSettingsNotification

public boolean isSendGeneralSettingsNotification()
Returns:
the sendGeneralSettingsNotification

getWarningTitle

public java.lang.String getWarningTitle()

setWarningTitle

public void setWarningTitle(java.lang.String warningTitle)

showWarning

public boolean showWarning(java.lang.String warningText)
Display a warning message with a default title

Parameters:
warningText - text
Returns:
false so these can be a single return line in dialog getParams funcs.

showWarning

public static boolean showWarning(java.awt.Window owner,
                                  java.lang.String warningTitle,
                                  java.lang.String warningText)

showWarning

public boolean showWarning(java.lang.String warningTitle,
                           java.lang.String warningText)
Display a warning message with given title and text

Parameters:
warningTitle - title of warning dialog
warningText - message of warning dialog
Returns:
false so these can be a single return line in dialog getParams funcs.

formatDouble

public static java.lang.String formatDouble(double val)
Use the standard internal Double formatting to print Double numbers with a minimum, but sensible number of decimal places.

Parameters:
val - value to format
Returns:
formatted string.

setWarnDefaultSetting

public void setWarnDefaultSetting(boolean warnDefaultSetting)
Parameters:
warnDefaultSetting - the warnDefaultSetting to set

isWarnDefaultSetting

public boolean isWarnDefaultSetting()
Returns:
the warnDefaultSetting