]> git.tdb.fi Git - libs/gui.git/blobdiff - source/graphics/glcontext.cpp
Use default member initializers and defaulted default constructors
[libs/gui.git] / source / graphics / glcontext.cpp
index df6ad604ef7d2b9a4eb563abb7f1c4a458787e9f..a66ca307b726a59a7ca1a025137b377fc401bd7c 100644 (file)
@@ -1,6 +1,6 @@
+#include "glcontext.h"
 #include <stdexcept>
 #include <msp/strings/format.h>
-#include "glcontext.h"
 #include "window.h"
 
 using namespace std;
@@ -8,22 +8,21 @@ using namespace std;
 namespace Msp {
 namespace Graphics {
 
-GLOptions::GLOptions():
-       alpha(false),
-       stencil(false),
-       doublebuffer(true),
-       multisample(0),
-       forward_compatible(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, .gl_version=%d.%d }",
-               opts.alpha, opts.stencil, opts.doublebuffer, opts.multisample, opts.forward_compatible, 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):