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

Side by Side Diff: trunk/include/ports/SkFontConfigInterface.h

Issue 13297004: extend FontConfigInterface to start to match new fontmgr design (Closed) Base URL: http://skia.googlecode.com/svn/
Patch Set: Created 7 years, 8 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 | Annotate | Revision Log
« no previous file with comments | « no previous file | trunk/src/ports/SkFontConfigInterface_direct.cpp » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 /* 1 /*
2 * Copyright 2013 Google Inc. 2 * Copyright 2013 Google Inc.
3 * 3 *
4 * Use of this source code is governed by a BSD-style license that can be 4 * Use of this source code is governed by a BSD-style license that can be
5 * found in the LICENSE file. 5 * found in the LICENSE file.
6 */ 6 */
7 7
8 #ifndef SkFontConfigInterface_DEFINED 8 #ifndef SkFontConfigInterface_DEFINED
9 #define SkFontConfigInterface_DEFINED 9 #define SkFontConfigInterface_DEFINED
10 10
11 #include "SkFontStyle.h"
11 #include "SkRefCnt.h" 12 #include "SkRefCnt.h"
12 #include "SkTypeface.h" 13 #include "SkTypeface.h"
13 14
14 /** 15 /**
15 * \class SkFontConfigInterface 16 * \class SkFontConfigInterface
16 * 17 *
17 * Provides SkFontHost clients with access to fontconfig services. They will 18 * Provides SkFontHost clients with access to fontconfig services. They will
18 * access the global instance found in RefGlobal(). 19 * access the global instance found in RefGlobal().
19 */ 20 */
20 class SK_API SkFontConfigInterface : public SkRefCnt { 21 class SK_API SkFontConfigInterface : public SkRefCnt {
(...skipping 22 matching lines...) Expand all
43 44
44 bool operator==(const FontIdentity& other) const { 45 bool operator==(const FontIdentity& other) const {
45 return fID == other.fID && 46 return fID == other.fID &&
46 fTTCIndex == other.fTTCIndex && 47 fTTCIndex == other.fTTCIndex &&
47 fString == other.fString; 48 fString == other.fString;
48 } 49 }
49 50
50 uint32_t fID; 51 uint32_t fID;
51 int32_t fTTCIndex; 52 int32_t fTTCIndex;
52 SkString fString; 53 SkString fString;
54 SkFontStyle fStyle;
53 }; 55 };
54 56
55 /** 57 /**
56 * Given a familyName and style, find the best match. 58 * Given a familyName and style, find the best match.
57 * 59 *
58 * If a match is found, return true and set its outFontIdentifier. 60 * If a match is found, return true and set its outFontIdentifier.
59 * If outFamilyName is not null, assign the found familyName to it 61 * If outFamilyName is not null, assign the found familyName to it
60 * (which may differ from the requested familyName). 62 * (which may differ from the requested familyName).
61 * If outStyle is not null, assign the found style to it 63 * If outStyle is not null, assign the found style to it
62 * (which may differ from the requested style). 64 * (which may differ from the requested style).
(...skipping 11 matching lines...) Expand all
74 * if the FontRef's data is not available. The caller is responsible for 76 * if the FontRef's data is not available. The caller is responsible for
75 * calling stream->unref() when it is done accessing the data. 77 * calling stream->unref() when it is done accessing the data.
76 */ 78 */
77 virtual SkStream* openStream(const FontIdentity&) = 0; 79 virtual SkStream* openStream(const FontIdentity&) = 0;
78 80
79 /** 81 /**
80 * Return a singleton instance of a direct subclass that calls into 82 * Return a singleton instance of a direct subclass that calls into
81 * libfontconfig. This does not affect the refcnt of the returned instance. 83 * libfontconfig. This does not affect the refcnt of the returned instance.
82 */ 84 */
83 static SkFontConfigInterface* GetSingletonDirectInterface(); 85 static SkFontConfigInterface* GetSingletonDirectInterface();
86
87 // New APIS, which have default impls for now (which do nothing)
88
89 virtual int countFamilies();
90 virtual int getFamilySet(int index, SkString* outFamilyName,
91 FontIdentity outIdentities[], int maxCount);
92 virtual int matchFamilySet(const char familyName[], SkString* outFamilyName,
93 FontIdentity outIdentities[], int maxCount);
84 }; 94 };
85 95
86 #endif 96 #endif
OLDNEW
« no previous file with comments | « no previous file | trunk/src/ports/SkFontConfigInterface_direct.cpp » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698