home *** CD-ROM | disk | FTP | other *** search
/ Media Share 9 / MEDIASHARE_09.ISO / mag&info / msjv7_6.zip / TOPTEN.ARJ / CALLBACK.ARJ / DLLSRC.ARJ / CALLBACK.C < prev    next >
Text File  |  1992-10-01  |  2KB  |  57 lines

  1. #include <windows.h>
  2. #include "callback.h"
  3.  
  4. //*************************************************************************
  5. //
  6. //  LibMain- Called once, when first app loads it
  7. //
  8. //*************************************************************************
  9.  
  10. int FAR PASCAL LibMain(HANDLE hModule, WORD wDataSeg, WORD cbHeapSize, LPSTR lpszCmdLine)
  11. {
  12.   return TRUE;
  13. }
  14.  
  15. //*************************************************************************
  16. //
  17. //  WEP- Called when DLL shuts down
  18. //
  19. //*************************************************************************
  20.  
  21. int FAR PASCAL WEP (BOOL bSystemExit)
  22. {
  23.     return TRUE;
  24. }
  25.  
  26. //*************************************************************************
  27. //
  28. //  The actual function
  29. //
  30. //*************************************************************************
  31.  
  32. void FAR PASCAL TileDDA 
  33.    ( 
  34.    HDC            hDC, 
  35.    LPRECT         prcPaint, 
  36.    int            ixTileSize, 
  37.    int            iyTileSize,
  38.    LPFNDRAWPROC   lpfnDrawProc
  39.    )
  40. {
  41.   int iNumTilesX;
  42.   int iNumTilesY;
  43.   int iRow, iCol;
  44.  
  45.   // Step 1: Figure out the number of tiles in each direction
  46.  
  47.   iNumTilesX = (prcPaint->right -prcPaint->left + ixTileSize-1)/ixTileSize;
  48.   iNumTilesY = (prcPaint->bottom-prcPaint->top  + iyTileSize-1)/iyTileSize;
  49.  
  50.   // Step 2: Draw the tiles!
  51.  
  52.   for ( iRow = 0; iRow < iNumTilesY; iRow++ )
  53.     for ( iCol = 0; iCol < iNumTilesX; iCol++ )
  54.       lpfnDrawProc (hDC, iCol*ixTileSize, iRow*iyTileSize );
  55. }
  56.  
  57.