diff options
Diffstat (limited to 'src/glut/glx/win32_util.c')
-rw-r--r-- | src/glut/glx/win32_util.c | 121 |
1 files changed, 0 insertions, 121 deletions
diff --git a/src/glut/glx/win32_util.c b/src/glut/glx/win32_util.c deleted file mode 100644 index 25af48a..0000000 --- a/src/glut/glx/win32_util.c +++ /dev/null @@ -1,121 +0,0 @@ - -/* Copyright (c) Nate Robins, 1997. */ - -/* portions Copyright (c) Mark Kilgard, 1997, 1998. */ - -/* This program is freely distributable without licensing fees - and is provided without guarantee or warrantee expressed or - implied. This program is -not- in the public domain. */ - - -#include "glutint.h" -#include "glutstroke.h" -#include "glutbitmap.h" -#include <sys/timeb.h> - -/* The following added by Paul Garceau <pgarceau@teleport.com> */ -#if defined(__MINGW32__) -#include <GL/gl.h> -#include <time.h> -#include <windows.h> -struct timeval; -#endif - -extern StrokeFontRec glutStrokeRoman, glutStrokeMonoRoman; -extern BitmapFontRec glutBitmap8By13, glutBitmap9By15, glutBitmapTimesRoman10, glutBitmapTimesRoman24, glutBitmapHelvetica10, glutBitmapHelvetica12, glutBitmapHelvetica18; - -#ifndef __CYGWIN32__ -int -gettimeofday(struct timeval* tp, void* tzp) -{ - struct timeb tb; - - ftime(&tb); - tp->tv_sec = tb.time; - tp->tv_usec = tb.millitm * 1000; - - /* 0 indicates that the call succeeded. */ - return 0; -} -#endif - -/* To get around the fact that Microsoft DLLs only allow functions - to be exported and now data addresses (as Unix DSOs support), the - GLUT API constants such as GLUT_STROKE_ROMAN have to get passed - through a case statement to get mapped to the actual data structure - address. */ -void* -__glutFont(void *font) -{ - switch((int)font) { - case (int)GLUT_STROKE_ROMAN: - return &glutStrokeRoman; - case (int)GLUT_STROKE_MONO_ROMAN: - return &glutStrokeMonoRoman; - case (int)GLUT_BITMAP_9_BY_15: - return &glutBitmap9By15; - case (int)GLUT_BITMAP_8_BY_13: - return &glutBitmap8By13; - case (int)GLUT_BITMAP_TIMES_ROMAN_10: - return &glutBitmapTimesRoman10; - case (int)GLUT_BITMAP_TIMES_ROMAN_24: - return &glutBitmapTimesRoman24; - case (int)GLUT_BITMAP_HELVETICA_10: - return &glutBitmapHelvetica10; - case (int)GLUT_BITMAP_HELVETICA_12: - return &glutBitmapHelvetica12; - case (int)GLUT_BITMAP_HELVETICA_18: - return &glutBitmapHelvetica18; - } - __glutFatalError("font not found."); - /* NOTREACHED */ - return NULL; /* MSVC compiler complains if there is no return at all */ -} - -int -__glutGetTransparentPixel(Display * dpy, XVisualInfo * vinfo) -{ - /* the transparent pixel on Win32 is always index number 0. So if - we put this routine in this file, we can avoid compiling the - whole of layerutil.c which is where this routine normally comes - from. */ - return 0; -} - -void -__glutAdjustCoords(Window parent, int* x, int* y, int* width, int* height) -{ - RECT rect; - - /* adjust the window rectangle because Win32 thinks that the x, y, - width & height are the WHOLE window (including decorations), - whereas GLUT treats the x, y, width & height as only the CLIENT - area of the window. */ - rect.left = *x; rect.top = *y; - rect.right = *x + *width; rect.bottom = *y + *height; - - /* must adjust the coordinates according to the correct style - because depending on the style, there may or may not be - borders. */ - AdjustWindowRect(&rect, WS_CLIPSIBLINGS | WS_CLIPCHILDREN | - (parent ? WS_CHILD : WS_OVERLAPPEDWINDOW), - FALSE); - /* FALSE in the third parameter = window has no menu bar */ - - /* readjust if the x and y are offscreen */ - if(rect.left < 0) { - *x = 0; - } else { - *x = rect.left; - } - - if(rect.top < 0) { - *y = 0; - } else { - *y = rect.top; - } - - *width = rect.right - rect.left; /* adjusted width */ - *height = rect.bottom - rect.top; /* adjusted height */ -} - |