Leaked source code of windows server 2003
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

126 lines
4.2 KiB

  1. /*++
  2. Copyright (c) 2000 Microsoft Corporation
  3. Module Name:
  4. FaxPersonalProfile.h
  5. Abstract:
  6. Definition of Personal Profile Class
  7. Author:
  8. Iv Garber (IvG) May, 2000
  9. Revision History:
  10. --*/
  11. #ifndef __FAXPERSONALPROFILE_H_
  12. #define __FAXPERSONALPROFILE_H_
  13. #include "resource.h"
  14. #include "FaxCommon.h"
  15. //
  16. //================ HIDDEN INTERFACE OF PERSONAL PROFILE ===========================
  17. //
  18. MIDL_INTERFACE("41E2D834-3F09-4860-A426-1698E9ECDC72")
  19. IFaxPersonalProfileInner : public IUnknown
  20. {
  21. STDMETHOD(GetProfileData)(/*[out, retval]*/ FAX_PERSONAL_PROFILE *pProfileData) = 0;
  22. STDMETHOD(PutProfileData)(/*[in]*/ FAX_PERSONAL_PROFILE *pProfileData) = 0;
  23. };
  24. /////////////////////////////////////////////////////////////////////////////
  25. // CFaxPersonalProfile
  26. class ATL_NO_VTABLE CFaxPersonalProfile :
  27. public CComObjectRootEx<CComSingleThreadModel>,
  28. public ISupportErrorInfo,
  29. public IDispatchImpl<IFaxPersonalProfile, &IID_IFaxPersonalProfile, &LIBID_FAXCOMEXLib>,
  30. public IFaxPersonalProfileInner
  31. {
  32. public:
  33. CFaxPersonalProfile()
  34. {
  35. }
  36. DECLARE_REGISTRY_RESOURCEID(IDR_FAXPERSONALPROFILE)
  37. DECLARE_NOT_AGGREGATABLE(CFaxPersonalProfile)
  38. DECLARE_PROTECT_FINAL_CONSTRUCT()
  39. BEGIN_COM_MAP(CFaxPersonalProfile)
  40. COM_INTERFACE_ENTRY(IFaxPersonalProfile)
  41. COM_INTERFACE_ENTRY(IDispatch)
  42. COM_INTERFACE_ENTRY(ISupportErrorInfo)
  43. COM_INTERFACE_ENTRY(IFaxPersonalProfileInner)
  44. END_COM_MAP()
  45. // ISupportsErrorInfo
  46. STDMETHOD(InterfaceSupportsErrorInfo)(REFIID riid);
  47. // IFaxPersonalProfile
  48. public:
  49. static HRESULT Create(IFaxPersonalProfile **ppFaxPersonalProfile);
  50. STDMETHOD(GetProfileData)(/*[out, retval]*/ FAX_PERSONAL_PROFILE *pProfileData);
  51. STDMETHOD(PutProfileData)(/*[in]*/ FAX_PERSONAL_PROFILE *pProfileData);
  52. STDMETHOD(SaveDefaultSender)();
  53. STDMETHOD(LoadDefaultSender)();
  54. STDMETHOD(get_BillingCode)(/*[out, retval]*/ BSTR *pbstrBillingCode);
  55. STDMETHOD(put_BillingCode)(/*[in]*/ BSTR bstrBillingCode);
  56. STDMETHOD(get_City)(/*[out, retval]*/ BSTR *pbstrCity);
  57. STDMETHOD(put_City)(/*[in]*/ BSTR bstrCity);
  58. STDMETHOD(get_Company)(/*[out, retval]*/ BSTR *pbstrCompany);
  59. STDMETHOD(put_Company)(/*[in]*/ BSTR bstrCompany);
  60. STDMETHOD(get_Country)(/*[out, retval]*/ BSTR *pbstrCountry);
  61. STDMETHOD(put_Country)(/*[in]*/ BSTR bstrCountry);
  62. STDMETHOD(get_Department)(/*[out, retval]*/ BSTR *pbstrDepartment);
  63. STDMETHOD(put_Department)(/*[in]*/ BSTR bstrDepartment);
  64. STDMETHOD(get_Email)(/*[out, retval]*/ BSTR *pbstrEmail);
  65. STDMETHOD(put_Email)(/*[in]*/ BSTR bstrEmail);
  66. STDMETHOD(get_FaxNumber)(/*[out, retval]*/ BSTR *pbstrFaxNumber);
  67. STDMETHOD(put_FaxNumber)(/*[in]*/ BSTR bstrFaxNumber);
  68. STDMETHOD(get_HomePhone)(/*[out, retval]*/ BSTR *pbstrHomePhone);
  69. STDMETHOD(put_HomePhone)(/*[in]*/ BSTR bstrHomePhone);
  70. STDMETHOD(get_Name)(/*[out, retval]*/ BSTR *pbstrName);
  71. STDMETHOD(put_Name)(/*[in]*/ BSTR bstrName);
  72. STDMETHOD(get_TSID)(/*[out, retval]*/ BSTR *pbstrTSID);
  73. STDMETHOD(put_TSID)(/*[in]*/ BSTR bstrTSID);
  74. STDMETHOD(get_OfficePhone)(/*[out, retval]*/ BSTR *pbstrOfficePhone);
  75. STDMETHOD(put_OfficePhone)(/*[in]*/ BSTR bstrOfficePhone);
  76. STDMETHOD(get_OfficeLocation)(/*[out, retval]*/ BSTR *pbstrOfficeLocation);
  77. STDMETHOD(put_OfficeLocation)(/*[in]*/ BSTR bstrOfficeLocation);
  78. STDMETHOD(get_State)(/*[out, retval]*/ BSTR *pbstrState);
  79. STDMETHOD(put_State)(/*[in]*/ BSTR bstrState);
  80. STDMETHOD(get_StreetAddress)(/*[out, retval]*/ BSTR *pbstrStreetAddress);
  81. STDMETHOD(put_StreetAddress)(/*[in]*/ BSTR bstrStreetAddress);
  82. STDMETHOD(get_Title)(/*[out, retval]*/ BSTR *pbstrTitle);
  83. STDMETHOD(put_Title)(/*[in]*/ BSTR bstrTitle);
  84. STDMETHOD(get_ZipCode)(/*[out, retval]*/ BSTR *pbstrZipCode);
  85. STDMETHOD(put_ZipCode)(/*[in]*/ BSTR bstrZipCode);
  86. private:
  87. CComBSTR m_bstrOfficeLocation;
  88. CComBSTR m_bstrStreetAddress;
  89. CComBSTR m_bstrOfficePhone;
  90. CComBSTR m_bstrBillingCode;
  91. CComBSTR m_bstrDepartment;
  92. CComBSTR m_bstrFaxNumber;
  93. CComBSTR m_bstrHomePhone;
  94. CComBSTR m_bstrCompany;
  95. CComBSTR m_bstrCountry;
  96. CComBSTR m_bstrZipCode;
  97. CComBSTR m_bstrEmail;
  98. CComBSTR m_bstrState;
  99. CComBSTR m_bstrTitle;
  100. CComBSTR m_bstrCity;
  101. CComBSTR m_bstrName;
  102. CComBSTR m_bstrTSID;
  103. };
  104. #endif //__FAXPERSONALPROFILE_H_