| OLD | NEW | 
|---|
| 1 /* | 1 /* | 
| 2  * Copyright (C) 2004, 2005, 2008 Nikolas Zimmermann <zimmermann@kde.org> | 2  * Copyright (C) 2004, 2005, 2008 Nikolas Zimmermann <zimmermann@kde.org> | 
| 3  * Copyright (C) 2004, 2005, 2006 Rob Buis <buis@kde.org> | 3  * Copyright (C) 2004, 2005, 2006 Rob Buis <buis@kde.org> | 
| 4  * | 4  * | 
| 5  * This library is free software; you can redistribute it and/or | 5  * This library is free software; you can redistribute it and/or | 
| 6  * modify it under the terms of the GNU Library General Public | 6  * modify it under the terms of the GNU Library General Public | 
| 7  * License as published by the Free Software Foundation; either | 7  * License as published by the Free Software Foundation; either | 
| 8  * version 2 of the License, or (at your option) any later version. | 8  * version 2 of the License, or (at your option) any later version. | 
| 9  * | 9  * | 
| 10  * This library is distributed in the hope that it will be useful, | 10  * This library is distributed in the hope that it will be useful, | 
| 11  * but WITHOUT ANY WARRANTY; without even the implied warranty of | 11  * but WITHOUT ANY WARRANTY; without even the implied warranty of | 
| 12  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU | 12  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU | 
| 13  * Library General Public License for more details. | 13  * Library General Public License for more details. | 
| 14  * | 14  * | 
| 15  * You should have received a copy of the GNU Library General Public License | 15  * You should have received a copy of the GNU Library General Public License | 
| 16  * along with this library; see the file COPYING.LIB.  If not, write to | 16  * along with this library; see the file COPYING.LIB.  If not, write to | 
| 17  * the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, | 17  * the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, | 
| 18  * Boston, MA 02110-1301, USA. | 18  * Boston, MA 02110-1301, USA. | 
| 19  */ | 19  */ | 
| 20 | 20 | 
| 21 #ifndef SVGNumberList_h | 21 #ifndef SVGNumberList_h | 
| 22 #define SVGNumberList_h | 22 #define SVGNumberList_h | 
| 23 | 23 | 
|  | 24 #include "core/svg/SVGNumber.h" | 
| 24 #include "core/svg/properties/SVGPropertyTraits.h" | 25 #include "core/svg/properties/SVGPropertyTraits.h" | 
| 25 #include <wtf/Vector.h> | 26 #include <wtf/Vector.h> | 
| 26 | 27 | 
| 27 namespace WebCore { | 28 namespace WebCore { | 
| 28 | 29 | 
| 29 class SVGNumberList : public Vector<float> { | 30 class SVGNumberList : public Vector<SVGNumber> { | 
| 30 public: | 31 public: | 
| 31     SVGNumberList() { } | 32     SVGNumberList() { } | 
| 32 | 33 | 
| 33     void parse(const String&); | 34     void parse(const String&); | 
| 34     String valueAsString() const; | 35     String valueAsString() const; | 
| 35 | 36 | 
|  | 37     Vector<float> toFloatVector() const | 
|  | 38     { | 
|  | 39         Vector<float> result; | 
|  | 40         result.reserveInitialCapacity(size()); | 
|  | 41         for (size_t i = 0; i < size(); ++i) | 
|  | 42             result.uncheckedAppend(at(i).value()); | 
|  | 43         return result; | 
|  | 44     } | 
|  | 45 | 
| 36 private: | 46 private: | 
| 37     template<typename CharType> | 47     template<typename CharType> | 
| 38     void parseInternal(const CharType*& ptr, const CharType* end); | 48     void parseInternal(const CharType*& ptr, const CharType* end); | 
| 39 }; | 49 }; | 
| 40 | 50 | 
| 41 template<> | 51 template<> | 
| 42 struct SVGPropertyTraits<SVGNumberList> { | 52 struct SVGPropertyTraits<SVGNumberList> { | 
| 43     typedef float ListItemType; | 53     typedef SVGNumber ListItemType; | 
| 44 | 54 | 
| 45     static SVGNumberList initialValue() { return SVGNumberList(); } | 55     static SVGNumberList initialValue() { return SVGNumberList(); } | 
| 46     static String toString(const SVGNumberList& type) { return type.valueAsStrin
    g(); } | 56     static String toString(const SVGNumberList& type) { return type.valueAsStrin
    g(); } | 
| 47 }; | 57 }; | 
| 48 | 58 | 
| 49 } // namespace WebCore | 59 } // namespace WebCore | 
| 50 | 60 | 
| 51 #endif | 61 #endif | 
| OLD | NEW | 
|---|