Annotation of mstools/samples/gdidemo/maze.c, revision 1.1.1.1

1.1       root        1: /*---------------------------------------------------------------------------*\
                      2: | MAZE MODULE
                      3: |
                      4: | segment: _TEXT (DOS16)
                      5: | created: 31-Oct-90
                      6: | history: 31-Oct-90 <chriswil> created.
                      7: |
                      8: \*---------------------------------------------------------------------------*/
                      9: 
                     10: #include <windows.h>
                     11: #include "gdidemo.h"
                     12: #include  "maze.h"
                     13: 
                     14: /*---------------------------------------------------------------------------*\
                     15: | CREATE MAZE WINDOW PROCEDURE
                     16: |
                     17: | created: 31-Oct-90
                     18: | history: 31-Oct-90 <chriswil> created.
                     19: |
                     20: \*---------------------------------------------------------------------------*/
                     21: HWND FAR CreateMazeWindow(HWND hWndClient, int nItem)
                     22: {
                     23:     HANDLE          hInstance;
                     24:     MDICREATESTRUCT mcs;
                     25: 
                     26: 
                     27:     hInstance = GETINSTANCE(hWndClient);
                     28: 
                     29:     /*
                     30:     ** Initialize the MDI create struct for creation of the
                     31:     ** test window.
                     32:     */
                     33:     mcs.szClass = MAZECLASS;
                     34:     mcs.szTitle = MAZETITLE;
                     35:     mcs.hOwner = hInstance;
                     36:     mcs.x       = CW_USEDEFAULT;
                     37:     mcs.y       = CW_USEDEFAULT;
                     38:     mcs.cx      = CW_USEDEFAULT;
                     39:     mcs.cy      = CW_USEDEFAULT;
                     40:     mcs.style  = 0l;
                     41:     mcs.lParam  = (LONG)nItem;
                     42: 
                     43:     return((HWND)SendMessage(hWndClient,WM_MDICREATE,NULL,(LONG)(LPMDICREATESTRUCT)&mcs));
                     44: }
                     45: 
                     46: 
                     47: /*---------------------------------------------------------------------------*\
                     48: | MAZE WINDOW PROCEDURE
                     49: |
                     50: | created: 31-Oct-90
                     51: | history: 31-Oct-90 <chriswil> created.
                     52: |
                     53: \*---------------------------------------------------------------------------*/
                     54: LONG APIENTRY MazeProc(HWND hWnd, UINT wMsg, WPARAM wParam, LONG lParam)
                     55: {
                     56:     switch(wMsg)
                     57:     {
                     58:         case WM_CREATE:
                     59:             MazeCreateProc(hWnd);
                     60:             break;
                     61: 
                     62: 
                     63:         case WM_COMMAND:
                     64:             MazeCommandProc(hWnd,wParam,lParam);
                     65:             break;
                     66: 
                     67:         case WM_TIMER:
                     68:             DrawMaze(hWnd);
                     69:             break;
                     70: 
                     71: 
                     72:         case WM_PAINT:
                     73:             MazePaintProc(hWnd);
                     74:             break;
                     75: 
                     76: 
                     77:         case WM_DESTROY:
                     78:             MazeDestroyProc(hWnd);
                     79:             break;
                     80: 
                     81: 
                     82:         default:
                     83:             return(DefMDIChildProc(hWnd,wMsg,wParam,lParam));
                     84:     }
                     85:     return(0l);
                     86: }
                     87: 
                     88: 
                     89: /*---------------------------------------------------------------------------*\
                     90: | MAZE CREATE PROCEDURE
                     91: |
                     92: | created: 31-Oct-90
                     93: | history: 31-Oct-90 <chriswil> created.
                     94: |
                     95: \*---------------------------------------------------------------------------*/
                     96: BOOL MazeCreateProc(HWND hWnd)
                     97: {
                     98:     PMAZEDATA ppd;
                     99: 
                    100: 
                    101:     if(AllocWindowInfo(hWnd,sizeof(MAZEDATA)))
                    102:     {
                    103:         if(ppd = (PMAZEDATA)LockWindowInfo(hWnd))
                    104:         {
                    105:             UnlockWindowInfo(hWnd);
                    106:             return(TRUE);
                    107:         }
                    108:         FreeWindowInfo(hWnd);
                    109:     }
                    110:     return(FALSE);
                    111: }
                    112: 
                    113: 
                    114: /*---------------------------------------------------------------------------*\
                    115: | MAZE COMMAND PROCEDURE
                    116: |
                    117: | created: 31-Oct-90
                    118: | history: 31-Oct-90 <chriswil> created.
                    119: |
                    120: \*---------------------------------------------------------------------------*/
                    121: BOOL MazeCommandProc(HWND hWnd, WPARAM wParam, LONG lParam)
                    122: {
                    123:     hWnd   = hWnd;
                    124:     wParam = wParam;
                    125:     lParam = lParam;
                    126: 
                    127:     return(TRUE);
                    128: }
                    129: 
                    130: 
                    131: /*---------------------------------------------------------------------------*\
                    132: | MAZE PAINT PROCEDURE
                    133: |
                    134: | created: 31-Oct-90
                    135: | history: 31-Oct-90 <chriswil> created.
                    136: |
                    137: \*---------------------------------------------------------------------------*/
                    138: VOID MazePaintProc(HWND hWnd)
                    139: {
                    140:     HDC         hDC;
                    141:     PAINTSTRUCT ps;
                    142: 
                    143: 
                    144:     if(hDC = BeginPaint(hWnd,&ps))
                    145:         EndPaint(hWnd,&ps);
                    146: 
                    147:     return;
                    148: }
                    149: 
                    150: 
                    151: /*---------------------------------------------------------------------------*\
                    152: | MAZE DESTROY PROCEDURE
                    153: |
                    154: | created: 31-Oct-90
                    155: | history: 31-Oct-90 <chriswil> created.
                    156: |
                    157: \*---------------------------------------------------------------------------*/
                    158: VOID MazeDestroyProc(HWND hWnd)
                    159: {
                    160:     KillTimer(hWnd,1);
                    161:     FreeWindowInfo(hWnd);
                    162:     return;
                    163: }
                    164: 
                    165: 
                    166: VOID DrawMaze(HWND hWnd)
                    167: {
                    168:     hWnd = hWnd;
                    169: 
                    170:     return;
                    171: }

unix.superglobalmegacorp.com

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