2.2.2.4.10.1.27 SaveBitmap

The SaveBitmap order contains a region of the screen that the receiver SHOULD save or restore.


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)

...

...

SavedBitmapPosition (optional)

nLeftRect (optional)

nTopRect (optional)

nRightRect (optional)

nBottomRect (optional)

Operation

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_SAVEBITMAP_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

0

0

0

Where the bits are defined as:

Value

Description

A

                

The SavedBitmapPosition value is present.

B

                

The nLeftRect value is present.

C

                

The nTopRect value is present.

D

                

The nRightRect value is present.

E

                

The nBottomRect 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.

SavedBitmapPosition (4 bytes): This value MUST be present if the corresponding bit from the FieldBytes field is set. This represents the start position for the rectangle in the saved bitmap of the client.

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

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

nRightRect (2 bytes): This value MUST be present if the corresponding bit from the FieldBytes field is set. This represents the x-coordinate within the window of the right edge of the rectangle.

nBottomRect (2 bytes): This value MUST be present if the corresponding bit from the FieldBytes field is set. This represents the y-coordinate within the window of the bottom edge of the rectangle.

Operation (2 bytes): MUST be set to 0x0000 or 0x0001. If set to 0x0000, the receiver SHOULD save the referenced region of the screen. If set to 0x0001, the receiver SHOULD restore the referenced region of the screen from the saved copy.

Value

Meaning

0x0000

SHOULD save the referenced screen region.

0x0001

SHOULD restore the referenced screen region.