2 * Copyright 1998 Douglas Ridgway
4 * This library is free software; you can redistribute it and/or
5 * modify it under the terms of the GNU Lesser General Public
6 * License as published by the Free Software Foundation; either
7 * version 2.1 of the License, or (at your option) any later version.
9 * This library is distributed in the hope that it will be useful,
10 * but WITHOUT ANY WARRANTY; without even the implied warranty of
11 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
12 * Lesser General Public License for more details.
14 * You should have received a copy of the GNU Lesser General Public
15 * License along with this library; if not, write to the Free Software
16 * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
23 /* global variables */
29 BOOL InitApplication(HINSTANCE hInstance)
33 /* Load the application name and description strings */
35 LoadString(hInstance, IDS_APPNAME, szAppName, sizeof(szAppName));
36 LoadString(hInstance, IDS_DESCRIPTION, szTitle, sizeof(szTitle));
38 /* Fill in window class structure with parameters that describe the
41 wc.cbSize = sizeof(WNDCLASSEX);
43 /* Load small icon image */
44 wc.hIconSm = LoadImage(hInstance,
45 MAKEINTRESOURCEA(IDI_APPICON),
50 wc.style = CS_HREDRAW | CS_VREDRAW; /* Class style(s) */
51 wc.lpfnWndProc = (WNDPROC)WndProc; /* Window Procedure */
52 wc.cbClsExtra = 0; /* No per-class extra data */
53 wc.cbWndExtra = 0; /* No per-window extra data */
54 wc.hInstance = hInstance; /* Owner of this class */
55 wc.hIcon = LoadIcon(hInstance, szAppName); /* Icon name from .rc */
56 wc.hCursor = LoadCursor(NULL, IDC_ARROW); /* Cursor */
57 wc.hbrBackground = (HBRUSH)(COLOR_WINDOW + 1); /* Default color */
58 wc.lpszMenuName = szAppName; /* Menu name from .rc */
59 wc.lpszClassName = szAppName; /* Name to register as */
61 /* Register the window class and return FALSE if unsuccesful */
63 if (!RegisterClassEx(&wc))
65 if (!RegisterClass((LPWNDCLASS)&wc.style))
69 /* Call module specific initialization functions here */
74 BOOL InitInstance(HINSTANCE hInstance, int nCmdShow)
78 /* Save the instance handle in a global variable for later use */
81 /* Create main window */
82 hwnd = CreateWindow(szAppName, /* See RegisterClass() call */
83 szTitle, /* window title */
84 WS_OVERLAPPEDWINDOW, /* Window style */
85 CW_USEDEFAULT, 0, /* positioning */
86 CW_USEDEFAULT, 0, /* size */
87 NULL, /* Overlapped has no parent */
88 NULL, /* Use the window class menu */
95 /* Call module specific instance initialization functions here */
97 /* show the window, and paint it for the first time */
98 ShowWindow(hwnd, nCmdShow);