| OLD | NEW |
| 1 | 1 |
| 2 /* | 2 /* |
| 3 * Copyright 2006 The Android Open Source Project | 3 * Copyright 2006 The Android Open Source Project |
| 4 * | 4 * |
| 5 * Use of this source code is governed by a BSD-style license that can be | 5 * Use of this source code is governed by a BSD-style license that can be |
| 6 * found in the LICENSE file. | 6 * found in the LICENSE file. |
| 7 */ | 7 */ |
| 8 | 8 |
| 9 | 9 |
| 10 #ifndef SkDrawPath_DEFINED | 10 #ifndef SkDrawPath_DEFINED |
| 11 #define SkDrawPath_DEFINED | 11 #define SkDrawPath_DEFINED |
| 12 | 12 |
| 13 #include "SkBoundable.h" | 13 #include "SkBoundable.h" |
| 14 #include "SkIntArray.h" | 14 #include "SkIntArray.h" |
| 15 #include "SkMemberInfo.h" | 15 #include "SkMemberInfo.h" |
| 16 #include "SkPath.h" | 16 #include "SkPath.h" |
| 17 | 17 |
| 18 class SkDrawPath : public SkBoundable { | 18 class SkDrawPath : public SkBoundable { |
| 19 DECLARE_DRAW_MEMBER_INFO(Path); | 19 DECLARE_DRAW_MEMBER_INFO(Path); |
| 20 SkDrawPath(); | 20 SkDrawPath(); |
| 21 virtual ~SkDrawPath(); | 21 virtual ~SkDrawPath(); |
| 22 virtual bool addChild(SkAnimateMaker& , SkDisplayable* child) SK_OVERRIDE; | 22 bool addChild(SkAnimateMaker& , SkDisplayable* child) SK_OVERRIDE; |
| 23 bool childHasID() { return SkToBool(fChildHasID); } | 23 bool childHasID() { return SkToBool(fChildHasID); } |
| 24 virtual bool childrenNeedDisposing() const SK_OVERRIDE; | 24 bool childrenNeedDisposing() const SK_OVERRIDE; |
| 25 virtual void dirty() SK_OVERRIDE; | 25 void dirty() SK_OVERRIDE; |
| 26 virtual bool draw(SkAnimateMaker& ) SK_OVERRIDE; | 26 bool draw(SkAnimateMaker& ) SK_OVERRIDE; |
| 27 virtual SkDisplayable* getParent() const SK_OVERRIDE; | 27 SkDisplayable* getParent() const SK_OVERRIDE; |
| 28 #ifdef SK_DUMP_ENABLED | 28 #ifdef SK_DUMP_ENABLED |
| 29 virtual void dump(SkAnimateMaker* ) SK_OVERRIDE; | 29 void dump(SkAnimateMaker* ) SK_OVERRIDE; |
| 30 #endif | 30 #endif |
| 31 SkPath& getPath(); | 31 SkPath& getPath(); |
| 32 virtual bool getProperty(int index, SkScriptValue* value) const SK_OVERRIDE; | 32 bool getProperty(int index, SkScriptValue* value) const SK_OVERRIDE; |
| 33 virtual bool setProperty(int index, SkScriptValue& value) SK_OVERRIDE; | 33 bool setProperty(int index, SkScriptValue& value) SK_OVERRIDE; |
| 34 virtual void onEndElement(SkAnimateMaker& ) SK_OVERRIDE; | 34 void onEndElement(SkAnimateMaker& ) SK_OVERRIDE; |
| 35 virtual void setChildHasID() SK_OVERRIDE; | 35 void setChildHasID() SK_OVERRIDE; |
| 36 virtual bool setParent(SkDisplayable* parent) SK_OVERRIDE; | 36 bool setParent(SkDisplayable* parent) SK_OVERRIDE; |
| 37 virtual bool isPath() const SK_OVERRIDE { return true; } | 37 bool isPath() const SK_OVERRIDE { return true; } |
| 38 public: | 38 public: |
| 39 SkPath fPath; | 39 SkPath fPath; |
| 40 protected: | 40 protected: |
| 41 void parseSVG(); | 41 void parseSVG(); |
| 42 SkString d; | 42 SkString d; |
| 43 SkTDPathPartArray fParts; | 43 SkTDPathPartArray fParts; |
| 44 mutable SkScalar fLength; | 44 mutable SkScalar fLength; |
| 45 SkDisplayable* fParent; // SkPolyToPoly or SkFromPath, for instance | 45 SkDisplayable* fParent; // SkPolyToPoly or SkFromPath, for instance |
| 46 SkBool8 fChildHasID; | 46 SkBool8 fChildHasID; |
| 47 SkBool8 fDirty; | 47 SkBool8 fDirty; |
| 48 private: | 48 private: |
| 49 typedef SkBoundable INHERITED; | 49 typedef SkBoundable INHERITED; |
| 50 }; | 50 }; |
| 51 | 51 |
| 52 class SkPolyline : public SkDrawPath { | 52 class SkPolyline : public SkDrawPath { |
| 53 DECLARE_MEMBER_INFO(Polyline); | 53 DECLARE_MEMBER_INFO(Polyline); |
| 54 virtual bool addChild(SkAnimateMaker& , SkDisplayable*) SK_OVERRIDE; | 54 bool addChild(SkAnimateMaker& , SkDisplayable*) SK_OVERRIDE; |
| 55 virtual void onEndElement(SkAnimateMaker& ) SK_OVERRIDE; | 55 void onEndElement(SkAnimateMaker& ) SK_OVERRIDE; |
| 56 protected: | 56 protected: |
| 57 SkTDScalarArray points; | 57 SkTDScalarArray points; |
| 58 private: | 58 private: |
| 59 typedef SkDrawPath INHERITED; | 59 typedef SkDrawPath INHERITED; |
| 60 }; | 60 }; |
| 61 | 61 |
| 62 class SkPolygon : public SkPolyline { | 62 class SkPolygon : public SkPolyline { |
| 63 DECLARE_MEMBER_INFO(Polygon); | 63 DECLARE_MEMBER_INFO(Polygon); |
| 64 virtual void onEndElement(SkAnimateMaker& ) SK_OVERRIDE; | 64 void onEndElement(SkAnimateMaker& ) SK_OVERRIDE; |
| 65 private: | 65 private: |
| 66 typedef SkPolyline INHERITED; | 66 typedef SkPolyline INHERITED; |
| 67 }; | 67 }; |
| 68 | 68 |
| 69 #endif // SkDrawPath_DEFINED | 69 #endif // SkDrawPath_DEFINED |
| OLD | NEW |