| OLD | NEW |
| 1 /* | 1 /* |
| 2 * Copyright (C) 2000 Lars Knoll (knoll@kde.org) | 2 * Copyright (C) 2000 Lars Knoll (knoll@kde.org) |
| 3 * (C) 2000 Antti Koivisto (koivisto@kde.org) | 3 * (C) 2000 Antti Koivisto (koivisto@kde.org) |
| 4 * (C) 2000 Dirk Mueller (mueller@kde.org) | 4 * (C) 2000 Dirk Mueller (mueller@kde.org) |
| 5 * Copyright (C) 2003, 2004, 2005, 2006, 2007, 2008 Apple Inc. All rights reserv
ed. | 5 * Copyright (C) 2003, 2004, 2005, 2006, 2007, 2008 Apple Inc. All rights reserv
ed. |
| 6 * Copyright (C) 2007 Nicholas Shanks <webkit@nickshanks.com> | 6 * Copyright (C) 2007 Nicholas Shanks <webkit@nickshanks.com> |
| 7 * | 7 * |
| 8 * This library is free software; you can redistribute it and/or | 8 * This library is free software; you can redistribute it and/or |
| 9 * modify it under the terms of the GNU Library General Public | 9 * modify it under the terms of the GNU Library General Public |
| 10 * License as published by the Free Software Foundation; either | 10 * License as published by the Free Software Foundation; either |
| (...skipping 37 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 48 class PLATFORM_EXPORT FontDescription { | 48 class PLATFORM_EXPORT FontDescription { |
| 49 public: | 49 public: |
| 50 enum GenericFamilyType { NoFamily, StandardFamily, SerifFamily, SansSerifFam
ily, | 50 enum GenericFamilyType { NoFamily, StandardFamily, SerifFamily, SansSerifFam
ily, |
| 51 MonospaceFamily, CursiveFamily, FantasyFamily, Pict
ographFamily }; | 51 MonospaceFamily, CursiveFamily, FantasyFamily, Pict
ographFamily }; |
| 52 | 52 |
| 53 enum Kerning { AutoKerning, NormalKerning, NoneKerning }; | 53 enum Kerning { AutoKerning, NormalKerning, NoneKerning }; |
| 54 | 54 |
| 55 enum LigaturesState { NormalLigaturesState, DisabledLigaturesState, EnabledL
igaturesState }; | 55 enum LigaturesState { NormalLigaturesState, DisabledLigaturesState, EnabledL
igaturesState }; |
| 56 | 56 |
| 57 FontDescription() | 57 FontDescription() |
| 58 : m_locale("en") | 58 : m_specifiedSize(0) |
| 59 , m_specifiedSize(0) | |
| 60 , m_computedSize(0) | 59 , m_computedSize(0) |
| 61 , m_letterSpacing(0) | 60 , m_letterSpacing(0) |
| 62 , m_wordSpacing(0) | 61 , m_wordSpacing(0) |
| 63 , m_orientation(Horizontal) | 62 , m_orientation(Horizontal) |
| 64 , m_nonCJKGlyphOrientation(NonCJKGlyphOrientationVerticalRight) | 63 , m_nonCJKGlyphOrientation(NonCJKGlyphOrientationVerticalRight) |
| 65 , m_widthVariant(RegularWidth) | 64 , m_widthVariant(RegularWidth) |
| 66 , m_style(FontStyleNormal) | 65 , m_style(FontStyleNormal) |
| 67 , m_variant(FontVariantNormal) | 66 , m_variant(FontVariantNormal) |
| 68 , m_isAbsoluteSize(false) | 67 , m_isAbsoluteSize(false) |
| 69 , m_weight(FontWeightNormal) | 68 , m_weight(FontWeightNormal) |
| (...skipping 84 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 154 Kerning kerning() const { return static_cast<Kerning>(m_kerning); } | 153 Kerning kerning() const { return static_cast<Kerning>(m_kerning); } |
| 155 VariantLigatures variantLigatures() const; | 154 VariantLigatures variantLigatures() const; |
| 156 LigaturesState commonLigaturesState() const { return static_cast<LigaturesSt
ate>(m_commonLigaturesState); } | 155 LigaturesState commonLigaturesState() const { return static_cast<LigaturesSt
ate>(m_commonLigaturesState); } |
| 157 LigaturesState discretionaryLigaturesState() const { return static_cast<Liga
turesState>(m_discretionaryLigaturesState); } | 156 LigaturesState discretionaryLigaturesState() const { return static_cast<Liga
turesState>(m_discretionaryLigaturesState); } |
| 158 LigaturesState historicalLigaturesState() const { return static_cast<Ligatur
esState>(m_historicalLigaturesState); } | 157 LigaturesState historicalLigaturesState() const { return static_cast<Ligatur
esState>(m_historicalLigaturesState); } |
| 159 LigaturesState contextualLigaturesState() const { return static_cast<Ligatur
esState>(m_contextualLigaturesState); } | 158 LigaturesState contextualLigaturesState() const { return static_cast<Ligatur
esState>(m_contextualLigaturesState); } |
| 160 unsigned keywordSize() const { return m_keywordSize; } | 159 unsigned keywordSize() const { return m_keywordSize; } |
| 161 FontSmoothingMode fontSmoothing() const { return static_cast<FontSmoothingMo
de>(m_fontSmoothing); } | 160 FontSmoothingMode fontSmoothing() const { return static_cast<FontSmoothingMo
de>(m_fontSmoothing); } |
| 162 TextRenderingMode textRendering() const { return static_cast<TextRenderingMo
de>(m_textRendering); } | 161 TextRenderingMode textRendering() const { return static_cast<TextRenderingMo
de>(m_textRendering); } |
| 163 UScriptCode script() const { return static_cast<UScriptCode>(m_script); } | 162 UScriptCode script() const { return static_cast<UScriptCode>(m_script); } |
| 164 const String& locale() const { return m_locale; } | 163 const AtomicString& locale() const; |
| 165 bool isSyntheticBold() const { return m_syntheticBold; } | 164 bool isSyntheticBold() const { return m_syntheticBold; } |
| 166 bool isSyntheticItalic() const { return m_syntheticItalic; } | 165 bool isSyntheticItalic() const { return m_syntheticItalic; } |
| 167 bool useSubpixelPositioning() const { return m_subpixelTextPosition; } | 166 bool useSubpixelPositioning() const { return m_subpixelTextPosition; } |
| 168 | 167 |
| 169 FontTraits traits() const; | 168 FontTraits traits() const; |
| 170 float wordSpacing() const { return m_wordSpacing; } | 169 float wordSpacing() const { return m_wordSpacing; } |
| 171 float letterSpacing() const { return m_letterSpacing; } | 170 float letterSpacing() const { return m_letterSpacing; } |
| 172 FontOrientation orientation() const { return static_cast<FontOrientation>(m_
orientation); } | 171 FontOrientation orientation() const { return static_cast<FontOrientation>(m_
orientation); } |
| 173 NonCJKGlyphOrientation nonCJKGlyphOrientation() const { return static_cast<N
onCJKGlyphOrientation>(m_nonCJKGlyphOrientation); } | 172 NonCJKGlyphOrientation nonCJKGlyphOrientation() const { return static_cast<N
onCJKGlyphOrientation>(m_nonCJKGlyphOrientation); } |
| 174 FontWidthVariant widthVariant() const { return static_cast<FontWidthVariant>
(m_widthVariant); } | 173 FontWidthVariant widthVariant() const { return static_cast<FontWidthVariant>
(m_widthVariant); } |
| (...skipping 13 matching lines...) Expand all Loading... |
| 188 void setStretch(FontStretch s) { m_stretch = s; } | 187 void setStretch(FontStretch s) { m_stretch = s; } |
| 189 void setGenericFamily(GenericFamilyType genericFamily) { m_genericFamily = g
enericFamily; } | 188 void setGenericFamily(GenericFamilyType genericFamily) { m_genericFamily = g
enericFamily; } |
| 190 void setKerning(Kerning kerning) { m_kerning = kerning; updateTypesettingFea
tures(); } | 189 void setKerning(Kerning kerning) { m_kerning = kerning; updateTypesettingFea
tures(); } |
| 191 void setKeywordSize(unsigned s) { m_keywordSize = s; } | 190 void setKeywordSize(unsigned s) { m_keywordSize = s; } |
| 192 void setFontSmoothing(FontSmoothingMode smoothing) { m_fontSmoothing = smoot
hing; } | 191 void setFontSmoothing(FontSmoothingMode smoothing) { m_fontSmoothing = smoot
hing; } |
| 193 void setTextRendering(TextRenderingMode rendering) { m_textRendering = rende
ring; updateTypesettingFeatures(); } | 192 void setTextRendering(TextRenderingMode rendering) { m_textRendering = rende
ring; updateTypesettingFeatures(); } |
| 194 void setOrientation(FontOrientation orientation) { m_orientation = orientati
on; } | 193 void setOrientation(FontOrientation orientation) { m_orientation = orientati
on; } |
| 195 void setNonCJKGlyphOrientation(NonCJKGlyphOrientation orientation) { m_nonCJ
KGlyphOrientation = orientation; } | 194 void setNonCJKGlyphOrientation(NonCJKGlyphOrientation orientation) { m_nonCJ
KGlyphOrientation = orientation; } |
| 196 void setWidthVariant(FontWidthVariant widthVariant) { m_widthVariant = width
Variant; } | 195 void setWidthVariant(FontWidthVariant widthVariant) { m_widthVariant = width
Variant; } |
| 197 void setScript(UScriptCode s) { m_script = s; } | 196 void setScript(UScriptCode s) { m_script = s; } |
| 198 void setLocale(const String& locale) { m_locale = locale; } | 197 void setLocale(const AtomicString& locale) { m_locale = locale; } |
| 199 void setSyntheticBold(bool syntheticBold) { m_syntheticBold = syntheticBold;
} | 198 void setSyntheticBold(bool syntheticBold) { m_syntheticBold = syntheticBold;
} |
| 200 void setSyntheticItalic(bool syntheticItalic) { m_syntheticItalic = syntheti
cItalic; } | 199 void setSyntheticItalic(bool syntheticItalic) { m_syntheticItalic = syntheti
cItalic; } |
| 201 void setFeatureSettings(PassRefPtr<FontFeatureSettings> settings) { m_featur
eSettings = settings; } | 200 void setFeatureSettings(PassRefPtr<FontFeatureSettings> settings) { m_featur
eSettings = settings; } |
| 202 void setTraits(FontTraits); | 201 void setTraits(FontTraits); |
| 203 void setWordSpacing(float s) { m_wordSpacing = s; } | 202 void setWordSpacing(float s) { m_wordSpacing = s; } |
| 204 void setLetterSpacing(float s) { m_letterSpacing = s; updateTypesettingFeatu
res(); } | 203 void setLetterSpacing(float s) { m_letterSpacing = s; updateTypesettingFeatu
res(); } |
| 205 | 204 |
| 206 TypesettingFeatures typesettingFeatures() const { return static_cast<Typeset
tingFeatures>(m_typesettingFeatures); } | 205 TypesettingFeatures typesettingFeatures() const { return static_cast<Typeset
tingFeatures>(m_typesettingFeatures); } |
| 207 | 206 |
| 208 static void setSubpixelPositioning(bool b) { s_useSubpixelTextPositioning =
b; } | 207 static void setSubpixelPositioning(bool b) { s_useSubpixelTextPositioning =
b; } |
| 209 static bool subpixelPositioning() { return s_useSubpixelTextPositioning; } | 208 static bool subpixelPositioning() { return s_useSubpixelTextPositioning; } |
| 210 | 209 |
| 211 static void setDefaultTypesettingFeatures(TypesettingFeatures); | 210 static void setDefaultTypesettingFeatures(TypesettingFeatures); |
| 212 static TypesettingFeatures defaultTypesettingFeatures(); | 211 static TypesettingFeatures defaultTypesettingFeatures(); |
| 213 | 212 |
| 214 private: | 213 private: |
| 215 FontFamily m_familyList; // The list of font families to be used. | 214 FontFamily m_familyList; // The list of font families to be used. |
| 216 RefPtr<FontFeatureSettings> m_featureSettings; | 215 RefPtr<FontFeatureSettings> m_featureSettings; |
| 217 String m_locale; | 216 AtomicString m_locale; |
| 218 | 217 |
| 219 void updateTypesettingFeatures() const; | 218 void updateTypesettingFeatures() const; |
| 220 | 219 |
| 221 float m_specifiedSize; // Specified CSS value. Independent of rendering is
sues such as integer | 220 float m_specifiedSize; // Specified CSS value. Independent of rendering is
sues such as integer |
| 222 // rounding, minimum font sizes, and zooming. | 221 // rounding, minimum font sizes, and zooming. |
| 223 float m_computedSize; // Computed size adjusted for the minimum font size
and the zoom factor. | 222 float m_computedSize; // Computed size adjusted for the minimum font size
and the zoom factor. |
| 224 | 223 |
| 225 float m_letterSpacing; | 224 float m_letterSpacing; |
| 226 float m_wordSpacing; | 225 float m_wordSpacing; |
| 227 | 226 |
| (...skipping 62 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 290 && m_script == other.m_script | 289 && m_script == other.m_script |
| 291 && m_syntheticBold == other.m_syntheticBold | 290 && m_syntheticBold == other.m_syntheticBold |
| 292 && m_syntheticItalic == other.m_syntheticItalic | 291 && m_syntheticItalic == other.m_syntheticItalic |
| 293 && m_featureSettings == other.m_featureSettings | 292 && m_featureSettings == other.m_featureSettings |
| 294 && m_subpixelTextPosition == other.m_subpixelTextPosition; | 293 && m_subpixelTextPosition == other.m_subpixelTextPosition; |
| 295 } | 294 } |
| 296 | 295 |
| 297 } // namespace blink | 296 } // namespace blink |
| 298 | 297 |
| 299 #endif | 298 #endif |
| OLD | NEW |