[Libreoffice-commits] core.git: Branch 'feature/chart-3d-chart2' - chart2/source include/vcl vcl/source
Michael Meeks
michael.meeks at collabora.com
Sat May 24 08:43:21 PDT 2014
chart2/source/view/charttypes/GL3DBarChart.cxx | 5 +++++
chart2/source/view/inc/GL3DBarChart.hxx | 1 +
include/vcl/openglwin.hxx | 5 +++++
vcl/source/window/openglwin.cxx | 12 ++++++++++++
4 files changed, 23 insertions(+)
New commits:
commit 19871e8f974e9a8da3927d785142f598e2e56123
Author: Michael Meeks <michael.meeks at collabora.com>
Date: Sat May 24 16:43:05 2014 +0100
Stub mouse move events propagation to 3D charts.
Change-Id: If87545df4b1caeece107a20e0c00df88fb8e6fd5
diff --git a/chart2/source/view/charttypes/GL3DBarChart.cxx b/chart2/source/view/charttypes/GL3DBarChart.cxx
index 6d0b6d7..1837736 100644
--- a/chart2/source/view/charttypes/GL3DBarChart.cxx
+++ b/chart2/source/view/charttypes/GL3DBarChart.cxx
@@ -250,6 +250,11 @@ void GL3DBarChart::clickedAt(const Point& rPos)
mpCamera->zoom(nId);
}
+void GL3DBarChart::mouseDragMove(const Point& rPos, sal_uInt16 nButtons)
+{
+// fprintf(stderr, "drag move %ld %ld (0x%x)\n", rPos.X(), rPos.Y(), nButtons);
+}
+
void GL3DBarChart::contextDestroyed()
{
mbValidContext = false;
diff --git a/chart2/source/view/inc/GL3DBarChart.hxx b/chart2/source/view/inc/GL3DBarChart.hxx
index 674daf6..5f1bcf9 100644
--- a/chart2/source/view/inc/GL3DBarChart.hxx
+++ b/chart2/source/view/inc/GL3DBarChart.hxx
@@ -47,6 +47,7 @@ public:
virtual void update() SAL_OVERRIDE;
virtual void clickedAt(const Point& rPos) SAL_OVERRIDE;
+ virtual void mouseDragMove(const Point& rPos, sal_uInt16 nButtons) SAL_OVERRIDE;
virtual void contextDestroyed() SAL_OVERRIDE;
private:
diff --git a/include/vcl/openglwin.hxx b/include/vcl/openglwin.hxx
index 8e34d05..f69d0b3 100644
--- a/include/vcl/openglwin.hxx
+++ b/include/vcl/openglwin.hxx
@@ -10,6 +10,7 @@
#ifndef INCLUDED_VCL_OPENGLWIN_HXX
#define INCLUDED_VCL_OPENGLWIN_HXX
+#include <vcl/event.hxx>
#include <vcl/syschild.hxx>
#include <vcl/vclopengl_dllapi.hxx>
@@ -24,6 +25,7 @@ public:
virtual ~IRenderer() {}
virtual void update() = 0;
virtual void clickedAt(const Point& rPos) = 0;
+ virtual void mouseDragMove(const Point& rPos, sal_uInt16 nButtons) = 0;
virtual void contextDestroyed() = 0;
};
@@ -39,7 +41,10 @@ public:
void setRenderer(IRenderer* pRenderer);
virtual void Paint(const Rectangle&) SAL_OVERRIDE;
+
virtual void MouseButtonDown( const MouseEvent& rMEvt ) SAL_OVERRIDE;
+ virtual void MouseButtonUp( const MouseEvent& rMEvt ) SAL_OVERRIDE;
+ virtual void MouseMove( const MouseEvent& rMEvt ) SAL_OVERRIDE;
private:
boost::scoped_ptr<OpenGLWindowImpl> mpImpl;
diff --git a/vcl/source/window/openglwin.cxx b/vcl/source/window/openglwin.cxx
index d6e5357..9fd3935 100644
--- a/vcl/source/window/openglwin.cxx
+++ b/vcl/source/window/openglwin.cxx
@@ -65,6 +65,18 @@ void OpenGLWindow::MouseButtonDown( const MouseEvent& rMEvt )
mpRenderer->clickedAt(aPoint);
}
+void OpenGLWindow::MouseButtonUp( const MouseEvent& /* rMEvt */ )
+{
+ // in case we need to track button state ourselves.
+}
+
+void OpenGLWindow::MouseMove( const MouseEvent& rMEvt )
+{
+ if(rMEvt.GetButtons())
+ mpRenderer->mouseDragMove(rMEvt.GetPosPixel(),
+ rMEvt.GetButtons());
+}
+
void OpenGLWindow::setRenderer(IRenderer* pRenderer)
{
mpRenderer = pRenderer;
More information about the Libreoffice-commits
mailing list