ikayaki.gui
Class ProjectInformationPanel

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 ikayaki.gui.ProjectComponent
                      extended by ikayaki.gui.ProjectInformationPanel
All Implemented Interfaces:
MeasurementListener, ProjectListener, ImageObserver, MenuContainer, Serializable, EventListener, Accessible

public class ProjectInformationPanel
extends ProjectComponent

Allows inserting and editing project information.

Author:
Esko Luontola
See Also:
Serialized Form

Nested Class Summary
private  class ProjectInformationPanel.MyFormatterFactory
          Custom formatter factory for the JFormattedTextFields in this class.
 
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.BltBufferStrategy, Component.FlipBufferStrategy
 
Field Summary
private  JTextField areaField
           
private  JTextArea commentArea
           
private  JPanel contentPane
           
private  JTextField dateField
           
private  JFormattedTextField dipField
           
private  JFormattedTextField latitudeField
           
private  JFormattedTextField longitudeField
           
private  JFormattedTextField massField
           
private  ButtonGroup measurementType
           
private  JRadioButton measurementTypeAuto
           
private  JRadioButton measurementTypeManual
           
private  ButtonGroup normalization
           
private  JRadioButton normalizationMass
           
private  JRadioButton normalizationVolume
           
private  JTextField operatorField
           
private  boolean parametersModified
           
private  boolean propertiesModified
           
private  JTextField rockTypeField
           
private  ButtonGroup sampleType
           
private  JRadioButton sampleTypeCore
           
private  JRadioButton sampleTypeHand
           
private  JTextField siteField
           
private  JFormattedTextField strikeField
           
private  JFormattedTextField susceptibilityField
           
private  JFormattedTextField volumeField
           
 
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 java.awt.image.ImageObserver
ABORT, ALLBITS, ERROR, FRAMEBITS, HEIGHT, PROPERTIES, SOMEBITS, WIDTH
 
Constructor Summary
ProjectInformationPanel()
          Creates default ProjectInformationPanel with no current project.
 
Method Summary
private  void $$$setupUI$$$()
          Method generated by IntelliJ IDEA GUI Designer !!!
private  void initSaveParameters()
          Schedules the running of saveParameters().
private  void initSaveProperties()
          Schedules the running of saveProperties().
private  void saveParameters()
          Saves to the project file those parameters, that affect the measurement calculations.
private  void saveProperties()
          Saves to the project file those properties, that do not affect the measurement calculations.
 void setEnabled(boolean enabled)
          Sets whether or not this component is enabled.
 void setProject(Project project)
          Calls super.setProject(project) and updates textfield with new projects data.
 
Methods inherited from class ikayaki.gui.ProjectComponent
getParentFrame, getProject, measurementUpdated, projectUpdated
 
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, 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, getWidth, getVisibleRect, getX, getY, grabFocus, isDoubleBuffered, isLightweightComponent, isManagingFocus, isOpaque, isOptimizedDrawingEnabled, 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, 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

measurementType

private ButtonGroup measurementType

measurementTypeAuto

private JRadioButton measurementTypeAuto

measurementTypeManual

private JRadioButton measurementTypeManual

sampleType

private ButtonGroup sampleType

sampleTypeHand

private JRadioButton sampleTypeHand

sampleTypeCore

private JRadioButton sampleTypeCore

normalization

private ButtonGroup normalization

normalizationVolume

private JRadioButton normalizationVolume

normalizationMass

private JRadioButton normalizationMass

operatorField

private JTextField operatorField

dateField

private JTextField dateField

rockTypeField

private JTextField rockTypeField

areaField

private JTextField areaField

siteField

private JTextField siteField

commentArea

private JTextArea commentArea

latitudeField

private JFormattedTextField latitudeField

longitudeField

private JFormattedTextField longitudeField

strikeField

private JFormattedTextField strikeField

dipField

private JFormattedTextField dipField

massField

private JFormattedTextField massField

volumeField

private JFormattedTextField volumeField

susceptibilityField

private JFormattedTextField susceptibilityField

contentPane

private JPanel contentPane

propertiesModified

private boolean propertiesModified

parametersModified

private boolean parametersModified
Constructor Detail

ProjectInformationPanel

public ProjectInformationPanel()
Creates default ProjectInformationPanel with no current project. Starts an autosaving thread.

Method Detail

setEnabled

public void setEnabled(boolean enabled)
Sets whether or not this component is enabled. Affects all project information form fields.

Overrides:
setEnabled in class JComponent
Parameters:
enabled - true if this component should be enabled, false otherwise

setProject

public void setProject(Project project)
Calls super.setProject(project) and updates textfield with new projects data.

Overrides:
setProject in class ProjectComponent
Parameters:
project - new active project, or null to make no project active.

initSaveProperties

private void initSaveProperties()
Schedules the running of saveProperties().


initSaveParameters

private void initSaveParameters()
Schedules the running of saveParameters().


saveProperties

private void saveProperties()
Saves to the project file those properties, that do not affect the measurement calculations. Will do nothing if propertiesModified is false.

Throws:
NullPointerException - if the current project is null.

saveParameters

private void saveParameters()
Saves to the project file those parameters, that affect the measurement calculations. Will do nothing if parametersModified is false.

Throws:
NullPointerException - if the current project is null.

$$$setupUI$$$

private void $$$setupUI$$$()
Method generated by IntelliJ IDEA GUI Designer !!! IMPORTANT !!! DO NOT edit this method OR call it in your code!