projects
/
libguac-client-rdp.git
/ commitdiff
summary
|
shortlog
|
log
|
commit
| commitdiff |
tree
raw
|
patch
|
inline
| side by side (parent:
b3eeffb
)
Add other raster operations (all having only src and dst).
author
Michael Jumper <zhangmaike@users.sourceforge.net>
Wed, 7 Mar 2012 23:28:35 +0000
(15:28 -0800)
committer
Michael Jumper <zhangmaike@users.sourceforge.net>
Wed, 7 Mar 2012 23:28:35 +0000
(15:28 -0800)
src/rdp_gdi.c
patch
|
blob
|
history
diff --git
a/src/rdp_gdi.c
b/src/rdp_gdi.c
index
6c92589
..
46ac9f3
100644
(file)
--- a/
src/rdp_gdi.c
+++ b/
src/rdp_gdi.c
@@
-49,21
+49,49
@@
guac_transfer_function guac_rdp_rop3_transfer_function(guac_client* client,
/* Translate supported ROP3 opcodes into composite modes */
switch (rop3) {
/* Translate supported ROP3 opcodes into composite modes */
switch (rop3) {
+ /* "DSon" !(src | dest) */
+ case 0x11: return GUAC_TRANSFER_BINARY_NOR;
+
+ /* "DSna" !src & dest */
+ case 0x22: return GUAC_TRANSFER_BINARY_NSRC_AND;
+
+ /* "Sn" !src */
+ case 0x33: return GUAC_TRANSFER_BINARY_NSRC;
+
+ /* "SDna" (src & !dest) */
+ case 0x44: return GUAC_TRANSFER_BINARY_NDEST_AND;
+
+ /* "Dn" !dest */
+ case 0x55: return GUAC_TRANSFER_BINARY_NDEST;
+
/* "SRCINVERT" (src ^ dest) */
case 0x66: return GUAC_TRANSFER_BINARY_XOR;
/* "SRCINVERT" (src ^ dest) */
case 0x66: return GUAC_TRANSFER_BINARY_XOR;
+ /* "DSan" !(src & dest) */
+ case 0x77: return GUAC_TRANSFER_BINARY_NAND;
+
/* "SRCAND" (src & dest) */
case 0x88: return GUAC_TRANSFER_BINARY_AND;
/* "SRCAND" (src & dest) */
case 0x88: return GUAC_TRANSFER_BINARY_AND;
+ /* "DSxn" !(src ^ dest) */
+ case 0x99: return GUAC_TRANSFER_BINARY_XNOR;
+
/* "MERGEPAINT" (!src | dest)*/
case 0xBB: return GUAC_TRANSFER_BINARY_NSRC_OR;
/* "SRCCOPY" (src) */
case 0xCC: return GUAC_TRANSFER_BINARY_SRC;
/* "MERGEPAINT" (!src | dest)*/
case 0xBB: return GUAC_TRANSFER_BINARY_NSRC_OR;
/* "SRCCOPY" (src) */
case 0xCC: return GUAC_TRANSFER_BINARY_SRC;
+ /* "SDno" (src | !dest) */
+ case 0xDD: return GUAC_TRANSFER_BINARY_NDEST_OR;
+
/* "SRCPAINT" (src | dest) */
case 0xEE: return GUAC_TRANSFER_BINARY_OR;
/* "SRCPAINT" (src | dest) */
case 0xEE: return GUAC_TRANSFER_BINARY_OR;
+ /* 0x00 = "BLACKNESS" (0) */
+ /* 0xAA = "NOP" (dest) */
+ /* 0xFF = "WHITENESS" (1) */
+
}
/* Log warning if ROP3 opcode not supported */
}
/* Log warning if ROP3 opcode not supported */