summaryrefslogtreecommitdiff
path: root/reportdesign
diff options
context:
space:
mode:
authorLionel Elie Mamane <lionel@mamane.lu>2013-02-19 11:38:16 +0100
committerLionel Elie Mamane <lionel@mamane.lu>2013-02-19 12:35:02 +0100
commit532421d208f21531d55554a356dd51105ba718bf (patch)
tree5a49f44ab94fb2efed4cd97350a23f81721b4688 /reportdesign
parent818b84eb1573b55961cba56baca857806c0e8c8b (diff)
fdo#52948 fix print-repeated-values=no with formatted values
Factorise the "should this element be printed" decision into an utility function, which is used by 1) AbstractReportElementLayoutController (in charge of non-formatted values: string, image, OLE object, ...) which already obeyed PrintRepeatedValues. 2) TableCellLayoutController (in charge of formatted values: dates, numbers, ...) which blissfully ignored PrintRepeatedValues, but obeyed the display condition. Rename the inconsistently named PrintWhenGroupChange PrintWhenGroupChanges print-only-when-group-change print-when-group-change to PrintWhenGroupChange / print-when-group-change Change the meaning of "PrintWhenGroupChange" to "override PrintRepeatedValues in first occurrence in group". Since this feature never worked under the old semantics, no loss of feature. Since we change the XML attribute name, no ascending compatibility problem: it will be reset to its default value. Pursuant to the new meaning of PrintWhenGroupChange, change its default to *true*, which is the sane default. Change-Id: Idbe8e90565a354f70db222d047b3d51eeddbbb9f
Diffstat (limited to 'reportdesign')
-rw-r--r--reportdesign/source/core/inc/ReportControlModel.hxx2
-rw-r--r--reportdesign/source/filter/xml/xmlEnums.hxx4
-rw-r--r--reportdesign/source/filter/xml/xmlExport.cxx2
-rw-r--r--reportdesign/source/filter/xml/xmlReportElement.cxx8
-rw-r--r--reportdesign/source/filter/xml/xmlfilter.cxx2
5 files changed, 9 insertions, 9 deletions
diff --git a/reportdesign/source/core/inc/ReportControlModel.hxx b/reportdesign/source/core/inc/ReportControlModel.hxx
index c327cfc3f754..43a8f73f89ca 100644
--- a/reportdesign/source/core/inc/ReportControlModel.hxx
+++ b/reportdesign/source/core/inc/ReportControlModel.hxx
@@ -100,7 +100,7 @@ namespace reportdesign
,aComponent(_xContext)
,m_pOwner(_pOwner)
,m_rMutex(_rMutex)
- ,bPrintWhenGroupChange(sal_False)
+ ,bPrintWhenGroupChange(sal_True)
{}
// XContainer
diff --git a/reportdesign/source/filter/xml/xmlEnums.hxx b/reportdesign/source/filter/xml/xmlEnums.hxx
index 120c153aa13b..53df992246ea 100644
--- a/reportdesign/source/filter/xml/xmlEnums.hxx
+++ b/reportdesign/source/filter/xml/xmlEnums.hxx
@@ -116,9 +116,9 @@ namespace rptxml
};
enum XMLReportElement
{
- XML_TOK_PRINT_ONLY_WHEN_GROUP_CHANGE
+ XML_TOK_PRINT_WHEN_GROUP_CHANGE
,XML_TOK_REP_CONDITIONAL_PRINT_EXPRESSION
- ,XML_TOK_PRINT_REPEATED_VALUES
+ ,XML_TOK_PRINT_REPEATED_VALUES
,XML_TOK_COMPONENT
,XML_TOK_FORMATCONDITION
};
diff --git a/reportdesign/source/filter/xml/xmlExport.cxx b/reportdesign/source/filter/xml/xmlExport.cxx
index f6379026a3bb..df6a24eae2ee 100644
--- a/reportdesign/source/filter/xml/xmlExport.cxx
+++ b/reportdesign/source/filter/xml/xmlExport.cxx
@@ -472,7 +472,7 @@ void ORptExport::exportReportElement(const Reference<XReportControlModel>& _xRep
{
OSL_ENSURE(_xReportElement.is(),"_xReportElement is NULL -> GPF");
if ( _xReportElement->getPrintWhenGroupChange() )
- AddAttribute(XML_NAMESPACE_REPORT, XML_PRINT_ONLY_WHEN_GROUP_CHANGE, XML_TRUE );
+ AddAttribute(XML_NAMESPACE_REPORT, XML_PRINT_WHEN_GROUP_CHANGE, XML_TRUE );
if ( !_xReportElement->getPrintRepeatedValues() )
AddAttribute(XML_NAMESPACE_REPORT, XML_PRINT_REPEATED_VALUES,XML_FALSE);
diff --git a/reportdesign/source/filter/xml/xmlReportElement.cxx b/reportdesign/source/filter/xml/xmlReportElement.cxx
index c857e8af7a18..2c4d6c893feb 100644
--- a/reportdesign/source/filter/xml/xmlReportElement.cxx
+++ b/reportdesign/source/filter/xml/xmlReportElement.cxx
@@ -55,18 +55,18 @@ OXMLReportElement::OXMLReportElement( ORptFilter& rImport,
{
for(sal_Int16 i = 0; i < nLength; ++i)
{
- ::rtl::OUString sLocalName;
+ ::rtl::OUString sLocalName;
const rtl::OUString sAttrName = _xAttrList->getNameByIndex( i );
const sal_uInt16 nPrefix = rMap.GetKeyByAttrName( sAttrName,&sLocalName );
const rtl::OUString sValue = _xAttrList->getValueByIndex( i );
switch( rTokenMap.Get( nPrefix, sLocalName ) )
{
- case XML_TOK_PRINT_ONLY_WHEN_GROUP_CHANGE:
+ case XML_TOK_PRINT_WHEN_GROUP_CHANGE:
m_xComponent->setPrintWhenGroupChange(s_sTRUE == sValue);
break;
- case XML_TOK_PRINT_REPEATED_VALUES:
- m_xComponent->setPrintRepeatedValues(sValue == s_sTRUE ? sal_True : sal_False);
+ case XML_TOK_PRINT_REPEATED_VALUES:
+ m_xComponent->setPrintRepeatedValues(sValue == s_sTRUE);
break;
default:
break;
diff --git a/reportdesign/source/filter/xml/xmlfilter.cxx b/reportdesign/source/filter/xml/xmlfilter.cxx
index 2854a66ee6f4..a3d0cc7a312f 100644
--- a/reportdesign/source/filter/xml/xmlfilter.cxx
+++ b/reportdesign/source/filter/xml/xmlfilter.cxx
@@ -820,7 +820,7 @@ const SvXMLTokenMap& ORptFilter::GetReportElementElemTokenMap() const
static SvXMLTokenMapEntry aElemTokenMap[]=
{
{ XML_NAMESPACE_REPORT, XML_PRINT_REPEATED_VALUES ,XML_TOK_PRINT_REPEATED_VALUES },
- { XML_NAMESPACE_REPORT, XML_PRINT_ONLY_WHEN_GROUP_CHANGE,XML_TOK_PRINT_ONLY_WHEN_GROUP_CHANGE },
+ { XML_NAMESPACE_REPORT, XML_PRINT_WHEN_GROUP_CHANGE ,XML_TOK_PRINT_WHEN_GROUP_CHANGE },
{ XML_NAMESPACE_REPORT, XML_CONDITIONAL_PRINT_EXPRESSION,XML_TOK_REP_CONDITIONAL_PRINT_EXPRESSION },
{ XML_NAMESPACE_REPORT, XML_REPORT_COMPONENT ,XML_TOK_COMPONENT },
{ XML_NAMESPACE_REPORT, XML_FORMAT_CONDITION ,XML_TOK_FORMATCONDITION },