diff options
author | Ivo Hinkelmann <ihi@openoffice.org> | 2011-01-18 17:50:24 +0100 |
---|---|---|
committer | Ivo Hinkelmann <ihi@openoffice.org> | 2011-01-18 17:50:24 +0100 |
commit | f2f73a0b2aad85b4e3bc0d322641257dec3e77ce (patch) | |
tree | 0dcc82a9c2604f2b8935ae159c7c1395b557ea3d | |
parent | 3fabeaf37fdae81a650f28ac96c25ecd1cb5d57b (diff) | |
parent | 5552b67b05ba0b25d83af32aa4a4c5bd91813121 (diff) |
CWS-TOOLING: integrate CWS chartextensibility
-rw-r--r-- | svx/inc/svx/unoshtxt.hxx | 2 | ||||
-rw-r--r-- | svx/source/svdraw/svdotext.cxx | 4 | ||||
-rw-r--r-- | svx/source/unodraw/unoshtxt.cxx | 8 | ||||
-rw-r--r-- | xmloff/source/chart/SchXMLExport.cxx | 15 | ||||
-rw-r--r-- | xmloff/source/chart/SchXMLTableContext.cxx | 30 | ||||
-rw-r--r-- | xmloff/source/chart/transporttypes.hxx | 5 |
6 files changed, 55 insertions, 9 deletions
diff --git a/svx/inc/svx/unoshtxt.hxx b/svx/inc/svx/unoshtxt.hxx index c06d3955b442..07e6ef79f7ca 100644 --- a/svx/inc/svx/unoshtxt.hxx +++ b/svx/inc/svx/unoshtxt.hxx @@ -90,6 +90,8 @@ public: void ChangeModel( SdrModel* pNewModel ); + void UpdateOutliner(); + private: SVX_DLLPRIVATE SvxTextEditSource( SvxTextEditSourceImpl* pImpl ); diff --git a/svx/source/svdraw/svdotext.cxx b/svx/source/svdraw/svdotext.cxx index 7b9185ca7d3b..f10e3bf33fc3 100644 --- a/svx/source/svdraw/svdotext.cxx +++ b/svx/source/svdraw/svdotext.cxx @@ -1430,8 +1430,6 @@ void SdrTextObj::UpdateOutlinerFormatting( SdrOutliner& rOutl, Rectangle& rPaint FASTBOOL bContourFrame=IsContourTextFrame(); - ImpSetupDrawOutlinerForPaint( bContourFrame, rOutl, aTextRect, aAnchorRect, rPaintRect, aFitXKorreg ); - if( GetModel() ) { MapMode aMapMode(GetModel()->GetScaleUnit(), Point(0,0), @@ -1439,6 +1437,8 @@ void SdrTextObj::UpdateOutlinerFormatting( SdrOutliner& rOutl, Rectangle& rPaint GetModel()->GetScaleFraction()); rOutl.SetRefMapMode(aMapMode); } + + ImpSetupDrawOutlinerForPaint( bContourFrame, rOutl, aTextRect, aAnchorRect, rPaintRect, aFitXKorreg ); } //////////////////////////////////////////////////////////////////////////////////////////////////// diff --git a/svx/source/unodraw/unoshtxt.cxx b/svx/source/unodraw/unoshtxt.cxx index 04770faf694b..f82283417be6 100644 --- a/svx/source/unodraw/unoshtxt.cxx +++ b/svx/source/unodraw/unoshtxt.cxx @@ -122,7 +122,6 @@ private: SvxDrawOutlinerViewForwarder* CreateViewForwarder(); void SetupOutliner(); - void UpdateOutliner(); sal_Bool HasView() const { return mpView ? sal_True : sal_False; } sal_Bool IsEditMode() const @@ -168,6 +167,8 @@ public: virtual void ObjectInDestruction(const SdrObject& rObject); void ChangeModel( SdrModel* pNewModel ); + + void UpdateOutliner(); }; //------------------------------------------------------------------------ @@ -1147,3 +1148,8 @@ void SvxTextEditSource::ChangeModel( SdrModel* pNewModel ) { mpImpl->ChangeModel( pNewModel ); } + +void SvxTextEditSource::UpdateOutliner() +{ + mpImpl->UpdateOutliner(); +} diff --git a/xmloff/source/chart/SchXMLExport.cxx b/xmloff/source/chart/SchXMLExport.cxx index 358cb023199c..3b28fb4839bd 100644 --- a/xmloff/source/chart/SchXMLExport.cxx +++ b/xmloff/source/chart/SchXMLExport.cxx @@ -1598,6 +1598,21 @@ void SchXMLExportHelper_Impl::exportTable() // table element // ------------- mrExport.AddAttribute( XML_NAMESPACE_TABLE, XML_NAME, msTableName ); + + try + { + bool bProtected = false; + Reference< beans::XPropertySet > xProps( mrExport.GetModel(), uno::UNO_QUERY_THROW ); + if ( ( xProps->getPropertyValue( OUString( RTL_CONSTASCII_USTRINGPARAM( "DisableDataTableDialog" ) ) ) >>= bProtected ) && + bProtected ) + { + mrExport.AddAttribute( XML_NAMESPACE_TABLE, XML_PROTECTED, XML_TRUE ); + } + } + catch ( uno::Exception& ) + { + } + SvXMLElementExport aTable( mrExport, XML_NAMESPACE_TABLE, XML_TABLE, sal_True, sal_True ); bool bHasOwnData = false; diff --git a/xmloff/source/chart/SchXMLTableContext.cxx b/xmloff/source/chart/SchXMLTableContext.cxx index cc01a7d1c050..8f584bb5d6ac 100644 --- a/xmloff/source/chart/SchXMLTableContext.cxx +++ b/xmloff/source/chart/SchXMLTableContext.cxx @@ -375,12 +375,19 @@ void SchXMLTableContext::StartElement( const uno::Reference< xml::sax::XAttribut rtl::OUString sAttrName = xAttrList->getNameByIndex( i ); rtl::OUString aLocalName; USHORT nPrefix = GetImport().GetNamespaceMap().GetKeyByAttrName( sAttrName, &aLocalName ); - - if( nPrefix == XML_NAMESPACE_TABLE && - IsXMLToken( aLocalName, XML_NAME ) ) + if ( nPrefix == XML_NAMESPACE_TABLE ) { - mrTable.aTableNameOfFile = xAttrList->getValueByIndex( i ); - break; // we only need this attribute + if ( IsXMLToken( aLocalName, XML_NAME ) ) + { + mrTable.aTableNameOfFile = xAttrList->getValueByIndex( i ); + } + else if ( IsXMLToken( aLocalName, XML_PROTECTED ) ) + { + if ( IsXMLToken( xAttrList->getValueByIndex( i ), XML_TRUE ) ) + { + mrTable.bProtected = true; + } + } } } } @@ -928,6 +935,19 @@ void SchXMLTableHelper::applyTableToInternalDataProvider( xDataAccess->setComplexRowDescriptions( aComplexRowDescriptions ); if( rTable.bHasHeaderRow ) xDataAccess->setComplexColumnDescriptions( aComplexColumnDescriptions ); + + if ( rTable.bProtected ) + { + try + { + Reference< beans::XPropertySet > xProps( xChartDoc, uno::UNO_QUERY_THROW ); + xProps->setPropertyValue( OUString( RTL_CONSTASCII_USTRINGPARAM( "DisableDataTableDialog" ) ), uno::makeAny( sal_True ) ); + xProps->setPropertyValue( OUString( RTL_CONSTASCII_USTRINGPARAM( "DisableComplexChartTypes" ) ), uno::makeAny( sal_True ) ); + } + catch ( uno::Exception& ) + { + } + } } void SchXMLTableHelper::switchRangesFromOuterToInternalIfNecessary( diff --git a/xmloff/source/chart/transporttypes.hxx b/xmloff/source/chart/transporttypes.hxx index 27c8850e2b81..599741dfe273 100644 --- a/xmloff/source/chart/transporttypes.hxx +++ b/xmloff/source/chart/transporttypes.hxx @@ -87,12 +87,15 @@ struct SchXMLTable ::std::vector< sal_Int32 > aHiddenColumns; + bool bProtected; + SchXMLTable() : nRowIndex( -1 ), nColumnIndex( -1 ), nMaxColumnIndex( -1 ), nNumberOfColsEstimate( 0 ), bHasHeaderRow( false ), - bHasHeaderColumn( false ) + bHasHeaderColumn( false ), + bProtected( false ) {} }; |