Index: sky/engine/core/painting/DrawLooperLayerInfo.idl |
diff --git a/sky/engine/core/painting/DrawLooperLayerInfo.idl b/sky/engine/core/painting/DrawLooperLayerInfo.idl |
new file mode 100644 |
index 0000000000000000000000000000000000000000..f46c2bf450d6db59790d1d08de1bcef64a8a1980 |
--- /dev/null |
+++ b/sky/engine/core/painting/DrawLooperLayerInfo.idl |
@@ -0,0 +1,30 @@ |
+// Copyright 2015 The Chromium Authors. All rights reserved. |
+// Use of this source code is governed by a BSD-style license that can be |
+// found in the LICENSE file. |
+ |
+[ |
+ Constructor(), |
+] interface DrawLooperLayerInfo { |
+ // Bits specifies which aspects of the layer's paint should replace the |
+ // corresponding aspects on the draw's paint. |
+ // ENTIRE_PAINT_BITS means use the layer's paint completely. |
+ // 0 means ignore the layer's paint... except for colorMode, which is |
+ // always applied. |
+ // TODO(mpcomplete): maybe these should each be functions (e.g. useStyle()). |
+ // TODO(mpcomplete): the IDL compiler doesn't use these for anything? |
+ const unsigned long STYLE_BIT = 0x1; |
+ const unsigned long TEXT_SKEWX_BIT = 0x2; |
+ const unsigned long PATH_EFFECT_BIT = 0x4; |
+ const unsigned long MASK_FILTER_BIT = 0x8; |
+ const unsigned long SHADER_BIT = 0x10; |
+ const unsigned long COLOR_FILTER_BIT = 0x20; |
+ const unsigned long XFERMODE_BIT = 0x40; |
+ const unsigned long ENTIRE_PAINT_BITS = -1; |
+ |
+ void setPaintBits(unsigned long bits); |
+ // TODO(mpcomplete): use SkXfermode::Mode. |
+ void setColorMode(unsigned long mode); |
+ // TODO(mpcomplete): use Point. |
+ void setOffset(float x, float y); |
+ void setPostTranslate(boolean postTranslate); |
+}; |