Annotation of os232sdk/toolkt20/c/samples/jigsaw/globals.c, revision 1.1.1.1

1.1       root        1: #include "jigsaw.h"
                      2: 
                      3: /*-------------------------- general definitions -----------------------------*/
                      4: 
                      5: HAB       habMain          = NULL;        /* main thread anchor block handle  */
                      6: HMQ      hmqMain          = NULL;        /* main thread queue handle         */
                      7: HWND      hwndFrame        = NULL;        /* frame control handle             */
                      8: HWND     hwndStatus       = NULL;        /* status dialog handle             */
                      9: HWND     hwndClient       = NULL;        /* client area handle               */
                     10: HWND      hwndZoomScrollBar= NULL;        /* zoom scroll bar handle           */
                     11: HWND      hwndMenu         = NULL;        /* Menu handle                      */
                     12: HWND      hwndStatusOption = NULL;        /* status menu handle               */
                     13: HDC      hdcClient        = NULL;        /* window dc handle                 */
                     14: HPS      hpsClient        = NULL;        /* client area Gpi ps handle        */
                     15: SIZEL    sizlMaxClient;                  /* max client area size             */
                     16: HPS       hpsPaint         = NULL;        /* ps for use in Main Thread        */
                     17: HRGN     hrgnInvalid      = NULL;        /* handle to the invalid region     */
                     18: 
                     19: HAB      habAsync         = NULL;        /* async thread anchor block handle */
                     20: HMQ      hmqAsync         = NULL;        /* async thread queue handle        */
                     21: TID       tidAsync;                       /* async thread id                  */
                     22: SEL      selStack;                       /* async thread stack selector      */
                     23: SHORT    sPrty            = -1;          /* async thread priority            */
                     24: 
                     25: HWND     hwndHorzScroll   = NULL;        /* horizontal scroll bar window     */
                     26: HWND     hwndVertScroll   = NULL;        /* vertical scroll bar window       */
                     27: 
                     28: POINTS   ptsScrollPos,
                     29:           ptsOldScrollPos;
                     30: POINTS   ptsScrollMax,
                     31:           ptsHalfScrollMax;
                     32: POINTS   ptsScrollLine;
                     33: POINTS   ptsScrollPage;
                     34:  
                     35: MATRIXLF  matlfIdentity    = { UNITY, 0, 0, 0, UNITY, 0, 0, 0, 1 };
                     36: LONG     lScale;                         /* current zoom level               */
                     37: POINTL   ptlScaleRef;                    /* scalefactor, detects size change */
                     38:  
                     39: POINTL   ptlOffset;
                     40: POINTL   ptlBotLeft       = { 0, 0};
                     41: POINTL   ptlTopRight      = { 3000, 3000};
                     42: POINTL   ptlMoveStart;                /* model space point at start of move  */
                     43: LONG     lLastSegId;                  /* last segment id assigned to a piece */
                     44: LONG     lPickedSeg       = 0L;       /* seg id of piece selected for drag   */
                     45: POINTL   ptlOffStart;                 /* segment xform xlate at move start   */
                     46: RECTL    rclBounds;                   /* pict bounding box in model coords.  */
                     47: POINTL   ptlOldMouse      = {0L, 0L}; /* current mouse posn                  */
                     48: POINTL   ptlMouse         = {0L, 0L}; /* current mouse posn                  */
                     49: BOOL     fButtonDownMain  = FALSE;    /* only drag if mouse down             */
                     50: BOOL     fButtonDownAsync = FALSE;    /* only drag if mouse down             */
                     51: 
                     52: POINTL   ptlUpdtRef;
                     53: POINTL   aptlUpdt[3];
                     54: BOOL     fUpdtFirst;
                     55: BOOL     fFirstLoad       = TRUE;
                     56: 
                     57: /*-------------------------- segment list ------------------------------------*/
                     58: 
                     59: PSEGLIST pslHead           = NULL;            /* head of the list             */
                     60: PSEGLIST pslTail           = NULL;            /* tail of the list             */
                     61: PSEGLIST pslPicked         = NULL;            /* picked segment's list member */
                     62:  
                     63: /*-------------------------- bitmap-related data -----------------------------*/
                     64: 
                     65: LOADINFO li;
                     66: PLOADINFO pli = &li;
                     67: 
                     68: HPS               hpsBitmapFile      = NULL; /* bitmap straight from the
                     69:                                                  file                         */
                     70: HDC               hdcBitmapFile      = NULL;
                     71: HBITMAP           hbmBitmapFile      = NULL;
                     72: 
                     73: BITMAPINFOHEADER2  bmp2BitmapFile;
                     74: PBITMAPINFOHEADER2 pbmp2BitmapFile    = &bmp2BitmapFile;
                     75: BITMAPINFOHEADER2  bmp2BitmapFileRef;
                     76: PBITMAPINFOHEADER2 pbmp2BitmapFileRef = &bmp2BitmapFileRef;
                     77: 
                     78: HPS               hpsBitmapSize      = NULL; /* bitmap sized to the current
                     79:                                                  size                         */
                     80: HDC               hdcBitmapSize      = NULL;
                     81: HBITMAP           hbmBitmapSize      = NULL;
                     82: 
                     83: HPS               hpsBitmapBuff      = NULL; /* image composed here, copied to
                     84:                                                  scrn                         */
                     85: HDC               hdcBitmapBuff      = NULL;
                     86: HBITMAP           hbmBitmapBuff      = NULL;
                     87: 
                     88: HPS               hpsBitmapSave      = NULL; /* save part of screen during
                     89:                                                  dragging                     */
                     90: HDC               hdcBitmapSave      = NULL;
                     91: HBITMAP           hbmBitmapSave      = NULL;
                     92: 
                     93: BITMAPINFOHEADER2  bmp2BitmapSave;
                     94: PBITMAPINFOHEADER2 pbmp2BitmapSave    = &bmp2BitmapSave;
                     95: 
                     96: DEVOPENSTRUC dop = { NULL
                     97:                     , "DISPLAY"
                     98:                     , NULL
                     99:                     , NULL
                    100:                     , NULL
                    101:                     , NULL
                    102:                     , NULL
                    103:                     , NULL
                    104:                     , NULL };
                    105: 
                    106: 
                    107: /*--------------------------- Miscellaneous ----------------------------------*/
                    108:  
                    109: 
                    110: HMTX    hmtxSzFmt;
                    111: 
                    112: CHAR   szFmt[50];                     /* buffer used by sprintf()            */
                    113: CHAR    szZoomFact[10];
                    114: 
                    115: HEV     hevTerminate;
                    116: HEV     hevDrawOn;
                    117: HEV     hevMouse;
                    118: HEV     hevLoadMsg;
                    119: HEV     hevKillDraw;
                    120: 
                    121: PSZ     pszStartupMsg  = "Welcome to Jigsaw";
                    122: PSZ    pszLoadMsg     = "Patience, preparing puzzle pieces ...";
                    123: PSZ     pszError       = "Error reading file.";
                    124: PSZ    pszBlankMsg    = "";
                    125: 
                    126: SWCNTRL swctl       = { 0, 0, 0, 0, 0, SWL_VISIBLE, SWL_JUMPABLE, NULL, 0 };
                    127: HSWITCH hsw;                          /* handle to a switch list entry       */
                    128: char   szTitle[80];                   /* Title bar text                      */
                    129: 
                    130: BOOL   fErrMem     = FALSE;           /* set if alloc async stack fails      */
                    131:  
                    132: LONG   lByteAlignX, lByteAlignY;      /* memory alignment constants          */
                    133:  
                    134: 
                    135:  

unix.superglobalmegacorp.com

This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.