[Libreoffice-commits] core.git: Branch 'feature/chart-opengl2' - 2 commits - chart2/source sax/source

Michael Meeks michael.meeks at collabora.com
Tue Dec 31 04:47:11 PST 2013


 chart2/source/view/main/DummyXShape.cxx  |    6 +++---
 chart2/source/view/main/OpenGLRender.cxx |    9 +++++++++
 sax/source/fastparser/fastparser.cxx     |   10 +++++-----
 3 files changed, 17 insertions(+), 8 deletions(-)

New commits:
commit fff37863a8b88f71afc0c967893907807534d404
Author: Michael Meeks <michael.meeks at collabora.com>
Date:   Tue Dec 31 12:20:45 2013 +0000

    initialize openGL for Linux too.
    
    Change-Id: I5bd73e0690b264f8670b71d4894bf3a33337b112

diff --git a/chart2/source/view/main/DummyXShape.cxx b/chart2/source/view/main/DummyXShape.cxx
index 64dc65a..6f6c41d 100644
--- a/chart2/source/view/main/DummyXShape.cxx
+++ b/chart2/source/view/main/DummyXShape.cxx
@@ -839,9 +839,6 @@ bool DummyChart::initOpengl()
     SetPixelFormat(GLWin.hDC,WindowPix,&PixelFormatFront);
     GLWin.hRC  = wglCreateContext(GLWin.hDC);
     wglMakeCurrent(GLWin.hDC,GLWin.hRC);
-//[Mod] GaoWei
-    m_GLRender.InitOpenGL(GLWin);
-//[Mod] GaoWei end
 
 #elif defined( UNX )
     if( !glXMakeCurrent( GLWin.dpy, GLWin.win, GLWin.ctx ) )
@@ -891,8 +888,11 @@ bool DummyChart::initOpengl()
         unx::XSetErrorHandler( oldHandler );
         }
     }
+
 #endif
 
+    m_GLRender.InitOpenGL(GLWin);
+
     glEnable(GL_TEXTURE_2D);
     glEnable(GL_CULL_FACE);
     glCullFace(GL_BACK);
diff --git a/chart2/source/view/main/OpenGLRender.cxx b/chart2/source/view/main/OpenGLRender.cxx
index f039ffd..8def8cb 100644
--- a/chart2/source/view/main/OpenGLRender.cxx
+++ b/chart2/source/view/main/OpenGLRender.cxx
@@ -308,6 +308,15 @@ int OpenGLRender::InitOpenGL(GLWindow aWindow)
         cout << "Failed to initialize GLEW" << endl;
         return -1;
     }
+
+    // These guys don't just check support but setup the vtables.
+    if (glewIsSupported("framebuffer_object") != GLEW_OK)
+    {
+        cout << "GL stack has no framebuffer support" << endl;
+        return -1;
+    }
+    cerr << "Initialized openGL successfully" << endl;
+
     glEnable(GL_TEXTURE_2D);
     glEnable(GL_CULL_FACE);
     glCullFace(GL_BACK);
commit a3dbc97ec1852142e52ba258637648643cb59ed4
Author: Michael Meeks <michael.meeks at collabora.com>
Date:   Tue Dec 31 12:04:21 2013 +0000

    fastparser: avoid boost::optional where it is un-necessary.
    
    boost::optional appears to show up rather heavily on many profiles.
    We already use mnElementToken == DONTKNOW to flag / use these guys.
    
    Change-Id: Ibf2b0167f259cc601da2fb9703e880b78e60886e

diff --git a/sax/source/fastparser/fastparser.cxx b/sax/source/fastparser/fastparser.cxx
index 88bef41..a7ba27b 100644
--- a/sax/source/fastparser/fastparser.cxx
+++ b/sax/source/fastparser/fastparser.cxx
@@ -95,10 +95,10 @@ struct NameWithToken
 
 struct SaxContext
 {
-    ::com::sun::star::uno::Reference< ::com::sun::star::xml::sax::XFastContextHandler > mxContext;
-    sal_Int32                   mnElementToken;
-    boost::optional< OUString > maNamespace;
-    boost::optional< OUString > maElementName;
+    Reference< XFastContextHandler > mxContext;
+    sal_Int32 mnElementToken;
+    OUString  maNamespace;
+    OUString  maElementName;
 
     SaxContext( sal_Int32 nElementToken, const OUString& aNamespace, const OUString& aElementName ):
             mnElementToken(nElementToken)
@@ -498,7 +498,7 @@ void Entity::endElement()
         if( nElementToken != FastToken::DONTKNOW )
             xContext->endFastElement( nElementToken );
         else
-            xContext->endUnknownElement( aContext.maNamespace.get(), aContext.maElementName.get() );
+            xContext->endUnknownElement( aContext.maNamespace, aContext.maElementName );
     }
     catch (const Exception& e)
     {


More information about the Libreoffice-commits mailing list