Fix cursor - copyRect() has been renamed to copy().
[guacamole-common-js.git] / src / main / resources / guacamole.js
index b3a0b33..d4a52ba 100644 (file)
@@ -20,6 +20,7 @@
  * the Initial Developer. All Rights Reserved.
  *
  * Contributor(s):
+ * Matt Hortman
  *
  * Alternatively, the contents of this file may be used under the terms of
  * either the GNU General Public License Version 2 or later (the "GPL"), or
@@ -377,7 +378,7 @@ Guacamole.Client = function(tunnel) {
 
             dstL.setChannelMask(channelMask);
 
-            dstL.copyRect(
+            dstL.copy(
                 srcL,
                 srcX,
                 srcY,
@@ -416,35 +417,36 @@ Guacamole.Client = function(tunnel) {
 
         "rect": function(parameters) {
 
-            var channelMask = parseInt(parameters[0]);
-            var layer = getLayer(parseInt(parameters[1]));
-            var x = parseInt(parameters[2]);
-            var y = parseInt(parameters[3]);
-            var w = parseInt(parameters[4]);
-            var h = parseInt(parameters[5]);
-            var r = parseInt(parameters[6]);
-            var g = parseInt(parameters[7]);
-            var b = parseInt(parameters[8]);
-            var a = parseInt(parameters[9]);
-
-            layer.setChannelMask(channelMask);
+            var layer = getLayer(parseInt(parameters[0]));
+            var x = parseInt(parameters[1]);
+            var y = parseInt(parameters[2]);
+            var w = parseInt(parameters[3]);
+            var h = parseInt(parameters[4]);
 
-            layer.drawRect(
-                x, y, w, h,
-                r, g, b, a
-            );
+            layer.rect(x, y, w, h);
 
         },
 
         "clip": function(parameters) {
 
             var layer = getLayer(parseInt(parameters[0]));
-            var x = parseInt(parameters[1]);
-            var y = parseInt(parameters[2]);
-            var w = parseInt(parameters[3]);
-            var h = parseInt(parameters[4]);
 
-            layer.clipRect(x, y, w, h);
+            layer.clip();
+
+        },
+
+        "cfill": function(parameters) {
+
+            var channelMask = parseInt(parameters[0]);
+            var layer = getLayer(parseInt(parameters[1]));
+            var r = parseInt(parameters[2]);
+            var g = parseInt(parameters[3]);
+            var b = parseInt(parameters[4]);
+            var a = parseInt(parameters[5]);
+
+            layer.setChannelMask(channelMask);
+
+            layer.fillColor(r, g, b, a);
 
         },
 
@@ -462,7 +464,7 @@ Guacamole.Client = function(tunnel) {
             cursor.resize(srcWidth, srcHeight);
 
             // Draw cursor to cursor layer
-            cursor.getLayer().copyRect(
+            cursor.getLayer().copy(
                 srcL,
                 srcX,
                 srcY,
@@ -680,17 +682,17 @@ Guacamole.Client.DefaultTransferFunction = {
 
     /* Invert SRC */
     0xC: function (src, dst) {
-        dst.red   = ~src.red;
-        dst.green = ~src.green;
-        dst.blue  = ~src.blue;
+        dst.red   = 0xFF & ~src.red;
+        dst.green = 0xFF & ~src.green;
+        dst.blue  = 0xFF & ~src.blue;
         dst.alpha =  src.alpha;
     },
     
     /* Invert DEST */
     0xA: function (src, dst) {
-        dst.red   = ~dst.red;
-        dst.green = ~dst.green;
-        dst.blue  = ~dst.blue;
+        dst.red   = 0xFF & ~dst.red;
+        dst.green = 0xFF & ~dst.green;
+        dst.blue  = 0xFF & ~dst.blue;
     },
 
     /* AND */
@@ -702,9 +704,9 @@ Guacamole.Client.DefaultTransferFunction = {
 
     /* NAND */
     0xE: function (src, dst) {
-        dst.red   = ~( src.red   &  dst.red);
-        dst.green = ~( src.green &  dst.green);
-        dst.blue  = ~( src.blue  &  dst.blue);
+        dst.red   = 0xFF & ~( src.red   &  dst.red);
+        dst.green = 0xFF & ~( src.green &  dst.green);
+        dst.blue  = 0xFF & ~( src.blue  &  dst.blue);
     },
 
     /* OR */
@@ -716,9 +718,9 @@ Guacamole.Client.DefaultTransferFunction = {
 
     /* NOR */
     0x8: function (src, dst) {
-        dst.red   = ~( src.red   |  dst.red);
-        dst.green = ~( src.green |  dst.green);
-        dst.blue  = ~( src.blue  |  dst.blue);
+        dst.red   = 0xFF & ~( src.red   |  dst.red);
+        dst.green = 0xFF & ~( src.green |  dst.green);
+        dst.blue  = 0xFF & ~( src.blue  |  dst.blue);
     },
 
     /* XOR */
@@ -730,37 +732,37 @@ Guacamole.Client.DefaultTransferFunction = {
 
     /* XNOR */
     0x9: function (src, dst) {
-        dst.red   = ~( src.red   ^  dst.red);
-        dst.green = ~( src.green ^  dst.green);
-        dst.blue  = ~( src.blue  ^  dst.blue);
+        dst.red   = 0xFF & ~( src.red   ^  dst.red);
+        dst.green = 0xFF & ~( src.green ^  dst.green);
+        dst.blue  = 0xFF & ~( src.blue  ^  dst.blue);
     },
 
     /* AND inverted source */
     0x4: function (src, dst) {
-        dst.red   =  (~src.red   &  dst.red);
-        dst.green =  (~src.green &  dst.green);
-        dst.blue  =  (~src.blue  &  dst.blue);
+        dst.red   =  0xFF & (~src.red   &  dst.red);
+        dst.green =  0xFF & (~src.green &  dst.green);
+        dst.blue  =  0xFF & (~src.blue  &  dst.blue);
     },
 
     /* OR inverted source */
     0xD: function (src, dst) {
-        dst.red   =  (~src.red   |  dst.red);
-        dst.green =  (~src.green |  dst.green);
-        dst.blue  =  (~src.blue  |  dst.blue);
+        dst.red   =  0xFF & (~src.red   |  dst.red);
+        dst.green =  0xFF & (~src.green |  dst.green);
+        dst.blue  =  0xFF & (~src.blue  |  dst.blue);
     },
 
     /* AND inverted destination */
     0x2: function (src, dst) {
-        dst.red   =  ( src.red   & ~dst.red);
-        dst.green =  ( src.green & ~dst.green);
-        dst.blue  =  ( src.blue  & ~dst.blue);
+        dst.red   =  0xFF & ( src.red   & ~dst.red);
+        dst.green =  0xFF & ( src.green & ~dst.green);
+        dst.blue  =  0xFF & ( src.blue  & ~dst.blue);
     },
 
     /* OR inverted destination */
     0xB: function (src, dst) {
-        dst.red   =  ( src.red   | ~dst.red);
-        dst.green =  ( src.green | ~dst.green);
-        dst.blue  =  ( src.blue  | ~dst.blue);
+        dst.red   =  0xFF & ( src.red   | ~dst.red);
+        dst.green =  0xFF & ( src.green | ~dst.green);
+        dst.blue  =  0xFF & ( src.blue  | ~dst.blue);
     }
 
 };