summaryrefslogtreecommitdiff
path: root/reportdesign
diff options
context:
space:
mode:
authorIlhan Yesil <ilhanyesil@gmx.de>2018-05-08 14:17:56 +0200
committerLionel Elie Mamane <lionel@mamane.lu>2019-09-13 10:45:01 +0200
commit260caebf8a2382bcde1fb9ff74ceb1b940654e6f (patch)
treedcf1cea94f62144c9ae533cba3e6bf7040bb1e81 /reportdesign
parentd27e70fce2acfc9b14f2f07c9096daa50dc2acd8 (diff)
tdf#45789 [API CHANGE] Automatic row height in reports
The controls have now an AutoGrow flag which is saved as style:min-row-height instead of style:row-height on style:table-row-properties in content.xml. In this case the table row height will be allowed to grow to accommodate the content. Note: in the conceptual model of reportdesigner this is a per-control property but in the current implementation, it is a per-row property in the ODF file. Thus, as soon as one control in the row has the AutoGrow property set, they all do. Change-Id: I95c25599e06af0f2f12e72a7cfc0881206f02039 Reviewed-on: https://gerrit.libreoffice.org/53977 Reviewed-by: Lionel Elie Mamane <lionel@mamane.lu> Tested-by: Jenkins
Diffstat (limited to 'reportdesign')
-rw-r--r--reportdesign/inc/ReportHelperDefines.hxx2
-rw-r--r--reportdesign/inc/helpids.h1
-rw-r--r--reportdesign/inc/strings.hrc1
-rw-r--r--reportdesign/inc/strings.hxx2
-rw-r--r--reportdesign/source/core/inc/ReportComponent.hxx2
-rw-r--r--reportdesign/source/core/inc/ReportHelperImpl.hxx9
-rw-r--r--reportdesign/source/filter/xml/xmlColumn.cxx25
-rw-r--r--reportdesign/source/filter/xml/xmlExport.cxx39
-rw-r--r--reportdesign/source/filter/xml/xmlExport.hxx1
-rw-r--r--reportdesign/source/filter/xml/xmlHelper.cxx3
-rw-r--r--reportdesign/source/filter/xml/xmlTable.cxx2
-rw-r--r--reportdesign/source/filter/xml/xmlTable.hxx7
-rw-r--r--reportdesign/source/ui/inc/metadata.hxx61
-rw-r--r--reportdesign/source/ui/inspection/GeometryHandler.cxx1
-rw-r--r--reportdesign/source/ui/inspection/metadata.cxx2
15 files changed, 118 insertions, 40 deletions
diff --git a/reportdesign/inc/ReportHelperDefines.hxx b/reportdesign/inc/ReportHelperDefines.hxx
index 86f5c7a18e2c..5eeb0b40c1cf 100644
--- a/reportdesign/inc/ReportHelperDefines.hxx
+++ b/reportdesign/inc/ReportHelperDefines.hxx
@@ -45,6 +45,8 @@
virtual void SAL_CALL setPositionY(::sal_Int32 the_value) override; \
virtual ::sal_Int32 SAL_CALL getWidth() override; \
virtual void SAL_CALL setWidth(::sal_Int32 the_value) override; \
+ virtual sal_Bool SAL_CALL getAutoGrow() override; \
+ virtual void SAL_CALL setAutoGrow(sal_Bool the_value) override; \
virtual ::sal_Int16 SAL_CALL getControlBorder() override; \
virtual void SAL_CALL setControlBorder(::sal_Int16 the_value) override; \
virtual ::sal_Int32 SAL_CALL getControlBorderColor() override; \
diff --git a/reportdesign/inc/helpids.h b/reportdesign/inc/helpids.h
index 9f481d4eb389..ba35fde1abbf 100644
--- a/reportdesign/inc/helpids.h
+++ b/reportdesign/inc/helpids.h
@@ -75,6 +75,7 @@
#define HID_RPT_PROP_RPT_POSITIONY "REPORTDESIGN_HID_RPT_PROP_RPT_POSITIONY"
#define HID_RPT_PROP_RPT_WIDTH "REPORTDESIGN_HID_RPT_PROP_RPT_WIDTH"
#define HID_RPT_PROP_RPT_HEIGHT "REPORTDESIGN_HID_RPT_PROP_RPT_HEIGHT"
+#define HID_RPT_PROP_RPT_AUTOGROW "REPORTDESIGN_HID_RPT_PROP_RPT_AUTOGROW"
#define HID_RPT_START_TITLE "REPORTDESIGN_HID_RPT_START_TITLE"
#define HID_RPT_START_IMAGE "REPORTDESIGN_HID_RPT_START_IMAGE"
#define HID_RPT_PROP_DEEPTRAVERSING "REPORTDESIGN_HID_RPT_PROP_DEEPTRAVERSING"
diff --git a/reportdesign/inc/strings.hrc b/reportdesign/inc/strings.hrc
index bcabc42faa08..0856156447d0 100644
--- a/reportdesign/inc/strings.hrc
+++ b/reportdesign/inc/strings.hrc
@@ -47,6 +47,7 @@
#define RID_STR_POSITIONY NC_("RID_STR_POSITIONY", "Position Y")
#define RID_STR_WIDTH NC_("RID_STR_WIDTH", "Width")
#define RID_STR_HEIGHT NC_("RID_STR_HEIGHT", "Height")
+#define RID_STR_AUTOGROW NC_("RID_STR_AUTOGROW", "Auto Grow")
#define RID_STR_INITIALFORMULA NC_("RID_STR_INITIALFORMULA", "Initial value")
#define RID_STR_PRESERVEIRI NC_("RID_STR_PRESERVEIRI", "Preserve as Link")
#define RID_STR_FORMULA NC_("RID_STR_FORMULA", "Formula")
diff --git a/reportdesign/inc/strings.hxx b/reportdesign/inc/strings.hxx
index 06d88c360909..917e6898775e 100644
--- a/reportdesign/inc/strings.hxx
+++ b/reportdesign/inc/strings.hxx
@@ -73,6 +73,8 @@
#define PROPERTY_WIDTH "Width"
#define PROPERTY_POSITIONX "PositionX"
#define PROPERTY_POSITIONY "PositionY"
+#define PROPERTY_AUTOGROW "AutoGrow"
+#define PROPERTY_MINHEIGHT "MinHeight"
#define PROPERTY_DATAFIELD "DataField"
#define PROPERTY_PARAADJUST "ParaAdjust"
#define PROPERTY_FONTDESCRIPTOR "FontDescriptor"
diff --git a/reportdesign/source/core/inc/ReportComponent.hxx b/reportdesign/source/core/inc/ReportComponent.hxx
index 6025d72608ef..b6f9660402a4 100644
--- a/reportdesign/source/core/inc/ReportComponent.hxx
+++ b/reportdesign/source/core/inc/ReportComponent.hxx
@@ -55,6 +55,7 @@ namespace reportdesign
::sal_Int32 m_nBorderColor;
::sal_Int16 m_nBorder;
bool m_bPrintRepeatedValues;
+ bool m_bAutoGrow;
OReportComponentProperties(
css::uno::Reference<css::uno::XComponentContext> const& xContext)
@@ -66,6 +67,7 @@ namespace reportdesign
, m_nBorderColor(0)
, m_nBorder(2)
, m_bPrintRepeatedValues(true)
+ , m_bAutoGrow(false)
{}
~OReportComponentProperties();
diff --git a/reportdesign/source/core/inc/ReportHelperImpl.hxx b/reportdesign/source/core/inc/ReportHelperImpl.hxx
index 47acf133a5f2..b6352de35715 100644
--- a/reportdesign/source/core/inc/ReportHelperImpl.hxx
+++ b/reportdesign/source/core/inc/ReportHelperImpl.hxx
@@ -74,6 +74,15 @@ uno::Reference< report::XSection > SAL_CALL clazz::getSection() \
::osl::MutexGuard aGuard(m_aMutex); \
uno::Reference< container::XChild > xParent(getParent( ),uno::UNO_QUERY); \
return lcl_getSection(xParent); \
+} \
+sal_Bool SAL_CALL clazz::getAutoGrow() \
+{ \
+ ::osl::MutexGuard aGuard(m_aMutex); \
+ return (arg).m_bAutoGrow; \
+} \
+void SAL_CALL clazz::setAutoGrow(sal_Bool _autogrow) \
+{ \
+ set(PROPERTY_AUTOGROW,static_cast<bool>(_autogrow),(arg).m_bAutoGrow); \
}
#define REPORTCOMPONENT_IMPL(clazz,arg) \
diff --git a/reportdesign/source/filter/xml/xmlColumn.cxx b/reportdesign/source/filter/xml/xmlColumn.cxx
index a5216aa7bc8e..f2e949356053 100644
--- a/reportdesign/source/filter/xml/xmlColumn.cxx
+++ b/reportdesign/source/filter/xml/xmlColumn.cxx
@@ -33,8 +33,9 @@
#include <com/sun/star/beans/PropertyAttribute.hpp>
#include <strings.hxx>
-#define PROPERTY_ID_WIDTH 1
-#define PROPERTY_ID_HEIGHT 2
+#define PROPERTY_ID_WIDTH 1
+#define PROPERTY_ID_HEIGHT 2
+#define PROPERTY_ID_MINHEIGHT 3
namespace rptxml
{
@@ -130,9 +131,10 @@ void OXMLRowColumn::fillStyle(const OUString& _sStyleName)
PropertySetInfo* pInfo = new PropertySetInfo();
static PropertyMapEntry const pMap[] =
{
- {OUString(PROPERTY_WIDTH), PROPERTY_ID_WIDTH, ::cppu::UnoType<sal_Int32>::get() ,PropertyAttribute::BOUND,0},
- {OUString(PROPERTY_HEIGHT), PROPERTY_ID_HEIGHT, ::cppu::UnoType<sal_Int32>::get() ,PropertyAttribute::BOUND,0},
- { OUString(), 0, css::uno::Type(), 0, 0 }
+ {OUString(PROPERTY_WIDTH), PROPERTY_ID_WIDTH, ::cppu::UnoType<sal_Int32>::get() ,PropertyAttribute::BOUND,0},
+ {OUString(PROPERTY_HEIGHT), PROPERTY_ID_HEIGHT, ::cppu::UnoType<sal_Int32>::get() ,PropertyAttribute::BOUND,0 },
+ {OUString(PROPERTY_MINHEIGHT), PROPERTY_ID_MINHEIGHT, ::cppu::UnoType<sal_Int32>::get() ,PropertyAttribute::BOUND,0 },
+ {OUString(), 0, css::uno::Type(), 0, 0 }
};
pInfo->add(pMap);
Reference<XPropertySet> xProp = GenericPropertySet_CreateInstance(pInfo);
@@ -151,8 +153,19 @@ void OXMLRowColumn::fillStyle(const OUString& _sStyleName)
{
pAutoStyle->FillPropertySet(xProp);
sal_Int32 nHeight = 0;
+ sal_Int32 nMinHeight = 0;
xProp->getPropertyValue(PROPERTY_HEIGHT) >>= nHeight;
- m_pContainer->addHeight(nHeight);
+ xProp->getPropertyValue(PROPERTY_MINHEIGHT) >>= nMinHeight;
+ if (nHeight == 0 && nMinHeight > 0)
+ {
+ m_pContainer->addHeight(nMinHeight);
+ m_pContainer->addAutoHeight(true);
+ }
+ else
+ {
+ m_pContainer->addHeight(nHeight);
+ m_pContainer->addAutoHeight(false);
+ }
}
}
}
diff --git a/reportdesign/source/filter/xml/xmlExport.cxx b/reportdesign/source/filter/xml/xmlExport.cxx
index ce77628ea17c..43abca700f9f 100644
--- a/reportdesign/source/filter/xml/xmlExport.cxx
+++ b/reportdesign/source/filter/xml/xmlExport.cxx
@@ -504,6 +504,29 @@ void ORptExport::collectStyleNames(sal_Int32 _nFamily,const ::std::vector< sal_I
}
}
+void ORptExport::collectStyleNames(sal_Int32 _nFamily, const ::std::vector< sal_Int32>& _aSize, const ::std::vector< sal_Int32>& _aSizeAutoGrow, std::vector<OUString>& _rStyleNames)
+{
+ ::std::vector< XMLPropertyState > aPropertyStates;
+ aPropertyStates.emplace_back(0);
+ ::std::vector<sal_Int32>::const_iterator aIter = _aSize.begin();
+ ::std::vector<sal_Int32>::const_iterator aIter2 = aIter + 1;
+ ::std::vector<sal_Int32>::const_iterator aEnd = _aSize.end();
+ for (;aIter2 != aEnd; ++aIter, ++aIter2)
+ {
+ sal_Int32 nValue = static_cast<sal_Int32>(*aIter2 - *aIter);
+ aPropertyStates[0].maValue <<= nValue;
+ // note: there cannot be 0-height rows, because a call to std::unique has removed them
+ // it cannot be predicted that the size of _aSizeAutoGrow has any relation to the size of
+ // _aSize, because of the same std::unique operation (and _aSizeAutoGrow wasn't even the same
+ // size before that), so the matching elemenent in _aSizeAutoGrow has to be found by lookup.
+ ::std::vector<sal_Int32>::const_iterator aAutoGrow = ::std::find(_aSizeAutoGrow.begin(), _aSizeAutoGrow.end(), *aIter2);
+ bool bAutoGrow = aAutoGrow != _aSizeAutoGrow.end();
+ // the mnIndex is into the array returned by OXMLHelper::GetRowStyleProps()
+ aPropertyStates[0].mnIndex = bAutoGrow ? 1 : 0;
+ _rStyleNames.push_back(GetAutoStylePool()->Add(_nFamily, aPropertyStates));
+ }
+}
+
void ORptExport::exportSectionAutoStyle(const Reference<XSection>& _xProp)
{
OSL_ENSURE(_xProp != nullptr,"Section is NULL -> GPF");
@@ -524,6 +547,11 @@ void ORptExport::exportSectionAutoStyle(const Reference<XSection>& _xProp)
aRowPos.push_back(0);
aRowPos.push_back(_xProp->getHeight());
+
+ ::std::vector<sal_Int32> aRowPosAutoGrow;
+ aRowPosAutoGrow.reserve(2 * (nCount + 1));
+
+
sal_Int32 i;
for (i = 0 ; i< nCount ; ++i)
{
@@ -552,11 +580,20 @@ void ORptExport::exportSectionAutoStyle(const Reference<XSection>& _xProp)
aRowPos.push_back(nY);
nY += xReportElement->getHeight();
aRowPos.push_back(nY); // --nY why?
+ bool bAutoGrow = xReportElement->getAutoGrow();
+ if (bAutoGrow)
+ {
+ // the resulting table row ending at nY should auto-grow
+ aRowPosAutoGrow.push_back(nY);
+ }
}
::std::sort(aColumnPos.begin(),aColumnPos.end(),::std::less<sal_Int32>());
aColumnPos.erase(::std::unique(aColumnPos.begin(),aColumnPos.end()),aColumnPos.end());
+ // note: the aRowPos contains top and bottom position of every report control; we now compute the
+ // top of every row in the resulting table, by sorting and eliminating unnecessary duplicate
+ // positions. (the same for the colums in the preceding lines.)
::std::sort(aRowPos.begin(),aRowPos.end(),::std::less<sal_Int32>());
aRowPos.erase(::std::unique(aRowPos.begin(),aRowPos.end()),aRowPos.end());
@@ -569,7 +606,7 @@ void ORptExport::exportSectionAutoStyle(const Reference<XSection>& _xProp)
TGridStyleMap::iterator aPos = m_aColumnStyleNames.emplace(_xProp.get(),std::vector<OUString>()).first;
collectStyleNames(XML_STYLE_FAMILY_TABLE_COLUMN,aColumnPos,aPos->second);
aPos = m_aRowStyleNames.emplace(_xProp.get(),std::vector<OUString>()).first;
- collectStyleNames(XML_STYLE_FAMILY_TABLE_ROW,aRowPos,aPos->second);
+ collectStyleNames(XML_STYLE_FAMILY_TABLE_ROW, aRowPos, aRowPosAutoGrow, aPos->second);
sal_Int32 x1 = 0;
sal_Int32 y1 = 0;
diff --git a/reportdesign/source/filter/xml/xmlExport.hxx b/reportdesign/source/filter/xml/xmlExport.hxx
index 5f71c3d25e37..97355c888158 100644
--- a/reportdesign/source/filter/xml/xmlExport.hxx
+++ b/reportdesign/source/filter/xml/xmlExport.hxx
@@ -131,6 +131,7 @@ private:
void exportReportComponentAutoStyles(const Reference<XSection>& _xProp);
void collectComponentStyles();
void collectStyleNames(sal_Int32 _nFamily,const ::std::vector< sal_Int32>& _aSize, std::vector<OUString>& _rStyleNames);
+ void collectStyleNames(sal_Int32 _nFamily,const ::std::vector< sal_Int32>& _aSize, const ::std::vector< sal_Int32>& _aSizeAutoGrow, std::vector<OUString>& _rStyleNames);
void exportParagraph(const Reference< XReportControlModel >& _xReportElement);
bool exportFormula(enum ::xmloff::token::XMLTokenEnum eName,const OUString& _sFormula);
void exportGroupsExpressionAsFunction(const Reference< XGroups>& _xGroups);
diff --git a/reportdesign/source/filter/xml/xmlHelper.cxx b/reportdesign/source/filter/xml/xmlHelper.cxx
index 313ee4dd445e..714b1db2460f 100644
--- a/reportdesign/source/filter/xml/xmlHelper.cxx
+++ b/reportdesign/source/filter/xml/xmlHelper.cxx
@@ -172,7 +172,8 @@ const XMLPropertyMapEntry* OXMLHelper::GetRowStyleProps()
{
static const XMLPropertyMapEntry aXMLStylesProperties[] =
{
- MAP_CONST_S( "Height", STYLE, ROW_HEIGHT, XML_TYPE_PROP_TABLE_ROW|XML_TYPE_MEASURE, 0),
+ MAP_CONST_S("Height", STYLE, ROW_HEIGHT, XML_TYPE_PROP_TABLE_ROW | XML_TYPE_MEASURE, 0),
+ MAP_CONST_S("MinHeight", STYLE, MIN_ROW_HEIGHT, XML_TYPE_PROP_TABLE_ROW | XML_TYPE_MEASURE, 0),
MAP_END()
};
return aXMLStylesProperties;
diff --git a/reportdesign/source/filter/xml/xmlTable.cxx b/reportdesign/source/filter/xml/xmlTable.cxx
index 60030675a095..af7272437ba4 100644
--- a/reportdesign/source/filter/xml/xmlTable.cxx
+++ b/reportdesign/source/filter/xml/xmlTable.cxx
@@ -245,6 +245,7 @@ void OXMLTable::EndElement()
{
rxElement->setSize(awt::Size(nWidth,nHeight));
rxElement->setPosition(awt::Point(nPosX,nPosY));
+ rxElement->setAutoGrow(rCell.bAutoHeight);
}
catch(const beans::PropertyVetoException &)
{
@@ -278,6 +279,7 @@ void OXMLTable::addCell(const Reference<XReportComponent>& _xElement)
{
rCell.nWidth = m_aWidth[m_nColumnIndex-1];
rCell.nHeight = m_aHeight[m_nRowIndex-1];
+ rCell.bAutoHeight = m_aAutoHeight[m_nRowIndex-1];
rCell.nColSpan = m_nColSpan;
rCell.nRowSpan = m_nRowSpan;
}
diff --git a/reportdesign/source/filter/xml/xmlTable.hxx b/reportdesign/source/filter/xml/xmlTable.hxx
index d8d76f2814e6..cf377ffd0323 100644
--- a/reportdesign/source/filter/xml/xmlTable.hxx
+++ b/reportdesign/source/filter/xml/xmlTable.hxx
@@ -35,12 +35,14 @@ namespace rptxml
sal_Int32 nHeight;
sal_Int32 nColSpan;
sal_Int32 nRowSpan;
+ bool bAutoHeight;
::std::vector< css::uno::Reference< css::report::XReportComponent> > xElements;
- TCell() : nWidth(0),nHeight(0),nColSpan(1),nRowSpan(1){}
+ TCell() : nWidth(0),nHeight(0),nColSpan(1),nRowSpan(1),bAutoHeight(false){}
};
private:
::std::vector< ::std::vector<TCell> > m_aGrid;
::std::vector<sal_Int32> m_aHeight;
+ ::std::vector<bool> m_aAutoHeight;
::std::vector<sal_Int32> m_aWidth;
css::uno::Reference< css::report::XSection > m_xSection;
OUString m_sStyleName;
@@ -68,7 +70,8 @@ namespace rptxml
virtual void EndElement() override;
- void addHeight(sal_Int32 _nHeight) { m_aHeight.push_back( _nHeight ); }
+ void addHeight(sal_Int32 _nHeight) { m_aHeight.push_back(_nHeight); }
+ void addAutoHeight(bool _bAutoHeight) { m_aAutoHeight.push_back(_bAutoHeight); }
void addWidth(sal_Int32 _nWidth) { m_aWidth.push_back( _nWidth ); }
void setColumnSpanned(sal_Int32 _nColSpan) { m_nColSpan = _nColSpan; }
diff --git a/reportdesign/source/ui/inc/metadata.hxx b/reportdesign/source/ui/inc/metadata.hxx
index fd2594c11c14..30bc0c34f07e 100644
--- a/reportdesign/source/ui/inc/metadata.hxx
+++ b/reportdesign/source/ui/inc/metadata.hxx
@@ -105,36 +105,37 @@ namespace rptui
#define PROPERTY_ID_POSITIONY 13
#define PROPERTY_ID_WIDTH 14
#define PROPERTY_ID_HEIGHT 15
- #define PROPERTY_ID_FORMULA 16
- #define PROPERTY_ID_CONDITIONALPRINTEXPRESSION 17
- #define PROPERTY_ID_PRINTREPEATEDVALUES 18
- #define PROPERTY_ID_PRINTWHENGROUPCHANGE 19
- #define PROPERTY_ID_INITIALFORMULA 20
- #define PROPERTY_ID_STARTNEWCOLUMN 21
- #define PROPERTY_ID_TYPE 22
- #define PROPERTY_ID_DATAFIELD 23
- #define PROPERTY_ID_CHARFONTNAME 24
- #define PROPERTY_ID_DEEPTRAVERSING 25
- #define PROPERTY_ID_PREEVALUATED 26
-
- #define PROPERTY_ID_BACKTRANSPARENT 27
- #define PROPERTY_ID_CONTROLBACKGROUNDTRANSPARENT 28
- #define PROPERTY_ID_BACKCOLOR 29
- #define PROPERTY_ID_CONTROLBACKGROUND 30
-
- #define PROPERTY_ID_FORMULALIST 31
- #define PROPERTY_ID_SCOPE 32
- #define PROPERTY_ID_RESETPAGENUMBER 33
- #define PROPERTY_ID_CHARTTYPE 34
- #define PROPERTY_ID_MASTERFIELDS 35
- #define PROPERTY_ID_DETAILFIELDS 36
- #define PROPERTY_ID_PREVIEW_COUNT 37
- #define PROPERTY_ID_AREA 38
- #define PROPERTY_ID_MIMETYPE 39
-
- #define PROPERTY_ID_FONT 40
- #define PROPERTY_ID_PARAADJUST 41
- #define PROPERTY_ID_VERTICALALIGN 42
+ #define PROPERTY_ID_AUTOGROW 16
+ #define PROPERTY_ID_FORMULA 17
+ #define PROPERTY_ID_CONDITIONALPRINTEXPRESSION 18
+ #define PROPERTY_ID_PRINTREPEATEDVALUES 19
+ #define PROPERTY_ID_PRINTWHENGROUPCHANGE 20
+ #define PROPERTY_ID_INITIALFORMULA 21
+ #define PROPERTY_ID_STARTNEWCOLUMN 22
+ #define PROPERTY_ID_TYPE 23
+ #define PROPERTY_ID_DATAFIELD 24
+ #define PROPERTY_ID_CHARFONTNAME 25
+ #define PROPERTY_ID_DEEPTRAVERSING 26
+ #define PROPERTY_ID_PREEVALUATED 27
+
+ #define PROPERTY_ID_BACKTRANSPARENT 28
+ #define PROPERTY_ID_CONTROLBACKGROUNDTRANSPARENT 29
+ #define PROPERTY_ID_BACKCOLOR 30
+ #define PROPERTY_ID_CONTROLBACKGROUND 31
+
+ #define PROPERTY_ID_FORMULALIST 32
+ #define PROPERTY_ID_SCOPE 33
+ #define PROPERTY_ID_RESETPAGENUMBER 34
+ #define PROPERTY_ID_CHARTTYPE 35
+ #define PROPERTY_ID_MASTERFIELDS 36
+ #define PROPERTY_ID_DETAILFIELDS 37
+ #define PROPERTY_ID_PREVIEW_COUNT 38
+ #define PROPERTY_ID_AREA 39
+ #define PROPERTY_ID_MIMETYPE 40
+
+ #define PROPERTY_ID_FONT 41
+ #define PROPERTY_ID_PARAADJUST 42
+ #define PROPERTY_ID_VERTICALALIGN 43
} // namespace rptui
diff --git a/reportdesign/source/ui/inspection/GeometryHandler.cxx b/reportdesign/source/ui/inspection/GeometryHandler.cxx
index 86bdade20e35..20e37bf6413c 100644
--- a/reportdesign/source/ui/inspection/GeometryHandler.cxx
+++ b/reportdesign/source/ui/inspection/GeometryHandler.cxx
@@ -1315,6 +1315,7 @@ uno::Sequence< beans::Property > SAL_CALL GeometryHandler::getSupportedPropertie
,OUString(PROPERTY_POSITIONY)
,OUString(PROPERTY_WIDTH)
,OUString(PROPERTY_HEIGHT)
+ ,OUString(PROPERTY_AUTOGROW)
,OUString(PROPERTY_PREEVALUATED)
,OUString(PROPERTY_DEEPTRAVERSING)
,OUString(PROPERTY_FORMULA)
diff --git a/reportdesign/source/ui/inspection/metadata.cxx b/reportdesign/source/ui/inspection/metadata.cxx
index 14e4a3088871..2fd4bc6bf20d 100644
--- a/reportdesign/source/ui/inspection/metadata.cxx
+++ b/reportdesign/source/ui/inspection/metadata.cxx
@@ -118,6 +118,7 @@ namespace rptui
,DEF_INFO_1( POSITIONY, POSITIONY, RPT_POSITIONY, Composeable )
,DEF_INFO_1( WIDTH, WIDTH, RPT_WIDTH, Composeable )
,DEF_INFO_1( HEIGHT, HEIGHT, RPT_HEIGHT, Composeable )
+ ,DEF_INFO_1( AUTOGROW, AUTOGROW, RPT_AUTOGROW, Composeable )
,DEF_INFO_1( FONT, FONT, RPT_FONT, Composeable )
,DEF_INFO_1( PREEVALUATED, PREEVALUATED, PREEVALUATED, Composeable )
,DEF_INFO_1( DEEPTRAVERSING, DEEPTRAVERSING, DEEPTRAVERSING, Composeable )
@@ -268,6 +269,7 @@ namespace rptui
,PROPERTY_POSITIONY
,PROPERTY_WIDTH
,PROPERTY_HEIGHT
+ ,PROPERTY_AUTOGROW
,PROPERTY_FONT
,PROPERTY_LABEL
,PROPERTY_LINECOLOR