summaryrefslogtreecommitdiff
path: root/redo/init_windows.c
diff options
context:
space:
mode:
Diffstat (limited to 'redo/init_windows.c')
-rw-r--r--redo/init_windows.c39
1 files changed, 39 insertions, 0 deletions
diff --git a/redo/init_windows.c b/redo/init_windows.c
new file mode 100644
index 0000000..ad3124c
--- /dev/null
+++ b/redo/init_windows.c
@@ -0,0 +1,39 @@
+/* 17 july 2014 */
+
+#include "winapi_windows.h"
+
+HINSTANCE hInstnace;
+int nCmdShow;
+
+HICON hDefaultIcon;
+HCURSOR hArrowCursor;
+
+DWORD initWindows(char **errmsg)
+{
+ STARTUPINFOW si;
+
+ /* WinMain() parameters */
+ hInstance = GetModuleHandleW(NULL);
+ if (hInstance == NULL) {
+ *errmsg = "error getting hInstance";
+ return GetLastError();
+ }
+ nCmdShow = SW_SHOWDEFAULT;
+ GetStartupInfoW(&si);
+ if ((si.dwFlags & STARTF_USESHOWWINDOW) != 0)
+ nCmdShow = si.wShowWindow;
+
+ /* icons and cursors */
+ hDefaultIcon = LoadIconW(NULL, IDI_APPLICATION);
+ if (hDefaultIcon == NULL) {
+ *errmsg = "error loading default icon";
+ return GetLastError();
+ }
+ hDefaultCursor = LoadCursorW(NULL, IDC_ARROW);
+ if (hArrowCursor == NULL) {
+ *errmsg = "error loading arrow (default) cursor";
+ return GetLastError();
+ }
+
+ return 0;
+}