25#include <com/sun/star/embed/Aspects.hpp>
50namespace editeng {
class SvxBorderLine; }
83 std::shared_ptr<SvxBoxItem>& rLineOuter,
84 std::shared_ptr<SvxBoxInfoItem>& rLineInner );
90 bool AutoSum(
const ScRange& rRange,
bool bSubTotal,
bool bSetCursor,
bool bContinue,
const OpCode eCode );
94 const EditTextObject* pData =
nullptr,
bool bMatrixExpand =
false );
111 bool bIncludeObjects =
false,
bool bStopEdit =
true );
113 bool bApi =
false,
bool bIncludeObjects =
false,
bool bStopEdit =
true );
115 bool bIncludeObjects );
117 bool bApi,
bool bIncludeObjects );
123 bool bTranspose =
false,
bool bAsLink =
false,
126 bool bAllowDialogs =
false );
133 css::datatransfer::XTransferable >& rxTransferable );
137 std::u16string_view rSrcShellID, std::u16string_view rDestShellID );
140 const css::uno::Reference< css::datatransfer::XTransferable >& rxTransferable,
144 const css::uno::Reference< css::datatransfer::XTransferable >& rxTransferable,
146 bool bLink =
false,
bool bAllowDialogs =
false );
149 bool PasteObject(
const Point&,
const css::uno::Reference < css::embed::XEmbeddedObject >&,
const Size*,
const Graphic* =
nullptr,
const OUString& = OUString(), sal_Int64 nAspect = css::embed::Aspects::MSOLE_CONTENT );
153 const OUString& rFile );
155 const css::uno::Reference< css::datatransfer::XTransferable >& rxTransferable,
157 bool PasteLink(
const css::uno::Reference< css::datatransfer::XTransferable >& rxTransferable );
159 void InsertBookmark(
const OUString& rDescription,
const OUString& rURL,
160 SCCOL nPosX,
SCROW nPosY,
const OUString* pTarget =
nullptr,
161 bool bTryReplace =
false );
172 bool InsertName(
const OUString& rName,
const OUString& rSymbol,
173 const OUString& rType );
179 bool bCursorOnly =
false);
212 bool bWidth,
const std::vector<sc::ColRowSpan>& rRanges,
ScSizeMode eMode,
213 sal_uInt16 nSizeTwips,
bool bRecord =
true,
const ScMarkData* pMarkData =
nullptr );
225 bool bSetModified =
true );
229 bool bSetModified =
true );
239 bool MergeCells(
bool bApi,
bool& rDoContents,
bool bCenter );
245 double fStart,
double fStep,
double fMax );
258 bool bAddUndo,
bool bIsApi );
263 bool InsertTable(
const OUString& rName,
SCTAB nTabNr,
bool bRecord =
true );
266 bool AppendTable(
const OUString& rName,
bool bRecord =
true );
269 bool DeleteTables(
const std::vector<SCTAB>& TheTabs,
bool bRecord =
true );
273 void MoveTable( sal_uInt16 nDestDocNo,
SCTAB nDestTab,
bool bCopy,
const OUString* pNewTabName =
nullptr );
276 bool bLink,
SCTAB nTab);
282 const OUString& rFilter,
const OUString& rOptions,
283 std::u16string_view rTabName );
285 const OUString& rFilter,
const OUString& rOptions,
286 const OUString& rSource );
288 void ShowTable(
const std::vector<OUString>& rNames );
291 void MakeScenario(
const OUString& rName,
const OUString& rComment,
302 void ReplaceNote(
const ScAddress& rPos,
const OUString& rNoteText,
const OUString* pAuthor,
const OUString* pDate );
312 const OUString* pPrint,
313 const OUString* pRepCol,
const OUString* pRepRow,
338 std::vector<std::unique_ptr<ScDataFormFragment>>& rEdits,
339 sal_uInt16 aColLength);
349 const ::editeng::SvxBorderLine* pDestLine,
350 const ::editeng::SvxBorderLine* pSrcLine,
355 const css::uno::Reference< css::datatransfer::XTransferable >& rxTransferable );
360 bool bTranspose,
bool bAsLink,
bool bAllowDialogs,
365 bool bSkipEmptyCells,
bool bTranspose,
bool bAsLink,
bool bAllowDialogs,
Parameters for conversion.
todo: It should be possible to have MarkArrays for each table, in order to enable "search all" across...
sheet protection state container
bool AutoSum(const ScRange &rRange, bool bSubTotal, bool bSetCursor, bool bContinue, const OpCode eCode)
void TabOp(const ScTabOpParam &rParam, bool bRecord=true)
bool SelectionEditable(bool *pOnlyNotBecauseOfMatrix=nullptr)
bool AppendTable(const OUString &rName, bool bRecord=true)
bool GetAutoSumArea(ScRangeList &rRangeList)
void SetNumFmtByStr(const OUString &rCode)
void DeleteCells(DelCellCmd eCmd)
void RemoveManualBreaks()
void FillTab(InsertDeleteFlags nFlags, ScPasteFunc nFunction, bool bSkipEmpty, bool bAsLink)
void PasteFromTransferable(const css::uno::Reference< css::datatransfer::XTransferable > &rxTransferable)
void ReplaceNote(const ScAddress &rPos, const OUString &rNoteText, const OUString *pAuthor, const OUString *pDate)
bool PasteGraphic(const Point &rPos, const Graphic &rGraphic, const OUString &rFile)
void SetMarkedWidthOrHeight(bool bWidth, ScSizeMode eMode, sal_uInt16 nSizeTwips)
void MarkAndJumpToRanges(const ScRangeList &rRanges)
SC_DLLPUBLIC void FillSimple(FillDir eDir)
void EnterData(SCCOL nCol, SCROW nRow, SCTAB nTab, const OUString &rString, const EditTextObject *pData=nullptr, bool bMatrixExpand=false)
SC_DLLPUBLIC void DeletePageBreak(bool bColumn, bool bRecord=true, const ScAddress *pPos=nullptr, bool bSetModified=true)
void EnterDataAtCursor(const OUString &rString)
bool CopyToClipMultiRange(const ScDocument *pClipDoc, const ScRangeList &rRanges, bool bCut, bool bApi, bool bIncludeObjects)
void SetStyleSheetToMarked(const SfxStyleSheet *pStyleSheet)
void ApplyUserItemSet(const SfxItemSet &rItemSet)
void SetPrintRanges(bool bEntireSheet, const OUString *pPrint, const OUString *pRepCol, const OUString *pRepRow, bool bAddPrint)
rtl::Reference< ScTransferObj > CopyToTransferable()
void FillSeries(FillDir eDir, FillCmd eCmd, FillDateCmd eDateCmd, double fStart, double fStep, double fMax)
sal_uInt16 GetOptimalColWidth(SCCOL nCol, SCTAB nTab, bool bFormula)
ScViewFunc(vcl::Window *pParent, ScDocShell &rDocSh, ScTabViewShell *pViewShell)
void TransliterateText(TransliterationFlags nType)
void ApplyPatternLines(const ScPatternAttr &rAttr, const SvxBoxItem &rNewOuter, const SvxBoxInfoItem *pNewInner)
void CopyAutoSpellData(FillDir eDir, SCCOL nStartCol, SCROW nStartRow, SCCOL nEndCol, SCROW nEndRow, sal_uLong nCount)
bool InsertCells(InsCellCmd eCmd, bool bRecord=true, bool bPartOfPaste=false)
void EnterAutoSum(const ScRangeList &rRangeList, bool bSubTotal, const ScAddress &rAddr, const OpCode eCode)
SC_DLLPUBLIC void CutToClip()
void DetectiveMarkInvalid()
bool TestFormatArea(SCCOL nCol, SCROW nRow, SCTAB nTab, bool bAttrChanged)
void SetWidthOrHeight(bool bWidth, const std::vector< sc::ColRowSpan > &rRanges, ScSizeMode eMode, sal_uInt16 nSizeTwips, bool bRecord=true, const ScMarkData *pMarkData=nullptr)
void SetSelectionFrameLines(const ::editeng::SvxBorderLine *pLine, bool bColorOnly)
void SetPrintZoom(sal_uInt16 nScale)
SC_DLLPUBLIC void InsertPageBreak(bool bColumn, bool bRecord=true, const ScAddress *pPos=nullptr, bool bSetModified=true)
void ProtectSheet(SCTAB nTab, const ScTableProtection &rProtect)
void SetNumberFormat(SvNumFormatType nFormatType, sal_uLong nAdd=0)
bool Unprotect(SCTAB nTab, const OUString &rPassword)
const SfxStyleSheet * GetStyleSheetFromMarked()
bool DeleteTables(const std::vector< SCTAB > &TheTabs, bool bRecord=true)
SvtScriptType GetSelectionScriptType()
void InsertAreaLink(const OUString &rFile, const OUString &rFilter, const OUString &rOptions, const OUString &rSource)
void PostPasteFromClip(const ScRangeList &rPasteRanges, const ScMarkData &rMark)
void EnterValue(SCCOL nCol, SCROW nRow, SCTAB nTab, const double &rValue)
bool PasteFromClipToMultiRanges(InsertDeleteFlags nFlags, ScDocument *pClipDoc, ScPasteFunc nFunction, bool bSkipEmptyCells, bool bTranspose, bool bAsLink, bool bAllowDialogs, InsCellCmd eMoveMode, InsertDeleteFlags nUndoFlags)
void ProtectDoc(const OUString &rPassword)
void RemoveStyleSheetInUse(const SfxStyleSheetBase *pStyleSheet)
void ShowNote(bool bShow)
bool SetTabBgColor(const Color &rColor, SCTAB nTabNr)
void ApplySelectionPattern(const ScPatternAttr &rAttr, bool bCursorOnly=false)
bool HasBookmarkAtCursor(SvxHyperlinkItem *pContent)
void FillCrossDblClick()
Downward fill of selected cell(s) by double-clicking cross-hair cursor.
SC_DLLPUBLIC void FillAuto(FillDir eDir, SCCOL nStartCol, SCROW nStartRow, SCCOL nEndCol, SCROW nEndRow, sal_uLong nCount)
void DeleteTable(SCTAB nTabNr, bool bRecord=true)
void DeleteMulti(bool bRows)
SC_DLLPUBLIC const ScPatternAttr * GetSelectionPattern()
void DeleteContents(InsertDeleteFlags nFlags)
void MakeScenario(const OUString &rName, const OUString &rComment, const Color &rColor, ScScenarioFlags nFlags)
bool PasteMultiRangesFromClip(InsertDeleteFlags nFlags, ScDocument *pClipDoc, ScPasteFunc nFunction, bool bSkipEmptyCells, bool bTranspose, bool bAsLink, bool bAllowDialogs, InsCellCmd eMoveMode, InsertDeleteFlags nUndoFlags)
ScAutoFormatData * CreateAutoFormatData()
SC_DLLPUBLIC void DataFormPutData(SCROW nCurrentRow, SCROW nStartRow, SCCOL nStartCol, SCROW nEndRow, SCCOL nEndCol, std::vector< std::unique_ptr< ScDataFormFragment > > &rEdits, sal_uInt16 aColLength)
void ImportTables(ScDocShell *pSrcShell, SCTAB nCount, const SCTAB *pSrcTabs, bool bLink, SCTAB nTab)
bool PasteOnDrawObjectLinked(const css::uno::Reference< css::datatransfer::XTransferable > &rxTransferable, SdrObject &rHitObj)
void HideTable(const ScMarkData &rMark, SCTAB nTabToSelect=-1)
bool MergeCells(bool bApi, bool &rDoContents, bool bCenter)
bool PasteBookmark(SotClipboardFormatId nFormatId, const css::uno::Reference< css::datatransfer::XTransferable > &rxTransferable, SCCOL nPosX, SCROW nPosY)
void UpdateSelectionArea(const ScMarkData &rSel, ScPatternAttr *pAttr=nullptr)
bool AdjustBlockHeight(bool bPaint=true, ScMarkData *pMarkData=nullptr)
void ShowTable(const std::vector< OUString > &rNames)
void OnLOKInsertDeleteColumn(SCCOL nStartCol, tools::Long nOffset)
void Solve(const ScSolveParam &rParam)
void UpdateStyleSheetInUse(const SfxStyleSheetBase *pStyleSheet)
SC_DLLPUBLIC void PasteFromSystem()
bool PasteLink(const css::uno::Reference< css::datatransfer::XTransferable > &rxTransferable)
void AutoFormat(sal_uInt16 nFormatNo)
void CreateNames(CreateNameFlags nFlags)
void PasteRTF(SCCOL nCol, SCROW nStartRow, const css::uno::Reference< css::datatransfer::XTransferable > &rxTransferable)
void MoveTable(sal_uInt16 nDestDocNo, SCTAB nDestTab, bool bCopy, const OUString *pNewTabName=nullptr)
void InsertCurrentTime(SvNumFormatType nCellFmt, const OUString &rUndoStr)
Insert date or time into current cell.
void DoHangulHanjaConversion()
bool CopyToClipSingleRange(ScDocument *pClipDoc, const ScRangeList &rRanges, bool bCut, bool bIncludeObjects)
bool PasteDataFormat(SotClipboardFormatId nFormatId, const css::uno::Reference< css::datatransfer::XTransferable > &rxTransferable, SCCOL nPosX, SCROW nPosY, const Point *pLogicPos, bool bLink=false, bool bAllowDialogs=false)
void OnLOKInsertDeleteRow(SCROW nStartRow, tools::Long nOffset)
void InsertSpecialChar(const OUString &rStr, const vcl::Font &rFont)
void ChangeNumFmtDecimals(bool bIncrement)
void EnterMatrix(const OUString &rString, ::formula::FormulaGrammar::Grammar eGram)
static void UpdateLineAttrs(::editeng::SvxBorderLine &rLine, const ::editeng::SvxBorderLine *pDestLine, const ::editeng::SvxBorderLine *pSrcLine, bool bColor)
void GetSelectionFrame(std::shared_ptr< SvxBoxItem > &rLineOuter, std::shared_ptr< SvxBoxInfoItem > &rLineInner)
void ModifyCellSize(ScDirection eDir, bool bOptimal)
void EnterBlock(const OUString &rString, const EditTextObject *pData)
void SetNoteText(const ScAddress &rPos, const OUString &rNoteText)
void InsertTables(std::vector< OUString > &aNames, SCTAB nTab, SCTAB nCount, bool bRecord=true)
void ApplyAttr(const SfxPoolItem &rAttrItem, bool bAdjustBlockHeight=true)
void DoAutoAttributes(SCCOL nCol, SCROW nRow, SCTAB nTab, bool bAttrChanged)
void DoSheetConversion(const ScConversionParam &rParam)
Generic implementation of sheet conversion functions.
bool RenameTable(const OUString &rName, SCTAB nTabNr)
void OnLOKSetWidthOrHeight(SCCOLROW nStart, bool bWidth)
bool InsertName(const OUString &rName, const OUString &rSymbol, const OUString &rType)
SC_DLLPUBLIC bool CopyToClip(ScDocument *pClipDoc, bool bCut, bool bApi=false, bool bIncludeObjects=false, bool bStopEdit=true)
bool PasteMetaFile(const Point &, const GDIMetaFile &)
CreateNameFlags GetCreateNameFlags()
SC_DLLPUBLIC bool PasteFromClip(InsertDeleteFlags nFlags, ScDocument *pClipDoc, ScPasteFunc nFunction=ScPasteFunc::NONE, bool bSkipEmptyCells=false, bool bTranspose=false, bool bAsLink=false, InsCellCmd eMoveMode=INS_NONE, InsertDeleteFlags nUndoExtraFlags=InsertDeleteFlags::NONE, bool bAllowDialogs=false)
bool SearchAndReplace(const SvxSearchItem *pSearchItem, bool bAddUndo, bool bIsApi)
void ApplyAttributes(const SfxItemSet *pDialogSet, const SfxItemSet *pOldSet, bool bAdjustBlockHeight=true)
void InsertTableLink(const OUString &rFile, const OUString &rFilter, const OUString &rOptions, std::u16string_view rTabName)
void InsertBookmark(const OUString &rDescription, const OUString &rURL, SCCOL nPosX, SCROW nPosY, const OUString *pTarget=nullptr, bool bTryReplace=false)
void ChangeIndent(bool bIncrement)
bool PasteBitmapEx(const Point &, const BitmapEx &)
void ConvertFormulaToValue()
bool InsertTable(const OUString &rName, SCTAB nTabNr, bool bRecord=true)
OUString GetAutoSumFormula(const ScRangeList &rRangeList, bool bSubTotal, const ScAddress &rAddr, const OpCode eCode)
bool LinkBlock(const ScRange &rSource, const ScAddress &rDestPos)
bool MoveBlockTo(const ScRange &rSource, const ScAddress &rDestPos, bool bCut)
void SetValidation(const ScValidationData &rNew)
void UseScenario(const OUString &rName)
bool AdjustRowHeight(SCROW nStartRow, SCROW nEndRow, bool bApi)
bool PasteObject(const Point &, const css::uno::Reference< css::embed::XEmbeddedObject > &, const Size *, const Graphic *=nullptr, const OUString &=OUString(), sal_Int64 nAspect=css::embed::Aspects::MSOLE_CONTENT)
bool PasteFile(const Point &, const OUString &, bool bLink)
CAUTION! The following defines must be in the same namespace as the respective type.
Parameter for data table aka multiple operations.
::std::vector< ScUndoTabColorInfo > List
sal_Int32 SCCOLROW
a type capable of holding either SCCOL or SCROW