Queue.js 2.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123
  1. function h2cRenderContext(width, height) {
  2. var storage = [];
  3. return {
  4. storage: storage,
  5. width: width,
  6. height: height,
  7. clip: function() {
  8. storage.push({
  9. type: "function",
  10. name: "clip",
  11. 'arguments': arguments
  12. });
  13. },
  14. translate: function() {
  15. storage.push({
  16. type: "function",
  17. name: "translate",
  18. 'arguments': arguments
  19. });
  20. },
  21. fill: function() {
  22. storage.push({
  23. type: "function",
  24. name: "fill",
  25. 'arguments': arguments
  26. });
  27. },
  28. save: function() {
  29. storage.push({
  30. type: "function",
  31. name: "save",
  32. 'arguments': arguments
  33. });
  34. },
  35. restore: function() {
  36. storage.push({
  37. type: "function",
  38. name: "restore",
  39. 'arguments': arguments
  40. });
  41. },
  42. fillRect: function () {
  43. storage.push({
  44. type: "function",
  45. name: "fillRect",
  46. 'arguments': arguments
  47. });
  48. },
  49. createPattern: function() {
  50. storage.push({
  51. type: "function",
  52. name: "createPattern",
  53. 'arguments': arguments
  54. });
  55. },
  56. drawShape: function() {
  57. var shape = [];
  58. storage.push({
  59. type: "function",
  60. name: "drawShape",
  61. 'arguments': shape
  62. });
  63. return {
  64. moveTo: function() {
  65. shape.push({
  66. name: "moveTo",
  67. 'arguments': arguments
  68. });
  69. },
  70. lineTo: function() {
  71. shape.push({
  72. name: "lineTo",
  73. 'arguments': arguments
  74. });
  75. },
  76. arcTo: function() {
  77. shape.push({
  78. name: "arcTo",
  79. 'arguments': arguments
  80. });
  81. },
  82. bezierCurveTo: function() {
  83. shape.push({
  84. name: "bezierCurveTo",
  85. 'arguments': arguments
  86. });
  87. },
  88. quadraticCurveTo: function() {
  89. shape.push({
  90. name: "quadraticCurveTo",
  91. 'arguments': arguments
  92. });
  93. }
  94. };
  95. },
  96. drawImage: function () {
  97. storage.push({
  98. type: "function",
  99. name: "drawImage",
  100. 'arguments': arguments
  101. });
  102. },
  103. fillText: function () {
  104. storage.push({
  105. type: "function",
  106. name: "fillText",
  107. 'arguments': arguments
  108. });
  109. },
  110. setVariable: function (variable, value) {
  111. storage.push({
  112. type: "variable",
  113. name: variable,
  114. 'arguments': value
  115. });
  116. return value;
  117. }
  118. };
  119. }