Index: Source/core/platform/graphics/WidthIterator.h |
diff --git a/Source/core/platform/graphics/WidthIterator.h b/Source/core/platform/graphics/WidthIterator.h |
deleted file mode 100644 |
index 9f4f28801c7166452615e1ee504db972e0af7af5..0000000000000000000000000000000000000000 |
--- a/Source/core/platform/graphics/WidthIterator.h |
+++ /dev/null |
@@ -1,103 +0,0 @@ |
-/* |
- * Copyright (C) 2003, 2006, 2008, 2011 Apple Inc. All rights reserved. |
- * Copyright (C) 2008 Holger Hans Peter Freyther |
- * |
- * This library is free software; you can redistribute it and/or |
- * modify it under the terms of the GNU Library General Public |
- * License as published by the Free Software Foundation; either |
- * version 2 of the License, or (at your option) any later version. |
- * |
- * This library is distributed in the hope that it will be useful, |
- * but WITHOUT ANY WARRANTY; without even the implied warranty of |
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU |
- * Library General Public License for more details. |
- * |
- * You should have received a copy of the GNU Library General Public License |
- * along with this library; see the file COPYING.LIB. If not, write to |
- * the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, |
- * Boston, MA 02110-1301, USA. |
- * |
- */ |
- |
-#ifndef WidthIterator_h |
-#define WidthIterator_h |
- |
-#include "core/platform/graphics/Font.h" |
-#include "core/platform/graphics/SVGGlyph.h" |
-#include "platform/graphics/TextRun.h" |
-#include "wtf/HashSet.h" |
-#include "wtf/unicode/Unicode.h" |
-#include "wtf/Vector.h" |
- |
-namespace WebCore { |
- |
-class Font; |
-class GlyphBuffer; |
-class SimpleFontData; |
-class TextRun; |
-struct GlyphData; |
- |
-struct WidthIterator { |
- WTF_MAKE_FAST_ALLOCATED; |
-public: |
- WidthIterator(const Font*, const TextRun&, HashSet<const SimpleFontData*>* fallbackFonts = 0, bool accountForGlyphBounds = false, bool forTextEmphasis = false); |
- |
- unsigned advance(int to, GlyphBuffer*); |
- bool advanceOneCharacter(float& width, GlyphBuffer&); |
- |
- float maxGlyphBoundingBoxY() const { ASSERT(m_accountForGlyphBounds); return m_maxGlyphBoundingBoxY; } |
- float minGlyphBoundingBoxY() const { ASSERT(m_accountForGlyphBounds); return m_minGlyphBoundingBoxY; } |
- float firstGlyphOverflow() const { ASSERT(m_accountForGlyphBounds); return m_firstGlyphOverflow; } |
- float lastGlyphOverflow() const { ASSERT(m_accountForGlyphBounds); return m_lastGlyphOverflow; } |
- |
- const TextRun& run() const { return m_run; } |
- float runWidthSoFar() const { return m_runWidthSoFar; } |
- |
-#if ENABLE(SVG_FONTS) |
- String lastGlyphName() const { return m_lastGlyphName; } |
- void setLastGlyphName(const String& name) { m_lastGlyphName = name; } |
- Vector<SVGGlyph::ArabicForm>& arabicForms() { return m_arabicForms; } |
-#endif |
- |
- static bool supportsTypesettingFeatures(const Font& font) |
- { |
- |
- return !font.typesettingFeatures(); |
- } |
- |
- const Font* m_font; |
- |
- const TextRun& m_run; |
- |
- unsigned m_currentCharacter; |
- float m_runWidthSoFar; |
- float m_expansion; |
- float m_expansionPerOpportunity; |
- bool m_isAfterExpansion; |
- float m_finalRoundingWidth; |
- |
-#if ENABLE(SVG_FONTS) |
- String m_lastGlyphName; |
- Vector<SVGGlyph::ArabicForm> m_arabicForms; |
-#endif |
- |
-private: |
- GlyphData glyphDataForCharacter(UChar32, bool mirror, int currentCharacter, unsigned& advanceLength); |
- template <typename TextIterator> |
- inline unsigned advanceInternal(TextIterator&, GlyphBuffer*); |
- |
- bool shouldApplyFontTransforms() const { return m_run.length() > 1 && (m_typesettingFeatures & (Kerning | Ligatures)); } |
- |
- TypesettingFeatures m_typesettingFeatures; |
- HashSet<const SimpleFontData*>* m_fallbackFonts; |
- bool m_accountForGlyphBounds; |
- float m_maxGlyphBoundingBoxY; |
- float m_minGlyphBoundingBoxY; |
- float m_firstGlyphOverflow; |
- float m_lastGlyphOverflow; |
- bool m_forTextEmphasis; |
-}; |
- |
-} |
- |
-#endif |