OLD | NEW |
1 /* | 1 /* |
2 * Copyright (C) 2013 Google Inc. All rights reserved. | 2 * Copyright (C) 2013 Google Inc. All rights reserved. |
3 * | 3 * |
4 * Redistribution and use in source and binary forms, with or without | 4 * Redistribution and use in source and binary forms, with or without |
5 * modification, are permitted provided that the following conditions are | 5 * modification, are permitted provided that the following conditions are |
6 * met: | 6 * met: |
7 * | 7 * |
8 * * Redistributions of source code must retain the above copyright | 8 * * Redistributions of source code must retain the above copyright |
9 * notice, this list of conditions and the following disclaimer. | 9 * notice, this list of conditions and the following disclaimer. |
10 * * Redistributions in binary form must reproduce the above | 10 * * Redistributions in binary form must reproduce the above |
(...skipping 31 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
42 #include "wtf/RefCounted.h" | 42 #include "wtf/RefCounted.h" |
43 #include "wtf/text/WTFString.h" | 43 #include "wtf/text/WTFString.h" |
44 | 44 |
45 namespace blink { | 45 namespace blink { |
46 | 46 |
47 class CSSFontFace; | 47 class CSSFontFace; |
48 class CSSValueList; | 48 class CSSValueList; |
49 class Dictionary; | 49 class Dictionary; |
50 class Document; | 50 class Document; |
51 class ExceptionState; | 51 class ExceptionState; |
52 class FontFaceDescriptors; | |
53 class StylePropertySet; | 52 class StylePropertySet; |
54 class StyleRuleFontFace; | 53 class StyleRuleFontFace; |
55 | 54 |
56 class FontFace : public RefCountedWillBeGarbageCollectedFinalized<FontFace>, pub
lic ScriptWrappable { | 55 class FontFace : public RefCountedWillBeGarbageCollectedFinalized<FontFace>, pub
lic ScriptWrappable { |
57 DEFINE_WRAPPERTYPEINFO(); | 56 DEFINE_WRAPPERTYPEINFO(); |
58 public: | 57 public: |
59 enum LoadStatus { Unloaded, Loading, Loaded, Error }; | 58 enum LoadStatus { Unloaded, Loading, Loaded, Error }; |
60 | 59 |
61 static PassRefPtrWillBeRawPtr<FontFace> create(ExecutionContext*, const Atom
icString& family, PassRefPtr<ArrayBuffer> source, const FontFaceDescriptors*); | 60 static PassRefPtrWillBeRawPtr<FontFace> create(ExecutionContext*, const Atom
icString& family, PassRefPtr<ArrayBuffer> source, const Dictionary&); |
62 static PassRefPtrWillBeRawPtr<FontFace> create(ExecutionContext*, const Atom
icString& family, PassRefPtr<ArrayBufferView>, const FontFaceDescriptors*); | 61 static PassRefPtrWillBeRawPtr<FontFace> create(ExecutionContext*, const Atom
icString& family, PassRefPtr<ArrayBufferView>, const Dictionary&); |
63 static PassRefPtrWillBeRawPtr<FontFace> create(ExecutionContext*, const Atom
icString& family, const String& source, const FontFaceDescriptors*); | 62 static PassRefPtrWillBeRawPtr<FontFace> create(ExecutionContext*, const Atom
icString& family, const String& source, const Dictionary&); |
64 static PassRefPtrWillBeRawPtr<FontFace> create(Document*, const StyleRuleFon
tFace*); | 63 static PassRefPtrWillBeRawPtr<FontFace> create(Document*, const StyleRuleFon
tFace*); |
65 | 64 |
66 ~FontFace(); | 65 ~FontFace(); |
67 | 66 |
68 const AtomicString& family() const { return m_family; } | 67 const AtomicString& family() const { return m_family; } |
69 String style() const; | 68 String style() const; |
70 String weight() const; | 69 String weight() const; |
71 String stretch() const; | 70 String stretch() const; |
72 String unicodeRange() const; | 71 String unicodeRange() const; |
73 String variant() const; | 72 String variant() const; |
(...skipping 28 matching lines...) Expand all Loading... |
102 public: | 101 public: |
103 virtual ~LoadFontCallback() { } | 102 virtual ~LoadFontCallback() { } |
104 virtual void notifyLoaded(FontFace*) = 0; | 103 virtual void notifyLoaded(FontFace*) = 0; |
105 virtual void notifyError(FontFace*) = 0; | 104 virtual void notifyError(FontFace*) = 0; |
106 virtual void trace(Visitor*) { } | 105 virtual void trace(Visitor*) { } |
107 }; | 106 }; |
108 void loadWithCallback(PassRefPtrWillBeRawPtr<LoadFontCallback>, ExecutionCon
text*); | 107 void loadWithCallback(PassRefPtrWillBeRawPtr<LoadFontCallback>, ExecutionCon
text*); |
109 | 108 |
110 private: | 109 private: |
111 FontFace(); | 110 FontFace(); |
112 FontFace(ExecutionContext*, const AtomicString& family, const FontFaceDescri
ptors*); | 111 FontFace(ExecutionContext*, const AtomicString& family, const Dictionary& de
scriptors); |
113 | 112 |
114 void initCSSFontFace(Document*, PassRefPtrWillBeRawPtr<CSSValue> src); | 113 void initCSSFontFace(Document*, PassRefPtrWillBeRawPtr<CSSValue> src); |
115 void initCSSFontFace(const unsigned char* data, unsigned size); | 114 void initCSSFontFace(const unsigned char* data, unsigned size); |
116 void setPropertyFromString(const Document*, const String&, CSSPropertyID, Ex
ceptionState* = 0); | 115 void setPropertyFromString(const Document*, const String&, CSSPropertyID, Ex
ceptionState* = 0); |
117 bool setPropertyFromStyle(const StylePropertySet&, CSSPropertyID); | 116 bool setPropertyFromStyle(const StylePropertySet&, CSSPropertyID); |
118 bool setPropertyValue(PassRefPtrWillBeRawPtr<CSSValue>, CSSPropertyID); | 117 bool setPropertyValue(PassRefPtrWillBeRawPtr<CSSValue>, CSSPropertyID); |
119 bool setFamilyValue(CSSValueList*); | 118 bool setFamilyValue(CSSValueList*); |
120 void loadInternal(ExecutionContext*); | 119 void loadInternal(ExecutionContext*); |
121 ScriptPromise fontStatusPromise(ScriptState*); | 120 ScriptPromise fontStatusPromise(ScriptState*); |
122 | 121 |
(...skipping 13 matching lines...) Expand all Loading... |
136 PersistentWillBeMember<LoadedProperty> m_loadedProperty; | 135 PersistentWillBeMember<LoadedProperty> m_loadedProperty; |
137 OwnPtrWillBeMember<CSSFontFace> m_cssFontFace; | 136 OwnPtrWillBeMember<CSSFontFace> m_cssFontFace; |
138 WillBeHeapVector<RefPtrWillBeMember<LoadFontCallback> > m_callbacks; | 137 WillBeHeapVector<RefPtrWillBeMember<LoadFontCallback> > m_callbacks; |
139 }; | 138 }; |
140 | 139 |
141 typedef WillBeHeapVector<RefPtrWillBeMember<FontFace> > FontFaceArray; | 140 typedef WillBeHeapVector<RefPtrWillBeMember<FontFace> > FontFaceArray; |
142 | 141 |
143 } // namespace blink | 142 } // namespace blink |
144 | 143 |
145 #endif // FontFace_h | 144 #endif // FontFace_h |
OLD | NEW |