]> git.saurik.com Git - wxWidgets.git/blobdiff - src/msw/glcanvas.cpp
xti additions / changes, trying to reduce dependencies
[wxWidgets.git] / src / msw / glcanvas.cpp
index 2772f79ba40677bcd616aa58cb6f4aa66a09d980..f854b48a7ebe581adbb9e341407f09953a9e536f 100644 (file)
@@ -9,7 +9,7 @@
 // Licence:     wxWindows licence
 /////////////////////////////////////////////////////////////////////////////
 
-#ifdef __GNUG__
+#if defined(__GNUG__) && !defined(NO_GCC_PRAGMA)
 #pragma implementation "glcanvas.h"
 #endif
 
     #include "wx/settings.h"
     #include "wx/intl.h"
     #include "wx/log.h"
+    #include "wx/app.h"
 #endif
 
 #include "wx/msw/private.h"
 
+// DLL options compatibility check:
+#include "wx/build.h"
+WX_CHECK_BUILD_OPTIONS("wxGL")
+
 #include "wx/glcanvas.h"
 
+/*
+  The following two compiler directives are specific to the Microsoft Visual
+  C++ family of compilers
+
+  Fundementally what they do is instruct the linker to use these two libraries
+  for the resolution of symbols. In essence, this is the equivalent of adding
+  these two libraries to either the Makefile or project file.
+
+  This is NOT a recommended technique, and certainly is unlikely to be used
+  anywhere else in wxWindows given it is so specific to not only wxMSW, but
+  also the VC compiler. However, in the case of opengl support, it's an
+  applicable technique as opengl is optional in setup.h This code (wrapped by
+  wxUSE_GLCANVAS), now allows opengl support to be added purely by modifying
+  setup.h rather than by having to modify either the project or DSP fle.
+
+  See MSDN for further information on the exact usage of these commands.
+*/
+#ifdef _MSC_VER
+#  pragma comment( lib, "opengl32" )
+#  pragma comment( lib, "glu32" )
+#endif
+
+
 static const wxChar *wxGLCanvasClassName = wxT("wxGLCanvasClass");
 static const wxChar *wxGLCanvasClassNameNoRedraw = wxT("wxGLCanvasClassNR");