home *** CD-ROM | disk | FTP | other *** search
/ Programmer 7500 / MAX_PROGRAMMERS.iso / INFO / EDITOR / TDE120.ZIP / TDEKEYS.H < prev    next >
Encoding:
C/C++ Source or Header  |  1991-10-05  |  11.3 KB  |  316 lines

  1. /*
  2.  * New editor name:  tde, the Thomson-Davis Editor.
  3.  * Author:           Frank Davis
  4.  * Date:             June 5, 1991
  5.  *
  6.  * Show all available keys the function connected to each key.
  7.  */
  8.  
  9. #define MAX_KEYS        206
  10. #define AVAIL_KEYS      184
  11.  
  12. /*
  13.  * From the source code of tde.
  14.  */
  15. typedef struct {
  16.    unsigned char func;
  17. } DISPATCH_TABLE;
  18.  
  19.  
  20. DISPATCH_TABLE key_func[MAX_KEYS];
  21.  
  22.  
  23. struct screen key_head[] = {
  24.    {1,2,"      Key                                Current Function" },
  25.  {2,0,"├──────────────────────────────────────────────────────────────┤" },
  26. {15,0,"├──────────────────────────────────────────────────────────────┤" },
  27.  {16,1,"   = 101 Extended Keys       = Frank's 83/84 Extended Keys"},
  28. {17,0,"├──────────────────────────────────────────────────────────────┤" },
  29.  {18,1,"  F3 = Quit    F5 = Change Function     F10 = Save and exit"},
  30.   {0,0,NULL}
  31. };
  32.  
  33. struct screen func_head[] = {
  34.    {1,2,"  Available Functions" },
  35.  {2,0,"├───────────────────────────────────┤" },
  36. { 9,0,"├───────────────────────────────────┤" },
  37.  {10,1," <Enter> = Select   <ESC> = Abort"},
  38.   {0,0,NULL}
  39. };
  40.  
  41.  
  42. /*
  43.  * Group the list of available keys by function group - not alphabetically.
  44.  */
  45. KEY_DEFS key_defs[AVAIL_KEYS] = {
  46. /*  available key      index into file    index into function list */
  47.    { "   F1",                       59, 0 },
  48.    { "   F2",                       60, 0 },
  49.    { "   F3",                       61, 0 },
  50.    { "   F4",                       62, 0 },
  51.    { "   F5",                       63, 0 },
  52.    { "   F6",                       64, 0 },
  53.    { "   F7",                       65, 0 },
  54.    { "   F8",                       66, 0 },
  55.    { "   F9",                       67, 0 },
  56.    { "   F10",                      68, 0 },
  57.    { "  F11",                     133, 0 },
  58.    { "  F12",                     134, 0 },
  59.    { "   Shift + F1",               84, 0 },
  60.    { "   Shift + F2",               85, 0 },
  61.    { "   Shift + F3",               86, 0 },
  62.    { "   Shift + F4",               87, 0 },
  63.    { "   Shift + F5",               88, 0 },
  64.    { "   Shift + F6",               89, 0 },
  65.    { "   Shift + F7",               90, 0 },
  66.    { "   Shift + F8",               91, 0 },
  67.    { "   Shift + F9",               92, 0 },
  68.    { "   Shift + F10",              93, 0 },
  69.    { "  Shift + F11",             135, 0 },
  70.    { "  Shift + F12",             136, 0 },
  71.    { "   Control + F1",             94, 0 },
  72.    { "   Control + F2",             95, 0 },
  73.    { "   Control + F3",             96, 0 },
  74.    { "   Control + F4",             97, 0 },
  75.    { "   Control + F5",             98, 0 },
  76.    { "   Control + F6",             99, 0 },
  77.    { "   Control + F7",            100, 0 },
  78.    { "   Control + F8",            101, 0 },
  79.    { "   Control + F9",            102, 0 },
  80.    { "   Control + F10",           103, 0 },
  81.    { "  Control + F11",           137, 0 },
  82.    { "  Control + F12",           138, 0 },
  83.    { "   Alt + F1",                104, 0 },
  84.    { "   Alt + F2",                105, 0 },
  85.    { "   Alt + F3",                106, 0 },
  86.    { "   Alt + F4",                107, 0 },
  87.    { "   Alt + F5",                108, 0 },
  88.    { "   Alt + F6",                109, 0 },
  89.    { "   Alt + F7",                110, 0 },
  90.    { "   Alt + F8",                111, 0 },
  91.    { "   Alt + F9",                112, 0 },
  92.    { "   Alt + F10",               113, 0 },
  93.    { "  Alt + F11",               139, 0 },
  94.    { "  Alt + F12",               140, 0 },
  95.    { "   Control + A",             175, 0 },
  96.    { "   Control + B",             176, 0 },
  97.    { "   Control + C",             177, 0 },
  98.    { "   Control + D",             178, 0 },
  99.    { "   Control + E",             179, 0 },
  100.    { "   Control + F",             180, 0 },
  101.    { "   Control + G",             181, 0 },
  102.    { "   Control + H",             182, 0 },
  103.    { "   Control + I",             183, 0 },
  104.    { "   Control + J",             184, 0 },
  105.    { "   Control + K",             185, 0 },
  106.    { "   Control + L",             186, 0 },
  107.    { "   Control + M",             187, 0 },
  108.    { "   Control + N",             188, 0 },
  109.    { "   Control + O",             189, 0 },
  110.    { "   Control + P",             190, 0 },
  111.    { "   Control + Q",             191, 0 },
  112.    { "   Control + R",             192, 0 },
  113.    { "   Control + S",             193, 0 },
  114.    { "   Control + T",             194, 0 },
  115.    { "   Control + U",             195, 0 },
  116.    { "   Control + V",             196, 0 },
  117.    { "   Control + W",             197, 0 },
  118.    { "   Control + X",             198, 0 },
  119.    { "   Control + Y",             199, 0 },
  120.    { "   Control + Z",             200, 0 },
  121.    { "   Control + [",             201, 0 },
  122.    { "   Control + \\",            202, 0 },
  123.    { "   Control + ]",             203, 0 },
  124.    { "   Control + 6",             204, 0 },
  125.    { "   Control + _",             205, 0 },
  126.    { "   Control + 2",               3, 0 },
  127.    { "   Alt + A",                  30, 0 },
  128.    { "   Alt + B",                  48, 0 },
  129.    { "   Alt + C",                  46, 0 },
  130.    { "   Alt + D",                  32, 0 },
  131.    { "   Alt + E",                  18, 0 },
  132.    { "   Alt + F",                  33, 0 },
  133.    { "   Alt + G",                  34, 0 },
  134.    { "   Alt + H",                  35, 0 },
  135.    { "   Alt + I",                  23, 0 },
  136.    { "   Alt + J",                  36, 0 },
  137.    { "   Alt + K",                  37, 0 },
  138.    { "   Alt + L",                  38, 0 },
  139.    { "   Alt + M",                  50, 0 },
  140.    { "   Alt + N",                  49, 0 },
  141.    { "   Alt + O",                  24, 0 },
  142.    { "   Alt + P",                  25, 0 },
  143.    { "   Alt + Q",                  16, 0 },
  144.    { "   Alt + R",                  19, 0 },
  145.    { "   Alt + S",                  31, 0 },
  146.    { "   Alt + T",                  20, 0 },
  147.    { "   Alt + U",                  22, 0 },
  148.    { "   Alt + V",                  47, 0 },
  149.    { "   Alt + W",                  17, 0 },
  150.    { "   Alt + X",                  45, 0 },
  151.    { "   Alt + Y",                  21, 0 },
  152.    { "   Alt + Z",                  44, 0 },
  153.    { "   Alt + !",                 120, 0 },
  154.    { "   Alt + @",                 121, 0 },
  155.    { "   Alt + #",                 122, 0 },
  156.    { "   Alt + $",                 123, 0 },
  157.    { "   Alt + %",                 124, 0 },
  158.    { "   Alt + ^",                 125, 0 },
  159.    { "   Alt + &",                 126, 0 },
  160.    { "   Alt + *",                 127, 0 },
  161.    { "   Alt + (",                 128, 0 },
  162.    { "   Alt + )",                 129, 0 },
  163.    { "   Alt + -",                 130, 0 },
  164.    { "   Alt + =",                 131, 0 },
  165.    { "  Alt + [",                  26, 0 },
  166.    { "  Alt + ]",                  27, 0 },
  167.    { "  Alt + ;",                  39, 0 },
  168.    { "  Alt + \"",                 40, 0 },
  169.    { "  Alt + ~",                  41, 0 },
  170.    { "  Alt + <",                  51, 0 },
  171.    { "  Alt + >",                  52, 0 },
  172.    { "  Alt + ?",                  53, 0 },
  173.    { "   Enter",                     6, 0 },
  174.    { "   Backspace",                 9, 0 },
  175.    { "   ESC",                       2, 0 },
  176.    { "   Tab",                      12, 0 },
  177.    { "   Shift + Enter",             7, 0 },
  178.    { "   Shift + Backspace",        10, 0 },
  179.    { "   Shift + ESC",               4, 0 },
  180.    { "   Shift + Tab",              15, 0 },
  181.    { "   Control + Enter",           8, 0 },
  182.    { "   Control + Backspace",      11, 0 },
  183.    { "   Control + ESC",             5, 0 },
  184.    { "  Control + Tab",           148, 0 },
  185.    { "  Alt + Enter",              28, 0 },
  186.    { "  Alt + Grey Enter",        166, 0 },
  187.    { "  Alt + Backspace",          14, 0 },
  188.    { "  Alt + ESC",                 1, 0 },
  189.    { "  Alt + Tab",               165, 0 },
  190.    { "   Up",                       72, 0 },
  191.    { "   Down",                     80, 0 },
  192.    { "   Left",                     75, 0 },
  193.    { "   Right",                    77, 0 },
  194.    { "   Home",                     71, 0 },
  195.    { "   End",                      79, 0 },
  196.    { "   PgUp",                     73, 0 },
  197.    { "   PgDn",                     81, 0 },
  198.    { " Center",                   76, 0 },
  199.    { "   Ins",                      82, 0 },
  200.    { "   Del",                      83, 0 },
  201.    { "   Control + Left",          115, 0 },
  202.    { "   Control + Right",         116, 0 },
  203.    { "   Control + Home",          119, 0 },
  204.    { "   Control + End",           117, 0 },
  205.    { "   Control + PgUp",          132, 0 },
  206.    { "   Control + PgDn",          118, 0 },
  207.    { " Control + Up",            141, 0 },
  208.    { " Control + Down",          145, 0 },
  209.    { " Control + Center",        143, 0 },
  210.    { " Control + Ins",           146, 0 },
  211.    { " Control + Del",           147, 0 },
  212.    { " Control + Grey -",        142, 0 },
  213.    { " Control + Grey +",        144, 0 },
  214.    { "  Control + Grey /",        149, 0 },
  215.    { "  Control + Grey *",        150, 0 },
  216.    { "  Alt + Grey Ins",          162, 0 },
  217.    { "  Alt + Grey Del",          163, 0 },
  218.    { "  Alt + Grey Home",         151, 0 },
  219.    { "  Alt + Grey End",          159, 0 },
  220.    { "  Alt + Grey PgUp",         153, 0 },
  221.    { "  Alt + Grey PgDn",         161, 0 },
  222.    { "  Alt + Grey Up",           152, 0 },
  223.    { "  Alt + Grey Down",         160, 0 },
  224.    { "  Alt + Grey Left",         155, 0 },
  225.    { "  Alt + Grey Right",        157, 0 },
  226.    { "  Alt + Grey -",            154, 0 },
  227.    { "  Alt + Grey +",            158, 0 },
  228.    { "  Alt + Grey /",            164, 0 },
  229.    { "   Grey - (Num Lock off)",   167, 0 },
  230.    { "   Grey + (Num Lock off)",   168, 0 }
  231. };
  232.  
  233.  
  234. /*
  235.  * list of functions that keys may be assigned to.
  236.  */
  237. char *avail_func[77] = {
  238.    "*  *  *",                   /*  0   */
  239.    "Help",
  240.    "Rturn",
  241.    "NextLine",
  242.    "BegNextLine",
  243.    "LineDown",
  244.    "LineUp",
  245.    "CharRight",
  246.    "CharLeft",
  247.    "WordRight",
  248.    "WordLeft",                  /*  10  */
  249.    "ScreenDown",
  250.    "ScreenUp",
  251.    "EndOfFile",
  252.    "TopOfFile",
  253.    "BotOfScreen",
  254.    "TopOfScreen",
  255.    "EndOfLine",
  256.    "BegOfLine",
  257.    "JumpToLine",
  258.    "CenterWindow",              /*  20  */
  259.    "CenterLine",
  260.    "HorizontalScreenRight",
  261.    "HorizontalScreenLeft",
  262.    "ScrollDnLine",
  263.    "ScrollUpLine",
  264.    "FixedScrollUp",
  265.    "FixedScrollDn",
  266.    "ToggleOverWrite",
  267.    "ToggleIndent",
  268.    "ToggleSdel",                /*  30  */
  269.    "SetTabs",
  270.    "Tab",
  271.    "ParenBalance",
  272.    "BackSpace",
  273.    "DeleteChar",
  274.    "DeleteLine",
  275.    "DelEndOfLine",
  276.    "WordDelete",
  277.    "AddLine",
  278.    "SplitLine",                 /* 40  */
  279.    "JoinLine",
  280.    "DuplicateLine",
  281.    "AbortCommand",
  282.    "UndoLine",
  283.    "UndoDelete",
  284.    "ToggleSearchCase",
  285.    "FindForward",
  286.    "FindBackward",
  287.    "RepeatFindForward",
  288.    "RepeatFindBackward",        /*  50  */
  289.    "ReplaceForward",
  290.    "ReplaceBackward",
  291.    "MarkBlock",
  292.    "MarkLine",
  293.    "UnMarkBlock",
  294.    "FillBlock",
  295.    "CopyBlock",
  296.    "KopyBlock",
  297.    "MoveBlock",
  298.    "OverlayBlock",              /*  60  */
  299.    "DeleteBlock",
  300.    "BlockToFile",
  301.    "PrintBlock",
  302.    "BlockExpandTabs",
  303.    "File",
  304.    "EditFile",
  305.    "Save",
  306.    "SaveAs",
  307.    "RedrawScreen",
  308.    "SizeWindow",                /*  70  */
  309.    "SplitScreen",
  310.    "NextWindow",
  311.    "PreviousWindow",
  312.    "ZoomWindow",
  313.    "NextHiddenWindow",
  314.    "Quit"                       /*  76  */
  315. };
  316.