summaryrefslogtreecommitdiff
path: root/blt/src/bltWinUtil.c
diff options
context:
space:
mode:
Diffstat (limited to 'blt/src/bltWinUtil.c')
-rw-r--r--blt/src/bltWinUtil.c77
1 files changed, 77 insertions, 0 deletions
diff --git a/blt/src/bltWinUtil.c b/blt/src/bltWinUtil.c
new file mode 100644
index 00000000000..7454b9fb4be
--- /dev/null
+++ b/blt/src/bltWinUtil.c
@@ -0,0 +1,77 @@
+/*
+ * bltWinUtil.c --
+ *
+ * This module contains WIN32 routines not included in the Tcl/Tk
+ * libraries.
+ *
+ * Copyright 1998 by Bell Labs Innovations for Lucent Technologies.
+ *
+ * Permission to use, copy, modify, and distribute this software and its
+ * documentation for any purpose and without fee is hereby granted, provided
+ * that the above copyright notice appear in all copies and that both that the
+ * copyright notice and warranty disclaimer appear in supporting documentation,
+ * and that the names of Lucent Technologies any of their entities not be used
+ * in advertising or publicity pertaining to distribution of the software
+ * without specific, written prior permission.
+ *
+ * Lucent Technologies disclaims all warranties with regard to this software,
+ * including all implied warranties of merchantability and fitness. In no event
+ * shall Lucent Technologies be liable for any special, indirect or
+ * consequential damages or any damages whatsoever resulting from loss of use,
+ * data or profits, whether in an action of contract, negligence or other
+ * tortuous action, arising out of or in connection with the use or performance
+ * of this software.
+ *
+ */
+
+#include <bltInt.h>
+
+double
+drand48(void)
+{
+ return (double) rand() / (double)RAND_MAX;
+}
+
+void
+srand48(long int seed)
+{
+ srand(seed);
+}
+
+int
+Blt_GetPlatformId(void)
+{
+ static int platformId = 0;
+
+ if (platformId == 0) {
+ OSVERSIONINFO opsysInfo;
+
+ opsysInfo.dwOSVersionInfoSize = sizeof(OSVERSIONINFO);
+ if (GetVersionEx(&opsysInfo)) {
+ platformId = opsysInfo.dwPlatformId;
+ }
+ }
+ return platformId;
+}
+
+char *
+Blt_LastError(void)
+{
+ static char buffer[1024];
+ int length;
+
+ FormatMessage(
+ FORMAT_MESSAGE_FROM_SYSTEM,
+ NULL,
+ GetLastError(),
+ MAKELANGID(LANG_NEUTRAL, SUBLANG_DEFAULT), /* Default language */
+ buffer,
+ 1024,
+ NULL);
+ length = strlen(buffer);
+ if (buffer[length - 2] == '\r') {
+ buffer[length - 2] = '\0';
+ }
+ return buffer;
+}
+