Ejemplo n.º 1
0
// Helper Methods
// --------------
static const AnimationValue*
GetZeroValueForUnit(StyleAnimationValue::Unit aUnit)
{
  static const AnimationValue sZeroCoord(
    StyleAnimationValue(0, StyleAnimationValue::CoordConstructor));
  static const AnimationValue sZeroPercent(
    StyleAnimationValue(0.0f, StyleAnimationValue::PercentConstructor));
  static const AnimationValue sZeroFloat(
    StyleAnimationValue(0.0f,  StyleAnimationValue::FloatConstructor));
  static const AnimationValue sZeroColor(
    StyleAnimationValue(NS_RGB(0,0,0), StyleAnimationValue::ColorConstructor));

  MOZ_ASSERT(aUnit != StyleAnimationValue::eUnit_Null,
             "Need non-null unit for a zero value");
  switch (aUnit) {
    case StyleAnimationValue::eUnit_Coord:
      return &sZeroCoord;
    case StyleAnimationValue::eUnit_Percent:
      return &sZeroPercent;
    case StyleAnimationValue::eUnit_Float:
      return &sZeroFloat;
    case StyleAnimationValue::eUnit_Color:
      return &sZeroColor;
    default:
      return nullptr;
  }
}