[Wine-patches] [eter-2.1 1/3] include: Add COM interface definitions needed for PrintDlgEx implementation. (eterbug #9191)

Dmitry Timoshkov dtimoshkov на etersoft.ru
Ср Апр 10 07:31:29 MSK 2013


(cherry picked from commit 04d3f6c1f5c0942b20217fb6b9f85886e7c09d8f)
---
 dlls/uuid/uuid.c           |  1 +
 include/commdlg.h          | 34 ++++++++++++++++++++++++++++++++++
 programs/oleview/main.h    |  1 +
 programs/oleview/typelib.c |  1 -
 4 files changed, 36 insertions(+), 1 deletion(-)

diff --git a/dlls/uuid/uuid.c b/dlls/uuid/uuid.c
index fd96fe3..fb06f2d 100644
--- a/dlls/uuid/uuid.c
+++ b/dlls/uuid/uuid.c
@@ -83,6 +83,7 @@ DEFINE_GUID(GUID_NULL,0,0,0,0,0,0,0,0,0,0,0);
 #include "sensevts.h"
 #include "ocmm.h"
 #include "commoncontrols.h"
+#include "commdlg.h"
 #include "tlogstg.h"
 #include "msdasc.h"
 
diff --git a/include/commdlg.h b/include/commdlg.h
index 1a6e1d9..db5aaaa 100644
--- a/include/commdlg.h
+++ b/include/commdlg.h
@@ -762,6 +762,40 @@ typedef struct tagPDEXW
 DECL_WINELIB_TYPE_AW(PRINTDLGEX)
 DECL_WINELIB_TYPE_AW(LPPRINTDLGEX)
 
+#ifdef STDMETHOD
+
+DEFINE_GUID(IID_IPrintDialogCallback, 0x5852a2c3,0x6530,0x11d1,0xb6,0xa3,0x00,0x00,0xf8,0x75,0x7b,0xf9);
+#define INTERFACE IPrintDialogCallback
+DECLARE_INTERFACE_(IPrintDialogCallback,IUnknown)
+{
+    /*** IUnknown methods ***/
+    STDMETHOD_(HRESULT,QueryInterface)(THIS_ REFIID,void **) PURE;
+    STDMETHOD_(ULONG,AddRef)(THIS) PURE;
+    STDMETHOD_(ULONG,Release)(THIS) PURE;
+    /*** IPrintDialogCallback methods ***/
+    STDMETHOD(InitDone)(THIS) PURE;
+    STDMETHOD(SelectionChange)(THIS) PURE;
+    STDMETHOD(HandleMessage)(THIS_ HWND,UINT,WPARAM,LPARAM,LRESULT *) PURE;
+};
+#undef INTERFACE
+
+DEFINE_GUID(IID_IPrintDialogServices, 0x509aaeda,0x5639,0x11d1,0xb6,0xa1,0x00,0x00,0xf8,0x75,0x7b,0xf9);
+#define INTERFACE IPrintDialogServices
+DECLARE_INTERFACE_(IPrintDialogServices,IUnknown)
+{
+    /*** IUnknown methods ***/
+    STDMETHOD_(HRESULT,QueryInterface)(THIS_ REFIID,void **) PURE;
+    STDMETHOD_(ULONG,AddRef)(THIS) PURE;
+    STDMETHOD_(ULONG,Release)(THIS) PURE;
+    /*** IPrintDialogServices methods ***/
+    STDMETHOD(GetCurrentDevMode)(THIS_ LPDEVMODEW,UINT *) PURE;
+    STDMETHOD(GetCurrentPrinterName)(THIS_ LPWSTR,UINT *) PURE;
+    STDMETHOD(GetCurrentPortName)(THIS_ LPWSTR,UINT *) PURE;
+};
+#undef INTERFACE
+
+#endif /* STDMETHOD */
+
 BOOL  WINAPI ChooseColorA(LPCHOOSECOLORA lpChCol);
 BOOL  WINAPI ChooseColorW(LPCHOOSECOLORW lpChCol);
 #define ChooseColor WINELIB_NAME_AW(ChooseColor)
diff --git a/programs/oleview/main.h b/programs/oleview/main.h
index c3c358d..66bf70e 100644
--- a/programs/oleview/main.h
+++ b/programs/oleview/main.h
@@ -23,6 +23,7 @@
 #include <windows.h>
 #include <winreg.h>
 #include <commctrl.h>
+#include <commdlg.h>
 #include <unknwn.h>
 
 #ifdef NONAMELESSUNION
diff --git a/programs/oleview/typelib.c b/programs/oleview/typelib.c
index c6aec5f..21e9d96 100644
--- a/programs/oleview/typelib.c
+++ b/programs/oleview/typelib.c
@@ -19,7 +19,6 @@
  */
 
 #include "main.h"
-#include "commdlg.h"
 
 #include "wine/debug.h"
 #include "wine/unicode.h"
-- 
1.8.2.1



Подробная информация о списке рассылки Wine-patches