Museum

Home

Lab Overview

Retrotechnology Articles

Online Manuals

⇒ menu_driver(3X) — Amiga System V Release 4 Version 2.03

Media Vault

Software Library

Restoration Projects

Artifacts Sought

Related Articles

curses(3X)

menus(3X)



menu_driver(3X)  MISCELLANEOUS LIBRARY FUNCTIONS  menu_driver(3X)



NAME
     menudriver - command processor for the menus subsystem

SYNOPSIS
     #include <menu.h>

     int menudriver(MENU *menu, int c);

DESCRIPTION
     menudriver is the workhorse of  the  menus  subsystem.   It
     checks  to  determine  whether  the  character  c  is a menu
     request or data.  If c is a request, the  menu  driver  exe-
     cutes  the  request and reports the result.  If c is data (a
     printable ASCII character), it enters the data into the pat-
     tern  buffer and tries to find a matching item.  If no match
     is found, the menu driver deletes  the  character  from  the
     pattern  buffer and returns ENOMATCH.  If the character is
     not  recognized,  the  menu  driver   assumes   it   is   an
     application-defined command and returns EUNKNOWNCOMMAND.

     Menu driver requests:
     REQ_LEFT_ITEM     Move left to an item.
     REQ_RIGHT_ITEM    Move right to an item.
     REQ_UP_ITEM       Move up to an item.
     REQ_DOWN_ITEM     Move down to an item.

     REQ_SCR_ULINE     Scroll up a line.
     REQ_SCR_DLINE     Scroll down a line.
     REQ_SCR_DPAGE     Scroll up a page.
     REQ_SCR_UPAGE     Scroll down a page.
     REQ_FIRST_ITEM    Move to the first item.
     REQ_LAST_ITEM     Move to the last item.
     REQ_NEXT_ITEM     Move to the next item.
     REQ_PREV_ITEM     Move to the previous item.

     REQ_TOGGLE_ITEM   Select/de-select an item.
     REQ_CLEAR_PATTERN Clear the menu pattern buffer.
     REQ_BACK_PATTERN  Delete the previous character from pattern buffer.
     REQ_NEXT_MATCH    Move the next matching item.
     REQ_PREV_MATCH    Move to the previous matching item.

RETURN VALUE
     menudriver returns one of the following:
     E_OK              - The routine returned successfully.
     E_SYSTEM_ERROR    - System error.
     E_BAD_ARGUMENT    - An incorrect argument was passed to the routine.
     E_BAD_STATE       - The routine was called from an initialization or
                         termination function.
     E_NOT_POSTED      - The menu has not been posted.






                          Last change:                          1





menu_driver(3X)  MISCELLANEOUS LIBRARY FUNCTIONS  menu_driver(3X)



     E_UNKNOWN_COMMAND - An  unknown  request  was  passed  to  the  menu
                         driver.
     E_NO_MATCH        - The character failed to match.
     E_NOT_SELECTABLE  - The item cannot be selected.
     E_REQUEST_DENIED  - The menu driver could not process the request.

NOTES
     Application defined commands should be defined  relative  to
     (greater  than)  MAXCOMMAND, the maximum value of a request
     listed above.

     The header file <menu.h> automatically includes  the  header
     files <eti.h> and <curses.h>.

SEE ALSO
     curses(3X), menus(3X).







































                          Last change:                          2



Typewritten Software • bear@typewritten.org • Edmonds, WA 98026