sc/qa/extras/vba-macro-test.cxx | 4 sc/qa/unit/uicalc/uicalc2.cxx | 10 sc/source/ui/Accessibility/AccessibleDocument.cxx | 2 sc/source/ui/Accessibility/AccessibleSpreadsheet.cxx | 25 + sc/source/ui/StatisticsDialogs/SamplingDialog.cxx | 2 sc/source/ui/StatisticsDialogs/StatisticsInputOutputDialog.cxx | 2 sc/source/ui/StatisticsDialogs/StatisticsTwoVariableDialog.cxx | 2 sc/source/ui/app/client.cxx | 2 sc/source/ui/app/inputhdl.cxx | 10 sc/source/ui/app/inputwin.cxx | 6 sc/source/ui/condformat/condformatdlg.cxx | 4 sc/source/ui/condformat/condformateasydlg.cxx | 3 sc/source/ui/dbgui/consdlg.cxx | 4 sc/source/ui/dbgui/filtdlg.cxx | 2 sc/source/ui/dbgui/foptmgr.cxx | 4 sc/source/ui/dbgui/tpsort.cxx | 8 sc/source/ui/dbgui/tpsubt.cxx | 4 sc/source/ui/dbgui/validate.cxx | 2 sc/source/ui/dialogs/SparklineDataRangeDialog.cxx | 2 sc/source/ui/docshell/docsh4.cxx | 14 - sc/source/ui/docshell/docsh6.cxx | 2 sc/source/ui/drawfunc/drawsh.cxx | 2 sc/source/ui/drawfunc/drtxtob.cxx | 2 sc/source/ui/drawfunc/fuins1.cxx | 6 sc/source/ui/drawfunc/fuins2.cxx | 8 sc/source/ui/drawfunc/fupoor.cxx | 2 sc/source/ui/drawfunc/fusel.cxx | 6 sc/source/ui/drawfunc/fusel2.cxx | 2 sc/source/ui/drawfunc/futext3.cxx | 2 sc/source/ui/formdlg/formula.cxx | 4 sc/source/ui/inc/olinewin.hxx | 2 sc/source/ui/inc/viewdata.hxx | 15 + sc/source/ui/miscdlgs/anyrefdg.cxx | 4 sc/source/ui/miscdlgs/autofmt.cxx | 2 sc/source/ui/miscdlgs/datafdlg.cxx | 2 sc/source/ui/miscdlgs/duplicaterecordsdlg.cxx | 4 sc/source/ui/miscdlgs/inscldlg.cxx | 2 sc/source/ui/namedlg/namepast.cxx | 3 sc/source/ui/navipi/navipi.cxx | 2 sc/source/ui/optdlg/tpusrlst.cxx | 4 sc/source/ui/pagedlg/areasdlg.cxx | 2 sc/source/ui/pagedlg/tphf.cxx | 2 sc/source/ui/uitest/uiobject.cxx | 14 - sc/source/ui/undo/undobase.cxx | 6 sc/source/ui/undo/undoblk.cxx | 6 sc/source/ui/undo/undoblk2.cxx | 4 sc/source/ui/undo/undoblk3.cxx | 2 sc/source/ui/undo/undocell.cxx | 2 sc/source/ui/undo/undodat.cxx | 40 +-- sc/source/ui/undo/undotab.cxx | 2 sc/source/ui/undo/undoutil.cxx | 2 sc/source/ui/unoobj/dispuno.cxx | 2 sc/source/ui/unoobj/docuno.cxx | 10 sc/source/ui/unoobj/viewuno.cxx | 24 - sc/source/ui/view/cellsh.cxx | 24 - sc/source/ui/view/cellsh1.cxx | 50 +-- sc/source/ui/view/cellsh2.cxx | 20 - sc/source/ui/view/cellsh3.cxx | 12 sc/source/ui/view/cellsh4.cxx | 4 sc/source/ui/view/cliputil.cxx | 2 sc/source/ui/view/colrowba.cxx | 10 sc/source/ui/view/dbfunc.cxx | 15 - sc/source/ui/view/dbfunc2.cxx | 2 sc/source/ui/view/dbfunc3.cxx | 56 ++-- sc/source/ui/view/drawvie3.cxx | 2 sc/source/ui/view/drawview.cxx | 6 sc/source/ui/view/editsh.cxx | 4 sc/source/ui/view/formatsh.cxx | 12 sc/source/ui/view/gridwin.cxx | 93 +++---- sc/source/ui/view/gridwin2.cxx | 20 - sc/source/ui/view/gridwin3.cxx | 4 sc/source/ui/view/gridwin4.cxx | 34 +- sc/source/ui/view/gridwin5.cxx | 6 sc/source/ui/view/gridwin_dbgutil.cxx | 6 sc/source/ui/view/hdrcont.cxx | 10 sc/source/ui/view/pivotsh.cxx | 4 sc/source/ui/view/prevwsh.cxx | 2 sc/source/ui/view/printfun.cxx | 2 sc/source/ui/view/select.cxx | 24 - sc/source/ui/view/selectionstate.cxx | 2 sc/source/ui/view/tabcont.cxx | 10 sc/source/ui/view/tabview.cxx | 44 +-- sc/source/ui/view/tabview2.cxx | 30 +- sc/source/ui/view/tabview3.cxx | 64 ++-- sc/source/ui/view/tabview4.cxx | 24 - sc/source/ui/view/tabview5.cxx | 8 sc/source/ui/view/tabvwsh2.cxx | 2 sc/source/ui/view/tabvwsh3.cxx | 24 - sc/source/ui/view/tabvwsh4.cxx | 12 sc/source/ui/view/tabvwsh5.cxx | 12 sc/source/ui/view/tabvwsh8.cxx | 2 sc/source/ui/view/tabvwsha.cxx | 18 - sc/source/ui/view/tabvwshb.cxx | 8 sc/source/ui/view/tabvwshc.cxx | 28 +- sc/source/ui/view/tabvwshf.cxx | 28 +- sc/source/ui/view/tabvwshg.cxx | 2 sc/source/ui/view/viewdata.cxx | 130 +++++----- sc/source/ui/view/viewfun2.cxx | 42 +-- sc/source/ui/view/viewfun3.cxx | 12 sc/source/ui/view/viewfun4.cxx | 16 - sc/source/ui/view/viewfun5.cxx | 8 sc/source/ui/view/viewfun6.cxx | 8 sc/source/ui/view/viewfun7.cxx | 12 sc/source/ui/view/viewfunc.cxx | 70 ++--- 104 files changed, 681 insertions(+), 665 deletions(-)
New commits: commit 040747c870b65ae28e14a4848b9ba880528980cd Author: Tomaž Vajngerl <tomaz.vajng...@collabora.co.uk> AuthorDate: Tue Aug 26 00:26:19 2025 +0200 Commit: Miklos Vajna <vmik...@collabora.com> CommitDate: Wed Sep 3 10:15:30 2025 +0200 sc: rename GetTabNo and GetTab to better names GetTabNo to CurrentTabForData to make it clear what it's usage should be and that it is not just a simple getter for a tab, but has logic behind it. GetTab was also renamed to GetTabNumber - it's a direct accessor for the current view's tab number. Document both methods. Change-Id: Ic855be43b2d38e421e0f9472d182baa20bb37feb Reviewed-on: https://gerrit.libreoffice.org/c/core/+/190448 Reviewed-by: Miklos Vajna <vmik...@collabora.com> Tested-by: Jenkins CollaboraOffice <jenkinscollaboraoff...@gmail.com> Reviewed-by: Kohei Yoshida <ko...@libreoffice.org> diff --git a/sc/qa/extras/vba-macro-test.cxx b/sc/qa/extras/vba-macro-test.cxx index 2b927c1d7e0b..d4d059f68602 100644 --- a/sc/qa/extras/vba-macro-test.cxx +++ b/sc/qa/extras/vba-macro-test.cxx @@ -161,7 +161,7 @@ CPPUNIT_TEST_FIXTURE(VBAMacroTest, testSheetAndColumnSelectAndHide) CPPUNIT_ASSERT(rDoc.ColHidden(3, 2)); CPPUNIT_ASSERT(rDoc.ColHidden(4, 2)); - CPPUNIT_ASSERT_EQUAL(SCTAB(0), rViewData.GetTabNo()); + CPPUNIT_ASSERT_EQUAL(SCTAB(0), rViewData.CurrentTabForData()); executeMacro( u"vnd.sun.Star.script:VBAProject.ThisWorkbook.testUnhide?language=Basic&location=document"_ustr); @@ -178,7 +178,7 @@ CPPUNIT_TEST_FIXTURE(VBAMacroTest, testSheetAndColumnSelectAndHide) CPPUNIT_ASSERT(!rDoc.ColHidden(3, 2)); CPPUNIT_ASSERT(!rDoc.ColHidden(4, 2)); - CPPUNIT_ASSERT_EQUAL(SCTAB(0), rViewData.GetTabNo()); + CPPUNIT_ASSERT_EQUAL(SCTAB(0), rViewData.CurrentTabForData()); } CPPUNIT_TEST_FIXTURE(VBAMacroTest, testPrintArea) diff --git a/sc/qa/unit/uicalc/uicalc2.cxx b/sc/qa/unit/uicalc/uicalc2.cxx index a8a8a54edab6..7dc23ccafe96 100644 --- a/sc/qa/unit/uicalc/uicalc2.cxx +++ b/sc/qa/unit/uicalc/uicalc2.cxx @@ -274,11 +274,11 @@ CPPUNIT_TEST_FIXTURE(ScUiCalcTest2, testTdf131455) lcl_AssertCurrentCursorPosition(*pDocSh, u"N5"); } - CPPUNIT_ASSERT_EQUAL(sal_Int16(0), getViewShell()->GetViewData().GetTabNo()); + CPPUNIT_ASSERT_EQUAL(sal_Int16(0), getViewShell()->GetViewData().CurrentTabForData()); dispatchCommand(mxComponent, u".uno:JumpToNextTable"_ustr, {}); - CPPUNIT_ASSERT_EQUAL(sal_Int16(1), getViewShell()->GetViewData().GetTabNo()); + CPPUNIT_ASSERT_EQUAL(sal_Int16(1), getViewShell()->GetViewData().CurrentTabForData()); lcl_AssertCurrentCursorPosition(*pDocSh, u"A4"); // Go to row 9 @@ -294,7 +294,7 @@ CPPUNIT_TEST_FIXTURE(ScUiCalcTest2, testTdf131455) dispatchCommand(mxComponent, u".uno:JumpToPrevTable"_ustr, {}); - CPPUNIT_ASSERT_EQUAL(sal_Int16(0), getViewShell()->GetViewData().GetTabNo()); + CPPUNIT_ASSERT_EQUAL(sal_Int16(0), getViewShell()->GetViewData().CurrentTabForData()); lcl_AssertCurrentCursorPosition(*pDocSh, u"N5"); //Cursor can't move forward to the right @@ -310,11 +310,11 @@ CPPUNIT_TEST_FIXTURE(ScUiCalcTest2, testTdf124818) createScDoc("tdf124818.xls"); ScDocument* pDoc = getScDoc(); - CPPUNIT_ASSERT_EQUAL(sal_Int16(2), getViewShell()->GetViewData().GetTabNo()); + CPPUNIT_ASSERT_EQUAL(sal_Int16(2), getViewShell()->GetViewData().CurrentTabForData()); dispatchCommand(mxComponent, u".uno:JumpToPrevTable"_ustr, {}); - CPPUNIT_ASSERT_EQUAL(sal_Int16(1), getViewShell()->GetViewData().GetTabNo()); + CPPUNIT_ASSERT_EQUAL(sal_Int16(1), getViewShell()->GetViewData().CurrentTabForData()); ScDrawLayer* pDrawLayer = pDoc->GetDrawLayer(); SdrPage* pPage = pDrawLayer->GetPage(1); diff --git a/sc/source/ui/Accessibility/AccessibleDocument.cxx b/sc/source/ui/Accessibility/AccessibleDocument.cxx index 5658ee2a27a9..55b89fa4e73d 100644 --- a/sc/source/ui/Accessibility/AccessibleDocument.cxx +++ b/sc/source/ui/Accessibility/AccessibleDocument.cxx @@ -2081,7 +2081,7 @@ SCTAB ScAccessibleDocument::getVisibleTable() const { SCTAB nVisibleTable(0); if (mpViewShell) - nVisibleTable = mpViewShell->GetViewData().GetTabNo(); + nVisibleTable = mpViewShell->GetViewData().CurrentTabForData(); return nVisibleTable; } diff --git a/sc/source/ui/Accessibility/AccessibleSpreadsheet.cxx b/sc/source/ui/Accessibility/AccessibleSpreadsheet.cxx index 0bad15e85566..1a46696e95d2 100644 --- a/sc/source/ui/Accessibility/AccessibleSpreadsheet.cxx +++ b/sc/source/ui/Accessibility/AccessibleSpreadsheet.cxx @@ -538,7 +538,7 @@ void ScAccessibleSpreadsheet::Notify( SfxBroadcaster& rBC, const SfxHint& rHint bool bIsMultMark = refScMarkData.IsMultiMarked(); bool bNewMarked = refScMarkData.GetTableSelect(aNewCell.Tab()) && ( bIsMark || bIsMultMark ); // sal_Bool bNewCellSelected = isAccessibleSelected(aNewCell.Row(), aNewCell.Col()); - sal_uInt16 nTab = rViewData.GetTabNo(); + sal_uInt16 nTab = rViewData.CurrentTabForData(); const ScRange& aMarkRange = refScMarkData.GetMarkArea(); aEvent.OldValue.clear(); ScDocument* pDoc= GetDocument(mpViewShell); @@ -959,7 +959,7 @@ rtl::Reference<ScAccessibleCell> ScAccessibleSpreadsheet::GetAccessibleCellAt(sa { if (IsFormulaMode()) { - ScAddress aCellAddress(static_cast<SCCOL>(nColumn), nRow, mpViewShell->GetViewData().GetTabNo()); + ScAddress aCellAddress(static_cast<SCCOL>(nColumn), nRow, mpViewShell->GetViewData().CurrentTabForData()); if ((aCellAddress == m_aFormulaActiveCell) && m_pAccFormulaCell.is()) { return m_pAccFormulaCell; @@ -1171,10 +1171,11 @@ void SAL_CALL ScAccessibleSpreadsheet::selectAllAccessibleChildren( ) { ScDocument* pDoc = GetDocument(mpViewShell); ScViewData& rViewData = mpViewShell->GetViewData(); - mpViewShell->InitRefMode( 0, 0, rViewData.GetTabNo(), SC_REFTYPE_REF ); - rViewData.SetRefStart(0, 0, rViewData.GetTabNo()); - rViewData.SetRefEnd(pDoc->MaxCol(), pDoc->MaxRow(), rViewData.GetTabNo()); - mpViewShell->UpdateRef(pDoc->MaxCol(), pDoc->MaxRow(), rViewData.GetTabNo()); + auto nCurrentTab = rViewData.CurrentTabForData(); + mpViewShell->InitRefMode( 0, 0, nCurrentTab, SC_REFTYPE_REF ); + rViewData.SetRefStart(0, 0, nCurrentTab); + rViewData.SetRefEnd(pDoc->MaxCol(), pDoc->MaxRow(), nCurrentTab); + mpViewShell->UpdateRef(pDoc->MaxCol(), pDoc->MaxRow(), nCurrentTab); } else mpViewShell->SelectAll(); @@ -1261,7 +1262,7 @@ void SAL_CALL ScAccessibleSpreadsheet::deselectAccessibleChild( sal_Int64 nChild if (IsFormulaMode()) { if(IsScAddrFormulaSel( - ScAddress(static_cast<SCCOL>(nCol), nRow,mpViewShell->GetViewData().GetTabNo())) + ScAddress(static_cast<SCCOL>(nCol), nRow,mpViewShell->GetViewData().CurrentTabForData())) ) { SelectCell(nRow, nCol, true); @@ -1284,8 +1285,8 @@ void ScAccessibleSpreadsheet::SelectCell(sal_Int32 nRow, sal_Int32 nCol, bool bD { ScViewData& rViewData = mpViewShell->GetViewData(); - mpViewShell->InitRefMode( static_cast<SCCOL>(nCol), nRow, rViewData.GetTabNo(), SC_REFTYPE_REF ); - mpViewShell->UpdateRef(static_cast<SCCOL>(nCol), nRow, rViewData.GetTabNo()); + mpViewShell->InitRefMode( static_cast<SCCOL>(nCol), nRow, rViewData.CurrentTabForData(), SC_REFTYPE_REF ); + mpViewShell->UpdateRef(static_cast<SCCOL>(nCol), nRow, rViewData.CurrentTabForData()); } return ; } @@ -1664,7 +1665,7 @@ bool ScAccessibleSpreadsheet::IsScAddrFormulaSel(const ScAddress &addr) const { return addr.Col() >= m_nMinX && addr.Col() <= m_nMaxX && addr.Row() >= m_nMinY && addr.Row() <= m_nMaxY && - addr.Tab() == mpViewShell->GetViewData().GetTabNo(); + addr.Tab() == mpViewShell->GetViewData().CurrentTabForData(); } bool ScAccessibleSpreadsheet::CheckChildIndex(sal_Int64 nIndex) const @@ -1684,7 +1685,7 @@ ScAddress ScAccessibleSpreadsheet::GetChildIndexAddress(sal_Int64 nIndex) const return ScAddress( static_cast<SCCOL>((nIndex - nIndex % nRowAll) / nRowAll + + m_nMinX), nIndex % nRowAll + m_nMinY, - mpViewShell->GetViewData().GetTabNo() + mpViewShell->GetViewData().CurrentTabForData() ); } @@ -1724,7 +1725,7 @@ bool ScAccessibleSpreadsheet::GetFormulaCurrentFocusCell(ScAddress &addr) ScDocument* pDoc = GetDocument(mpViewShell); if( /* Always true: nRefX >= 0 && */ nRefX <= pDoc->MaxCol() && nRefY >= 0 && nRefY <= pDoc->MaxRow()) { - addr = ScAddress(nRefX,nRefY,rViewData.GetTabNo()); + addr = ScAddress(nRefX, nRefY, rViewData.CurrentTabForData()); return true; } return false; diff --git a/sc/source/ui/StatisticsDialogs/SamplingDialog.cxx b/sc/source/ui/StatisticsDialogs/SamplingDialog.cxx index c6a807ddf3f8..4f45dcc513d1 100644 --- a/sc/source/ui/StatisticsDialogs/SamplingDialog.cxx +++ b/sc/source/ui/StatisticsDialogs/SamplingDialog.cxx @@ -29,7 +29,7 @@ ScSamplingDialog::ScSamplingDialog(SfxBindings* pSfxBindings, SfxChildWindow* pC , mInputRange(ScAddress::INITIALIZE_INVALID) , mAddressDetails(mDocument.GetAddressConvention(), 0, 0) , mOutputAddress(ScAddress::INITIALIZE_INVALID) - , mCurrentAddress(rViewData.GetCurX(), rViewData.GetCurY(), rViewData.GetTabNo()) + , mCurrentAddress(rViewData.GetCurX(), rViewData.GetCurY(), rViewData.CurrentTabForData()) , mnLastSampleSizeValue(1) , mnLastPeriodValue(1) , mDialogLostFocus(false) diff --git a/sc/source/ui/StatisticsDialogs/StatisticsInputOutputDialog.cxx b/sc/source/ui/StatisticsDialogs/StatisticsInputOutputDialog.cxx index cff235681f1e..3af68a8b3e40 100644 --- a/sc/source/ui/StatisticsDialogs/StatisticsInputOutputDialog.cxx +++ b/sc/source/ui/StatisticsDialogs/StatisticsInputOutputDialog.cxx @@ -67,7 +67,7 @@ ScStatisticsInputOutputDialog::ScStatisticsInputOutputDialog( , mxButtonOk(m_xBuilder->weld_button(u"ok"_ustr)) , mxButtonCancel(m_xBuilder->weld_button(u"cancel"_ustr)) , mpActiveEdit(nullptr) - , mCurrentAddress(rViewData.GetCurX(), rViewData.GetCurY(), rViewData.GetTabNo()) + , mCurrentAddress(rViewData.GetCurX(), rViewData.GetCurY(), rViewData.CurrentTabForData()) , mDialogLostFocus(false) { mxInputRangeEdit->SetReferences(this, mxInputRangeLabel.get()); diff --git a/sc/source/ui/StatisticsDialogs/StatisticsTwoVariableDialog.cxx b/sc/source/ui/StatisticsDialogs/StatisticsTwoVariableDialog.cxx index c0fcbc751dbc..eae473873be6 100644 --- a/sc/source/ui/StatisticsDialogs/StatisticsTwoVariableDialog.cxx +++ b/sc/source/ui/StatisticsDialogs/StatisticsTwoVariableDialog.cxx @@ -43,7 +43,7 @@ ScStatisticsTwoVariableDialog::ScStatisticsTwoVariableDialog( , mxGroupByColumnsRadio(m_xBuilder->weld_radio_button(u"groupedby-columns-radio"_ustr)) , mxGroupByRowsRadio(m_xBuilder->weld_radio_button(u"groupedby-rows-radio"_ustr)) , mpActiveEdit(nullptr) - , mCurrentAddress(rViewData.GetCurX(), rViewData.GetCurY(), rViewData.GetTabNo() ) + , mCurrentAddress(rViewData.GetCurX(), rViewData.GetCurY(), rViewData.CurrentTabForData() ) , mDialogLostFocus(false) { mxVariable1RangeEdit->SetReferences(this, mxVariable1RangeLabel.get()); diff --git a/sc/source/ui/app/client.cxx b/sc/source/ui/app/client.cxx index 5c44bc077e83..cbb00c3c9ddd 100644 --- a/sc/source/ui/app/client.cxx +++ b/sc/source/ui/app/client.cxx @@ -93,7 +93,7 @@ void ScClient::RequestNewObjectArea( tools::Rectangle& aLogicRect ) aLogicRect.SetPos( aOldRect.TopLeft() ); } - sal_uInt16 nTab = pViewSh->GetViewData().GetTabNo(); + sal_uInt16 nTab = pViewSh->GetViewData().CurrentTabForData(); SdrPage* pPage = pModel->GetPage(static_cast<sal_uInt16>(static_cast<sal_Int16>(nTab))); if ( !(pPage && aLogicRect != aOldRect) ) return; diff --git a/sc/source/ui/app/inputhdl.cxx b/sc/source/ui/app/inputhdl.cxx index fc084ed0ef43..b318aba15235 100644 --- a/sc/source/ui/app/inputhdl.cxx +++ b/sc/source/ui/app/inputhdl.cxx @@ -442,7 +442,7 @@ handle_r1c1: { // Set tables if not specified if ( (nFlags & ScRefFlags::TAB_3D) == ScRefFlags::ZERO) - aRange.aStart.SetTab( pActiveViewSh->GetViewData().GetTabNo() ); + aRange.aStart.SetTab( pActiveViewSh->GetViewData().CurrentTabForData() ); if ( (nFlags & ScRefFlags::TAB2_3D) == ScRefFlags::ZERO) aRange.aEnd.SetTab( aRange.aStart.Tab() ); @@ -571,7 +571,7 @@ void ScInputHandler::UpdateLokReferenceMarks() tools::Long nY2 = rViewData.GetRefEndY(); tools::Long nTab = rViewData.GetRefStartZ(); - if (rViewData.GetRefEndZ() == rViewData.GetTabNo()) + if (rViewData.GetRefEndZ() == rViewData.CurrentTabForData()) nTab = rViewData.GetRefEndZ(); PutInOrder(nX1, nX2); @@ -989,7 +989,7 @@ void ScInputHandler::UpdateSpellSettings( bool bFromStartTab ) ScDocument& rDoc = rViewData.GetDocument(); rDoc.ApplyAsianEditSettings( *mpEditEngine ); mpEditEngine->SetDefaultHorizontalTextDirection( - rDoc.GetEditTextDirection( rViewData.GetTabNo() ) ); + rDoc.GetEditTextDirection( rViewData.CurrentTabForData() ) ); mpEditEngine->SetFirstWordCapitalization( false ); } @@ -2841,7 +2841,7 @@ void ScInputHandler::DataChanged( bool bFromTopNotify, bool bSetModified ) } if (!bNeedGrow) { - bNeedGrow = rViewData.GetDocument().IsLayoutRTL( rViewData.GetTabNo() ); + bNeedGrow = rViewData.GetDocument().IsLayoutRTL( rViewData.CurrentTabForData() ); } if (bNeedGrow) { @@ -3707,7 +3707,7 @@ void ScInputHandler::SetReference( const ScRange& rRef, const ScDocument& rDoc ) aRefStr = rRef.Format(rDoc, ScRefFlags::VALID, aAddrDetails); } bool bLOKShowSelect = true; - if(comphelper::LibreOfficeKit::isActive() && pRefViewSh->GetViewData().GetRefTabNo() != pRefViewSh->GetViewData().GetTabNo()) + if(comphelper::LibreOfficeKit::isActive() && pRefViewSh->GetViewData().GetRefTabNo() != pRefViewSh->GetViewData().CurrentTabForData()) bLOKShowSelect = false; if (pTableView || pTopView) diff --git a/sc/source/ui/app/inputwin.cxx b/sc/source/ui/app/inputwin.cxx index 8c21e56c0da1..8049e7c356ab 100644 --- a/sc/source/ui/app/inputwin.cxx +++ b/sc/source/ui/app/inputwin.cxx @@ -2456,7 +2456,7 @@ static ScNameInputType lcl_GetInputType( const OUString& rText ) { ScViewData& rViewData = pViewSh->GetViewData(); ScDocument& rDoc = rViewData.GetDocument(); - SCTAB nTab = rViewData.GetTabNo(); + SCTAB nTab = rViewData.CurrentTabForData(); ScAddress::Details aDetails( rDoc.GetAddressConvention()); // test in same order as in SID_CURRENTCELL execute @@ -2618,7 +2618,7 @@ void ScPosWnd::DoEnter() (rViewData.GetSimpleArea( aSelection ) == SC_MARK_SIMPLE) ) { ScRangeName aNewRanges( *pNames ); - ScAddress aCursor( rViewData.GetCurX(), rViewData.GetCurY(), rViewData.GetTabNo() ); + ScAddress aCursor( rViewData.GetCurX(), rViewData.GetCurY(), rViewData.CurrentTabForData() ); OUString aContent(aSelection.Format(rDoc, ScRefFlags::RANGE_ABS_3D, rDoc.GetAddressConvention())); ScRangeData* pNew = new ScRangeData( rDoc, aText, aContent, aCursor ); if ( aNewRanges.insert(pNew) ) @@ -2641,7 +2641,7 @@ void ScPosWnd::DoEnter() { // Note that SID_CURRENTCELL always expects address to // be in Calc A1 format. Convert the text. - ScRange aRange(0,0, rViewData.GetTabNo()); + ScRange aRange(0,0, rViewData.CurrentTabForData()); aRange.ParseAny(aText, rDoc, rDoc.GetAddressConvention()); aText = aRange.Format(rDoc, ScRefFlags::RANGE_ABS_3D, ::formula::FormulaGrammar::CONV_OOO); } diff --git a/sc/source/ui/condformat/condformatdlg.cxx b/sc/source/ui/condformat/condformatdlg.cxx index 291ffeef0a36..6ba6e999682f 100644 --- a/sc/source/ui/condformat/condformatdlg.cxx +++ b/sc/source/ui/condformat/condformatdlg.cxx @@ -455,7 +455,7 @@ ScCondFormatDlg::ScCondFormatDlg(SfxBindings* pB, SfxChildWindow* pCW, else if (!mpDlgData->IsManaged()) { ScDocument& rDoc = mpViewData->GetDocument(); - pFormat = rDoc.GetCondFormList(mpViewData->GetTabNo())->GetFormat ( mnKey ); + pFormat = rDoc.GetCondFormList(mpViewData->CurrentTabForData())->GetFormat ( mnKey ); } ScRangeList aRange; @@ -469,7 +469,7 @@ ScCondFormatDlg::ScCondFormatDlg(SfxBindings* pB, SfxChildWindow* pCW, mpViewData->GetMarkData().FillRangeListWithMarks(&aRange, false); if(aRange.empty()) { - ScAddress aPos(mpViewData->GetCurX(), mpViewData->GetCurY(), mpViewData->GetTabNo()); + ScAddress aPos(mpViewData->GetCurX(), mpViewData->GetCurY(), mpViewData->CurrentTabForData()); aRange.push_back(ScRange(aPos)); } mnKey = 0; diff --git a/sc/source/ui/condformat/condformateasydlg.cxx b/sc/source/ui/condformat/condformateasydlg.cxx index 71ae8745df53..c56b04de1461 100644 --- a/sc/source/ui/condformat/condformateasydlg.cxx +++ b/sc/source/ui/condformat/condformateasydlg.cxx @@ -182,7 +182,8 @@ ConditionalFormatEasyDialog::ConditionalFormatEasyDialog(SfxBindings* pBindings, mpViewData->GetMarkData().FillRangeListWithMarks(&aRange, false); if (aRange.empty()) { - ScAddress aPosition(mpViewData->GetCurX(), mpViewData->GetCurY(), mpViewData->GetTabNo()); + ScAddress aPosition(mpViewData->GetCurX(), mpViewData->GetCurY(), + mpViewData->CurrentTabForData()); aRange.push_back(ScRange(aPosition)); } maPosition = aRange.GetTopLeftCorner(); diff --git a/sc/source/ui/dbgui/consdlg.cxx b/sc/source/ui/dbgui/consdlg.cxx index 22911ed16f6f..2c1c7f153e65 100644 --- a/sc/source/ui/dbgui/consdlg.cxx +++ b/sc/source/ui/dbgui/consdlg.cxx @@ -285,7 +285,7 @@ bool ScConsolidateDlg::VerifyEdit( formula::RefEdit* pEd ) if (pEd != m_xEdDataArea.get() && pEd != m_xEdDestArea.get()) return false; - SCTAB nTab = rViewData.GetTabNo(); + SCTAB nTab = rViewData.CurrentTabForData(); bool bEditOk = false; OUString theCompleteStr; const formula::FormulaGrammar::AddressConvention eConv = rDoc.GetAddressConvention(); @@ -332,7 +332,7 @@ IMPL_LINK_NOARG(ScConsolidateDlg, OkHdl, weld::Button&, void) if ( nDataAreaCount > 0 ) { ScRefAddress aDestAddress; - SCTAB nTab = rViewData.GetTabNo(); + SCTAB nTab = rViewData.CurrentTabForData(); OUString aDestPosStr( m_xEdDestArea->GetText() ); const formula::FormulaGrammar::AddressConvention eConv = rDoc.GetAddressConvention(); diff --git a/sc/source/ui/dbgui/filtdlg.cxx b/sc/source/ui/dbgui/filtdlg.cxx index 317f7f3a9165..072459641687 100644 --- a/sc/source/ui/dbgui/filtdlg.cxx +++ b/sc/source/ui/dbgui/filtdlg.cxx @@ -208,7 +208,7 @@ void ScFilterDlg::Init( const SfxItemSet& rArgSet ) pViewData = rQueryItem.GetViewData(); pDoc = pViewData ? &pViewData->GetDocument() : nullptr; - nSrcTab = pViewData ? pViewData->GetTabNo() : static_cast<SCTAB>(0); + nSrcTab = pViewData ? pViewData->CurrentTabForData() : static_cast<SCTAB>(0); // for easier access: maFieldLbArr.reserve(QUERY_ENTRY_COUNT); diff --git a/sc/source/ui/dbgui/foptmgr.cxx b/sc/source/ui/dbgui/foptmgr.cxx index decaa622ba63..12a7f417d9f6 100644 --- a/sc/source/ui/dbgui/foptmgr.cxx +++ b/sc/source/ui/dbgui/foptmgr.cxx @@ -85,10 +85,10 @@ void ScFilterOptionsMgr::Init() OUString theAreaStr; ScRange theCurArea ( ScAddress( rQueryData.nCol1, rQueryData.nRow1, - pViewData->GetTabNo() ), + pViewData->CurrentTabForData() ), ScAddress( rQueryData.nCol2, rQueryData.nRow2, - pViewData->GetTabNo() ) ); + pViewData->CurrentTabForData() ) ); ScDBCollection* pDBColl = pDoc->GetDBCollection(); OUString theDbArea; OUString theDbName(STR_DB_LOCAL_NONAME); diff --git a/sc/source/ui/dbgui/tpsort.cxx b/sc/source/ui/dbgui/tpsort.cxx index 91a7a25d3630..00a2749fd83d 100644 --- a/sc/source/ui/dbgui/tpsort.cxx +++ b/sc/source/ui/dbgui/tpsort.cxx @@ -120,7 +120,7 @@ void ScTabPageSortFields::Init() if ( pDoc ) { ScDBCollection* pDBColl = pDoc->GetDBCollection(); - const SCTAB nCurTab = pViewData->GetTabNo(); + const SCTAB nCurTab = pViewData->CurrentTabForData(); if ( pDBColl ) { ScDBData* pDBData @@ -320,7 +320,7 @@ void ScTabPageSortFields::FillFieldLists( sal_uInt16 nStartField ) SCCOL nFirstSortCol = aSortData.nCol1; SCROW nFirstSortRow = aSortData.nRow1; - SCTAB nTab = pViewData->GetTabNo(); + SCTAB nTab = pViewData->CurrentTabForData(); sal_uInt16 i = 1; nFieldArr.clear(); nFieldArr.push_back(0); @@ -608,7 +608,7 @@ void ScTabPageSortOptions::Reset( const SfxItemSet* /* rArgSet */ ) if ( pDoc && !aSortData.bInplace ) { - ScRefFlags nFormat = (aSortData.nDestTab != pViewData->GetTabNo()) + ScRefFlags nFormat = (aSortData.nDestTab != pViewData->CurrentTabForData()) ? ScRefFlags::RANGE_ABS_3D : ScRefFlags::RANGE_ABS; @@ -718,7 +718,7 @@ DeactivateRC ScTabPageSortOptions::DeactivatePage( SfxItemSet* pSetP ) { // visible table is default for input without table // must be changed to GetRefTabNo when sorting has RefInput! - thePos.SetTab( pViewData->GetTabNo() ); + thePos.SetTab( pViewData->CurrentTabForData() ); } ScRefFlags nResult = thePos.Parse( thePosStr, *pDoc, pDoc->GetAddressConvention() ); diff --git a/sc/source/ui/dbgui/tpsubt.cxx b/sc/source/ui/dbgui/tpsubt.cxx index f911292c08f7..b1978ec3a50b 100644 --- a/sc/source/ui/dbgui/tpsubt.cxx +++ b/sc/source/ui/dbgui/tpsubt.cxx @@ -245,7 +245,7 @@ void ScTpSubTotalGroup::FillListBoxes() SCCOL nFirstCol = rSubTotalData.nCol1; SCROW nFirstRow = rSubTotalData.nRow1; - SCTAB nTab = pViewData->GetTabNo(); + SCTAB nTab = pViewData->CurrentTabForData(); SCCOL nMaxCol = rSubTotalData.nCol2; SCCOL col; OUString aFieldName; @@ -525,7 +525,7 @@ bool ScTpSubTotalOptions::FillItemSet( SfxItemSet* rArgSet ) theSubTotalData.bDoSort = m_xBtnSort->get_active(); theSubTotalData.bSummaryBelow = m_xBtnSummary->get_active(); - pDoc->SetTotalsRowBelow(pViewData->GetTabNo(), theSubTotalData.bSummaryBelow); + pDoc->SetTotalsRowBelow(pViewData->CurrentTabForData(), theSubTotalData.bSummaryBelow); theSubTotalData.bAscending = m_xBtnAscending->get_active(); theSubTotalData.bUserDef = m_xBtnUserDef->get_active(); diff --git a/sc/source/ui/dbgui/validate.cxx b/sc/source/ui/dbgui/validate.cxx index bacbe29e3af3..9567a791d512 100644 --- a/sc/source/ui/dbgui/validate.cxx +++ b/sc/source/ui/dbgui/validate.cxx @@ -200,7 +200,7 @@ void ScTPValidationValue::RefInputDonePostHdl() pOldParent->hide(); ScViewData& rViewData = pValidationDlg->GetTabViewShell()->GetViewData(); - SCTAB nCurTab = rViewData.GetTabNo(); + SCTAB nCurTab = rViewData.CurrentTabForData(); SCTAB nRefTab = rViewData.GetRefTabNo(); // If RefInput switched to a different sheet from the data sheet, // switch back: fdo#53920 diff --git a/sc/source/ui/dialogs/SparklineDataRangeDialog.cxx b/sc/source/ui/dialogs/SparklineDataRangeDialog.cxx index 607f5624072b..dedaf0faa742 100644 --- a/sc/source/ui/dialogs/SparklineDataRangeDialog.cxx +++ b/sc/source/ui/dialogs/SparklineDataRangeDialog.cxx @@ -194,7 +194,7 @@ void SparklineDataRangeDialog::perform() ScRangeList aList{ maDataRange }; auto& rDocFunc = mrViewData.GetDocShell()->GetDocFunc(); - rDocFunc.ChangeSparkline(mpSparkline, mrViewData.GetTabNo(), aList); + rDocFunc.ChangeSparkline(mpSparkline, mrViewData.CurrentTabForData(), aList); } } // end sc diff --git a/sc/source/ui/docshell/docsh4.cxx b/sc/source/ui/docshell/docsh4.cxx index 02391ac649a9..eff11634d595 100644 --- a/sc/source/ui/docshell/docsh4.cxx +++ b/sc/source/ui/docshell/docsh4.cxx @@ -608,7 +608,7 @@ void ScDocShell::Execute( SfxRequest& rReq ) break; ScDocument& rDoc = GetDocument(); - const SCTAB nTab = pViewData->GetTabNo(); + const SCTAB nTab = pViewData->CurrentTabForData(); // obtain the page-style’s ItemSet OUString aStyleName = rDoc.GetPageStyle(nTab); @@ -675,7 +675,7 @@ void ScDocShell::Execute( SfxRequest& rReq ) if (!pViewData) break; ScDocument& rDoc = GetDocument(); - const SCTAB nTab = pViewData->GetTabNo(); + const SCTAB nTab = pViewData->CurrentTabForData(); OUString aStyleName = rDoc.GetPageStyle(nTab); ScStyleSheetPool* pStylePool = rDoc.GetStyleSheetPool(); SfxStyleSheetBase* pStyleSheet = pStylePool->Find(aStyleName, SfxStyleFamily::Page); @@ -743,7 +743,7 @@ void ScDocShell::Execute( SfxRequest& rReq ) } ScDocument& rDoc = GetDocument(); - const SCTAB nTab = pViewData->GetTabNo(); + const SCTAB nTab = pViewData->CurrentTabForData(); OUString aStyleName = rDoc.GetPageStyle(nTab); ScStyleSheetPool* pStylePool = rDoc.GetStyleSheetPool(); SfxStyleSheetBase* pStyleSheet = pStylePool->Find(aStyleName, SfxStyleFamily::Page); @@ -1048,7 +1048,7 @@ void ScDocShell::Execute( SfxRequest& rReq ) if ( pSh ) { //! omit SetTabNo in DeleteTable? - SCTAB nDispTab = pSh->GetViewData().GetTabNo(); + SCTAB nDispTab = pSh->GetViewData().CurrentTabForData(); pSh->DeleteTable( nTab ); pSh->SetTabNo(nDispTab); rReq.Done(); @@ -2468,7 +2468,7 @@ void ScDocShell::GetState( SfxItemSet &rSet ) if (pViewData) { ScDocument& rDoc = GetDocument(); - const SCTAB nTab = pViewData->GetTabNo(); + const SCTAB nTab = pViewData->CurrentTabForData(); OUString aStyleName = rDoc.GetPageStyle(nTab); ScStyleSheetPool* pStylePool = rDoc.GetStyleSheetPool(); @@ -2550,7 +2550,7 @@ void ScDocShell::GetState( SfxItemSet &rSet ) ScMarkData aMark = pViewShell->GetViewData().GetMarkData(); SCCOL nCol = pViewShell->GetViewData().GetCurX(); SCROW nRow = pViewShell->GetViewData().GetCurY(); - SCTAB nTab = pViewShell->GetViewData().GetTabNo(); + SCTAB nTab = pViewShell->GetViewData().CurrentTabForData(); aMark.SetMarkArea(ScRange(nCol, nRow, nTab)); const ScPatternAttr* pSelAttrs = GetDocument().GetSelectionPattern(aMark); @@ -3007,7 +3007,7 @@ SCTAB ScDocShell::GetCurTab() ScViewData* pViewData = GetViewData(); - return pViewData ? pViewData->GetTabNo() : static_cast<SCTAB>(0); + return pViewData ? pViewData->CurrentTabForData() : static_cast<SCTAB>(0); } ScTabViewShell* ScDocShell::GetBestViewShell( bool bOnlyVisible ) diff --git a/sc/source/ui/docshell/docsh6.cxx b/sc/source/ui/docshell/docsh6.cxx index 83538aeaab0d..41509cfdb8e0 100644 --- a/sc/source/ui/docshell/docsh6.cxx +++ b/sc/source/ui/docshell/docsh6.cxx @@ -165,7 +165,7 @@ void ScDocShell::UpdateOle(const ScViewData& rViewData, bool bSnapSize) aNewArea = m_pDocument->GetEmbeddedRect(); else { - SCTAB nTab = rViewData.GetTabNo(); + SCTAB nTab = rViewData.CurrentTabForData(); if ( nTab != m_pDocument->GetVisibleTab() ) m_pDocument->SetVisibleTab( nTab ); diff --git a/sc/source/ui/drawfunc/drawsh.cxx b/sc/source/ui/drawfunc/drawsh.cxx index e45717a31f74..80f6a1d4c02f 100644 --- a/sc/source/ui/drawfunc/drawsh.cxx +++ b/sc/source/ui/drawfunc/drawsh.cxx @@ -184,7 +184,7 @@ void ScDrawShell::ExecDrawAttr( SfxRequest& rReq ) const sal_uLong newPosX = convertTwipToMm100(newPosXTwips->GetValue()); const sal_uLong newPosY = convertTwipToMm100(newPosYTwips->GetValue()); - bool bNegateX = comphelper::LibreOfficeKit::isActive() && rViewData.GetDocument().IsLayoutRTL(rViewData.GetTabNo()); + bool bNegateX = comphelper::LibreOfficeKit::isActive() && rViewData.GetDocument().IsLayoutRTL(rViewData.CurrentTabForData()); pView->MoveShapeHandle(handleNum, Point(bNegateX ? -static_cast<tools::Long>(newPosX) : newPosX, newPosY), OrdNum ? OrdNum->GetValue() : -1); } } diff --git a/sc/source/ui/drawfunc/drtxtob.cxx b/sc/source/ui/drawfunc/drtxtob.cxx index 33b97a26e0b0..f4e201d56d46 100644 --- a/sc/source/ui/drawfunc/drtxtob.cxx +++ b/sc/source/ui/drawfunc/drtxtob.cxx @@ -1208,7 +1208,7 @@ void ScDrawTextObjectBar::GetAttrState( SfxItemSet& rDestSet ) if ( eAttrDir == SvxFrameDirection::Environment ) { // get "environment" direction from page style - if ( mrViewData.GetDocument().GetEditTextDirection( mrViewData.GetTabNo() ) == EEHorizontalTextDirection::R2L ) + if ( mrViewData.GetDocument().GetEditTextDirection( mrViewData.CurrentTabForData() ) == EEHorizontalTextDirection::R2L ) eAttrDir = SvxFrameDirection::Horizontal_RL_TB; else eAttrDir = SvxFrameDirection::Horizontal_LR_TB; diff --git a/sc/source/ui/drawfunc/fuins1.cxx b/sc/source/ui/drawfunc/fuins1.cxx index 728865a43f4d..d590b37d5259 100644 --- a/sc/source/ui/drawfunc/fuins1.cxx +++ b/sc/source/ui/drawfunc/fuins1.cxx @@ -180,7 +180,7 @@ static void lcl_InsertGraphic( const Graphic& rGraphic, Point aInsertPos = rViewSh.GetInsertPos(); ScViewData& rData = rViewSh.GetViewData(); - if ( rData.GetDocument().IsNegativePage( rData.GetTabNo() ) ) + if ( rData.GetDocument().IsNegativePage( rData.CurrentTabForData() ) ) aInsertPos.AdjustX( -(aLogicSize.Width()) ); // move position to left edge ScLimitSizeOnDrawPage( aLogicSize, aInsertPos, pPage->GetSize() ); @@ -201,7 +201,7 @@ static void lcl_InsertGraphic( const Graphic& rGraphic, pObj->SetName(aName); if (aAnchorType == SCA_CELL || aAnchorType == SCA_CELL_RESIZE) - ScDrawLayer::SetCellAnchoredFromPosition(*pObj, rData.GetDocument(), rData.GetTabNo(), + ScDrawLayer::SetCellAnchoredFromPosition(*pObj, rData.GetDocument(), rData.CurrentTabForData(), aAnchorType == SCA_CELL_RESIZE); // don't select if from (dispatch) API, to allow subsequent cell operations @@ -239,7 +239,7 @@ static void lcl_InsertMedia( const OUString& rMediaURL, bool bApi, ScLimitSizeOnDrawPage( aSize, aInsertPos, pPage->GetSize() ); - if( rData.GetDocument().IsNegativePage( rData.GetTabNo() ) ) + if( rData.GetDocument().IsNegativePage( rData.CurrentTabForData() ) ) aInsertPos.AdjustX( -(aSize.Width()) ); OUString realURL; diff --git a/sc/source/ui/drawfunc/fuins2.cxx b/sc/source/ui/drawfunc/fuins2.cxx index cc373117bfa2..4c531f68d3f4 100644 --- a/sc/source/ui/drawfunc/fuins2.cxx +++ b/sc/source/ui/drawfunc/fuins2.cxx @@ -350,7 +350,7 @@ FuInsertOLE::FuInsertOLE(ScTabViewShell& rViewSh, vcl::Window* pWin, ScDrawView* ScViewData& rData = rViewSh.GetViewData(); Point aPnt = rViewSh.GetInsertPos(); - if ( rData.GetDocument().IsNegativePage( rData.GetTabNo() ) ) + if ( rData.GetDocument().IsNegativePage( rData.CurrentTabForData() ) ) aPnt.AdjustX( -(aSize.Width()) ); // move position to left edge tools::Rectangle aRect (aPnt, aSize); rtl::Reference<SdrOle2Obj> pObj = new SdrOle2Obj( @@ -441,7 +441,7 @@ FuInsertChart::FuInsertChart(ScTabViewShell& rViewSh, vcl::Window* pWin, ScDrawV ScDocument& rDocument = rViewSh.GetViewData().GetDocument(); ScDPObject* pObject = rDocument.GetDPAtCursor(rViewSh.GetViewData().GetCurX(), rViewSh.GetViewData().GetCurY(), - rViewSh.GetViewData().GetTabNo()); + rViewSh.GetViewData().CurrentTabForData()); if (pObject) { aRangeString = pObject->GetName(); @@ -545,7 +545,7 @@ FuInsertChart::FuInsertChart(ScTabViewShell& rViewSh, vcl::Window* pWin, ScDrawV if ( pBoolItem->GetValue() ) nToTable = static_cast<sal_uInt16>(rScDoc.GetTableCount()); else - nToTable = static_cast<sal_uInt16>(rData.GetTabNo()); + nToTable = static_cast<sal_uInt16>(rData.CurrentTabForData()); } } else @@ -580,7 +580,7 @@ FuInsertChart::FuInsertChart(ScTabViewShell& rViewSh, vcl::Window* pWin, ScDrawV OSL_FAIL( "Could not create new table :-/" ); } } - else if ( nToTable != rData.GetTabNo() ) + else if ( nToTable != rData.CurrentTabForData() ) { rViewSh.SetTabNo( nToTable, true ); } diff --git a/sc/source/ui/drawfunc/fupoor.cxx b/sc/source/ui/drawfunc/fupoor.cxx index 93b0e47ce010..af119de5370f 100644 --- a/sc/source/ui/drawfunc/fupoor.cxx +++ b/sc/source/ui/drawfunc/fupoor.cxx @@ -83,7 +83,7 @@ void FuPoor::ForceScroll(const Point& aPixPos) if ( aPixPos.Y() >= aSize.Height() ) dy = 1; ScViewData& rViewData = rViewShell.GetViewData(); - if ( rViewData.GetDocument().IsNegativePage( rViewData.GetTabNo() ) ) + if ( rViewData.GetDocument().IsNegativePage( rViewData.CurrentTabForData() ) ) dx = -dx; ScSplitPos eWhich = rViewData.GetActivePart(); diff --git a/sc/source/ui/drawfunc/fusel.cxx b/sc/source/ui/drawfunc/fusel.cxx index 6bb680cd49a2..8fe07283ab7d 100644 --- a/sc/source/ui/drawfunc/fusel.cxx +++ b/sc/source/ui/drawfunc/fusel.cxx @@ -90,7 +90,7 @@ bool FuSelection::MouseButtonDown(const MouseEvent& rMEvt) { ScViewData& rViewData = rViewShell.GetViewData(); ScDocument& rDocument = rViewData.GetDocument(); - if (rDocument.IsNegativePage(rViewData.GetTabNo())) + if (rDocument.IsNegativePage(rViewData.CurrentTabForData())) aMDPos.setX(-aMDPos.X()); } @@ -360,7 +360,7 @@ bool FuSelection::MouseButtonUp(const MouseEvent& rMEvt) ::std::vector< OUString > aExcludedChartNames; ScRangeListVector aProtectedChartRangesVector; - if (comphelper::LibreOfficeKit::isActive() && rDocument.IsNegativePage(rViewData.GetTabNo())) + if (comphelper::LibreOfficeKit::isActive() && rDocument.IsNegativePage(rViewData.CurrentTabForData())) aPnt.setX(-aPnt.X()); if (pView && rMEvt.IsLeft()) @@ -547,7 +547,7 @@ bool FuSelection::MouseButtonUp(const MouseEvent& rMEvt) ScModelObj* pModelObj = ( pDocShell ? pDocShell->GetModel() : nullptr ); if ( pModelObj ) { - SCTAB nTab = rViewData.GetTabNo(); + SCTAB nTab = rViewData.CurrentTabForData(); ScChartHelper::CreateProtectedChartListenersAndNotify( rDocument, pPage, pModelObj, nTab, aProtectedChartRangesVector, aExcludedChartNames ); } diff --git a/sc/source/ui/drawfunc/fusel2.cxx b/sc/source/ui/drawfunc/fusel2.cxx index cc9a1478ceb4..5dee99e4d472 100644 --- a/sc/source/ui/drawfunc/fusel2.cxx +++ b/sc/source/ui/drawfunc/fusel2.cxx @@ -120,7 +120,7 @@ bool FuSelection::IsNoteCaptionClicked( const Point& rPos ) const { const ScViewData& rViewData = rViewShell.GetViewData(); ScDocument& rDoc = rViewData.GetDocument(); - SCTAB nTab = rViewData.GetTabNo(); + SCTAB nTab = rViewData.CurrentTabForData(); ScDocShell* pDocSh = rViewData.GetDocShell(); bool bProtectDoc = rDoc.IsTabProtected( nTab ) || (pDocSh && pDocSh->IsReadOnly()); diff --git a/sc/source/ui/drawfunc/futext3.cxx b/sc/source/ui/drawfunc/futext3.cxx index 11154d9bd7ff..1a501cf0bf4e 100644 --- a/sc/source/ui/drawfunc/futext3.cxx +++ b/sc/source/ui/drawfunc/futext3.cxx @@ -55,7 +55,7 @@ void FuText::StopEditMode() ScAddress aNotePos; ScPostIt* pNote = nullptr; - if( const ScDrawObjData* pCaptData = ScDrawLayer::GetNoteCaptionData( pObject, rViewData.GetTabNo() ) ) + if( const ScDrawObjData* pCaptData = ScDrawLayer::GetNoteCaptionData( pObject, rViewData.CurrentTabForData() ) ) { aNotePos = pCaptData->maStart; pNote = rDoc.GetNote( aNotePos ); diff --git a/sc/source/ui/formdlg/formula.cxx b/sc/source/ui/formdlg/formula.cxx index 9af2adbe7472..0a24b5ccf6d3 100644 --- a/sc/source/ui/formdlg/formula.cxx +++ b/sc/source/ui/formdlg/formula.cxx @@ -117,7 +117,7 @@ ScFormulaDlg::ScFormulaDlg(SfxBindings* pB, SfxChildWindow* pCW, m_pDoc = &rViewData.GetDocument(); SCCOL nCol = rViewData.GetCurX(); SCROW nRow = rViewData.GetCurY(); - SCTAB nTab = rViewData.GetTabNo(); + SCTAB nTab = rViewData.CurrentTabForData(); m_CursorPos = ScAddress( nCol, nRow, nTab ); m_pViewShell->InitFormEditData(); // create new @@ -607,7 +607,7 @@ void ScFormulaDlg::switchBack() ScViewData& rVD=pScViewShell->GetViewData(); SCTAB nExecTab = m_CursorPos.Tab(); - if ( nExecTab != rVD.GetTabNo() ) + if ( nExecTab != rVD.CurrentTabForData() ) pScViewShell->SetTabNo( nExecTab ); SCROW nRow = m_CursorPos.Row(); diff --git a/sc/source/ui/inc/olinewin.hxx b/sc/source/ui/inc/olinewin.hxx index 7f99ae662436..0293a4b7c7d6 100644 --- a/sc/source/ui/inc/olinewin.hxx +++ b/sc/source/ui/inc/olinewin.hxx @@ -80,7 +80,7 @@ private: /** Returns the calc document. */ ScDocument& GetDoc() const { return mrViewData.GetDocument(); } /** Returns the current sheet index. */ - SCTAB GetTab() const { return mrViewData.GetTabNo(); } + SCTAB GetTab() const { return mrViewData.CurrentTabForData(); } /** Returns the outline array of the corresponding document. */ const ScOutlineArray* GetOutlineArray() const; /** Returns the specified outline entry. */ diff --git a/sc/source/ui/inc/viewdata.hxx b/sc/source/ui/inc/viewdata.hxx index ea57f68e05f8..9643f5984e34 100644 --- a/sc/source/ui/inc/viewdata.hxx +++ b/sc/source/ui/inc/viewdata.hxx @@ -399,8 +399,19 @@ public: SCTAB GetRefTabNo() const { return nRefTabNo; } void SetRefTabNo( SCTAB nNewTab ) { nRefTabNo = nNewTab; } - SCTAB GetTab() const { return mnTabNumber; } - SC_DLLPUBLIC SCTAB GetTabNo() const; + /** Returns the tab number for this view (UI) + * + * Directly return the value and ignore that there might be a sheet view tab. + */ + SCTAB GetTabNumber() const { return mnTabNumber; } + + /** Returns the tab that is currently used to fetch the data of a sheet + * + * This returns a different tab when view sheets are used. For a sheet view + * the data is stored in a different (sheet view specific) tab. + */ + SC_DLLPUBLIC SCTAB CurrentTabForData() const; + void SetSheetViewID(sc::SheetViewID nID) { pThisTab->mnSheetViewID = nID; diff --git a/sc/source/ui/miscdlgs/anyrefdg.cxx b/sc/source/ui/miscdlgs/anyrefdg.cxx index 18f3260718b0..e8b85e4e4cc8 100644 --- a/sc/source/ui/miscdlgs/anyrefdg.cxx +++ b/sc/source/ui/miscdlgs/anyrefdg.cxx @@ -186,7 +186,7 @@ void ScFormulaReferenceHelper::ShowFormulaReference(const OUString& rStr) ScTabViewShell* pTabViewShell=pViewData->GetViewShell(); SCCOL nCol = pViewData->GetCurX(); SCROW nRow = pViewData->GetCurY(); - SCTAB nTab = pViewData->GetTabNo(); + SCTAB nTab = pViewData->CurrentTabForData(); ScAddress aPos( nCol, nRow, nTab ); std::unique_ptr<ScTokenArray> pScTokA(m_pRefComp->CompileString(rStr)); @@ -320,7 +320,7 @@ void ScFormulaReferenceHelper::Init() ScDocument& rDoc = pViewData->GetDocument(); SCCOL nCol = pViewData->GetCurX(); SCROW nRow = pViewData->GetCurY(); - SCTAB nTab = pViewData->GetTabNo(); + SCTAB nTab = pViewData->CurrentTabForData(); ScAddress aCursorPos( nCol, nRow, nTab ); m_pRefComp.reset( new ScCompiler( rDoc, aCursorPos, rDoc.GetGrammar()) ); diff --git a/sc/source/ui/miscdlgs/autofmt.cxx b/sc/source/ui/miscdlgs/autofmt.cxx index a8dbe981d386..6a243a3430a3 100644 --- a/sc/source/ui/miscdlgs/autofmt.cxx +++ b/sc/source/ui/miscdlgs/autofmt.cxx @@ -424,7 +424,7 @@ void ScAutoFmtPreview::Init() void ScAutoFmtPreview::DetectRTL(const ScViewData& rViewData) { - SCTAB nCurrentTab = rViewData.GetTabNo(); + SCTAB nCurrentTab = rViewData.CurrentTabForData(); ScDocument& rDoc = rViewData.GetDocument(); mbRTL = rDoc.IsLayoutRTL(nCurrentTab); xBreakIter = rDoc.GetBreakIterator(); diff --git a/sc/source/ui/miscdlgs/datafdlg.cxx b/sc/source/ui/miscdlgs/datafdlg.cxx index 3c6670109446..2e31e8f8d01a 100644 --- a/sc/source/ui/miscdlgs/datafdlg.cxx +++ b/sc/source/ui/miscdlgs/datafdlg.cxx @@ -56,7 +56,7 @@ ScDataFormDlg::ScDataFormDlg(weld::Window* pParent, ScTabViewShell* pTabViewShel nStartRow = aStart.Row(); nEndRow = aEnd.Row(); - nTab = rViewData.GetTabNo(); + nTab = rViewData.CurrentTabForData(); bool bNoSelection(false); //if there is no selection if ((nStartCol == nEndCol) && (nStartRow == nEndRow)) diff --git a/sc/source/ui/miscdlgs/duplicaterecordsdlg.cxx b/sc/source/ui/miscdlgs/duplicaterecordsdlg.cxx index c9881b209973..81bc20b68a42 100644 --- a/sc/source/ui/miscdlgs/duplicaterecordsdlg.cxx +++ b/sc/source/ui/miscdlgs/duplicaterecordsdlg.cxx @@ -88,7 +88,7 @@ void ScDuplicateRecordsDlg::SetDialogData(bool bToggle) { for (int i = mrRange.aStart.Col(); i <= mrRange.aEnd.Col(); ++i) { - OUString aStr(ScAddress(i, 0, mrViewData.GetTabNo()) + OUString aStr(ScAddress(i, 0, mrViewData.CurrentTabForData()) .Format(ScRefFlags::COL_VALID, &mrViewData.GetDocument())); InsertEntry(aStr, bToggle); } @@ -148,7 +148,7 @@ void ScDuplicateRecordsDlg::Init() = officecfg::Office::Calc::Misc::HandleDuplicateRecords::DataIncludesHeaders::get(); ScDBCollection* pDBColl = rDoc.GetDBCollection(); - const SCTAB nCurTab = mrViewData.GetTabNo(); + const SCTAB nCurTab = mrViewData.CurrentTabForData(); if (pDBColl) { ScDBData* pDBData diff --git a/sc/source/ui/miscdlgs/inscldlg.cxx b/sc/source/ui/miscdlgs/inscldlg.cxx index 21ede36e8f3b..ace8e7120a6c 100644 --- a/sc/source/ui/miscdlgs/inscldlg.cxx +++ b/sc/source/ui/miscdlgs/inscldlg.cxx @@ -37,7 +37,7 @@ ScInsertCellDlg::ScInsertCellDlg(weld::Window* pParent, bool bDisallowCellMove) , m_xNumberOfCols(m_xBuilder->weld_spin_button(u"number_of_columns"_ustr)) { const ScViewData* pViewData = ScDocShell::GetViewData(); - if (pViewData && pViewData->GetDocument().IsLayoutRTL(pViewData->GetTabNo())) + if (pViewData && pViewData->GetDocument().IsLayoutRTL(pViewData->CurrentTabForData())) m_xBtnCellsRight->set_label(ScResId(SCSTR_INSERT_RTL)); m_xNumberOfRows->set_range(1, MAX_INS_ROWS); diff --git a/sc/source/ui/namedlg/namepast.cxx b/sc/source/ui/namedlg/namepast.cxx index b31a4fbd0995..165eb6b946af 100644 --- a/sc/source/ui/namedlg/namepast.cxx +++ b/sc/source/ui/namedlg/namepast.cxx @@ -46,7 +46,8 @@ ScNamePasteDlg::ScNamePasteDlg(weld::Window* pParent, ScDocShell* pShell) ScAddress aPos; if (ScViewData* pViewData = ScDocShell::GetViewData()) - aPos = ScAddress(pViewData->GetCurX(), pViewData->GetCurY(), pViewData->GetTabNo()); + aPos + = ScAddress(pViewData->GetCurX(), pViewData->GetCurY(), pViewData->CurrentTabForData()); std::unique_ptr<weld::TreeView> xTreeView(m_xBuilder->weld_tree_view(u"ctrl"_ustr)); xTreeView->set_size_request(xTreeView->get_approximate_digit_width() * 75, diff --git a/sc/source/ui/navipi/navipi.cxx b/sc/source/ui/navipi/navipi.cxx index 4344f5eb1392..1488016c34d7 100644 --- a/sc/source/ui/navipi/navipi.cxx +++ b/sc/source/ui/navipi/navipi.cxx @@ -763,7 +763,7 @@ void ScNavigatorDlg::UpdateTable( const SCTAB* pTab ) if ( pTab ) nCurTab = *pTab; else if ( GetViewData() ) - nCurTab = pViewData->GetTabNo(); + nCurTab = pViewData->CurrentTabForData(); } void ScNavigatorDlg::UpdateAll() diff --git a/sc/source/ui/optdlg/tpusrlst.cxx b/sc/source/ui/optdlg/tpusrlst.cxx index 3ee897edc2fd..443866f8f0d8 100644 --- a/sc/source/ui/optdlg/tpusrlst.cxx +++ b/sc/source/ui/optdlg/tpusrlst.cxx @@ -667,7 +667,7 @@ IMPL_LINK( ScTpUserLists, BtnClickHdl, weld::Button&, rBtn, void ) { bAreaOk = ScRangeUtil::IsAbsArea( theAreaStr, *pDoc, - pViewData->GetTabNo(), + pViewData->CurrentTabForData(), &theAreaStr, &theStartPos, &theEndPos, @@ -676,7 +676,7 @@ IMPL_LINK( ScTpUserLists, BtnClickHdl, weld::Button&, rBtn, void ) { bAreaOk = ScRangeUtil::IsAbsPos( theAreaStr, *pDoc, - pViewData->GetTabNo(), + pViewData->CurrentTabForData(), &theAreaStr, &theStartPos, pDoc->GetAddressConvention() ); diff --git a/sc/source/ui/pagedlg/areasdlg.cxx b/sc/source/ui/pagedlg/areasdlg.cxx index 57a93d4cd5f3..a0188e4129e3 100644 --- a/sc/source/ui/pagedlg/areasdlg.cxx +++ b/sc/source/ui/pagedlg/areasdlg.cxx @@ -137,7 +137,7 @@ ScPrintAreasDlg::ScPrintAreasDlg(SfxBindings* pB, SfxChildWindow* pCW, weld::Win if ( pScViewSh ) { pViewData = &pScViewSh->GetViewData(); - nCurTab = pViewData->GetTabNo(); + nCurTab = pViewData->CurrentTabForData(); } Impl_Reset(); diff --git a/sc/source/ui/pagedlg/tphf.cxx b/sc/source/ui/pagedlg/tphf.cxx index b6421f2b948e..b4dad51ccfc1 100644 --- a/sc/source/ui/pagedlg/tphf.cxx +++ b/sc/source/ui/pagedlg/tphf.cxx @@ -60,7 +60,7 @@ ScHFPage::ScHFPage(weld::Container* pPage, weld::DialogController* pController, ScViewData& rViewData = pViewSh->GetViewData(); ScDocument& rDoc = rViewData.GetDocument(); - aStrPageStyle = rDoc.GetPageStyle( rViewData.GetTabNo() ); + aStrPageStyle = rDoc.GetPageStyle( rViewData.CurrentTabForData() ); } m_xBtnEdit->connect_clicked(LINK(this, ScHFPage, BtnHdl)); diff --git a/sc/source/ui/uitest/uiobject.cxx b/sc/source/ui/uitest/uiobject.cxx index 0148f8f4f52e..f1d1455f8c69 100644 --- a/sc/source/ui/uitest/uiobject.cxx +++ b/sc/source/ui/uitest/uiobject.cxx @@ -64,7 +64,7 @@ StringMap ScGridWinUIObject::get_state() { StringMap aMap = WindowUIObject::get_state(); - aMap[u"SelectedTable"_ustr] = OUString::number(mxGridWindow->getViewData().GetTabNo()); + aMap[u"SelectedTable"_ustr] = OUString::number(mxGridWindow->getViewData().CurrentTabForData()); aMap[u"CurrentColumn"_ustr] = OUString::number(mxGridWindow->getViewData().GetCurX()); aMap[u"CurrentRow"_ustr] = OUString::number(mxGridWindow->getViewData().GetCurY()); @@ -81,7 +81,7 @@ StringMap ScGridWinUIObject::get_state() aMap[u"MarkedArea"_ustr] = aMarkedAreaString; ScDocument& rDoc = mxGridWindow->getViewData().GetDocument(); - ScAddress aPos( mxGridWindow->getViewData().GetCurX() , mxGridWindow->getViewData().GetCurY() , mxGridWindow->getViewData().GetTabNo() ); + ScAddress aPos( mxGridWindow->getViewData().GetCurX() , mxGridWindow->getViewData().GetCurY() , mxGridWindow->getViewData().CurrentTabForData() ); if ( rDoc.HasNote( aPos ) ) { ScPostIt* pNote = rDoc.GetNote(aPos); @@ -91,13 +91,13 @@ StringMap ScGridWinUIObject::get_state() SCCOL nCol; SCROW nRow; - aMap[u"CurrentTableHasData"_ustr] = OUString::boolean( rDoc.GetDataStart( mxGridWindow->getViewData().GetTabNo(), nCol, nRow ) ); + aMap[u"CurrentTableHasData"_ustr] = OUString::boolean( rDoc.GetDataStart( mxGridWindow->getViewData().CurrentTabForData(), nCol, nRow ) ); nCol = mxGridWindow->getViewData().GetCurX(); nRow = 0; - aMap[u"CurrentColumnHasData"_ustr] = OUString::boolean( rDoc.GetPrintAreaVer( mxGridWindow->getViewData().GetTabNo(), nCol, nCol, nRow, true ) ); + aMap[u"CurrentColumnHasData"_ustr] = OUString::boolean( rDoc.GetPrintAreaVer( mxGridWindow->getViewData().CurrentTabForData(), nCol, nCol, nRow, true ) ); nRow = mxGridWindow->getViewData().GetCurY(); nCol = 0; - aMap[u"CurrentRowHasData"_ustr] = OUString::boolean( rDoc.GetPrintAreaHor( mxGridWindow->getViewData().GetTabNo(), nRow, nRow, nCol ) ); + aMap[u"CurrentRowHasData"_ustr] = OUString::boolean( rDoc.GetPrintAreaHor( mxGridWindow->getViewData().CurrentTabForData(), nRow, nRow, nCol ) ); ScAppOptions aOpt = ScModule::get()->GetAppOptions(); aMap[u"Zoom"_ustr] = OUString::number( aOpt.GetZoom() ); @@ -309,7 +309,7 @@ void ScGridWinUIObject::execute(const OUString& rAction, auto itr = rParameters.find(u"SETTEXT"_ustr); const OUString rStr = itr->second; ScDocument& rDoc = mxGridWindow->getViewData().GetDocument(); - ScAddress aPos( mxGridWindow->getViewData().GetCurX() , mxGridWindow->getViewData().GetCurY() , mxGridWindow->getViewData().GetTabNo() ); + ScAddress aPos( mxGridWindow->getViewData().GetCurX() , mxGridWindow->getViewData().GetCurY() , mxGridWindow->getViewData().CurrentTabForData() ); rDoc.GetOrCreateNote( aPos )->SetText( aPos , rStr ); } } @@ -370,7 +370,7 @@ SdrPage* get_draw_page(VclPtr<ScGridWindow> const & xGridWindow, SCTAB nTab) std::set<OUString> collect_charts(VclPtr<ScGridWindow> const & xGridWindow) { - SCTAB nTab = xGridWindow->getViewData().GetTabNo(); + SCTAB nTab = xGridWindow->getViewData().CurrentTabForData(); SdrPage* pPage = get_draw_page(xGridWindow, nTab); std::set<OUString> aRet; diff --git a/sc/source/ui/undo/undobase.cxx b/sc/source/ui/undo/undobase.cxx index f939351fa19d..e6d0f32c05e6 100644 --- a/sc/source/ui/undo/undobase.cxx +++ b/sc/source/ui/undo/undobase.cxx @@ -235,7 +235,7 @@ void ScSimpleUndo::ShowTable( const ScRange& rRange ) { SCTAB nStart = rRange.aStart.Tab(); SCTAB nEnd = rRange.aEnd.Tab(); - SCTAB nTab = pViewShell->GetViewData().GetTabNo(); + SCTAB nTab = pViewShell->GetViewData().CurrentTabForData(); if ( nTab < nStart || nTab > nEnd ) // if not in range: pViewShell->SetTabNo( nStart ); // at beginning of the range } @@ -346,7 +346,7 @@ void ScBlockUndo::ShowBlock() ShowTable( aBlockRange ); // with multiple sheets in range each of them is good pViewShell->MoveCursorAbs( aBlockRange.aStart.Col(), aBlockRange.aStart.Row(), SC_FOLLOW_JUMP, false, false ); - SCTAB nTab = pViewShell->GetViewData().GetTabNo(); + SCTAB nTab = pViewShell->GetViewData().CurrentTabForData(); ScRange aRange = aBlockRange; aRange.aStart.SetTab( nTab ); aRange.aEnd.SetTab( nTab ); @@ -406,7 +406,7 @@ void ScMultiBlockUndo::ShowBlock() ShowTable(aRange); pViewShell->MoveCursorAbs( aRange.aStart.Col(), aRange.aStart.Row(), SC_FOLLOW_JUMP, false, false); - SCTAB nTab = pViewShell->GetViewData().GetTabNo(); + SCTAB nTab = pViewShell->GetViewData().CurrentTabForData(); aRange.aStart.SetTab(nTab); aRange.aEnd.SetTab(nTab); pViewShell->MarkRange(aRange, false); diff --git a/sc/source/ui/undo/undoblk.cxx b/sc/source/ui/undo/undoblk.cxx index b70394179524..5b30ac8c470e 100644 --- a/sc/source/ui/undo/undoblk.cxx +++ b/sc/source/ui/undo/undoblk.cxx @@ -273,7 +273,7 @@ void ScUndoInsertCells::DoChange( const bool bUndo ) if (!comphelper::LibreOfficeKit::isActive()) return; - SCTAB nTab = pViewShell->GetViewData().GetTabNo(); + SCTAB nTab = pViewShell->GetViewData().CurrentTabForData(); bool bColsAffected = (eCmd == INS_INSCOLS_BEFORE || eCmd == INS_INSCOLS_AFTER || eCmd == INS_CELLSRIGHT); bool bRowsAffected = (eCmd == INS_INSROWS_BEFORE || eCmd == INS_INSROWS_AFTER || eCmd == INS_CELLSDOWN); @@ -544,7 +544,7 @@ void ScUndoDeleteCells::DoChange( const bool bUndo ) if (!comphelper::LibreOfficeKit::isActive()) return; - SCTAB nTab = pViewShell->GetViewData().GetTabNo(); + SCTAB nTab = pViewShell->GetViewData().CurrentTabForData(); bool bColsAffected = (eCmd == DelCellCmd::Cols || eCmd == DelCellCmd::CellsLeft); bool bRowsAffected = (eCmd == DelCellCmd::Rows || eCmd == DelCellCmd::CellsUp); @@ -1866,7 +1866,7 @@ bool ScUndoUseScenario::CanRepeat(SfxRepeatTarget& rTarget) const if (auto pViewTarget = dynamic_cast<ScTabViewTarget*>( &rTarget)) { ScViewData& rViewData = pViewTarget->GetViewShell()->GetViewData(); - return !rViewData.GetDocument().IsScenario( rViewData.GetTabNo() ); + return !rViewData.GetDocument().IsScenario( rViewData.CurrentTabForData() ); } return false; } diff --git a/sc/source/ui/undo/undoblk2.cxx b/sc/source/ui/undo/undoblk2.cxx index 52ee421cc3de..17aff9b2f9f1 100644 --- a/sc/source/ui/undo/undoblk2.cxx +++ b/sc/source/ui/undo/undoblk2.cxx @@ -125,7 +125,7 @@ void ScUndoWidthOrHeight::Undo() if (pViewShell) { - SCTAB nCurrentTab = pViewShell->GetViewData().GetTabNo(); + SCTAB nCurrentTab = pViewShell->GetViewData().CurrentTabForData(); bool bAffectsVisibility = (eMode != SC_SIZE_ORIGINAL && eMode != SC_SIZE_VISOPT); ScTabViewShell::notifyAllViewsSheetGeomInvalidation( pViewShell, bWidth /* bColumns */, !bWidth /* bRows */, @@ -156,7 +156,7 @@ void ScUndoWidthOrHeight::Redo() ScTabViewShell* pViewShell = ScTabViewShell::GetActiveViewShell(); if (pViewShell) { - SCTAB nTab = pViewShell->GetViewData().GetTabNo(); + SCTAB nTab = pViewShell->GetViewData().CurrentTabForData(); if ( nTab < nStartTab || nTab > nEndTab ) pViewShell->SetTabNo( nStartTab ); diff --git a/sc/source/ui/undo/undoblk3.cxx b/sc/source/ui/undo/undoblk3.cxx index 9c4bc4409ebd..12b0217f6cf0 100644 --- a/sc/source/ui/undo/undoblk3.cxx +++ b/sc/source/ui/undo/undoblk3.cxx @@ -306,7 +306,7 @@ void ScUndoFillTable::DoChange( const bool bUndo ) ScTabViewShell* pViewShell = ScTabViewShell::GetActiveViewShell(); if (pViewShell) { - SCTAB nTab = pViewShell->GetViewData().GetTabNo(); + SCTAB nTab = pViewShell->GetViewData().CurrentTabForData(); if ( !aMarkData.GetTableSelect(nTab) ) pViewShell->SetTabNo( nSrcTab ); diff --git a/sc/source/ui/undo/undocell.cxx b/sc/source/ui/undo/undocell.cxx index c7c085d1fe15..22d08bbe7830 100644 --- a/sc/source/ui/undo/undocell.cxx +++ b/sc/source/ui/undo/undocell.cxx @@ -632,7 +632,7 @@ void ScUndoPrintZoom::Repeat(SfxRepeatTarget& rTarget) { ScTabViewShell& rViewShell = *pViewTarget->GetViewShell(); ScViewData& rViewData = rViewShell.GetViewData(); - rViewData.GetDocShell()->SetPrintZoom( rViewData.GetTabNo(), nNewScale, nNewPages ); + rViewData.GetDocShell()->SetPrintZoom( rViewData.CurrentTabForData(), nNewScale, nNewPages ); } } diff --git a/sc/source/ui/undo/undodat.cxx b/sc/source/ui/undo/undodat.cxx index f34ebba87d32..f3f3156a2664 100644 --- a/sc/source/ui/undo/undodat.cxx +++ b/sc/source/ui/undo/undodat.cxx @@ -87,7 +87,7 @@ void ScUndoDoOutline::Undo() // sheet has to be switched over (#46952#)! - SCTAB nVisTab = pViewShell->GetViewData().GetTabNo(); + SCTAB nVisTab = pViewShell->GetViewData().CurrentTabForData(); if ( nVisTab != nTab ) pViewShell->SetTabNo( nTab ); @@ -125,7 +125,7 @@ void ScUndoDoOutline::Redo() // sheet has to be switched over (#46952#)! - SCTAB nVisTab = pViewShell->GetViewData().GetTabNo(); + SCTAB nVisTab = pViewShell->GetViewData().CurrentTabForData(); if ( nVisTab != nTab ) pViewShell->SetTabNo( nTab ); @@ -186,7 +186,7 @@ void ScUndoMakeOutline::Undo() rDoc.SetOutlineTable( nTab, pUndoTable.get() ); - SCTAB nVisTab = pViewShell->GetViewData().GetTabNo(); + SCTAB nVisTab = pViewShell->GetViewData().CurrentTabForData(); if ( nVisTab != nTab ) pViewShell->SetTabNo( nTab ); @@ -291,7 +291,7 @@ void ScUndoOutlineLevel::Undo() true /* bGroups */, nTab); pViewShell->UpdateScrollBars(); - SCTAB nVisTab = pViewShell->GetViewData().GetTabNo(); + SCTAB nVisTab = pViewShell->GetViewData().CurrentTabForData(); if ( nVisTab != nTab ) pViewShell->SetTabNo( nTab ); @@ -310,7 +310,7 @@ void ScUndoOutlineLevel::Redo() // sheet has to be switched on or off before this (#46952#) !!! - SCTAB nVisTab = pViewShell->GetViewData().GetTabNo(); + SCTAB nVisTab = pViewShell->GetViewData().CurrentTabForData(); if ( nVisTab != nTab ) pViewShell->SetTabNo( nTab ); @@ -391,7 +391,7 @@ void ScUndoOutlineBlock::Undo() true /* bGroups */, nTab); pViewShell->UpdateScrollBars(); - SCTAB nVisTab = pViewShell->GetViewData().GetTabNo(); + SCTAB nVisTab = pViewShell->GetViewData().CurrentTabForData(); if ( nVisTab != nTab ) pViewShell->SetTabNo( nTab ); @@ -483,7 +483,7 @@ void ScUndoRemoveAllOutlines::Undo() pViewShell->UpdateScrollBars(); - SCTAB nVisTab = pViewShell->GetViewData().GetTabNo(); + SCTAB nVisTab = pViewShell->GetViewData().CurrentTabForData(); if ( nVisTab != nTab ) pViewShell->SetTabNo( nTab ); @@ -510,7 +510,7 @@ void ScUndoRemoveAllOutlines::Redo() // sheet has to be switched over (#46952#)! SCTAB nTab = aBlockStart.Tab(); - SCTAB nVisTab = pViewShell->GetViewData().GetTabNo(); + SCTAB nVisTab = pViewShell->GetViewData().CurrentTabForData(); if ( nVisTab != nTab ) pViewShell->SetTabNo( nTab ); @@ -579,7 +579,7 @@ void ScUndoAutoOutline::Undo() pViewShell->UpdateScrollBars(); } - SCTAB nVisTab = pViewShell->GetViewData().GetTabNo(); + SCTAB nVisTab = pViewShell->GetViewData().CurrentTabForData(); if ( nVisTab != nTab ) pViewShell->SetTabNo( nTab ); @@ -599,7 +599,7 @@ void ScUndoAutoOutline::Redo() SCTAB nTab = aBlockStart.Tab(); // sheet has to be switched on or off before this (#46952#) !!! - SCTAB nVisTab = pViewShell->GetViewData().GetTabNo(); + SCTAB nVisTab = pViewShell->GetViewData().CurrentTabForData(); if ( nVisTab != nTab ) pViewShell->SetTabNo( nTab ); @@ -709,7 +709,7 @@ void ScUndoSubTotals::Undo() if (xUndoDB) rDoc.SetDBCollection(std::unique_ptr<ScDBCollection>(new ScDBCollection(*xUndoDB)), true); - SCTAB nVisTab = pViewShell->GetViewData().GetTabNo(); + SCTAB nVisTab = pViewShell->GetViewData().CurrentTabForData(); if ( nVisTab != nTab ) pViewShell->SetTabNo( nTab ); @@ -727,7 +727,7 @@ void ScUndoSubTotals::Redo() BeginRedo(); - SCTAB nVisTab = pViewShell->GetViewData().GetTabNo(); + SCTAB nVisTab = pViewShell->GetViewData().CurrentTabForData(); if ( nVisTab != nTab ) pViewShell->SetTabNo( nTab ); @@ -863,7 +863,7 @@ void ScUndoQuery::Undo() DoSdrUndoAction( pDrawUndo.get(), &rDoc ); - SCTAB nVisTab = pViewShell->GetViewData().GetTabNo(); + SCTAB nVisTab = pViewShell->GetViewData().CurrentTabForData(); if ( nVisTab != nTab ) pViewShell->SetTabNo( nTab ); @@ -911,7 +911,7 @@ void ScUndoQuery::Redo() BeginRedo(); - SCTAB nVisTab = pViewShell->GetViewData().GetTabNo(); + SCTAB nVisTab = pViewShell->GetViewData().CurrentTabForData(); if ( nVisTab != nTab ) pViewShell->SetTabNo( nTab ); @@ -1174,7 +1174,7 @@ void ScUndoImportData::Undo() ScUndoUtil::MarkSimpleBlock( pDocShell, nCol1, nRow1, nTable, nCol2, nRow2, nTable ); } - SCTAB nVisTab = pViewShell->GetViewData().GetTabNo(); + SCTAB nVisTab = pViewShell->GetViewData().CurrentTabForData(); if ( nVisTab != nTab ) pViewShell->SetTabNo( nTab ); @@ -1246,7 +1246,7 @@ void ScUndoImportData::Redo() ScUndoUtil::MarkSimpleBlock( pDocShell, nCol1, nRow1, nTable, nCol2, nRow2, nTable ); } - SCTAB nVisTab = pViewShell->GetViewData().GetTabNo(); + SCTAB nVisTab = pViewShell->GetViewData().CurrentTabForData(); if ( nVisTab != nTab ) pViewShell->SetTabNo( nTab ); @@ -1409,7 +1409,7 @@ void ScUndoRepeatDB::Undo() false /* bSizes*/, true /* bHidden */, true /* bFiltered */, false /* bGroups */, nTab); - SCTAB nVisTab = pViewShell->GetViewData().GetTabNo(); + SCTAB nVisTab = pViewShell->GetViewData().CurrentTabForData(); if ( nVisTab != nTab ) pViewShell->SetTabNo( nTab ); @@ -1429,7 +1429,7 @@ void ScUndoRepeatDB::Redo() SCTAB nTab = aBlockStart.Tab(); - SCTAB nVisTab = pViewShell->GetViewData().GetTabNo(); + SCTAB nVisTab = pViewShell->GetViewData().CurrentTabForData(); if ( nVisTab != nTab ) pViewShell->SetTabNo( nTab ); @@ -1687,7 +1687,7 @@ void ScUndoConsolidate::Undo() ScTabViewShell* pViewShell = ScTabViewShell::GetActiveViewShell(); if (pViewShell) { - SCTAB nViewTab = pViewShell->GetViewData().GetTabNo(); + SCTAB nViewTab = pViewShell->GetViewData().CurrentTabForData(); if ( nViewTab != nTab ) pViewShell->SetTabNo( nTab ); } @@ -1704,7 +1704,7 @@ void ScUndoConsolidate::Redo() ScTabViewShell* pViewShell = ScTabViewShell::GetActiveViewShell(); if (pViewShell) { - SCTAB nViewTab = pViewShell->GetViewData().GetTabNo(); + SCTAB nViewTab = pViewShell->GetViewData().CurrentTabForData(); if ( nViewTab != aParam.nTab ) pViewShell->SetTabNo( aParam.nTab ); } diff --git a/sc/source/ui/undo/undotab.cxx b/sc/source/ui/undo/undotab.cxx index 52d1a18ff62d..3d9c768185e6 100644 --- a/sc/source/ui/undo/undotab.cxx +++ b/sc/source/ui/undo/undotab.cxx @@ -506,7 +506,7 @@ void ScUndoDeleteTab::Repeat(SfxRepeatTarget& rTarget) if (auto pViewTarget = dynamic_cast<ScTabViewTarget*>( &rTarget)) { ScTabViewShell* pViewShell = pViewTarget->GetViewShell(); - pViewShell->DeleteTable( pViewShell->GetViewData().GetTabNo() ); + pViewShell->DeleteTable( pViewShell->GetViewData().CurrentTabForData() ); } } diff --git a/sc/source/ui/undo/undoutil.cxx b/sc/source/ui/undo/undoutil.cxx index de9a50ef8283..38bf22641ee0 100644 --- a/sc/source/ui/undo/undoutil.cxx +++ b/sc/source/ui/undo/undoutil.cxx @@ -39,7 +39,7 @@ void ScUndoUtil::MarkSimpleBlock( const ScDocShell* pDocShell, if (!pViewShell) return; - SCTAB nViewTab = pViewShell->GetViewData().GetTabNo(); + SCTAB nViewTab = pViewShell->GetViewData().CurrentTabForData(); if ( nViewTab < nStartZ || nViewTab > nEndZ ) pViewShell->SetTabNo( nStartZ ); diff --git a/sc/source/ui/unoobj/dispuno.cxx b/sc/source/ui/unoobj/dispuno.cxx index 536d271d643f..c5edbabfd5e1 100644 --- a/sc/source/ui/unoobj/dispuno.cxx +++ b/sc/source/ui/unoobj/dispuno.cxx @@ -209,7 +209,7 @@ void SAL_CALL ScDispatch::dispatch( const util::URL& aURL, if ( pViewShell && aURL.Complete == cURLInsertColumns ) { ScViewData& rViewData = pViewShell->GetViewData(); - ScAddress aPos( rViewData.GetCurX(), rViewData.GetCurY(), rViewData.GetTabNo() ); + ScAddress aPos( rViewData.GetCurX(), rViewData.GetCurY(), rViewData.CurrentTabForData() ); ScDBDocFunc aFunc( *rViewData.GetDocShell() ); aFunc.DoImportUno( aPos, aArgs ); diff --git a/sc/source/ui/unoobj/docuno.cxx b/sc/source/ui/unoobj/docuno.cxx index 1bad5589add9..4edce1d6a496 100644 --- a/sc/source/ui/unoobj/docuno.cxx +++ b/sc/source/ui/unoobj/docuno.cxx @@ -541,7 +541,7 @@ static ScViewData* lcl_getViewMatchingDocZoomTab(const Fraction& rZoomX, continue; ScViewData& rData = pTabViewShell->GetViewData(); - if (rData.GetTabNo() == nTab && rData.GetZoomX() == rZoomX && rData.GetZoomY() == rZoomY && + if (rData.CurrentTabForData() == nTab && rData.GetZoomX() == rZoomX && rData.GetZoomY() == rZoomY && getTabViewRenderState(*pTabViewShell) == rViewRenderState) { return &rData; @@ -570,7 +570,7 @@ void ScModelObj::paintTile( VirtualDevice& rDevice, // first few shells. This is to avoid switching of zooms in ScGridWindow::PaintTile // and hence avoid grid-offset recomputation on all shapes which is not cheap. ScViewData* pViewData = lcl_getViewMatchingDocZoomTab(aFracX, aFracY, - pActiveViewData->GetTabNo(), pViewShell->GetDocId(), + pActiveViewData->CurrentTabForData(), pViewShell->GetDocId(), getTabViewRenderState(*pViewShell)); if (!pViewData) pViewData = pActiveViewData; @@ -601,7 +601,7 @@ void ScModelObj::paintTile( VirtualDevice& rDevice, // Draw Form controls ScDrawLayer* pDrawLayer = pDocShell->GetDocument().GetDrawLayer(); - SdrPage* pPage = pDrawLayer->GetPage(sal_uInt16(pViewData->GetTabNo())); + SdrPage* pPage = pDrawLayer->GetPage(sal_uInt16(pViewData->CurrentTabForData())); SdrView* pDrawView = pViewData->GetViewShell()->GetScDrawView(); tools::Rectangle aTileRect(Point(nTilePosX, nTilePosY), Size(nTileWidth, nTileHeight)); Size aOutputSize(nOutputWidth, nOutputHeight); @@ -722,7 +722,7 @@ Size ScModelObj::getDocumentSize(SCCOL& rnTiledRenderingAreaEndCol, SCROW& rnTil if (!pViewData) return aSize; - SCTAB nTab = pViewData->GetTabNo(); + SCTAB nTab = pViewData->CurrentTabForData(); rnTiledRenderingAreaEndCol = 0; rnTiledRenderingAreaEndRow = 0; const ScDocument& rDoc = pDocShell->GetDocument(); @@ -803,7 +803,7 @@ void ScModelObj::postMouseEvent(int nType, int nX, int nY, int nCount, int nButt if (!pGridWindow) return; - SCTAB nTab = pViewData->GetTabNo(); + SCTAB nTab = pViewData->CurrentTabForData(); const ScDocument& rDoc = pDocShell->GetDocument(); bool bDrawNegativeX = rDoc.IsNegativePage(nTab); if (SfxLokHelper::testInPlaceComponentMouseEventHit(pViewShell, nType, nX, nY, nCount, diff --git a/sc/source/ui/unoobj/viewuno.cxx b/sc/source/ui/unoobj/viewuno.cxx index 02f66358cb25..97bb4aa6c613 100644 --- a/sc/source/ui/unoobj/viewuno.cxx +++ b/sc/source/ui/unoobj/viewuno.cxx @@ -270,7 +270,7 @@ table::CellRangeAddress SAL_CALL ScViewPaneBase::getVisibleRange() SCROW nVisY = rViewData.VisibleCellsY( eWhichV ); if (!nVisX) nVisX = 1; // there has to be something in the range if (!nVisY) nVisY = 1; - aAdr.Sheet = rViewData.GetTabNo(); + aAdr.Sheet = rViewData.CurrentTabForData(); aAdr.StartColumn = rViewData.GetPosX( eWhichH ); aAdr.StartRow = rViewData.GetPosY( eWhichV ); aAdr.EndColumn = aAdr.StartColumn + nVisX - 1; @@ -397,7 +397,7 @@ awt::Rectangle ScViewPaneBase::GetVisArea() const SC_SPLIT_TOP : SC_SPLIT_BOTTOM; ScAddress aCell(pViewShell->GetViewData().GetPosX(eWhichH), pViewShell->GetViewData().GetPosY(eWhichV), - pViewShell->GetViewData().GetTabNo()); + pViewShell->GetViewData().CurrentTabForData()); tools::Rectangle aCellRect( rDoc.GetMMRect( aCell.Col(), aCell.Row(), aCell.Col(), aCell.Row(), aCell.Tab() ) ); Size aVisSize( pWindow->PixelToLogic( pWindow->GetSizePixel(), pWindow->GetDrawMapMode( true ) ) ); Point aVisPos( aCellRect.TopLeft() ); @@ -456,7 +456,7 @@ ScTabViewObj::ScTabViewObj( ScTabViewShell* pViewSh ) : mbLeftMousePressed(false) { if (pViewSh) - nPreviousTab = pViewSh->GetViewData().GetTabNo(); + nPreviousTab = pViewSh->GetViewData().CurrentTabForData(); } ScTabViewObj::~ScTabViewObj() @@ -557,7 +557,7 @@ void ScTabViewObj::SheetChanged( bool bSameTabButMoved ) sheet::ActivationEvent aEvent; uno::Reference< sheet::XSpreadsheetView > xView(this); aEvent.Source.set(xView, uno::UNO_QUERY); - aEvent.ActiveSheet = new ScTableSheetObj(pDocSh, rViewData.GetTabNo()); + aEvent.ActiveSheet = new ScTableSheetObj(pDocSh, rViewData.CurrentTabForData()); // Listener's handler may remove it from the listeners list for (size_t i = aActivationListeners.size(); i > 0; --i) { @@ -574,7 +574,7 @@ void ScTabViewObj::SheetChanged( bool bSameTabButMoved ) /* Handle sheet events, but do not trigger event handlers, if the old active sheet gets re-activated after inserting/deleting/moving a sheet. */ - SCTAB nNewTab = rViewData.GetTabNo(); + SCTAB nNewTab = rViewData.CurrentTabForData(); if ( !bSameTabButMoved && (nNewTab != nPreviousTab) ) { lcl_CallActivate( pDocSh, nPreviousTab, ScSheetEventId::UNFOCUS ); @@ -736,7 +736,7 @@ sal_Bool SAL_CALL ScTabViewObj::select( const uno::Any& aSelection ) // multiselection const ScRange & rFirst = rRanges[ 0 ]; - if ( !lcl_TabInRanges( rViewData.GetTabNo(), rRanges ) ) + if ( !lcl_TabInRanges( rViewData.CurrentTabForData(), rRanges ) ) pViewSh->SetTabNo( rFirst.aStart.Tab() ); pViewSh->DoneBlockMode(); pViewSh->InitOwnBlockMode( rFirst ); /* TODO: or even the overall range? */ @@ -1088,7 +1088,7 @@ uno::Reference<sheet::XSpreadsheet> SAL_CALL ScTabViewObj::getActiveSheet() if (pViewSh) { ScViewData& rViewData = pViewSh->GetViewData(); - SCTAB nTab = rViewData.GetTabNo(); + SCTAB nTab = rViewData.CurrentTabForData(); return new ScTableSheetObj( rViewData.GetDocShell(), nTab ); } return nullptr; @@ -1128,7 +1128,7 @@ uno::Reference< uno::XInterface > ScTabViewObj::GetClickedObject(const Point& rP SCROW nY; ScViewData& rData = GetViewShell()->GetViewData(); ScSplitPos eSplitMode = rData.GetActivePart(); - SCTAB nTab(rData.GetTabNo()); + SCTAB nTab(rData.CurrentTabForData()); rData.GetPosFromPixel( rPoint.X(), rPoint.Y(), eSplitMode, nX, nY); ScAddress aCellPos (nX, nY, nTab); @@ -1174,7 +1174,7 @@ bool ScTabViewObj::IsMouseListening() const // also include sheet events, because MousePressed must be called for them ScViewData& rViewData = GetViewShell()->GetViewData(); ScDocument& rDoc = rViewData.GetDocument(); - SCTAB nTab = rViewData.GetTabNo(); + SCTAB nTab = rViewData.CurrentTabForData(); return rDoc.HasSheetEventScript( nTab, ScSheetEventId::RIGHTCLICK, true ) || rDoc.HasSheetEventScript( nTab, ScSheetEventId::DOUBLECLICK, true ) || @@ -1227,7 +1227,7 @@ bool ScTabViewObj::MousePressed( const awt::MouseEvent& e ) ScViewData& rViewData = pViewSh->GetViewData(); ScDocShell* pDocSh = rViewData.GetDocShell(); ScDocument& rDoc = pDocSh->GetDocument(); - SCTAB nTab = rViewData.GetTabNo(); + SCTAB nTab = rViewData.CurrentTabForData(); const ScSheetEvents* pEvents = rDoc.GetSheetEvents(nTab); if (pEvents) { @@ -1702,7 +1702,7 @@ void ScTabViewObj::SelectionChanged() ScViewData& rViewData = pViewSh->GetViewData(); ScDocShell* pDocSh = rViewData.GetDocShell(); ScDocument& rDoc = pDocSh->GetDocument(); - SCTAB nTab = rViewData.GetTabNo(); + SCTAB nTab = rViewData.CurrentTabForData(); const ScSheetEvents* pEvents = rDoc.GetSheetEvents(nTab); if (pEvents) { @@ -2198,7 +2198,7 @@ uno::Sequence<sal_Int32> ScTabViewObj::getSelectedSheets() if (pExtOpt && pExtOpt->IsChanged()) { pViewSh->GetViewData().ReadExtOptions(*pExtOpt); // Excel view settings - pViewSh->SetTabNo(pViewSh->GetViewData().GetTabNo(), true); + pViewSh->SetTabNo(pViewSh->GetViewData().CurrentTabForData(), true); pExtOpt->SetChanged(false); } diff --git a/sc/source/ui/view/cellsh.cxx b/sc/source/ui/view/cellsh.cxx index 23af261add38..ae99dbeebe30 100644 --- a/sc/source/ui/view/cellsh.cxx +++ b/sc/source/ui/view/cellsh.cxx @@ -114,7 +114,7 @@ void ScCellShell::GetBlockState( SfxItemSet& rSet ) nRow1 = aMarkRange.aStart.Row(); nCol2 = aMarkRange.aEnd.Col(); nRow2 = aMarkRange.aEnd.Row(); - SCTAB nTab = GetViewData().GetTabNo(); + SCTAB nTab = GetViewData().CurrentTabForData(); SfxWhichIter aIter(rSet); sal_uInt16 nWhich = aIter.FirstWhich(); @@ -362,7 +362,7 @@ void ScCellShell::GetCellState( SfxItemSet& rSet ) ScDocShell* pDocShell = GetViewData().GetDocShell(); ScDocument& rDoc = GetViewData().GetDocShell()->GetDocument(); ScAddress aCursor( GetViewData().GetCurX(), GetViewData().GetCurY(), - GetViewData().GetTabNo() ); + GetViewData().CurrentTabForData() ); SfxWhichIter aIter(rSet); sal_uInt16 nWhich = aIter.FirstWhich(); while ( nWhich ) @@ -402,7 +402,7 @@ void ScCellShell::GetCellState( SfxItemSet& rSet ) break; case SID_INSERT_POSTIT: { - ScAddress aPos( GetViewData().GetCurX(), GetViewData().GetCurY(), GetViewData().GetTabNo() ); + ScAddress aPos( GetViewData().GetCurX(), GetViewData().GetCurY(), GetViewData().CurrentTabForData() ); if( rDoc.GetNote(aPos) ) { bDisable = true; @@ -419,7 +419,7 @@ void ScCellShell::GetCellState( SfxItemSet& rSet ) break; case SID_EDIT_POSTIT: { - ScAddress aPos( GetViewData().GetCurX(), GetViewData().GetCurY(), GetViewData().GetTabNo() ); + ScAddress aPos( GetViewData().GetCurX(), GetViewData().GetCurY(), GetViewData().CurrentTabForData() ); bDisable = rDoc.GetNote(aPos) == nullptr; } break; @@ -635,7 +635,7 @@ void ScCellShell::GetClipState( SfxItemSet& rSet ) { SCCOL nCol = GetViewData().GetCurX(); SCROW nRow = GetViewData().GetCurY(); - SCTAB nTab = GetViewData().GetTabNo(); + SCTAB nTab = GetViewData().CurrentTabForData(); ScDocument& rDoc = GetViewData().GetDocShell()->GetDocument(); if (!rDoc.IsBlockEditable( nTab, nCol,nRow, nCol,nRow )) bDisable = true; @@ -681,7 +681,7 @@ void ScCellShell::GetHLinkState( SfxItemSet& rSet ) ScDocument& rDoc = rData.GetDocument(); SCCOL nPosX = rData.GetCurX(); SCROW nPosY = rData.GetCurY(); - SCTAB nTab = rData.GetTabNo(); + SCTAB nTab = rData.CurrentTabForData(); aHLinkItem.SetName(rDoc.GetString(nPosX, nPosY, nTab)); } @@ -697,7 +697,7 @@ void ScCellShell::GetState(SfxItemSet &rSet) ScMarkData& rMark = rData.GetMarkData(); SCCOL nPosX = rData.GetCurX(); SCROW nPosY = rData.GetCurY(); - SCTAB nTab = rData.GetTabNo(); + SCTAB nTab = rData.CurrentTabForData(); SCTAB nTabCount = rDoc.GetTableCount(); SCTAB nTabSelCount = rMark.GetSelectCount(); @@ -1032,7 +1032,7 @@ void ScCellShell::GetState(SfxItemSet &rSet) case SID_OUTLINE_MAKE: { if ( GetViewData().GetDocument().GetDPAtCursor( GetViewData().GetCurX(), - GetViewData().GetCurY(), GetViewData().GetTabNo() ) ) + GetViewData().GetCurY(), GetViewData().CurrentTabForData() ) ) { //! test for data pilot operation } @@ -1044,7 +1044,7 @@ void ScCellShell::GetState(SfxItemSet &rSet) break; case SID_OUTLINE_SHOW: if ( GetViewData().GetDocument().GetDPAtCursor( GetViewData().GetCurX(), - GetViewData().GetCurY(), GetViewData().GetTabNo() ) ) + GetViewData().GetCurY(), GetViewData().CurrentTabForData() ) ) { //! test for data pilot operation } @@ -1054,7 +1054,7 @@ void ScCellShell::GetState(SfxItemSet &rSet) case SID_OUTLINE_HIDE: if ( GetViewData().GetDocument().GetDPAtCursor( GetViewData().GetCurX(), - GetViewData().GetCurY(), GetViewData().GetTabNo() ) ) + GetViewData().GetCurY(), GetViewData().CurrentTabForData() ) ) { //! test for data pilot operation } @@ -1065,7 +1065,7 @@ void ScCellShell::GetState(SfxItemSet &rSet) case SID_OUTLINE_REMOVE: { if ( GetViewData().GetDocument().GetDPAtCursor( GetViewData().GetCurX(), - GetViewData().GetCurY(), GetViewData().GetTabNo() ) ) + GetViewData().GetCurY(), GetViewData().CurrentTabForData() ) ) { //! test for data pilot operation } @@ -1283,7 +1283,7 @@ void ScCellShell::GetState(SfxItemSet &rSet) case SID_SPELL_DIALOG: { - if (rDoc.IsTabProtected(rData.GetTabNo())) + if (rDoc.IsTabProtected(rData.CurrentTabForData())) { bool bVisible = false; SfxViewFrame* pViewFrame = ( pTabViewShell ? &pTabViewShell->GetViewFrame() : nullptr ); diff --git a/sc/source/ui/view/cellsh1.cxx b/sc/source/ui/view/cellsh1.cxx index 2323f26d1696..65b75608468c 100644 --- a/sc/source/ui/view/cellsh1.cxx +++ b/sc/source/ui/view/cellsh1.cxx @@ -491,7 +491,7 @@ void ScCellShell::ExecuteEdit( SfxRequest& rReq ) ScopedVclPtr<AbstractScDeleteContentsDlg> pDlg(pFact->CreateScDeleteContentsDlg(pTabViewShell->GetFrameWeld())); ScDocument& rDoc = GetViewData().GetDocument(); - SCTAB nTab = GetViewData().GetTabNo(); + SCTAB nTab = GetViewData().CurrentTabForData(); if ( rDoc.IsTabProtected(nTab) ) pDlg->DisableObjects(); if (pDlg->Execute() == RET_OK) @@ -932,7 +932,7 @@ void ScCellShell::ExecuteEdit( SfxRequest& rReq ) SCROW nMergeRow = nStartRow; if ( GetViewData().GetDocument().ExtendMerge( nStartCol, nStartRow, nMergeCol, nMergeRow, - GetViewData().GetTabNo() ) ) + GetViewData().CurrentTabForData() ) ) { if ( nFillCol >= nStartCol && nFillCol <= nMergeCol && nFillRow == nStartRow ) nFillCol = nStartCol; @@ -1190,7 +1190,7 @@ void ScCellShell::ExecuteEdit( SfxRequest& rReq ) std::shared_ptr<sc::SparklineGroup> pSparklineGroup; if (GetViewData().GetDocument().GetSparklineGroupInRange(aMarkRange, pSparklineGroup) && pSparklineGroup) { - GetViewData().GetDocShell()->GetDocFunc().DeleteSparklineGroup(pSparklineGroup, GetViewData().GetTabNo()); + GetViewData().GetDocShell()->GetDocFunc().DeleteSparklineGroup(pSparklineGroup, GetViewData().CurrentTabForData()); } } rReq.Done(); @@ -1202,7 +1202,7 @@ void ScCellShell::ExecuteEdit( SfxRequest& rReq ) ScRange aRange; if (GetViewData().GetSimpleArea(aRange) == SC_MARK_SIMPLE) { - ScAddress aCursorAddress(GetViewData().GetCurX(), GetViewData().GetCurY(), GetViewData().GetTabNo()); + ScAddress aCursorAddress(GetViewData().GetCurX(), GetViewData().GetCurY(), GetViewData().CurrentTabForData()); auto pSparkline = GetViewData().GetDocument().GetSparkline(aCursorAddress); if (pSparkline) { @@ -1230,7 +1230,7 @@ void ScCellShell::ExecuteEdit( SfxRequest& rReq ) case SID_OUTLINE_HIDE: if ( GetViewData().GetDocument().GetDPAtCursor( GetViewData().GetCurX(), - GetViewData().GetCurY(), GetViewData().GetTabNo() ) ) + GetViewData().GetCurY(), GetViewData().CurrentTabForData() ) ) pTabViewShell->SetDataPilotDetails( false ); else pTabViewShell->HideMarkedOutlines(); @@ -1240,7 +1240,7 @@ void ScCellShell::ExecuteEdit( SfxRequest& rReq ) case SID_OUTLINE_SHOW: { ScDPObject* pDPObj = GetViewData().GetDocument().GetDPAtCursor( GetViewData().GetCurX(), - GetViewData().GetCurY(), GetViewData().GetTabNo() ); + GetViewData().GetCurY(), GetViewData().CurrentTabForData() ); if ( pDPObj ) { Sequence<sheet::DataPilotFieldFilter> aFilters; @@ -1258,7 +1258,7 @@ void ScCellShell::ExecuteEdit( SfxRequest& rReq ) } else if ( !pDPObj->IsServiceData() && pDPObj->GetDataFieldPositionData( - ScAddress( GetViewData().GetCurX(), GetViewData().GetCurY(), GetViewData().GetTabNo() ), + ScAddress( GetViewData().GetCurX(), GetViewData().GetCurY(), GetViewData().CurrentTabForData() ), aFilters ) ) pTabViewShell->ShowDataPilotSourceData( *pDPObj, aFilters ); else @@ -1276,7 +1276,7 @@ void ScCellShell::ExecuteEdit( SfxRequest& rReq ) bool bOk = true; if ( GetViewData().GetDocument().GetDPAtCursor( GetViewData().GetCurX(), - GetViewData().GetCurY(), GetViewData().GetTabNo() ) ) + GetViewData().GetCurY(), GetViewData().CurrentTabForData() ) ) { ScDPNumGroupInfo aNumInfo; aNumInfo.mbEnable = true; @@ -1372,7 +1372,7 @@ void ScCellShell::ExecuteEdit( SfxRequest& rReq ) bool bOk = true; if ( GetViewData().GetDocument().GetDPAtCursor( GetViewData().GetCurX(), - GetViewData().GetCurY(), GetViewData().GetTabNo() ) ) + GetViewData().GetCurY(), GetViewData().CurrentTabForData() ) ) { pTabViewShell->UngroupDataPilot(); bOk = false; @@ -1575,7 +1575,7 @@ void ScCellShell::ExecuteEdit( SfxRequest& rReq ) if (!bOtherDoc) { ScViewData& rData = GetViewData(); - if ( rData.GetMarkData().GetTableSelect( rData.GetTabNo() ) ) + if ( rData.GetMarkData().GetTableSelect( rData.CurrentTabForData() ) ) { SCCOL nStartX, nEndX, nClipStartX, nClipSizeX, nRangeSizeX; SCROW nStartY, nEndY, nClipStartY, nClipSizeY, nRangeSizeY; @@ -1591,7 +1591,7 @@ void ScCellShell::ExecuteEdit( SfxRequest& rReq ) // assume the destination as the current cell nStartX = nEndX = rData.GetCurX(); nStartY = nEndY = rData.GetCurY(); - nStartTab = rData.GetTabNo(); + nStartTab = rData.CurrentTabForData(); } // we now have clip- and range dimensions // the size of the destination area is the larger of the two @@ -1768,7 +1768,7 @@ void ScCellShell::ExecuteEdit( SfxRequest& rReq ) nPosX = GetViewData().GetCurX(); nPosY = GetViewData().GetCurY(); } - ScAddress aCellPos(nPosX, nPosY, GetViewData().GetTabNo()); + ScAddress aCellPos(nPosX, nPosY, GetViewData().CurrentTabForData()); auto pObj = std::make_shared<ScImportExport>(GetViewData().GetDocument(), aCellPos); pObj->SetOverwriting(true); if (pDlg->Execute()) { @@ -2353,13 +2353,13 @@ void ScCellShell::ExecuteEdit( SfxRequest& rReq ) rData.GetMarkData().FillRangeListWithMarks(&aRangeList, false); ScDocument& rDoc = GetViewData().GetDocument(); - if(rDoc.IsTabProtected(rData.GetTabNo())) + if(rDoc.IsTabProtected(rData.CurrentTabForData())) { pTabViewShell->ErrorMessage( STR_ERR_CONDFORMAT_PROTECTED ); break; } - ScAddress aPos(rData.GetCurX(), rData.GetCurY(), rData.GetTabNo()); + ScAddress aPos(rData.GetCurX(), rData.GetCurY(), rData.CurrentTabForData()); if(aRangeList.empty()) { aRangeList.push_back(ScRange(aPos)); @@ -2709,7 +2709,7 @@ void ScCellShell::ExecuteEdit( SfxRequest& rReq ) const SfxStringItem& rTextItem = pReqArgs->Get( SID_RANGE_NOTETEXT ); // always cursor position - ScAddress aPos( GetViewData().GetCurX(), GetViewData().GetCurY(), GetViewData().GetTabNo() ); + ScAddress aPos( GetViewData().GetCurX(), GetViewData().GetCurY(), GetViewData().CurrentTabForData() ); pTabViewShell->SetNoteText( aPos, rTextItem.GetValue() ); rReq.Done(); } @@ -2734,7 +2734,7 @@ void ScCellShell::ExecuteEdit( SfxRequest& rReq ) SetTabNoAndCursor( GetViewData(), aCellId ); } - ScAddress aPos( GetViewData().GetCurX(), GetViewData().GetCurY(), GetViewData().GetTabNo() ); + ScAddress aPos( GetViewData().GetCurX(), GetViewData().GetCurY(), GetViewData().CurrentTabForData() ); pTabViewShell->ReplaceNote( aPos, pTextItem->GetValue(), pAuthorItem ? &pAuthorItem->GetValue() : nullptr, pDateItem ? &pDateItem->GetValue() : nullptr ); @@ -2750,7 +2750,7 @@ void ScCellShell::ExecuteEdit( SfxRequest& rReq ) case FID_NOTE_VISIBLE: { ScDocument& rDoc = GetViewData().GetDocument(); - ScAddress aPos( GetViewData().GetCurX(), GetViewData().GetCurY(), GetViewData().GetTabNo() ); + ScAddress aPos( GetViewData().GetCurX(), GetViewData().GetCurY(), GetViewData().CurrentTabForData() ); if( ScPostIt* pNote = rDoc.GetNote(aPos) ) { bool bShow; @@ -2784,7 +2784,7 @@ void ScCellShell::ExecuteEdit( SfxRequest& rReq ) if (!rMark.IsMarked() && !rMark.IsMultiMarked()) { // Check current cell - ScAddress aPos( rData.GetCurX(), rData.GetCurY(), rData.GetTabNo() ); + ScAddress aPos( rData.GetCurX(), rData.GetCurY(), rData.CurrentTabForData() ); if( rDoc.GetNote(aPos) ) { rData.GetDocShell()->GetDocFunc().ShowNote( aPos, bShowNote ); @@ -3034,13 +3034,13 @@ void ScCellShell::ExecuteEdit( SfxRequest& rReq ) ScViewData& rData = GetViewData(); ScDocument& rDoc = rData.GetDocument(); - if (rDoc.IsTabProtected(rData.GetTabNo())) + if (rDoc.IsTabProtected(rData.CurrentTabForData())) { pTabViewShell->ErrorMessage( STR_ERR_CONDFORMAT_PROTECTED ); break; } - ScAddress aPos(rData.GetCurX(), rData.GetCurY(), rData.GetTabNo()); + ScAddress aPos(rData.GetCurX(), rData.GetCurY(), rData.CurrentTabForData()); ScConditionalFormatList* pList = nullptr; @@ -3233,7 +3233,7 @@ void ScCellShell::ExecuteEdit( SfxRequest& rReq ) case SID_SELECT_UNPROTECTED_CELLS: { ScViewData& rData = GetViewData(); - SCTAB aTab = rData.GetTabNo(); + SCTAB aTab = rData.CurrentTabForData(); ScMarkData& rMark = rData.GetMarkData(); ScDocument& rDoc = rData.GetDocument(); ScRangeList rRangeList; @@ -3473,7 +3473,7 @@ void ScCellShell::ExecuteExternalSource( bMove = true; // insert/delete cells to fit range } else - aLinkRange = ScRange( rData.GetCurX(), rData.GetCurY(), rData.GetTabNo() ); + aLinkRange = ScRange( rData.GetCurX(), rData.GetCurY(), rData.CurrentTabForData() ); rData.GetDocFunc().InsertAreaLink( _rFile, _rFilter, _rOptions, _rSource, aLinkRange, _nRefreshDelaySeconds, bMove, false ); @@ -3580,7 +3580,7 @@ void ScCellShell::ExecuteDataPilotDialog() // ScPivot is no longer used... ScDPObject* pDPObj = rDoc.GetDPAtCursor( rData.GetCurX(), rData.GetCurY(), - rData.GetTabNo() ); + rData.CurrentTabForData() ); if ( pDPObj ) // on an existing table? { std::unique_ptr<ScDPObject> pNewDPObject; @@ -3600,7 +3600,7 @@ void ScCellShell::ExecuteDataPilotDialog() // output to cursor position for non-sheet data ScAddress aDestPos( rData.GetCurX(), rData.GetCurY(), - rData.GetTabNo() ); + rData.CurrentTabForData() ); // first select type of source data @@ -3799,7 +3799,7 @@ void ScCellShell::ExecuteSubtotals(SfxRequest& rReq) pDBData->GetSubTotalParam( aSubTotalParam ); ScDocument& rDoc = GetViewData().GetDocument(); - SCTAB nTab = GetViewData().GetTabNo(); + SCTAB nTab = GetViewData().CurrentTabForData(); if (!rDoc.GetTotalsRowBelow(nTab)) aSubTotalParam.bSummaryBelow = false; diff --git a/sc/source/ui/view/cellsh2.cxx b/sc/source/ui/view/cellsh2.cxx index 553ef3401f14..4296b341a4cd 100644 --- a/sc/source/ui/view/cellsh2.cxx +++ b/sc/source/ui/view/cellsh2.cxx @@ -92,7 +92,7 @@ static bool lcl_GetTextToColumnsRange( const ScViewData& rData, ScRange& rRange, { const SCCOL nCol = rData.GetCurX(); const SCROW nRow = rData.GetCurY(); - const SCTAB nTab = rData.GetTabNo(); + const SCTAB nTab = rData.CurrentTabForData(); rRange = ScRange( nCol, nRow, nTab, nCol, nRow, nTab ); bRet = true; } @@ -131,7 +131,7 @@ static bool lcl_GetSortParam( const ScViewData& rData, const ScSortParam& rSortP ScTabViewShell* pTabViewShell = rData.GetViewShell(); ScDBData* pDBData = pTabViewShell->GetDBData(); ScDocument& rDoc = rData.GetDocument(); - SCTAB nTab = rData.GetTabNo(); + SCTAB nTab = rData.CurrentTabForData(); ScDirection eFillDir = DIR_TOP; bool bSort = true; ScRange aExternalRange; @@ -395,7 +395,7 @@ void ScCellShell::ExecuteDB( SfxRequest& rReq ) if( lcl_GetSortParam( rData, aSortParam ) ) { SCCOL nCol = GetViewData().GetCurX(); - SCCOL nTab = GetViewData().GetTabNo(); + SCCOL nTab = GetViewData().CurrentTabForData(); ScDocument& rDoc = GetViewData().GetDocument(); pDBData->GetSortParam( aSortParam ); @@ -448,7 +448,7 @@ void ScCellShell::ExecuteDB( SfxRequest& rReq ) ScDocument& rDoc = GetViewData().GetDocument(); pDBData->GetSortParam( aSortParam ); - bool bHasHeader = rDoc.HasColHeader( aSortParam.nCol1, aSortParam.nRow1, aSortParam.nCol2, aSortParam.nRow2, rData.GetTabNo() ); + bool bHasHeader = rDoc.HasColHeader( aSortParam.nCol1, aSortParam.nRow1, aSortParam.nCol2, aSortParam.nRow2, rData.CurrentTabForData() ); if( bHasHeader ) aSortParam.bHasHeader = bHasHeader; @@ -518,7 +518,7 @@ void ScCellShell::ExecuteDB( SfxRequest& rReq ) SfxItemSetFixed<SCITEM_SORTDATA, SCITEM_SORTDATA> aArgSet( GetPool() ); pDBData->GetSortParam( aSortParam ); - bool bHasHeader = rDoc.HasColHeader( aSortParam.nCol1, aSortParam.nRow1, aSortParam.nCol2, aSortParam.nRow2, rData.GetTabNo() ); + bool bHasHeader = rDoc.HasColHeader( aSortParam.nCol1, aSortParam.nRow1, aSortParam.nCol2, aSortParam.nRow2, rData.CurrentTabForData() ); if( bHasHeader ) aSortParam.bHasHeader = bHasHeader; @@ -647,7 +647,7 @@ void ScCellShell::ExecuteDB( SfxRequest& rReq ) if ( pReqArgs && (pQueryItem = pReqArgs->GetItemIfSet( SCITEM_QUERYDATA )) ) { - SCTAB nCurTab = GetViewData().GetTabNo(); + SCTAB nCurTab = GetViewData().CurrentTabForData(); SCTAB nRefTab = GetViewData().GetRefTabNo(); // If RefInput switched to a different sheet from the data sheet, @@ -700,7 +700,7 @@ void ScCellShell::ExecuteDB( SfxRequest& rReq ) if ( pReqArgs && (pPItem = pReqArgs->GetItemIfSet( SCITEM_PIVOTDATA )) ) { - SCTAB nCurTab = GetViewData().GetTabNo(); + SCTAB nCurTab = GetViewData().CurrentTabForData(); SCTAB nRefTab = GetViewData().GetRefTabNo(); // If RefInput switched to a different sheet from the data sheet, @@ -869,7 +869,7 @@ void ScCellShell::ExecuteDB( SfxRequest& rReq ) ScDocument& rDoc = GetViewData().GetDocument(); SCCOL nCurX = GetViewData().GetCurX(); SCROW nCurY = GetViewData().GetCurY(); - SCTAB nTab = GetViewData().GetTabNo(); + SCTAB nTab = GetViewData().CurrentTabForData(); ScAddress aCursorPos( nCurX, nCurY, nTab ); sal_uInt32 nIndex = rDoc.GetAttr( nCurX, nCurY, nTab, ATTR_VALIDDATA )->GetValue(); @@ -1113,7 +1113,7 @@ void ScCellShell::GetDBState( SfxItemSet& rSet ) ScDocument& rDoc = pDocSh->GetDocument(); SCCOL nPosX = rData.GetCurX(); SCROW nPosY = rData.GetCurY(); - SCTAB nTab = rData.GetTabNo(); + SCTAB nTab = rData.CurrentTabForData(); bool bAutoFilter = false; bool bAutoFilterTested = false; @@ -1280,7 +1280,7 @@ void ScCellShell::GetDBState( SfxItemSet& rSet ) { nStartCol = GetViewData().GetCurX(); nStartRow = GetViewData().GetCurY(); - nStartTab = GetViewData().GetTabNo(); + nStartTab = GetViewData().CurrentTabForData(); } ScDBData* pDBData = bSelected diff --git a/sc/source/ui/view/cellsh3.cxx b/sc/source/ui/view/cellsh3.cxx index 5e757f0d6f0e..ccd9cfa7557f 100644 --- a/sc/source/ui/view/cellsh3.cxx +++ b/sc/source/ui/view/cellsh3.cxx @@ -370,7 +370,7 @@ void ScCellShell::Execute( SfxRequest& rReq ) if ( aCursorPos.Col() == GetViewData().GetCurX() && aCursorPos.Row() == GetViewData().GetCurY() && - aCursorPos.Tab() == GetViewData().GetTabNo() + aCursorPos.Tab() == GetViewData().CurrentTabForData() ) { SfxStringItem aItem( SID_ENTER_STRING, aString ); @@ -544,7 +544,7 @@ void ScCellShell::Execute( SfxRequest& rReq ) { ScDocument& rDoc = GetViewData().GetDocument(); ScMarkData& rMark = GetViewData().GetMarkData(); - SCTAB nTab = GetViewData().GetTabNo(); + SCTAB nTab = GetViewData().CurrentTabForData(); if ( rDoc.IsScenario(nTab) ) { -e ... etc. - the rest is truncated