]> git.saurik.com Git - wxWidgets.git/blobdiff - include/wx/msw/glcanvas.h
Use explicit wxPGPropertyFlags enum type with wxPGProperty::SetFlag() and similar...
[wxWidgets.git] / include / wx / msw / glcanvas.h
index 203816b4ea115f4b3951bce1724388475a0a8495..ba8388d35df8c3bf2a6bca1f19806450bd0887e6 100644 (file)
@@ -46,6 +46,7 @@ private:
 class WXDLLIMPEXP_GL wxGLCanvas : public wxGLCanvasBase
 {
 public:
+    wxEXPLICIT // avoid implicitly converting a wxWindow* to wxGLCanvas
     wxGLCanvas(wxWindow *parent,
                wxWindowID id = wxID_ANY,
                const int *attribList = NULL,
@@ -133,8 +134,18 @@ protected:
     // common part of all ctors
     void Init();
 
+    // the real window creation function, Create() may reuse it twice as we may
+    // need to create an OpenGL window to query the available extensions and
+    // then potentially delete and recreate it with another pixel format
+    bool CreateWindow(wxWindow *parent,
+                      wxWindowID id = wxID_ANY,
+                      const wxPoint& pos = wxDefaultPosition,
+                      const wxSize& size = wxDefaultSize,
+                      long style = 0,
+                      const wxString& name = wxGLCanvasName);
+
     // set up the pixel format using the given attributes and palette
-    bool DoSetup(const int *attribList);
+    int DoSetup(PIXELFORMATDESCRIPTOR &pfd, const int *attribList);
 
 
     // HDC for this window, we keep it all the time
@@ -146,4 +157,3 @@ private:
 };
 
 #endif // _WX_GLCANVAS_H_
-