home *** CD-ROM | disk | FTP | other *** search
/ OS/2 Shareware BBS: 2 BBS / 02-BBS.zip / MAXMAILP.ZIP / OPTION.H < prev    next >
C/C++ Source or Header  |  1990-10-12  |  8KB  |  196 lines

  1. /***************************************************************************
  2.  *                                                                         *
  3.  *  MAXIMUS-CBCS Source Code, Version 1.02                                 *
  4.  *  Copyright 1989, 1990 by Scott J. Dudley.  All rights reserved.         *
  5.  *                                                                         *
  6.  *  Menu server enumerations and structures                                *
  7.  *                                                                         *
  8.  *  For complete details of the licensing restrictions, please refer to    *
  9.  *  the licence agreement, which is published in its entirety in MAX.C     *
  10.  *  and LICENCE.MAX.                                                       *
  11.  *                                                                         *
  12.  *  USE OF THIS FILE IS SUBJECT TO THE RESTRICTIONS CONTAINED IN THE       *
  13.  *  MAXIMUS-CBCS LICENSING AGREEMENT.  IF YOU DO NOT FIND THE TEXT OF THIS *
  14.  *  AGREEMENT IN ANY OF THE  AFOREMENTIONED FILES, OR IF YOU DO NOT HAVE   *
  15.  *  THESE FILES, YOU SHOULD IMMEDIATELY CONTACT THE AUTHOR AT ONE OF THE   *
  16.  *  ADDRESSES LISTED BELOW.  IN NO EVENT SHOULD YOU PROCEED TO USE THIS    *
  17.  *  FILE WITHOUT HAVING ACCEPTED THE TERMS OF THE MAXIMUS-CBCS LICENSING   *
  18.  *  AGREEMENT, OR SUCH OTHER AGREEMENT AS YOU ARE ABLE TO REACH WITH THE   *
  19.  *  AUTHOR.                                                                *
  20.  *                                                                         *
  21.  *  You can contact the author at one of the address listed below:         *
  22.  *                                                                         *
  23.  *  Scott Dudley           FidoNet  1:249/106                              *
  24.  *  777 Downing St.        IMEXnet  89:483/202                             *
  25.  *  Kingston, Ont.         Internet f106.n249.z1.fidonet.org               *
  26.  *  Canada - K7M 5N3       BBS      (613) 389-8315 - HST/14.4K, 24hrs      *
  27.  *                                                                         *
  28.  ***************************************************************************/
  29.  
  30. /* Enumeration `option' -- All possible values for menu.option[x].type */
  31.  
  32. typedef enum
  33. {
  34.   /* If this menu option doesn't do anything */
  35.   nothing,
  36.  
  37.   /* Controlling display of other menus/files */
  38.   display_menu,display_file,
  39.  
  40.   /* Controlling external programs */
  41.   xtern_erlvl,xtern_dos,xtern_run,xtern_chain,xtern_concur,
  42.  
  43.   /* Options generally found on the main menu */
  44.   goodbye,statistics,o_yell,userlist,o_version,
  45.  
  46.   /* Options generally found on the message menu */
  47.   area_change,same_direction,read_next,read_previous,enter_message,
  48.   msg_reply,read_nonstop,read_original,read_reply,msg_list,msg_scan,
  49.   msg_inquire,msg_kill,msg_hurl,forward,msg_upload,xport,read_individual,
  50.   msg_checkmail,
  51.  
  52.   /* Options generally found on the files menu */
  53.  
  54.   locate,file_titles,type,upload,download,raw,file_kill,contents,file_hurl,
  55.  
  56.   /* Options generally found on the Change Setup menu */
  57.  
  58.   chg_city,chg_password,chg_help,chg_nulls,chg_width,chg_length,chg_tabs,
  59.   chg_more,chg_video,chg_editor,chg_clear,chg_ibm,
  60.  
  61.   edit_save,edit_abort,edit_list,edit_edit,edit_insert,edit_delete,
  62.   edit_continue,edit_to,edit_from,edit_subj,edit_handling,
  63.  
  64.   /* Miscellanious commands */
  65.  
  66.   o_cls,
  67.  
  68.   /* Stuff that was hacked on after the original implementation */
  69.  
  70.   user_editor,override_path,who_is_on,read_diskfile,edit_quote,
  71.   chg_phone,chg_realname,leave_comment,message,file,other,newfiles,
  72.   o_press_enter,key_poke,clear_stacked,o_if,o_menupath,o_page,o_chat_cb,
  73.   chat_toggle,msg_change,chg_hotkeys,o_chat_pvt,
  74.  
  75.   /* Everything below here is RESERVED by Maximus for future uses!         *
  76.    * Also, everything ABOVE is fairly stable.  If changes have to be made, *
  77.    * the old options above will NOT be re-used.  For example, if the       *
  78.    * `edit_insert' command should become obsoleted for some reason, that   *
  79.    * slot would either get retired and do nothing, or perform the NEW      *
  80.    * edit_insert function.                                                 */
  81.  
  82.   rsvd=32766  /* This was stuck in to make sure that the `option'          *
  83.                * enumeration uses a word, instead of a byte, in case we    *
  84.                * really expand this structure sometime soon.               */
  85.  
  86. } option;
  87.  
  88.  
  89. #ifdef SILT
  90.  
  91. struct _st {
  92.     option opt;
  93.     char *token;
  94. };
  95.  
  96. #ifndef NOINIT
  97.  
  98. struct _st silt_table[] = {
  99.   {o_chat_cb      , "chat_cb"},
  100.   {o_chat_pvt     , "chat_pvt"},
  101.   {chg_hotkeys    , "chg_hotkeys"},
  102.   {msg_change     , "msg_change"},
  103.   {chat_toggle    , "chat_toggle"},
  104.   {o_page         , "chat_page"},
  105.   {o_menupath     , "menupath"},
  106.   {display_menu   , "display_menu"},
  107.   {display_file   , "display_file"},
  108.   {xtern_erlvl    , "xtern_erlvl"},
  109.   {xtern_dos      , "xtern_dos"},
  110.   {xtern_run      , "xtern_run"},
  111.   {xtern_chain    , "xtern_chain"},
  112.   {xtern_concur   , "xtern_concur"},
  113.   {key_poke       , "key_poke"},
  114.   {clear_stacked  , "clear_stacked"},
  115.   {goodbye        , "goodbye"},
  116.   {statistics     , "statistics"},
  117.   {o_yell         , "yell"},
  118.   {userlist       , "userlist"},
  119.   {o_version      , "version"},
  120.   {area_change    , "area_change"},
  121.   {same_direction , "same_direction"},
  122.   {read_next      , "read_next"},
  123.   {read_previous  , "read_previous"},
  124.   {enter_message  , "enter_message"},
  125.   {msg_reply      , "msg_reply"},
  126.   {read_nonstop   , "read_nonstop"},
  127.   {read_original  , "read_original"},
  128.   {read_reply     , "read_reply"},
  129.   {msg_list       , "msg_list"},
  130.   {msg_scan       , "msg_scan"},
  131.   {msg_inquire    , "msg_inquire"},
  132.   {msg_kill       , "msg_kill"},
  133.   {msg_hurl       , "msg_hurl"},
  134.   {forward        , "forward"},
  135.   {msg_upload     , "msg_upload"},
  136.   {xport          , "xport"},
  137.   {read_individual, "read_individual"},
  138.   {msg_checkmail  , "msg_checkmail"},
  139.   {locate         , "locate"},
  140.   {file_titles    , "file_titles"},
  141.   {type           , "type"},
  142.   {upload         , "upload"},
  143.   {download       , "download"},
  144.   {raw            , "raw"},
  145.   {file_kill      , "file_kill"},
  146.   {contents       , "contents"},
  147.   {file_hurl      , "file_hurl"},
  148.   {chg_city       , "chg_city"},
  149.   {chg_password   , "chg_password"},
  150.   {chg_help       , "chg_help"},
  151.   {chg_nulls      , "chg_nulls"},
  152.   {chg_width      , "chg_width"},
  153.   {chg_length     , "chg_length"},
  154.   {chg_tabs       , "chg_tabs"},
  155.   {chg_more       , "chg_more"},
  156.   {chg_video      , "chg_video"},
  157.   {chg_editor     , "chg_editor"},
  158.   {chg_clear      , "chg_clear"},
  159.   {chg_ibm        , "chg_ibm"},
  160.   {edit_save      , "edit_save"},
  161.   {edit_abort     , "edit_abort"},
  162.   {edit_list      , "edit_list"},
  163.   {edit_edit      , "edit_edit"},
  164.   {edit_insert    , "edit_insert"},
  165.   {edit_delete    , "edit_delete"},
  166.   {edit_continue  , "edit_continue"},
  167.   {edit_to        , "edit_to"},
  168.   {edit_from      , "edit_from"},
  169.   {edit_subj      , "edit_subj"},
  170.   {edit_handling  , "edit_handling"},
  171.   {o_cls          , "cls"},
  172.   {user_editor    , "user_editor"},
  173.   {override_path  , "override_path"},
  174.   {who_is_on      , "who_is_on"},
  175.   {read_diskfile  , "read_diskfile"},
  176.   {edit_quote     , "edit_quote"},
  177.   {chg_phone      , "chg_phone"},
  178.   {chg_realname   , "chg_realname"},
  179.   {leave_comment  , "leave_comment"},
  180.   {message        , "message"},
  181.   {file           , "file"},
  182.   {other          , "other"},
  183.   {newfiles       , "newfiles"},
  184.   {o_if           , "if"},
  185.   {o_press_enter  , "press_enter"}
  186. };
  187.  
  188. int silt_table_size=sizeof(silt_table)/sizeof(silt_table[0]);
  189.  
  190. #else
  191. extern int silt_table_size;
  192. extern struct _st silt_table[];
  193. #endif /* NOINIT */
  194. #endif /* SILT */
  195.  
  196.