com.jFormTK
Class JFormFrame

java.lang.Object
  extended by com.jFormTK.JFormFrame
All Implemented Interfaces:
JConstants

public abstract class JFormFrame
extends java.lang.Object
implements JConstants

        This 'jFormTK' Class is an abstract class that contains a collection of 'jFormTK'
        methods designed to service a 'JFormForm.Sub-Class...
        

Version:
1.00, 7 Jul 2001
Author:
Jim Crowell
Professional Computer Solutions [PCS]
URL: http://jFormTK.com/
E-Mail: JimCrowell@EMail.com

Copyright (c) 2009 by Professional Computer Solutions [PCS]
All Rights Reserved

Nested Class Summary
(package private) static class JFormFrame.ControlsButtonAction
           
static class JFormFrame.JShowPanel
           
(package private) static class JFormFrame.MultiLineCellRenderer
           
(package private)  class JFormFrame.quickEditTable
           
(package private) static class JFormFrame.RemoveFromAddressBookDialog
           
(package private) static class JFormFrame.RemoveItemsFromGroupDialog
           
(package private) static class JFormFrame.ToolTipHeader
           
 
Field Summary
(package private) static javax.swing.text.SimpleAttributeSet attrs
           
(package private) static java.awt.Color background
           
static JTKButton bInfo
           
static JTKButton bLastForm
           
static JTKButton bMark
           
static JTKButton bNextForm
           
static JTKButton bNotePad
           
static JTKButton bPrint
           
static JTKButton bQuit
           
static JTKButton bSave
           
static JTKButton bSetDown
           
static JTKButton bSetUp
           
static JTKButtonPanel buttonPanel
           
protected static JFormForm currentForm
           
protected static java.lang.String currentFormID
           
(package private)  java.lang.Boolean falseFlag
           
(package private) static java.awt.Color foreground
           
static javax.swing.JScrollBar hScrollBar
           
(package private) static int iJFormField
           
(package private) static int iLastJFormField
           
(package private)  int lastAddedRow
           
(package private)  javax.swing.border.Border promptBorder
           
(package private) static JLAF promptLAF
           
(package private) static JLAF promptPhraseLAF
           
(package private)  java.lang.Boolean trueFlag
           
static javax.swing.JScrollBar vScrollBar
           
 
Fields inherited from interface com.jFormTK.JConstants
__, _AB, _AB_, _AField, _B, _BField, _CField, _CIField, _DField, _EU_, _H, _HEIGHT, _HEIGHT_INV, _HField, _I, _IField, _LField, _MField, _NField, _NotRequired, _PField, _PIField, _QField, _Required, _RField, _TAField, _TField, _WIDTH, _WIDTH_INV, _XField, AB, APP_TRACE_FOCUS, APP_TRACE_GET, APP_TRACE_SET, B_, BAR, BAR_, BB, BH, BI, BREAKPOINT_FOCUS, BREAKPOINT_GET, BREAKPOINT_SET, BVB, C_QUOTE, CLOSE, CLOSE_BRACKET, COLORS_DELIMITER, COMMA, COMMA_, D_ELEMENT, D_ELEMENT_N, D_ELEMENT_N1, D_ELEMENT_N2, D_ELEMENT_N3, D_FIELDS, D_FIELDS_N, D_FIELDS_N1, D_FIELDS_N2, D_FIELDS_N3, D_ITEMS, DASH, DOT, EOL, EOP, EOS, FIELD_TRACE_FOCUS, FIELD_TRACE_GET, FIELD_TRACE_SET, FONT_DELIMITER, H_, HB, HH, HI, I_, IB, IH, II, JLAF_DELIMITER, LF, LISTBRACKET, NO, OPEN, OPEN_BRACKET, pCheckboxGroup, QUOTE, SPACE_, TAB, YES
 
Constructor Summary
JFormFrame()
           
 
Method Summary
static void addField(JFormForm form, JFormField fld, int row)
           ADD the given 'JFormField' to the 'JFormForm' Control Vector [formFields]...
static void addField(JFormForm form, JFormField fld, int col, int row, int w)
           ADD the given 'JFormField' to the 'JFormForm' Control Vector [formFields]...
static void addField(JFormForm form, JFormField fld, int col, int row, int w, int h)
           
static void addField(JFormForm form, JFormField fld, int col, int row, int w, int h, java.lang.String groupName, java.lang.String repeatMode)
           
static void addField(JFormForm form, JFormField fld, int col, int row, int w, int hIn, java.lang.String groupName, java.lang.String repeatMode, boolean noWarning)
           
static void addField(JFormForm form, JFormField fld, int col, int row, int w, java.lang.String groupName, java.lang.String repeatMode)
           ADD the given 'JFormField' to the 'JFormForm' Control Vector [formFields]...
static void addField(JFormForm form, JFormField fld, int col, int row, int w, java.lang.String groupName, java.lang.String repeatMode, boolean noWarning)
           ADD the given 'JFormField' to the 'JFormForm' Control Vector [formFields]...
static JFormField addGroupSet(JFormForm form, JFormField fld_AField, java.lang.String from)
           Add a new "Group Set" to the current 'jFormTK.ShowPanel'.
static void addJCoupleControls(JCouple couple, JFormField hook, DynamicFieldControls[] fldControls)
           This method is designed to setup the 'jFormTK' application dynamic JCouple Controls.
static void addQFieldControls(JFormField qFld)
           Add the 'Null' +QField Controls to the specified _QField 'JFormFiels', i.e.
static void addQFieldControls(JFormField qFld, DynamicFieldControls[] yesFields)
           Add the "YES" JFormField's [yesFields] to the given JFormField._QField instances 'reference' control.
static void addQFieldControls(JFormField qFld, DynamicFieldControls[] yesFields, DynamicFieldControls[] noFields)
           Add the "YES" and "NO" JFormField's [yesFields,noFields] to the given JFormField._QField instances 'reference' control...
static JFormField addSpouseButtonControls(JFormForm form, JFormField fld, JFormField hook)
          
static void buildGroup(JFormForm form, java.lang.String groupName, int numberOfFields, int numberOfSets, java.lang.String[] name, java.lang.String[] fieldLabelIn, java.lang.String[] promptIn, char[] type, java.lang.String[][] repeatMode, int[][] col, int[][] row, int[][] width, int[][] height, java.lang.String[][] text, JFormField beforeFld)
           This method is designed to build a 'jFormTK' Group Set that consist of one 'JFormField' instance per set.
static void buildGroup(JFormForm form, java.lang.String name, java.lang.String fieldLabelIn, java.lang.String promptIn, char type, java.lang.String groupName, java.lang.String[] repeatMode, int[] col, int[] row, int[] width, int[] height, java.lang.String[] text, int numberOfSets, JFormField beforeFld)
           This method is designed to build a 'jFormTK' Group Set that consist of one 'JFormField' instance per set.
static JFormField deleteGroupSet(JFormForm form, JFormField dFld, java.lang.String from)
           Delete a "Set" from the JFormFrame.Show Panel...
static void displayHelp()
           Display the 'help' message of the given 'JFormField'.
static void displayHint()
           Display the 'Hint' Message that is associated with the current 'JFormField'.
static void displayInfo(JFormForm form)
           Display the current 'JFormForm' Sub-Class Info Text...
static java.lang.String displayJFormFields(java.lang.String header, java.util.Vector formFields)
           
static java.lang.String displayQFieldControls(JFormField qFld, boolean raw)
           
static java.lang.String displayQFieldControls(JFormField qFld, java.lang.Object[] controls, boolean raw)
           Build a display String = f[JFormField, Object[]] arguments.
static void doJCouple(JFormForm form, JCouple couple, JFormField hook)
           Process a 'JCouple' request...
static void doMark()
          'toggle' the field mark of the current JFormField.
static void doNotePad()
           Do the 'jFormTK' Kernel NotePad Edits...
static void doSave()
           Save the contents of the currntly displayed 'JFormForm' Sub-Class to the Storage Device...
 int findJFormField(java.lang.String ID)
           Find the given 'JFormField' ID in the currently displayed Show Panel...
static JFormField firstActiveJFormField(java.lang.String from)
           Return a "Reference" to the first "Active" 'JFormField' of the current 'Show Panel'...
static int firstActiveJFormFieldIndex()
           Return the index of the first "Active" 'JFormField' of the current 'Show Panel'...
static int firstActiveJFormFieldIndex(java.util.Vector formFields)
           Return the index of the first "Active" 'JFormField' of the given 'jFormFields' Vector...
static java.util.Vector formFieldsToJFormData(java.util.Vector formFields, java.lang.String from)
           Construct 'JFormData' Vector of 'savedJFormField' Strings as a function of the given JFormField 'formFields' Vector...
 void formFieldsToShowPanel(java.util.Vector formFields)
           
static void fyi(java.lang.String formName, java.lang.String message)
           
static void fyi(java.lang.String formName, java.lang.String message, boolean echo)
           
static void fyiItems(java.lang.String header, java.lang.String itemsString)
           Display a "JMessage" window constructed from the given items String [itemsString] where the Items String consist of a set of 'JFormField' ID's OR a App Commom Data Base [] reference separated by the 'JFormTKDB' Items Delimiter.
static int getBannerHeight()
          Get the Banner Height
static java.awt.Rectangle getBoundaries(java.lang.String fldID, java.lang.String from)
           Return a Rectangle that contains the bounds to be used for the "Process Options" PopupDynamicReferencing Menu.
static java.awt.Rectangle getBounds(char mode)
           Get the display Bounds Rectangle as a function of the given Mode...
static int getButtonPanelHeight()
          Get the Button Panel Height
static int getContiguousIndex(JFormField currentIn, JFormField next)
           Given the current and next JFormField's , compute the 'JFormFrame.contiguous' control parameter...
static JFormForm getCurrentForm(java.lang.String from)
           Get the the current 'JFormForm' control reference...
static int getCurrentFormIndex()
           Get the "Current" Form Order * Index...
static JFormState getCurrentState()
          Return the current 'JFormForm' Sub-Class 'JFormState instance...
static java.awt.Rectangle getDialogBounds()
           Get the current 'JFormFrame' Dialog Bounds Rectangle...
static java.lang.String getFormFieldIDs(java.lang.String formID, java.util.Vector formFields, java.lang.String TAB)
           Construct a Display String of the 'JFormField' ID's in the given 'JFormField' Vector.
static javax.swing.JPanel getFormPanel()
           
static java.awt.Rectangle getFullBounds()
           Get the current 'JFormFrame' Full Bounds Rectangle...
static java.lang.String getGroupRange(JFormForm form, java.lang.String groupName, java.lang.String groupControl)
           Calculate a Group Range control String as follows: StartID + DASH + EndID where the ID's are derived from the given 'JFormForm' Sub-Class [form] and the specified Group Name [groupName] and Group Control...
static int getHeaderHeight()
          Get the Headert Height...
static java.awt.Dimension getHintPanelDimension()
           Return the current Hint Panel Width and Height via a 'Dimension' Field...
static JRecord[] getJCoupleControls(JFormField hook, java.lang.String from)
           Unpack the given JFormField._IField [hook] instance reference control into an array of Object's as follows: returnObject[0] - Integer with int value = # of "YES" JFormField's...
static JFormField getJFormField(java.lang.String fldIDIn)
           Get a "Reference" to the 'JFormField' for the given 'JFormField' ID OR {if the ID is null [= ""]} the first "Active" 'JFormField' of the Form.
static JFormField getJFormFieldFromFormFields(JFormForm form, java.lang.String groupName, java.lang.String fieldName, java.lang.String setNumber, java.lang.String from)
           Get a "Reference" to the 'JFormField' instance of the given 'JFormForm' Sub-Class [form] = f(the given Group Name, Field Name and Set Number]...
static int[] getJFormFieldIndex(JFormField fld, java.lang.String from)
           Compute the following Indexes as a function of the given 'JFormField' instance: [0] - Index of the given 'JFormField' in the Current 'JFormForm' Sub-Class...
static int[] getJFormFieldIndex(JFormField fld, java.util.Vector formFields, java.lang.String from)
           Compute the following Indexes as a function of the given 'JFormField' instance: [0] - Index of the given 'JFormField' in the Current 'JFormForm' Sub-Class...
static java.util.Vector getJFormFields()
           Return a String Array of each 'JFormField' of the current ShowPanel...
static JFormField getNextActiveJFormField(JFormField fldIN)
           Get a reference to the "Active" 'JFormField' after the given 'JFormField' [fldIN] in the current 'Show Panel'...
static int getNumberOfRows()
           Return the number of Rows in the current 'JFormFrame.ShowPanel'.
static JFormField getPreviousActiveJFormField(JFormField fld)
           Get a reference to the "Active" 'JFormField' before the given 'JFormField' [fld] in the current 'Show Panel'...
static java.lang.Object[] getQFieldControls(JFormField qFld)
           Unpack the given JFormField._QField [qFld] instance reference control into an array of Object's as follows: returnObject[0] - Integer with int value = # of "YES" JFormField's...
static JFormFrame.JShowPanel getShowPanel()
           Get the current 'JFormForm' Sub-Class 'Show Panel'...
static java.awt.Rectangle getShowPanelBounds()
           Get the current 'JFormForm' * Show Panel Bounds...
static int getShowPanelHeight()
           Return the current Show Panel Height...
static int getShowPanelWidth()
           Return the current Show Panel Width...
static int getTABHeight()
          Get the Tab Height
static void insertField(JFormForm form, JFormField before, JFormField newField, int col, int row, int w)
           
static void insertField(JFormForm form, JFormField before, JFormField newField, int col, int row, int w, int h)
           
static void insertField(JFormForm form, JFormField before, JFormField newField, int col, int row, int w, int h, java.lang.String inGroupName, java.lang.String inrepeatMode)
           
static void insertField(JFormForm form, JFormField before, JRecord rec)
           
static void insertFields(JFormForm form, JFormField before, JRecord[] set)
           This method is designed to insert a set of new JFormField's to the specified 'JFormForm' [form] 'formFields' Vector and to reset the Form's "Load State" to 'D' so that the next call to 'jFormIO.showPage' shall reconstuct the "Show Panel"...
static JFormField lastActiveJFormField()
           Return a "Reference" to the Last "Active" 'JFormField' of the current 'Show Panel'...
static boolean loadFormFieldsVector(JFormForm form, java.lang.String from)
           Load the 'formFields' Vector and change the given JFormForm's 'loadState to 'A' for the given 'JFormForm'...
static void message(java.lang.String title, java.lang.String message, java.lang.String fieldID, char dType, boolean dRef)
           
static void message(java.lang.String title, java.lang.String message, java.lang.String fieldID, char cType, boolean dRef, boolean styleMessage)
           
static void message(java.lang.String title, java.lang.String message, java.lang.String fieldID, char dialogType, boolean dReference, boolean styleMessage, java.lang.String from)
           Kernel Usage: 1) 'this.message1' Method [NOT Currently in Use]...
static void message(java.lang.String title, java.lang.String message, java.lang.String fieldID, char dType, boolean dRef, java.lang.String from)
           Display the given message in a 'JMessage' Class dialog.
static void message(java.lang.String title, java.lang.String message, java.lang.String fieldID, java.lang.String from)
           Display the given message in a 'JMessage' Class dialog.
static void messageTable(java.lang.String[] controls, javax.swing.JTable table, javax.swing.JScrollPane sp, char dialogCode, int[] colWidths, java.lang.String from)
           Display the given table in a 'JMessageTable' Class dialog.
static void messageTablePrep(java.lang.String[] controls, javax.swing.JTable table, javax.swing.JScrollPane sp, char dialogCode, int[] colWidths, java.lang.String from)
           Display the given table in a 'JMessageTable' Class dialog.
static void nextGroupSet(JFormForm form, JFormField fld, java.lang.String setNumber)
           Add a new "Group Set" to the current 'JFormFields' Vector based on the given JFormField's 'groupName' parameter.
static boolean onlyOneActiveJFormField()
           Return a 'true' boolean IFF there is only one "Active" 'JFormField' in the current Show Panel.
static void pause(java.lang.String from)
           
static void refreshJFormFieldsLAF(JFormForm currentForm, java.lang.String from)
           Refresh the Look and Feel of the Show Panel components.
static void removeGroupFields(JFormForm form, java.lang.String groupName, java.lang.String setNumberToRemove)
           Remove the indicated Set from the Show Panel and adjust the Set Numbers in the remaining 'JFormField' instances...
static void removeJFormFieldsRange(JFormForm form, JFormField fromFld, JFormField to, java.lang.String fromIn)
           Remove the JFormField's from the given 'JFormForm' given a 'from' and 'to' 'JFormField' reference...
static void removeNamesFromShowPanel(JFormForm form, java.lang.String[] names)
           Remove the JFormField's with the specified Names [names] from the current 'Show Panel' Components and verify that the current Show Panel contains the given 'JFormForm' Sub-Class [form]...
static void resetControlButtons(JFormForm currentForm)
           Restore the content of the 'jFormTK' Kernel Button Panel as a function of the 'controlButtonControls' Vector of the given 'JFormForm'[currentForm]...
static void setBannerHeight(int height)
          Set 'jFormTK' Kernel Framework Banner Height...
static void setbBack(java.awt.Color background, java.awt.Color foreground, java.awt.Font font)
           Re-set the 'JFormForm' "Back" Control button...
static void setbInfo(java.awt.Color background, java.awt.Color foreground, java.awt.Font font)
           Re-set the 'JFormForm' "Info" Control button...
static void setbLastForm(java.awt.Color background, java.awt.Color foreground, java.awt.Font font)
           Re-set the 'JFormForm' "Previous Form" Control button...
static void setbLastFormEnabled(boolean flag)
           Set the "Prior" Form Control Button Enabled property...
static void setbLastFormToolTipText(java.lang.String text)
           Set the "Prior" Form Control Button ToolTipText property...
static void setbMark(java.awt.Color background, java.awt.Color foreground, java.awt.Font font)
           Re-set the 'JFormForm' "Mark" Control button...
static void setbNext(java.awt.Color background, java.awt.Color foreground, java.awt.Font font)
           Re-set the 'JFormForm' "Next" Control button...
static void setbNextForm(java.awt.Color background, java.awt.Color foreground, java.awt.Font font)
           Re-set the 'JFormForm' "Next Form" Control button...
static void setbNextFormEnabled(boolean flag)
           Set the "Next" Form Control Button Enabled property...
static void setbNextFormToolTipText(java.lang.String text)
           Set the "Next" Form Control Button ToolTipText property...
static void setbNotePad(java.awt.Color background, java.awt.Color foreground, java.awt.Font font)
           Re-set the 'JFormForm' "NotePad" Control button...
static void setbPrint(java.awt.Color background, java.awt.Color foreground, java.awt.Font font)
           Re-set the 'JFormForm' "Print" Control button...
static void setbQuit(java.awt.Color background, java.awt.Color foreground, java.awt.Font font)
           Re-set the 'JFormForm' "Quit" Control button...
static void setBranch(JFormForm branchForm, JFormField branchFld)
           Set the "Branch" 'JFormForm' and 'JFormField' controls when the 'jFormTK' Application Developer employs the "" prefix in a run-time assignment Statement...
static void setbSave(java.awt.Color background, java.awt.Color foreground, java.awt.Font font)
           Re-set the 'JFormForm' "Quit" Control button...
static void setbSaveEnabled(boolean flag)
           Set the 'JFormForm' "Save" Control button Enable Flag...
static void setButtonPanel(java.awt.Color background, java.awt.Color foreground, java.awt.Font font)
           Re-set the 'JFormForm' "Button Panel" Look and Feel Parameters...
static void setButtonPanelHeight(int height)
           Set the Buttoon Panel Height...
static void setControlButtonControls(int iInfo, int iSave, int iPrint, int iQuit, int iNotePad, int iMark, int iBack, int iNext, int ipriorForm, int inextForm, JFormForm form)
           Set the contents of the Control Button Controls Vector for the specified 'JFormForm' Sub-Class [form].
static void setCurrentForm(JFormForm newForm, java.lang.String from)
           Set the current 'JFormForm' control parameter...
static void setCurrentFormIndex(int formIndex)
           Set the 'jFormTK' "Current Form Order Parameter that is used the the 'jFormTK' to control the "Automatic Ordering" of the Application Forms...
static void setDialogBounds(java.awt.Rectangle bounds)
          Set the display lBounds for the JMessage "Dialog" DEFAULT dialog.
static void setDown()
           Re-display the JFormFrame at the 'Next' Group Set...
static void setFormPanel(BasejFormTK base)
           Method that is used by the 'jFormTK' Kernel to establish the JFormFrame Control Parameters specified in the parameters list of this Constructor...
static void setFullBounds(java.awt.Rectangle bounds)
          Set the display lBounds for the JMessage "Full" DEFAULT dialog.
static void setGroupPanelLAF()
           Reset the Group Panel Background as a function of the 'jFormTK' Data Base 'groupPanelLAF' JLAF instance...
static void setGroupPanelLAF(java.util.Vector vGroupHighlited, java.awt.Color background)
           Reset the Group Panel Background as a function of the given 'jFormTK' Data Base 'groupPanelLAF' JLAF instance...
static void setHeaderHeight(int height)
          Set the Header Height...
static int setIsComplete()
           Set the 'isComplete' index as the number of "Required Fields" of the current 'JFormForm' Sub-Class that still containe the default "Required Fields" String [jFormTKDB.requiredFieldText]...
static void setNotePadActiveBorder(boolean flag)
           Set the 'notePadBorder' to 'notePadActiveBorder' if the given flag is true, else [flag is false] set 'notePadBorder' tp 'controlButtonBoder...
static void setPrompt(JLAF laf)
           Set the 'JFormFrame' Prompt Field "Look & Feel' Parameters as a function of the given 'JLAF' [laf]...
static void setPrompt(java.lang.String promptIn, java.lang.String from)
           Set the 'JFormFrame' Prompt Display at the bottom of the 'JFormFrame' and "Style" the presentation iff the 'JPromptPhrase' instance exist...
static void setPromptBorder()
           Set the 'jFormTK' Framework Prompt Phrase...
static void setPromptBorder(JLAF laf)
           
static void setShowPanelHeight(int height)
          Set the 'jFormTK' Kernel Shpw Panel Height...
static void setShowPanelWidth(int width)
          Set the 'jFormTK' Kernel Shpw Panel Width...
static void setTabHeight(int height)
          Set 'jFormTK' Kernel Framework Tab Height...
static void setUp()
          Re-display the JFormFrame at the 'Previous' Set...
static void showFormFields(JFormForm form, java.lang.String from)
           Show the given 'JFormForm.formFields' Content in a 'JFormFrame.message' Dialog...
static void showFormFields(JFormForm form, java.lang.String from, boolean debug)
           Show the given 'JFormForm.formFields' Content to the Java Console, i.e.
static void showFormFields(JFormForm form, java.util.Vector formFields, java.lang.String from)
           Show the given 'JFormForm.formFields' Content in a 'JFormFrame.message' Dialog...
static void showFormFields(JFormForm form, java.util.Vector formFields, java.lang.String from, boolean debug)
           Show the given 'JFormForm.formFields' Content in a 'JFormFrame.message' Dialog...
static java.lang.String showFormFields(java.lang.String formID, java.util.Vector formFields, java.lang.String noShow)
           Construct a display String with a line for each 'JFormField' instance in the given 'formFields' Vector.
static void showFoundGroup(java.lang.String groupName, java.util.Vector v)
           'jFormTK' Kernel DEBUG method to display the 'JFormField' Type.
 void showJFormFields(java.lang.String currentID, int currentIndex, int previousIndex, int nextIndex, java.util.Vector v)
           "DEBUG" Method used to display the current 'showPanel' JFormField's ID, Type, Row, Col parameters.
static void showPage(JFormForm form, JFormField fld)
           Show the given 'JFormForm' Sub-Class [form] in the 'jFormTK' Kernel 'showPanel' and set the Focus at the given 'JFormField' [fld]...
static java.util.Vector showPanelToFormFields(java.lang.String from)
           Construct the JFormField's Vector from the current contents of the 'jFormTK' kernel "Show Panel" instance...
static void showQFieldControls(JFormField qFld, java.lang.Object[] controls, char mode, boolean raw)
           
static void showShowPanel(JFormForm form, java.lang.String message)
           DEBUG method is designed to show the 'JFormField' instances in the current 'jFormTK.showPanel.
static boolean verifyForm(JFormForm currentForm, JFormForm afterForm)
           Verify the new 'JFormForm' to be loaded into the 'jFormTK' Show Panel...
static boolean verifySaveForm(boolean doExit)
           Query the 'jFormTK' Application End User before saving this 'JFormForm' Sub-Class to the storage device, e.g.
static void warning(java.lang.String title, java.lang.String message)
           Display the given message in a 'JMessage' Class dialog.
static void warning(java.lang.String title, java.lang.String message, char dialogType)
           
static void warning(java.lang.String title, java.lang.String message, char dialogType, boolean styleMessage)
           Present a 'Warning' Message to the 'jFormYK' Application End User...
static void XXXbuildGroup(JFormForm form, java.lang.String name, java.lang.String fieldLabelIn, java.lang.String promptIn, char type, java.lang.String groupName, java.lang.String[] repeatMode, int[] col, int[] row, int[] width, int[] height, int numberOfSets, JFormField beforeFld)
           
 void XXXclearPage()
           Clear the current 'JFormForm' from the *this* Work Panel [ShowPanel].
static void XXXdoFocusNextProcessing(JFormField fld, java.lang.String from)
           Set the given 'JFormField' as the 'jFormState' "Current 'JFormField' Field and reset the 'JFormFrame' Show Panel Scroll parameters...
static JFormField XXXgetBranchJFormField()
           Get the current 'JFormField' "Branch" control...
static JFormForm XXXgetBranchJFormForm()
           Get the current 'JFormForm' "Branch" control...
static void XXXmessageTableOfObjects(java.lang.String[] controls, javax.swing.JTable table, javax.swing.JScrollPane sp, char dialogCode, int[] colWidths, java.lang.String from)
           Display the given table in a 'JMessageTableOfObjects' Class dialog.
static void XXXrefreshGroupPanel(javax.swing.JPanel showPanel, JLAF groupPanelLAF)
           Refresh the Look and Feel of the Group Panel components.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

bNextForm

public static JTKButton bNextForm

bLastForm

public static JTKButton bLastForm

currentForm

protected static JFormForm currentForm

currentFormID

protected static java.lang.String currentFormID

foreground

static java.awt.Color foreground

background

static java.awt.Color background

hScrollBar

public static javax.swing.JScrollBar hScrollBar

iJFormField

static int iJFormField

iLastJFormField

static int iLastJFormField

vScrollBar

public static javax.swing.JScrollBar vScrollBar

attrs

static javax.swing.text.SimpleAttributeSet attrs

bSetUp

public static JTKButton bSetUp

bInfo

public static JTKButton bInfo

bMark

public static JTKButton bMark

bSetDown

public static JTKButton bSetDown

bNotePad

public static JTKButton bNotePad

bPrint

public static JTKButton bPrint

bQuit

public static JTKButton bQuit

bSave

public static JTKButton bSave

buttonPanel

public static JTKButtonPanel buttonPanel

falseFlag

java.lang.Boolean falseFlag

lastAddedRow

int lastAddedRow

promptBorder

javax.swing.border.Border promptBorder

promptLAF

static JLAF promptLAF

promptPhraseLAF

static JLAF promptPhraseLAF

trueFlag

java.lang.Boolean trueFlag
Constructor Detail

JFormFrame

public JFormFrame()
Method Detail

addField

public static void addField(JFormForm form,
                            JFormField fld,
                            int row)
        ADD the given 'JFormField' to the 'JFormForm' Control Vector [formFields]...
        This signature assumes the following:
                Col =           0
                w   =           'JFormInfo' Number of Columns Value.
                h   =           1
                groupNane =     null
                repeatMode =null[See 'repeatMode' Doc]
                noWarning =     false
 
        NOTE:
        If the given 'JFormField' is a "Required Field",
        Then this method will place a reference to this JFormField in the
                Application Data Base [AppDB] "quickLink" Object...
 
        Kernel Usage:
        1)      This method is called by the individual 'JFormForm'Form SubClass, i.e. the
                Class that extends the 'jFormTK.JFormForm' Class to identify an Application
                Form...
        

Parameters:
form - a Reference to the Host 'JFormForm' SubClass...
fld - the 'JFormField' to be inserted into the given 'JFormForm' [form]...
row - The row number prior to the 'added' 'JFormField' insert...

addField

public static void addField(JFormForm form,
                            JFormField fld,
                            int col,
                            int row,
                            int w)
        ADD the given 'JFormField' to the 'JFormForm' Control Vector [formFields]...
        This signature assumes the following:
                groupName =     null
                repeatMode =null
                [See 'repeatMode' Doc]
                noWarning =     false
 
        NOTE:
        If the given 'JFormField' is a "Required Field",
        Then this method will place a reference to this JFormField in the
                Application Data Base [AppDB] "quickLink" Object...
 
        Kernel Usage:
        1)      This method is called by the individual 'JFormForm'Form SubClass, i.e. the
                Class that extends the 'jFormTK.JFormForm' Class to identify an Application
                Form...
        

Parameters:
form - a Reference to the Host 'JFormForm' SubClass...
fld - the 'JFormField' to be inserted into the given 'JFormForm' [form].
col - The column number prior to the 'added' 'JFormField' insert...
row - The row number prior to the 'added' 'JFormField' insert...
w - The number of Columns to display the given 'JFormField' in...

addField

public static void addField(JFormForm form,
                            JFormField fld,
                            int col,
                            int row,
                            int w,
                            int h)

addField

public static void addField(JFormForm form,
                            JFormField fld,
                            int col,
                            int row,
                            int w,
                            java.lang.String groupName,
                            java.lang.String repeatMode)
        ADD the given 'JFormField' to the 'JFormForm' Control Vector [formFields]...
        This signature assumes the following:
                noWarning =  false
 
        NOTE:
        If the given 'JFormField' is a "Required Field",
        Then this method will place a reference to this JFormField in the
                Application Data Base [AppDB] "quickLink" Object...
 
        Kernel Usage:
        1)      This method is called by the individual 'JFormForm'Form SubClass, i.e. the
                Class that extends the 'jFormTK.JFormForm' Class to identify an Application
                Form...
        

Parameters:
form - A Reference to the Host 'JFormForm' SubClass...
fld - The 'JFormField' to be inserted into the given 'JFormForm' [form].
col - The column number prior to the 'added' 'JFormField' insert...
row - The row number prior to the 'added' 'JFormField' insert...
w - The number of Columns to display the given 'JFormField' in...
groupName - The Group Name...
repeatMode - The repeatMode [See 'repeatMode' Doc]

addField

public static void addField(JFormForm form,
                            JFormField fld,
                            int col,
                            int row,
                            int w,
                            int h,
                            java.lang.String groupName,
                            java.lang.String repeatMode)

addField

public static void addField(JFormForm form,
                            JFormField fld,
                            int col,
                            int row,
                            int w,
                            java.lang.String groupName,
                            java.lang.String repeatMode,
                            boolean noWarning)
        ADD the given 'JFormField' to the 'JFormForm' Control Vector [formFields]...
        This signature is the Full 'addField' signature...
 
        NOTE:
        If the given 'JFormField' is a "Required Field", then this
        method will place a reference to this JFormField in the
        Application Data Base [AppDB] "quickLink" Object...
 
        Kernel Usage:
        1)      This method is called by the individual 'JFormForm'Form SubClass, i.e. the
                Class that extends the 'jFormTK.JFormForm' Class to identify an Application
                Form...
        

Parameters:
form - A Reference to the Host 'JFormForm' SubClass...
fld - The 'JFormField' to be inserted into the given 'JFormForm' [form].
col - The column number prior to the 'added' 'JFormField' insert...
row - The row number prior to the 'added' 'JFormField' insert...
w - The number of Columns to display the given 'JFormField' in...
groupName - The Group Name...
repeatMode - The repeatMode [See 'repeatMode' Doc]
noWarning - The Flag that controls the displaying of any Warning messages... NOTE: This flag was originally designed to ensure that no error message would be displayed during the deployment of a 'jFormTK' Application. This implementation is under advisement and therefore NOT fully implemented in the 'jFormTK' Kernel...

addField

public static void addField(JFormForm form,
                            JFormField fld,
                            int col,
                            int row,
                            int w,
                            int hIn,
                            java.lang.String groupName,
                            java.lang.String repeatMode,
                            boolean noWarning)

addJCoupleControls

public static void addJCoupleControls(JCouple couple,
                                      JFormField hook,
                                      DynamicFieldControls[] fldControls)
        This method is designed to setup the 'jFormTK' application dynamic JCouple
        Controls. The toString's of the 'DynamicFieldControl' array [fldControls] are
        stored in the 'reference' field of the given 'JFormField' _IField [hook]...

        The design purpose is to setup a JCouple process as a function of the 'mode'
        parameter of the 'JCouple' Command String that is provided to the 'Hook' in the
        PreProcessor Object Field...

        Kernel Usage:
        1)      'JFormForm.SubClass' Application Form Class to setup a dynamic
                'JCouple' process...
        

Parameters:
couple - 'JCouple' instance for this "JFormForm SubClass"...
hook - 'JFormField' _IField instance to control the given 'JCouple' process = F[preProcessObject] command... run-time process...
fldControls - 'DynamicFieldControls' array to be dynamically inserted =f[JCouple] command...

addQFieldControls

public static void addQFieldControls(JFormField qFld)
        Add the 'Null' +QField Controls to the specified _QField 'JFormFiels', i.e. there
        are NO "YES" and NO "NO" Controls to the processed when the host _QField looses
        the focus.

        In this case the "YES" and / or "No" responses are serviced by a 'jFormTK' PRE or
        POST Processing operations on the host 'JFormField' [qFld]. Another consideration
        is that the "YES" and / or "No" responses are used as input controls by other
        'JFormField' in the 'jFormTK' Application...

        Kernel Usage:
        1)      Used by 'JFormForm.Sub-Class' forms class to service a 'jFormTK' query
                run-time processing.
        

Parameters:
qFld - JFormField _QField instance.

addQFieldControls

public static void addQFieldControls(JFormField qFld,
                                     DynamicFieldControls[] yesFields)
        Add the "YES" JFormField's [yesFields] to the given JFormField._QField instances
        'reference' control. Set the "NO" JFormField's to null.

        Kernel Usage:
        1)      Used by 'JFormForm.Sub-Class' forms class to service a 'jFormTK' query
                run-time processing.
        

Parameters:
qFld - JFormField _QField instance.
yesFields - Array of JFormField objects to be inserted into the active show panel iff the 'jFormTK' Application end user selectes the query's "YES" option...

addQFieldControls

public static void addQFieldControls(JFormField qFld,
                                     DynamicFieldControls[] yesFields,
                                     DynamicFieldControls[] noFields)
        Add the "YES"  and "NO" JFormField's [yesFields,noFields] to the given
        JFormField._QField instances 'reference' control...

        NOTE:
        If a _QField requires just "NO" JFormField Controls,
        Then use this signature with a 'Null' 'yesFields' parameter...

        Kernel Usage:
        1)      Used by 'JFormForm.Sub-Class' forms class to service a 'jFormTK' query
                run-time processing with both "YES" and "NO" JFormField Controls.
        

Parameters:
qFld - JFormField _QField instance.
yesFields - Array of DynamicReferenceControls objects to be inserted into the active show panel iff the 'jFormTK' Application end user selectes the query's "YES" option...
noFields - Array of DynamicReferenceControls objects to be inserted into the active show panel iff the 'jFormTK' Application end user selectes the query's "NO" option...

displayJFormFields

public static java.lang.String displayJFormFields(java.lang.String header,
                                                  java.util.Vector formFields)

displayQFieldControls

public static java.lang.String displayQFieldControls(JFormField qFld,
                                                     boolean raw)

displayQFieldControls

public static java.lang.String displayQFieldControls(JFormField qFld,
                                                     java.lang.Object[] controls,
                                                     boolean raw)
        Build a display String = f[JFormField, Object[]] arguments.

        Kernel Usage:
        1)      'this.showQFieldControls' method to get display string to show in a
                'JFormFrame.message' dialog...
        1)      Used in 'JFormForm.Sub-Class' classes for DEBUG...
        

Parameters:
qFld - The host type = _QField 'JFormField' instance. Used to construct the header's Full Field ID annotation...
controls - Object arrary containing the QField Controls...
raw - Flag [boolean] to control the type of 'JFormField' display. true = display 'JFormField.toString'... false = display 'JFormField' ID, type and tect value ONLY...
Returns:
Display String...

showQFieldControls

public static void showQFieldControls(JFormField qFld,
                                      java.lang.Object[] controls,
                                      char mode,
                                      boolean raw)

getBounds

public static java.awt.Rectangle getBounds(char mode)
        Get the display Bounds Rectangle as a function of the given Mode...
        
        NOTE:
        The 'fullBounds' and 'dialogBounds' rectangles are initialized by the
        'BasejFormTK.initializeBasejFormTK' method = F[jFormTK FrameWork]
        settings.

        However,
        If the bounds Rectangle is requested before this initialization
        occurs,
        Then temporary fields are used to satisfy the dialog displayed during
                the 'jFormTK' load process. This should only occur during the PCS
                Development Phase...
 
        Kernel Usage:
        1)      Many Kernel routines when setting boundries for Dialog Windows...
        

Parameters:
mode - 'F' OR 'D' for "Full", "Dialoag" Bounds request...
Returns:
R= f(mode)...

getDialogBounds

public static java.awt.Rectangle getDialogBounds()
        Get the current 'JFormFrame' Dialog Bounds Rectangle...
        

Returns:
'JFormFrame.dialogBounds' Rectangle...

getFullBounds

public static java.awt.Rectangle getFullBounds()
        Get the current 'JFormFrame' Full Bounds Rectangle...
        

Returns:
'JFormFrame.fullBounds' Rectangle...

getGroupRange

public static java.lang.String getGroupRange(JFormForm form,
                                             java.lang.String groupName,
                                             java.lang.String groupControl)
        Calculate a Group Range control String as follows:
                StartID + DASH + EndID
        where the ID's are derived from the given 'JFormForm' Sub-Class [form] and
        the specified Group Name [groupName] and Group Control...

        Kernel Usage:
        1)      'Util.verifyRange' method when the 'jFormTK' Highlite Control 'Range'
                parameter contains a Group Name...
        

Parameters:
form - A reference to a 'JFormForm' Sub-Class instance...
groupName - The Group Name [String] to be Highlited...
groupControl - The Group Control word as follows: - String "999" to siganl the all Sets shall be highlited... - String with a specific "Set Number" to be highlited...
Returns:
Constructed Group Range as detailed above...

getJCoupleControls

public static JRecord[] getJCoupleControls(JFormField hook,
                                           java.lang.String from)
        Unpack the given JFormField._IField [hook] instance reference control into
        an array of Object's as follows:
                returnObject[0]  -      Integer with int value = # of "YES" JFormField's...
                returnObject[1]  -      1st JRecord for "YES" processing...
                ...
                returnObject[n]  -      nth JRecord for "YES" processing...
                        where 'n' = # of "YES" JFormField's [returnObject[0]]...
                returnObject[m]  -      Integer with int value = # of "NO" JFormField's...
                        where 'm' = 'n' + 1...
                returnObject[m+1]-      1st JRecord for "NO" processing...
                ...
                returnObject[l] -       nth JRecord for "NO" processing...
                        where 'l' = # of "NO" JFormField's [returnObject[m]] + m + 1...

        Kernel Usage:
        1)      'JFormForm.SubClass.preProcessor' to fetch the 'JRecord' instances to be
                inserted into the Show Panel = F[JCouple State Parameters]...
        

Parameters:
hook - JFormField _IField instance...
from - DEBUG annotation used in the Soft Abort messages to inform the 'jFormTK' Developer where the errant reference to this method was invoked...
Returns:
Array of Integer / JFormField Object's as described above...

getQFieldControls

public static java.lang.Object[] getQFieldControls(JFormField qFld)
        Unpack the given JFormField._QField [qFld] instance reference control into
        an array of Object's as follows:
                returnObject[0]  -      Integer with int value = # of "YES" JFormField's...
                returnObject[1]  -      1st JRecord for "YES" processing...
                ...
                returnObject[n]  -      nth JRecord for "YES" processing...
                        where 'n' = # of "YES" JFormField's [returnObject[0]]...
                returnObject[m]  -      Integer with int value = # of "NO" JFormField's...
                        where 'm' = 'n' + 1...
                returnObject[m+1]-      1st JRecord for "NO" processing...
                ...
                returnObject[l] -       nth JRecord for "NO" processing...
                        where 'l' = # of "NO" JFormField's [returnObject[m]] + m + 1...

        Kernel Usage:
        1)      Used by 'JTest.showPostProcessor' method when the _QField JFormField is
                post processed, i.e. when the end user has entered the "Return" Key when
                a _QField is focused...
        2)      Used by 'this.displayQFieldControls' DEBUG method...
        

Parameters:
qFld - JFormField _QField instance.
Returns:
Array of Integer / JFormField Object's as described above...

insertField

public static void insertField(JFormForm form,
                               JFormField before,
                               JFormField newField,
                               int col,
                               int row,
                               int w)

insertField

public static void insertField(JFormForm form,
                               JFormField before,
                               JFormField newField,
                               int col,
                               int row,
                               int w,
                               int h)

insertField

public static void insertField(JFormForm form,
                               JFormField before,
                               JFormField newField,
                               int col,
                               int row,
                               int w,
                               int h,
                               java.lang.String inGroupName,
                               java.lang.String inrepeatMode)

insertField

public static void insertField(JFormForm form,
                               JFormField before,
                               JRecord rec)

insertFields

public static void insertFields(JFormForm form,
                                JFormField before,
                                JRecord[] set)
        This method is designed to insert a set of new JFormField's to the specified
        'JFormForm' [form] 'formFields' Vector and to reset the Form's "Load State" to
        'D' so that the next call to 'jFormIO.showPage' shall reconstuct the
        "Show Panel"...

        The JFormField's to be added are presented as a 'set' Array of 'JRecord' objects...
 
        The "Insertion Point" shall be "Before" the given 'before' 'JFormField' instance...

        Kernel USAGE:
        1)      'jFormTK' Application developer [see Form4 of Test Suite]
        ???     'pre/postProcessor' Methods of the given 'JFormForm' Sub-Class...   
        

Parameters:
form - The host 'JFormForm' Sub-Class...
before - A 'JFormField' Reference to control the insertion of the given 'JRecord' Array JFormField's [set]...
set - An array of 'JRecord' instance. Each 'JRecord' contains a 'JFormField' to be added to the given 'JFormForm' Sub-Class [form]...

XXXrefreshGroupPanel

public static void XXXrefreshGroupPanel(javax.swing.JPanel showPanel,
                                        JLAF groupPanelLAF)
        Refresh the Look and Feel of the Group Panel components.

        Kernel Usage:
        1)      'JHDD_IO.showPage' when an existing 'showPanel' is re-displayed, i.e.
                the current 'JFormForm' Sub-Class Load State is 'A'.

        NOTE:
        This is required to resolve a flow problem when the 'JFormFrame.componentLAF'
        feature is used and the redraw of the page is done. This problem occurs only when
        the Component LAF mods are to the current 'JFormForm' Sub-Class Form fields...

        

Parameters:
showPanel - The current 'JFormForm' Sub-Class Show Panel...
groupPanelLAF - The Group Panel LAF instance to be used on the found 'JPanel' component...

refreshJFormFieldsLAF

public static void refreshJFormFieldsLAF(JFormForm currentForm,
                                         java.lang.String from)
        Refresh the Look and Feel of the Show Panel components.

        Kernel Usage:
        1)      'JFocus.doPreProcess' when there are 'Highlite Control Set(s)' to be
                processed...
        2)      'JFocus.doPostProcess' when there are 'Highlite Control Set(s)' to be
                processed...
        3)      'AppForms.loadJFormForm [4]' Method when a 'JFormForm' Sub-Class is
                loaded but the "To Be Focused" 'JFormField' does not require Pre
                Processing. This call is made iff the 'JFormForm' Sub-Class has an
                active 'Highlite Control' Vector instance. If so, the Highlite Control
                needs processing to ensure that a "Highlited" range is activated when
                a new Form is displayed in the 'showPanel'...
        

Parameters:
currentForm - Host 'JFormForm' Sub-Class...
from - DEBUG String...

setbLastFormEnabled

public static void setbLastFormEnabled(boolean flag)
        Set the "Prior" Form Control Button Enabled property...
 
        Kernel Usage:
        1)      'AppForms.loadJFormForm [4]' Method when the Application 'JFormForm' Sub-Class
                Form is Loaded...
        

Parameters:
flag - Flag [boolean] Prior Form Enabled setting.

setbLastFormToolTipText

public static void setbLastFormToolTipText(java.lang.String text)
 Set the "Prior" Form Control Button ToolTipText property...
 
 Kernel Usage:
        1)      'AppForms.loadJFormForm [4]' Method when the Prior Form Index is >= 0 the Tool
                Tip is modified to show the Prior Form's Title [from 'JFormInfo' instance]...
 

Parameters:
text - Tool Tip Setting [String]...

setbNextFormEnabled

public static void setbNextFormEnabled(boolean flag)
        Set the "Next" Form Control Button  Enabled property...
 
        Kernel Usage:
        1)      'AppForms.loadJFormForm [4]' Method to Disable the "Form" Control Button for
                the "Next Form" iff this is the last available Application Form...
        

Parameters:
flag - Flag [boolean] setting value

setbNextFormToolTipText

public static void setbNextFormToolTipText(java.lang.String text)
        Set the "Next" Form Control Button ToolTipText property...
 
        Kernel Usage:
        1)      'AppForms.loadJFormForm [4]' Method...

Parameters:
text - Tool Tip Text [String]

setBranch

public static void setBranch(JFormForm branchForm,
                             JFormField branchFld)
        Set the "Branch" 'JFormForm' and 'JFormField' controls when the 'jFormTK' 
        Application Developer employs the "" prefix in a run-time assignment Statement...
 
        Kernel Usage:
        1)      'Util.assignment Method when a "" prefix is processed and the associated
                "Dynamic Reference" has been verified as a know and acceptable Branch
                destination...
        X)      'this.Constructor to initialize the value to a 'null'...
        X)      'JFocusManager.processKeyEvent' to 'null' the Branch Control prior to a
                "Focus" event, i.e. prior to calling the 'pre / post' processor methods that
                are responsible for processing a run-time "Assignment" statement.
                NOTE:
                        the run-time "Assignment" statement may include a Branch request ,
                        i.e. the "" prefix.
 

Parameters:
branchForm - 'JFormForm' Sub-Class to branch to.
branchFld - 'JFormField' to set the Focus to.

setButtonPanelHeight

public static void setButtonPanelHeight(int height)
 Set the Buttoon Panel Height...
 

Parameters:
height - Button Panel Height...

setCurrentForm

public static void setCurrentForm(JFormForm newForm,
                                  java.lang.String from)
        Set the current 'JFormForm' control parameter...
 
        Kernel Usage:
        1)      'this.loadFormFieldVector' Method...
        2)      'AppForms.loadJFormForm' Method...
        3)      'JHDD_IO.showPage' Method...
        

Parameters:
newForm - Reference to hte New 'JFormForm' SubClass...
from - DEBUG String to indicate the calling method...

setDialogBounds

public static void setDialogBounds(java.awt.Rectangle bounds)
Set the display lBounds for the JMessage "Dialog" DEFAULT dialog. The given parameters are calculated as a function of the platforms "Screen Size" parameters... Kernel Usage: 1) 'BasejFormTK.initializejFormTK' method during the 'jFormTK' Application initialization...

Parameters:
bounds - The bounds Java Rectangle instance...

setFormPanel

public static void setFormPanel(BasejFormTK base)
        Method that is used by the 'jFormTK' Kernel to establish the JFormFrame 
        Control Parameters specified in the parameters list of this Constructor...
 
        Kernel Usage:
        1)      Invoked by the 'BasejFormTK.initializeBasejFormTK' method....

        NOTE:
        the 'BasejFormTK.initializeBasejFormTK' method is used by the 'jFormTK' Kernel
        'Main' Java method to establish the "Global" 'JFormForm' Instance [JFrame]
        and to establish the "Application Specific" Data Base Vector that is required
        to re-set the Applicaion Look and Feel...
        

Parameters:
base - Reference to the 'jFormTK.BasejFormTK' class instance...

setFullBounds

public static void setFullBounds(java.awt.Rectangle bounds)
Set the display lBounds for the JMessage "Full" DEFAULT dialog. The given parameters are calculated as a function of the platforms "Screen Size" parameters... Kernel Usage: 1) 'BasejFormTK.initializejFormTK' method during the 'jFormTK' Application initialization...

Parameters:
bounds - The Java Rectangle instance...

addGroupSet

public static JFormField addGroupSet(JFormForm form,
                                     JFormField fld_AField,
                                     java.lang.String from)
        Add a new "Group Set" to the current 'jFormTK.ShowPanel'.
        If any JFormField's of the copied set is a "Required Field",
        Then the new JFormField's element is added to the "quickEdit" application Data
        Base [AppDB] Field...
 
        If any 'JFormField' of the previous 'JFormField' has the 'savedQuery' Control set,
                i.e. NON-Null
        Then the referenced _QField 'JFormField' is placed into the new Group Set and ALL
        of the JFormField's placed into the original Group are NOT entered into the new
        Group Set. This is required to service the case where a 'jFormTK' Kernel
        "Group Set" has a _QField that has already been processed. This logic assures
        that the new "Group Set" has the "Query" and not the "Query Resultant"
        JFormField's in the added "Group Set"
 
        Kernel Usage:
        1)      Evoked by 'JFocus.doJFormControl' when a _AField [add Group] button is
                activated via the mouse or the enter/return key...
        

Parameters:
form - 'JFormForm' Sub-Class Host Form
fld_AField - 'JFormField' for the "REQUIRED" _Field 'JFormField'...
from - DEBUG from annotation...
Returns:
'JFormField'

XXXbuildGroup

public static void XXXbuildGroup(JFormForm form,
                                 java.lang.String name,
                                 java.lang.String fieldLabelIn,
                                 java.lang.String promptIn,
                                 char type,
                                 java.lang.String groupName,
                                 java.lang.String[] repeatMode,
                                 int[] col,
                                 int[] row,
                                 int[] width,
                                 int[] height,
                                 int numberOfSets,
                                 JFormField beforeFld)

buildGroup

public static void buildGroup(JFormForm form,
                              java.lang.String name,
                              java.lang.String fieldLabelIn,
                              java.lang.String promptIn,
                              char type,
                              java.lang.String groupName,
                              java.lang.String[] repeatMode,
                              int[] col,
                              int[] row,
                              int[] width,
                              int[] height,
                              java.lang.String[] text,
                              int numberOfSets,
                              JFormField beforeFld)
        This method is designed to build a 'jFormTK' Group Set that consist of one
        'JFormField' instance per set. The 'JFormField' parameters are given as well as
        the number of sets anda reference to the before 'JFormField....

        Kernel Usage:
        1)      Convenience method to be used by the 'jFormTK' application developer.
                See the 'Ping' 'JFormForm' Sub-Class in the Test Suite...
        

Parameters:
form - Host 'JFormForm' Sub-Class Reference...
name - 'JFormField' Name String...
fieldLabelIn - 'JFormField' Label String...
promptIn - 'JFormField' Prompt String...
type - 'JFormField' Label char, e.g. _TField...
groupName - 'JFormField' Group Name String...
repeatMode - 'JFormField' Repeat Mode String...
col - 'JFormField' col int...
row - 'JFormField' row int...
width - 'JFormField' width int...
height - 'JFormField' height int...
text - 'JFormField' initial Text String...
numberOfSets - Number of Sets in Group Set...
beforeFld - 'JFormField' to insert the Group BEFORE...

buildGroup

public static void buildGroup(JFormForm form,
                              java.lang.String groupName,
                              int numberOfFields,
                              int numberOfSets,
                              java.lang.String[] name,
                              java.lang.String[] fieldLabelIn,
                              java.lang.String[] promptIn,
                              char[] type,
                              java.lang.String[][] repeatMode,
                              int[][] col,
                              int[][] row,
                              int[][] width,
                              int[][] height,
                              java.lang.String[][] text,
                              JFormField beforeFld)
        This method is designed to build a 'jFormTK' Group Set that consist of one
        'JFormField' instance per set. The 'JFormField' parameters are given as well as
        the number of sets and a reference to the before 'JFormField....

        Kernel Usage:
        1)      Convenience method to be used by the 'jFormTK' application developer.
                See the 'Highlite' 'JFormForm' Sub-Class in the Test Suite...
        

Parameters:
form - Host 'JFormForm' Sub-Class Reference...
groupName - 'JFormField' Group Name String...
numberOfFields - Number of Fields [int] in each Group Set...
numberOfSets - Number of Sets [int]...
name - 'JFormField' Name String [] Array...
fieldLabelIn - 'JFormField' Label String [] Array... NOTE 'fieldLabelIn': Use "nnn" in Field Label so that "nnn" shall be changed to the current Set #...
promptIn - 'JFormField' Prompt String [] Array... NOTE : 'Prompt': Use "nnn" in Prompt so that "nnn" shall be changed to the current Set #...
type - 'JFormField.type' char [] Array , e.g. _TField...
repeatMode - 'JFormField' Repeat Mode String [][] Array...
col - 'JFormField' col int [][] Array...
row - 'JFormField' row int [][] Array...
width - 'JFormField' width int [][] Array...
height - 'JFormField' height int [][] Array...
text - 'JFormField' initial Text String [][] Array... NOTE : '[][]' Arrays are sequenced as follows: If the number of Fields is = 2 Then sequence = ([][]},{[][]},...{[][]} where there is a {[][]} for each 2 Field Set... and each [] represents a Field Value...
beforeFld - 'JFormField' to insert the Group BEFORE...

getJFormFieldFromFormFields

public static JFormField getJFormFieldFromFormFields(JFormForm form,
                                                     java.lang.String groupName,
                                                     java.lang.String fieldName,
                                                     java.lang.String setNumber,
                                                     java.lang.String from)
        Get a "Reference" to the 'JFormField' instance of the given 'JFormForm' Sub-Class
        [form] = f(the given Group Name, Field Name and Set Number]...
        Kernel Usage:
        1)      'JFocus.doFocus' method to get the First In Group 'JFormField' Reference...
        2)      'JFocus.doFocus' method to get the Last In Group 'JFormField' Reference...
        

Parameters:
form - 'JFormForm' Sub-Class instance...
groupName - Group Name [String] to search for...
fieldName - Field Name [String] to search for...
setNumber - Set Number [String] to search for...
from - DEBUG referenced by annotation...
Returns:
Matching 'JFormField' instance OR 'Null' if not found in 'form'...

getFormFieldIDs

public static java.lang.String getFormFieldIDs(java.lang.String formID,
                                               java.util.Vector formFields,
                                               java.lang.String TAB)
        Construct a Display String of the 'JFormField' ID's in the given
        'JFormField' Vector. Used to construct detailed 'jFormTK' Debug
        information in a 'Util.softAbort' display

        Kernel Usage:
        1)      'this.getJFormFieldFromFormFields' method...
        2)      'this.getJFormFieldIndex' method...
        3)      'this.getContiguousIndex' method...
        4)      'JFormForm.getFormFieldIDs' Method...
        

Parameters:
formID - Form ID String for the given 'formFields' Vector...
formFields - Vector of 'JFormField' instance for the current 'JFormForm' Sub-Class...
TAB - The String to prefix each 'JFormField' ID Line...
Returns:
The constructed Display String

getJFormFieldIndex

public static int[] getJFormFieldIndex(JFormField fld,
                                       java.lang.String from)
        Compute the following Indexes as a function of the given 'JFormField' instance:
                [0]     -       Index of the given 'JFormField' in the Current 'JFormForm' Sub-Class...
                [1]     -       Index of the next "Active" 'JFormField' in the 'JFormForm' Sub-Class...

        Kernel Usage:
        1)      'JFocus.setContiguous' to compute the 'JFocus.contiguous' index...
        2)      'JFocus.FocusState.mouseFocus' to compute the 'JFocus.contiguous' index...
        

Parameters:
fld - 'JFormField' instance to find in the given 'formFields' Vector...
Returns:
'int' array with found and next active indexes...

getJFormFieldIndex

public static int[] getJFormFieldIndex(JFormField fld,
                                       java.util.Vector formFields,
                                       java.lang.String from)
        Compute the following Indexes as a function of the given 'JFormField' instance:
                [0]     -       Index of the given 'JFormField' in the Current 'JFormForm' Sub-Class...
                [1]     -       Index of the next "Active" 'JFormField' in the 'JFormForm' Sub-Class...

        Kernel Usage:
        1)      'JFocus.setContiguous' to compute the 'JFocus.contiguous' index...
        2)      'JFocus.FocusState.mouseFocus' to compute the 'JFocus.contiguous' index...
        

Parameters:
fld - 'JFormField' instance to find in the given 'formFields' Vector...
formFields - Vector of 'JFormField' instance to be examined...
Returns:
'int' array with found and next active indexes...

getContiguousIndex

public static int getContiguousIndex(JFormField currentIn,
                                     JFormField next)
        Given the current and next JFormField's , compute the 'JFormFrame.contiguous'
        control parameter...

        Kernel Usage:
        1)      Used to compute the 'JFocus.contiguous' index by the 'JFocus.setContiguous'
                Method...
        

Parameters:
currentIn - 'JFormField' instance for the current field...
next - 'JFormField' instance for the next field...
Returns:
Computer 'contiguous; index...

deleteGroupSet

public static JFormField deleteGroupSet(JFormForm form,
                                        JFormField dFld,
                                        java.lang.String from)
        Delete a "Set" from the JFormFrame.Show Panel...
 
        Kernel Usage:
        1)      Evoked by 'JFocus.doJFormControl' when a _DField [delete Group] button is
                activated via the mouse or the enter/return key...
        

Parameters:
form - Host 'JFormForm' Sub-Class...
dFld - 'JFormField' for the _DField Button...
from - DEBUG from annotation...
Returns:
Focused 'JFormField'...

XXXdoFocusNextProcessing

public static void XXXdoFocusNextProcessing(JFormField fld,
                                            java.lang.String from)
        Set the given 'JFormField' as the 'jFormState' "Current 'JFormField' Field and 
        reset the 'JFormFrame' Show Panel Scroll parameters...
 
        Kernel Usage:
        1)      NO LONGER USED!                         
        

Parameters:
fld - 'JFormField' to Focus
from - DEBUG annotation of invoking Class.Method...

firstActiveJFormField

public static JFormField firstActiveJFormField(java.lang.String from)
        Return a "Reference" to the first "Active" 'JFormField' of the current
        'Show Panel'...
 
        Kernel Usage:
        1)      'this.getNextActiveJFormField' Method when the last Active JFormField is found...
        2)      'this.getNextActiveField' Method when the given 'JFormField' instance is 'Null'...
        3)      'this.getPreviousActiveJFormField' Method when the given 'JFormField' instance is 'Null'...
        4)      '*this*.showPage when the given 'JFormField' is null...
        5)      'BasejFormTK.JFocusTraversalPolicy.getComponentAfter' when the Pre Processor
                return 'JFormField' is 'Null'...
        6)      'JHDD_IO.showPage' Method [3] iff the target [given] 'JFormField' is Null...
        7)      'Util.getCurrentField' Method iff the 'JFormState' Current 'JFormField' is Null...
        

Returns:
Reference to 1st Active 'JFormField'.

firstActiveJFormFieldIndex

public static int firstActiveJFormFieldIndex()
        Return the index of the first "Active" 'JFormField' of the current
        'Show Panel'...
 
        Kernel Usage:
        1)      NOT USED by Kernel...
        

Returns:
Index [int] to 1st Active 'JFormField' of the current 'ShowPanel'...

firstActiveJFormFieldIndex

public static int firstActiveJFormFieldIndex(java.util.Vector formFields)
        Return the index of the first "Active" 'JFormField' of the given 'jFormFields'
        Vector...
 
        Kernel Usage:
        1)      'this.getPreviousActiveJFormField' Method to detect if the top of the
                current 'JFormForm' Sub-Class Active fields has been reached...
        

Parameters:
formFields - Vector of 'JFormField' elements for the current 'ShowPanel'...
Returns:
Index [int] to 1st Active 'JFormField'.

fyi

public static void fyi(java.lang.String formName,
                       java.lang.String message)

fyi

public static void fyi(java.lang.String formName,
                       java.lang.String message,
                       boolean echo)

fyiItems

public static void fyiItems(java.lang.String header,
                            java.lang.String itemsString)
        Display a "JMessage" window constructed from the given items String
        [itemsString] where the Items String consist of a set of 'JFormField' ID's
        OR a App Commom Data Base [] reference separated by the 'JFormTKDB' Items
        Delimiter. The given 'JFormField' ID's OR  App Common Data Base elements
        are verified against the current 'JFormForm' Sub-Class Form data or the
        current 'AppCommonDB' instance...

        If the references are verified,
        Then the items value field is fetched and displayed... 

        Designed for a  assignment launch to display the current Values of the
        specified 'JFormField' ID's...

        Kernel Usage:
        1)      Used by the 'jFormTK' Kernel Util Abstract Class 'getUtilityValue' method
                when the fyiItems Utility is envoked...
        

Parameters:
header - Header String...
itemsString - String of 'JFormField' ID's separated by the 'JFormTKDB' Items Delimiter...

getBoundaries

public static java.awt.Rectangle getBoundaries(java.lang.String fldID,
                                               java.lang.String from)
        Return a Rectangle that contains the bounds to be used for the "Process Options"
        PopupDynamicReferencing Menu. This menu is specified to be located to the bottom
        of the 'JFormField' [fldID] that the End User has indicated a need to perform
        the 'jFormTK' Dynamic Reference operation on...
 
        Kernel Usage:
        1)      'JFocusManager.actionProcessingListener.actionPerformed' once the End User
                has selected a 'JFormField' Field from the "DynamicReferencing' Menu options...
        

Parameters:
fldID - Target 'JFormField' ID [String]
from - DEBUG: annotation of invoking Class.Method
Returns:
Rectangle with computed boundries

XXXgetBranchJFormField

public static JFormField XXXgetBranchJFormField()
        Get the current 'JFormField' "Branch" control...
 
        Kernel Usage:
        1)      'JFocusManager.processKeyEvent' to determine if a Branch request has been
                requested via a run-time Assignment 'pre / post' processor Statement...
        

Returns:
New Reference to 'JFormField'...

XXXgetBranchJFormForm

public static JFormForm XXXgetBranchJFormForm()
        Get the current 'JFormForm' "Branch" control...
 
        Kernel Usage:
        1)      'JFocusManager.processKeyEvent' to determine if a Branch request has been 
                requested via a run-time Assignment 'pre / post' processor Statement...
        

Returns:
Branched to 'JFormForm'...

getCurrentForm

public static JFormForm getCurrentForm(java.lang.String from)
 Get the the current 'JFormForm' control reference...
 
 Note:
 There may be instances when a request for a 'JFormField' instance occurs before a Form has 
 been loaded. In that case, i.e. the "Current 'JFormForm' is Null, the return 'JFormForm'
 instance is set to the first 'JFormForm' in tha AppDB.appForm Vector...
 
 Kernel Usage:
 This method is envoked throughout the 'jFormTK' Kernel whenever a Reference to the current
 'JFormForm'
 

Returns:
Current 'JFormForm' Reference...

getCurrentState

public static JFormState getCurrentState()
Return the current 'JFormForm' Sub-Class 'JFormState instance... Kernel Usage: 1) 'Util.setCurrentField' Method...

Returns:
'JFormState' reference of the Current 'JFormForm' Sub-Class...

getFormPanel

public static javax.swing.JPanel getFormPanel()

getJFormField

public static JFormField getJFormField(java.lang.String fldIDIn)
        Get a "Reference" to the 'JFormField' for the given 'JFormField' ID OR {if the 
        ID is null [= ""]} the first "Active" 'JFormField' of the Form. 
        If a 'JFormField' ID is given but NOT Found,
        Then this method shall return a 'null' JFormField...
 
        Kernel Usage:
        1)      'JFormState.getcurrentJFormField' Method...
        2)      '*this*.deleteGroup' Method...
        3)      Used by the 'AppForms.getValue' Method...
        4)      'Util.getJFormField' Method when the 'loadState' is Active, i.e. 'A'...
        

Parameters:
fldIDIn - 'JFormField' ID to find
Returns:
'JFormField' w/ matching ID OR 'null' for no match...

getNextActiveJFormField

public static JFormField getNextActiveJFormField(JFormField fldIN)
        Get a reference to the "Active" 'JFormField' after the given 'JFormField' [fldIN]
        in the current 'Show Panel'...
 
        If the given 'JFormField' [fldIN] is null,
        Then the search field is set to the first Active 'JFormField' of the 'JFormForm'
                Sub-Class...
 
        Kernel Usage:
        1)      Called by 'JHDD_IO.showPage' Method if the current 'JFormField' is NOT an
                Active Field...
        2)      Called by 'JHDD_IO.nextField' Method...
        3)      'JFormControl.doFocus' when the 'flowControlFocusChange' Flag is false,
                i.e. when the 'flowControl' is turned off by the Focus Change Event
                Processing Feature...
        

Parameters:
fldIN - 'JFormField' ID for current field
Returns:
'JFormField' Reference to Next Active Field...

getJFormFields

public static java.util.Vector getJFormFields()
        Return a String Array of each 'JFormField' of the current ShowPanel...

        Kernel Usage:
        1)      'JFormFrame.refreshJFormFieldsLAF' Method...
        

Returns:
Array of 'JFormField' instances from the 'showPanel'...

getPreviousActiveJFormField

public static JFormField getPreviousActiveJFormField(JFormField fld)
        Get a reference to the "Active" 'JFormField' before the given 'JFormField' [fld]
        in the current 'Show Panel'...
 
        If the given 'JFormField' [fld] is null,
        Then the search field is set to the first Active 'JFormField' of the 'JFormForm'
                Sub-Class...
 
        Kernel Usage:
        1)      Called by 'JFormControl.doFocus' method when the Focus Change Flow Control
                is turned off, i.e. 'flowControl' SHALL not change the 'JFormForm' Sub-Class
                flow...
        2)      Invoked by the 'JFormField.JComponentsPanelKeyListener.keyPressed' when the
                SHIFT / TAB keys or LEFT ARROW key exits the first Radio Button in the
                JRadioButtonPanel Componetns Set... 
        

Parameters:
fld - 'JFormField' ID for current field
Returns:
'JFormField' Reference to Next Active Field...

getShowPanel

public static JFormFrame.JShowPanel getShowPanel()
        Get the current 'JFormForm' Sub-Class 'Show Panel'...
 
        Kernel Usage:
        1)      'AppForms.loadJFormForm' to establish the 'showPanel for the newly
                loaded 'JFormForm' Sub-Class...
        2)      'JFormField.focusGAINED' Event to reset the Show Panel scroll panel...
        3)      'JFormForm' Constructor' to set the Hint Button Alt/H key Binding...
        4)      'JHDD_IO.showPage' to ensure that the Show Panel is visible...
        5)      'JLAF.getBackground' to setup a default Background color if the
                current color is 'null'          
        6)      'JLAF.getForeground' to setup a default Foreground color if the
                current color is 'null'
        7)      'Util.setFormLAF' method to set the Show Panel LAF to the 'JFormTKDB' defaults...        
        

Returns:
Show Panel [JPanel]...

getShowPanelBounds

public static java.awt.Rectangle getShowPanelBounds()
        Get the current 'JFormForm' * Show Panel Bounds...
 
        Kernel Usage:
        1)      'AddressBook.doGoToForm' Method...
        2)      'JFormWorkSheet.processPrint' Method...
        3)      'JFormWorkSheet.bProcess_actionPerformed' Method...
        

Returns:
Rectangle w/ Show Panel Bounds

loadFormFieldsVector

public static boolean loadFormFieldsVector(JFormForm form,
                                           java.lang.String from)
        Load the 'formFields' Vector and change the given JFormForm's 'loadState to 'A' 
        for the given 'JFormForm'...
 
        If the current Show Panel is 'null' {i.e. has no Elements}
        Then there is no need to check the "Save Condition" of the 'JFormForm'...
 
        NOTE:   this condition exist if the current Form's 'formFields' Vector has been 
                        update to 'add' OR 'remove' jFormField's from a 'JFormForm' Sub-Class.
                        In this instance, the 'showPanel' is cleared* to signal that the newly
                        constructed 'formFields' Vector shall be used to re-draw the indicated 
                        'JFormForm' Sub-Class...
 
        Else, the current 'showPanel' is checked to determine if it has been saved. If
        there is unsaved data in the showPanel, the Application end user is queried to
        specify what shall be done with the current Forms un-saved data. Generally it
        is saved at this time but this 'loadFormFields' request may be cancelled via
        End User request...
 
        Next, the load 'JFormField' Vector process is performed as a function of the
        given [to be loaded] Form's jFormState.isFile Flag as follows:
        If 'isFile' is 'false',
        Then the 'form.init' method is used to construct the initial instances of each
                'JFormField' of the given 'JFormForm'...
        Else ['isFile' is true],
        Then the Form's 'formFields' Vector is checked. 
        If it has elements,
      Then      they are used ASIS to re-load the 'JFormForm' Sub-Class... 
                Else    [there are no current Elements],
                                the 'JHDD_IO.ReadFromFile' method is used to create the 'JFormField'
                                Vector elements as a function of the last "Save" 'JFormForm' operation...

        A boolean flag [fromInit] is return to indicate if the new 'JFormFields' data was
        constructed from the 'init' method of the 'JFormForm' Sub-Class [=true] OR if
        the 'JFormFields' Vector was loaded from a saved file of the 'forms' folder
        [=false]. This flag is used by the 'AppForms.loadJFormForm' method to determine
        if the 'JFormForm' Sub-Class's Focus 'JFormField' shall be "Pre Processed".
        Pre Processing is only required for newly constructed Forms, i.e. 'fromInit'
        equal to true...
 
        Kernel Usage:
        1)      Called by the 'JHDD_IO.showPage' Method to create the 
                'JFormForm.formFields' Vector to be loaded into the 'showPanel'
                iff the 'loadState' is NOT 'A'...
        2)      Called from the AppForms.loadJFormForm Method when a new 'JFormForm'
                Sub-Class shall be loaded...
        

Parameters:
form - 'JFormForm' Sub-Class Form to be loaded...
from - DEBUG annotation of invoking Class.Method

message

public static void message(java.lang.String title,
                           java.lang.String message,
                           java.lang.String fieldID,
                           java.lang.String from)
        Display the given message in a 'JMessage' Class dialog.
        NOTE:
        This signature SHALL present a Full Dialog Window, perform style and Dynamic
        Reference operation on the given message...
 
        Kernel Usage:
        1)      Used throughout the 'jFormTK' Kernel [87 time on 4/14/2007] to present messages
                to the 'jFormTK' Application End User...
        2)      Used throughout this 'JFormFrame' Class to present messages
                to the 'jFormTK' Application End User...

Parameters:
title - Generally this is the 'jFormTK' method name where the message originates from.
message - The message to be presented to the End User.
fieldID - Annotation String if the 'JFormField' Object is not required for new focus...
from - DEBUG calling method annotation...

message

public static void message(java.lang.String title,
                           java.lang.String message,
                           java.lang.String fieldID,
                           char dType,
                           boolean dRef)

message

public static void message(java.lang.String title,
                           java.lang.String message,
                           java.lang.String fieldID,
                           char dType,
                           boolean dRef,
                           java.lang.String from)
        Display the given message in a 'JMessage' Class dialog.
        NOTE:
        This signature SHALL control the Dialog Window display [dialogType],
        perform style on the given message and conditionally [dReference] perform
        Dynamic Reference operation on the given message...
 
        Kernel Usage:
        1)      This 'message' [5] and [8] Methods...

Parameters:
title - Generally this is the 'jFormTK' method name where the message originates from.
message - The message to be presented to the End User.
fieldID - Annotation String if the 'JFormField' Object is not required for new focus...
dType - Dialog Type 'char' ['F' or Non 'F']...
dRef - Compute Dynamic References in 'message' String...
from - DEBUG calling method annotation...

message

public static void message(java.lang.String title,
                           java.lang.String message,
                           java.lang.String fieldID,
                           char cType,
                           boolean dRef,
                           boolean styleMessage)

message

public static void message(java.lang.String title,
                           java.lang.String message,
                           java.lang.String fieldID,
                           char dialogType,
                           boolean dReference,
                           boolean styleMessage,
                           java.lang.String from)
        Kernel Usage:
        1)      'this.message1' Method [NOT Currently in Use]...
        

Parameters:
title - Generally this is the 'jFormTK' method name where the message originates from.
message - The message to be presented to the End User.
fieldID - String of the current 'JFormField'...
dialogType - Dialog Type 'char' ['F' or Non 'F']...
dReference - Compute Dynamic References in 'message' String...
styleMessage - Style the message using 'JMessagePhrase'...
from - DEBUG calling method annotation...

messageTablePrep

public static void messageTablePrep(java.lang.String[] controls,
                                    javax.swing.JTable table,
                                    javax.swing.JScrollPane sp,
                                    char dialogCode,
                                    int[] colWidths,
                                    java.lang.String from)
        Display the given table in a 'JMessageTable' Class dialog.
 
        Kernel Usage:
        1)      'AppCommonDB.JAppCommonDBTable.Constructor' when the 'showAppCommonDB' method is
                envoked...
        2)      'JFocusTraceTable.Constructor' when the Focus Table Display     is selected from the
                'DEBUG' Menu...
        3)      'BasejFormTK.JFormFieldParametersTable.Constructor'

Parameters:
controls - The Header [String] for the 'JMessageTable' Dialog...
table - The JTable being displayed [required for Print Operation]...
sp - The JScrollPane the contains the 'JTable' Instance to be displayed by 'JMessageTable' Class...
dialogCode - Dialog configuration code [='F' for Full Dialog. If NOT 'F', Half Dialog]
colWidths - Int array of column widths.
from - DEBUG annotation of calling Class.method...

messageTable

public static void messageTable(java.lang.String[] controls,
                                javax.swing.JTable table,
                                javax.swing.JScrollPane sp,
                                char dialogCode,
                                int[] colWidths,
                                java.lang.String from)
        Display the given table in a 'JMessageTable' Class dialog.
 
        Kernel Usage:
        1)      'AppCommonDB.JAppCommonDBTable.Constructor' when the 'showAppCommonDB' method is
                envoked...
        2)      'JFocusTraceTable.Constructor' when the Focus Table Display     is selected from the
                'DEBUG' Menu...
        3)      'BasejFormTK.JFormFieldParametersTable.Constructor'

Parameters:
controls - The Header [String] for the 'JMessageTable' Dialog...
table - The JTable being displayed [required for Print Operation]...
sp - The JScrollPane the contains the 'JTable' Instance to be displayed by 'JMessageTable' Class...
dialogCode - Dialog configuration code [='F' for Full Dialog. If NOT 'F', Half Dialog]
colWidths - Int array of column widths.
from - DEBUG annotation of calling Class.method...

XXXmessageTableOfObjects

public static void XXXmessageTableOfObjects(java.lang.String[] controls,
                                            javax.swing.JTable table,
                                            javax.swing.JScrollPane sp,
                                            char dialogCode,
                                            int[] colWidths,
                                            java.lang.String from)
        Display the given table in a 'JMessageTableOfObjects' Class dialog.
 
        Kernel Usage:
        1)      'AppCommonDB.JAppCommonDBTable.Constructor' when the 'showAppCommonDB' method is
                envoked...
        2)      'JFocusTraceTable.Constructor' when the Focus Table Display     is selected from the
                'DEBUG' Menu...
        3)      'BasejFormTK.JFormFieldParametersTable.Constructor'

Parameters:
controls - The Header [String] for the 'JMessageTableOfObjects' Dialog...
table - The JTable being displayed [required for Print Operation]...
sp - The JScrollPane the contains the 'JTable' Instance to be displayed by 'JMessageTableOfObjects' Class...
dialogCode - Dialog configuration code [='F' for Full Dialog. If NOT 'F', Half Dialog]
colWidths - Int array of column widths.
from - DEBUG annotation of calling Class.method...

pause

public static void pause(java.lang.String from)

warning

public static void warning(java.lang.String title,
                           java.lang.String message)
        Display the given message in a 'JMessage' Class dialog.
        NOTE:
        This signature SHALL conditionally perform Message Phrase Styling if
        there is a Non-Null JFormPhrase instance. This signature is used if
        there may be a conflict between the message String and the Style
        parameters.
 
        Kernel Usage:
        1)      Used by the 'JMessagePhrase.showJMessagePhrase' method because the display
                shows the Style Parameters in a unacceptable manner for the Style Message
                processing...
        2       Used various places whenever a Dialog with the 'jFormTK'
                End User is required...

Parameters:
title - Generally this is the 'jFormTK' method name where the message originates from.
message - The message to be presented to the End User.

warning

public static void warning(java.lang.String title,
                           java.lang.String message,
                           char dialogType)

warning

public static void warning(java.lang.String title,
                           java.lang.String message,
                           char dialogType,
                           boolean styleMessage)
        Present a 'Warning' Message to the 'jFormYK' Application End User...

        NOTE:
        This gignature includes the 'styleMessage' parameter to eliminate errors when
        including lines of Java code in the 'Warning' message...

        Kernel Usage:
        1)      'JHDD_IO.updateWorkSheet' method to produce a warning about String Array
                parameters that SHALL not be used in constructing a 'JFormSheet' file...
        

Parameters:
title - String title for the Dialog...
message - Message [String] to be displayed as the 'Warning'...
dialogType - Dialog Type [char], i.e. 'F' for Full Dialog OR anything else for the "Dialog" bounds...
styleMessage - Boolean to control the usage of the current Style controls on the given message...

nextGroupSet

public static void nextGroupSet(JFormForm form,
                                JFormField fld,
                                java.lang.String setNumber)
        Add a new "Group Set" to the current 'JFormFields' Vector based on the given
        JFormField's 'groupName' parameter. This method assumes that at least one set
        currently exist in the current JFormField's Vector...
        If the given 'group' [groupName] is not found,
        Then a Fatal Develop Ohase Fatal Error is presented...
 
        If any JFormField's of the copied set is a "Required Field",
        Then the new JFormField's element is added to the "quickEdit" application Data
        Base [AppDB] Field...
 
        If any 'JFormField' of the previous 'JFormField' has the 'savedQuery' Control set,
                i.e. NON-Null
        Then the referenced _QField 'JFormField' is placed into the new Group Set and ALL
                of the JFormField's placed into the original Group are NOT entered into the
                new Group Set. This is required to service the case where a 'jFormTK'
                Kernel "Group Set" has a _QField that has already been processed.
      This logic assures that the new "Group Set" has the "Query" and not the
                "Query Resultant" JFormField's in the added "Group Set"...

        This method is used when the 'jFormTK' developer wants to insert a new set of
        JFormField's without the usage of a '_AField' Button, i.e. a programmable 
        '_AField' operation...
 
        Kernel Usage:
        1)      Call by 'jFormTK' Application 'JFormForm' Sub-Class Forms as required to
                construct a "Fixed" Group Set. See Ping / Pong 'jFormTKTest' Classes...
        

Parameters:
form - Host 'JFormForm'
fld - 'JFormField' that contains the "GroupName"
setNumber - Current Set Number [String]

onlyOneActiveJFormField

public static boolean onlyOneActiveJFormField()
        Return a 'true' boolean IFF there is only one "Active" 'JFormField' in the current
        Show Panel.
 
        Kernel Usage:
        1)      'jFormState.setcurrentJFormField' Method to detect the special case where there
                is only on "Active" 'JFormField' on the form and, therefore, the post Processor
                Method shall be envoked for this "Special Case"...
        

Returns:
Flag [boolean]

removeJFormFieldsRange

public static void removeJFormFieldsRange(JFormForm form,
                                          JFormField fromFld,
                                          JFormField to,
                                          java.lang.String fromIn)
        Remove the JFormField's from the given 'JFormForm' given a 'from' and 'to'
        'JFormField' reference...

        Do not set the focus after the removal. The calling method SHALL be responsible
        for setting the focus via the 'JFocus.doToBeFocused' method. This methodology is
        used so that this method can be used to remove a finite set of 'JFormField'
        instances from multiple 'JFormForm.SubClass' forms.

        Kernel Usage:
        1)      'JFormFrame.addSpouseButtonControls' method to remove the 'JCouple'
                _BField 'JFormField' after the 2nd Spouse Fields are inserted into the
                Show Panel...

TBD)    'JHDD_IO.removeDefinition' Method...
        

Parameters:
form - The host 'JFormForm.SubClass' instance...
fromFld - The start 'JFormField' reference to be removed...
to - The end 'JFormField' reference to be removed... If 'toFld' is 'Null' Then the range is one 'JFormField' from 'fromFld' to 'fromFld'...
fromIn - DEBUG String annotation for invoking Class.Method...

removeGroupFields

public static void removeGroupFields(JFormForm form,
                                     java.lang.String groupName,
                                     java.lang.String setNumberToRemove)
        Remove the indicated Set from the Show Panel and adjust the Set Numbers in the
        remaining 'JFormField' instances...

        NOTE:
        'jFormTK' set numbers are generally numerics starting at zero.
        However, some set numbers are set to non-numerics, e.g. the JPerson
        text from the PCS Survivors List PLUS 'jFormTK' Application.

        Non-Numeric Set Numbers are NOT serviced by this method, i.e. a
        Fatal run-time error [Soft Abort] is created...
 
        Kernel Usage:
        1)      'JAddressBook.AddressBookRemove.doRemoveYes' method...
        

Parameters:
form - Host 'JFormForm' Sub-Class
groupName - Group Name [String] to remove
setNumberToRemove - Set Number [String] to be removed

removeNamesFromShowPanel

public static void removeNamesFromShowPanel(JFormForm form,
                                            java.lang.String[] names)
        Remove the JFormField's with the specified Names [names] from the current
        'Show Panel' Components and verify that the current Show Panel contains the
        given 'JFormForm' Sub-Class [form]...
 
        NOTE:
        Currently this logic "Requires" that the 'JFormField' Names to be removed
        represent an entire "Row" of JFormField's. This is true for deleting user
        queries produced by the 'JHDD_IO' "Query" Method and eliminated 
        via the 'JHDD_IO' "removeQuery" Method.
 
        The thing to remember here is that aa soon as a "NON" 'JFormField' Name is found
        in a "Box" Layout, the "ENTIRE" Box Layout is re-loaded back into the
        'JFormFrame.Show Panel'.
        Of course, additional logic could be coded to remove just the specified
        'JFormFields' but [at this time] PCS see's no need for that functionality and
        does not choose to add the additional "Run-Time" overhead...
 
        Kernel Usage:
        1)      'JFormFrame.addSpouseButtonControls' method to remove the 'JCouple'
                _BField 'JFormField' after the 2nd Spouse Fields are inserted into the
                Show Panel...
        

Parameters:
form - Host 'JFormForm' Sub-Class
names - String Array of 'JFormField' names to be removed

setGroupPanelLAF

public static void setGroupPanelLAF()
        Reset the Group Panel Background as a function of the 'jFormTK' Data Base
        'groupPanelLAF' JLAF instance...

        Kernel Usage:
        1)      'JFormInfo.removeHighliteSet' method when the 'processingCode' OR
                'exitProcessingCode' of a 'jFormTK' Highlite Set is "REMOVE"...
        2)      'JFocus.doPostProcess' method when the last [Exit] 'JFormField' is
                ready for Post Processing and the 'exitProcessControl' is "OFF" or
                "Remove"...
        3)      'this.refreshShowPanel' method when the "Processing Control" of
                a 'highliteControls' Set is "OFF"...
        


setGroupPanelLAF

public static void setGroupPanelLAF(java.util.Vector vGroupHighlited,
                                    java.awt.Color background)
        Reset the Group Panel Background as a function of the given 'jFormTK' Data Base
        'groupPanelLAF' JLAF instance...

        Kernel Usage:
        1)      'JFormInfo.removeHighliteSet' method when the 'processingCode' OR
                'exitProcessingCode' of a 'jFormTK' Highlite Set is "REMOVE"...
        2)      'JFocus.doPostProcess' method when the last [Exit] 'JFormField' is
                ready for Post Processing and the 'exitProcessControl' is "OFF" or
                "Remove"...
        

Parameters:
vGroupHighlited - A vector of the Group Highlite Controls as follows: GroupName+DOT+Set Number... NOTE: If this vector is NOT Null Then only the Show Panel JPanel instances that have a matching 'JPanel.name' are set... Else [Vector is Null]... All the 'ShowPanel.JPanel' [i.e. All Group Panel's] are set...
background - The Color to set the 'JPanel' Background To... Kernel Usage: 1) The no argument signature of this Class... 2) 'this.refreshJFormFieldsLAF' method when a 'JFormField' in a 'jFormTK' Group is highlited...

setIsComplete

public static int setIsComplete()
        Set the 'isComplete' index as the number of "Required Fields" of the current
        'JFormForm'     Sub-Class that still containe the default "Required Fields" String
        [jFormTKDB.requiredFieldText]...

        NOTE:
        The 'JFormForm' Sub-Class is considered to be complete when the 'isComplete'
        index equals 0...
 
        Kernel Usage:
        1)      Called from the 'JUnloadForm.add' Method when a 'JFormForm' Sub-Class is
                unloaded from the 'jFormTK' Show Panel...
        2)      Called from 'JHDD_IO.writeToFile' to ensure that the 'isComplete' control
                of the Form's 'JFormInfo' is set properly...
        

Returns:
the constructed'isComplete' Index [int]...

setUp

public static void setUp()
Re-display the JFormFrame at the 'Previous' Set...


showFormFields

public static void showFormFields(JFormForm form,
                                  java.lang.String from)
        Show the given 'JFormForm.formFields' Content in a 'JFormFrame.message' Dialog...

        Kernel Usage:
        1)      DEBUG usage...
        

Parameters:
form - 'JFormForm' Sub-Class...
from - DEBUG from String...

showFormFields

public static void showFormFields(JFormForm form,
                                  java.lang.String from,
                                  boolean debug)
        Show the given 'JFormForm.formFields' Content to the Java Console, i.e. via
        the 'sysout' command OR the 'JFormFrame.message' Dialog as a function of the
        'debug' flag...

        Kernel Usage:
        1)      DEBUG usage...
        

Parameters:
form - 'JFormForm' Sub-Class...
from - DEBUG from String...
debug - Output display flag [true=sysout, false = JFormFrame.dialog...

showFormFields

public static void showFormFields(JFormForm form,
                                  java.util.Vector formFields,
                                  java.lang.String from)
        Show the given 'JFormForm.formFields' Content in a 'JFormFrame.message' Dialog...

        Kernel Usage:
        1)      DEBUG usage...
        

Parameters:
form - 'JFormForm' Sub-Class...
formFields - 'Form Fields Vector of 'JFormField' instances...
from - DEBUG from String...

showFormFields

public static void showFormFields(JFormForm form,
                                  java.util.Vector formFields,
                                  java.lang.String from,
                                  boolean debug)
        Show the given 'JFormForm.formFields' Content in a 'JFormFrame.message' Dialog...

        Kernel Usage:
        1)      DEBUG usage...
        

Parameters:
form - 'JFormForm' Sub-Class...
formFields - 'Form Fields Vector of 'JFormField' instances...
from - DEBUG from String...
debug - Output display flag [true=sysout, false = JFormFrame.dialog...

showFormFields

public static java.lang.String showFormFields(java.lang.String formID,
                                              java.util.Vector formFields,
                                              java.lang.String noShow)
        Construct a display String with a line for each 'JFormField' instance in the
        given 'formFields' Vector.

        DO NOT show the fields specified in the 'noShow' control.

        If 'noShow' is NOT 'null'
        Then    do not show tha second line of the header, i.e. the header line to
                        identify the field columns...
        Kernel Usage:
        1)      DEBUG usage to build 'formFields' information into a message / warning
                Dialog...
        

Parameters:
formID - Form ID String used in the display header line.
formFields - Vector of 'JFormField' instances.
noShow - Do NOT Show Fields String. If a field name is in this String then it shall NOT be displayed...
Returns:
Display 'formFields' String...

showFoundGroup

public static void showFoundGroup(java.lang.String groupName,
                                  java.util.Vector v)
 'jFormTK' Kernel DEBUG method to display the 'JFormField' Type. Row, Col, repeatMode and availability 
 parameters for each 'JFormField' in the given Vector [v] that has the 'JFormField'.GroupName equal to the 
 given Group Name [groupName].
 

Parameters:
groupName - Group Name [String] to display.
v - Vector of JFormField's to search...

showPanelToFormFields

public static java.util.Vector showPanelToFormFields(java.lang.String from)
        Construct the JFormField's Vector from the current contents of the 'jFormTK' 
        kernel "Show Panel" instance...
 
 NOTE:  'jFormTK' Kernel Groups are contained in JPanels on the 'showPanel'. 
                        This method shall unpack each Group Panel to retrieve the JFormField's 
                        that are then placed into the return Vector of JFormField's...
 
        Kernel Usage:
        1)      'JFocus.setUnselectedLAF' when the previous Focus is 'Null'...
        2)      'this.firstActiveJFormField' Method...
        3)      'this.firstActiveJFormFieldIndex' Method...
        4)      'this.getNextActiveField' Method...
        5)      'this.getJFormField' given Field ID Method...
        6)      'this.getPreviousActiveField' given a 'JFormField' instance Method...
        7)      'this.removeGroupFields' Method...
        8)      'this.setIsComplete' Method...
        9)      'this.XXXgetCurrentShowPanelHeight' Method...
 10)    'this.getGroupPanelElementHeight' Method...
 11)    'this.getNumberOfJFormFields' Method...
 12)    'this.getNumberOfRows' Method...
 13)    'this.lastActiveJFormField' Method...
 14)    'this.YYYsetFocusFields' Method...
 

Parameters:
from - DEBUG String annotation...
Returns:
Vector of 'JFormField's from 'showPanel'...

showShowPanel

public static void showShowPanel(JFormForm form,
                                 java.lang.String message)
        DEBUG method is designed to show the 'JFormField' instances in the current 
        'jFormTK.showPanel.
        The 'JFormForm' Sub-Class [form] is required to produce the Header information. 
        The 'message' String is used to annotate the display conditions...
 
        Kernel Usage:
        1)      *this*.showPage for DEBUG purposes...
 

Parameters:
form - Host 'JFormForm' Sub-Class.
message - DEBUG annotation String

verifyForm

public static boolean verifyForm(JFormForm currentForm,
                                 JFormForm afterForm)
        Verify the new 'JFormForm' to be loaded into the 'jFormTK' Show Panel...
 
        First, the current 'JFormForm' is checked to ensure that it has been properly 
        saved to the 'jFormTK' storage device.
 
        The return flag is set as a function of what the End User response is to the 
        'save' Current Form Dialog...
 
        Kernel Usage:
        1)      '*this*'loadFormFieldsVector' Method to ensure that the current
                'JFormForm'     Sub-Class is saved prior to loading the new Form's JFormField's
                Vector...
        2)      Called by 'AppForms.loadJFormField[4]' Method to ensure that the current
                Form is saved prior to loading the next JFormForm Sub-Class...
 

Parameters:
currentForm - Current 'JFormForm' Sub-Class
afterForm - New 'JFormForm' Sub-Class
Returns:
Flag [boolean] is set as a function of what the End User response is...

verifySaveForm

public static boolean verifySaveForm(boolean doExit)
        Query the 'jFormTK' Application End User before saving this 'JFormForm' Sub-Class
        to the storage device, e.g. HDD...

        The End User may perform the following operations on the given 'JFormForm'
        Sub-Class:
                .       Save and proceed to the new 'JFormForm' Sub-Class Form...
                .       Not Save the current 'JFormForm' Sub-Class and proceed to the new Form...
                .       Revert the Storage Device to the state prior to the current data entries
                        and proceed to the new 'JFormForm Sub-Class' processing...
                .       Cancel the new 'JFormForm' Sub-Class Load request and leave the current
                        'JFormForm' Sub-Class as is...

        Kernel Usage:
        1)      '*this*.verifyForm' Method...
        2)      'BasejFormTK.doExitApplication' Method iff the End User has selected the Exit
                Application Button from the 'jFormTK' "Controls" TAB Panel...
                NOTE:
                        This operation does not use the 'loadNewForm' return flag since the
                        Application Termination has been requested...
        

Parameters:
doExit - Indicates if the 'jFormTK' Application is about to Exit... Note: Currently not used anywhere!
Returns:
Flag to indicate the required processing after the Current 'JFormForm' Sub-Class is saved, reverted OR kept active via the End Users directive...

XXXclearPage

public void XXXclearPage()
        Clear the current 'JFormForm' from the *this* Work Panel [ShowPanel]. It removes
        all of the JFormField's from the Show Panel and set the 'ShowPanel' Title to NONE.
        It will also set the 'CurrentForm' to null so that the method can signal the
        existance of NO 'JFormForm'
 
        Kernel Usage:
        1)      '*this*.verifyForm' Method when the "Load New Form" Flag is set,
                i.e. the current Form is being removed...
        2)      'JHDD_IO.changeLoadState' Method - 'A' --> 'D' operation...
        


displayHelp

public static void displayHelp()
        Display the 'help' message of the given 'JFormField'.
 
        Kernel Usage:
        1)      'JFocusManager' when 'jFormTK' Application End User presses the 'F1'
                Key.
        


displayHint

public static void displayHint()
        Display the 'Hint' Message that is associated with the current 'JFormField'.
 
        If no hint is provided, i.e. the 'hintText' is Null,
        Then the 'jFormTKDB' 'hintDefault' String is displayed...
 
        If the current 'hintText' starts with the open paren [(],
        Then it is assumed that an "Indirect Reference" to a 'jFormTKDB' String is
                required.
 
        If the unpacked 'jFormTKDB' reference is NOT found,
        Then a 'jFormTK' development Error has occurred a Soft Abort shall be envoked...
 
        Kernel Usage:
        1)      'JFocusManager.processKeyEvent' when the 'ALT / H' Keys are Pressed...
        2)      'JFormField.mousePressed' when the End User Selects the JFormForm' Hint
                Button... 
        


displayInfo

public static void displayInfo(JFormForm form)
 Display the current 'JFormForm' Sub-Class Info Text...
 
 Kernel Usage:
 1) '*this*.SymAction' Method when the End User Selects the 'Info' button of a 
    'JFormForm' Sub-Class Instance...
 

Parameters:
form - Host 'JFormForm' Sub-Class...

doJCouple

public static void doJCouple(JFormForm form,
                             JCouple couple,
                             JFormField hook)
        Process a 'JCouple' request...
        NOTE:   The 'JCouple' command is found in the 'preProcessObject' field of
                        the given 'JFormField' _IField instance [hook]...

        The 'JRecord' collection for this 'JCouple' are encoded into the hook.reference
        parameter. See the 'JFormFrame.addJCoupleControls' method...

        The 'hook.reference' control is decoded into a JRecord Array via the
        'JFormFrame.getJCoupleControlss' method...

        Kernel Usage:
        1)      'JFormForm.SubClass.preProcessor' OVERRIDE Method...
        

Parameters:
form - The Host 'JFormForm.SubClass' instance...
couple - The 'JCouple' instance assigned to 'form'...
hook - The 'JFormField' _IField used as the 'JCouple' Run-Time Hook...

addSpouseButtonControls

public static JFormField addSpouseButtonControls(JFormForm form,
                                                 JFormField fld,
                                                 JFormField hook)
        

Parameters:
form - Host 'JFormForm.SubClass' reference...
fld - 'JFormField' reference
hook - 'JFormField' hook...
Returns:
Too be focused 'JFormField'...

doMark

public static void doMark()
'toggle' the field mark of the current JFormField. Note: 1) This method is envoked when the 'jFormTK' Application End User has selected the 'Mark' Button from the 'jFormTK' Framework Button Controls. By definition, a 'JFormField' that has the "Required Field" bit set can not be "Marked" for Quick Edit Processing since ALL "Required Fields" are already in the Quick Edit instance. Therefore, if a "Mark" of a required field is attempted, a message is presented to the End User to explain why marking it is redundant... 2) If the current 'JFormField' has other than a "Mark" or "Required Field" prefix, Then a 'jFormTK' Application development error has occurred and a 'Soft Abort" is presented to the Application Developer... Kernel Usage: 1) Used by 'JFormFrame' Class when the end user select the 'Mark' button via the mouse or the ALT / M key combinations... 2) May be used by 'jFormTK' Application Developer 'JFormForm' Sub-Class toggle of the current mark is required...


doNotePad

public static void doNotePad()
 Do the 'jFormTK' Kernel NotePad Edits...
 
 Kernel Usage:
 1) Called exclusively by *this* 'JFormFrame' when the End User  has selected the 
 "NotePad" button ['bNotePad']...
 


doSave

public static void doSave()
 Save the contents of the currntly displayed 'JFormForm' Sub-Class to the Storage Device...
 
 Kernel Usage:
 1) *this*.actionPerformed Event Handler when the End User has selected the "Save" Button...
 


findJFormField

public int findJFormField(java.lang.String ID)
 Find the given 'JFormField' ID in the currently displayed Show Panel...
 
 Kernel Usage:
 1) Not currently used by the 'jFormTK' Kernel!
 

Parameters:
ID - 'JFormField' ID to search for...
Returns:
Components Index of the Found 'JFormField' ID OR -1 for not Found code...

formFieldsToJFormData

public static java.util.Vector formFieldsToJFormData(java.util.Vector formFields,
                                                     java.lang.String from)
        Construct 'JFormData' Vector of 'savedJFormField' Strings as a function of the
        given JFormField 'formFields' Vector...
 
        NOTE:   a 'jFormTK' Kernel 'formFields' Vector is a collection of JFormField's as
                        they are unpacked from a 'showPanel' display...
 
        Kernel Usage:
        1)      'JHDD_IO.writeToFile' Method...
        

Parameters:
formFields - Vector of 'showPanel' JFormField's...
Returns:
Vector of 'savedJFormField' Strings...

formFieldsToShowPanel

public void formFieldsToShowPanel(java.util.Vector formFields)

getBannerHeight

public static int getBannerHeight()
Get the Banner Height

Returns:
'bannerHeight' JFormFrame.java Parameter [int]...

getButtonPanelHeight

public static int getButtonPanelHeight()
Get the Button Panel Height

Returns:
'buttonPanelHeight' JFormFrame.java Parameter [int]...

getCurrentFormIndex

public static int getCurrentFormIndex()
 Get the "Current" Form Order * Index...
 
 Kernel Usage:
 1) 'AppForms.loadJFormForm' Method to calculate the next Form Index after all of the 
    Application Forms have been accessed...     
 

Returns:
Current 'JFormForm' Index...

getHintPanelDimension

public static java.awt.Dimension getHintPanelDimension()
        Return the current Hint Panel Width and Height via a 'Dimension' Field...
 
        Kernel Usage:
        1)      'JMessage Class to reshape the Message Dialog display...
        2)      'JAddressBook.showAddressBook' Method....
        

Returns:
Dimension

getNumberOfRows

public static int getNumberOfRows()
 Return the number of Rows in the current 'JFormFrame.ShowPanel'. 
 
 NOTE: Returns the Row Number of the last 'JFormField' on the 'showPanel'.
 
 Kernel Usage:
 1) '*this*.printForm' Method to compute the number of pages to be displayed for the current 
    Application Form [JFormForm]...
 

Returns:
Number of Rows in 'showPanel' 'JFormForm' Sub-Class...

getHeaderHeight

public static int getHeaderHeight()
Get the Headert Height...

Returns:
Header Height...

getShowPanelHeight

public static int getShowPanelHeight()
 Return the current Show Panel Height...
 
 Kernel Usage:
 1) 'JFormForm.Constructor' to initialize the JFormForm's Field [JFormField] height...
 

Returns:
'showPanel' Height [int]...

getShowPanelWidth

public static int getShowPanelWidth()
 Return the current Show Panel Width...
 
 Kernel Usage:
 1) 'JFormForm.Constructor' to initialize the JFormForm's Field [JFormField] width...
 

Returns:
'showPanel' Width [int]...

getTABHeight

public static int getTABHeight()
Get the Tab Height

Returns:
'tabHeight' JFormFrame.java Parameter [int]...

lastActiveJFormField

public static JFormField lastActiveJFormField()
 Return a "Reference" to the Last "Active" 'JFormField' of the current 'Show Panel'...
 
 Kernel Usage:
 1) '*this*.showPage' Method...
 2) '*this*.lastActivejFormField' Method...
 

Returns:
'JFormField' Reference to the last Active 'showPanel' Field...

setDown

public static void setDown()
 Re-display the JFormFrame at the 'Next' Group Set...
 


resetControlButtons

public static void resetControlButtons(JFormForm currentForm)
 Restore the content of the 'jFormTK' Kernel Button Panel as a function of the 
 'controlButtonControls' Vector of the given 'JFormForm'[currentForm]...
 
 NOTE:
 If the current Form does not have any 'GroupNames' employed,
 Then the 'Back' and 'Next' BUttons are automatically removed from the supplied 
      'Control Button Controls' Vector...
 
 Kernel Usage:
 1) 'AppForms.loadJFormForm' Method...
 2) 'JHDD_IO.WriteToFile' Method...
 

Parameters:
currentForm - Current 'JFormForm' Sub-Class Reference...

setbBack

public static void setbBack(java.awt.Color background,
                            java.awt.Color foreground,
                            java.awt.Font font)
 Re-set the 'JFormForm' "Back" Control button...
 
 Kernel Usage:
 1) 'Util.setFormLAF' Method...
 

Parameters:
background - Background Color...
foreground - Foreground Color...
font - Button Font...

setBannerHeight

public static void setBannerHeight(int height)
Set 'jFormTK' Kernel Framework Banner Height...

Parameters:
height -

setbInfo

public static void setbInfo(java.awt.Color background,
                            java.awt.Color foreground,
                            java.awt.Font font)
 Re-set the 'JFormForm' "Info" Control button...
 
 Kernel Usage:
 1) 'Util.setFormLAF' Method...
 

Parameters:
background - Background Color...
foreground - Foreground Color...
font - Button Font...

setbMark

public static void setbMark(java.awt.Color background,
                            java.awt.Color foreground,
                            java.awt.Font font)
 Re-set the 'JFormForm' "Mark" Control button...
 
 Kernel Usage:
 1) 'Util.setFormLAF' Method...
 

Parameters:
background - Background Color...
foreground - Foreground Color...
font - Button Font...

setbNext

public static void setbNext(java.awt.Color background,
                            java.awt.Color foreground,
                            java.awt.Font font)
 Re-set the 'JFormForm' "Next" Control button...
 
 Kernel Usage:
 1) 'Util.setFormLAF' Method...
 

Parameters:
background - Background Color...
foreground - Foreground Color...
font - Button Font...

setbNextForm

public static void setbNextForm(java.awt.Color background,
                                java.awt.Color foreground,
                                java.awt.Font font)
 Re-set the 'JFormForm' "Next Form" Control button...
 
 Kernel Usage:
 1) 'Util.setFormLAF' Method...
 

Parameters:
background - Background Color...
foreground - Foreground Color...
font - Button Font...

setbNotePad

public static void setbNotePad(java.awt.Color background,
                               java.awt.Color foreground,
                               java.awt.Font font)
 Re-set the 'JFormForm' "NotePad" Control button...
 
 Kernel Usage:
 1) 'Util.setFormLAF' Method...
 

Parameters:
background - Background Color...
foreground - Foreground Color...
font - Button Font...

setbPrint

public static void setbPrint(java.awt.Color background,
                             java.awt.Color foreground,
                             java.awt.Font font)
 Re-set the 'JFormForm' "Print" Control button...
 
 Kernel Usage:
 1)     'Util.setFormLAF' Method...
 

Parameters:
background - Background Color...
foreground - Foreground Color...
font - Button Font...

setbLastForm

public static void setbLastForm(java.awt.Color background,
                                java.awt.Color foreground,
                                java.awt.Font font)
        Re-set the 'JFormForm' "Previous Form" Control button...
 
        Kernel Usage:
        1)      'Util.setFormLAF' Method...
        

Parameters:
background - Background Color...
foreground - Foreground Color...
font - Button Font...

setbQuit

public static void setbQuit(java.awt.Color background,
                            java.awt.Color foreground,
                            java.awt.Font font)
        Re-set the 'JFormForm' "Quit" Control button...
 
        Kernel Usage:
        1)      'Util.setFormLAF' Method...
        

Parameters:
background - Background Color...
foreground - Foreground Color...
font - Button Font...

setbSaveEnabled

public static void setbSaveEnabled(boolean flag)
        Set the 'JFormForm' "Save" Control button Enable Flag...
 
        Kernel Usage:
        1)      'JFormState.setIsSaved' Method...
        

Parameters:
flag - Boolean to set the 'bSave' Enabled flag to...

setbSave

public static void setbSave(java.awt.Color background,
                            java.awt.Color foreground,
                            java.awt.Font font)
        Re-set the 'JFormForm' "Quit" Control button...
 
        Kernel Usage:
        1)      'Util.setFormLAF' Method...
        

Parameters:
background - Background Color...
foreground - Foreground Color...
font - Button Font...

setButtonPanel

public static void setButtonPanel(java.awt.Color background,
                                  java.awt.Color foreground,
                                  java.awt.Font font)
        Re-set the 'JFormForm' "Button Panel" Look and Feel Parameters...
 
        Kernel Usage:
        1)      'Util.setFormLAF' Method...
        

Parameters:
background - Background Color...
foreground - Foreground Color...
font - Button Font...

setControlButtonControls

public static void setControlButtonControls(int iInfo,
                                            int iSave,
                                            int iPrint,
                                            int iQuit,
                                            int iNotePad,
                                            int iMark,
                                            int iBack,
                                            int iNext,
                                            int ipriorForm,
                                            int inextForm,
                                            JFormForm form)
        Set the contents of the Control Button Controls Vector for the specified
        'JFormForm'     Sub-Class [form].
 
        NOTE:
        the 'controlButtonControls' Vector is designed to control the Look and Order of 
        the Control Buttons in the given 'JFormForm'...
        For example, to reverse the order of the default control buttons, the following
        code is required to use the 'JFormFrame.setControlButtonControls' Method:
                JFormFrame.setControlButtonControls
        //      bInfo, bSave, bPrint,bQuit, bNotePad, bMark, bSetUp, bSetDown,
        //      bNextForm, bLastForm...
                (  10,   9,     8,     7,      6,       5,     4,       3,
         2,       1,    this);
 
        Kernel Usage:
        1)      This method is envoked by any 'jFormTK' Developer's 'JFormForm' Sub-Class that
                is required to change the Order, Existance OR Enable Property of the 'jFormTK'
                Control Buttons...
        

Parameters:
iInfo - Control Button Order Index[int]...
iSave - Control Button Order Index[int]...
iPrint - Control Button Order Index[int]...
iQuit - Control Button Order Index[int]...
iNotePad - Control Button Order Index[int]...
iMark - Control Button Order Index[int]...
iBack - Control Button Order Index[int]...
iNext - Control Button Order Index[int]...
ipriorForm - Control Button Order Index[int]...
inextForm - Control Button Order Index[int]...
form - 'JFormForm' Sub-Class Reference

setCurrentFormIndex

public static void setCurrentFormIndex(int formIndex)
        Set the 'jFormTK' "Current Form Order Parameter that is used the the 'jFormTK' to 
        control the "Automatic Ordering" of the Application Forms...
 
        Kernel Usage:
        1)      'ppForms.loadJFormForm [4]' Method...
        

Parameters:
formIndex - 'JFormForm' Sub-Class Order Index...

setNotePadActiveBorder

public static void setNotePadActiveBorder(boolean flag)
 Set the 'notePadBorder' to 'notePadActiveBorder' if the given flag is true, 
 else [flag is false] set 'notePadBorder' tp 'controlButtonBoder...
 

Parameters:
flag - Control Flag [boolean]

setPrompt

public static void setPrompt(JLAF laf)
 Set the 'JFormFrame' Prompt Field "Look & Feel' Parameters as a function of the given 'JLAF' [laf]...
 
 Kernel Usage:
 1) 'Util.setFormLAF' Method each time a new 'JFormForm' is loaded into the 'showPanel...
 

Parameters:
laf - 'JLAF' controls for the 'jFormTK' Kernel Prompt Object...

setHeaderHeight

public static void setHeaderHeight(int height)
Set the Header Height...

Parameters:
height - Header FrameWork Object Height

setPrompt

public static void setPrompt(java.lang.String promptIn,
                             java.lang.String from)
        Set the 'JFormFrame' Prompt Display at the bottom of the 'JFormFrame' and 
        "Style" the presentation iff the 'JPromptPhrase' instance exist...
 
        NOTE:
        If the 'JPromptPhrase' was instanced,
        Then
                the given 'prompt' [promptIn] was encoded by the 'Util.buildStyledPrompt'
                Method so that this method can perform run-Time "Style" operations based on
                the 'jFormTK' Application's 'promptPhrase' controls...
 
        The encoding "Format" is as follows:
        1)      'Word Phrase'
        2)      'jFormTKDB.getAssignmentDelimiter'
        3)      'jLAF Control as follows:
                        "p" - Use 'jFormTKDB.promptLAF'
                        "s" - Use 'jFormTKDB.prompPhraseLAF'
                        "vLAF" - build a jLAF as a function of the given "encoded LAF"...
        4)      'jFormTKDB.getGroupSaveDelimiter'
        5)... n)
                the above fields are repeated untill the entire prompt has been presented...

        Kernel Usage:
        1)      'JFocus.reqeustFocus' Method: 'queryPrompt'...
        2)      'JFocus.reqeustFocus' Method: 'personPrompt'...
        3)      'JFormField.focusGAINED' Event...
        

Parameters:
promptIn - Prompt Lines with Encoding for Prompt Style if 'jFormTK' Kernel Feature is active...

setPromptBorder

public static void setPromptBorder()
 Set the 'jFormTK' Framework Prompt Phrase...
 
 Kernel Usage:
 1) '*this*.showPage' Method...
 2) 'JFocusManager.processKeyEvent' when the End User uses the 'Alt / F11' keys 
    to toggle the "Built_In-Test" Controls...
 


setPromptBorder

public static void setPromptBorder(JLAF laf)

setShowPanelHeight

public static void setShowPanelHeight(int height)
Set the 'jFormTK' Kernel Shpw Panel Height... Kernel Usage: !) BasejFormTK during the 'jFormTK' Application Initialization Phase...

Parameters:
height - Show Panel Height [int]

setShowPanelWidth

public static void setShowPanelWidth(int width)
Set the 'jFormTK' Kernel Shpw Panel Width... Kernel Usage: !) BasejFormTK during the 'jFormTK' Application Initialization Phase...

Parameters:
width - Show Panel Width [int]

setTabHeight

public static void setTabHeight(int height)
Set 'jFormTK' Kernel Framework Tab Height... Kernel Usage: 1 'BasejFormTK.initializeBasejFormTK' method to normalize the Tab Height as a function of the display dimensions...

Parameters:
height -

showJFormFields

public void showJFormFields(java.lang.String currentID,
                            int currentIndex,
                            int previousIndex,
                            int nextIndex,
                            java.util.Vector v)
        "DEBUG" Method used to display the current 'showPanel' JFormField's ID, Type,
        Row, Col parameters.
        Display the following symbols to highlight the previous, current and next
        JFormField's:
                Previous    "^"
      Current     "*"
      Next        "v"
 
        Kernel Usage:
        1)      as required for DEBUG...
        

Parameters:
currentID - Current 'JFormField' ID [String]
currentIndex - Current Focused 'JFormField' index [int]
previousIndex - Previous Index [int]
nextIndex - Next Index [int]
v - Vector of JFormField's

showPage

public static void showPage(JFormForm form,
                            JFormField fld)
        Show the given 'JFormForm' Sub-Class [form] in the 'jFormTK' Kernel
        'showPanel' and set the Focus at the given 'JFormField' [fld]...
        

Parameters:
form - 'JFormForm' Sub-Class to show in the 'jFormTK' Kernel Framework 'showPanel'.
fld - 'JFormField' to get the Focus...