summaryrefslogtreecommitdiff
path: root/reportdesign
diff options
context:
space:
mode:
Diffstat (limited to 'reportdesign')
-rw-r--r--reportdesign/source/core/api/ReportDefinition.cxx1
-rw-r--r--reportdesign/source/filter/xml/xmlExportDocumentHandler.cxx2
-rw-r--r--reportdesign/source/filter/xml/xmlImportDocumentHandler.cxx14
-rw-r--r--reportdesign/source/ui/report/FormattedFieldBeautifier.cxx7
-rw-r--r--reportdesign/source/ui/report/ReportController.cxx2
5 files changed, 20 insertions, 6 deletions
diff --git a/reportdesign/source/core/api/ReportDefinition.cxx b/reportdesign/source/core/api/ReportDefinition.cxx
index bcc90b54b8b6..2cf848dc0c84 100644
--- a/reportdesign/source/core/api/ReportDefinition.cxx
+++ b/reportdesign/source/core/api/ReportDefinition.cxx
@@ -1299,6 +1299,7 @@ void SAL_CALL OReportDefinition::close( ::sal_Bool _bDeliverOwnership ) throw (u
::connectivity::checkDisposed(ReportDefinitionBase::rBHelper.bDisposed);
::comphelper::MediaDescriptor aDescriptor( _aArguments );
fillArgs(aDescriptor);
+ m_pImpl->m_pReportModel->SetModified(sal_False);
return sal_True;
}
// -----------------------------------------------------------------------------
diff --git a/reportdesign/source/filter/xml/xmlExportDocumentHandler.cxx b/reportdesign/source/filter/xml/xmlExportDocumentHandler.cxx
index e86e46221e50..3fa6b42e625b 100644
--- a/reportdesign/source/filter/xml/xmlExportDocumentHandler.cxx
+++ b/reportdesign/source/filter/xml/xmlExportDocumentHandler.cxx
@@ -289,7 +289,9 @@ void SAL_CALL ExportDocumentHandler::endElement(const ::rtl::OUString & _sName)
void SAL_CALL ExportDocumentHandler::characters(const ::rtl::OUString & aChars) throw (uno::RuntimeException, xml::sax::SAXException)
{
if ( !(m_bTableRowsStarted || m_bFirstRowExported) )
+ {
m_xDelegatee->characters(aChars);
+ }
else if ( m_bExportChar )
{
static const ::rtl::OUString s_sZero(RTL_CONSTASCII_USTRINGPARAM("0"));
diff --git a/reportdesign/source/filter/xml/xmlImportDocumentHandler.cxx b/reportdesign/source/filter/xml/xmlImportDocumentHandler.cxx
index 4adbd142d4c8..c92eecc1084d 100644
--- a/reportdesign/source/filter/xml/xmlImportDocumentHandler.cxx
+++ b/reportdesign/source/filter/xml/xmlImportDocumentHandler.cxx
@@ -30,6 +30,7 @@
#include <com/sun/star/sdb/CommandType.hpp>
#include <com/sun/star/chart2/data/DatabaseDataProvider.hpp>
#include <com/sun/star/chart2/data/XDataReceiver.hpp>
+#include <com/sun/star/chart/XComplexDescriptionAccess.hpp>
#include <com/sun/star/chart/ChartDataRowSource.hpp>
#include <com/sun/star/reflection/XProxyFactory.hpp>
#include <com/sun/star/sdb/CommandType.hpp>
@@ -122,7 +123,6 @@ void SAL_CALL ImportDocumentHandler::endDocument() throw (uno::RuntimeException,
uno::Reference< chart2::data::XDataReceiver > xReceiver(m_xModel,uno::UNO_QUERY_THROW);
if ( xReceiver.is() )
{
- xReceiver->attachDataProvider(m_xDatabaseDataProvider.get());
// this fills the chart again
uno::Sequence< beans::PropertyValue > aArgs( 4 );
aArgs[0] = beans::PropertyValue(
@@ -137,6 +137,18 @@ void SAL_CALL ImportDocumentHandler::endDocument() throw (uno::RuntimeException,
aArgs[3] = beans::PropertyValue(
::rtl::OUString::createFromAscii("DataRowSource"), -1,
uno::makeAny( chart::ChartDataRowSource_COLUMNS ), beans::PropertyState_DIRECT_VALUE );
+
+ uno::Reference< chart::XComplexDescriptionAccess > xDataProvider(m_xModel->getDataProvider(),uno::UNO_QUERY);
+ if ( xDataProvider.is() )
+ {
+ aArgs.realloc(5);
+ uno::Sequence< uno::Sequence< ::rtl::OUString > > aColumnNames = xDataProvider->getComplexColumnDescriptions();
+ aArgs[4] = beans::PropertyValue(
+ ::rtl::OUString::createFromAscii("ComplexColumnDescriptions"), -1,
+ uno::makeAny( aColumnNames ), beans::PropertyState_DIRECT_VALUE );
+ }
+ xReceiver->attachDataProvider(m_xDatabaseDataProvider.get());
+
xReceiver->setArguments( aArgs );
}
}
diff --git a/reportdesign/source/ui/report/FormattedFieldBeautifier.cxx b/reportdesign/source/ui/report/FormattedFieldBeautifier.cxx
index e44325dec05f..fdfdad6cb55f 100644
--- a/reportdesign/source/ui/report/FormattedFieldBeautifier.cxx
+++ b/reportdesign/source/ui/report/FormattedFieldBeautifier.cxx
@@ -88,11 +88,10 @@ namespace rptui
void FormattedFieldBeautifier::setPlaceholderText( const uno::Reference< uno::XInterface >& _rxComponent )
{
::rtl::OUString sDataField;
- uno::Reference< report::XReportComponent > xComponent( _rxComponent, uno::UNO_QUERY );
try
{
- uno::Reference< report::XReportControlModel > xControlModel( xComponent, uno::UNO_QUERY );
+ uno::Reference< report::XFormattedField > xControlModel( _rxComponent, uno::UNO_QUERY );
if ( xControlModel.is() )
{
sDataField = xControlModel->getDataField();
@@ -119,8 +118,8 @@ namespace rptui
}
}
- if ( xComponent.is() )
- setPlaceholderText( getVclWindowPeer( xComponent ), sDataField );
+ if ( xControlModel.is() )
+ setPlaceholderText( getVclWindowPeer( xControlModel.get() ), sDataField );
}
catch (uno::Exception)
{
diff --git a/reportdesign/source/ui/report/ReportController.cxx b/reportdesign/source/ui/report/ReportController.cxx
index a5280b7d93a3..6d13804fe7fa 100644
--- a/reportdesign/source/ui/report/ReportController.cxx
+++ b/reportdesign/source/ui/report/ReportController.cxx
@@ -333,7 +333,7 @@ IMPLEMENT_FORWARD_XINTERFACE2(OReportController,OReportController_BASE,OReportCo
void OReportController::disposing()
{
- if ( getView() && m_pClipbordNotifier )
+ if ( m_pClipbordNotifier )
{
m_pClipbordNotifier->ClearCallbackLink();
m_pClipbordNotifier->AddRemoveListener( getView(), sal_False );