52 lines
1.2 KiB
C
52 lines
1.2 KiB
C
|
#ifndef NULLSOFT_AUTH_LOGINPOPUP_MESSAGE_HEADER
|
||
|
#define NULLSOFT_AUTH_LOGINPOPUP_MESSAGE_HEADER
|
||
|
|
||
|
#if defined(_MSC_VER) && (_MSC_VER >= 1020)
|
||
|
#pragma once
|
||
|
#endif
|
||
|
|
||
|
#include "./loginPopup.h"
|
||
|
|
||
|
class LoginPopupMessage : public LoginPopup
|
||
|
{
|
||
|
public:
|
||
|
typedef enum
|
||
|
{
|
||
|
typeMask = 0x0000FFFF,
|
||
|
typeContinue = 0x00000000,
|
||
|
typeYesNo = 0x00000001,
|
||
|
iconMask = 0xFFFF0000,
|
||
|
iconInfo = 0x00000000,
|
||
|
iconWarning = 0x00010000,
|
||
|
iconError = 0x00020000,
|
||
|
} Type;
|
||
|
|
||
|
typedef void (CALLBACK *ResultCallback)(HWND /*hPopup*/, INT_PTR /*resultCode*/, LPARAM param);
|
||
|
|
||
|
protected:
|
||
|
LoginPopupMessage(HWND hwnd);
|
||
|
~LoginPopupMessage();
|
||
|
|
||
|
public:
|
||
|
static HWND CreatePopup(HWND hParent, LPCWSTR pszTitle, LPCWSTR pszMessage, UINT uType, ResultCallback callback, LPARAM param);
|
||
|
|
||
|
protected:
|
||
|
void UpdateLayout(BOOL fRedraw);
|
||
|
void EndDialog(INT_PTR code);
|
||
|
|
||
|
BOOL OnInitDialog(HWND hFocus, LPARAM param);
|
||
|
BOOL OnUpdateWindowPos(const RECT* clientRect, RECT *rectOut);
|
||
|
|
||
|
protected:
|
||
|
ResultCallback callback;
|
||
|
LPARAM param;
|
||
|
INT szButtons[8];
|
||
|
UINT buttonsCount;
|
||
|
|
||
|
private:
|
||
|
friend static HRESULT CALLBACK LoginPopupMessage_CreateInstance(HWND hwnd, LPARAM param, LoginPopup **instance);
|
||
|
};
|
||
|
|
||
|
|
||
|
|
||
|
#endif //NULLSOFT_AUTH_LOGINPOPUP_MESSAGE_HEADER
|