Nikolay Sivov : include: Added IDWriteFontSet definition.

Alexandre Julliard julliard at wine.codeweavers.com
Fri May 6 11:08:16 CDT 2016


Module: wine
Branch: master
Commit: 9fc89163d8c9d227277b57dd5078c948e8281d1c
URL:    http://source.winehq.org/git/wine.git/?a=commit;h=9fc89163d8c9d227277b57dd5078c948e8281d1c

Author: Nikolay Sivov <nsivov at codeweavers.com>
Date:   Fri May  6 00:34:04 2016 +0300

include: Added IDWriteFontSet definition.

Signed-off-by: Nikolay Sivov <nsivov at codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard at winehq.org>

---

 include/dwrite_3.idl | 74 +++++++++++++++++++++++++++++++++++++++++++---------
 1 file changed, 61 insertions(+), 13 deletions(-)

diff --git a/include/dwrite_3.idl b/include/dwrite_3.idl
index 85c20fe..0d1dc40 100644
--- a/include/dwrite_3.idl
+++ b/include/dwrite_3.idl
@@ -48,6 +48,30 @@ typedef enum DWRITE_RENDERING_MODE1
     DWRITE_RENDERING_MODE1_NATURAL_SYMMETRIC_DOWNSAMPLED
 } DWRITE_RENDERING_MODE1;
 
+typedef enum DWRITE_FONT_PROPERTY_ID
+{
+    DWRITE_FONT_PROPERTY_ID_NONE,
+    DWRITE_FONT_PROPERTY_ID_FAMILY_NAME,
+    DWRITE_FONT_PROPERTY_ID_PREFERRED_FAMILY_NAME,
+    DWRITE_FONT_PROPERTY_ID_FACE_NAME,
+    DWRITE_FONT_PROPERTY_ID_FULL_NAME,
+    DWRITE_FONT_PROPERTY_ID_WIN32_FAMILY_NAME,
+    DWRITE_FONT_PROPERTY_ID_POSTSCRIPT_NAME,
+    DWRITE_FONT_PROPERTY_ID_DESIGN_SCRIPT_LANGUAGE_TAG,
+    DWRITE_FONT_PROPERTY_ID_SEMANTIC_TAG,
+    DWRITE_FONT_PROPERTY_ID_WEIGHT,
+    DWRITE_FONT_PROPERTY_ID_STRETCH,
+    DWRITE_FONT_PROPERTY_ID_STYLE,
+    DWRITE_FONT_PROPERTY_ID_TOTAL
+} DWRITE_FONT_PROPERTY_ID;
+
+typedef struct DWRITE_FONT_PROPERTY
+{
+    DWRITE_FONT_PROPERTY_ID propertyId;
+    WCHAR const *propertyValue;
+    WCHAR const *localeName;
+} DWRITE_FONT_PROPERTY;
+
 [
     local,
     object,
@@ -86,6 +110,43 @@ interface IDWriteRenderingParams3 : IDWriteRenderingParams2
 [
     local,
     object,
+    uuid(cfee3140-1257-47ca-8b85-31bfcf3f2d0e)
+]
+interface IDWriteStringList : IUnknown
+{
+    UINT32 GetCount();
+    HRESULT GetLocaleNameLength(UINT32 index, UINT32 *length);
+    HRESULT GetLocaleName(UINT32 index, WCHAR *name, UINT32 size);
+    HRESULT GetStringLength(UINT32 index, UINT32 *length);
+    HRESULT GetString(UINT32 index, WCHAR *string, UINT32 size);
+}
+
+[
+    local,
+    object,
+    uuid(53585141-d9f8-4095-8321-d73cf6bd116b)
+]
+interface IDWriteFontSet : IUnknown
+{
+    UINT32 GetFontCount();
+    HRESULT GetFontFaceReference(UINT32 index, IDWriteFontFaceReference **reference);
+    HRESULT FindFontFaceReference(IDWriteFontFaceReference *reference,
+        UINT32 *index, BOOL *exists);
+    HRESULT FindFontFace(IDWriteFontFace *fontface, UINT32 *index, BOOL *exists);
+    HRESULT GetPropertyValues__(DWRITE_FONT_PROPERTY_ID id, IDWriteStringList **values);
+    HRESULT GetPropertyValues_(DWRITE_FONT_PROPERTY_ID id,
+        WCHAR const *preferred_locales, IDWriteStringList **values);
+    HRESULT GetPropertyValues(UINT32 index, DWRITE_FONT_PROPERTY_ID id, BOOL *exists,
+        IDWriteLocalizedStrings **values);
+    HRESULT GetPropertyOccurenceCount(DWRITE_FONT_PROPERTY const *property, UINT32 *count);
+    HRESULT GetMatchingFonts_(WCHAR const *family, DWRITE_FONT_WEIGHT weight, DWRITE_FONT_STRETCH stretch,
+        DWRITE_FONT_STYLE style, IDWriteFontSet **fontset);
+    HRESULT GetMatchingFonts(DWRITE_FONT_PROPERTY const *props, UINT32 count, IDWriteFontSet **fontset);
+}
+
+[
+    local,
+    object,
     uuid(29748ed6-8c9c-4a6a-be0b-d912e8538944)
 ]
 interface IDWriteFont3 : IDWriteFont2
@@ -193,19 +254,6 @@ interface IDWriteFontFace3 : IDWriteFontFace2
         BOOL enqueue_if_not, BOOL *are_local);
 }
 
-[
-    local,
-    object,
-    uuid(cfee3140-1257-47ca-8b85-31bfcf3f2d0e)
-]
-interface IDWriteStringList : IUnknown
-{
-    UINT32 GetCount();
-    HRESULT GetLocaleNameLength(UINT32 index, UINT32 *length);
-    HRESULT GetLocaleName(UINT32 index, WCHAR *name, UINT32 size);
-    HRESULT GetStringLength(UINT32 index, UINT32 *length);
-    HRESULT GetString(UINT32 index, WCHAR *string, UINT32 size);
-}
 
 typedef struct DWRITE_LINE_METRICS1
 {




More information about the wine-cvs mailing list