1
0

loginData.h 1.1 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950
  1. #ifndef NULLSOFT_AUTH_LOGINDATA_HEADER
  2. #define NULLSOFT_AUTH_LOGINDATA_HEADER
  3. #if defined(_MSC_VER) && (_MSC_VER >= 1020)
  4. #pragma once
  5. #endif
  6. #include <wtypes.h>
  7. // {69346B92-168E-452e-AA88-986AB3883920}
  8. static const GUID IID_LoginData =
  9. { 0x69346b92, 0x168e, 0x452e, { 0xaa, 0x88, 0x98, 0x6a, 0xb3, 0x88, 0x39, 0x20 } };
  10. class LoginProvider;
  11. class LoginStatus;
  12. class LoginData
  13. {
  14. protected:
  15. LoginData(const GUID *pRealm, HWND hPage, HWND hLoginbox);
  16. virtual ~LoginData();
  17. public:
  18. static HRESULT CreateInstance(const GUID *pRealm, HWND hPage, HWND hLoginbox, LoginData **instance);
  19. public:
  20. virtual ULONG AddRef();
  21. virtual ULONG Release();
  22. virtual HRESULT QueryInterface(REFIID riid, void** ppObject);
  23. virtual HWND GetLoginbox();
  24. virtual HWND GetPage();
  25. virtual HRESULT GetRealm(GUID *pRealm);
  26. virtual HRESULT GetProvider(LoginProvider **ppProvider);
  27. virtual HRESULT GetStatus(LoginStatus **ppStatus);
  28. virtual HRESULT SetStatus(LPCWSTR pszStatus);
  29. protected:
  30. UINT ref;
  31. GUID realm;
  32. HWND hPage;
  33. HWND hLoginbox;
  34. LoginProvider *provider;
  35. LoginStatus *status;
  36. UINT statusCookie;
  37. };
  38. #endif //NULLSOFT_AUTH_LOGINDATA_HEADER