X-Git-Url: http://git.tdb.fi/?a=blobdiff_plain;f=source%2Fgraphics%2Fglcontext.cpp;h=a66ca307b726a59a7ca1a025137b377fc401bd7c;hb=a6eecc5117d91534aaf13e93baf64855f4b963c0;hp=0274c9e216bdd7065084b73f74cf69a6ce2077e0;hpb=4727c8ca14f2d278a74e0abe64b7a31e68238a8a;p=libs%2Fgui.git diff --git a/source/graphics/glcontext.cpp b/source/graphics/glcontext.cpp index 0274c9e..a66ca30 100644 --- a/source/graphics/glcontext.cpp +++ b/source/graphics/glcontext.cpp @@ -1,6 +1,6 @@ +#include "glcontext.h" #include #include -#include "glcontext.h" #include "window.h" using namespace std; @@ -8,23 +8,21 @@ using namespace std; namespace Msp { namespace Graphics { -GLOptions::GLOptions(): - alpha(false), - stencil(false), - doublebuffer(true), - multisample(0), - forward_compatible(false), - core_profile(false), - gl_version_major(0), - gl_version_minor(0) -{ } - - unsupported_gl_mode::unsupported_gl_mode(const GLOptions &opts): - runtime_error(format("{ .alpha=%s, .stencil=%s, .doublebuffer=%s, .multisample=%d, .forward_compatible=%s, .core_profile=%s, .gl_version=%d.%d }", - opts.alpha, opts.stencil, opts.doublebuffer, opts.multisample, opts.forward_compatible, opts.core_profile, opts.gl_version_major, opts.gl_version_minor)) + runtime_error(format("{ .alpha=%s, .stencil=%s, .doublebuffer=%s, .multisample=%d, .forward_compatible=%s, .core_profile=%s, .gl_version=%s }", + opts.alpha, opts.stencil, opts.doublebuffer, opts.multisample, opts.forward_compatible, opts.core_profile, format_version(opts))) { } +string unsupported_gl_mode::format_version(const GLOptions &opts) +{ + if(opts.gl_version_major==GLOptions::LATEST_VERSION) + return "LATEST"; + else if(opts.gl_version_major==GLOptions::DEFAULT_VERSION) + return "DEFAULT"; + else + return format("%d.%d", opts.gl_version_major, opts.gl_version_minor); +} + GLContext::GLContext(Window &wnd, const GLOptions &opts):