PWB Extensions Help (ext.hlp) (Table of Contents; Topic list)
Important Notice
The pages on this site contain documentation for very old MS-DOS software, purely for historical purposes. If you're looking for up-to-date documentation, particularly for programming, you should not rely on the information found here, as it will be woefully out of date.
Extension Argument Structure
                                             Up Contents Index Back
─────PWB Extensions─────────────────────────────────────────────────────────
 
     PWB passes the address of an ARG structure to extension functions.
     This pointer is usually named 'pArg'. The following table shows the
     pArg->argType values and corresponding pArg->arg member of the ARG
     structure:
 
     argType      Member/Member Type         Description
 
     NOARG        pArg->arg.noarg            No argument or Arg count
                  struct noargType {
                      LINE y;                Cursor line
                      COL  x;                Cursor column
                  };
     TEXTARG      pArg->arg.textarg          Text argument
                  struct textargType {
                      int  cArg;             Arg count
                      LINE y;                Cursor line
                      COL  x;                Cursor column
                      char far *pText;       Text of argument
                  };
     NULLARG      pArg->arg.nullarg          Arg count only
                  struct nullargType {
                      int  cArg;             Arg count
                      LINE y;                Cursor line
                      COL  x;                Cursor column
                  };
     LINEARG      pArg->arg.linearg          Lines selected
                  struct lineargType {
                      int  cArg;             Arg count
                      LINE yStart;           First line
                      LINE yEnd;             Last line
                  };
     STREAMARG    pArg->arg.streamarg        Stream selected
                  struct streamargType {
                      int  cArg;             Arg count
                      LINE yStart;           Top line
                      COL  xStart;           Left column
                      LINE yEnd;             Bottom line
                      COL  xEnd;             Right column
                  };
     BOXARG       pArg->arg.boxarg           Box selected
                  struct boxargType {
                      int  cArg;             Arg count
                      LINE yTop;             Top line
                      LINE yBottom;          Bottom line
                      COL  xLeft;            Left column
                      COL  xRight;           Right column
                  };
 
     NOTE: When the current selection mode is box mode and a selection
           is made that has the starting and ending points in the same
           column, PWB highlights a range of lines. This argument is
           passed to extension functions as a BOXARG. However, extension
           functions should treat it as if it were a LINEARG.
                                    -♦-