]> de.git.xonotic.org Git - xonotic/netradiant.git/blobdiff - include/igl.h
fix a compile error
[xonotic/netradiant.git] / include / igl.h
index 29bf5f802805a1eef0758a55ac269b3fe5d93faf..35174967608d8fed17ea6aaf193f25d709b7bd43 100644 (file)
@@ -1976,6 +1976,7 @@ typedef unsigned int GLhandleARB;
 
 #endif
 
+#include "gtkutil/glfont.h"
 
 /// \brief A module which wraps a runtime-binding of the standard OpenGL functions.
 /// Provides convenience functions for querying availabiliy of extensions, rendering text and error-checking.
@@ -1997,21 +1998,21 @@ struct OpenGLBinding
   /// \brief Asserts that there no OpenGL errors have occurred since the last call to glGetError.
   void (*assertNoErrors)(const char *file, int line);
 
-  GLuint m_font;
-  int m_fontHeight;
+  GLFont *m_font; // MUST be set!
 
   /// \brief Renders \p string at the current raster-position of the current context.
   void drawString(const char* string) const
   {
-    m_glListBase(m_font);
-    m_glCallLists(GLsizei(strlen(string)), GL_UNSIGNED_BYTE, reinterpret_cast<const GLubyte*>(string));
+    m_font->printString(string);
   }
 
   /// \brief Renders \p character at the current raster-position of the current context.
   void drawChar(char character) const
   {
-    m_glListBase(m_font);
-    m_glCallLists(1, GL_UNSIGNED_BYTE, reinterpret_cast<const GLubyte*>(&character));
+    char s[2];
+    s[0] = character;
+    s[1] = 0;
+    drawString(s);
   }
 
 
@@ -2316,8 +2317,14 @@ struct OpenGLBinding
   void (QGL_DLLEXPORT *m_glTexGenfv)(GLenum coord, GLenum pname, const GLfloat *params);
   void (QGL_DLLEXPORT *m_glTexGeni)(GLenum coord, GLenum pname, GLint param);
   void (QGL_DLLEXPORT *m_glTexGeniv)(GLenum coord, GLenum pname, const GLint *params);
+#if defined(MACVERSION) && MACVERSION > 15
+       //Snow Leopard 16, Leopard 15, Tiger 14, Panther 13, ... 
+  void (QGL_DLLEXPORT *m_glTexImage1D)(GLenum target, GLint level, GLenum internalformat, GLsizei width, GLint border, GLenum format, GLenum type, const GLvoid *pixels);
+  void (QGL_DLLEXPORT *m_glTexImage2D)(GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLint border, GLenum format, GLenum type, const GLvoid *pixels);
+#else
   void (QGL_DLLEXPORT *m_glTexImage1D)(GLenum target, GLint level, GLint internalformat, GLsizei width, GLint border, GLenum format, GLenum type, const GLvoid *pixels);
-  void (QGL_DLLEXPORT *m_glTexImage2D)(GLenum target, GLint level, GLint internalformat, GLsizei width, GLsizei height, GLint border, GLenum format, GLenum type, const GLvoid *pixels);
+  void (QGL_DLLEXPORT *m_glTexImage2D)(GLenum target, GLint level, GLint internalformat, GLsizei width, GLsizei height, GLint border, GLenum format, GLenum type, const GLvoid *pixels);       
+#endif
   void (QGL_DLLEXPORT *m_glTexParameterf)(GLenum target, GLenum pname, GLfloat param);
   void (QGL_DLLEXPORT *m_glTexParameterfv)(GLenum target, GLenum pname, const GLfloat *params);
   void (QGL_DLLEXPORT *m_glTexParameteri)(GLenum target, GLenum pname, GLint param);