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

Side by Side Diff: Source/core/svg/SVGAngleTearOff.h

Issue 303263008: [SVG2] Add support for the 'turn' unit in <angle>. (Closed) Base URL: https://chromium.googlesource.com/chromium/blink.git@master
Patch Set: hide the internals of SVGAngle Created 6 years, 6 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 unified diff | Download patch
OLDNEW
1 /* 1 /*
2 * Copyright (C) 2014 Google Inc. All rights reserved. 2 * Copyright (C) 2014 Google Inc. All rights reserved.
3 * 3 *
4 * Redistribution and use in source and binary forms, with or without 4 * Redistribution and use in source and binary forms, with or without
5 * modification, are permitted provided that the following conditions are 5 * modification, are permitted provided that the following conditions are
6 * met: 6 * met:
7 * 7 *
8 * * Redistributions of source code must retain the above copyright 8 * * Redistributions of source code must retain the above copyright
9 * notice, this list of conditions and the following disclaimer. 9 * notice, this list of conditions and the following disclaimer.
10 * * Redistributions in binary form must reproduce the above 10 * * Redistributions in binary form must reproduce the above
(...skipping 36 matching lines...) Expand 10 before | Expand all | Expand 10 after
47 enum { 47 enum {
48 SVG_ANGLETYPE_UNKNOWN = SVGAngle::SVG_ANGLETYPE_UNKNOWN, 48 SVG_ANGLETYPE_UNKNOWN = SVGAngle::SVG_ANGLETYPE_UNKNOWN,
49 SVG_ANGLETYPE_UNSPECIFIED = SVGAngle::SVG_ANGLETYPE_UNSPECIFIED, 49 SVG_ANGLETYPE_UNSPECIFIED = SVGAngle::SVG_ANGLETYPE_UNSPECIFIED,
50 SVG_ANGLETYPE_DEG = SVGAngle::SVG_ANGLETYPE_DEG, 50 SVG_ANGLETYPE_DEG = SVGAngle::SVG_ANGLETYPE_DEG,
51 SVG_ANGLETYPE_RAD = SVGAngle::SVG_ANGLETYPE_RAD, 51 SVG_ANGLETYPE_RAD = SVGAngle::SVG_ANGLETYPE_RAD,
52 SVG_ANGLETYPE_GRAD = SVGAngle::SVG_ANGLETYPE_GRAD 52 SVG_ANGLETYPE_GRAD = SVGAngle::SVG_ANGLETYPE_GRAD
53 }; 53 };
54 54
55 virtual ~SVGAngleTearOff(); 55 virtual ~SVGAngleTearOff();
56 56
57 unsigned short unitType() { return target()->unitType(); } 57 unsigned short unitType() { return isValidAngle() ? target()->unitType() : S VGAngle::SVG_ANGLETYPE_UNKNOWN; }
58 58
59 void setValue(float, ExceptionState&); 59 void setValue(float, ExceptionState&);
60 float value() { return target()->value(); } 60 float value() { return target()->value(); }
61 61
62 void setValueInSpecifiedUnits(float, ExceptionState&); 62 void setValueInSpecifiedUnits(float, ExceptionState&);
63 float valueInSpecifiedUnits() { return target()->valueInSpecifiedUnits(); } 63 float valueInSpecifiedUnits() { return target()->valueInSpecifiedUnits(); }
64 64
65 void newValueSpecifiedUnits(unsigned short unitType, float valueInSpecifiedU nits, ExceptionState&); 65 void newValueSpecifiedUnits(unsigned short unitType, float valueInSpecifiedU nits, ExceptionState&);
66 void convertToSpecifiedUnits(unsigned short unitType, ExceptionState&); 66 void convertToSpecifiedUnits(unsigned short unitType, ExceptionState&);
67 67
68 String valueAsString() { return target()->valueAsString(); } 68 String valueAsString() { return isValidAngle() ? target()->valueAsString() : String::number(0); }
krit 2014/06/10 11:45:48 Exposing more unit types is one thing. Do we need
Erik Dahlström (inactive) 2014/06/10 16:57:42 Not necessarily, only if we want to preserve exist
69 void setValueAsString(const String&, ExceptionState&); 69 void setValueAsString(const String&, ExceptionState&);
70 70
71 bool isValidAngle() { return target()->unitType() <= SVGAngle::SVG_ANGLETYPE _GRAD; }
fs 2014/06/10 11:13:30 Nit: isValidAngleType / isValidAngleUnit ? (Could
Erik Dahlström (inactive) 2014/06/10 16:57:42 Private yes, const no, the target() method is non-
fs 2014/06/11 07:29:07 Ok.
72
71 private: 73 private:
72 SVGAngleTearOff(PassRefPtr<SVGAngle>, SVGElement*, PropertyIsAnimValType, co nst QualifiedName&); 74 SVGAngleTearOff(PassRefPtr<SVGAngle>, SVGElement*, PropertyIsAnimValType, co nst QualifiedName&);
73 }; 75 };
74 76
75 } // namespace WebCore 77 } // namespace WebCore
76 78
77 #endif // SVGAngleTearOff_h_ 79 #endif // SVGAngleTearOff_h_
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698