Tag: cws_dev300_rptchart02 User: oj Date: 2008-05-16 12:53:24+0000 Modified: dba/reportdesign/inc/RptObject.hxx dba/reportdesign/source/core/sdr/RptObject.cxx dba/reportdesign/source/filter/xml/xmlHelper.cxx dba/reportdesign/source/ui/report/ViewsWindow.cxx
Log: #i89365# copy props before set args at chart File Changes: Directory: /dba/reportdesign/inc/ ================================= File [changed]: RptObject.hxx Url: http://dba.openoffice.org/source/browse/dba/reportdesign/inc/RptObject.hxx?r1=1.5.4.4&r2=1.5.4.5 Delta lines: +2 -1 ------------------- --- RptObject.hxx 2008-04-30 13:03:02+0000 1.5.4.4 +++ RptObject.hxx 2008-05-16 12:53:20+0000 1.5.4.5 @@ -7,7 +7,7 @@ * OpenOffice.org - a multi-platform office productivity suite * * $RCSfile: RptObject.hxx,v $ - * $Revision: 1.5.4.4 $ + * $Revision: 1.5.4.5 $ * * This file is part of OpenOffice.org. * @@ -192,6 +192,7 @@ friend class DlgEdFactory; UINT16 m_nType; + void impl_createDataProvider_nothrow( const ::com::sun::star::uno::Reference< ::com::sun::star::frame::XModel>& _xModel); public: static OOle2Obj* Create( const ::com::sun::star::uno::Reference< ::com::sun::star::report::XReportComponent>& _xComponent,UINT16 _nType ) { Directory: /dba/reportdesign/source/core/sdr/ ============================================= File [changed]: RptObject.cxx Url: http://dba.openoffice.org/source/browse/dba/reportdesign/source/core/sdr/RptObject.cxx?r1=1.7.4.5&r2=1.7.4.6 Delta lines: +23 -5 -------------------- --- RptObject.cxx 2008-05-07 06:56:32+0000 1.7.4.5 +++ RptObject.cxx 2008-05-16 12:53:21+0000 1.7.4.6 @@ -7,7 +7,7 @@ * OpenOffice.org - a multi-platform office productivity suite * * $RCSfile: RptObject.cxx,v $ - * $Revision: 1.7.4.5 $ + * $Revision: 1.7.4.6 $ * * This file is part of OpenOffice.org. * @@ -1023,14 +1023,33 @@ OOle2Obj* pObj = static_cast<OOle2Obj*>(SdrOle2Obj::Clone()); OReportModel* pRptModel = static_cast<OReportModel*>(GetModel()); svt::EmbeddedObjectRef::TryRunningState( pObj->GetObjRef() ); - pObj->initializeChart(pRptModel->getReportDefinition().get()); + pObj->impl_createDataProvider_nothrow(pRptModel->getReportDefinition().get()); + uno::Reference< chart2::data::XDatabaseDataProvider > xSource( lcl_getDataProvider(GetObjRef()) ); uno::Reference< chart2::data::XDatabaseDataProvider > xDest( lcl_getDataProvider(pObj->GetObjRef()) ); if ( xSource.is() && xDest.is() ) comphelper::copyProperties(xSource.get(),xDest.get()); + + pObj->initializeChart(pRptModel->getReportDefinition().get()); return pObj; } // ----------------------------------------------------------------------------- +void OOle2Obj::impl_createDataProvider_nothrow(const uno::Reference< frame::XModel>& _xModel) +{ + uno::Reference < embed::XEmbeddedObject > xObj = GetObjRef(); + uno::Reference< chart2::data::XDataReceiver > xReceiver; + uno::Reference< embed::XComponentSupplier > xCompSupp( xObj, uno::UNO_QUERY ); + if( xCompSupp.is()) + xReceiver.set( xCompSupp->getComponent(), uno::UNO_QUERY ); + OSL_ASSERT( xReceiver.is()); + if( xReceiver.is() ) + { + uno::Reference< lang::XMultiServiceFactory> xFac(_xModel,uno::UNO_QUERY); + uno::Reference< chart2::data::XDatabaseDataProvider > xDataProvider( xFac->createInstance(::rtl::OUString(RTL_CONSTASCII_USTRINGPARAM("com.sun.star.chart2.data.DataProvider"))),uno::UNO_QUERY); + xReceiver->attachDataProvider( xDataProvider.get() ); + } +} +// ----------------------------------------------------------------------------- void OOle2Obj::initializeChart( const uno::Reference< frame::XModel>& _xModel) { uno::Reference < embed::XEmbeddedObject > xObj = GetObjRef(); @@ -1046,9 +1065,8 @@ if( xChartModel.is() ) xChartModel->lockControllers(); - uno::Reference< lang::XMultiServiceFactory> xFac(_xModel,uno::UNO_QUERY_THROW); - uno::Reference< chart2::data::XDatabaseDataProvider > xDataProvider( xFac->createInstance(::rtl::OUString(RTL_CONSTASCII_USTRINGPARAM("com.sun.star.chart2.data.DataProvider"))),uno::UNO_QUERY); - xReceiver->attachDataProvider( xDataProvider.get() ); + if ( !lcl_getDataProvider(xObj).is() ) + impl_createDataProvider_nothrow(_xModel); uno::Reference< util::XNumberFormatsSupplier > xNumberFormatsSupplier( _xModel, uno::UNO_QUERY ); xReceiver->attachNumberFormatsSupplier( xNumberFormatsSupplier ); Directory: /dba/reportdesign/source/filter/xml/ =============================================== File [changed]: xmlHelper.cxx Url: http://dba.openoffice.org/source/browse/dba/reportdesign/source/filter/xml/xmlHelper.cxx?r1=1.6.4.2&r2=1.6.4.3 Delta lines: +22 -18 --------------------- --- xmlHelper.cxx 2008-04-16 06:29:05+0000 1.6.4.2 +++ xmlHelper.cxx 2008-05-16 12:53:21+0000 1.6.4.3 @@ -7,7 +7,7 @@ * OpenOffice.org - a multi-platform office productivity suite * * $RCSfile: xmlHelper.cxx,v $ - * $Revision: 1.6.4.2 $ + * $Revision: 1.6.4.3 $ * * This file is part of OpenOffice.org. * @@ -353,6 +353,8 @@ if ( xReportControlModel.is() ) { + try + { sal_Int16 nTextAlign = xReportControlModel->getParaAdjust(); switch(nTextAlign) { @@ -371,6 +373,8 @@ } xReportControlModel->setParaAdjust(nTextAlign); } + catch(beans::UnknownPropertyException){} + } } catch(uno::Exception&) { Directory: /dba/reportdesign/source/ui/report/ ============================================== File [changed]: ViewsWindow.cxx Url: http://dba.openoffice.org/source/browse/dba/reportdesign/source/ui/report/ViewsWindow.cxx?r1=1.7.22.5&r2=1.7.22.6 Delta lines: +3 -3 ------------------- --- ViewsWindow.cxx 2008-05-15 12:29:39+0000 1.7.22.5 +++ ViewsWindow.cxx 2008-05-16 12:53:21+0000 1.7.22.6 @@ -7,7 +7,7 @@ * OpenOffice.org - a multi-platform office productivity suite * * $RCSfile: ViewsWindow.cxx,v $ - * $Revision: 1.7.22.5 $ + * $Revision: 1.7.22.6 $ * * This file is part of OpenOffice.org. * @@ -1300,8 +1300,8 @@ BegDragObj_createInvisibleObjectAtPosition(aRect, pView); // calculate the clickpoint - sal_Int32 nDeltaX = abs(aRect.Left() - aAbsolutePnt.X()); - sal_Int32 nDeltaY = abs(aRect.Top() - aAbsolutePnt.Y()); + const sal_Int32 nDeltaX = abs(aRect.Left() - aAbsolutePnt.X()); + const sal_Int32 nDeltaY = abs(aRect.Top() - aAbsolutePnt.Y()); if (m_aDragDelta.X() > nDeltaX) m_aDragDelta.X() = nDeltaX; if (m_aDragDelta.Y() > nDeltaY) --------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
