in src/native/windows/src/gui.c [66:123]
LPAPXGUISTORE apxGuiInitialize(WNDPROC lpfnWndProc, LPCTSTR szAppName)
{
INITCOMMONCONTROLSEX stCmn;
WNDCLASSEX wcex;
_st_sys_gui.hInstance = GetModuleHandleA(NULL);
GetStartupInfo(&_st_sys_gui.stStartupInfo);
lstrcpy(_st_sys_gui.szWndClass, szAppName);
lstrcat(_st_sys_gui.szWndClass, TEXT("_CLASS"));
/* Single instance or general application mutex */
lstrcpy(_st_sys_gui.szWndMutex, szAppName);
lstrcat(_st_sys_gui.szWndMutex, TEXT("_MUTEX"));
stCmn.dwSize = sizeof(INITCOMMONCONTROLSEX);
stCmn.dwICC = ICC_WIN95_CLASSES | ICC_USEREX_CLASSES | ICC_COOL_CLASSES |
ICC_INTERNET_CLASSES | ICC_PAGESCROLLER_CLASS | ICC_BAR_CLASSES;
InitCommonControlsEx(&stCmn);
_st_sys_riched = LoadLibraryExA("RICHED32.DLL", NULL, LOAD_LIBRARY_SEARCH_SYSTEM32);
_st_sys_gui.hIconSm = LoadImage(_st_sys_gui.hInstance, MAKEINTRESOURCE(IDI_MAINICON),
IMAGE_ICON, 16, 16, LR_DEFAULTCOLOR);
_st_sys_gui.hIcon = LoadImage(_st_sys_gui.hInstance, MAKEINTRESOURCE(IDI_MAINICON),
IMAGE_ICON, 32, 32, LR_DEFAULTCOLOR);
_st_sys_gui.hIconHg = LoadImage(_st_sys_gui.hInstance, MAKEINTRESOURCE(IDI_MAINICON),
IMAGE_ICON, 48, 48, LR_DEFAULTCOLOR);
_st_sys_gui.hAccel = LoadAccelerators(_st_sys_gui.hInstance,
MAKEINTRESOURCE(IDC_APPLICATION));
_st_sys_gui.stState.rcPosition.left = CW_USEDEFAULT;
_st_sys_gui.stState.rcPosition.top = CW_USEDEFAULT;
_st_sys_gui.stState.rcPosition.right = CW_USEDEFAULT;
_st_sys_gui.stState.rcPosition.bottom = CW_USEDEFAULT;
SystemParametersInfo(SPI_GETWHEELSCROLLLINES, 0, &_st_sys_gui.nWhellScroll, 0);
wcex.cbSize = sizeof(WNDCLASSEX);
wcex.style = 0;
wcex.lpfnWndProc = lpfnWndProc;
wcex.cbClsExtra = 0;
wcex.cbWndExtra = 0;
wcex.hInstance = _st_sys_gui.hInstance;
wcex.hIcon = _st_sys_gui.hIcon;
wcex.hIconSm = _st_sys_gui.hIconSm;
wcex.hCursor = LoadCursor(NULL, IDC_ARROW);
wcex.hbrBackground = (HBRUSH)(COLOR_INACTIVEBORDER+1);
wcex.lpszMenuName = MAKEINTRESOURCE(IDC_APPLICATION);
wcex.lpszClassName = _st_sys_gui.szWndClass;
if (RegisterClassEx(&wcex)) {
return &_st_sys_gui;
}
else
return NULL;
}