popupAgreement.h 1.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748
  1. #ifndef NULLSOFT_AUTH_LOGINPOPUP_AGREEMENT_HEADER
  2. #define NULLSOFT_AUTH_LOGINPOPUP_AGREEMENT_HEADER
  3. #if defined(_MSC_VER) && (_MSC_VER >= 1020)
  4. #pragma once
  5. #endif
  6. #include "./loginPopup.h"
  7. class LoginProvider;
  8. class LoginPopupAgreement : public LoginPopup
  9. {
  10. protected:
  11. LoginPopupAgreement(HWND hwnd);
  12. ~LoginPopupAgreement();
  13. public:
  14. static HWND CreatePopup(HWND hParent, LoginProvider *provider);
  15. protected:
  16. void UpdateLayout(BOOL fRedraw);
  17. void EndDialog(INT_PTR code);
  18. void UpdateMargins();
  19. BOOL CreateProviderLinks(LPCWSTR pszProvider, LPCWSTR pszTos, LPCWSTR pszPrivacy, INT groupId, HWND hwndInsertAfter);
  20. HDWP LayoutProviderLinks(HDWP hdwp, INT groupId, HWND hwndInsertAfter, INT x, INT y, UINT flags, SIZE *size); // pass hdwp = NULL to get ideal size
  21. void OnLinkClicked(HWND hLink);
  22. HBRUSH OnGetStaticColor(HDC hdc, HWND hControl);
  23. LRESULT OnNotify(UINT controlId, const NMHDR *pnmh);
  24. void OnParentNotify(UINT eventId, UINT wParam, LPARAM lParam);
  25. BOOL OnUpdateWindowPos(const RECT* clientRect, RECT *rectOut);
  26. BOOL OnInitDialog(HWND hFocus, LPARAM param);
  27. void OnDestroy();
  28. protected:
  29. LONG marginLinkLeft;
  30. LONG marginLinkFirst;
  31. LONG marginLinkNext;
  32. private:
  33. friend static HRESULT CALLBACK LoginPopupAgreement_CreateInstance(HWND hwnd, LPARAM param, LoginPopup **instance);
  34. };
  35. #endif //NULLSOFT_AUTH_LOGINPOPUP_AGREEMENT_HEADER