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

Side by Side Diff: third_party/WebKit/Source/platform/fonts/GlyphPage.h

Issue 2386333002: reflow comments in platform/fonts (Closed)
Patch Set: comments Created 4 years, 2 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) 2006, 2007, 2008, 2013 Apple Inc. All rights reserved. 2 * Copyright (C) 2006, 2007, 2008, 2013 Apple Inc. All rights reserved.
3 * Copyright (C) Research In Motion Limited 2011. All rights reserved. 3 * Copyright (C) Research In Motion Limited 2011. All rights reserved.
4 * 4 *
5 * Redistribution and use in source and binary forms, with or without 5 * Redistribution and use in source and binary forms, with or without
6 * modification, are permitted provided that the following conditions 6 * modification, are permitted provided that the following conditions
7 * are met: 7 * are met:
8 * 8 *
9 * 1. Redistributions of source code must retain the above copyright 9 * 1. Redistributions of source code must retain the above copyright
10 * notice, this list of conditions and the following disclaimer. 10 * notice, this list of conditions and the following disclaimer.
(...skipping 28 matching lines...) Expand all
39 #include "wtf/RefPtr.h" 39 #include "wtf/RefPtr.h"
40 #include "wtf/allocator/Partitions.h" 40 #include "wtf/allocator/Partitions.h"
41 #include "wtf/text/Unicode.h" 41 #include "wtf/text/Unicode.h"
42 #include <string.h> 42 #include <string.h>
43 43
44 namespace blink { 44 namespace blink {
45 45
46 class SimpleFontData; 46 class SimpleFontData;
47 class GlyphPageTreeNodeBase; 47 class GlyphPageTreeNodeBase;
48 48
49 // Holds the glyph index and the corresponding SimpleFontData information for a given 49 // Holds the glyph index and the corresponding SimpleFontData information for a
50 // character. 50 // given character.
51 struct GlyphData { 51 struct GlyphData {
52 DISALLOW_NEW(); 52 DISALLOW_NEW();
53 GlyphData(Glyph g = 0, const SimpleFontData* f = 0) : glyph(g), fontData(f) {} 53 GlyphData(Glyph g = 0, const SimpleFontData* f = 0) : glyph(g), fontData(f) {}
54 Glyph glyph; 54 Glyph glyph;
55 const SimpleFontData* fontData; 55 const SimpleFontData* fontData;
56 }; 56 };
57 57
58 #if COMPILER(MSVC) 58 #if COMPILER(MSVC)
59 #pragma warning(push) 59 #pragma warning(push)
60 #pragma warning( \ 60 #pragma warning( \
(...skipping 79 matching lines...) Expand 10 before | Expand all | Expand 10 after
140 void setGlyphDataForIndex(unsigned index, 140 void setGlyphDataForIndex(unsigned index,
141 Glyph glyph, 141 Glyph glyph,
142 const SimpleFontData* fontData) { 142 const SimpleFontData* fontData) {
143 ASSERT_WITH_SECURITY_IMPLICATION(index < size); 143 ASSERT_WITH_SECURITY_IMPLICATION(index < size);
144 m_glyphs[index] = glyph; 144 m_glyphs[index] = glyph;
145 setCustomFontToLoad(index, 0); 145 setCustomFontToLoad(index, 0);
146 146
147 if (hasPerGlyphFontData()) { 147 if (hasPerGlyphFontData()) {
148 m_perGlyphFontData[index] = fontData; 148 m_perGlyphFontData[index] = fontData;
149 } else { 149 } else {
150 // A single-font GlyphPage already assigned m_fontDataForAllGlyphs in the constructor. 150 // A single-font GlyphPage already assigned m_fontDataForAllGlyphs in the
151 // constructor.
151 ASSERT(!glyph || fontData == m_fontDataForAllGlyphs); 152 ASSERT(!glyph || fontData == m_fontDataForAllGlyphs);
152 } 153 }
153 } 154 }
154 155
155 void setGlyphDataForIndex(unsigned index, const GlyphData& glyphData) { 156 void setGlyphDataForIndex(unsigned index, const GlyphData& glyphData) {
156 setGlyphDataForIndex(index, glyphData.glyph, glyphData.fontData); 157 setGlyphDataForIndex(index, glyphData.glyph, glyphData.fontData);
157 } 158 }
158 159
159 const CustomFontData* customFontToLoadAt(unsigned index) const { 160 const CustomFontData* customFontToLoadAt(unsigned index) const {
160 ASSERT_WITH_SECURITY_IMPLICATION(index < size); 161 ASSERT_WITH_SECURITY_IMPLICATION(index < size);
161 return m_customFontToLoad ? m_customFontToLoad->at(index) : 0; 162 return m_customFontToLoad ? m_customFontToLoad->at(index) : 0;
162 } 163 }
163 164
164 void setCustomFontToLoad(unsigned index, 165 void setCustomFontToLoad(unsigned index,
165 const CustomFontData* customFontToLoad) { 166 const CustomFontData* customFontToLoad) {
166 if (!m_customFontToLoad) { 167 if (!m_customFontToLoad) {
167 if (!customFontToLoad) 168 if (!customFontToLoad)
168 return; 169 return;
169 m_customFontToLoad = CustomDataPage::create(); 170 m_customFontToLoad = CustomDataPage::create();
170 } 171 }
171 ASSERT_WITH_SECURITY_IMPLICATION(index < size); 172 ASSERT_WITH_SECURITY_IMPLICATION(index < size);
172 m_customFontToLoad->set(index, customFontToLoad); 173 m_customFontToLoad->set(index, customFontToLoad);
173 } 174 }
174 175
175 void removePerGlyphFontData(const SimpleFontData* fontData) { 176 void removePerGlyphFontData(const SimpleFontData* fontData) {
176 // This method should only be called on the mixed page, which is never singl e-font. 177 // This method should only be called on the mixed page, which is never
178 // single-font.
177 ASSERT(hasPerGlyphFontData()); 179 ASSERT(hasPerGlyphFontData());
178 for (size_t i = 0; i < size; ++i) { 180 for (size_t i = 0; i < size; ++i) {
179 if (m_perGlyphFontData[i] == fontData) { 181 if (m_perGlyphFontData[i] == fontData) {
180 m_glyphs[i] = 0; 182 m_glyphs[i] = 0;
181 m_perGlyphFontData[i] = 0; 183 m_perGlyphFontData[i] = 0;
182 } 184 }
183 } 185 }
184 } 186 }
185 187
186 GlyphPageTreeNodeBase* owner() const { return m_owner; } 188 GlyphPageTreeNodeBase* owner() const { return m_owner; }
(...skipping 22 matching lines...) Expand all
209 private: 211 private:
210 CustomDataPage() { memset(m_customData, 0, sizeof(m_customData)); } 212 CustomDataPage() { memset(m_customData, 0, sizeof(m_customData)); }
211 const CustomFontData* m_customData[size]; 213 const CustomFontData* m_customData[size];
212 }; 214 };
213 215
214 const SimpleFontData* m_fontDataForAllGlyphs; 216 const SimpleFontData* m_fontDataForAllGlyphs;
215 GlyphPageTreeNodeBase* m_owner; 217 GlyphPageTreeNodeBase* m_owner;
216 RefPtr<CustomDataPage> m_customFontToLoad; 218 RefPtr<CustomDataPage> m_customFontToLoad;
217 Glyph m_glyphs[size]; 219 Glyph m_glyphs[size];
218 220
219 // NOTE: This array has (GlyphPage::size) elements if m_fontDataForAllGlyphs i s null. 221 // NOTE: This array has (GlyphPage::size) elements if m_fontDataForAllGlyphs
222 // is null.
220 const SimpleFontData* m_perGlyphFontData[0]; 223 const SimpleFontData* m_perGlyphFontData[0];
221 }; 224 };
222 225
223 #if COMPILER(MSVC) 226 #if COMPILER(MSVC)
224 #pragma warning(pop) 227 #pragma warning(pop)
225 #endif 228 #endif
226 229
227 } // namespace blink 230 } // namespace blink
228 231
229 #endif // GlyphPage_h 232 #endif // GlyphPage_h
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698