GUI overhaul
This commit is contained in:
parent
7139c79592
commit
602ad90f67
|
@ -141,8 +141,9 @@
|
||||||
<ImportLibrary>
|
<ImportLibrary>
|
||||||
</ImportLibrary>
|
</ImportLibrary>
|
||||||
<ProgramDataBaseFile>$(OutDir)$(TargetName).pdb</ProgramDataBaseFile>
|
<ProgramDataBaseFile>$(OutDir)$(TargetName).pdb</ProgramDataBaseFile>
|
||||||
<SubSystem>Console</SubSystem>
|
<SubSystem>Windows</SubSystem>
|
||||||
<AdditionalManifestDependencies>"type='win32' name='Microsoft.Windows.Common-Controls' version='6.0.0.0' processorArchitecture='*' publicKeyToken='6595b64144ccf1df' language='*'"</AdditionalManifestDependencies>
|
<AdditionalManifestDependencies>"type='win32' name='Microsoft.Windows.Common-Controls' version='6.0.0.0' processorArchitecture='*' publicKeyToken='6595b64144ccf1df' language='*'"</AdditionalManifestDependencies>
|
||||||
|
<EntryPointSymbol>mainCRTStartup</EntryPointSymbol>
|
||||||
</Link>
|
</Link>
|
||||||
<ProjectReference>
|
<ProjectReference>
|
||||||
<LinkLibraryDependencies>true</LinkLibraryDependencies>
|
<LinkLibraryDependencies>true</LinkLibraryDependencies>
|
||||||
|
|
4
header.h
4
header.h
|
@ -40,6 +40,10 @@
|
||||||
|
|
||||||
#define IDC_IMAGE1 1050
|
#define IDC_IMAGE1 1050
|
||||||
|
|
||||||
|
#define IDC_LABEL1 1055
|
||||||
|
#define IDC_LABEL2 1056
|
||||||
|
#define IDC_LABEL3 1057
|
||||||
|
|
||||||
typedef unsigned long ul32;
|
typedef unsigned long ul32;
|
||||||
|
|
||||||
extern HANDLE hConsole;
|
extern HANDLE hConsole;
|
||||||
|
|
287
windows.cpp
287
windows.cpp
|
@ -59,28 +59,220 @@ bool PlayAudio(HINSTANCE hInstance, WCHAR *lpName, UINT bFlags) {
|
||||||
}
|
}
|
||||||
|
|
||||||
LRESULT CALLBACK WNDProc(HWND hWindow, UINT uMessage, WPARAM wParam, LPARAM lParam) {
|
LRESULT CALLBACK WNDProc(HWND hWindow, UINT uMessage, WPARAM wParam, LPARAM lParam) {
|
||||||
|
static HBRUSH hBGColorPrim, hBGColorSec, hFGColor, hBtnDefault,
|
||||||
|
hBtn1Select, hBtn1Hot,
|
||||||
|
hBtn2Select, hBtn2Hot,
|
||||||
|
hBtn3Select, hBtn3Hot,
|
||||||
|
hBtn4Select, hBtn4Hot;
|
||||||
|
|
||||||
|
static HPEN hFrameColor, hFramePrim, hBtnDefaultP,
|
||||||
|
hBtn1SelectP, hBtn1HotP,
|
||||||
|
hBtn2SelectP, hBtn2HotP,
|
||||||
|
hBtn3SelectP, hBtn3HotP,
|
||||||
|
hBtn4SelectP, hBtn4HotP;
|
||||||
|
static HDC hMainDC;
|
||||||
|
|
||||||
switch (uMessage) {
|
switch (uMessage) {
|
||||||
case WM_CREATE:
|
case WM_CREATE:
|
||||||
|
hMainDC = GetDC(hWindow);
|
||||||
|
|
||||||
|
hFrameColor = CreatePen(PS_SOLID, 1, RGB(240, 240, 240));
|
||||||
|
hFramePrim = CreatePen(PS_SOLID, 1, RGB(10, 10, 10));
|
||||||
|
|
||||||
|
hBGColorPrim = CreateSolidBrush(RGB(10, 10, 10));
|
||||||
|
hBGColorSec = (HBRUSH)(GetStockObject(BLACK_BRUSH));
|
||||||
|
hFGColor = (HBRUSH)GetStockObject(WHITE_BRUSH);
|
||||||
|
|
||||||
|
// yellow, blue, red, green
|
||||||
|
hBtnDefaultP = CreatePen(PS_SOLID, 1, RGB(0, 0, 0));
|
||||||
|
|
||||||
|
hBtn1SelectP = CreatePen(PS_SOLID, 1, RGB(160, 160, 0));
|
||||||
|
hBtn1HotP = CreatePen(PS_SOLID, 1, RGB(80, 80, 0));
|
||||||
|
|
||||||
|
hBtn2SelectP = CreatePen(PS_SOLID, 1, RGB(0, 0, 160));
|
||||||
|
hBtn2HotP = CreatePen(PS_SOLID, 1, RGB(0, 0, 80));
|
||||||
|
|
||||||
|
hBtn3SelectP = CreatePen(PS_SOLID, 1, RGB(160, 0, 0));
|
||||||
|
hBtn3HotP = CreatePen(PS_SOLID, 1, RGB(80, 0, 0));
|
||||||
|
|
||||||
|
hBtn4SelectP = CreatePen(PS_SOLID, 1, RGB(0, 160, 0));
|
||||||
|
hBtn4HotP = CreatePen(PS_SOLID, 1, RGB(0, 80, 0));
|
||||||
|
|
||||||
|
hBtnDefault = CreateSolidBrush(RGB(30, 30, 30));
|
||||||
|
|
||||||
|
hBtn1Select = CreateSolidBrush(RGB(70, 70, 30));
|
||||||
|
hBtn1Hot = CreateSolidBrush(RGB(40, 40, 30));
|
||||||
|
|
||||||
|
hBtn2Select = CreateSolidBrush(RGB(30, 30, 70));
|
||||||
|
hBtn2Hot = CreateSolidBrush(RGB(30, 30, 40));
|
||||||
|
|
||||||
|
hBtn3Select = CreateSolidBrush(RGB(70, 30, 30));
|
||||||
|
hBtn3Hot = CreateSolidBrush(RGB(40, 30, 30));
|
||||||
|
|
||||||
|
hBtn4Hot = CreateSolidBrush(RGB(30, 40, 30));
|
||||||
|
hBtn4Select = CreateSolidBrush(RGB(30, 70, 30));
|
||||||
|
|
||||||
break;
|
break;
|
||||||
|
|
||||||
|
case WM_PAINT: {
|
||||||
|
RECT rGroup = {
|
||||||
|
10,
|
||||||
|
165,
|
||||||
|
589,
|
||||||
|
430
|
||||||
|
};
|
||||||
|
|
||||||
|
SelectObject(hMainDC, hFrameColor);
|
||||||
|
SelectObject(hMainDC, GetStockObject(HOLLOW_BRUSH));
|
||||||
|
|
||||||
|
RoundRect(hMainDC, 10, 165, 589, 430, 12, 12);
|
||||||
|
InvalidateRect(GetDlgItem(hWindow, IDC_LABEL1), nullptr, true);
|
||||||
|
|
||||||
|
goto execute;
|
||||||
|
}
|
||||||
|
|
||||||
case WM_CTLCOLORSTATIC:
|
case WM_CTLCOLORSTATIC:
|
||||||
if ((HWND)lParam == GetDlgItem(hWindow, IDC_EDIT1)) {
|
|
||||||
SetBkMode((HDC)wParam, TRANSPARENT);
|
SetBkMode((HDC)wParam, TRANSPARENT);
|
||||||
|
|
||||||
|
if ((HWND)lParam == GetDlgItem(hWindow, IDC_EDIT1)) {
|
||||||
SetTextColor((HDC)wParam, RGB(255, 255, 0));
|
SetTextColor((HDC)wParam, RGB(255, 255, 0));
|
||||||
return (LRESULT)((HBRUSH)GetStockObject(BLACK_BRUSH));
|
return (LRESULT)(hBGColorSec);
|
||||||
|
}
|
||||||
|
else {
|
||||||
|
SetTextColor((HDC)wParam, RGB(255, 255, 255));
|
||||||
|
return (LRESULT)(hBGColorPrim);
|
||||||
|
}
|
||||||
|
|
||||||
|
break;
|
||||||
|
|
||||||
|
case WM_CTLCOLOREDIT:
|
||||||
|
SetBkMode((HDC)wParam, TRANSPARENT);
|
||||||
|
|
||||||
|
if ((HWND)lParam == GetDlgItem(hWindow, IDC_INPUT1)) {
|
||||||
|
SetTextColor((HDC)wParam, RGB(255, 140, 140));
|
||||||
|
}
|
||||||
|
else if ((HWND)lParam == GetDlgItem(hWindow, IDC_INPUT2)) {
|
||||||
|
SetTextColor((HDC)wParam, RGB(140, 140, 255));
|
||||||
}
|
}
|
||||||
else goto execute;
|
else goto execute;
|
||||||
|
|
||||||
break;
|
return (LRESULT)(hBGColorSec);
|
||||||
|
|
||||||
case WM_CHAR:
|
case WM_CHAR:
|
||||||
if (LOWORD(wParam) == VK_TAB)
|
if (LOWORD(wParam) == VK_TAB)
|
||||||
SetFocus(GetNextDlgTabItem(hWindow, NULL, FALSE));
|
SetFocus(GetNextDlgTabItem(hWindow, NULL, FALSE));
|
||||||
break;
|
break;
|
||||||
|
|
||||||
|
case WM_NOTIFY: {
|
||||||
|
LPNMHDR nmHeader = (LPNMHDR)lParam;
|
||||||
|
|
||||||
|
if (nmHeader->code == NM_CUSTOMDRAW) {
|
||||||
|
LPNMCUSTOMDRAW item = (LPNMCUSTOMDRAW)nmHeader;
|
||||||
|
|
||||||
|
HBRUSH hBtnXSelect, hBtnXHot;
|
||||||
|
HPEN hBtnXSelectP, hBtnXHotP;
|
||||||
|
|
||||||
|
CONST WCHAR *pCaption = L"Unknown";
|
||||||
|
|
||||||
|
switch (nmHeader->idFrom) {
|
||||||
|
case IDC_BUTTON1:
|
||||||
|
pCaption = L"About";
|
||||||
|
|
||||||
|
hBtnXSelect = hBtn1Select;
|
||||||
|
hBtnXHot = hBtn1Hot;
|
||||||
|
hBtnXSelectP = hBtn1SelectP;
|
||||||
|
hBtnXHotP = hBtn1HotP;
|
||||||
|
|
||||||
|
break;
|
||||||
|
|
||||||
|
case IDC_BUTTON2:
|
||||||
|
pCaption = L"> Generate <";
|
||||||
|
|
||||||
|
hBtnXSelect = hBtn2Select;
|
||||||
|
hBtnXHot = hBtn2Hot;
|
||||||
|
hBtnXSelectP = hBtn2SelectP;
|
||||||
|
hBtnXHotP = hBtn2HotP;
|
||||||
|
|
||||||
|
break;
|
||||||
|
|
||||||
|
case IDC_BUTTON3:
|
||||||
|
pCaption = L"Quit";
|
||||||
|
|
||||||
|
hBtnXSelect = hBtn3Select;
|
||||||
|
hBtnXHot = hBtn3Hot;
|
||||||
|
hBtnXSelectP = hBtn3SelectP;
|
||||||
|
hBtnXHotP = hBtn3HotP;
|
||||||
|
|
||||||
|
break;
|
||||||
|
|
||||||
|
case IDC_BUTTON4:
|
||||||
|
pCaption = L"Random";
|
||||||
|
|
||||||
|
hBtnXSelect = hBtn4Select;
|
||||||
|
hBtnXHot = hBtn4Hot;
|
||||||
|
hBtnXSelectP = hBtn4SelectP;
|
||||||
|
hBtnXHotP = hBtn4HotP;
|
||||||
|
|
||||||
|
break;
|
||||||
|
|
||||||
|
default:
|
||||||
|
goto execute;
|
||||||
|
}
|
||||||
|
|
||||||
|
SetBkMode(item->hdc, TRANSPARENT);
|
||||||
|
SetTextColor(item->hdc, RGB(255, 255, 255));
|
||||||
|
|
||||||
|
SelectObject(item->hdc, hFramePrim);
|
||||||
|
SelectObject(item->hdc, hBGColorPrim);
|
||||||
|
|
||||||
|
Rectangle(item->hdc, item->rc.left, item->rc.top, item->rc.right, item->rc.bottom);
|
||||||
|
|
||||||
|
if (item->uItemState & CDIS_SELECTED) {
|
||||||
|
SelectObject(item->hdc, hBtnXSelectP);
|
||||||
|
SelectObject(item->hdc, hBtnXSelect);
|
||||||
|
}
|
||||||
|
else if (item->uItemState & CDIS_HOT) {
|
||||||
|
SelectObject(item->hdc, hBtnXHotP);
|
||||||
|
SelectObject(item->hdc, hBtnXHot);
|
||||||
|
}
|
||||||
|
else {
|
||||||
|
SelectObject(item->hdc, hBtnDefaultP);
|
||||||
|
SelectObject(item->hdc, hBtnDefault);
|
||||||
|
}
|
||||||
|
|
||||||
|
RoundRect(item->hdc, item->rc.left, item->rc.top, item->rc.right, item->rc.bottom, 12, 12);
|
||||||
|
DrawTextW(item->hdc, pCaption, -1, &item->rc, DT_CENTER | DT_VCENTER | DT_SINGLELINE);
|
||||||
|
|
||||||
|
return CDRF_SKIPDEFAULT;
|
||||||
|
}
|
||||||
|
|
||||||
|
return CDRF_DODEFAULT;
|
||||||
|
}
|
||||||
|
|
||||||
case WM_COMMAND:
|
case WM_COMMAND:
|
||||||
switch (LOWORD(wParam)) {
|
switch (LOWORD(wParam)) {
|
||||||
|
case IDC_LABEL2: {
|
||||||
|
switch (HIWORD(wParam)) {
|
||||||
|
case STN_CLICKED:
|
||||||
|
CheckRadioButton(hWindow, IDC_RADIO1, IDC_RADIO2, IDC_RADIO1);
|
||||||
|
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
|
||||||
|
case IDC_LABEL3: {
|
||||||
|
switch (HIWORD(wParam)) {
|
||||||
|
case STN_CLICKED:
|
||||||
|
CheckRadioButton(hWindow, IDC_RADIO1, IDC_RADIO2, IDC_RADIO2);
|
||||||
|
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
|
||||||
case IDC_BUTTON1: {
|
case IDC_BUTTON1: {
|
||||||
ShellExecuteW(hWindow, L"open", pAboutLink, nullptr, nullptr, SW_SHOWNORMAL);
|
ShellExecuteW(hWindow, L"open", pAboutLink, nullptr, nullptr, SW_SHOWNORMAL);
|
||||||
|
|
||||||
|
@ -161,6 +353,35 @@ LRESULT CALLBACK WNDProc(HWND hWindow, UINT uMessage, WPARAM wParam, LPARAM lPar
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case WM_DESTROY:
|
case WM_DESTROY:
|
||||||
|
DeleteObject(hBGColorPrim);
|
||||||
|
|
||||||
|
DeleteObject(hBtn1Select);
|
||||||
|
DeleteObject(hBtn1Hot);
|
||||||
|
DeleteObject(hBtn2Select);
|
||||||
|
DeleteObject(hBtn2Hot);
|
||||||
|
DeleteObject(hBtn3Select);
|
||||||
|
DeleteObject(hBtn3Hot);
|
||||||
|
DeleteObject(hBtn4Select);
|
||||||
|
DeleteObject(hBtn4Hot);
|
||||||
|
|
||||||
|
DeleteObject(hBtnDefault);
|
||||||
|
|
||||||
|
DeleteObject(hBtn1SelectP);
|
||||||
|
DeleteObject(hBtn1HotP);
|
||||||
|
DeleteObject(hBtn2SelectP);
|
||||||
|
DeleteObject(hBtn2HotP);
|
||||||
|
DeleteObject(hBtn3SelectP);
|
||||||
|
DeleteObject(hBtn3HotP);
|
||||||
|
DeleteObject(hBtn4SelectP);
|
||||||
|
DeleteObject(hBtn4HotP);
|
||||||
|
|
||||||
|
DeleteObject(hBtnDefaultP);
|
||||||
|
|
||||||
|
DeleteObject(hFrameColor);
|
||||||
|
DeleteObject(hFramePrim);
|
||||||
|
|
||||||
|
ReleaseDC(hWindow, hMainDC);
|
||||||
|
|
||||||
PostQuitMessage(0);
|
PostQuitMessage(0);
|
||||||
break;
|
break;
|
||||||
|
|
||||||
|
@ -186,7 +407,7 @@ bool InitializeWindow(HINSTANCE hInstance) {
|
||||||
wndClass.hInstance = hInstance;
|
wndClass.hInstance = hInstance;
|
||||||
wndClass.lpfnWndProc = (WNDPROC)WNDProc;
|
wndClass.lpfnWndProc = (WNDPROC)WNDProc;
|
||||||
wndClass.lpszClassName = L"XPKeygen";
|
wndClass.lpszClassName = L"XPKeygen";
|
||||||
wndClass.hbrBackground = (HBRUSH)COLOR_WINDOW;
|
wndClass.hbrBackground = (HBRUSH)CreateSolidBrush(RGB(10, 10, 10));
|
||||||
wndClass.style = CS_HREDRAW | CS_VREDRAW;
|
wndClass.style = CS_HREDRAW | CS_VREDRAW;
|
||||||
wndClass.hIcon = LoadIconW(nullptr, MAKEINTRESOURCEW(IDI_ICON1));
|
wndClass.hIcon = LoadIconW(nullptr, MAKEINTRESOURCEW(IDI_ICON1));
|
||||||
wndClass.hIconSm = LoadIconW(hInstance, MAKEINTRESOURCEW(IDI_ICON1));
|
wndClass.hIconSm = LoadIconW(hInstance, MAKEINTRESOURCEW(IDI_ICON1));
|
||||||
|
@ -237,12 +458,12 @@ bool InitializeWindow(HINSTANCE hInstance) {
|
||||||
|
|
||||||
HWND hGroupBox = CreateWindowExW(
|
HWND hGroupBox = CreateWindowExW(
|
||||||
0,
|
0,
|
||||||
L"Button", L"Windows XP Pro VLK x86 // Server 2003 + SP2 x64",
|
L"Static", L"Windows XP Pro VLK x86 // Server 2003 + SP2 x64",
|
||||||
WS_CHILD | WS_VISIBLE |
|
WS_CHILD | WS_VISIBLE |
|
||||||
BS_GROUPBOX,
|
SS_CENTER,
|
||||||
10, 150,
|
42, 150,
|
||||||
w - 36, h - 200,
|
515, 32,
|
||||||
hMainWindow, nullptr,
|
hMainWindow, (HMENU)IDC_LABEL1,
|
||||||
hInstance, nullptr
|
hInstance, nullptr
|
||||||
);
|
);
|
||||||
|
|
||||||
|
@ -340,11 +561,11 @@ bool InitializeWindow(HINSTANCE hInstance) {
|
||||||
HWND hRadio1 = CreateWindowExW(
|
HWND hRadio1 = CreateWindowExW(
|
||||||
WS_EX_WINDOWEDGE,
|
WS_EX_WINDOWEDGE,
|
||||||
L"Button",
|
L"Button",
|
||||||
L"Windows XP VLK",
|
L"",
|
||||||
WS_VISIBLE | WS_CHILD | WS_GROUP |
|
WS_VISIBLE | WS_CHILD | WS_GROUP | WS_TABSTOP |
|
||||||
BS_AUTORADIOBUTTON,
|
BS_AUTORADIOBUTTON,
|
||||||
70, 219,
|
70, 219,
|
||||||
120, 20,
|
17, 20,
|
||||||
hMainWindow,
|
hMainWindow,
|
||||||
(HMENU)IDC_RADIO1,
|
(HMENU)IDC_RADIO1,
|
||||||
hInstance, NULL
|
hInstance, NULL
|
||||||
|
@ -353,20 +574,48 @@ bool InitializeWindow(HINSTANCE hInstance) {
|
||||||
SendMessageW(hRadio1, BM_SETCHECK, 1, 0);
|
SendMessageW(hRadio1, BM_SETCHECK, 1, 0);
|
||||||
SendMessageW(hRadio1, WM_SETFONT, (WPARAM)hLabelFont, 0);
|
SendMessageW(hRadio1, WM_SETFONT, (WPARAM)hLabelFont, 0);
|
||||||
|
|
||||||
|
HWND hRadioLabel1 = CreateWindowExW(
|
||||||
|
0,
|
||||||
|
L"Static",
|
||||||
|
L"Windows XP VLK",
|
||||||
|
WS_CHILD | WS_VISIBLE |
|
||||||
|
SS_NOTIFY,
|
||||||
|
89, 221,
|
||||||
|
90, 16,
|
||||||
|
hMainWindow, (HMENU)IDC_LABEL2,
|
||||||
|
hInstance, nullptr
|
||||||
|
);
|
||||||
|
|
||||||
|
SendMessageW(hRadioLabel1, WM_SETFONT, (WPARAM)hLabelFont, 0);
|
||||||
|
|
||||||
HWND hRadio2 = CreateWindowExW(
|
HWND hRadio2 = CreateWindowExW(
|
||||||
WS_EX_WINDOWEDGE,
|
WS_EX_WINDOWEDGE,
|
||||||
L"Button",
|
L"Button",
|
||||||
L"Windows Server 2003 / SP2 x64",
|
L"",
|
||||||
WS_VISIBLE | WS_CHILD |
|
WS_VISIBLE | WS_CHILD | WS_TABSTOP |
|
||||||
BS_AUTORADIOBUTTON,
|
BS_AUTORADIOBUTTON,
|
||||||
200, 219,
|
200, 219,
|
||||||
180, 20,
|
17, 20,
|
||||||
hMainWindow,
|
hMainWindow,
|
||||||
(HMENU)IDC_RADIO2,
|
(HMENU)IDC_RADIO2,
|
||||||
hInstance, NULL);
|
hInstance, NULL);
|
||||||
|
|
||||||
SendMessageW(hRadio2, WM_SETFONT, (WPARAM)hLabelFont, 0);
|
SendMessageW(hRadio2, WM_SETFONT, (WPARAM)hLabelFont, 0);
|
||||||
|
|
||||||
|
HWND hRadioLabel2 = CreateWindowExW(
|
||||||
|
0,
|
||||||
|
L"Static",
|
||||||
|
L"Windows Server 2003 / SP2 x64",
|
||||||
|
WS_CHILD | WS_VISIBLE |
|
||||||
|
SS_NOTIFY,
|
||||||
|
218, 221,
|
||||||
|
170, 16,
|
||||||
|
hMainWindow, (HMENU)IDC_LABEL3,
|
||||||
|
hInstance, nullptr
|
||||||
|
);
|
||||||
|
|
||||||
|
SendMessageW(hRadioLabel2, WM_SETFONT, (WPARAM)hLabelFont, 0);
|
||||||
|
|
||||||
HWND hEdit = CreateWindowExW(
|
HWND hEdit = CreateWindowExW(
|
||||||
0,
|
0,
|
||||||
L"Edit",
|
L"Edit",
|
||||||
|
@ -388,7 +637,8 @@ bool InitializeWindow(HINSTANCE hInstance) {
|
||||||
0,
|
0,
|
||||||
L"Button",
|
L"Button",
|
||||||
L"About",
|
L"About",
|
||||||
WS_CHILD | WS_VISIBLE | WS_TABSTOP,
|
WS_CHILD | WS_VISIBLE | WS_TABSTOP |
|
||||||
|
BS_PUSHBUTTON,
|
||||||
44, h - 90,
|
44, h - 90,
|
||||||
100, 27,
|
100, 27,
|
||||||
hMainWindow,
|
hMainWindow,
|
||||||
|
@ -419,7 +669,8 @@ bool InitializeWindow(HINSTANCE hInstance) {
|
||||||
0,
|
0,
|
||||||
L"Button",
|
L"Button",
|
||||||
L"Quit",
|
L"Quit",
|
||||||
WS_CHILD | WS_VISIBLE | WS_TABSTOP,
|
WS_CHILD | WS_VISIBLE | WS_TABSTOP |
|
||||||
|
BS_PUSHBUTTON,
|
||||||
w - 160, h - 90,
|
w - 160, h - 90,
|
||||||
100, 27,
|
100, 27,
|
||||||
hMainWindow,
|
hMainWindow,
|
||||||
|
@ -438,9 +689,11 @@ bool InitializeWindow(HINSTANCE hInstance) {
|
||||||
MSG uMessage;
|
MSG uMessage;
|
||||||
|
|
||||||
while(GetMessageW(&uMessage, nullptr, 0, 0)) {
|
while(GetMessageW(&uMessage, nullptr, 0, 0)) {
|
||||||
|
if (!IsDialogMessageW(hMainWindow, &uMessage)) {
|
||||||
TranslateMessage(&uMessage);
|
TranslateMessage(&uMessage);
|
||||||
DispatchMessageW(&uMessage);
|
DispatchMessageW(&uMessage);
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
|
||||||
ReleaseDC(hMainWindow, hMainDC);
|
ReleaseDC(hMainWindow, hMainDC);
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue