2.2.2.4.10.1.28 ScreenBlt

The ScreenBlt order contains a bit-block transfer between regions of the screen.


0


1


2


3


4


5


6


7


8


9

1
0


1


2


3


4


5


6


7


8


9

2
0


1


2


3


4


5


6


7


8


9

3
0


1

pControlFlags

OrderType (optional)

FieldBytes

Bounds (13 bytes, optional)

...

...

nLeftRect (optional)

nTopRect (optional)

nWidth (optional)

nHeight (optional)

bRop (optional)

nXSrc (optional)

nYSrc (optional)

...

pControlFlags (1 byte): MUST be set to the value OE2_CF_STANDARD_ENC from the OE2 Control Flags enumeration. If the order differs in type from the last order that was sent, this field contains the bitwise AND of the value OE2_CF_TYPE_CHANGE. If the bounding rectangle has changed since the last order of the same type, this field contains the bitwise AND of the value OE2_CF_BOUNDS. If the coordinates of the bounding rectangle are specified as deltas from the last bounding rectangle that was used, this field contains the bitwise AND of the value OE2_CF_DELTACOORDS.

OrderType (1 byte): If the order differs in type from the last, this field MUST contain the value OE2_SCRBLT_ORDER from the Order Types enumeration. If the order is the same type as the last, this field is not present.

FieldBytes (1 byte): An 8-bit field, with each bit indicating which of the fields that follow the Bounds field is present. A bit set to 1 indicates that the field is present and its value has changed since the same order type was last sent.


0


1


2


3


4


5


6


7

A

B

C

D

E

F

G

0

Where the bits are defined as:

Value

Description

A

                

The nLeftRect value is present.

B

                

The nTopRect value is present.

C

                

The nWidth value is present.

D

                

The nHeight value is present.

E

                

The bRop value is present.

F

                

The nXSrc value is present.

G

                

The nYSrc value is present.

The bits that are marked with 0 MUST be 0.

Bounds (13 bytes): A byte array of a BoundsData structure. This field is present only if the pControlFlags field contains the bitwise AND of the value OE2_CF_BOUNDS from the OE2 Control Flags enumeration.

nLeftRect (2 bytes): This value MUST be present if the corresponding bit from the FieldBytes field is set. This represents the x-coordinate of the left edge of the target rectangle.

nTopRect (2 bytes): This value MUST be present if the corresponding bit from the FieldBytes field is set. This represents the y-coordinate top edge of the target rectangle.

nWidth (2 bytes): This value MUST be present if the corresponding bit from the FieldBytes field is set. This represents the width, in pixels, of the target rectangle.

nHeight (2 bytes): This value MUST be present if the corresponding bit from the FieldBytes field is set. This represents the height, in pixels, of the target rectangle.

bRop (1 byte): This value MUST be present if the corresponding bit from the FieldBytes field is set. This represents the high-order byte of a Windows GDI ternary raster operation code.<23>

nXSrc (2 bytes): This value MUST be present if the corresponding bit from the FieldBytes field is set. This represents the x-coordinate of the left side of the source rectangle.

nYSrc (4 bytes): This value MUST be present if the corresponding bit from the FieldBytes field is set. This represents the y-coordinate of the top side of the source rectangle.