home *** CD-ROM | disk | FTP | other *** search
/ OS/2 Shareware BBS: 5 Edit / 05-Edit.zip / epmmac.zip / STDCONST.E < prev    next >
Text File  |  1996-04-02  |  14KB  |  389 lines

  1. const
  2.    TRUE  = 1
  3.    FALSE = 0
  4.  
  5.    E3      = EVERSION < 4
  6.    EOS2    = EVERSION >= 4 & EVERSION < 5
  7.    EOS2FAM = EVERSION >= 4 & EVERSION < '4.10'
  8.    EPM     = EVERSION >= 5
  9.    EPM32   = EVERSION >= 6
  10.    POWERPC = EVERSION >= 7
  11.  
  12. compile if EPM & EVERSION < '5.20'
  13. *** The current macros don't support your extremely backlevel version of EPM.
  14. compile endif
  15.  
  16. compile if EVERSION < '4.10'    -- for E3 or OS/2 family version
  17.    DOS_INT  = 33        /* 21 hex */
  18.    GET_DATE = 42*256    /* The AX values for specific functions. */
  19.    GET_TIME = 44*256    /* High byte AH = 2A and 2C hex.         */
  20.    DOS_GET_VERSION = 48*256  /* high byte = 30 hex */
  21.    DOS_UNLINK = 65*256  /* High byte = 41 hex */
  22. compile endif
  23.  
  24.    MAXINT = 32767            /* Don't change */
  25.  
  26. compile if not defined(MAXCOL)  -- Predefined constant starting in 5.60
  27.  compile if EVERSION < '5.53'
  28.    MAXCOL = 255
  29.  compile else
  30.    MAXCOL = 1600  -- saveas_dlg
  31.  compile endif
  32. compile endif
  33.  
  34.    MAXMARGIN = MAXCOL - 1
  35.  
  36. compile if EVERSION > 5
  37.  
  38.    SYSTEM_POINTER    =  1    /* default mouse pointer  (arrow)  */
  39.    TEXT_POINTER      =  2    /* text entry pointer              */
  40.    WAIT_POINTER      =  3    /* hour glass                      */
  41.    SIZE_POINTER      =  4    /*                                 */
  42.    MOVE_POINTER      =  5    /* four direction arrow            */
  43.    SIZE_NWSE_POINTER =  6    /* arrow northwest southeast       */
  44.    SIZE_NESW_POINTER =  7    /* arrow northeast southwest       */
  45.    SIZE_WE_POINTER   =  8    /* arrow west east                 */
  46.    SIZE_NS_POINTER   =  9    /* arrow north south               */
  47.    APPICON_POINTER   =  10   /* applications icon.              */
  48.    HAND_POINTER      =  11   /* stop pointer                    */
  49.    QUESTION_POINTER  =  12   /* question icon.                  */
  50.    BANG_POINTER      =  13   /* !                               */
  51.    NOTE_POINTER      =  14   /* star                            */
  52.    MARK_POINTER      =  15   /* default mouse pointer  (arrow)  */
  53.  
  54.    EPMSHAREDBUFFER   = 'EPMCLIPB'   /* shared buffer name see clipbrd.e */
  55.    EPMDMBUFFER       = 'EPMDMBUF'   /* shared buffer name see clipbrd.e */
  56.  
  57.    INI_STUFF         = 'STUFF'
  58.    INI_MARGINS       = 'MARGINS'
  59.    INI_AUTOSAVE      = 'AUTOSAVE'
  60.    INI_TABS          = 'TABS'
  61.    INI_TEXTCOLOR     = 'TEXTCOLOR'
  62.    INI_MARKCOLOR     = 'MARKCOLOR'
  63.    INI_STATUSCOLOR   = 'STATUSCOLOR'
  64.    INI_MESSAGECOLOR  = 'MESSAGECOLOR'
  65.    INI_DTCOLOR       = 'DTCOLOR'
  66.    INI_TEMPPATH      = 'TEMPPATH'
  67.    INI_DICTIONARY    = 'DICTIONARY'
  68.    INI_ADDENDA       = 'ADDENDA'
  69.    INI_AUTOSPATH     = 'AUTOSPATH'
  70.    INI_RETRIEVEPATH  = 'RETRIEVEPATH'
  71.    INI_OPTFLAGS      = 'OPTFLAGS'  -- Supercedes a number of the following
  72.    INI_OSTATUS       = 'OSTATUS'
  73.    INI_OMSG          = 'OMSG'
  74.    INI_OVSCROLL      = 'OVSCROLL'
  75.    INI_OHSCROLL      = 'OHSCROLL'
  76. ;; INI_OPTEXT        = 'OPTEXT'  -- No longer used
  77.    INI_OPFILEICON    = 'OPFILEICON'
  78.    INI_OPROTATEBUTTONS = 'OPROTATEBUTTONS'
  79.    INI_CUAMARKING    = 'CUAMARK'
  80.    INI_FONTFACE      = 'FONTFACE'
  81.    INI_FONTCX        = 'FONTCX'
  82.    INI_FONTCY        = 'FONTCY'
  83.    INI_FONT          = 'FONT'
  84.    INI_EXTRAPOSITION = 'EXTRAPOS'
  85.    INI_MENUPROMPTS   = 'MPROMPT'
  86.    INI_RINGENABLED   = 'RING'
  87.    INI_STREAMMODE    = 'STREAM'
  88.    INI_ENTERKEYS     = 'ENTERKEYS'
  89.    INI_ENTERKEY      = 'ENTER'
  90.    INI_A_ENTERKEY    = 'A+ENTER'
  91.    INI_C_ENTERKEY    = 'C+ENTER'
  92.    INI_S_ENTERKEY    = 'S+ENTER'
  93.    INI_PADENTERKEY   = 'PADENTER'
  94.    INI_A_PADENTERKEY = 'A+PADENTER'
  95.    INI_C_PADENTERKEY = 'C+PADENTER'
  96.    INI_S_PADENTERKEY = 'S+PADENTER'
  97.    INI_STACKCMDS     = 'STACK'
  98.    INI_CUAACCEL      = 'CUA_ACCEL'
  99.  compile if EVERSION >= 5.60
  100.    INI_STATUSFONT    = 'STATFONT'
  101.    INI_MESSAGEFONT   = 'MSGFONT'
  102.    INI_BITMAP        = 'DTBITMAP'
  103.  compile endif
  104.  compile if EVERSION >= 6
  105.    INI_UCMENU_APP    = 'UCMenu_Templates'
  106.    INI_TAGSFILES     = 'TagsFiles'
  107.    INI_DEF_TOOLBAR   = 'DEFTOOLBAR'
  108.    INI_OPT2FLAGS     = 'OPT2FLAGS'  -- Addenda to OPTFLAGS for new 32-bit version's config
  109.  compile endif
  110.  
  111.    VK_BUTTON1   =  1
  112.    VK_BUTTON2   =  2
  113.    VK_BUTTON3   =  3
  114.    VK_BACKSPACE =  5
  115.    VK_NEWLINE   =  8  -- Note:  this is the regular Enter key.
  116.    VK_SHIFT     =  9
  117.    VK_CTRL      = 10
  118.    VK_ALT       = 11
  119.    VK_ALTGRAF   = 12
  120.    VK_CAPSLOCK  = 14
  121.    VK_UP        = 22
  122.    VK_DOWN      = 24
  123.    VK_INSERT    = 26
  124.    VK_DELETE    = 27
  125.    VK_SCRLLOCK  = 28
  126.    VK_NUMLOCK   = 29
  127.    VK_ENTER     = 30  -- Note:  this is the numeric keypad Enter key.
  128.    VK_F1        = 32
  129.    VK_F2        = 33
  130.    VK_F3        = 34
  131.    VK_F4        = 35
  132.    VK_F5        = 36
  133.    VK_F6        = 37
  134.    VK_F7        = 38
  135.    VK_F8        = 39
  136.    VK_F9        = 40
  137.    VK_F10       = 41
  138.    VK_F11       = 42
  139.    VK_F12       = 43
  140.  
  141.    AF_CHAR        =   1   -- key style constants
  142.    AF_VIRTUALKEY  =   2
  143.    AF_SCANCODE    =   4
  144.    AF_SHIFT       =   8
  145.    AF_CONTROL     =  16
  146.    AF_ALT         =  32
  147.    AF_LONEKEY     =  64
  148.    AF_SYSCOMMAND  = 256
  149.    AF_HELP        = 512
  150.  
  151.    KS_DOWN        = 1    /* The four possible results of getkeystate(). */
  152.    KS_DOWNTOGGLE  = 2
  153.    KS_UP          = 3
  154.    KS_UPTOGGLE    = 4
  155.                         -- Constants for WinMessageBox
  156.    MB_OK                =        0  -- Pick one of the following for the
  157.    MB_OKCANCEL          =        1  -- buttons you want on the message box
  158.    MB_RETRYCANCEL       =        2
  159.    MB_ABORTRETRYIGNORE  =        3
  160.    MB_YESNO             =        4
  161.    MB_YESNOCANCEL       =        5
  162.    MB_CANCEL            =        6
  163.    MB_ENTER             =        7
  164.    MB_ENTERCANCEL       =        8
  165.  
  166.    MB_NOICON            =        0  -- Add one of the following for the
  167.    MB_CUANOTIFICATION   =        0  -- icon you want in the message box
  168.    MB_ICONQUESTION      =       16
  169.    MB_ICONEXCLAMATION   =       32
  170.    MB_CUAWARNING        =       32
  171.    MB_ICONASTERISK      =       48
  172.    MB_ICONHAND          =       64
  173.    MB_CUACRITICAL       =       64
  174.    MB_QUERY             =     MB_ICONQUESTION
  175.    MB_WARNING           =     MB_CUAWARNING
  176.    MB_INFORMATION       =     MB_ICONASTERISK
  177.    MB_CRITICAL          =     MB_CUACRITICAL
  178.    MB_ERROR             =     MB_CRITICAL
  179.  
  180.    MB_DEFBUTTON1        =          0  -- This specifies which button is the
  181.    MB_DEFBUTTON2        =        256  -- default if Enter is pressed.
  182.    MB_DEFBUTTON3        =        512
  183.  
  184.    MB_APPLMODAL         =       0000  -- Application modal
  185.    MB_SYSTEMMODAL       =       4096  -- System modal
  186.    MB_HELP              =       8192
  187.    MB_MOVEABLE          =      16384  -- The message box can be moved.
  188.  
  189.    MBID_OK              =     1  -- Message box return codes
  190.    MBID_CANCEL          =     2  -- (correspond with the button pressed)
  191.    MBID_ABORT           =     3
  192.    MBID_RETRY           =     4
  193.    MBID_IGNORE          =     5
  194.    MBID_YES             =     6
  195.    MBID_NO              =     7
  196.    MBID_HELP            =     8
  197.    MBID_ENTER           =     9
  198.    MBID_ERROR           =     65535
  199.  
  200.    PAINT_OFF  =  0
  201.    PAINT_BLOCK=  1
  202.    PAINT_LINE =  2
  203.  
  204.    EPMINFO_HAB               =  0  -- The following are constant values that are
  205.    EPMINFO_OWNERCLIENT       =  1  -- to be used as parameters to the getpminfo
  206.    EPMINFO_OWNERFRAME        =  2  -- internal function or as control id's for
  207.    EPMINFO_PARENTCLIENT      =  3  -- control toggle.
  208.    EPMINFO_PARENTFRAME       =  4
  209.    EPMINFO_EDITCLIENT        =  5
  210.    EPMINFO_EDITFRAME         =  6
  211.    EPMINFO_EDITSTATUSAREA    =  7  -- EFRAMEF_STATUSWND = 1
  212.    EPMINFO_EDITORMSGAREA     =  8  -- EFRAMEF_MESSAGEWND = 2
  213.    EPMINFO_EDITORVSCROLL     =  9  -- EFRAMEF_VSCROLLBAR = 8
  214.    EPMINFO_EDITORHSCROLL     = 10  -- EFRAMEF_HSCROLLBAR = 16
  215.    EPMINFO_EDITORINTERPRETER = 11
  216.    EPMINFO_EDITVIOPS         = 12
  217.    EPMINFO_EDITTITLEBAR      = 13
  218.    EPMINFO_EDITCURSOR        = 14
  219.    EPMINFO_PARTIALTEXT       = 15  -- No longer used
  220.    EPMINFO_EDITEXSEARCH      = 16
  221.    EPMINFO_EDITMENUHWND      = 17
  222.    EPMINFO_HDC               = 18
  223.    EPMINFO_HINI              = 19
  224.    EPMINFO_RINGICONS         = 20  -- EFRAMEF_RINGBUTTONS = 4
  225.    EPMINFO_FILEICON          = 22  -- EFRAMEF_FILEWND = 64
  226.    EPMINFO_EXTRAWINDOWPOS    = 23  -- EFRAMEF_INFOONTOP = 32
  227.  compile if EVERSION >= '5.60'
  228.    EPMINFO_EDITSTATUSHWND    = 27
  229.    EPMINFO_EDITMSGHWND       = 28
  230.  compile endif
  231.    EPMINFO_LSLENGTH          = 29
  232.    EPMINFO_SEARCHPOS         = 30
  233.  
  234.  compile if EVERSION >= '5.53'
  235.    EFRAMEF_STATUSWND      = 1    -- EPMINFO_EDITSTATUSAREA = 7
  236.    EFRAMEF_MESSAGEWND     = 2    -- EPMINFO_EDITORMSGAREA = 8
  237.    EFRAMEF_RINGBUTTONS    = 4    -- EPMINFO_RINGICONS = 20
  238.    EFRAMEF_VSCROLLBAR     = 8    -- EPMINFO_EDITORVSCROLL = 9
  239.    EFRAMEF_HSCROLLBAR     = 16   -- EPMINFO_EDITORHSCROLL = 10
  240.    EFRAMEF_INFOONTOP      = 32   -- EPMINFO_EXTRAWINDOWPOS = 23
  241.    EFRAMEF_FILEWND        = 64   -- EPMINFO_FILEICON = 22
  242.    EFRAMEF_DMTBWND        = 128
  243.    EFRAMEF_TASKLISTENTRY  = 256
  244.    EFRAMEF_TOOLBAR        = 2048
  245.  
  246.   compile if not defined(APP_HANDLE)
  247.    APP_HANDLE = EPMINFO_OWNERFRAME  -- 5.53 sends application messages to owner frame
  248.   compile endif
  249.  compile else
  250.    APP_HANDLE = EPMINFO_OWNERCLIENT -- earlier versions sent them to owner client.
  251.  compile endif  -- EVERSION >= '5.53'
  252.  
  253.  compile if EVERSION < '5.20'
  254.    E_DLL     = 'E'
  255.    ERES_DLL  = 'ERES'
  256.    EUTIL_DLL = 'EUTIL'
  257.    LEXAM_DLL = 'PCLEXAM'
  258.  compile elseif EVERSION='5.20'   -- As of 5.20, we have version-specific DLLs
  259.    E_DLL     = 'ETKE520'
  260.    ERES_DLL  = 'ETKR520'
  261. ;  EUTIL_DLL = 'ETKE520'          -- Also, no more EUTIL.
  262.    LEXAM_DLL = 'ETKL1'
  263.  compile elseif EVERSION='5.21'
  264.    E_DLL     = 'ETKE521'
  265.    ERES_DLL  = 'ETKR521'
  266.    LEXAM_DLL = 'ETKL1'
  267.  compile elseif EVERSION='5.50'
  268.    E_DLL     = 'ETKE550'
  269.    ERES_DLL  = 'ETKR550'
  270.  compile elseif EVERSION='5.51' | EVERSION='5.51a'
  271.   compile if not defined(E_DLL)
  272.    E_DLL     = 'ETKE551'
  273.   compile endif
  274.   compile if not defined(ERES_DLL)
  275.    ERES_DLL  = 'ETKR551'
  276.   compile endif
  277.  compile elseif EVERSION='5.52'
  278.   compile if not defined(E_DLL)
  279.    E_DLL     = 'ETKE552'
  280.   compile endif
  281.   compile if not defined(ERES_DLL)
  282.    ERES_DLL  = 'ETKR552'
  283.   compile endif
  284.  compile elseif EVERSION='5.60' | EVERSION='5.60a' | EVERSION='5.60c'
  285.    E_DLL     = 'ETKE560'
  286.    ERES_DLL  = 'ETKR560'
  287.  compile elseif EVERSION='6.00' | EVERSION='6.00a' | EVERSION='6.00b' | EVERSION='6.00c'
  288.   compile if not defined(E_DLL)
  289.    E_DLL     = 'ETKE600'
  290.   compile endif
  291.   compile if not defined(ERES_DLL)
  292.    ERES_DLL  = 'ETKR600'
  293.   compile endif
  294.  compile elseif EVERSION='6.01' | EVERSION = '6.01a' | EVERSION = '6.01b' | EVERSION = '6.01c'
  295.   compile if not defined(E_DLL)
  296.    E_DLL     = 'ETKE601'
  297.   compile endif
  298.   compile if not defined(ERES_DLL)
  299.    ERES_DLL  = 'ETKC601'
  300.   compile endif
  301.   compile if not defined(ERES2_DLL)
  302.    ERES2_DLL  = 'ETKR601'
  303.   compile endif
  304.  compile elseif EVERSION='6.02'
  305.   compile if not defined(E_DLL)
  306.    E_DLL     = 'ETKE602'
  307.   compile endif
  308.   compile if not defined(ERES_DLL)
  309.    ERES_DLL  = 'ETKC602'
  310.   compile endif
  311.   compile if not defined(ERES2_DLL)
  312.    ERES2_DLL  = 'ETKR602'
  313.   compile endif
  314.  compile elseif EVERSION='6.03' or EVERSION='6.03a' or EVERSION='6.03b'
  315.   compile if not defined(E_DLL)
  316.    E_DLL     = 'ETKE603'
  317.   compile endif
  318.   compile if not defined(ERES_DLL)
  319.    ERES_DLL  = 'ETKC603'
  320.   compile endif
  321.   compile if not defined(ERES2_DLL)
  322.    ERES2_DLL  = 'ETKR603'
  323.   compile endif
  324.  compile else
  325. *** Error:  unrecognized EPM version; don't know what level of DLLs to use.
  326.  compile endif  -- EVERSION < '5.20'
  327.  
  328.  compile if not defined(EUTIL_DLL)  -- Not used by any current E_MACROS;
  329.    EUTIL_DLL = E_DLL                -- define in case any user macros refer to it.
  330.  compile endif
  331.  compile if not defined(LEXAM_DLL)
  332.    LEXAM_DLL = 'LEXAM'
  333.  compile endif
  334.  compile if not defined(ERES2_DLL)  -- ERES2 is the real ETKRnnn.DLL;
  335.    ERES2_DLL  = ERES_DLL             -- ERES is where listbox, etc. are (now ETKCnnn for EPM 6.01)
  336.  compile endif
  337.  
  338.    HINI_PROFILE        =  0  -- Searches both user and system profile
  339.    HINI_USERPROFILE    = -1
  340.    HINI_SYSTEMPROFILE  = -2
  341.  
  342.    FIND_NEXT_ATTR_SUBOP =   1
  343.    FIND_PREV_ATTR_SUBOP =   2
  344.    FIND_MATCH_ATTR_SUBOP =  3
  345.    FIND_RULING_ATTR_SUBOP = 4
  346.    DELETE_ATTR_SUBOP =     16
  347.  
  348.    HELP_MENU_ID = 6  -- To avoid hardcoding it, but the value shouldn't be changed,
  349.                      -- to avoid breaking code written before the constant was added.
  350. compile endif  -- EVERSION > 5
  351.  
  352. compile if EVERSION >= '4.10'    -- Following are for BUFFER opcode.
  353.    CREATEBUF   =0
  354.    OPENBUF     =1
  355.    FREEBUF     =2
  356.    GETBUF      =3
  357.    PUTBUF      =4
  358.    MAXSIZEBUF  =5
  359.    USEDSIZEBUF =6
  360.  compile if EVERSION > 5
  361.    PUTMARKBUF  =7
  362.    GETMARKBUF  =8             -- Currently not implemented
  363.    MARKTYPEBUF =9
  364.    STARTCOLBUF =10
  365.    ENDCOLBUF   =11
  366.    CLEARBUF    =12
  367.   compile if EVERSION >= '5.50'
  368.    GETBUF2     =13            -- Like GETBUF, but handles CRLF differently (for PASTE)
  369.   compile endif  -- EVERSION >= '5.50'
  370.  compile endif  -- EVERSION > 5
  371.  
  372.    MAXBUFSIZE  = 65535-32     -- don't really need this, will default to max
  373.  
  374.    APPENDCR      =   1
  375.    APPENDLF      =   2
  376.    APPENDNULL    =   4
  377.    TABCOMPRESS   =   8
  378.    STRIPSPACES   =  16
  379.    FINALNULL     =  32
  380.    LF_IS_NEWLINE =  64
  381.    NOHEADER      = 256
  382. compile endif  -- EVERSION >= '4.10'
  383.  
  384.    HEXCHARS = '0123456789ABCDEFabcdef'
  385.  
  386. compile if not defined(IBM_IUO)
  387.    IBM_IUO = 0  -- Omit stuff that uses IBM Internal Use Only routines.
  388. compile endif
  389.