|
form_driver() is the workhorse of the forms subsystem; it checks to determine whether the character c is a forms
request or data. If it is a request, the form driver executes the request and reports the result. If it is data (a printable ASCII character), it enters the data into the
current position in the current field. If it is not recognized, the form driver assumes it is an application-defined command and returns E_UNKNOWN_COMMAND. Application defined commands
should be defined relative to MAX_COMMAND, the maximum value of a request listed below.
Form driver requests:
- REQ_NEXT_PAGE
- Move to the next page.
- REQ_PREV_PAGE
- Move to the previous page.
- REQ_FIRST_PAGE
- Move to the first page.
- REQ_LAST_PAGE
- Move to the last page.
- REQ_NEXT_FIELD
- Move to the next field.
- REQ_PREV_FIELD
- Move to the previous field.
- REQ_FIRST_FIELD
- Move to the first field.
- REQ_LAST_FIELD
- Move to the last field.
- REQ_SNEXT_FIELD
- Move to the sorted next field.
- REQ_SPREV_FIELD
- Move to the sorted prev field.
- REQ_SFIRST_FIELD
- Move to the sorted first field.
- REQ_SLAST_FIELD
- Move to the sorted last field.
- REQ_LEFT_FIELD
- Move left to field.
- REQ_RIGHT_FIELD
- Move right to field.
- REQ_UP_FIELD
- Move up to field.
- REQ_DOWN_FIELD
- Move down to field.
- REQ_NEXT_CHAR
- Move to the next character in the field.
- REQ_PREV_CHAR
- Move to the previous character in the field.
- REQ_NEXT_LINE
- Move to the next line in the field.
- REQ_PREV_LINE
- Move to the previous line in the field.
- REQ_NEXT_WORD
- Move to the next word in the field.
- REQ_PREV_WORD
- Move to the previous word in the field.
- REQ_BEG_FIELD
- Move to the first char in the field.
- REQ_END_FIELD
- Move after the last char in the field.
- REQ_BEG_LINE
- Move to the beginning of the line.
- REQ_END_LINE
- Move after the last char in the line.
- REQ_LEFT_CHAR
- Move left in the field.
- REQ_RIGHT_CHAR
- Move right in the field.
- REQ_UP_CHAR
- Move up in the field.
- REQ_DOWN_CHAR
- Move down in the field.
- REQ_NEW_LINE
- Insert/overlay a new line.
- REQ_INS_CHAR
- Insert the blank character at the cursor.
- REQ_INS_LINE
- Insert a blank line at the cursor.
- REQ_DEL_CHAR
- Delete the character at the cursor.
- REQ_DEL_PREV
- Delete the character before the cursor.
- REQ_DEL_LINE
- Delete the line at the cursor.
- REQ_DEL_WORD
- Delete the word at the cursor.
- REQ_CLR_EOL
- Clear to the end of the line.
- REQ_CLR_EOF
- Clear to the end of the field.
- REQ_CLR_FIELD
- Clear the entire field.
- REQ_OVL_MODE
- Enter overlay mode.
- REQ_INS_MODE
- Enter insert mode.
- REQ_SCR_FLINE
- Scroll the field forward a line.
- REQ_SCR_BLINE
- Scroll the field backward a line.
- REQ_SCR_FPAGE
- Scroll the field forward a page.
- REQ_SCR_BPAGE
- Scroll the field backward a page.
- REQ_SCR_FHPAGE
- Scroll the field forward half a page.
- REQ_SCR_BHPAGE
- Scroll the field backward half a page.
- REQ_SCR_FCHAR
- Horizontal scroll forward a character.
- REQ_SCR_BCHAR
- Horizontal scroll backward a character
- REQ_SCR_HFLINE
- Horizontal scroll forward a line.
- REQ_SCR_HBLINE
- Horizontal scroll backward a line.
- REQ_SCR_HFHALF
- Horizontal scroll forward half a line.
- REQ_SCR_HBHALF
- Horizontal scroll backward half a line.
- REQ_VALIDATION
- Validate field.
- REQ_PREV_CHOICE
- Display the previous field choice.
- REQ_NEXT_CHOICE
- Display the next field choice.
|