Leaked source code of windows server 2003
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

54 lines
2.0 KiB

  1. /******************************Module*Header*******************************\
  2. * Module Name: CDIB.h
  3. *
  4. * This file contains the code to support the functionality test harness
  5. * for GDI+. This includes menu options and calling the appropriate
  6. * functions for execution.
  7. *
  8. * Created: 05-May-2000 - Jeff Vezina [t-jfvez]
  9. *
  10. * Copyright (c) 2000 Microsoft Corporation
  11. *
  12. \**************************************************************************/
  13. #ifndef __CDIB_H
  14. #define __CDIB_H
  15. #include "COutput.h"
  16. typedef RGBQUAD RGBQUAD1[2];
  17. typedef RGBQUAD RGBQUAD2[4];
  18. typedef RGBQUAD RGBQUAD4[16];
  19. typedef RGBQUAD RGBQUAD8[256];
  20. typedef RGBQUAD RGBQUAD16[3];
  21. typedef RGBQUAD RGBQUAD24[3];
  22. typedef RGBQUAD RGBQUAD32[3];
  23. class CDIB : public COutput
  24. {
  25. public:
  26. CDIB(BOOL bRegression,int nBits);
  27. virtual ~CDIB();
  28. Graphics *PreDraw(int &nOffsetX,int &nOffsetY); // Set up graphics at the given X,Y offset
  29. void PostDraw(RECT rTestArea); // Finish off graphics at rTestArea
  30. void InitPalettes(); // Initialize palettes
  31. HDC m_hDC; // DC of DIB
  32. HBITMAP m_hBM; // Bitmap of DIB
  33. HBITMAP m_hBMOld; // Bitmap of old drawing surface
  34. HPALETTE m_hpal;
  35. HPALETTE m_hpalOld;
  36. RGBQUAD1 m_rgbQuad1; // 1 bit palette
  37. RGBQUAD2 m_rgbQuad2; // 2 bit palette
  38. RGBQUAD4 m_rgbQuad4; // 4 bit palette
  39. RGBQUAD8 m_rgbQuad8; // 8 bit palette
  40. RGBQUAD16 m_rgbQuad16; // 16 bit palette
  41. RGBQUAD24 m_rgbQuad24; // 24 bit palette
  42. RGBQUAD32 m_rgbQuad32; // 32 bit palette
  43. int m_nBits; // # of bits to use
  44. };
  45. #endif