com.ibm.eNetwork.ECL
Class ECLScreenDesc

java.lang.Object
  |
  +--com.ibm.eNetwork.ECL.ECLScreenDesc
All Implemented Interfaces:
java.io.Serializable

public class ECLScreenDesc
extends java.lang.Object
implements java.io.Serializable

ECLScreenDesc is the class that is used to "describe" a screen for IBM's Host Access Class Library Screen Recognition Technology. It uses all four major planes of the presentation space to describe it (TEXT, FIELD, EXFIELD, COLOR), as well as the cursor position and OIA status.

Using the methods provided on this object, the programmer can set up a detailed description of what a given screen "looks like" in a host side application. Once an ECLScreenDesc object is created and set, it may be passed to either the synchronous WaitFor... methods provided on ECLPS, or it may be passed to ECLScreenReco, which fires an asynchronous event if the screen matching the ECLScreenDesc object appears in the PS.

Note on the optional parameter on the Addxxx methods: ECLScreenReco uses the following logic for recognizing, or matching ECLScreenDesc objects, which contain ECLScreenDescriptor-derived objects, against the data in an ECLPS object:

  1. All ECLScreenDescriptor-derived objects in an ECLScreenDesc object registered with an ECLScreenReco object that are not optional must pass.
  2. If there are no non-optional descriptors, at least one optional descriptor must match.

Note that some of the methods below are intended specifically for macro programming, as indicated.

See Also:
ECLScreenReco, ECLScreenDescriptor, ECLSDAttrib, ECLSDCursor, ECLSDCustom, ECLSDFields, ECLSDInputFields, ECLSDOIA, ECLSDString, ECLSDVarUpdate, ECLSDCondition, ECLPS, Serialized Form

Field Summary
static int DONTCARE
          Constant for AddOIAInhibitStatus.
static int NOTINHIBITED
          Constant for AddOIAInhibitStatus.
 
Constructor Summary
ECLScreenDesc()
          Creates an empty instance of ECLScreenDesc.
ECLScreenDesc(java.lang.String str)
          Creates an instance of ECLScreenDesc from a persistent ECLScreen string.
 
Method Summary
 void AddAttrib(char attrib, int row, int col, int plane)
          Adds an attribute value to the screen description.
 void AddAttrib(char attrib, int row, int col, int plane, boolean optional)
          Adds an attribute value to the screen description.
 void AddBlock(java.lang.String[] texts)
          Adds a block of strings to the screen description.
 void AddBlock(java.lang.String[] texts, int row, int col)
          Adds a block of strings starting at the an exact row/col position to the screen description.
 void AddBlock(java.lang.String[] texts, int row, int col, boolean caseSensitive)
          Adds a block of strings starting at the an exact row/col position to the screen description, allowing you to specify case sensitivity.
 void AddBlock(java.lang.String[] texts, int row, int col, boolean caseSensitive, boolean optional)
          Adds a block of strings starting at the an exact row/col position to the screen description, allowing you to specify case sensitivity.
 void AddBlockInRect(java.lang.String[] texts, int startRow, int startCol, int endRow, int endCol)
          Adds a block of strings to the screen description.
 void AddBlockInRect(java.lang.String[] texts, int startRow, int startCol, int endRow, int endCol, boolean caseSensitive)
          Adds a block of strings to the screen description.
 void AddBlockInRect(java.lang.String[] texts, int startRow, int startCol, int endRow, int endCol, boolean caseSensitive, boolean optional)
          Adds a block of strings to the screen description.
 void AddChecksum(int val)
          Adds checksum of a screen to the screen description.
 void AddChecksum(int val, boolean optional)
          Adds checksum of a screen to the screen description.
 void AddCursorPos(int row, int col)
          Sets the cursor position for the screen description.
 void AddCursorPos(int row, int col, boolean optional)
          Sets the cursor position for the screen description.
 void AddCustom(ECLCustomRecoListener listener, java.lang.String id)
          Adds a custom recognition listener with a given ID.
 void AddCustom(ECLCustomRecoListener listener, java.lang.String id, boolean optional)
          Adds a custom recognition listener with a given ID.
 void AddDescriptor(ECLScreenDescriptor desctor)
          Adds a descriptor to the screen description.
 void AddNumFields(int num)
          Adds the total field count of a screen to the screen description.
 void AddNumFields(int num, boolean optional)
          Adds the total field count of a screen to the screen description.
 void AddNumInputFields(int num)
          Adds the input field count of a screen to the screen description.
 void AddNumInputFields(int num, boolean optional)
          Adds the input field count of a screen to the screen description.
 void AddOIAInhibitStatus(int type)
          Turns on waiting on OIA inhibit status in the screen description.
 void AddOIAInhibitStatus(int type, boolean optional)
          Turns on waiting on OIA inhibit status in the screen description.
 void AddOIAInhibitStatus(java.lang.String hid, int type)
          Turns on waiting on OIA inhibit status in the screen description with a Host ID.
 void AddOIAInhibitStatus(java.lang.String hid, int type, boolean optional)
          Turns on waiting on OIA inhibit status in the screen description with a Host ID.
 void AddString(java.lang.String text)
          Adds a string to the screen description.
 void AddString(java.lang.String text, int row, int col)
          Adds a string starting at the an exact row/col position to the screen description.
 void AddString(java.lang.String text, int row, int col, boolean caseSensitive)
          Adds a string starting at the an exact row/col position to the screen description, allowing you to specify case sensitivity.
 void AddString(java.lang.String text, int row, int col, boolean caseSensitive, boolean optional)
          Adds a string starting at the an exact row/col position to the screen description, allowing you to specify case sensitivity.
 void AddStringInRect(java.lang.String text, int startRow, int startCol, int endRow, int endCol)
          Adds a string to the screen description.
 void AddStringInRect(java.lang.String text, int startRow, int startCol, int endRow, int endCol, boolean caseSensitive)
          Adds a string to the screen description.
 void AddStringInRect(java.lang.String text, int startRow, int startCol, int endRow, int endCol, boolean caseSensitive, boolean optional)
          Adds a string to the screen description.
static java.lang.String AttribToString(char attrib)
          Converts a character attribute value to a hex string.
 void Clear()
          Member method that clears the data in the ECLScreenDesc object.
 java.util.Enumeration Descriptors()
          Returns an enumeration of all the descriptors for the ECLScreenDesc object.
 java.util.Vector GetDescriptors()
          Returns the descriptor collection object for the ECLScreenDesc class.
 java.lang.String GetName()
          Returns unique name for the screen description.
 java.util.Vector GetSDAttribs()
          Returns a collection of the attribute screen descriptors for the ECLScreenDesc object.
 java.util.Vector GetSDBlock()
          Returns a collection of the block string screen descriptors for the ECLScreenDesc object.
 ECLSDChecksum GetSDChecksum()
          Returns the first checksum screen descriptor for the ECLScreenDesc object.
 java.util.Vector GetSDChecksums()
          Returns a collection of Checksum screen descriptors for the ECLScreenDesc object.
 java.util.Vector GetSDConditions()
          Returns a collection of the conditional screen descriptors for the ECLScreenDesc object.
 ECLSDCursor GetSDCursor()
          Returns the first cursor screen descriptor for the ECLScreenDesc object.
 ECLSDCursor GetSDCursor(java.lang.String hid)
          Returns the first cursor screen descriptor with matching Host ID for the ECLScreenDesc object.
 java.util.Vector GetSDCursors()
          Returns a collection of cursor screen descriptors for the ECLScreenDesc object.
 java.util.Vector GetSDCustom()
          Returns a collection of the custom screen descriptors for the ECLScreenDesc object.
 ECLSDCustom GetSDCustom(java.lang.String id)
          Returns the custom recognition screen descriptor for the ECLScreenDesc object that has the given ID.
 ECLSDFields GetSDFields()
          Returns the first field count screen descriptor for the ECLScreenDesc object.
 ECLSDFields GetSDFields(java.lang.String hid)
          Returns the first field count screen descriptor with matching Host ID for the ECLScreenDesc object.
 java.util.Vector GetSDFieldsVec()
          Returns a collection of field count screen descriptors for the ECLScreenDesc object.
 ECLSDInputFields GetSDInputFields()
          Returns the first input field count screen descriptor for the ECLScreenDesc object.
 ECLSDInputFields GetSDInputFields(java.lang.String hid)
          Returns the first input field count screen descriptor with matching Host ID for the ECLScreenDesc object.
 java.util.Vector GetSDInputFieldsVec()
          Returns a collection of input field count screen descriptors for the ECLScreenDesc object.
 ECLSDOIA GetSDOIA()
          Returns the OIA state screen descriptor for the ECLScreenDesc object.
 ECLSDOIA GetSDOIA(java.lang.String hid)
          Returns the OIA state screen descriptor for the ECLScreenDesc object with matching Host ID.
 java.util.Vector GetSDOIAVec()
          Returns a collection of OIA screen descriptors for the ECLScreenDesc object.
 java.util.Vector GetSDStrings()
          Returns a collection of the string screen descriptors for the ECLScreenDesc object.
 java.util.Vector GetSDVarUpdates()
          Returns a collection of the variable update screen descriptors for the ECLScreenDesc object.
 boolean IsActive()
          Returns whether the ECLScreenDesc object should be monitored if it is registered with the ECLScreenReco system.
 boolean IsMatch()
          Returns whether the description matched in the ECLScreenReco matching algorithm.
 boolean IsTransient()
          Returns whether the screen description is transient.
 java.lang.String IsTransientRaw()
          Returns expression form of whether the screen description is transient.
static java.lang.String PlaneToString(int plane)
          Takes a plane value and converts it into a string representation of a plane constant.
 void RemoveDescriptor(ECLScreenDescriptor desctor)
          Removes a descriptor from the screen description.
 void SetActive(boolean active)
          Sets whether the ECLScreenDesc object should be monitored if it is registered with the ECLScreenReco system.
 void SetCustomListener(ECLCustomRecoListener listener, java.lang.String id)
          Registers a custom recognition listener with a given ID.
 void SetDescriptors(java.util.Vector desctors)
          Sets the descriptor collection object for the ECLScreenDesc class.
 void SetName(java.lang.String argName)
          Sets the unique name for the screen description.
 void SetTransient(boolean argVal)
          Sets the screen description as transient.
 void SetTransient(java.lang.String argVal)
          Sets the screen description as transient.
static char StringToAttrib(java.lang.String str)
          Converts a hex string (0x00) to a character attribute.
static int StringToPlane(java.lang.String planeStr)
          Takes a string representation of a plane constant and converts it into a plane value.
 java.lang.String toString()
          This method is used to serialize an ECLScreenDesc object.
 
Methods inherited from class java.lang.Object
equals, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Field Detail

DONTCARE

public static final int DONTCARE
Constant for AddOIAInhibitStatus. Pass this value to remove OIA monitoring for the screen. The default value is NOTINHIBITED.

See Also:
Constant Field Values

NOTINHIBITED

public static final int NOTINHIBITED
Constant for AddOIAInhibitStatus. Pass this value to add OIA monitoring for the screen. This is the default value.

See Also:
Constant Field Values
Constructor Detail

ECLScreenDesc

public ECLScreenDesc()
Creates an empty instance of ECLScreenDesc.


ECLScreenDesc

public ECLScreenDesc(java.lang.String str)
Creates an instance of ECLScreenDesc from a persistent ECLScreen string.

See Also:
toString()
Method Detail

toString

public java.lang.String toString()
This method is used to serialize an ECLScreenDesc object. Use this method to produce a persistent representation of ECLScreenDesc. For example, if you wish to save an ECLScreenDesc object to disk, call this method and write the string it returns to disk. This string can then be used to construct an ECLScreenDesc object using the appropriate constructor.

See Also:
ECLScreenDesc(java.lang.String)

Clear

public void Clear()
Member method that clears the data in the ECLScreenDesc object.


AddCursorPos

public void AddCursorPos(int row,
                         int col)
Sets the cursor position for the screen description.

NOTE: Because the ECLScreenDesc object has no explicit relationship with a single Presentation Space, and Presentation Spaces vary with respect to size, the row and column parameters are not validated in this method. They are validated in the IsMatch method of ECLScreenReco, where a specific PS is passed and validation is possible.

Parameters:
row - Cursor row
col - Cursor column

AddCursorPos

public void AddCursorPos(int row,
                         int col,
                         boolean optional)
Sets the cursor position for the screen description.

NOTE: Because the ECLScreenDesc object has no explicit relationship with a single Presentation Space, and Presentation Spaces vary with respect to size, the row and column parameters are not validated in this method. They are validated in the IsMatch method of ECLScreenReco, where a specific PS is passed and validation is possible.

Parameters:
row - Cursor row
col - Cursor column
optional - Cursor comparison will be optional in ECLScreenReco

AddAttrib

public void AddAttrib(char attrib,
                      int row,
                      int col,
                      int plane)
Adds an attribute value to the screen description.

NOTE: Because the ECLScreenDesc object has no explicit relationship with a single Presentation Space, and Presentation Spaces vary with respect to size, the row and column parameters are not validated in this method. They are validated in the IsMatch method of ECLScreenReco, where a specific PS is passed and validation is possible.

Parameters:
attrib - Attribute to add to description.
row - Row position for attribute
col - Column position for attribute
plane - Plane in PS where attribute resides

See Also:

Appendix B. Host Access Class Library Planes -- Format and Content


AddAttrib

public void AddAttrib(char attrib,
                      int row,
                      int col,
                      int plane,
                      boolean optional)
Adds an attribute value to the screen description.

NOTE: Because the ECLScreenDesc object has no explicit relationship with a single Presentation Space, and Presentation Spaces vary with respect to size, the row and column parameters are not validated in this method. They are validated in the IsMatch method of ECLScreenReco, where a specific PS is passed and validation is possible.

Parameters:
attrib - Attribute to add to description.
row - Row position for attribute
col - Column position for attribute
plane - Plane in PS where attribute resides
optional - Comparison will be optional in ECLScreenReco

AddNumFields

public void AddNumFields(int num)
Adds the total field count of a screen to the screen description.

Parameters:
num - Number of fields.

AddNumFields

public void AddNumFields(int num,
                         boolean optional)
Adds the total field count of a screen to the screen description.

Parameters:
num - Number of fields.
optional - Comparison will be optional in ECLScreenReco

AddNumInputFields

public void AddNumInputFields(int num)
Adds the input field count of a screen to the screen description.

Parameters:
num - Number of fields.

AddNumInputFields

public void AddNumInputFields(int num,
                              boolean optional)
Adds the input field count of a screen to the screen description.

Parameters:
num - Number of fields.
optional - Comparison will be optional in ECLScreenReco

AddOIAInhibitStatus

public void AddOIAInhibitStatus(int type)
Turns on waiting on OIA inhibit status in the screen description. A screen will not match a screen description unless the OIA condition is met. By default, the screen description has NOTINHIBITED turned on.

Parameters:
type - OIA condition of the screen description. The valid constant values follow:

DONTCARE
NOTINHIBITED

AddOIAInhibitStatus

public void AddOIAInhibitStatus(java.lang.String hid,
                                int type)
Turns on waiting on OIA inhibit status in the screen description with a Host ID. A screen will not match a screen description unless the OIA condition is met. By default, the screen description has NOTINHIBITED turned on.

Parameters:
hid - Host ID
type - OIA condition of the screen description. The valid constant values follow:

DONTCARE
NOTINHIBITED

AddOIAInhibitStatus

public void AddOIAInhibitStatus(int type,
                                boolean optional)
Turns on waiting on OIA inhibit status in the screen description. A screen will not match a screen description unless the OIA condition is met. By default, the screen description has NOTINHIBITED turned on.

Parameters:
type - OIA condition of the screen description. The valid constant values follow:

DONTCARE
NOTINHIBITED
optional - Comparison will be optional in ECLScreenReco

AddOIAInhibitStatus

public void AddOIAInhibitStatus(java.lang.String hid,
                                int type,
                                boolean optional)
Turns on waiting on OIA inhibit status in the screen description with a Host ID. A screen will not match a screen description unless the OIA condition is met. By default, the screen description has NOTINHIBITED turned on.

Parameters:
hid - Host ID
type - OIA condition of the screen description. The valid constant values follow:

DONTCARE
NOTINHIBITED
optional - Comparison will be optional in ECLScreenReco

AddBlock

public void AddBlock(java.lang.String[] texts)
Adds a block of strings to the screen description. The screen will match if the block exists at any place in the Presentation Space. This Adds block as case sensitive.

See Also:
AddBlock(java.lang.String[], int, int), AddBlock(java.lang.String[], int, int, boolean), AddBlock(java.lang.String[], int, int, boolean, boolean)

AddBlock

public void AddBlock(java.lang.String[] texts,
                     int row,
                     int col)
Adds a block of strings starting at the an exact row/col position to the screen description. Adds block as case sensitive.

NOTE: Because the ECLScreenDesc object has no explicit relationship with a single Presentation Space, and Presentation Spaces vary with respect to size, the row and column parameters are not validated in this method. They are validated in the IsMatch method of ECLScreenReco, where a specific PS is passed and validation is possible.

Parameters:
texts - String to add
row - Starting row for EXACT or IN_RECT location type.
col - Starting column for EXACT or IN_RECT location type.
See Also:
AddBlock(java.lang.String[]), AddBlock(java.lang.String[], int, int, boolean), AddBlock(java.lang.String[], int, int, boolean, boolean)

AddBlock

public void AddBlock(java.lang.String[] texts,
                     int row,
                     int col,
                     boolean caseSensitive)
Adds a block of strings starting at the an exact row/col position to the screen description, allowing you to specify case sensitivity.

NOTE: Because the ECLScreenDesc object has no explicit relationship with a single Presentation Space, and Presentation Spaces vary with respect to size, the row and column parameters are not validated in this method. They are validated in the IsMatch method of ECLScreenReco, where a specific PS is passed and validation is possible.

Parameters:
row - Starting row for EXACT or IN_RECT location type.
col - Starting column for EXACT or IN_RECT location type.
caseSensitive - Indicates whether exact case should be used.
true - use exact case.
false - do not use exact case.
See Also:
AddBlock(java.lang.String[]), AddBlock(java.lang.String[], int, int), AddBlock(java.lang.String[], int, int, boolean, boolean)

AddBlock

public void AddBlock(java.lang.String[] texts,
                     int row,
                     int col,
                     boolean caseSensitive,
                     boolean optional)
Adds a block of strings starting at the an exact row/col position to the screen description, allowing you to specify case sensitivity.

NOTE: Because the ECLScreenDesc object has no explicit relationship with a single Presentation Space, and Presentation Spaces vary with respect to size, the row and column parameters are not validated in this method. They are validated in the IsMatch method of ECLScreenReco, where a specific PS is passed and validation is possible.

Parameters:
row - Starting row for EXACT or IN_RECT location type.
col - Starting column for EXACT or IN_RECT location type.
caseSensitive - Indicates whether exact case should be used.
true - use exact case.
false - do not use exact case.
optional - Comparison will be optional in ECLScreenReco
See Also:
AddBlock(java.lang.String[]), AddBlock(java.lang.String[], int, int), AddBlock(java.lang.String[], int, int, boolean)

AddBlockInRect

public void AddBlockInRect(java.lang.String[] texts,
                           int startRow,
                           int startCol,
                           int endRow,
                           int endCol)
Adds a block of strings to the screen description. This method will add a block that can exist in a rectangular area.

NOTE: Because the ECLScreenDesc object has no explicit relationship with a single Presentation Space, and Presentation Spaces vary with respect to size, the row and column parameters are not validated in this method. They are validated in the IsMatch method of ECLScreenReco, where a specific PS is passed and validation is possible.

Parameters:
startRow - Starting row for location type.
startCol - Starting column for location type.
endRow - Ending row for IN_RECT location type.
endCol - Ending column for IN_RECT location type.
See Also:
AddBlockInRect(java.lang.String[], int, int, int, int, boolean), AddBlockInRect(java.lang.String[], int, int, int, int, boolean, boolean)

AddBlockInRect

public void AddBlockInRect(java.lang.String[] texts,
                           int startRow,
                           int startCol,
                           int endRow,
                           int endCol,
                           boolean caseSensitive)
Adds a block of strings to the screen description. This method will add a block that can exist in a rectangular area, allowing you to specify case sensitivity.

NOTE: Because the ECLScreenDesc object has no explicit relationship with a single Presentation Space, and Presentation Spaces vary with respect to size, the row and column parameters are not validated in this method. They are validated in the IsMatch method of ECLScreenReco, where a specific PS is passed and validation is possible.

Parameters:
startRow - Starting row for location.
startCol - Starting column for location type.
endRow - Ending row for IN_RECT location type.
endCol - Ending column for IN_RECT location type.
caseSensitive - Indicates whether exact case should be used.
true - use exact case.
false - do not use exact case.
See Also:
AddBlockInRect(java.lang.String[], int, int, int, int), AddBlockInRect(java.lang.String[], int, int, int, int, boolean, boolean)

AddBlockInRect

public void AddBlockInRect(java.lang.String[] texts,
                           int startRow,
                           int startCol,
                           int endRow,
                           int endCol,
                           boolean caseSensitive,
                           boolean optional)
Adds a block of strings to the screen description. The screen will match if the block exists at any place in the Presentation Space. This Adds the strings in the block as case sensitive.

Parameters:
texts - Block to add
startRow - Starting row for location.
startCol - Starting column for location type.
endRow - Ending row for IN_RECT location type.
endCol - Ending column for IN_RECT location type.
caseSensitive - Indicates whether exact case should be used.
true - use exact case.
false - do not use exact case.
optional - Comparison will be optional in ECLScreenReco
See Also:
AddBlockInRect(java.lang.String[], int, int, int, int), AddBlockInRect(java.lang.String[], int, int, int, int, boolean)

AddString

public void AddString(java.lang.String text)
Adds a string to the screen description. The screen will match if the string exists at any place in the Presentation Space. This Adds string as case sensitive.

Parameters:
text - String to add
See Also:
AddString(java.lang.String, int, int), AddString(java.lang.String, int, int, boolean)

AddString

public void AddString(java.lang.String text,
                      int row,
                      int col)
Adds a string starting at the an exact row/col position to the screen description. Adds string as case sensitive.

NOTE: Because the ECLScreenDesc object has no explicit relationship with a single Presentation Space, and Presentation Spaces vary with respect to size, the row and column parameters are not validated in this method. They are validated in the IsMatch method of ECLScreenReco, where a specific PS is passed and validation is possible.

Parameters:
text - String to add
row - Starting row for EXACT or IN_RECT location type.
col - Starting column for EXACT or IN_RECT location type.
See Also:
AddString(java.lang.String), AddString(java.lang.String, int, int, boolean)

AddString

public void AddString(java.lang.String text,
                      int row,
                      int col,
                      boolean caseSensitive)
Adds a string starting at the an exact row/col position to the screen description, allowing you to specify case sensitivity.

NOTE: Because the ECLScreenDesc object has no explicit relationship with a single Presentation Space, and Presentation Spaces vary with respect to size, the row and column parameters are not validated in this method. They are validated in the IsMatch method of ECLScreenReco, where a specific PS is passed and validation is possible.

Parameters:
text - String to add
row - Starting row for EXACT or IN_RECT location type.
col - Starting column for EXACT or IN_RECT location type.
caseSensitive - Indicates whether exact case should be used.
true - use exact case.
false - do not use exact case.
See Also:
AddString(java.lang.String), AddString(java.lang.String, int, int)

AddString

public void AddString(java.lang.String text,
                      int row,
                      int col,
                      boolean caseSensitive,
                      boolean optional)
Adds a string starting at the an exact row/col position to the screen description, allowing you to specify case sensitivity.

NOTE: Because the ECLScreenDesc object has no explicit relationship with a single Presentation Space, and Presentation Spaces vary with respect to size, the row and column parameters are not validated in this method. They are validated in the IsMatch method of ECLScreenReco, where a specific PS is passed and validation is possible.

Parameters:
text - String to add
row - Starting row for EXACT or IN_RECT location type.
col - Starting column for EXACT or IN_RECT location type.
caseSensitive - Indicates whether exact case should be used.
true - use exact case.
false - do not use exact case.
optional - Comparison will be optional in ECLScreenReco
See Also:
AddString(java.lang.String), AddString(java.lang.String, int, int)

AddStringInRect

public void AddStringInRect(java.lang.String text,
                            int startRow,
                            int startCol,
                            int endRow,
                            int endCol)
Adds a string to the screen description. This method will add a string that can exist in a rectangular area.

NOTE: Because the ECLScreenDesc object has no explicit relationship with a single Presentation Space, and Presentation Spaces vary with respect to size, the row and column parameters are not validated in this method. They are validated in the IsMatch method of ECLScreenReco, where a specific PS is passed and validation is possible.

Parameters:
text - String to add.
startRow - Starting row for location type.
startCol - Starting column for location type.
endRow - Ending row for IN_RECT location type.
endCol - Ending column for IN_RECT location type.
See Also:
AddStringInRect(java.lang.String, int, int, int, int, boolean)

AddStringInRect

public void AddStringInRect(java.lang.String text,
                            int startRow,
                            int startCol,
                            int endRow,
                            int endCol,
                            boolean caseSensitive)
Adds a string to the screen description. This method will add a string that can exist in a rectangular area, allowing you to specify case sensitivity.

NOTE: Because the ECLScreenDesc object has no explicit relationship with a single Presentation Space, and Presentation Spaces vary with respect to size, the row and column parameters are not validated in this method. They are validated in the IsMatch method of ECLScreenReco, where a specific PS is passed and validation is possible.

Parameters:
text - String to add
startRow - Starting row for location.
startCol - Starting column for location type.
endRow - Ending row for IN_RECT location type.
endCol - Ending column for IN_RECT location type.
caseSensitive - Indicates whether exact case should be used.
true - use exact case.
false - do not use exact case.
See Also:
AddStringInRect(java.lang.String, int, int, int, int)

AddStringInRect

public void AddStringInRect(java.lang.String text,
                            int startRow,
                            int startCol,
                            int endRow,
                            int endCol,
                            boolean caseSensitive,
                            boolean optional)
Adds a string to the screen description. This method will add a string that can exist in a rectangular area, allowing you to specify case sensitivity.

NOTE: Because the ECLScreenDesc object has no explicit relationship with a single Presentation Space, and Presentation Spaces vary with respect to size, the row and column parameters are not validated in this method. They are validated in the IsMatch method of ECLScreenReco, where a specific PS is passed and validation is possible.

Parameters:
text - String to add
startRow - Starting row for location.
startCol - Starting column for location type.
endRow - Ending row for IN_RECT location type.
endCol - Ending column for IN_RECT location type.
caseSensitive - Indicates whether exact case should be used.
true - use exact case.
false - do not use exact case.
optional - Comparison will be optional in ECLScreenReco
See Also:
AddStringInRect(java.lang.String, int, int, int, int)

SetCustomListener

public void SetCustomListener(ECLCustomRecoListener listener,
                              java.lang.String id)
Registers a custom recognition listener with a given ID. Custom recognition listeners can extend the basic ECLScreenDesc recognition functionality. This is different from the AddCustom methods because it doesn't add a descriptor to the ECLScreenDesc object, it just registers a listener.

Parameters:
listener - listener that is called for recognition
See Also:
ECLCustomRecoListener, ECLCustomRecoEvent

AddCustom

public void AddCustom(ECLCustomRecoListener listener,
                      java.lang.String id)
Adds a custom recognition listener with a given ID. Custom recognition listeners can extend the basic ECLScreenDesc recognition functionality.

Parameters:
listener - listener that is called for recognition
See Also:
ECLCustomRecoListener, ECLCustomRecoEvent

AddCustom

public void AddCustom(ECLCustomRecoListener listener,
                      java.lang.String id,
                      boolean optional)
Adds a custom recognition listener with a given ID. Custom recognition listeners can extend the basic ECLScreenDesc recognition functionality.

Parameters:
listener - listener that is called for recognition
optional - Comparison will be optional in ECLScreenReco
See Also:
ECLCustomRecoListener, ECLCustomRecoEvent

AddChecksum

public void AddChecksum(int val)
Adds checksum of a screen to the screen description.

Parameters:
val - Checksum value

AddChecksum

public void AddChecksum(int val,
                        boolean optional)
Adds checksum of a screen to the screen description.

Parameters:
val - Checksum value.
optional - Comparison will be optional in ECLScreenReco

AddDescriptor

public void AddDescriptor(ECLScreenDescriptor desctor)
Adds a descriptor to the screen description.

A descriptor represents one unique description item in ECLScreenDesc. These descriptors can be items like strings, cursor position, field count, and the like. Each of these types of descriptors has its own class that is derived from ECLScreenDescriptor.

If the type of descriptor is unknown, this method will just return without adding anything.

See Also:
ECLScreenDescriptor

RemoveDescriptor

public void RemoveDescriptor(ECLScreenDescriptor desctor)
Removes a descriptor from the screen description.

A descriptor represents one unique description item in ECLScreenDesc. These descriptors can be items like strings, cursor position, field count, and the like. Each of these types of descriptors has its own class that is derived from ECLScreenDescriptor.

See Also:
ECLScreenDescriptor

GetDescriptors

public java.util.Vector GetDescriptors()
Returns the descriptor collection object for the ECLScreenDesc class.

Returns:
collection of screen descriptors
See Also:
ECLScreenDescriptor

SetDescriptors

public void SetDescriptors(java.util.Vector desctors)
Sets the descriptor collection object for the ECLScreenDesc class.

Parameters:
desctors - descriptor collection to set
See Also:
ECLScreenDescriptor

GetSDCursor

public ECLSDCursor GetSDCursor()
Returns the first cursor screen descriptor for the ECLScreenDesc object.

Returns:
cursor screen descriptor
See Also:
GetSDCursors()

GetSDCursor

public ECLSDCursor GetSDCursor(java.lang.String hid)
Returns the first cursor screen descriptor with matching Host ID for the ECLScreenDesc object.

Parameters:
hid - Host ID
Returns:
cursor screen descriptor
See Also:
GetSDCursors()

GetSDFields

public ECLSDFields GetSDFields()
Returns the first field count screen descriptor for the ECLScreenDesc object.

Returns:
field count screen descriptor
See Also:
GetSDFieldsVec()

GetSDFields

public ECLSDFields GetSDFields(java.lang.String hid)
Returns the first field count screen descriptor with matching Host ID for the ECLScreenDesc object.

Parameters:
hid - Host ID
Returns:
field count screen descriptor
See Also:
GetSDFieldsVec()

GetSDInputFields

public ECLSDInputFields GetSDInputFields()
Returns the first input field count screen descriptor for the ECLScreenDesc object.

Returns:
input field count screen descriptor
See Also:
GetSDInputFieldsVec()

GetSDInputFields

public ECLSDInputFields GetSDInputFields(java.lang.String hid)
Returns the first input field count screen descriptor with matching Host ID for the ECLScreenDesc object.

Parameters:
hid - Host ID
Returns:
input field count screen descriptor
See Also:
GetSDInputFieldsVec()

GetSDCursors

public java.util.Vector GetSDCursors()
Returns a collection of cursor screen descriptors for the ECLScreenDesc object.

Returns:
cursor screen descriptor
See Also:
GetSDCursor()

GetSDFieldsVec

public java.util.Vector GetSDFieldsVec()
Returns a collection of field count screen descriptors for the ECLScreenDesc object.

Returns:
field count screen descriptor
See Also:
GetSDFields()

GetSDInputFieldsVec

public java.util.Vector GetSDInputFieldsVec()
Returns a collection of input field count screen descriptors for the ECLScreenDesc object.

Returns:
input field count screen descriptor
See Also:
GetSDInputFields()

GetSDOIA

public ECLSDOIA GetSDOIA()
Returns the OIA state screen descriptor for the ECLScreenDesc object. There is only one OIA state descriptor.

Returns:
field count screen descriptor

GetSDOIA

public ECLSDOIA GetSDOIA(java.lang.String hid)
Returns the OIA state screen descriptor for the ECLScreenDesc object with matching Host ID. There is only one OIA state descriptor.

Parameters:
hid - Host ID
Returns:
field count screen descriptor

GetSDOIAVec

public java.util.Vector GetSDOIAVec()
Returns a collection of OIA screen descriptors for the ECLScreenDesc object.

Returns:
OIA screen descriptor
See Also:
GetSDOIA()

GetSDAttribs

public java.util.Vector GetSDAttribs()
Returns a collection of the attribute screen descriptors for the ECLScreenDesc object.

Returns:
vector of attribute screen descriptors

GetSDStrings

public java.util.Vector GetSDStrings()
Returns a collection of the string screen descriptors for the ECLScreenDesc object.

Returns:
vector of string screen descriptors

GetSDVarUpdates

public java.util.Vector GetSDVarUpdates()
Returns a collection of the variable update screen descriptors for the ECLScreenDesc object. Intended for macro programming use.

Returns:
vector of variable update screen descriptors

GetSDConditions

public java.util.Vector GetSDConditions()
Returns a collection of the conditional screen descriptors for the ECLScreenDesc object. Intended for macro programming use.

Returns:
vector of conditional screen descriptors

GetSDBlock

public java.util.Vector GetSDBlock()
Returns a collection of the block string screen descriptors for the ECLScreenDesc object.

Returns:
vector of string screen descriptors

GetSDCustom

public java.util.Vector GetSDCustom()
Returns a collection of the custom screen descriptors for the ECLScreenDesc object.

Returns:
vector of custom screen descriptors

GetSDCustom

public ECLSDCustom GetSDCustom(java.lang.String id)
Returns the custom recognition screen descriptor for the ECLScreenDesc object that has the given ID.

Parameters:
id - unique identifier of the custom reco descriptor
Returns:
custom reco descriptor, null if descriptor with ID not present

GetSDChecksum

public ECLSDChecksum GetSDChecksum()
Returns the first checksum screen descriptor for the ECLScreenDesc object.

Returns:
checksum screen descriptor
See Also:
GetSDChecksums()

GetSDChecksums

public java.util.Vector GetSDChecksums()
Returns a collection of Checksum screen descriptors for the ECLScreenDesc object.

Returns:
checksum screen descriptor
See Also:
GetSDChecksum()

Descriptors

public java.util.Enumeration Descriptors()
Returns an enumeration of all the descriptors for the ECLScreenDesc object.

Returns:
descriptor enumeration

SetName

public void SetName(java.lang.String argName)
Sets the unique name for the screen description. Use it for identification purposes

Parameters:
argName - name of description

GetName

public java.lang.String GetName()
Returns unique name for the screen description. Use it for identification purposes

Returns:
name of description

SetTransient

public void SetTransient(boolean argVal)
Sets the screen description as transient. The ECLScreenReco.IsMatch logic will compare transient screens against the PS last. The transient property should be used to designate screens as less important than non-transient screens. This is useful for unwanted screens that might appear in your host screen application flow, which you usually want to just clear. Setting descriptions of screens like these as transient will make it so ECLScreenReco compares an the wanted (non-transient) screens first. If there isn't a match, the transient screens are compared and possibly matched. This safeguards against collision between transient and non-transient screens.

Parameters:
argVal - if true, screen will be set to transient

SetTransient

public void SetTransient(java.lang.String argVal)
Sets the screen description as transient. The ECLScreenReco.IsMatch logic will compare transient screens against the PS last. The transient property should be used to designate screens as less important than non-transient screens. This is useful for unwanted screens that might appear in your host screen application flow, which you usually want to just clear. Setting descriptions of screens like these as transient will make it so ECLScreenReco compares an the wanted (non-transient) screens first. If there isn't a match, the transient screens are compared and possibly matched. This safeguards against collision between transient and non-transient screens. Intended for macro programming use.


IsTransient

public boolean IsTransient()
Returns whether the screen description is transient.

Returns:
if true, screen will be set to transient
See Also:
SetTransient(boolean)

IsTransientRaw

public java.lang.String IsTransientRaw()
Returns expression form of whether the screen description is transient. Intended for macro programming use.

Returns:
if expression evaluates to true, screen will be set to transient
See Also:
SetTransient(String)

IsMatch

public boolean IsMatch()
Returns whether the description matched in the ECLScreenReco matching algorithm.

Returns:
true if matched, false if not matched

SetActive

public void SetActive(boolean active)
Sets whether the ECLScreenDesc object should be monitored if it is registered with the ECLScreenReco system.

Parameters:
active - If false, ECLScreenReco will not fire reco events. If true, ECLScreenReco will fire reco events for the screen.

IsActive

public boolean IsActive()
Returns whether the ECLScreenDesc object should be monitored if it is registered with the ECLScreenReco system.

Returns:
state of monitoring process

StringToAttrib

public static char StringToAttrib(java.lang.String str)
Converts a hex string (0x00) to a character attribute.

Parameters:
str - hex string representation of the char value
Returns:
char value to convert to a string

AttribToString

public static java.lang.String AttribToString(char attrib)
Converts a character attribute value to a hex string.

Parameters:
attrib - char value to convert to a string
Returns:
hex string representation of the char value

StringToPlane

public static int StringToPlane(java.lang.String planeStr)
Takes a string representation of a plane constant and converts it into a plane value.

Parameters:
planeStr - string representation of the plane (example, TEXT_PLANE)
Returns:
integer value of the plane as defined in ECLConstants

PlaneToString

public static java.lang.String PlaneToString(int plane)
Takes a plane value and converts it into a string representation of a plane constant.

Parameters:
plane - integer value of the plane as defined in ECLConstants
Returns:
string representation of the plane (example, TEXT_PLANE)