summaryrefslogtreecommitdiff
path: root/newctrl/window_windows.c
diff options
context:
space:
mode:
Diffstat (limited to 'newctrl/window_windows.c')
-rw-r--r--newctrl/window_windows.c84
1 files changed, 0 insertions, 84 deletions
diff --git a/newctrl/window_windows.c b/newctrl/window_windows.c
deleted file mode 100644
index a4eefb3..0000000
--- a/newctrl/window_windows.c
+++ /dev/null
@@ -1,84 +0,0 @@
-// 17 july 2014
-
-#include "winapi_windows.h"
-#include "_cgo_export.h"
-
-#define windowclass L"gouiwindow"
-
-#define windowBackground ((HBRUSH) (COLOR_BTNFACE + 1))
-
-static LRESULT CALLBACK windowWndProc(HWND hwnd, UINT uMsg, WPARAM wParam, LPARAM lParam)
-{
- void *data;
- RECT r;
- LRESULT lResult;
-
- data = (void *) getWindowData(hwnd, uMsg, wParam, lParam, &lResult);
- if (data == NULL)
- return lResult;
- if (sharedWndProc(hwnd, uMsg, wParam, lParam, &lResult))
- return lResult;
- switch (uMsg) {
- case WM_PRINTCLIENT:
- // the return value of this message is not documented
- // just to be safe, do this first, returning its value later
- lResult = DefWindowProcW(hwnd, uMsg, wParam, lParam);
- if (GetClientRect(hwnd, &r) == 0)
- xpanic("error getting client rect for Window in WM_PRINTCLIENT", GetLastError());
- if (FillRect((HDC) wParam, &r, windowBackground) == 0)
- xpanic("error filling WM_PRINTCLIENT DC with window background color", GetLastError());
- return lResult;
- case WM_SIZE:
- if (GetClientRect(hwnd, &r) == 0)
- xpanic("error getting client rect for Window in WM_SIZE", GetLastError());
- windowResize(data, &r);
- return 0;
- case WM_CLOSE:
- windowClosing(data);
- return 0;
- default:
- return DefWindowProcW(hwnd, uMsg, wParam, lParam);
- }
- xmissedmsg("Window", "windowWndProc()", uMsg);
- return 0; // unreached
-}
-
-DWORD makeWindowWindowClass(char **errmsg)
-{
- WNDCLASSW wc;
-
- ZeroMemory(&wc, sizeof (WNDCLASSW));
- wc.lpfnWndProc = windowWndProc;
- wc.hInstance = hInstance;
- wc.hIcon = hDefaultIcon;
- wc.hCursor = hArrowCursor;
- wc.hbrBackground = windowBackground;
- wc.lpszClassName = windowclass;
- if (RegisterClassW(&wc) == 0) {
- *errmsg = "error registering Window window class";
- return GetLastError();
- }
- return 0;
-}
-
-HWND newWindow(LPWSTR title, int width, int height, void *data)
-{
- HWND hwnd;
-
- hwnd = CreateWindowExW(
- 0,
- windowclass, title,
- WS_OVERLAPPEDWINDOW,
- CW_USEDEFAULT, CW_USEDEFAULT,
- width, height,
- NULL, NULL, hInstance, data);
- if (hwnd == NULL)
- xpanic("Window creation failed", GetLastError());
- return hwnd;
-}
-
-void windowClose(HWND hwnd)
-{
- if (DestroyWindow(hwnd) == 0)
- xpanic("error destroying window", GetLastError());
-}