4.1.3 PatBlt

The following is an annotated dump of a PatBlt (section 2.2.2.2.1.1.2.3) Primary Drawing Order.

 00000000 09 01 7f 02 1a 00 c3 01 0d 00 0d 00 f0 ff ff 00 ................
 00000010 5b ef 00 81                                     [...
  
 09 -> PRIMARY_DRAWING_ORDER::controlFlags = 0x09
 0x09
 = 0x01 |
   0x08
 = TS_STANDARD |
   TS_TYPE_CHANGE
  
 01 -> PRIMARY_DRAWING_ORDER::orderType = TS_ENC_PATBLT_ORDER
  
 7f 02 -> PRIMARY_DRAWING_ORDER::fieldFlags = 0x027f
 Binary of 0x7f = 0000 0010 0111 1111
 Fields 1-7, 10 are present
  
 1a 00 -> PATBLT_ORDER::nLeftRect = 0x1a = 26 
 c3 01 -> PATBLT_ORDER::nTopRect = 0x01c3 = 451 
  
 0d 00 -> PATBLT_ORDER::nWidth = 0x0d = 13 
 0d 00 -> PATBLT_ORDER::nHeight = 0x0d = 13 
  
 f0 -> PATBLT_ORDER::bRop = 0xf0 = ROP Table Entry #240 = 0x00f00021
  
 ff ff 00 -> PATBLT_ORDER::BackColor
 TS_COLOR::RedOrPaletteIndex = 0xff
 TS_COLOR::Green = 0xff
 TS_COLOR::Blue = 0x00
  
 5b ef 00 -> PATBLT_ORDER::ForeColor
 TS_COLOR::RedOrPaletteIndex = 0x5b
 TS_COLOR::Green = 0xef
 TS_COLOR::Blue = 0x00
  
 PATBLT_ORDER::BrushOrgX not present
 PATBLT_ORDER::BrushOrgY not present
  
 81 --> PATBLT_ORDER::BrushStyle = 0x81
 0x81
 = 0x01 |
   0x80
 = BMF_1BPP |
   TS_CACHED_BRUSH
  
 PATBLT_ORDER::BrushHatch not present
 PATBLT_ORDER::BrushExtra not present