chart2/source/view/inc/DummyXShape.hxx | 2 chart2/source/view/main/DummyXShape.cxx | 17 +++++++ chart2/source/view/main/OpenGLRender.cxx | 68 ------------------------------- chart2/source/view/main/OpenGLRender.hxx | 2 4 files changed, 18 insertions(+), 71 deletions(-)
New commits: commit e84b56ab535548016eb1e78ea4fe5ea14dbc67f7 Author: Markus Mohrhard <[email protected]> Date: Thu Jan 2 09:50:49 2014 +0100 integrate the rectangle shapes into the rendering # Changes to be committed: Change-Id: I76f2597d3d92e65a3c9116a24f941896baeb5fb9 diff --git a/chart2/source/view/inc/DummyXShape.hxx b/chart2/source/view/inc/DummyXShape.hxx index a2faf60..01cfe28 100644 --- a/chart2/source/view/inc/DummyXShape.hxx +++ b/chart2/source/view/inc/DummyXShape.hxx @@ -367,6 +367,8 @@ public: DummyRectangle(const awt::Size& rSize); DummyRectangle(const awt::Size& rSize, const awt::Point& rPoint, const tNameSequence& rNames, const tAnySequence& rValues ); + + virtual void render() SAL_OVERRIDE; }; class DummyText : public DummyXShape diff --git a/chart2/source/view/main/DummyXShape.cxx b/chart2/source/view/main/DummyXShape.cxx index 8743327..de11333 100644 --- a/chart2/source/view/main/DummyXShape.cxx +++ b/chart2/source/view/main/DummyXShape.cxx @@ -462,7 +462,7 @@ void DummyLine2D::render() sal_uInt8 B = (nColorValue & 0x000000FF); pChart->m_GLRender.SetLine2DColor(R, G, B); - SAL_WARN("chart2.opengl", "*colorvalue = " << nColorValue << ", R = " << R << ", G = " << G << ", B = " << B); + SAL_WARN("chart2.opengl", "*colorvalue = " << nColorValue << ", R = " << (int)R << ", G = " << (int)G << ", B = " << (int)B); } else SAL_WARN("chart2.opengl", "no line color set"); @@ -513,6 +513,21 @@ DummyRectangle::DummyRectangle(const awt::Size& rSize, const awt::Point& rPoint, setProperties(rNames, rValues, maProperties); } +void DummyRectangle::render() +{ + debugProperties(maProperties); + DummyChart* pChart = getRootShape(); + std::map< OUString, uno::Any >::const_iterator itr = maProperties.find("FillColor"); + if(itr != maProperties.end()) + { + uno::Any co = itr->second; + sal_Int32 nColorValue = co.get<sal_Int32>(); + pChart->m_GLRender.SetColor(nColorValue); + } + pChart->m_GLRender.RectangleShapePoint(maPosition.X, maPosition.Y, maSize.Width, maSize.Height); + pChart->m_GLRender.RenderRectangleShape(); +} + DummyText::DummyText(const OUString& rText, const tNameSequence& rNames, const tAnySequence& rValues, const uno::Any& rTrans ): maText(rText), diff --git a/chart2/source/view/main/OpenGLRender.cxx b/chart2/source/view/main/OpenGLRender.cxx index d48146d..a366360 100644 --- a/chart2/source/view/main/OpenGLRender.cxx +++ b/chart2/source/view/main/OpenGLRender.cxx @@ -1247,74 +1247,6 @@ void OpenGLRender::SetTransparency(sal_uInt32 transparency) m_2DColor = glm::vec4(m_2DColor.r, m_2DColor.g, m_2DColor.b, m_fAlpha); } -int OpenGLRender::ProcessRectangle(uno::Reference< drawing::XShape > &xShape) -{ - //Get position - awt::Point aPos( xShape->getPosition() ); - awt::Size aSize( xShape->getSize() ); - //Set Rectangle Pos - uno::Reference< beans::XPropertySet > xProp( xShape, uno::UNO_QUERY ); - //Get the back ground color - uno::Any co = xProp->getPropertyValue(UNO_NAME_FILLCOLOR); - long *colorvalue = (long*)co.getValue(); - SetColor(*colorvalue); - - uno::Any trans = xProp->getPropertyValue(UNO_NAME_FILL_TRANSPARENCE); - long *transparency = (long*)trans.getValue(); - SetTransparency((*transparency) & 0xFF); - SetTransparency(0xFF); - RectangleShapePoint(aPos.X, aPos.Y, aSize.Width, aSize.Height); -#if 0 - com::sun::star::uno::Sequence<com::sun::star::beans::Property> Sequenceproperty = xProp->getPropertySetInfo()->getProperties(); - com::sun::star::beans::Property* Propertyarr = Sequenceproperty.getArray(); - int count = Sequenceproperty.getLength(); - printf("Property length:%d\n",count); - for(int i=0;i<count;i++) - { - - wprintf(L"item %d,name:%s", i,Propertyarr[i].Name.getStr()); - com::sun::star::uno::Type t = Propertyarr[i].Type; - ::rtl::OUString strtypename = t.getTypeName(); - sal_Unicode * typeName = (sal_Unicode *)strtypename.getStr(); - wprintf(L",Type:%s ", typeName); - com::sun::star::uno::TypeClass typeclass = t.getTypeClass(); - com::sun::star::uno::Any value = xProp->getPropertyValue(Propertyarr[i].Name); - if(strtypename.equals(OUString(L"string"))) - { - ::rtl::OUString * strvalue = (::rtl::OUString *)value.getValue(); - wprintf(L",Value:%s \n", strvalue->getStr()); - } - else if(strtypename.equals(OUString(L"short"))) - { - short * shortvalue = (short*)value.getValue(); - printf(",Value:%d \n",*shortvalue); - } - else if(strtypename.equals(OUString(L"long"))) - { - long * longvalue = (long*)value.getValue(); - printf(",Value:%d \n",*longvalue); - } - else if(strtypename.equals(OUString(L"boolean"))) - { - short * bvalue = (short*)value.getValue(); - if(*bvalue==0) - printf(",Value:false \n"); - else - printf(",Value:true \n"); - } - else - { - printf(",Value:object \n"); - } - } - printf("\n"); -#endif - //render rectangle - RenderRectangleShape(); - m_fZStep += 0.01f; - return 0; -} - int OpenGLRender::RectangleShapePoint(float x, float y, float directionX, float directionY) { //check whether to create the circle data diff --git a/chart2/source/view/main/OpenGLRender.hxx b/chart2/source/view/main/OpenGLRender.hxx index a5e8537..f0fcb4a 100644 --- a/chart2/source/view/main/OpenGLRender.hxx +++ b/chart2/source/view/main/OpenGLRender.hxx @@ -161,8 +161,6 @@ public: void SetTransparency(sal_uInt32 transparency); - int ProcessRectangle(com::sun::star::uno::Reference< - com::sun::star::drawing::XShape > &xShape); int RenderRectangleShape(); int RectangleShapePoint(float x, float y, float directionX, float directionY); _______________________________________________ Libreoffice-commits mailing list [email protected] http://lists.freedesktop.org/mailman/listinfo/libreoffice-commits
