home *** CD-ROM | disk | FTP | other *** search
/ DOS/V Power Report 1997 February / VPR9702A.ISO / FFILLY / NVM61028 / NMWND.TFY < prev    next >
Text File  |  1996-10-27  |  1KB  |  58 lines

  1. // NmWnd.tfy - Window and picture operations
  2.  
  3. #define WINDOW_WIDTH        640
  4. #define WINDOW_HEIGHT        400
  5.  
  6. #define BACKGROUND_X    44
  7. #define BACKGROUND_W    12
  8. #define BACKGROUND_H    18
  9.  
  10. int picDummy, picMainWnd, picScreen;
  11.  
  12. OpenMainWindow()
  13. {
  14.     PreparePicture();
  15.     picMainWnd = CreateNewScreen();
  16.     OpenWin(picMainWnd, (WinInfo(0) - WINDOW_WIDTH) / 2, (WinInfo(1) - WINDOW_HEIGHT) / 2, 
  17.         WINDOW_WIDTH, WINDOW_HEIGHT, 0, 0, 0x000000);
  18. }
  19.  
  20. PreparePicture()
  21. {
  22.     BackMode(1);
  23.     picDummy = LoadPic("Bitmaps.bmp");
  24.     picScreen = CreatePic(picDummy, WINDOW_WIDTH, WINDOW_HEIGHT);
  25.     DrawTexture(picScreen);
  26. }
  27.  
  28. int CreateBlankPicture(int nBackColor)
  29. {
  30.     int pic;
  31.     pic = CreatePic(picDummy, WINDOW_WIDTH, WINDOW_HEIGHT);
  32.     DrawRect(pic, 0, 0, WINDOW_WIDTH, WINDOW_HEIGHT, 1, 0);
  33.     return pic;
  34. }
  35.  
  36. int CreateNewScreen()
  37. {
  38.     int pic;
  39.     pic = CreatePic(picDummy, WINDOW_WIDTH, WINDOW_HEIGHT);
  40.     MovePic(picScreen, 0, 0, WINDOW_WIDTH, WINDOW_HEIGHT, pic);
  41.     return pic;
  42. }
  43.  
  44. DrawTexture(int pic)
  45. {
  46.     int x, y, xm, ym, pw, ph;
  47.     pw = BACKGROUND_W;
  48.     ph = BACKGROUND_H;
  49.     xm = (WINDOW_WIDTH - 1) / pw + 1;
  50.     ym = (WINDOW_HEIGHT - 1) / ph + 1;
  51.     for (y = 0; y < ym; y = y + 1) {
  52.         for (x = 0; x < xm; x = x + 1) {
  53.             MovePic(picDummy, BACKGROUND_X, 0, pw, ph, pic, x * pw, y * ph);
  54.         }
  55.     }
  56. }
  57.  
  58.