Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(88)

Unified Diff: sky/engine/core/painting/TransferMode.dart

Issue 1144233004: Sky: Convert TransferMode to an enum. (Closed) Base URL: git@github.com:/domokit/mojo.git@master
Patch Set: review Created 5 years, 7 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: sky/engine/core/painting/TransferMode.dart
diff --git a/sky/engine/core/painting/TransferMode.dart b/sky/engine/core/painting/TransferMode.dart
index 88e9361b26a0e0007c5fb22a999c7ea12c68ff8b..e0b3ba062551d776e578ee9b1b65286ab2a9c3b0 100644
--- a/sky/engine/core/painting/TransferMode.dart
+++ b/sky/engine/core/painting/TransferMode.dart
@@ -4,48 +4,40 @@
part of dart.sky;
-/// Color transfer mode.
-class TransferMode {
- final int _value;
+/// List of predefined color transfer modes. This list comes from Skia's
+/// SkXfermode.h and the values (order) should be kept in sync.
+enum TransferMode {
+ clearMode,
+ srcMode,
+ dstMode,
+ srcOverMode,
+ dstOverMode,
+ srcInMode,
+ dstInMode,
+ srcOutMode,
+ dstOutMode,
+ srcATopMode,
+ dstATopMode,
+ xorMode,
+ plusMode,
+ modulateMode,
- const TransferMode(this._value);
+ // Following blend modes are defined in the CSS Compositing standard.
+ screenMode, /// The last coeff mode.
- /// List of predefined modes. This list comes from Skia's SkXfermode.h and
- /// the values should be kept in sync.
- static const TransferMode clearMode = const TransferMode(0);
- static const TransferMode srcMode = const TransferMode(1);
- static const TransferMode dstMode = const TransferMode(2);
- static const TransferMode srcOverMode = const TransferMode(3);
- static const TransferMode dstOverMode = const TransferMode(4);
- static const TransferMode srcInMode = const TransferMode(5);
- static const TransferMode dstInMode = const TransferMode(6);
- static const TransferMode srcOutMode = const TransferMode(7);
- static const TransferMode dstOutMode = const TransferMode(8);
- static const TransferMode srcATopMode = const TransferMode(9);
- static const TransferMode dstATopMode = const TransferMode(10);
- static const TransferMode xorMode = const TransferMode(11);
- static const TransferMode plusMode = const TransferMode(12);
- static const TransferMode modulateMode = const TransferMode(13);
+ overlayMode,
+ darkenMode,
+ lightenMode,
+ colorDodgeMode,
+ colorBurnMode,
+ hardLightMode,
+ softLightMode,
+ differenceMode,
+ exclusionMode,
+ multiplyMode, /// The last separable mode.
- // Following blend modes are defined in the CSS Compositing standard:
- // https://dvcs.w3.org/hg/FXTF/rawfile/tip/compositing/index.html#blending
- static const TransferMode screenMode = const TransferMode(14);
- static const TransferMode lastCoeffMode = screenMode = const TransferMode(15);
-
- static const TransferMode overlayMode = const TransferMode(16);
- static const TransferMode darkenMode = const TransferMode(17);
- static const TransferMode lightenMode = const TransferMode(18);
- static const TransferMode colorDodgeMode = const TransferMode(19);
- static const TransferMode colorBurnMode = const TransferMode(20);
- static const TransferMode hardLightMode = const TransferMode(21);
- static const TransferMode softLightMode = const TransferMode(22);
- static const TransferMode differenceMode = const TransferMode(23);
- static const TransferMode exclusionMode = const TransferMode(24);
- static const TransferMode multiplyMode = const TransferMode(25);
- static const TransferMode lastSeparableMode = multiplyMode = const TransferMode(26);
-
- static const TransferMode hueMode = const TransferMode(27);
- static const TransferMode saturationMode = const TransferMode(28);
- static const TransferMode colorMode = const TransferMode(29);
- static const TransferMode luminosityMode = const TransferMode(30);
+ hueMode,
+ saturationMode,
+ colorMode,
+ luminosityMode,
}

Powered by Google App Engine
This is Rietveld 408576698