IcanGui
Class GuiIcanDataSliceTable

java.lang.Object
  extended by IcanGui.GuiHierarchy
      extended by IcanGui.GuiWindow
          extended by IcanGui.GuiIcanDataSliceTable
All Implemented Interfaces:
java.awt.event.ActionListener, java.awt.event.FocusListener, java.awt.event.KeyListener, java.awt.event.WindowListener, java.util.EventListener

public class GuiIcanDataSliceTable
extends GuiWindow
implements java.awt.event.ActionListener, java.awt.event.KeyListener, java.awt.event.FocusListener, java.awt.event.WindowListener

Class to create Substructure Slice table.


Nested Class Summary
(package private)  class GuiIcanDataSliceTable.Madapter
          Mouse Adapter Inner Class
 
Field Summary
private  double[] boxesLoZs
           
private static java.lang.String[] buttonLabels
          Labels to display on action buttons.
private  java.awt.Button[] buttons
          Action buttons.
private  java.lang.String chosenPlies
          String containing the selected Ply number(s) or "ALL".
private  java.lang.String chosenSubstructs
          String specifying which Substructure subrange(s) to slice or "ALL".
private  int[] codeSlice
          Values of the number of Slices for Fiber or Particle, Interphase, Matrix or Binder.
private  double[] d
          Values of Diameter/Distance for Fiber or Particle, (Fiber or Particle +) Interphase, Matrix or Binder.
private  IcanDataSet dataset
          ICAN/JAVA data set.
private  java.lang.String[] descr
          Descriptive titles at top of window.
private static double EPSR
          Extra amount to allow when rounding the number of fibers in the ply up to the next highest value.
private  int fiberOrParticle
          Either MaterialProperty.PROPERTY_TYPE_FIBER or MaterialProperty.PROPERTY_TYPE_PARTICLE: used to determine whether the analysis is 2D or 3D, respectively.
private  java.awt.GridBagConstraints gbc
          GridBag Layout constraints.
private  java.awt.GridBagLayout gbl
          GridBag Layout manager.
private static double HALF
          The number one half.
private static int iAccept
          Accept Button verifies data and processes Substructure data.
private static int iCancel
          Cancel Button exits this screen and discards any data entered.
private static int iClear
          Clear Button clears data entry fields.
private static int iExit
          Exit Button exits the entire program.
private static int iF
          Index of Fiber or Particle variables.
private static int iHelp
          Help Button displays information on this window.
private static int iI
          Index of Interphase variables.
private static int iM
          Index of Matrix or Binder variables.
private static int iPlot
          Plot Button will display the slices within the ply.
private  int iPly
          Index of invoking Slice button corresponding to Ply number or range.
private  int iPS
          0 for Primary, 1 for Secondary.
private  int iSlice
          Index of slices in Substructure Slice table.
private static int iSliceAll
          Subslice All Button will subslice all slices shown.
private  double[] k
          Volume ratios for Fiber or Particle, Interphase, Matrix or Binder.
private  int lastSubstruct
          Number of Substructures per Ply, rounded to next higher integer for selection.
private  java.awt.Label[] lblDescr
          Labels for descriptions at top of window.
private  java.awt.Label[][] lblSliceCol
          (Column) Labels in Substructure Slice table.
private  java.awt.Label[] lblSliceTotals
          Totals for columns in Substructure Slice table.
private  java.awt.Label[][] lblSliceVar
          Labels in Substructure Slice fields.
private  java.lang.String[] materialCode
          Strings containing the Materal codes for Fiber or Particle, Interphase, Matrix or Binder.
private  GuiIcanDataSliceTable.Madapter myMadapter
          Mouse Adapter to handle mouse entering the window for the first time and right clicks.
private static int nButtons
          Number of action buttons.
private  int nDescrs
          Number of descriptive labels at top of window.
private  int nPlies
          Number of Plies in Ply range.
private static int nset
          Number of Fiber or Particle, Interphase, and Matrix or Binder indices.
private static int nSliceCols
          Number of Columns in Substructure Slice table.
private  int nSlicesTotal
          Computed total number of Slices in Ply range.
private static double ONE
          The number one.
private  java.awt.Panel[] panelCol
          Panel containing user's Substructure data table columns.
private  java.awt.Panel panelFrame
          The Panel that contains the data to be displayed within a scrolling frame.
private  java.awt.Panel panelUser
          Panel containing user's Substructure data table.
private  GuiIcanPlotFrame plotWindowFrame
          Plot window.
private  double plyLoRange
          Value of low Ply position for the Ply range.
private  java.lang.String plyMaterialID
          String containing the composite material code.
private  java.lang.String plyRange
          String containing Ply number or range.
private  int[] plyRangeArray
          Array of integers denoting Ply range.
private  double plyThickness
          Value of Ply thickness for each Ply in the range.
private  java.awt.Component saveCompFocus
          Component to set focus to.
private  java.awt.ScrollPane scrollFrame
          The scrolling frame in which the data is displayed.
private static java.lang.String[][] sliceColTitle
          Titles for columns in Substructure Slice table.
private  java.awt.Checkbox[] sliceDefect
          Checkbox to indicate whether Substructure Slice has a defect.
private  double[] sliceHiZs
           
private  double[] sliceLoZs
           
private  double[] sThick
          Computed Slice Thicknesses for Fiber or Particle, Interphase, Matrix or Binder.
private  java.lang.String[] subDefect
          Array of ID's at which defect was set, of the form ply:box:slice::Nx:Ny.
private  java.awt.Button[] subsliceButton
          Buttons to do subslicing for each Substructure Slice.
private  SubsliceItem[] subsliceItems
          List of SubsliceItem's containing slice ID's to be subsliced and numbers of subslices per slice.
private  GuiIcanDataSlice that
          Calling class GuiIcanDataSlice.
private  java.lang.String theTitle
          String containing the description/title of the ICAN/JAVA run.
 
Fields inherited from class IcanGui.GuiWindow
frameTitle, whatAmI, windowFrame
 
Fields inherited from class IcanGui.GuiHierarchy
IDO_ICAN_DATA, IDO_ICAN_DATA_BOOLEANS, IDO_ICAN_DATA_DAMPING, IDO_ICAN_DATA_IMPACT, IDO_ICAN_DATA_LOADS, IDO_ICAN_DATA_MATERIAL, IDO_ICAN_DATA_OUTPUTS, IDO_ICAN_DATA_PLOT_IMPACT, IDO_ICAN_DATA_PLOTPL, IDO_ICAN_DATA_PLY, IDO_ICAN_DATA_PROCESS, IDO_ICAN_DATA_REACTION, IDO_ICAN_DATA_SLICE, IDO_ICAN_DATA_SLICE_TABLE, IDO_ICAN_DATA_VVI, IDO_ICAN_DATA_VVR, IDO_ICAN_ELECTRICAL_CYCLIC_LOADS, IDO_ICAN_ELECTRICAL_STATIC_LOADS, IDO_ICAN_EXPERT, IDO_ICAN_HYGRAL_CYCLIC_LOADS, IDO_ICAN_HYGRAL_STATIC_LOADS, IDO_ICAN_MECH_CYCLIC_LOADS, IDO_ICAN_MECH_STATIC_DISPLACEMENTS, IDO_ICAN_MECH_STATIC_LOADS, IDO_ICAN_MORE_LOADS, IDO_ICAN_PROMPT, IDO_ICAN_RATE_LOADS, IDO_ICAN_THERMAL_CYCLIC_LOADS, IDO_ICAN_THERMAL_STATIC_LOADS, IDO_MAIN, IDO_MDB_DATA_MFIM, IDO_MDB_DATA_START, IDO_MDB_PROMPT, IDO_MSG_DATA, NDO
 
Constructor Summary
GuiIcanDataSliceTable(GuiIcanDataSlice that, java.lang.String title, int iPly, java.lang.String plyRange, java.lang.String plyMaterialID, int iPS, java.lang.String[] materialCode, double[] k, double[] d, double plyThickness, double plyLoRange, int fiberOrParticle, java.lang.String chosenPlies, java.lang.String chosenSubstructs, int[] codeSlice, double[] sThick, int nPlies, int lastSubstruct, SubsliceItem[] subsliceItems, java.lang.String[] subDefect)
          Constructor creates windows to display text entry fields, buttons, and table of slices.
 
Method Summary
 boolean acceptSlicing()
          Check for valid combination of subslicing and Defect.
 void actionPerformed(java.awt.event.ActionEvent evt)
          Detect Action Events and process accordingly
private  boolean addIcanDataUser()
          Add a set of Substructure input data per ply.
 void changeGuiUnits()
          Change units on GUI for this class.
 void doArrow(int key)
          Process arrow key to move focus.
private  void doPlot()
          Create plot.
 int[] findSubslices(java.lang.String sID)
          Find the number of subslices for the subslice ID.
 void focusGained(java.awt.event.FocusEvent evt)
          Does Nothing
 void focusLost(java.awt.event.FocusEvent evt)
          Does Nothing
 java.lang.String getName()
          Get class name.
 void helpMe()
          Display help message.
 void helpMe(java.awt.Component target)
          Display help message for a specified component.
private  void hideLastPlot()
          Destroy plot if it is shown.
protected  void initMe()
          Initialize window.
 boolean isDefect(java.lang.String sID)
          Is there a defect at this slice/subslice?
 void keyPressed(java.awt.event.KeyEvent evt)
          Makes sure that keys are not processed twice.
 void keyReleased(java.awt.event.KeyEvent evt)
          Detects when the following keys are released Tab, up arrow, down arrow, enter, shift+tab, alt+right, alt+left, F1
 void keyTyped(java.awt.event.KeyEvent evt)
          Does Nothing
 void presetData()
          Set title and other ICAN/JAVA data.
 void remove()
          Remove buttons and labels to destroy window.
 void saveSlicing()
          Save slicing and subslicing data for ply range.
 void setCompFocus()
          Set focus to some component.
 void setCompFocus(java.awt.Component cFocus)
          Set focus in current class/frame.
 void setSubDefect(java.lang.String sID, java.lang.String[] subDefect)
          Set the subslice defect list created in GuiIcanDataSubsliceTable.
 void setSubsliceButton(int iPly, int iPS, java.lang.String sID, int[] nSubslices)
          Set subslice Button to indicate whether subslicing is to be done.
 int sliceElement(java.lang.String sID)
          Is this slice subsliced?
 void windowActivated(java.awt.event.WindowEvent evt)
          Does Nothing
 void windowClosed(java.awt.event.WindowEvent evt)
          Does Nothing
 void windowClosing(java.awt.event.WindowEvent evt)
          Checks to make sure you want to exit
 void windowDeactivated(java.awt.event.WindowEvent evt)
          Does Nothing
 void windowDeiconified(java.awt.event.WindowEvent evt)
          Does Nothing
 void windowIconified(java.awt.event.WindowEvent evt)
          Does Nothing
 void windowOpened(java.awt.event.WindowEvent evt)
          Does Nothing
 
Methods inherited from class IcanGui.GuiWindow
addGB, askExit, askQuestion, showMessageInfo
 
Methods inherited from class IcanGui.GuiHierarchy
changeAllGuiUnits, exitGui, getCurrent, getFrame, getFrame, getGuiWindowClass, getGuiWindowClass, hideMe, initHierarchy, setCurrent, setNextUp, showMe
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

dataset

private IcanDataSet dataset
ICAN/JAVA data set.


that

private GuiIcanDataSlice that
Calling class GuiIcanDataSlice.


panelUser

private java.awt.Panel panelUser
Panel containing user's Substructure data table.


panelCol

private java.awt.Panel[] panelCol
Panel containing user's Substructure data table columns. This was added to allow a GridLayout in one direction (height) and a GridBagLayout in the other direction (width) because there is a limit of 512 rows or columns in a GridBagLayout.


gbl

private java.awt.GridBagLayout gbl
GridBag Layout manager. Note that there is a limit of 512 rows or columns in a GridBagLayout.


gbc

private java.awt.GridBagConstraints gbc
GridBag Layout constraints.


iPly

private int iPly
Index of invoking Slice button corresponding to Ply number or range.


iPS

private int iPS
0 for Primary, 1 for Secondary.


descr

private java.lang.String[] descr
Descriptive titles at top of window.


nDescrs

private int nDescrs
Number of descriptive labels at top of window.


lblDescr

private java.awt.Label[] lblDescr
Labels for descriptions at top of window.


theTitle

private java.lang.String theTitle
String containing the description/title of the ICAN/JAVA run.


plyRange

private java.lang.String plyRange
String containing Ply number or range.


plyRangeArray

private int[] plyRangeArray
Array of integers denoting Ply range. The 2 elements denote start and end of Ply range.

See Also:
plyRange

nPlies

private int nPlies
Number of Plies in Ply range.

See Also:
plyRange

plyMaterialID

private java.lang.String plyMaterialID
String containing the composite material code.


plyThickness

private double plyThickness
Value of Ply thickness for each Ply in the range.


plyLoRange

private double plyLoRange
Value of low Ply position for the Ply range.


chosenPlies

private java.lang.String chosenPlies
String containing the selected Ply number(s) or "ALL".


chosenSubstructs

private java.lang.String chosenSubstructs
String specifying which Substructure subrange(s) to slice or "ALL".


fiberOrParticle

private int fiberOrParticle
Either MaterialProperty.PROPERTY_TYPE_FIBER or MaterialProperty.PROPERTY_TYPE_PARTICLE: used to determine whether the analysis is 2D or 3D, respectively.


iF

private static final int iF
Index of Fiber or Particle variables.

See Also:
Constant Field Values

iI

private static final int iI
Index of Interphase variables.

See Also:
Constant Field Values

iM

private static final int iM
Index of Matrix or Binder variables.

See Also:
Constant Field Values

nset

private static final int nset
Number of Fiber or Particle, Interphase, and Matrix or Binder indices.

See Also:
Constant Field Values

codeSlice

private int[] codeSlice
Values of the number of Slices for Fiber or Particle, Interphase, Matrix or Binder.


materialCode

private java.lang.String[] materialCode
Strings containing the Materal codes for Fiber or Particle, Interphase, Matrix or Binder.


k

private double[] k
Volume ratios for Fiber or Particle, Interphase, Matrix or Binder.


d

private double[] d
Values of Diameter/Distance for Fiber or Particle, (Fiber or Particle +) Interphase, Matrix or Binder.


sThick

private double[] sThick
Computed Slice Thicknesses for Fiber or Particle, Interphase, Matrix or Binder.


lastSubstruct

private int lastSubstruct
Number of Substructures per Ply, rounded to next higher integer for selection.


nSlicesTotal

private int nSlicesTotal
Computed total number of Slices in Ply range.


sliceColTitle

private static final java.lang.String[][] sliceColTitle
Titles for columns in Substructure Slice table.


nSliceCols

private static final int nSliceCols
Number of Columns in Substructure Slice table.


lblSliceCol

private java.awt.Label[][] lblSliceCol
(Column) Labels in Substructure Slice table.


lblSliceTotals

private java.awt.Label[] lblSliceTotals
Totals for columns in Substructure Slice table.


lblSliceVar

private java.awt.Label[][] lblSliceVar
Labels in Substructure Slice fields.
  1. For each slice:
    • Slice number - descending order.
    • Slice Thickness.
    • Position - position of (center) of slice.
    • Fiber or Particle Volume Ratio.
    • Interphase Volume Ratio.
    • Matrix or Binder Volume Ratio.
    • Placeholder for Button to do subslicing.
    • Placeholder for Checkbox indicating Defect in Substructure Slice.
  2. Total - same as slice except Position is blank.


boxesLoZs

private double[] boxesLoZs

sliceLoZs

private double[] sliceLoZs

sliceHiZs

private double[] sliceHiZs

subsliceButton

private java.awt.Button[] subsliceButton
Buttons to do subslicing for each Substructure Slice.


sliceDefect

private java.awt.Checkbox[] sliceDefect
Checkbox to indicate whether Substructure Slice has a defect.


subDefect

private java.lang.String[] subDefect
Array of ID's at which defect was set, of the form ply:box:slice::Nx:Ny.


subsliceItems

private SubsliceItem[] subsliceItems
List of SubsliceItem's containing slice ID's to be subsliced and numbers of subslices per slice.


iSlice

private int iSlice
Index of slices in Substructure Slice table.


saveCompFocus

private java.awt.Component saveCompFocus
Component to set focus to.


iAccept

private static final int iAccept
Accept Button verifies data and processes Substructure data.

See Also:
Constant Field Values

iPlot

private static final int iPlot
Plot Button will display the slices within the ply.

See Also:
Constant Field Values

iSliceAll

private static final int iSliceAll
Subslice All Button will subslice all slices shown. The subslices are for the worst case in which there are fiber/particle, interphase, and matrix/binder.

See Also:
Constant Field Values

iHelp

private static final int iHelp
Help Button displays information on this window.

See Also:
Constant Field Values

iClear

private static final int iClear
Clear Button clears data entry fields.

See Also:
Constant Field Values

iCancel

private static final int iCancel
Cancel Button exits this screen and discards any data entered.

See Also:
Constant Field Values

iExit

private static final int iExit
Exit Button exits the entire program.
To exit just this screen, see Accept or Cancel.

See Also:
iAccept, iCancel, Constant Field Values

buttonLabels

private static final java.lang.String[] buttonLabels
Labels to display on action buttons.


nButtons

private static final int nButtons
Number of action buttons.


buttons

private java.awt.Button[] buttons
Action buttons.


scrollFrame

private java.awt.ScrollPane scrollFrame
The scrolling frame in which the data is displayed.


panelFrame

private java.awt.Panel panelFrame
The Panel that contains the data to be displayed within a scrolling frame.


plotWindowFrame

private GuiIcanPlotFrame plotWindowFrame
Plot window.


myMadapter

private GuiIcanDataSliceTable.Madapter myMadapter
Mouse Adapter to handle mouse entering the window for the first time and right clicks.


HALF

private static final double HALF
The number one half.

See Also:
Constant Field Values

ONE

private static final double ONE
The number one.

See Also:
Constant Field Values

EPSR

private static final double EPSR
Extra amount to allow when rounding the number of fibers in the ply up to the next highest value. For example, an exact integer or a slightly greater number should stay at the exact number and should not round up until it exceeds the exact number by the given amount.

See Also:
Constant Field Values
Constructor Detail

GuiIcanDataSliceTable

public GuiIcanDataSliceTable(GuiIcanDataSlice that,
                             java.lang.String title,
                             int iPly,
                             java.lang.String plyRange,
                             java.lang.String plyMaterialID,
                             int iPS,
                             java.lang.String[] materialCode,
                             double[] k,
                             double[] d,
                             double plyThickness,
                             double plyLoRange,
                             int fiberOrParticle,
                             java.lang.String chosenPlies,
                             java.lang.String chosenSubstructs,
                             int[] codeSlice,
                             double[] sThick,
                             int nPlies,
                             int lastSubstruct,
                             SubsliceItem[] subsliceItems,
                             java.lang.String[] subDefect)
Constructor creates windows to display text entry fields, buttons, and table of slices.

Parameters:
that - Instance of caller: GuiIcanDataSlice.
title - The description/title of the ICAN/JAVA run.
iPly - Subscript of Ply range data.
plyRange - Range of Ply Id numbers for this substructure.
plyMaterialID - Composite material code for ply.
iPS - 0 for Primary, 1 for Secondary.
materialCode - Material code for fiber or particle, interphase, matrix or binder.
k - Volume ratio for Fiber or particle , Interphase, Matrix or binder
d - Fiber or particle diameter, interphase diameter, matrix or binder distance.
plyThickness - Thickness of each Ply in the range.
plyLoRange - Low position of the first ply in range.
fiberOrParticle - See MaterialDataBank.MaterialProperty.PROPERTY_TYPE_FIBER or MaterialDataBank.MaterialProperty.PROPERTY_TYPE_PARTICLE to determine whether 2-D or 3-D analysis is required.
chosenPlies - Selected Ply number(s)
chosenSubstructs - Selected Substructure(s) to slice
codeSlice - Array containing number of slices of each type (F/P, I, or M/B) to initialize the class for.
sThick - Slice Thicknesses for Fiber or Particle, Interphase, Matrix or Binder.
nPlies - Number of Plies in Ply range.
lastSubstruct - Number of Substructures per Ply, rounded to next higher integer for selection.
subsliceItems - List of SubsliceItem's containing slice ID's to be subsliced and numbers of subslices per slice.
subDefect - Array of slice/subslice ID's at which defect was set, of the form ply:box:slice[::Nx:Ny].
See Also:
MaterialProperty.PROPERTY_TYPE_FIBER, MaterialProperty.PROPERTY_TYPE_PARTICLE
Method Detail

initMe

protected void initMe()
Initialize window.

Specified by:
initMe in class GuiWindow

addIcanDataUser

private boolean addIcanDataUser()
Add a set of Substructure input data per ply.

Returns:
True, if no error; false, if error.

findSubslices

public int[] findSubslices(java.lang.String sID)
Find the number of subslices for the subslice ID.

Parameters:
sID - Slice/subslice ID.
Returns:
Number of subslices

sliceElement

public int sliceElement(java.lang.String sID)
Is this slice subsliced?

Parameters:
sID - Slice/subslice ID.
Returns:
Element number in Vector, if subsliced; else, -1, if not subsliced.

isDefect

public boolean isDefect(java.lang.String sID)
Is there a defect at this slice/subslice?

Parameters:
sID - Slice/subslice ID.
Returns:
True, if there is a defect; false, if NO defect.

actionPerformed

public void actionPerformed(java.awt.event.ActionEvent evt)
Detect Action Events and process accordingly

Specified by:
actionPerformed in interface java.awt.event.ActionListener
Parameters:
evt - Action event.

acceptSlicing

public boolean acceptSlicing()
Check for valid combination of subslicing and Defect.

Returns:
True, if it passes the tests; false, if there is an error.

saveSlicing

public void saveSlicing()
Save slicing and subslicing data for ply range.


setSubDefect

public void setSubDefect(java.lang.String sID,
                         java.lang.String[] subDefect)
Set the subslice defect list created in GuiIcanDataSubsliceTable.

Parameters:
sID - Slice/subslice ID.
subDefect - Array of ID's at which defect was set, of the form ply:box:slice::Nx:Ny.
See Also:
GuiIcanDataSubsliceTable

setSubsliceButton

public void setSubsliceButton(int iPly,
                              int iPS,
                              java.lang.String sID,
                              int[] nSubslices)
Set subslice Button to indicate whether subslicing is to be done. Save corresponding subslice data.

Parameters:
iPly - Subscript of ply range.
iPS - 0 for Primary, 1 for Secondary.
sID - Slice/subslice ID.
nSubslices - Values of the number of Subslices for Fiber or Particle, Interphase, Matrix or Binder.

hideLastPlot

private void hideLastPlot()
Destroy plot if it is shown.


doPlot

private void doPlot()
Create plot.


helpMe

public void helpMe()
Display help message.


helpMe

public void helpMe(java.awt.Component target)
Display help message for a specified component.

Specified by:
helpMe in class GuiWindow
Parameters:
target - Component for which help is desired.

remove

public void remove()
Remove buttons and labels to destroy window.


windowActivated

public void windowActivated(java.awt.event.WindowEvent evt)
Does Nothing

Specified by:
windowActivated in interface java.awt.event.WindowListener
Parameters:
evt - Window event.

windowDeactivated

public void windowDeactivated(java.awt.event.WindowEvent evt)
Does Nothing

Specified by:
windowDeactivated in interface java.awt.event.WindowListener
Parameters:
evt - Window event.

windowIconified

public void windowIconified(java.awt.event.WindowEvent evt)
Does Nothing

Specified by:
windowIconified in interface java.awt.event.WindowListener
Parameters:
evt - Window event.

windowDeiconified

public void windowDeiconified(java.awt.event.WindowEvent evt)
Does Nothing

Specified by:
windowDeiconified in interface java.awt.event.WindowListener
Parameters:
evt - Window event.

windowOpened

public void windowOpened(java.awt.event.WindowEvent evt)
Does Nothing

Specified by:
windowOpened in interface java.awt.event.WindowListener
Parameters:
evt - Window event.

windowClosed

public void windowClosed(java.awt.event.WindowEvent evt)
Does Nothing

Specified by:
windowClosed in interface java.awt.event.WindowListener
Parameters:
evt - Window event.

windowClosing

public void windowClosing(java.awt.event.WindowEvent evt)
Checks to make sure you want to exit

Specified by:
windowClosing in interface java.awt.event.WindowListener
Parameters:
evt - Window event.

keyTyped

public void keyTyped(java.awt.event.KeyEvent evt)
Does Nothing

Specified by:
keyTyped in interface java.awt.event.KeyListener
Parameters:
evt - Key event.

keyPressed

public void keyPressed(java.awt.event.KeyEvent evt)
Makes sure that keys are not processed twice.

Specified by:
keyPressed in interface java.awt.event.KeyListener
Parameters:
evt - Key event.

keyReleased

public void keyReleased(java.awt.event.KeyEvent evt)
Detects when the following keys are released Tab, up arrow, down arrow, enter, shift+tab, alt+right, alt+left, F1

Specified by:
keyReleased in interface java.awt.event.KeyListener
Parameters:
evt - Key event.

doArrow

public void doArrow(int key)
Process arrow key to move focus.

Parameters:
key - Arrow key entered.

focusGained

public void focusGained(java.awt.event.FocusEvent evt)
Does Nothing

Specified by:
focusGained in interface java.awt.event.FocusListener
Parameters:
evt - Focus event.

focusLost

public void focusLost(java.awt.event.FocusEvent evt)
Does Nothing

Specified by:
focusLost in interface java.awt.event.FocusListener
Parameters:
evt - Focus event.

setCompFocus

public void setCompFocus()
Set focus to some component. Normally used when entering this screen after show().

Specified by:
setCompFocus in class GuiHierarchy

setCompFocus

public void setCompFocus(java.awt.Component cFocus)
Set focus in current class/frame.

Specified by:
setCompFocus in class GuiHierarchy
Parameters:
cFocus - Component to save to reset later.

presetData

public void presetData()
Set title and other ICAN/JAVA data. If ICAN/JAVA data initialized, use it to initialize the Substructure inputs.

Specified by:
presetData in class GuiWindow

changeGuiUnits

public void changeGuiUnits()
Change units on GUI for this class. Invoked when user changes units.

Specified by:
changeGuiUnits in class GuiWindow

getName

public java.lang.String getName()
Get class name.

Specified by:
getName in class GuiWindow
Returns:
Class name.