summaryrefslogtreecommitdiff
path: root/src/gl_draw.cxx
AgeCommit message (Collapse)Author
2017-01-24MacOS: reduce the memory size of class gl_texture_fifo managing GL textures ↵Manolo Gouy
to draw strings under GL. git-svn-id: file:///fltk/svn/fltk/branches/branch-1.4@12166 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2017-01-19Remove USE_OksiD_style_GL_font_selection preprocessor variable because it is ↵Manolo Gouy
equivalent to !USE_XFT git-svn-id: file:///fltk/svn/fltk/branches/branch-1.4@12164 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2017-01-10Remove useless #include directivesManolo Gouy
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.4@12160 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-09-27 MacOS platform: fix building under OS 10.4 that may not have ↵Manolo Gouy
kCGBitmapByteOrder32Host #define'd git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3-porting@11990 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-06-16Fix for STR#3316 to match the size argument of glGenLists() and ↵Manolo Gouy
glDeleteLists() calls. git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3-porting@11784 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-05-08Remove Doxygen warning.Manolo Gouy
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3-porting@11723 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-05-08Make Fl_Cocoa_Gl_Window_Driver::draw_string() simplerManolo Gouy
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3-porting@11722 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-05-08Fix gl_draw() used in simple window under Mac OS X.Manolo Gouy
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3-porting@11719 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-05-08Rewrite file src/gl_draw.cxx under the driver model.Manolo Gouy
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3-porting@11718 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-05-08Rewrite OpenGL-related code under the driver model.Manolo Gouy
Class Fl_Gl_Window_Driver, with its platform-specific derived classes, is created to hold platform-specific, OpenGL code. File gl_draw.cxx still needs to be converted to the driver model. git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3-porting@11716 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-04-16Fix usage of preprocessor macro USE_X11.Albrecht Schlosser
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3-porting@11635 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-04-02Replace src/Fl_Font.H by one file for each platform.Manolo Gouy
This file contained nearly only platform-specific code. git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3-porting@11507 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-03-29Remove the platform-dependent type xcharManolo Gouy
File fl_utf8.h defines the xchar type with a platform-dependent value (wchar_t or unsigned short). But it is used exclusively by WIN32 code (0 use in cross-platform code, 0 use in APPLE or in USE_X11 code). Thus, we can just get rid of this type and replace it by wchar_t where it is used. git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3-porting@11459 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-02-19Rename Fl_Graphics_Driver::set_gc(void*) to gc(void*) and ↵Manolo Gouy
Fl_Graphics_Driver::get_gc() to gc(). git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3-porting@11191 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-02-18Remove all uses of the fl_gc global variable. Towards a clean driver model.Manolo Gouy
fl_gc remains usable by the application as a hook into the system. git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3-porting@11189 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-02-13Details on PORTME items. Move fl_parse_color() to screen drivers.Matthias Melcher
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3-porting@11163 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-02-11Mark places that need to be refactored with // PORTME:Matthias Melcher
Searching for __APPLE, WIN32 or X11 did give me many false results. I instead marked most ifdef's that I would like to get rid of with the text // PORTME:, so they can be easily found by a global search. git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3-porting@11155 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-01-31Fix compiler warnings (STR 2988), porting from branch-1.3.Albrecht Schlosser
This commit is the accumulated patch introduced in branch 1.3 in svn r 11094, 11095, and 11096. git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3-porting@11097 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-01-20Starting to cut out individual graphics function, so that multiple drivers ↵Matthias Melcher
can coexist (cfg_gfx). Found the missing pixels in the OpenGL gfx driver. git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3-porting@11012 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-01-17Trying to create a more detaild way to configure the library, added runtime ↵Matthias Melcher
information, added an OpenGL graphics driver that renders a button on top of an OpenGL window (see test/cube). git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3-porting@11006 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-01-04Created pseudo code for all FL_PORTED section so that FLTK compiles and ↵Matthias Melcher
links (Xcode, hello, other C flags: -D FL_PORTING -U __APPLE__ -U __APPLE_QUARTZ__) git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3-porting@10993 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-01-03Updated platform specific #if's to report unimplemented code when compiling ↵Matthias Melcher
with FL_PORTING defined and WIN32 and __APPLE__ undefined> git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3-porting@10989 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2015-12-02Mac OS: support for high resolution OpenGL windows.Manolo Gouy
Methods Fl::event_x_pixel() and Fl::event_y_pixel() committed at r.10941 are removed. Instead method Fl_Gl_Window::pixels_per_unit() is added. The documentation explains in more detail how to write cross-platform FLTK code supporting high resolution OpenGL windows on retina displays. The examples/OpenGL3test.cxx app exercises Fl_Gl_Window::pixels_per_unit(). git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@10945 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2015-10-21Mac OS and SDK 10.3: #define's necessary for gl_draw.cxx are better in the ↵Manolo Gouy
library source than in the public header file FL/gl.h git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@10872 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2015-09-03Extended Mac OS support of gl_draw() functions to old Apple hardware that ↵Manolo Gouy
does not implement the GL_EXT_texture_rectangle extension. git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@10852 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2015-08-31Mac OS: Use the more standard GL_TEXTURE_RECTANGLE_ARB Manolo Gouy
extension name instead of old GL_TEXTURE_RECTANGLE_EXT. Also, use the GL_BGRA format that is preferred for GL textures, according to "Optimal Data Formats and Types" from "Best Practices for Working with Texture Data". git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@10849 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2015-08-29Fixed bug in Mac OS version of gl_draw() that could produce truncated strings.Manolo Gouy
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@10847 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2015-02-22Fix undefined reference XGetUtf8FontAndGlyph (STR #3191).Albrecht Schlosser
XGetUtf8FontAndGlyph was referenced in libfltk_gl if configured w/o xft and defined in libfltk, but not exported (regression since 1.3.3). git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@10588 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2014-12-21Remove the link error sometimes caused by class Fl_XFont_On_Demand not ↵Manolo Gouy
exported from libfltk.so but called by function gl_font() of file src/gl_draw.cxx (X11-specific). git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@10504 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2014-12-20Changed OpenGL support for the Mac OS X platform: use cocoa instead of ↵Manolo Gouy
deprecated AGL. All changes are mac-specific, except a very minor change in file src/gl_draw.cxx where string drawing wrongly claimed to support @symbol, not possible because symbols are drawn using non-GL primitives. Unchanged application code can use the new FLTK code. In addition, the new code allows mac applications to draw OpenGL scenes at high resolution on so-called 'retina' displays, but this requires some support from app code. They must call, before opening GL windows, Fl::use_high_resolution(1); and change their glViewport() calls as follows glViewport(0, 0, pxel_w(), pixel_h()); This uses 2 new member functions of the Fl_Gl_Window class, pixel_w() and pixel_h() returning the window dimensions in pixel units, that is, twice the w() and h() when the window is mapped on a retina display. git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@10498 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2014-10-30Add missing gl includesLauri Kasanen
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@10414 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2014-08-23Move Xutf8.h to src/, update includes, refresh makedependsLauri Kasanen
This is an internal header. git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@10248 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2014-01-15Mac OS: when computing a texture, save/restore the global fl_gc variable.Manolo Gouy
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@10061 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2013-10-29After r.10011 that removed the q_name member from class Fl_Font_Descriptor, ↵Manolo Gouy
change in gl_font() was needed. git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@10012 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2011-07-19Modifications to all LGPL headers for STR #2685.Greg Ercolano
(to clarify static exception LGPL by changing license references) git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@8864 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2011-04-10r. 8537 had by error introduced a compilation error with ppc architecture.Manolo Gouy
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@8573 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2011-03-26Mac OS: added gl_texture_reset() function to be called when deleting an ↵Manolo Gouy
Fl_Gl_Window git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@8537 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2011-03-26Mac OS: Fixed bug where gl_draw() would fail after deletion of an Fl_GL_Window.Manolo Gouy
The fix invalidates the pile of string textures after each Fl_Gl_Window deletion. git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@8536 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2011-02-18Added virtual width(), height(), descent() and text_extents() functions to ↵Manolo Gouy
the Fl_Graphics_Driver class to prepare for the future definition of graphics drivers that fully deal with text measurement. git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@8442 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2011-02-07Replaced global variable fl_fontsize by fl_graphics_driver->font_descriptor().Manolo Gouy
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@8395 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2011-02-05Removed global variables fl_font_ and fl_size_ that are now distinct for ↵Manolo Gouy
each graphics device. git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@8374 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2011-01-09Removed compilation warning.Manolo Gouy
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@8229 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2010-11-28Fixed Copyright to 2010.Matthias Melcher
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@7903 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2010-10-28Fixed the remaining warningsMatthias Melcher
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@7767 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2010-04-14gl_draw.cxx: simplified/clarified #define'sManolo Gouy
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@7500 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2010-04-14gl_draw.cxx: removed the suspenders but kept the belt.Manolo Gouy
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@7498 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2010-04-13gl_draw.cxx (Mac-specific): fixed bad shading of text color.Manolo Gouy
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@7497 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2010-04-13gl_draw.cxx (Mac-specific): fixed another bad use of non null-terminated string.Manolo Gouy
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@7495 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2010-04-13gl_draw.cxx (Mac-specific): fixed use of fl_measure with non null-terminated ↵Manolo Gouy
string. git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@7494 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2010-04-13gl_draw.cxx (Mac-specific): account for text color.Manolo Gouy
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@7493 ea41ed52-d2ee-0310-a9c1-e6b18d33e121