diff options
author | Caolán McNamara <caolanm@redhat.com> | 2020-09-16 10:20:56 +0100 |
---|---|---|
committer | Caolán McNamara <caolanm@redhat.com> | 2020-09-18 14:22:13 +0200 |
commit | 30bb3657ee78b7d3b0a7d26f80bf1ff94b16f51c (patch) | |
tree | e2f96cc04c33f3e62c422505a4cdd5e0740ea9f6 /sc | |
parent | 897bd0517d835ba00458279311e5d8ff11079dd7 (diff) |
ScAddress::Parse never passed a null ScDocument*
Change-Id: I8832f2cc4311b30b9a15883e831260a19d089a57
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/102974
Tested-by: Jenkins
Reviewed-by: Caolán McNamara <caolanm@redhat.com>
Diffstat (limited to 'sc')
36 files changed, 71 insertions, 71 deletions
diff --git a/sc/inc/address.hxx b/sc/inc/address.hxx index fce2fc648275..ee33fbeba4a2 100644 --- a/sc/inc/address.hxx +++ b/sc/inc/address.hxx @@ -324,7 +324,7 @@ public: resulting reference is fully valid or not. */ SC_DLLPUBLIC ScRefFlags Parse( - const OUString&, const ScDocument* = nullptr, + const OUString&, const ScDocument&, const Details& rDetails = detailsOOOa1, ExternalInfo* pExtInfo = nullptr, const css::uno::Sequence<css::sheet::ExternalLinkInfo>* pExternalLinks = nullptr, diff --git a/sc/qa/unit/helper/qahelper.cxx b/sc/qa/unit/helper/qahelper.cxx index b0a6084d9db9..130ff024cf87 100644 --- a/sc/qa/unit/helper/qahelper.cxx +++ b/sc/qa/unit/helper/qahelper.cxx @@ -404,7 +404,7 @@ ScRangeList getChartRanges(ScDocument& rDoc, const SdrOle2Obj& rChartObj) { // Parse it as a single cell address. ScAddress aAddr; - nRes = aAddr.Parse(aRangeReps[i], &rDoc, rDoc.GetAddressConvention()); + nRes = aAddr.Parse(aRangeReps[i], rDoc, rDoc.GetAddressConvention()); CPPUNIT_ASSERT_MESSAGE("Failed to parse a range representation.", (nRes & ScRefFlags::VALID)); aRanges.push_back(aAddr); } diff --git a/sc/qa/unit/helper/shared_test_impl.hxx b/sc/qa/unit/helper/shared_test_impl.hxx index e5bffd5c8f06..92c05c6d7e9a 100644 --- a/sc/qa/unit/helper/shared_test_impl.hxx +++ b/sc/qa/unit/helper/shared_test_impl.hxx @@ -280,7 +280,7 @@ void testCeilingFloor_Impl( ScDocument& rDoc ) // Sheet1.K1 has =AND(K3:K81) to evaluate all results. const char pORef[] = "Sheet1.K1"; ScAddress aPos; - aPos.Parse(pORef, &rDoc); + aPos.Parse(pORef, rDoc); ASSERT_FORMULA_EQUAL(rDoc, aPos, "AND(K3:K81)", "Wrong formula."); CPPUNIT_ASSERT_MESSAGE( OString( pORef + OStringLiteral(" result is error.")).getStr(), isFormulaWithoutError( rDoc, aPos)); diff --git a/sc/qa/unit/range.cxx b/sc/qa/unit/range.cxx index f20def220318..21add9ee37fe 100644 --- a/sc/qa/unit/range.cxx +++ b/sc/qa/unit/range.cxx @@ -40,7 +40,7 @@ void ScAddressTest::testAddressParsing() { ScAddress aAddr; ScDocument& rDoc = m_xDocShRef->GetDocument(); - ScRefFlags nRes = aAddr.Parse("1", &rDoc, formula::FormulaGrammar::CONV_OOO); + ScRefFlags nRes = aAddr.Parse("1", rDoc, formula::FormulaGrammar::CONV_OOO); CPPUNIT_ASSERT_MESSAGE("Should fail to parse.", !(nRes & ScRefFlags::VALID)); } diff --git a/sc/qa/unit/subsequent_filters-test.cxx b/sc/qa/unit/subsequent_filters-test.cxx index e2033cadebc6..203460654d17 100644 --- a/sc/qa/unit/subsequent_filters-test.cxx +++ b/sc/qa/unit/subsequent_filters-test.cxx @@ -4332,7 +4332,7 @@ void ScFiltersTest::testEmptyRowsXLSXML() } ScAddress aPos; - aPos.Parse("B9", &rDoc); + aPos.Parse("B9", rDoc); ASSERT_FORMULA_EQUAL(rDoc, aPos, "SUM(B4:B8)", nullptr); xDocSh->DoClose(); diff --git a/sc/qa/unit/ucalc_formula.cxx b/sc/qa/unit/ucalc_formula.cxx index 00bffef9de29..e226103849c8 100644 --- a/sc/qa/unit/ucalc_formula.cxx +++ b/sc/qa/unit/ucalc_formula.cxx @@ -286,28 +286,28 @@ void Test::testFormulaParseReference() ScAddress aPos; ScAddress::ExternalInfo aExtInfo; - ScRefFlags nRes = aPos.Parse("'90''s Music'.D10", m_pDoc, formula::FormulaGrammar::CONV_OOO, &aExtInfo); + ScRefFlags nRes = aPos.Parse("'90''s Music'.D10", *m_pDoc, formula::FormulaGrammar::CONV_OOO, &aExtInfo); CPPUNIT_ASSERT_MESSAGE("Failed to parse.", (nRes & ScRefFlags::VALID)); CPPUNIT_ASSERT_EQUAL(static_cast<SCTAB>(1), aPos.Tab()); CPPUNIT_ASSERT_EQUAL(static_cast<SCCOL>(3), aPos.Col()); CPPUNIT_ASSERT_EQUAL(static_cast<SCROW>(9), aPos.Row()); CPPUNIT_ASSERT_MESSAGE("This is not an external address.", !aExtInfo.mbExternal); - nRes = aPos.Parse("'90''s and 70''s'.C100", m_pDoc, formula::FormulaGrammar::CONV_OOO, &aExtInfo); + nRes = aPos.Parse("'90''s and 70''s'.C100", *m_pDoc, formula::FormulaGrammar::CONV_OOO, &aExtInfo); CPPUNIT_ASSERT_MESSAGE("Failed to parse.", (nRes & ScRefFlags::VALID)); CPPUNIT_ASSERT_EQUAL(static_cast<SCTAB>(2), aPos.Tab()); CPPUNIT_ASSERT_EQUAL(static_cast<SCCOL>(2), aPos.Col()); CPPUNIT_ASSERT_EQUAL(static_cast<SCROW>(99), aPos.Row()); CPPUNIT_ASSERT_MESSAGE("This is not an external address.", !aExtInfo.mbExternal); - nRes = aPos.Parse("'All Others'.B3", m_pDoc, formula::FormulaGrammar::CONV_OOO, &aExtInfo); + nRes = aPos.Parse("'All Others'.B3", *m_pDoc, formula::FormulaGrammar::CONV_OOO, &aExtInfo); CPPUNIT_ASSERT_MESSAGE("Failed to parse.", (nRes & ScRefFlags::VALID)); CPPUNIT_ASSERT_EQUAL(static_cast<SCTAB>(3), aPos.Tab()); CPPUNIT_ASSERT_EQUAL(static_cast<SCCOL>(1), aPos.Col()); CPPUNIT_ASSERT_EQUAL(static_cast<SCROW>(2), aPos.Row()); CPPUNIT_ASSERT_MESSAGE("This is not an external address.", !aExtInfo.mbExternal); - nRes = aPos.Parse("NoQuote.E13", m_pDoc, formula::FormulaGrammar::CONV_OOO, &aExtInfo); + nRes = aPos.Parse("NoQuote.E13", *m_pDoc, formula::FormulaGrammar::CONV_OOO, &aExtInfo); CPPUNIT_ASSERT_MESSAGE("Failed to parse.", (nRes & ScRefFlags::VALID)); CPPUNIT_ASSERT_EQUAL(static_cast<SCTAB>(4), aPos.Tab()); CPPUNIT_ASSERT_EQUAL(static_cast<SCCOL>(4), aPos.Col()); diff --git a/sc/source/core/data/conditio.cxx b/sc/source/core/data/conditio.cxx index ee70b5d70a03..698ab22a05d5 100644 --- a/sc/source/core/data/conditio.cxx +++ b/sc/source/core/data/conditio.cxx @@ -439,7 +439,7 @@ void ScConditionEntry::CompileXML() ScAddress aNew; /* XML is always in OOo:A1 format, although R1C1 would be more amenable * to compression */ - if ( aNew.Parse( aSrcString, mpDoc ) & ScRefFlags::VALID ) + if ( aNew.Parse( aSrcString, *mpDoc ) & ScRefFlags::VALID ) aSrcPos = aNew; // if the position is invalid, there isn't much we can do at this time aSrcString.clear(); diff --git a/sc/source/core/tool/address.cxx b/sc/source/core/tool/address.cxx index 39e950aa0418..a9bf2125ae5b 100644 --- a/sc/source/core/tool/address.cxx +++ b/sc/source/core/tool/address.cxx @@ -1502,7 +1502,7 @@ bool ConvertSingleRef( const ScDocument& rDoc, const OUString& rRefString, if (pExtInfo || (ScGlobal::FindUnquoted( rRefString, SC_COMPILER_FILE_TAB_SEP) == -1)) { ScAddress aAddr( 0, 0, nDefTab ); - ScRefFlags nRes = aAddr.Parse( rRefString, &rDoc, rDetails, pExtInfo); + ScRefFlags nRes = aAddr.Parse( rRefString, rDoc, rDetails, pExtInfo); if ( nRes & ScRefFlags::VALID ) { rRefAddress.Set( aAddr, @@ -1541,14 +1541,14 @@ bool ConvertDoubleRef( const ScDocument& rDoc, const OUString& rRefString, SCTAB return bRet; } -ScRefFlags ScAddress::Parse( const OUString& r, const ScDocument* pDoc, +ScRefFlags ScAddress::Parse( const OUString& r, const ScDocument& rDoc, const Details& rDetails, ExternalInfo* pExtInfo, const uno::Sequence<sheet::ExternalLinkInfo>* pExternalLinks, sal_Int32* pSheetEndPos, const OUString* pErrRef ) { - return lcl_ScAddress_Parse( r.getStr(), pDoc, *this, rDetails, pExtInfo, pExternalLinks, pSheetEndPos, pErrRef); + return lcl_ScAddress_Parse( r.getStr(), &rDoc, *this, rDetails, pExtInfo, pExternalLinks, pSheetEndPos, pErrRef); } bool ScRange::Intersects( const ScRange& rRange ) const @@ -1777,7 +1777,7 @@ ScRefFlags ScRange::ParseAny( const OUString& rString, const ScDocument& rDoc, if ( (nRet & nValid) != nValid ) { ScAddress aAdr(aStart);//initialize with currentPos as fallback for table number - nRet = aAdr.Parse( rString, &rDoc, rDetails ); + nRet = aAdr.Parse( rString, rDoc, rDetails ); if ( nRet & ScRefFlags::VALID ) aStart = aEnd = aAdr; } diff --git a/sc/source/core/tool/compiler.cxx b/sc/source/core/tool/compiler.cxx index d9ceab95ea8f..c5c8c5d28ced 100644 --- a/sc/source/core/tool/compiler.cxx +++ b/sc/source/core/tool/compiler.cxx @@ -3232,7 +3232,7 @@ bool ScCompiler::IsSingleReference( const OUString& rName, const OUString* pErrR ScAddress aAddr( aPos ); const ScAddress::Details aDetails( pConv->meConv, aPos ); ScAddress::ExternalInfo aExtInfo; - ScRefFlags nFlags = aAddr.Parse( rName, &rDoc, aDetails, + ScRefFlags nFlags = aAddr.Parse( rName, rDoc, aDetails, &aExtInfo, &maExternalLinks, &mnCurrentSheetEndPos, pErrRef); // Something must be valid in order to recognize Sheet1.blah or blah.a1 // as a (wrong) reference. @@ -4154,7 +4154,7 @@ void ScCompiler::AutoCorrectParsedSymbol() { bChanged = true; ScAddress aAdr; - bOk &= ((aAdr.Parse( aRef[j], &rDoc, aDetails ) & nMask) == nMask); + bOk &= ((aAdr.Parse( aRef[j], rDoc, aDetails ) & nMask) == nMask); } } if ( bChanged && bOk ) diff --git a/sc/source/core/tool/rangenam.cxx b/sc/source/core/tool/rangenam.cxx index 5fa5cf59c3db..314a899098fc 100644 --- a/sc/source/core/tool/rangenam.cxx +++ b/sc/source/core/tool/rangenam.cxx @@ -452,7 +452,7 @@ void ScRangeData::MakeValidName( const ScDocument& rDoc, OUString& rName ) // Don't check Parse on VALID, any partial only VALID may result in // #REF! during compile later! while (aRange.Parse(rName, rDoc, details) != ScRefFlags::ZERO || - aAddr.Parse(rName, &rDoc, details) != ScRefFlags::ZERO) + aAddr.Parse(rName, rDoc, details) != ScRefFlags::ZERO) { // Range Parse is partially valid also with invalid sheet name, // Address Parse ditto, during compile name would generate a #REF! @@ -488,7 +488,7 @@ ScRangeData::IsNameValidType ScRangeData::IsNameValid( const OUString& rName, co // Don't check Parse on VALID, any partial only VALID may result in // #REF! during compile later! if (aRange.Parse(rName, rDoc, details) != ScRefFlags::ZERO || - aAddr.Parse(rName, &rDoc, details) != ScRefFlags::ZERO ) + aAddr.Parse(rName, rDoc, details) != ScRefFlags::ZERO ) { return NAME_INVALID_CELL_REF; } diff --git a/sc/source/core/tool/rangeutl.cxx b/sc/source/core/tool/rangeutl.cxx index 7582479dc05d..d069c63280a8 100644 --- a/sc/source/core/tool/rangeutl.cxx +++ b/sc/source/core/tool/rangeutl.cxx @@ -447,11 +447,11 @@ bool ScRangeStringConverter::GetAddressFromString( GetTokenByOffset( sToken, rAddressStr, nOffset, cSeparator, cQuote ); if( nOffset >= 0 ) { - if ((rAddress.Parse( sToken, &rDocument, eConv ) & ScRefFlags::VALID) == ScRefFlags::VALID) + if ((rAddress.Parse( sToken, rDocument, eConv ) & ScRefFlags::VALID) == ScRefFlags::VALID) return true; ::formula::FormulaGrammar::AddressConvention eConvUI = rDocument.GetAddressConvention(); if (eConv != eConvUI) - return ((rAddress.Parse(sToken, &rDocument, eConvUI) & ScRefFlags::VALID) == ScRefFlags::VALID); + return ((rAddress.Parse(sToken, rDocument, eConvUI) & ScRefFlags::VALID) == ScRefFlags::VALID); } return false; } @@ -477,11 +477,11 @@ bool ScRangeStringConverter::GetRangeFromString( { if ( aUIString[0] == '.' ) aUIString = aUIString.copy( 1 ); - bResult = (rRange.aStart.Parse( aUIString, &rDocument, eConv) & ScRefFlags::VALID) == + bResult = (rRange.aStart.Parse( aUIString, rDocument, eConv) & ScRefFlags::VALID) == ScRefFlags::VALID; ::formula::FormulaGrammar::AddressConvention eConvUI = rDocument.GetAddressConvention(); if (!bResult && eConv != eConvUI) - bResult = (rRange.aStart.Parse(aUIString, &rDocument, eConvUI) & ScRefFlags::VALID) == + bResult = (rRange.aStart.Parse(aUIString, rDocument, eConvUI) & ScRefFlags::VALID) == ScRefFlags::VALID; rRange.aEnd = rRange.aStart; } @@ -504,19 +504,19 @@ bool ScRangeStringConverter::GetRangeFromString( // This isn't parsed by ScRange, so try to parse the two Addresses then. if (!bResult) { - bResult = ((rRange.aStart.Parse( aUIString.copy(0, nIndex), &rDocument, eConv) + bResult = ((rRange.aStart.Parse( aUIString.copy(0, nIndex), rDocument, eConv) & ScRefFlags::VALID) == ScRefFlags::VALID) && - ((rRange.aEnd.Parse( aUIString.copy(nIndex+1), &rDocument, eConv) + ((rRange.aEnd.Parse( aUIString.copy(nIndex+1), rDocument, eConv) & ScRefFlags::VALID) == ScRefFlags::VALID); ::formula::FormulaGrammar::AddressConvention eConvUI = rDocument.GetAddressConvention(); if (!bResult && eConv != eConvUI) { - bResult = ((rRange.aStart.Parse( aUIString.copy(0, nIndex), &rDocument, eConvUI) + bResult = ((rRange.aStart.Parse( aUIString.copy(0, nIndex), rDocument, eConvUI) & ScRefFlags::VALID) == ScRefFlags::VALID) && - ((rRange.aEnd.Parse( aUIString.copy(nIndex+1), &rDocument, eConvUI) + ((rRange.aEnd.Parse( aUIString.copy(nIndex+1), rDocument, eConvUI) & ScRefFlags::VALID) == ScRefFlags::VALID); } } @@ -830,27 +830,27 @@ void ScRangeStringConverter::GetStringFromXMLRangeString( OUString& rString, con ScAddress::ExternalInfo aExtInfo1, aExtInfo2; ScAddress aCell1, aCell2; - ScRefFlags nRet = aCell1.Parse(aBeginCell, &rDoc, FormulaGrammar::CONV_OOO, &aExtInfo1); + ScRefFlags nRet = aCell1.Parse(aBeginCell, rDoc, FormulaGrammar::CONV_OOO, &aExtInfo1); if ((nRet & ScRefFlags::VALID) == ScRefFlags::ZERO) { // first cell is invalid. if (eConv == FormulaGrammar::CONV_OOO) continue; - nRet = aCell1.Parse(aBeginCell, &rDoc, eConv, &aExtInfo1); + nRet = aCell1.Parse(aBeginCell, rDoc, eConv, &aExtInfo1); if ((nRet & ScRefFlags::VALID) == ScRefFlags::ZERO) // first cell is really invalid. continue; } - nRet = aCell2.Parse(aEndCell, &rDoc, FormulaGrammar::CONV_OOO, &aExtInfo2); + nRet = aCell2.Parse(aEndCell, rDoc, FormulaGrammar::CONV_OOO, &aExtInfo2); if ((nRet & ScRefFlags::VALID) == ScRefFlags::ZERO) { // second cell is invalid. if (eConv == FormulaGrammar::CONV_OOO) continue; - nRet = aCell2.Parse(aEndCell, &rDoc, eConv, &aExtInfo2); + nRet = aCell2.Parse(aEndCell, rDoc, eConv, &aExtInfo2); if ((nRet & ScRefFlags::VALID) == ScRefFlags::ZERO) // second cell is really invalid. continue; @@ -874,10 +874,10 @@ void ScRangeStringConverter::GetStringFromXMLRangeString( OUString& rString, con // Chart always saves ranges using CONV_OOO convention. ScAddress::ExternalInfo aExtInfo; ScAddress aCell; - ScRefFlags nRet = aCell.Parse(aToken, &rDoc, ::formula::FormulaGrammar::CONV_OOO, &aExtInfo); + ScRefFlags nRet = aCell.Parse(aToken, rDoc, ::formula::FormulaGrammar::CONV_OOO, &aExtInfo); if ((nRet & ScRefFlags::VALID) == ScRefFlags::ZERO ) { - nRet = aCell.Parse(aToken, &rDoc, eConv, &aExtInfo); + nRet = aCell.Parse(aToken, rDoc, eConv, &aExtInfo); if ((nRet & ScRefFlags::VALID) == ScRefFlags::ZERO) continue; } diff --git a/sc/source/core/tool/reffind.cxx b/sc/source/core/tool/reffind.cxx index b4e7ea49eddf..9702da631d47 100644 --- a/sc/source/core/tool/reffind.cxx +++ b/sc/source/core/tool/reffind.cxx @@ -269,7 +269,7 @@ void ScRefFinder::ToggleRel( sal_Int32 nStartPos, sal_Int32 nEndPos ) // Check the validity of the expression, and toggle the relative flag. ScAddress::Details aDetails(meConv, maPos.Row(), maPos.Col()); ScAddress::ExternalInfo aExtInfo; - ScRefFlags nResult = aAddr.Parse(aExpr, &mrDoc, aDetails, &aExtInfo); + ScRefFlags nResult = aAddr.Parse(aExpr, mrDoc, aDetails, &aExtInfo); if ( nResult & ScRefFlags::VALID ) { ScRefFlags nFlags; @@ -292,7 +292,7 @@ void ScRefFinder::ToggleRel( sal_Int32 nStartPos, sal_Int32 nEndPos ) { OUString aRef = aExpr.copy(nSep+1); OUString aExtDocNameTabName = aExpr.copy(0, nSep+1); - nResult = aAddr.Parse(aRef, &mrDoc, aDetails); + nResult = aAddr.Parse(aRef, mrDoc, aDetails); aAddr.SetTab(0); // force to first tab to avoid error on checking nFlags = lcl_NextFlags( nResult ); aExpr = aExtDocNameTabName + aAddr.Format(nFlags, &mrDoc, aDetails); diff --git a/sc/source/filter/oox/revisionfragment.cxx b/sc/source/filter/oox/revisionfragment.cxx index 69d5786fe0ec..f6fee91c4051 100644 --- a/sc/source/filter/oox/revisionfragment.cxx +++ b/sc/source/filter/oox/revisionfragment.cxx @@ -164,7 +164,7 @@ private: OUString aRefStr = rAttribs.getString(XML_r, OUString()); if (!aRefStr.isEmpty()) { - mrPos.Parse(aRefStr, &getScDocument(), formula::FormulaGrammar::CONV_XL_OOX); + mrPos.Parse(aRefStr, getScDocument(), formula::FormulaGrammar::CONV_XL_OOX); if (mnSheetIndex != -1) mrPos.SetTab(mnSheetIndex-1); } diff --git a/sc/source/filter/orcus/interface.cxx b/sc/source/filter/orcus/interface.cxx index 142f78a5205b..ee426a17b223 100644 --- a/sc/source/filter/orcus/interface.cxx +++ b/sc/source/filter/orcus/interface.cxx @@ -164,7 +164,7 @@ os::src_address_t ScOrcusRefResolver::resolve_address(const char* p, size_t n) OUString aStr(p, n, mrGlobalSettings.getTextEncoding()); ScAddress aAddr; - aAddr.Parse(aStr, &mrGlobalSettings.getDoc().getDoc(), + aAddr.Parse(aStr, mrGlobalSettings.getDoc().getDoc(), formula::FormulaGrammar::extractRefConvention( mrGlobalSettings.getCalcGrammar())); diff --git a/sc/source/filter/xcl97/xcl97rec.cxx b/sc/source/filter/xcl97/xcl97rec.cxx index 59073a9b3516..0f8afceceb8f 100644 --- a/sc/source/filter/xcl97/xcl97rec.cxx +++ b/sc/source/filter/xcl97/xcl97rec.cxx @@ -1193,26 +1193,26 @@ ScRefFlags parseRange(const OUString& rString, ScRange& rRange, const ScDocument return rRange.Parse(rString, rDoc, formula::FormulaGrammar::CONV_XL_R1C1); } -ScRefFlags parseAddress(const OUString& rString, ScAddress& rAddress, const ScDocument* pDoc) +ScRefFlags parseAddress(const OUString& rString, ScAddress& rAddress, const ScDocument& rDoc) { // start with the address convention set in the document - formula::FormulaGrammar::AddressConvention eConv = pDoc->GetAddressConvention(); - ScRefFlags nResult = rAddress.Parse(rString, pDoc, eConv); + formula::FormulaGrammar::AddressConvention eConv = rDoc.GetAddressConvention(); + ScRefFlags nResult = rAddress.Parse(rString, rDoc, eConv); if ( nResult & ScRefFlags::VALID ) return nResult; // try the default calc address convention - nResult = rAddress.Parse(rString, pDoc); + nResult = rAddress.Parse(rString, rDoc); if ( nResult & ScRefFlags::VALID ) return nResult; // try excel a1 - nResult = rAddress.Parse(rString, pDoc, formula::FormulaGrammar::CONV_XL_A1); + nResult = rAddress.Parse(rString, rDoc, formula::FormulaGrammar::CONV_XL_A1); if ( nResult & ScRefFlags::VALID ) return nResult; // try r1c1 - return rAddress.Parse(rString, pDoc, formula::FormulaGrammar::CONV_XL_R1C1); + return rAddress.Parse(rString, rDoc, formula::FormulaGrammar::CONV_XL_R1C1); } void transformURL(const OUString& rOldURL, OUString& rNewURL, const ScDocument& rDoc) @@ -1235,7 +1235,7 @@ void transformURL(const OUString& rOldURL, OUString& rNewURL, const ScDocument& } else { - nResult = parseAddress(aAddressString, aAddress, &rDoc); + nResult = parseAddress(aAddressString, aAddress, rDoc); if( nResult & ScRefFlags::VALID ) { OUString aString = aAddress.Format(nResult, &rDoc, formula::FormulaGrammar::CONV_XL_OOX); diff --git a/sc/source/filter/xml/xmlcondformat.cxx b/sc/source/filter/xml/xmlcondformat.cxx index 944672bf0def..9c3ca0904b6c 100644 --- a/sc/source/filter/xml/xmlcondformat.cxx +++ b/sc/source/filter/xml/xmlcondformat.cxx @@ -258,7 +258,7 @@ void SAL_CALL ScXMLConditionalFormatContext::endFastElement( sal_Int32 /*nElemen ScAddress aSrcPos; OUString aSrcString = pCondFormatEntry->GetSrcString(); if ( !aSrcString.isEmpty() ) - aSrcPos.Parse( aSrcString, pDoc ); + aSrcPos.Parse( aSrcString, *pDoc ); ScCompiler aComp( *pDoc, aSrcPos ); aComp.SetGrammar( formula::FormulaGrammar::GRAM_ODFF ); pTokens = aComp.CompileString( pCondFormatEntry->GetExpression(aSrcPos, 0), "" ); diff --git a/sc/source/ui/app/inputwin.cxx b/sc/source/ui/app/inputwin.cxx index f2e36c577f40..d746b464ab78 100644 --- a/sc/source/ui/app/inputwin.cxx +++ b/sc/source/ui/app/inputwin.cxx @@ -2328,7 +2328,7 @@ static ScNameInputType lcl_GetInputType( const OUString& rText ) eRet = SC_MANAGE_NAMES; else if ( aRange.Parse( rText, rDoc, eConv ) & ScRefFlags::VALID ) eRet = SC_NAME_INPUT_RANGE; - else if ( aAddress.Parse( rText, &rDoc, eConv ) & ScRefFlags::VALID ) + else if ( aAddress.Parse( rText, rDoc, eConv ) & ScRefFlags::VALID ) eRet = SC_NAME_INPUT_CELL; else if ( ScRangeUtil::MakeRangeFromName( rText, rDoc, nTab, aRange, RUTL_NAMES, eConv ) ) eRet = SC_NAME_INPUT_NAMEDRANGE; diff --git a/sc/source/ui/dbgui/PivotLayoutDialog.cxx b/sc/source/ui/dbgui/PivotLayoutDialog.cxx index 2b1ab6abc576..a813a427f93e 100644 --- a/sc/source/ui/dbgui/PivotLayoutDialog.cxx +++ b/sc/source/ui/dbgui/PivotLayoutDialog.cxx @@ -590,7 +590,7 @@ bool ScPivotLayoutDialog::GetDestination(ScRange& aDestinationRange, bool& bToNe else if (mxDestinationRadioSelection->get_active()) { ScAddress aAddress; - aAddress.Parse(mxDestinationEdit->GetText(), &mrDocument, maAddressDetails); + aAddress.Parse(mxDestinationEdit->GetText(), mrDocument, maAddressDetails); aDestinationRange = ScRange(aAddress); } else diff --git a/sc/source/ui/dbgui/filtdlg.cxx b/sc/source/ui/dbgui/filtdlg.cxx index 46f32bf78fd6..ff4653f8d971 100644 --- a/sc/source/ui/dbgui/filtdlg.cxx +++ b/sc/source/ui/dbgui/filtdlg.cxx @@ -579,7 +579,7 @@ ScQueryItem* ScFilterDlg::GetOutputItem() if ( m_xBtnCopyResult->get_active() ) { ScRefFlags nResult = theCopyPos.Parse( - m_xEdCopyArea->GetText(), pDoc, pDoc->GetAddressConvention()); + m_xEdCopyArea->GetText(), *pDoc, pDoc->GetAddressConvention()); bCopyPosOk = (nResult & ScRefFlags::VALID) == ScRefFlags::VALID; } diff --git a/sc/source/ui/dbgui/foptmgr.cxx b/sc/source/ui/dbgui/foptmgr.cxx index cecf9be64afc..da323ed2f8bb 100644 --- a/sc/source/ui/dbgui/foptmgr.cxx +++ b/sc/source/ui/dbgui/foptmgr.cxx @@ -192,7 +192,7 @@ bool ScFilterOptionsMgr::VerifyPosStr( const OUString& rPosStr ) const if ( -1 != nColonPos ) aPosStr = aPosStr.copy( 0, nColonPos ); - ScRefFlags nResult = ScAddress().Parse( aPosStr, pDoc, pDoc->GetAddressConvention() ); + ScRefFlags nResult = ScAddress().Parse( aPosStr, *pDoc, pDoc->GetAddressConvention() ); return (nResult & ScRefFlags::VALID) == ScRefFlags::VALID; } @@ -219,7 +219,7 @@ IMPL_LINK( ScFilterOptionsMgr, EdAreaModifyHdl, formula::RefEdit&, rEd, void ) return; OUString theCurPosStr = rEd.GetText(); - ScRefFlags nResult = ScAddress().Parse( theCurPosStr, pDoc, pDoc->GetAddressConvention() ); + ScRefFlags nResult = ScAddress().Parse( theCurPosStr, *pDoc, pDoc->GetAddressConvention() ); if ( (nResult & ScRefFlags::VALID) == ScRefFlags::VALID) { diff --git a/sc/source/ui/dbgui/sfiltdlg.cxx b/sc/source/ui/dbgui/sfiltdlg.cxx index cd2c84a5b885..836767891b08 100644 --- a/sc/source/ui/dbgui/sfiltdlg.cxx +++ b/sc/source/ui/dbgui/sfiltdlg.cxx @@ -272,7 +272,7 @@ IMPL_LINK(ScSpecialFilterDlg, EndDlgHdl, weld::Button&, rBtn, void) if ( -1 != nColonPos ) theCopyStr = theCopyStr.copy( 0, nColonPos ); - ScRefFlags nResult = theAdrCopy.Parse( theCopyStr, pDoc, eConv ); + ScRefFlags nResult = theAdrCopy.Parse( theCopyStr, *pDoc, eConv ); if ( (nResult & ScRefFlags::VALID) == ScRefFlags::ZERO ) { diff --git a/sc/source/ui/dbgui/tpsort.cxx b/sc/source/ui/dbgui/tpsort.cxx index a0f7c14a923c..462d60efd623 100644 --- a/sc/source/ui/dbgui/tpsort.cxx +++ b/sc/source/ui/dbgui/tpsort.cxx @@ -746,7 +746,7 @@ DeactivateRC ScTabPageSortOptions::DeactivatePage( SfxItemSet* pSetP ) thePos.SetTab( pViewData->GetTabNo() ); } - ScRefFlags nResult = thePos.Parse( thePosStr, pDoc, pDoc->GetAddressConvention() ); + ScRefFlags nResult = thePos.Parse( thePosStr, *pDoc, pDoc->GetAddressConvention() ); bPosInputOk = (nResult & ScRefFlags::VALID) == ScRefFlags::VALID; @@ -848,7 +848,7 @@ IMPL_LINK_NOARG(ScTabPageSortOptions, SortDirHdl, weld::ToggleButton&, void) void ScTabPageSortOptions::EdOutPosModHdl() { OUString theCurPosStr = m_xEdOutPos->get_text(); - ScRefFlags nResult = ScAddress().Parse( theCurPosStr, pDoc, pDoc->GetAddressConvention() ); + ScRefFlags nResult = ScAddress().Parse( theCurPosStr, *pDoc, pDoc->GetAddressConvention() ); if ( (nResult & ScRefFlags::VALID) != ScRefFlags::VALID ) return; diff --git a/sc/source/ui/dialogs/searchresults.cxx b/sc/source/ui/dialogs/searchresults.cxx index 0f94c64f32e7..c855b7db87d7 100644 --- a/sc/source/ui/dialogs/searchresults.cxx +++ b/sc/source/ui/dialogs/searchresults.cxx @@ -224,7 +224,7 @@ IMPL_LINK_NOARG( SearchResultsDlg, ListSelectHdl, weld::TreeView&, void ) return; ScAddress aPos; - ScRefFlags nRes = aPos.Parse(aPosStr, mpDoc, mpDoc->GetAddressConvention()); + ScRefFlags nRes = aPos.Parse(aPosStr, *mpDoc, mpDoc->GetAddressConvention()); if (!(nRes & ScRefFlags::VALID)) // Invalid address string. return; diff --git a/sc/source/ui/docshell/docsh4.cxx b/sc/source/ui/docshell/docsh4.cxx index 8b752a0f5411..ecce1c5da91f 100644 --- a/sc/source/ui/docshell/docsh4.cxx +++ b/sc/source/ui/docshell/docsh4.cxx @@ -265,7 +265,7 @@ void ScDocShell::Execute( SfxRequest& rReq ) if ( !pDBColl || !pDBColl->getNamedDBs().findByUpperName(ScGlobal::getCharClassPtr()->uppercase(sTarget)) ) { ScAddress aPos; - if ( aPos.Parse( sTarget, &m_aDocument, m_aDocument.GetAddressConvention() ) & ScRefFlags::VALID ) + if ( aPos.Parse( sTarget, m_aDocument, m_aDocument.GetAddressConvention() ) & ScRefFlags::VALID ) { bMakeArea = true; if (bUndo) @@ -2460,7 +2460,7 @@ bool ScDocShell::DdeSetData( const OUString& rItem, // into ODF. ScRange aRange; bool bValid = ( (aRange.Parse(aPos, m_aDocument, formula::FormulaGrammar::CONV_OOO ) & ScRefFlags::VALID) || - (aRange.aStart.Parse(aPos, &m_aDocument, formula::FormulaGrammar::CONV_OOO) & ScRefFlags::VALID) ); + (aRange.aStart.Parse(aPos, m_aDocument, formula::FormulaGrammar::CONV_OOO) & ScRefFlags::VALID) ); ScServerObject* pObj = nullptr; // NULL = error if ( bValid ) diff --git a/sc/source/ui/docshell/impex.cxx b/sc/source/ui/docshell/impex.cxx index 68df1169a93f..4162f6869bc9 100644 --- a/sc/source/ui/docshell/impex.cxx +++ b/sc/source/ui/docshell/impex.cxx @@ -186,7 +186,7 @@ ScImportExport::ScImportExport( ScDocument& r, const OUString& rPos ) if (aRange.Parse(aPos, rDoc, eConv) & ScRefFlags::VALID) bSingle = false; // Cell? - else if (aRange.aStart.Parse(aPos, &rDoc, eConv) & ScRefFlags::VALID) + else if (aRange.aStart.Parse(aPos, rDoc, eConv) & ScRefFlags::VALID) aRange.aEnd = aRange.aStart; else bAll = true; diff --git a/sc/source/ui/docshell/servobj.cxx b/sc/source/ui/docshell/servobj.cxx index 84287b3f93d1..abec7bf8eb15 100644 --- a/sc/source/ui/docshell/servobj.cxx +++ b/sc/source/ui/docshell/servobj.cxx @@ -91,7 +91,7 @@ ScServerObject::ScServerObject( ScDocShell* pShell, const OUString& rItem ) : { // area reference } - else if ( aRange.aStart.Parse( rItem, &rDoc, FormulaGrammar::CONV_OOO ) & ScRefFlags::VALID ) + else if ( aRange.aStart.Parse( rItem, rDoc, FormulaGrammar::CONV_OOO ) & ScRefFlags::VALID ) { // cell reference aRange.aEnd = aRange.aStart; diff --git a/sc/source/ui/miscdlgs/solvrdlg.cxx b/sc/source/ui/miscdlgs/solvrdlg.cxx index e28d8625ab37..b6ffca11ea75 100644 --- a/sc/source/ui/miscdlgs/solvrdlg.cxx +++ b/sc/source/ui/miscdlgs/solvrdlg.cxx @@ -198,8 +198,8 @@ IMPL_LINK(ScSolverDlg, BtnHdl, weld::Button&, rBtn, void) // 3. has a valid target value been entered? const formula::FormulaGrammar::AddressConvention eConv = pDoc->GetAddressConvention(); - ScRefFlags nRes1 = theFormulaCell .Parse( m_xEdFormulaCell->GetText(), pDoc, eConv ); - ScRefFlags nRes2 = theVariableCell.Parse( m_xEdVariableCell->GetText(), pDoc, eConv ); + ScRefFlags nRes1 = theFormulaCell .Parse( m_xEdFormulaCell->GetText(), *pDoc, eConv ); + ScRefFlags nRes2 = theVariableCell.Parse( m_xEdVariableCell->GetText(), *pDoc, eConv ); if ( (nRes1 & ScRefFlags::VALID) == ScRefFlags::VALID ) { diff --git a/sc/source/ui/navipi/navcitem.cxx b/sc/source/ui/navipi/navcitem.cxx index 8e11edfca0a8..ba996ce1df79 100644 --- a/sc/source/ui/navipi/navcitem.cxx +++ b/sc/source/ui/navipi/navcitem.cxx @@ -51,7 +51,7 @@ void ScNavigatorControllerItem::StateChanged( sal_uInt16 /* nSID */, SfxItemStat { const OUString& aAddress( pCellPosItem->GetValue() ); ScAddress aScAddress; - aScAddress.Parse(aAddress, &pViewData->GetDocument()); + aScAddress.Parse(aAddress, pViewData->GetDocument()); SCCOL nCol = aScAddress.Col()+1; SCROW nRow = aScAddress.Row()+1; diff --git a/sc/source/ui/pagedlg/areasdlg.cxx b/sc/source/ui/pagedlg/areasdlg.cxx index 42223748f0f9..1a3a34cfc9f9 100644 --- a/sc/source/ui/pagedlg/areasdlg.cxx +++ b/sc/source/ui/pagedlg/areasdlg.cxx @@ -335,7 +335,7 @@ bool ScPrintAreasDlg::Impl_CheckRefStrings() ScRefFlags nResult = aRange.Parse( aOne, *pDoc, eConv ); if ((nResult & nValidRange) != nValidRange) { - ScRefFlags nAddrResult = aAddr.Parse( aOne, pDoc, eConv ); + ScRefFlags nAddrResult = aAddr.Parse( aOne, *pDoc, eConv ); if ((nAddrResult & nValidAddr) != nValidAddr) { bPrintAreaOk = false; diff --git a/sc/source/ui/unoobj/addruno.cxx b/sc/source/ui/unoobj/addruno.cxx index 4a7410b89281..0e307071d9ef 100644 --- a/sc/source/ui/unoobj/addruno.cxx +++ b/sc/source/ui/unoobj/addruno.cxx @@ -79,7 +79,7 @@ bool ScAddressConversionObj::ParseUIString( const OUString& rUIString, ::formula } else { - ScRefFlags nResult = aRange.aStart.Parse( rUIString, &rDoc, eConv ); + ScRefFlags nResult = aRange.aStart.Parse( rUIString, rDoc, eConv ); if ( nResult & ScRefFlags::VALID ) { if ( ( nResult & ScRefFlags::TAB_3D ) == ScRefFlags::ZERO ) diff --git a/sc/source/ui/unoobj/docuno.cxx b/sc/source/ui/unoobj/docuno.cxx index 237441bffef2..7799a28254ed 100644 --- a/sc/source/ui/unoobj/docuno.cxx +++ b/sc/source/ui/unoobj/docuno.cxx @@ -1401,7 +1401,7 @@ static bool lcl_ParseTarget( const OUString& rTarget, ScRange& rTargetRange, too { bRangeValid = true; // range reference } - else if ( aAddress.Parse( rTarget, &rDoc ) & ScRefFlags::VALID ) + else if ( aAddress.Parse( rTarget, rDoc ) & ScRefFlags::VALID ) { rTargetRange = aAddress; bRangeValid = true; // cell reference diff --git a/sc/source/ui/view/cellsh1.cxx b/sc/source/ui/view/cellsh1.cxx index f9c1ab975e35..8492d8d4e227 100644 --- a/sc/source/ui/view/cellsh1.cxx +++ b/sc/source/ui/view/cellsh1.cxx @@ -818,7 +818,7 @@ void ScCellShell::ExecuteEdit( SfxRequest& rReq ) ScAddress aScAddress; OUString aArg = static_cast<const SfxStringItem*>(pItem)->GetValue(); - if( aScAddress.Parse( aArg, &rDoc, rDoc.GetAddressConvention() ) & ScRefFlags::VALID ) + if( aScAddress.Parse( aArg, rDoc, rDoc.GetAddressConvention() ) & ScRefFlags::VALID ) { nFillRow = aScAddress.Row(); nFillCol = aScAddress.Col(); diff --git a/sc/source/ui/view/drawvie4.cxx b/sc/source/ui/view/drawvie4.cxx index e4f12a36626a..3066fe253ba9 100644 --- a/sc/source/ui/view/drawvie4.cxx +++ b/sc/source/ui/view/drawvie4.cxx @@ -252,7 +252,7 @@ void getOleSourceRanges(const SdrMarkList& rMarkList, bool& rAnyOle, bool& rOneO for(size_t i = 0; i < aRange.size(); ++i) pRanges->push_back(aRange[i]); } - else if (aAddr.Parse(rRangeRep, pDoc, pDoc->GetAddressConvention()) & ScRefFlags::VALID) + else if (aAddr.Parse(rRangeRep, *pDoc, pDoc->GetAddressConvention()) & ScRefFlags::VALID) pRanges->push_back(aAddr); } diff --git a/sc/source/ui/view/gridwin.cxx b/sc/source/ui/view/gridwin.cxx index e858a9337041..dad20101c4fc 100644 --- a/sc/source/ui/view/gridwin.cxx +++ b/sc/source/ui/view/gridwin.cxx @@ -2284,7 +2284,7 @@ void ScGridWindow::MouseButtonUp( const MouseEvent& rMEvt ) { ScAddress aTempAddr; ScAddress::ExternalInfo aExtInfo; - ScRefFlags nRes = aTempAddr.Parse(aUrl, &rDoc, rDoc.GetAddressConvention(), &aExtInfo); + ScRefFlags nRes = aTempAddr.Parse(aUrl, rDoc, rDoc.GetAddressConvention(), &aExtInfo); if (!(nRes & ScRefFlags::VALID)) { // Not a reference string. Pass it through unmodified. diff --git a/sc/source/ui/view/tabvwsh3.cxx b/sc/source/ui/view/tabvwsh3.cxx index 5d94edb3ba99..cb607ed841f1 100644 --- a/sc/source/ui/view/tabvwsh3.cxx +++ b/sc/source/ui/view/tabvwsh3.cxx @@ -99,7 +99,7 @@ namespace return aRet; } - aRet.nResult = rScAddress.Parse(aAddress, &rDoc, eConv); + aRet.nResult = rScAddress.Parse(aAddress, rDoc, eConv); if (aRet.nResult & ScRefFlags::VALID) { aRet.eDetected = DetectFlags::ADDRESS; @@ -114,7 +114,7 @@ namespace return aRet; } - aRet.nResult = rScAddress.Parse(aAddress, &rDoc); + aRet.nResult = rScAddress.Parse(aAddress, rDoc); if (aRet.nResult & ScRefFlags::VALID) { aRet.eDetected = DetectFlags::ADDRESS; @@ -130,7 +130,7 @@ namespace } // try the Excel A1 address convention - aRet.nResult = rScAddress.Parse(aAddress, &rDoc, formula::FormulaGrammar::CONV_XL_A1); + aRet.nResult = rScAddress.Parse(aAddress, rDoc, formula::FormulaGrammar::CONV_XL_A1); if (aRet.nResult & ScRefFlags::VALID) { aRet.eDetected = DetectFlags::ADDRESS; @@ -145,7 +145,7 @@ namespace return aRet; } - aRet.nResult = rScAddress.Parse(aAddress, &rDoc, formula::FormulaGrammar::CONV_XL_R1C1); + aRet.nResult = rScAddress.Parse(aAddress, rDoc, formula::FormulaGrammar::CONV_XL_R1C1); if (aRet.nResult & ScRefFlags::VALID) { aRet.eDetected = DetectFlags::ADDRESS; diff --git a/sc/source/ui/xmlsource/xmlsourcedlg.cxx b/sc/source/ui/xmlsource/xmlsourcedlg.cxx index 167ecae315ae..edc8ca3d5dcb 100644 --- a/sc/source/ui/xmlsource/xmlsourcedlg.cxx +++ b/sc/source/ui/xmlsource/xmlsourcedlg.cxx @@ -559,7 +559,7 @@ void ScXMLSourceDlg::RefEditModified() // Check if the address is valid. ScAddress aLinkedPos; - ScRefFlags nRes = aLinkedPos.Parse(aRefStr, mpDoc, mpDoc->GetAddressConvention()); + ScRefFlags nRes = aLinkedPos.Parse(aRefStr, *mpDoc, mpDoc->GetAddressConvention()); bool bValid = ( (nRes & ScRefFlags::VALID) == ScRefFlags::VALID ); // TODO: For some unknown reason, setting the ref invalid will hide the text altogether. |