I don't see a reason in keeping this compatibility code, It already won't
work for C because of IDWriteFactory2 overloaded methods. Another reason
is DWRITE_FONT_METRICS1 definition from dwrite_1.h, included from
dwrite_2.h, which is also incompatible.
P.S. what's a deal with WINBOOL, should it be used everywhere? I see it's
used inconsistently, at least in dwrite*.h headers.
From 970a4adc69390af731fab200ee8f751c5d95ef58 Mon Sep 17 00:00:00 2001
From: Nikolay Sivov
Date: Mon, 14 Jan 2019 23:40:05 +0300
Subject: [PATCH 1/2] headers: Remove C-compatibility parts from dwrite_2.h.
Signed-off-by: Nikolay Sivov
---
mingw-w64-headers/include/dwrite_2.h | 276 +--
1 file changed, 2 insertions(+), 274 deletions(-)
diff --git a/mingw-w64-headers/include/dwrite_2.h
b/mingw-w64-headers/include/dwrite_2.h
index c939297b..64828bcf 100644
--- a/mingw-w64-headers/include/dwrite_2.h
+++ b/mingw-w64-headers/include/dwrite_2.h
@@ -56,13 +56,6 @@ DECLARE_INTERFACE_(IDWriteFontFallback,IUnknown)
{
BEGIN_INTERFACE
-#ifndef __cplusplus
-/* IUnknown methods */
-STDMETHOD(QueryInterface)(THIS_ REFIID riid, void **ppvObject) PURE;
-STDMETHOD_(ULONG, AddRef)(THIS) PURE;
-STDMETHOD_(ULONG, Release)(THIS) PURE;
-#endif
-
STDMETHOD(MapCharacters)(THIS_
IDWriteTextAnalysisSource *analysisSource,
UINT32 textPosition,
@@ -87,13 +80,6 @@ DECLARE_INTERFACE_(IDWriteFontFallbackBuilder,IUnknown)
{
BEGIN_INTERFACE
-#ifndef __cplusplus
-/* IUnknown methods */
-STDMETHOD(QueryInterface)(THIS_ REFIID riid, void **ppvObject) PURE;
-STDMETHOD_(ULONG, AddRef)(THIS) PURE;
-STDMETHOD_(ULONG, Release)(THIS) PURE;
-#endif
-
STDMETHOD(AddMapping)(THIS_
DWRITE_UNICODE_RANGE const *ranges,
UINT32 rangesCount,
@@ -121,13 +107,6 @@ DECLARE_INTERFACE_(IDWriteColorGlyphRunEnumerator,IUnknown)
{
BEGIN_INTERFACE
-#ifndef __cplusplus
-/* IUnknown methods */
-STDMETHOD(QueryInterface)(THIS_ REFIID riid, void **ppvObject) PURE;
-STDMETHOD_(ULONG, AddRef)(THIS) PURE;
-STDMETHOD_(ULONG, Release)(THIS) PURE;
-#endif
-
STDMETHOD(MoveNext)(THIS_
BOOL *hasRun) PURE;
@@ -145,24 +124,6 @@
DECLARE_INTERFACE_(IDWriteRenderingParams2,IDWriteRenderingParams1)
{
BEGIN_INTERFACE
-#ifndef __cplusplus
-/* IUnknown methods */
-STDMETHOD(QueryInterface)(THIS_ REFIID riid, void **ppvObject) PURE;
-STDMETHOD_(ULONG, AddRef)(THIS) PURE;
-STDMETHOD_(ULONG, Release)(THIS) PURE;
-
-/* IDWriteRenderingParams methods */
-STDMETHOD_(FLOAT, GetGamma)(THIS) PURE;
-STDMETHOD_(FLOAT, GetEnhancedContrast)(THIS) PURE;
-STDMETHOD_(FLOAT, GetClearTypeLevel)(THIS) PURE;
-STDMETHOD_(DWRITE_PIXEL_GEOMETRY, GetPixelGeometry)(THIS) PURE;
-STDMETHOD_(DWRITE_RENDERING_MODE, GetRenderingMode)(THIS) PURE;
-
-/* IDWriteRenderingParams1 methods */
-STDMETHOD_(FLOAT, GetGrayscaleEnhancedContrast)(THIS) PURE;
-#endif
-
-/* IDWriteRenderingParams2 methods */
STDMETHOD_(DWRITE_GRID_FIT_MODE, GetGridFitMode)(THIS) PURE;
END_INTERFACE
@@ -176,143 +137,6 @@ DECLARE_INTERFACE_(IDWriteFactory2,IDWriteFactory1)
{
BEGIN_INTERFACE
-#ifndef __cplusplus
-/* IUnknown methods */
-STDMETHOD(QueryInterface)(THIS_ REFIID riid, void **ppvObject) PURE;
-STDMETHOD_(ULONG, AddRef)(THIS) PURE;
-STDMETHOD_(ULONG, Release)(THIS) PURE;
-
-/* IDWriteFactory methods */
-STDMETHOD(GetSystemFontCollection)(THIS_
-IDWriteFontCollection **fontCollection,
-WINBOOL checkForUpdates __MINGW_DEF_ARG_VAL(FALSE)) PURE;
-
-STDMETHOD(CreateCustomFontCollection)(THIS_
-IDWriteFontCollectionLoader *collectionLoader,
-void const *collectionKey,
-UINT32 collectionKeySize,
-IDWriteFontCollection **fontCollection) PURE;
-
-STDMETHOD(RegisterFontCollectionLoader)(THIS_
-IDWriteFontCollectionLoader *fontCollectionLoader) PURE;
-
-STDMETHOD(UnregisterFontCollectionLoader)(THIS_
-IDWriteFontCollectionLoader *fontCollectionLoader) PURE;
-
-STDMETHOD(CreateFontFileReference)(THIS_
-WCHAR const *filePath,
-FILETIME const *lastWriteTime,
-IDWriteFontFile **fontFile) PURE;
-
-STDMETHOD(CreateCustomFontFileReference)(THIS_
-void const *fontFileReferenceKey,
-UINT32 fontFileReferenceKeySize,
-IDWriteFontFileLoader *fontFileLoader,
-IDWriteFontFile **fontFile) PURE;
-
-STDMETHOD(CreateFontFace)(THIS_
-DWRITE_FONT_FACE_TYPE fontFaceType,
-UINT32 numberOfFiles,
-IDWriteFontFile *const *fontFiles,
-UINT32 faceIndex,
-DWRITE_FONT_SIMULATIONS fontFaceSimulationFlags,
-IDWriteFontFace **fontFace) PURE;
-
-STDMETHOD(CreateRenderingParams)(THIS_
-IDWriteRenderingParams **renderingParams) PURE;
-
-STDMETHOD(CreateMonitorRenderingParams)(THIS_
-HMONITOR monitor,
-IDWriteRenderingParams