home *** CD-ROM | disk | FTP | other *** search
/ OS/2 Shareware BBS: 22 gnu / 22-gnu.zip / sampl254.zip / gcc2 / samples / sample3 / winproc.cc < prev   
C/C++ Source or Header  |  1993-04-11  |  2KB  |  65 lines

  1. #define INCL_WIN
  2. #define INCL_GPI
  3. #include <os2.h>
  4. #include <stdlib.h>
  5. #include "sample3.h"
  6.  
  7. extern "C"
  8.  {
  9.    // This function must be exported so don't mangle the name
  10.  
  11.    MRESULT ClientWndProc (HWND, USHORT, MPARAM, MPARAM);
  12.  }
  13.                                
  14.   BOOL  GetFileToBrowse (HWND   hwndOwner);
  15.  
  16. MRESULT EXPENTRY ClientWndProc (HWND    hwnd,
  17.                                    USHORT  msg,
  18.                                    MPARAM  mp1,
  19.                                    MPARAM  mp2)
  20.  
  21.   {// Variable Declarations
  22.  
  23.               RECTL    INVLDRECT;
  24.               HPS      hPresSp;
  25.  
  26.    //  Main Program Logic  
  27.  
  28.    switch (msg)
  29.      {
  30.       case WM_CREATE:
  31.  
  32.            WinMessageBox (HWND_DESKTOP,                // Parent of message box window. 
  33.                           hwnd,                        // Owner of message box.         
  34.                     (PSZ) "Create message received.",  // Message.                      
  35.                     (PSZ) "Debug Info",                // Message box title.            
  36.                           0,                           // Message box ID.               
  37.                           MB_OK | MB_ICONASTERISK);    // OK button - * Icon.           
  38.  
  39.            return 0;
  40.  
  41.       case WM_DESTROY:
  42.  
  43.            return 0;
  44.  
  45.       case WM_PAINT:
  46.  
  47.            hPresSp = WinBeginPaint (hwnd, 0, NULL);
  48.            WinQueryWindowRect (hwnd, &INVLDRECT);
  49.            WinFillRect (hPresSp, &INVLDRECT, CLR_WHITE);
  50.            WinEndPaint (hPresSp);
  51.            return 0;
  52.  
  53.       case WM_COMMAND:
  54.  
  55.            switch (SHORT1FROMMP(mp1))
  56.              {
  57.               case IDM_NEW:
  58.                 GetFileToBrowse (hwnd);
  59.                 return 0;
  60.              }
  61.      }
  62.    return WinDefWindowProc (hwnd, msg, mp1, mp2);
  63.   }
  64.  
  65.