[PATCH 5/5] include: Complete IMimeAddressTable interface definition

Alistair Leslie-Hughes leslie_alistair at hotmail.com
Thu Jun 30 03:59:12 CDT 2016


Signed-off-by: Alistair Leslie-Hughes <leslie_alistair at hotmail.com>
---
 include/mimeole.idl | 94 ++++++++++++++++++++++++++++++++++++++++++++++++++++-
 1 file changed, 93 insertions(+), 1 deletion(-)

diff --git a/include/mimeole.idl b/include/mimeole.idl
index 437781d..29885ff 100644
--- a/include/mimeole.idl
+++ b/include/mimeole.idl
@@ -705,6 +705,22 @@ cpp_quote("#endif")
             AFT_RFC822_TRANSMIT,
         } ADDRESSFORMAT;
 
+        cpp_quote("#define IAT_UNKNOWN              0x00000000")
+        cpp_quote("#define IAT_FROM                 0x00000001")
+        cpp_quote("#define IAT_SENDER               0x00000002")
+        cpp_quote("#define IAT_TO                   0x00000004")
+        cpp_quote("#define IAT_CC                   0x00000008")
+        cpp_quote("#define IAT_BCC                  0x00000010")
+        cpp_quote("#define IAT_REPLYTO              0x00000020")
+        cpp_quote("#define IAT_RETURNPATH           0x00000040")
+        cpp_quote("#define IAT_RETRCPTTO            0x00000080")
+        cpp_quote("#define IAT_RR                   0x00000100")
+        cpp_quote("#define IAT_APPARTO              0x00000200")
+        cpp_quote("#define IAT_DISP_NOTIFICATION_TO 0x00000400")
+        cpp_quote("#define IAT_ALL                  0xFFFFFFFF")
+        cpp_quote("#define IAT_KNOWN                (IAT_FROM | IAT_TO | IAT_CC | IAT_BCC | IAT_REPLYTO | IAT_SENDER)")
+        cpp_quote("#define IAT_RECIPS               (IAT_TO | IAT_CC | IAT_BCC)")
+
         typedef struct tagADDRESSPROPS
         {
             DWORD           dwProps;
@@ -723,13 +739,89 @@ cpp_quote("#endif")
             DWORD           dwReserved2;
         } ADDRESSPROPS, *LPADDRESSPROPS;
 
+        cpp_quote("#define IAP_CHARSET              0x00000001")
+        cpp_quote("#define IAP_HANDLE               0x00000002")
+        cpp_quote("#define IAP_ADRTYPE              0x00000004")
+        cpp_quote("#define IAP_FRIENDLY             0x00000008")
+        cpp_quote("#define IAP_EMAIL                0x00000020")
+        cpp_quote("#define IAP_CERTSTATE            0x00000100")
+        cpp_quote("#define IAP_SIGNING_PRINT        0x00000200")
+        cpp_quote("#define IAP_ENCRYPTION_PRINT     0x00000400")
+        cpp_quote("#define IAP_ENCODING             0x00000800")
+        cpp_quote("#define IAP_COOKIE               0x00001000")
+        cpp_quote("#define IAP_FRIENDLYW            0x00002000")
+        cpp_quote("#define IAP_ALL                  0xffffffff")
+
         typedef struct tagADDRESSLIST
         {
             ULONG           cAdrs;
             LPADDRESSPROPS  prgAdr;
         } ADDRESSLIST, *LPADDRESSLIST;
 
-        /* FIXME: fill this in */
+        HRESULT Append(
+                [in]        DWORD                   addrtype,
+                [in]        ENCODINGTYPE            encoding,
+                [in]        const char              *friendly,
+                [in,unique] const char              *email,
+                [in,out,unique] HADDRESS            *address);
+
+        HRESULT Insert(
+                [in]        ADDRESSPROPS            *addressprop,
+                [in,out,unique] HADDRESS            *address);
+
+        HRESULT SetProps(
+                [in]        HADDRESS                address,
+                [in]        ADDRESSPROPS            *addressprop);
+
+        HRESULT GetProps(
+                [in]        HADDRESS                address,
+                [in]        ADDRESSPROPS            *addressprop);
+
+        HRESULT GetSender(
+                [in,out]    ADDRESSPROPS            *addressprop);
+
+        HRESULT CountTypes(
+                [in]        DWORD                   addrtype,
+                [out]       ULONG                   *count);
+
+        HRESULT GetTypes(
+                [in]        DWORD                   addrtype,
+                [in]        DWORD                   dwProps,
+                [in,out]    ADDRESSLIST             *list);
+
+        HRESULT EnumTypes(
+                [in]        DWORD                   addrtype,
+                [in]        DWORD                   props,
+                [out]       IMimeEnumAddressTypes   **types);
+
+        HRESULT Delete(
+                [in]        HADDRESS                hAddress);
+
+        HRESULT DeleteTypes(
+                [in]        DWORD                   addrtype);
+
+        HRESULT GetFormat(
+                [in]        DWORD                   addrtype,
+                [in]        ADDRESSFORMAT           addrformat,
+                [out]       char                    **format);
+
+        HRESULT AppendRfc822(
+                [in]        DWORD                   addrtype,
+                [in]        ENCODINGTYPE            encoding,
+                [in]        const char              *rfcaddr);
+
+        HRESULT ParseRfc822(
+                [in]        DWORD                   addrtype,
+                [in]        ENCODINGTYPE            encoding,
+                [in]        const char              *rfcaddr,
+                [in,out]    ADDRESSLIST             *list);
+
+        HRESULT Clone(
+                [out]       IMimeAddressTable       **table);
+
+        HRESULT BindToObject(
+                [in]        REFIID                  riid,
+                [out, iid_is(riid)] void            **obj);
     }
 
     [
-- 
1.9.1




More information about the wine-patches mailing list