33 #include <globstr.hrc>
34 #include <strings.hrc>
38 #include <document.hxx>
41 #include <inputwin.hxx>
64 void collectUIInformation(
const OUString& aZoom)
67 aDescription.
aID =
"grid_window";
70 aDescription.
aKeyWord =
"ScGridWinUIObject";
71 aDescription.
aParent =
"MainWindow";
82 struct ScRefFlagsAndType
88 ScRefFlagsAndType lcl_ParseRangeOrAddress(
ScRange& rScRange,
ScAddress& rScAddress,
89 const OUString& aAddress,
const ScDocument& rDoc,
92 ScRefFlagsAndType aRet;
99 aRet.nResult = rScRange.
Parse(aAddress, rDoc, aDetails);
102 aRet.eDetected = DetectFlags::RANGE;
106 aRet.nResult = rScAddress.
Parse(aAddress, rDoc, aDetails);
109 aRet.eDetected = DetectFlags::ADDRESS;
114 aRet.nResult = rScRange.
Parse(aAddress, rDoc);
117 aRet.eDetected = DetectFlags::RANGE;
121 aRet.nResult = rScAddress.
Parse(aAddress, rDoc);
124 aRet.eDetected = DetectFlags::ADDRESS;
132 aRet.eDetected = DetectFlags::RANGE;
140 aRet.eDetected = DetectFlags::ADDRESS;
146 aRet.nResult = rScRange.
Parse(aAddress, rDoc, aDetails);
149 aRet.eDetected = DetectFlags::RANGE;
153 aRet.nResult = rScAddress.
Parse(aAddress, rDoc, aDetails);
156 aRet.eDetected = DetectFlags::ADDRESS;
173 sal_uInt16 nSlot = rReq.
GetSlot();
175 if (nSlot != SID_CURRENTCELL)
180 case FID_INSERT_FILE:
184 pReqArgs->
GetItemState(FID_INSERT_FILE,
true,&pItem) == SfxItemState::SET )
191 if ( pReqArgs->
GetItemState(FN_PARAM_1,
true,&pItem) == SfxItemState::SET )
192 aInsertPos = static_cast<const SfxPointItem*>(pItem)->GetValue();
198 bool bAsLink =
false;
199 if ( pReqArgs->
GetItemState(FN_PARAM_2,
true,&pItem) == SfxItemState::SET )
200 bAsLink = static_cast<const SfxBoolItem*>(pItem)->GetValue();
204 PasteFile( aInsertPos, aFileName, bAsLink );
209 case SID_OPENDLG_EDIT_PRINTAREA:
211 sal_uInt16
nId = ScPrintAreasDlgWrapper::GetChildWindowId();
218 case SID_CHANGE_PRINTAREA:
225 bool bEntire =
false;
227 if ( pReqArgs->
GetItemState( SID_CHANGE_PRINTAREA,
true, &pItem ) == SfxItemState::SET )
228 aPrintStr = static_cast<const SfxStringItem*>(pItem)->GetValue();
229 if ( pReqArgs->
GetItemState( FN_PARAM_2,
true, &pItem ) == SfxItemState::SET )
230 aRowStr = static_cast<const SfxStringItem*>(pItem)->GetValue();
231 if ( pReqArgs->
GetItemState( FN_PARAM_3,
true, &pItem ) == SfxItemState::SET )
232 aColStr = static_cast<const SfxStringItem*>(pItem)->GetValue();
233 if ( pReqArgs->
GetItemState( FN_PARAM_4,
true, &pItem ) == SfxItemState::SET )
234 bEntire = static_cast<const SfxBoolItem*>(pItem)->GetValue();
243 case SID_ADD_PRINTAREA:
244 case SID_DEFINE_PRINTAREA:
246 bool bAdd = ( nSlot == SID_ADD_PRINTAREA );
251 if ( pReqArgs->
GetItemState( SID_DEFINE_PRINTAREA,
true, &pItem ) == SfxItemState::SET )
252 aPrintStr = static_cast<const SfxStringItem*>(pItem)->GetValue();
263 case SID_DELETE_PRINTAREA:
273 case FID_DEL_MANUALBREAKS:
278 case FID_ADJUST_PRINTZOOM:
283 case FID_RESET_PRINTZOOM:
289 case SID_STATUS_PAGESTYLE:
292 ExecutePageStyle( *
this, rReq,
GetViewData().GetTabNo() );
296 case SID_CURRENTCELL:
301 if ( pReqArgs->
GetItemState( nSlot,
true, &pItem ) == SfxItemState::SET )
302 aAddress = static_cast<const SfxStringItem*>(pItem)->GetValue();
303 else if ( nSlot == SID_JUMPTOMARK && pReqArgs->
GetItemState(
304 SID_JUMPTOMARK,
true, &pItem ) == SfxItemState::SET )
305 aAddress = static_cast<const SfxStringItem*>(pItem)->GetValue();
311 bool bUnmark = ( nSlot == SID_CURRENTCELL );
312 if ( pReqArgs->
GetItemState( FN_PARAM_1,
true, &pItem ) == SfxItemState::SET )
313 bUnmark = static_cast<const SfxBoolItem*>(pItem)->GetValue();
315 bool bAlignToCursor =
true;
316 if (pReqArgs->
GetItemState(FN_PARAM_2,
true, &pItem) == SfxItemState::SET)
317 bAlignToCursor = static_cast<const SfxBoolItem*>(pItem)->GetValue();
319 bool bForceGlobalName =
false;
320 if (pReqArgs->
GetItemState(FN_PARAM_3,
true, &pItem) == SfxItemState::SET)
321 bForceGlobalName = static_cast<const SfxBoolItem*>(pItem)->GetValue();
323 if ( nSlot == SID_JUMPTOMARK )
336 ScRefFlagsAndType aResult = lcl_ParseRangeOrAddress(aScRange, aScAddress, aAddress, rDoc,
343 if (aResult.eDetected == DetectFlags::RANGE)
360 else if (aResult.eDetected == DetectFlags::ADDRESS)
364 if( aScAddress.
Tab() != nTab )
366 nTab = aScAddress.
Tab();
371 aScAddress.
SetTab( nTab );
373 aScRange =
ScRange( aScAddress, aScAddress );
396 sal_Int32 nNumeric = aAddress.toInt32();
397 if ( nNumeric > 0 && nNumeric <= rDoc.
MaxRow()+1 )
401 aScAddress.
SetRow( static_cast<SCROW>(nNumeric - 1) );
403 aScAddress.
SetTab( nTab );
404 aScRange =
ScRange( aScAddress, aScAddress );
414 if( nResult & ScRefFlags::VALID )
419 bool bNothing = ( rViewData.
GetCurX()==nCol && rViewData.
GetCurY()==nRow );
430 bNothing = ( aCurrent == aOldMark );
467 rBindings.
Update( nSlot );
490 if ( rDoc.
GetTable( aAddress, nNameTab ) )
493 if ( nNameTab != nTab )
498 if ( !bFound && nSlot == SID_JUMPTOMARK )
505 if (!bFound && !rReq.
IsAPI())
510 case SID_CURRENTOBJECT:
527 rBindings.
Update( nSlot );
539 OUString aStrDocName( static_cast<const SfxStringItem&>(pReqArgs->
548 while ( pDocSh && !bFound )
550 if ( pDocSh->
GetTitle() == aStrDocName )
553 bFound = (
nullptr != pViewFrame );
566 case SID_PRINTPREVIEW:
583 case SID_DETECTIVE_DEL_ALL:
591 case SID_TABLE_ACTIVATE:
592 OSL_FAIL(
"old slot SID_TABLE_ACTIVATE");
603 case FID_NORMALVIEWMODE:
604 case FID_PAGEBREAKMODE:
606 bool bWantPageBreak = nSlot == FID_PAGEBREAKMODE;
610 if ( pReqArgs && pReqArgs->
GetItemState(nSlot,
true, &pItem) == SfxItemState::SET )
613 bWantPageBreak = (nSlot == FID_PAGEBREAKMODE) == bItemValue;
631 case FID_FUNCTION_BOX:
642 case FID_TOGGLESYNTAX:
646 if ( pReqArgs && pReqArgs->
GetItemState(nSlot,
true, &pItem) == SfxItemState::SET )
647 bSet = static_cast<const SfxBoolItem*>(pItem)->GetValue();
655 case FID_TOGGLEHEADERS:
659 if ( pReqArgs && pReqArgs->
GetItemState(nSlot,
true, &pItem) == SfxItemState::SET )
660 bSet = static_cast<const SfxBoolItem*>(pItem)->GetValue();
669 case FID_TOGGLEFORMULA:
675 if( pReqArgs && pReqArgs->
GetItemState(nSlot,
true, &pItem) == SfxItemState::SET )
676 bFormulaMode = static_cast<const SfxBoolItem *>(pItem)->GetValue();
690 case FID_TOGGLEINPUTLINE:
692 sal_uInt16
nId = ScInputWindowWrapper::GetChildWindowId();
694 bool bSet = ( pWnd == nullptr );
696 if ( pReqArgs && pReqArgs->
GetItemState(nSlot,
true, &pItem) == SfxItemState::SET )
697 bSet = static_cast<const SfxBoolItem*>(pItem)->GetValue();
721 if (SID_ZOOM_OUT == nSlot)
727 bool bSyncZoom =
SC_MOD()->GetAppOptions().GetSynchronizeZoom();
730 SetZoom(aFract, aFract, bSyncZoom);
747 bool bSyncZoom =
SC_MOD()->GetAppOptions().GetSynchronizeZoom();
751 sal_uInt16 nOldZoom =
static_cast<sal_uInt16
>(
tools::Long( rOldY * 100 ));
752 sal_uInt16 nZoom = nOldZoom;
753 bool bCancel =
false;
759 eNewZoomType = rZoomItem.
GetType();
760 nZoom = rZoomItem.GetValue();
765 SvxZoomItem aZoomItem( eOldZoomType, nOldZoom, SID_ATTR_ZOOM );
769 | SvxZoomEnableFlags::N75
770 | SvxZoomEnableFlags::N100
771 | SvxZoomEnableFlags::N150
772 | SvxZoomEnableFlags::N200
773 | SvxZoomEnableFlags::WHOLEPAGE
774 | SvxZoomEnableFlags::PAGEWIDTH;
777 nBtnFlags = nBtnFlags | SvxZoomEnableFlags::OPTIMAL;
780 aSet.
Put( aZoomItem );
792 Get( SID_ATTR_ZOOM );
794 eNewZoomType = rZoomItem.
GetType();
795 nZoom = rZoomItem.GetValue();
801 if ( eNewZoomType == SvxZoomType::PERCENT )
808 nZoom =
CalcZoom( eNewZoomType, nOldZoom );
809 bCancel = nZoom == 0;
812 switch ( eNewZoomType )
814 case SvxZoomType::WHOLEPAGE:
815 case SvxZoomType::PAGEWIDTH:
824 if ( nZoom != nOldZoom && !bCancel )
834 SetZoom( aFract, aFract, bSyncZoom );
845 case SID_ATTR_ZOOMSLIDER:
848 bool bSyncZoom =
SC_MOD()->GetAppOptions().GetSynchronizeZoom();
849 if ( pReqArgs && pReqArgs->
GetItemState(SID_ATTR_ZOOMSLIDER,
true, &pItem) == SfxItemState::SET )
858 aNewOpt.
SetZoom( nCurrentZoom );
859 collectUIInformation(OUString::number(nCurrentZoom));
863 Fraction aFract( nCurrentZoom,100 );
864 SetZoom( aFract, aFract, bSyncZoom );
877 case FID_TAB_SELECTALL:
882 case FID_TAB_DESELECTALL:
887 case SID_SELECT_TABLES:
895 ::std::vector < sal_Int32 > aIndexList;
904 pDlg->SetDescription(
905 ScResId( STR_DLG_SELECTTABLES_TITLE ),
906 ScResId( STR_DLG_SELECTTABLES_LBNAME ),
911 for( nTab = 0; nTab < nTabCount; ++nTab )
913 rDoc.
GetName( nTab, aTabName );
917 if( pDlg->Execute() ==
RET_OK )
919 aIndexList = pDlg->GetSelectedRows();
920 pDlg.disposeAndClear();
927 if ( !aIndexList.empty() )
929 sal_uInt16 nSelCount = aIndexList.size();
931 SCTAB nFirstVisTab = 0;
934 bool bVisSelected =
false;
935 for( nSelIx = 0; !bVisSelected && (nSelIx < nSelCount); ++nSelIx )
937 nFirstVisTab =
static_cast<SCTAB>(aIndexList[nSelIx]);
938 bVisSelected = rDoc.
IsVisible( nFirstVisTab );
946 for( nTab = 0; nTab < nTabCount; ++nTab )
949 for( nSelIx = 0; nSelIx < nSelCount; ++nSelIx )
950 rMark.
SelectTable( static_cast<SCTAB>(aIndexList[nSelIx]),
true );
970 case SID_OUTLINE_DELETEALL:
975 case SID_AUTO_OUTLINE:
980 case SID_WINDOW_SPLIT:
1013 bool bChangedX =
false, bChangedY =
false;
1026 if (bChangedX || bChangedY)
1034 if (rOtherViewData.
GetTabNo() != nThisTab)
1049 case SID_WINDOW_FIX_COL:
1050 case SID_WINDOW_FIX_ROW:
1052 bool bIsCol = (nSlot == SID_WINDOW_FIX_COL);
1053 sal_Int32 nFreezeIndex = 1;
1056 nFreezeIndex = pItem->GetValue();
1057 if (nFreezeIndex < 0)
1074 if (rOtherViewData.
GetTabNo() != nThisTab)
1096 sal_uInt16
nId = ScHighlightChgDlgWrapper::GetChildWindowId();
1103 case FID_CHG_ACCEPT:
1118 case FID_CHG_COMMENT:
1129 pReqArgs->
GetItemState( nSlot,
true, &pItem ) == SfxItemState::SET &&
1133 pDocSh->SetChangeComment( pAction, aComment );
1138 pDocSh->ExecuteChangeCommentDialog(pAction,
GetFrameWeld());
1145 case SID_CREATE_SW_DRAWVIEW:
1155 case FID_PROTECT_DOC:
1162 if( pReqArgs->
HasItem( FID_PROTECT_DOC, &pItem ) &&
1173 bool bCancel =
false;
1178 OUString aText(
ScResId(SCSTR_PASSWORD));
1181 aDlg.set_title(
ScResId(SCSTR_UNPROTECTDOC));
1200 OUString aText(
ScResId(SCSTR_PASSWORDOPT));
1203 aDlg.set_title(
ScResId(SCSTR_PROTECTDOC));
1222 case FID_PROTECT_TABLE:
1231 bool bNewProtection = !bOldProtection;
1232 if( pReqArgs->
HasItem( FID_PROTECT_TABLE, &pItem ) )
1233 bNewProtection = static_cast<const SfxBoolItem*>(pItem)->GetValue();
1234 if( bNewProtection == bOldProtection )
1248 OUString aText(
ScResId(SCSTR_PASSWORDOPT) );
1250 aDlg.set_title(
ScResId(SCSTR_UNPROTECTTAB));
1301 case SID_OPT_LOCALE_CHANGED :
1309 OSL_FAIL(
"Unknown Slot at ScTabViewShell::Execute");
SC_DLLPUBLIC bool IsDocProtected() const
ScMarkData & GetMarkData()
void SetEditHelpId(const OString &rId)
SfxViewFrame * GetViewFrame() const
SvxZoomType GetZoomType() const
void SetOption(ScViewOption eOpt, bool bNew)
ScDocShell * GetDocShell() const
void FreezeSplitters(bool bFreeze, SplitMethod eSplitMethod=SC_SPLIT_METHOD_CURSOR, SCCOLROW nFreezeIndex=-1)
void notifyKitCellFollowJump() const
void RemoveManualBreaks()
constexpr OStringLiteral HID_PASSWD_DOC
SC_DLLPUBLIC bool IsTabProtected(SCTAB nTab) const
todo: It should be possible to have MarkArrays for each table, in order to enable "search all" across...
SfxChildWindow * GetChildWindow(sal_uInt16)
OUString ScResId(TranslateId aId)
void ErrorMessage(TranslateId pGlobStrId)
static SfxInterface * GetStaticInterface()
SfxViewFrame * GetFrame() const
static bool MakeRangeFromName(const OUString &rName, const ScDocument &rDoc, SCTAB nCurTab, ScRange &rRange, RutlNameScope eScope=RUTL_NAMES, ScAddress::Details const &rDetails=ScAddress::detailsOOOa1, bool bUseDetailsPos=false)
OUString GetTitle(sal_uInt16 nMaxLen=0) const
void SetPrintRanges(bool bEntireSheet, const OUString *pPrint, const OUString *pRepCol, const OUString *pRepRow, bool bAddPrint)
bool SelectObject(std::u16string_view rName)
void MarkRange(const ScRange &rRange, bool bSetCursor=true, bool bContinue=false)
sheet protection state container
bool isdigitAsciiString(std::string_view rString)
void SetHeaderMode(bool bNewMode)
SfxDispatcher * GetDispatcher()
void SetPagebreakMode(bool bSet)
static SvxAbstractDialogFactory * Create()
void RepeatResize(bool bUpdateFix=true)
SCCOLROW GetLOKSheetFreezeIndex(bool bIsCol) const
virtual bool isProtected() const override
void SetDocumentModified()
const ContentProperties & rData
bool IsSyntaxMode() const
void Done(bool bRemove=false)
ScDocument & GetDocument() const
virtual bool isProtectedWithPass() const override
virtual short run() override
static OUString decode(std::u16string_view rText, DecodeMechanism eMechanism, rtl_TextEncoding eCharset=RTL_TEXTENCODING_UTF8)
const SfxItemSet * GetArgs() const
void Invalidate(sal_uInt16 nId)
void TabChanged(bool bSameTabButMoved=false)
Called after moving, copying, inserting or deleting a sheet.
static void forEachOtherView(ViewShellType *pThisViewShell, FunctionType f)
SC_DLLPUBLIC void SetCursor(SCCOL nPosX, SCROW nPosY, bool bNew=false)
SC_DLLPUBLIC formula::FormulaGrammar::AddressConvention GetAddressConvention() const
virtual const SfxItemSet * GetOutputItemSet() const =0
const ScRange & GetMarkArea() const
SC_DLLPUBLIC void MoveCursorAbs(SCCOL nCurX, SCROW nCurY, ScFollowMode eMode, bool bShift, bool bControl, bool bKeepOld=false, bool bKeepSel=false)
void ToggleChildWindow(sal_uInt16)
static UITestLogger & getInstance()
void logEvent(const EventDescription &rDescription)
void disposeAndReset(reference_type *pBody)
SC_DLLPUBLIC SCROW MaxRow() const
SC_DLLPUBLIC SCTAB GetTableCount() const
void SetConfirmHelpId(const OString &rId)
bool Unprotect(SCTAB nTab, const OUString &rPassword)
bool IsMultiMarked() const
SC_DLLPUBLIC void InputEnterHandler(ScEnterMode nBlockMode=ScEnterMode::NORMAL, bool bBeforeSavingInLOK=false)
SfxFrame & GetFrame() const
SC_DLLPUBLIC void SetRefDialog(sal_uInt16 nId, bool bVis, SfxViewFrame *pViewFrm=nullptr)
Reference dialogs.
void SetOptions(const ScViewOptions &rOpt)
SC_DLLPUBLIC bool GetTable(const OUString &rName, SCTAB &rTab) const
void UpdateInputHandler(bool bForce=false, bool bStopEditing=true)
ScSplitMode GetHSplitMode() const
const Fraction & GetZoomY() const
ScDrawLayer * MakeDrawLayer()
ScViewData & GetViewData()
void SelectionChanged(bool bFromPaste=false)
SfxItemPool & GetPool() const
bool PasteFile(const Point &, const OUString &, bool bLink)
SC_DLLPUBLIC void SetAppOptions(const ScAppOptions &rOpt)
SC_DLLPUBLIC ScDocProtection * GetDocProtection() const
void SetZoom(const Fraction &rNewX, const Fraction &rNewY, bool bAll)
SfxItemState GetItemState(sal_uInt16 nWhich, bool bSrchInParent=true, const SfxPoolItem **ppItem=nullptr) const
void SelectTable(SCTAB nTab, bool bNew)
SfxBindings & GetBindings()
virtual VclPtr< AbstractScShowTabDlg > CreateScShowTabDlg(weld::Window *pParent)=0
SfxBindings & GetBindings()
SC_DLLPUBLIC void SetTabNo(SCTAB nTab, bool bNew=false, bool bExtendSelection=false, bool bSameTabButMoved=false)
SC_DLLPUBLIC const ScAppOptions & GetAppOptions()
const T * GetArg(sal_uInt16 nSlotId) const
void ShowExtras(SfxShowExtras nExtras)
bool GetOption(ScViewOption eOpt) const
ScGridWindow * GetActiveWin()
void RemoveAllOutlines(bool bRecord=true)
sal_uInt16 CalcZoom(SvxZoomType eType, sal_uInt16 nOldZoom)
void SetDialogData(const ScTableProtection &rData)
void SetZoom(sal_uInt16 nNew)
bool SetLOKSheetFreezeIndex(const SCCOLROW nFreezeIndex, bool bIsCol, SCTAB nForTab=-1)
SfxViewShell * GetViewShell() const
const css::uno::Reference< css::frame::XFrame > & GetFrameInterface() const
void SetMinLen(sal_uInt16 Len)
virtual void SetLimits(sal_uInt16 nMin, sal_uInt16 nMax)=0
constexpr OStringLiteral HID_PASSWD_TABLE
void SetReturnValue(const SfxPoolItem &)
void SetPrintZoom(sal_uInt16 nScale)
void Update(sal_uInt16 nId)
void SkipOverlapped(SCCOL &rCol, SCROW &rRow, SCTAB nTab) const
const SfxPoolItem * Put(const SfxPoolItem &rItem, sal_uInt16 nWhich)
sal_uInt16 GetSlot() const
bool ValidRow(SCROW nRow) const
weld::Window * GetFrameWeld() const
void SetCurSubShell(ObjectSelectionType eOST, bool bForce=false)
void ProtectSheet(SCTAB nTab, const ScTableProtection &rProtect)
ScDrawView * GetScDrawView()
const SfxPoolItem & Get(sal_uInt16 nWhich, bool bSrchInParent=true) const
void SetValueSet(SvxZoomEnableFlags nValues)
static SfxObjectShell * GetFirst(const std::function< bool(const SfxObjectShell *)> &isObjectShell=nullptr, bool bOnlyVisible=true)
SvxZoomType GetType() const
bool IsHeaderMode() const
static SfxViewShell * Get(const css::uno::Reference< css::frame::XController > &i_rController)
static SC_DLLPUBLIC ScAbstractDialogFactory * Create()
ScRefFlags Parse(const OUString &, const ScDocument &, const ScAddress::Details &rDetails=ScAddress::detailsOOOa1, ScAddress::ExternalInfo *pExtInfo=nullptr, const css::uno::Sequence< css::sheet::ExternalLinkInfo > *pExternalLinks=nullptr, const OUString *pErrRef=nullptr)
void SetChildWindow(sal_uInt16 nId, bool bVisible, bool bSetFocus=true)
bool HasItem(sal_uInt16 nWhich, const SfxPoolItem **ppItem=nullptr) const
OUString GetPassword() const
const ScViewOptions & GetOptions() const
void SetZoomType(SvxZoomType eNew)
void AlignToCursor(SCCOL nCurX, SCROW nCurY, ScFollowMode eMode, const ScSplitPos *pWhich=nullptr)
void ShowChildWindow(sal_uInt16, bool bVisible=true)
void SetZoomType(SvxZoomType eNew, bool bAll)
ObjectSelectionType GetCurObjectSelectionType() const
void Execute(SfxRequest &rReq)
static SfxViewFrame * GetFirst(const SfxObjectShell *pDoc=nullptr, bool bOnlyVisible=true)
void InvalidateAll(bool bWithMsg)
SC_DLLPUBLIC bool IsVisible(SCTAB nTab) const
void AppendItem(const SfxPoolItem &)
Point GetInsertPos() const
void SetSyntaxMode(bool bNewMode)
constexpr OStringLiteral HID_SELECTTABLES
static SfxObjectShell * GetNext(const SfxObjectShell &rPrev, const std::function< bool(const SfxObjectShell *)> &isObjectShell=nullptr, bool bOnlyVisible=true)
SC_DLLPUBLIC ScRefFlags Parse(const OUString &, const ScDocument &, const Details &rDetails=detailsOOOa1, ExternalInfo *pExtInfo=nullptr, const css::uno::Sequence< css::sheet::ExternalLinkInfo > *pExternalLinks=nullptr, sal_Int32 *pSheetEndPos=nullptr, const OUString *pErrRef=nullptr)
const SfxPoolItem * Execute(sal_uInt16 nSlot, SfxCallMode nCall=SfxCallMode::SLOT, const SfxPoolItem **pArgs=nullptr, sal_uInt16 nModi=0, const SfxPoolItem **pInternalArgs=nullptr)
bool GetTableSelect(SCTAB nTab) const
void ProtectDoc(const OUString &rPassword)
std::map< OUString, OUString > aParameters
bool IsPagebreakMode() const
constexpr OStringLiteral HID_PASSWD_DOC_CONFIRM
const std::vector< sal_Int32 > & GetList() const
void WriteData(ScTableProtection &rData) const
SC_DLLPUBLIC bool GetName(SCTAB nTab, OUString &rName) const
void UpdatePageBreakData(bool bForcePaint=false)
ScSplitMode GetVSplitMode() const
virtual VclPtr< AbstractSvxZoomDialog > CreateSvxZoomDialog(weld::Window *pParent, const SfxItemSet &rCoreSet)=0
virtual bool isProtectedWithPass() const override
SC_DLLPUBLIC const ScTableProtection * GetTabProtection(SCTAB nTab) const