19 #ifndef INCLUDED_SC_SOURCE_UI_INC_VIEWFUNC_HXX
20 #define INCLUDED_SC_SOURCE_UI_INC_VIEWFUNC_HXX
26 #include <com/sun/star/embed/Aspects.hpp>
51 namespace editeng {
class SvxBorderLine; }
84 std::shared_ptr<SvxBoxItem>& rLineOuter,
85 std::shared_ptr<SvxBoxInfoItem>& rLineInner );
91 bool AutoSum(
const ScRange& rRange,
bool bSubTotal,
bool bSetCursor,
bool bContinue,
const OpCode eCode );
112 bool bIncludeObjects =
false,
bool bStopEdit =
true );
114 bool bApi =
false,
bool bIncludeObjects =
false,
bool bStopEdit =
true );
116 bool bIncludeObjects );
118 bool bApi,
bool bIncludeObjects );
122 bool bTranspose =
false,
bool bAsLink =
false,
125 bool bAllowDialogs =
false );
132 css::datatransfer::XTransferable >& rxTransferable );
136 std::u16string_view rSrcShellID, std::u16string_view rDestShellID );
139 const css::uno::Reference< css::datatransfer::XTransferable >& rxTransferable,
143 const css::uno::Reference< css::datatransfer::XTransferable >& rxTransferable,
144 SCCOL nPosX,
SCROW nPosY,
const Point* pLogicPos,
145 bool bLink =
false,
bool bAllowDialogs =
false );
147 bool PasteFile(
const Point&,
const OUString&,
bool bLink );
148 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 );
152 const OUString& rFile );
154 const css::uno::Reference< css::datatransfer::XTransferable >& rxTransferable,
156 bool PasteLink(
const css::uno::Reference< css::datatransfer::XTransferable >& rxTransferable );
158 void InsertBookmark(
const OUString& rDescription,
const OUString& rURL,
159 SCCOL nPosX,
SCROW nPosY,
const OUString* pTarget =
nullptr,
160 bool bTryReplace =
false );
171 bool InsertName(
const OUString& rName,
const OUString& rSymbol,
172 const OUString& rType );
178 bool bCursorOnly =
false);
211 bool bWidth,
const std::vector<sc::ColRowSpan>& rRanges,
ScSizeMode eMode,
212 sal_uInt16 nSizeTwips,
bool bRecord =
true,
const ScMarkData* pMarkData =
nullptr );
224 bool bSetModified =
true );
228 bool bSetModified =
true );
238 bool MergeCells(
bool bApi,
bool& rDoContents,
bool bCenter );
244 double fStart,
double fStep,
double fMax );
257 bool bAddUndo,
bool bIsApi );
262 bool InsertTable(
const OUString& rName,
SCTAB nTabNr,
bool bRecord =
true );
265 bool AppendTable(
const OUString& rName,
bool bRecord =
true );
268 bool DeleteTables(
const std::vector<SCTAB>& TheTabs,
bool bRecord =
true );
272 void MoveTable( sal_uInt16 nDestDocNo,
SCTAB nDestTab,
bool bCopy,
const OUString* pNewTabName =
nullptr );
275 bool bLink,
SCTAB nTab);
281 const OUString& rFilter,
const OUString& rOptions,
282 std::u16string_view rTabName );
284 const OUString& rFilter,
const OUString& rOptions,
285 const OUString& rSource );
287 void ShowTable(
const std::vector<OUString>& rNames );
290 void MakeScenario(
const OUString& rName,
const OUString& rComment,
301 void ReplaceNote(
const ScAddress& rPos,
const OUString& rNoteText,
const OUString* pAuthor,
const OUString* pDate );
311 const OUString* pPrint,
312 const OUString* pRepCol,
const OUString* pRepRow,
337 std::vector<std::unique_ptr<ScDataFormFragment>>& rEdits,
338 sal_uInt16 aColLength);
348 const ::editeng::SvxBorderLine* pDestLine,
349 const ::editeng::SvxBorderLine* pSrcLine,
354 const css::uno::Reference< css::datatransfer::XTransferable >& rxTransferable );
357 bool bSkipEmpty,
bool bTranspose,
bool bAsLink,
bool bAllowDialogs,
361 bool bSkipEmpty,
bool bTranspose,
bool bAsLink,
bool bAllowDialogs,
void DetectiveMarkInvalid()
SC_DLLPUBLIC void InsertPageBreak(bool bColumn, bool bRecord=true, const ScAddress *pPos=nullptr, bool bSetModified=true)
CreateNameFlags GetCreateNameFlags()
void DeleteContents(InsertDeleteFlags nFlags)
bool InsertTable(const OUString &rName, SCTAB nTabNr, bool bRecord=true)
void MoveTable(sal_uInt16 nDestDocNo, SCTAB nDestTab, bool bCopy, const OUString *pNewTabName=nullptr)
bool AdjustBlockHeight(bool bPaint=true, ScMarkData *pMarkData=nullptr)
void RemoveManualBreaks()
void SetSelectionFrameLines(const ::editeng::SvxBorderLine *pLine, bool bColorOnly)
todo: It should be possible to have MarkArrays for each table, in order to enable "search all" across...
void InsertTableLink(const OUString &rFile, const OUString &rFilter, const OUString &rOptions, std::u16string_view rTabName)
SC_DLLPUBLIC bool CopyToClip(ScDocument *pClipDoc, bool bCut, bool bApi=false, bool bIncludeObjects=false, bool bStopEdit=true)
void CreateNames(CreateNameFlags nFlags)
bool PasteBookmark(SotClipboardFormatId nFormatId, const css::uno::Reference< css::datatransfer::XTransferable > &rxTransferable, SCCOL nPosX, SCROW nPosY)
bool PasteFromClipToMultiRanges(InsertDeleteFlags nFlags, ScDocument *pClipDoc, ScPasteFunc nFunction, bool bSkipEmpty, bool bTranspose, bool bAsLink, bool bAllowDialogs, InsCellCmd eMoveMode, InsertDeleteFlags nUndoFlags)
bool GetAutoSumArea(ScRangeList &rRangeList)
bool AppendTable(const OUString &rName, bool bRecord=true)
void SetPrintRanges(bool bEntireSheet, const OUString *pPrint, const OUString *pRepCol, const OUString *pRepRow, bool bAddPrint)
void DoSheetConversion(const ScConversionParam &rParam)
Generic implementation of sheet conversion functions.
void FillTab(InsertDeleteFlags nFlags, ScPasteFunc nFunction, bool bSkipEmpty, bool bAsLink)
void DeleteCells(DelCellCmd eCmd)
void ApplyAttr(const SfxPoolItem &rAttrItem, bool bAdjustBlockHeight=true)
sheet protection state container
bool PasteGraphic(const Point &rPos, const Graphic &rGraphic, const OUString &rFile)
void SetValidation(const ScValidationData &rNew)
void DeleteTable(SCTAB nTabNr, bool bRecord=true)
void EnterBlock(const OUString &rString, const EditTextObject *pData)
void Solve(const ScSolveParam &rParam)
SC_DLLPUBLIC void CutToClip(ScDocument *pClipDoc=nullptr)
Not used?
void EnterValue(SCCOL nCol, SCROW nRow, SCTAB nTab, const double &rValue)
void OnLOKInsertDeleteRow(SCROW nStartRow, tools::Long nOffset)
void EnterDataAtCursor(const OUString &rString)
bool PasteLink(const css::uno::Reference< css::datatransfer::XTransferable > &rxTransferable)
void ConvertFormulaToValue()
bool RenameTable(const OUString &rName, SCTAB nTabNr)
void InsertTables(std::vector< OUString > &aNames, SCTAB nTab, SCTAB nCount, bool bRecord=true)
const SfxStyleSheet * GetStyleSheetFromMarked()
bool InsertName(const OUString &rName, const OUString &rSymbol, const OUString &rType)
bool TestFormatArea(SCCOL nCol, SCROW nRow, SCTAB nTab, bool bAttrChanged)
void FillSeries(FillDir eDir, FillCmd eCmd, FillDateCmd eDateCmd, double fStart, double fStep, double fMax)
bool SelectionEditable(bool *pOnlyNotBecauseOfMatrix=nullptr)
void RemoveStyleSheetInUse(const SfxStyleSheetBase *pStyleSheet)
void PostPasteFromClip(const ScRangeList &rPasteRanges, const ScMarkData &rMark)
bool CopyToClipSingleRange(ScDocument *pClipDoc, const ScRangeList &rRanges, bool bCut, bool bIncludeObjects)
bool PasteOnDrawObjectLinked(const css::uno::Reference< css::datatransfer::XTransferable > &rxTransferable, SdrObject &rHitObj)
sal_Int32 SCCOLROW
a type capable of holding either SCCOL or SCROW
bool Unprotect(SCTAB nTab, const OUString &rPassword)
void TransliterateText(TransliterationFlags nType)
bool HasBookmarkAtCursor(SvxHyperlinkItem *pContent)
void AutoFormat(sal_uInt16 nFormatNo)
bool SearchAndReplace(const SvxSearchItem *pSearchItem, bool bAddUndo, bool bIsApi)
ScViewFunc(vcl::Window *pParent, ScDocShell &rDocSh, ScTabViewShell *pViewShell)
OUString GetAutoSumFormula(const ScRangeList &rRangeList, bool bSubTotal, const ScAddress &rAddr, const OpCode eCode)
SC_DLLPUBLIC void PasteFromSystem()
SvtScriptType GetSelectionScriptType()
SC_DLLPUBLIC void DeletePageBreak(bool bColumn, bool bRecord=true, const ScAddress *pPos=nullptr, bool bSetModified=true)
bool PasteFile(const Point &, const OUString &, bool bLink)
void SetNoteText(const ScAddress &rPos, const OUString &rNoteText)
static void UpdateLineAttrs(::editeng::SvxBorderLine &rLine, const ::editeng::SvxBorderLine *pDestLine, const ::editeng::SvxBorderLine *pSrcLine, bool bColor)
void UseScenario(const OUString &rName)
void ShowTable(const std::vector< OUString > &rNames)
Parameter for data table aka multiple operations.
void OnLOKSetWidthOrHeight(SCCOLROW nStart, bool bWidth)
bool LinkBlock(const ScRange &rSource, const ScAddress &rDestPos)
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 InsertBookmark(const OUString &rDescription, const OUString &rURL, SCCOL nPosX, SCROW nPosY, const OUString *pTarget=nullptr, bool bTryReplace=false)
void UpdateStyleSheetInUse(const SfxStyleSheetBase *pStyleSheet)
bool PasteBitmapEx(const Point &, const BitmapEx &)
Parameters for conversion.
void SetNumFmtByStr(const OUString &rCode)
void MarkAndJumpToRanges(const ScRangeList &rRanges)
void ChangeIndent(bool bIncrement)
void ReplaceNote(const ScAddress &rPos, const OUString &rNoteText, const OUString *pAuthor, const OUString *pDate)
void ApplySelectionPattern(const ScPatternAttr &rAttr, bool bCursorOnly=false)
bool PasteMultiRangesFromClip(InsertDeleteFlags nFlags, ScDocument *pClipDoc, ScPasteFunc nFunction, bool bSkipEmpty, bool bTranspose, bool bAsLink, bool bAllowDialogs, InsCellCmd eMoveMode, InsertDeleteFlags nUndoFlags)
bool MoveBlockTo(const ScRange &rSource, const ScAddress &rDestPos, bool bCut)
void SetNumberFormat(SvNumFormatType nFormatType, sal_uLong nAdd=0)
SC_DLLPUBLIC bool PasteFromClip(InsertDeleteFlags nFlags, ScDocument *pClipDoc, ScPasteFunc nFunction=ScPasteFunc::NONE, bool bSkipEmpty=false, bool bTranspose=false, bool bAsLink=false, InsCellCmd eMoveMode=INS_NONE, InsertDeleteFlags nUndoExtraFlags=InsertDeleteFlags::NONE, bool bAllowDialogs=false)
SC_DLLPUBLIC const ScPatternAttr * GetSelectionPattern()
bool CopyToClipMultiRange(const ScDocument *pClipDoc, const ScRangeList &rRanges, bool bCut, bool bApi, bool bIncludeObjects)
void InsertCurrentTime(SvNumFormatType nCellFmt, const OUString &rUndoStr)
Insert date or time into current cell.
void CopyAutoSpellData(FillDir eDir, SCCOL nStartCol, SCROW nStartRow, SCCOL nEndCol, SCROW nEndRow, sal_uLong nCount)
void InsertAreaLink(const OUString &rFile, const OUString &rFilter, const OUString &rOptions, const OUString &rSource)
rtl::Reference< ScTransferObj > CopyToTransferable()
void SetPrintZoom(sal_uInt16 nScale)
void EnterMatrix(const OUString &rString,::formula::FormulaGrammar::Grammar eGram)
SC_DLLPUBLIC void FillAuto(FillDir eDir, SCCOL nStartCol, SCROW nStartRow, SCCOL nEndCol, SCROW nEndRow, sal_uLong nCount)
void PasteRTF(SCCOL nCol, SCROW nStartRow, const css::uno::Reference< css::datatransfer::XTransferable > &rxTransferable)
void ApplyPatternLines(const ScPatternAttr &rAttr, const SvxBoxItem &rNewOuter, const SvxBoxInfoItem *pNewInner)
bool MergeCells(bool bApi, bool &rDoContents, bool bCenter)
void DoAutoAttributes(SCCOL nCol, SCROW nRow, SCTAB nTab, bool bAttrChanged)
void ShowNote(bool bShow)
void ProtectSheet(SCTAB nTab, const ScTableProtection &rProtect)
bool AutoSum(const ScRange &rRange, bool bSubTotal, bool bSetCursor, bool bContinue, const OpCode eCode)
void ChangeNumFmtDecimals(bool bIncrement)
void PasteFromTransferable(const css::uno::Reference< css::datatransfer::XTransferable > &rxTransferable)
bool SetTabBgColor(const Color &rColor, SCTAB nTabNr)
void EnterAutoSum(const ScRangeList &rRangeList, bool bSubTotal, const ScAddress &rAddr, const OpCode eCode)
void SetStyleSheetToMarked(const SfxStyleSheet *pStyleSheet)
void OnLOKInsertDeleteColumn(SCCOL nStartCol, tools::Long nOffset)
SC_DLLPUBLIC void FillSimple(FillDir eDir)
SC_DLLPUBLIC void DataFormPutData(SCROW nCurrentRow, SCROW nStartRow, SCCOL nStartCol, SCROW nEndRow, SCCOL nEndCol, std::vector< std::unique_ptr< ScDataFormFragment >> &rEdits, sal_uInt16 aColLength)
bool PasteMetaFile(const Point &, const GDIMetaFile &)
void SetWidthOrHeight(bool bWidth, const std::vector< sc::ColRowSpan > &rRanges, ScSizeMode eMode, sal_uInt16 nSizeTwips, bool bRecord=true, const ScMarkData *pMarkData=nullptr)
bool DeleteTables(const std::vector< SCTAB > &TheTabs, bool bRecord=true)
void ImportTables(ScDocShell *pSrcShell, SCTAB nCount, const SCTAB *pSrcTabs, bool bLink, SCTAB nTab)
void UpdateSelectionArea(const ScMarkData &rSel, ScPatternAttr *pAttr=nullptr)
void ApplyUserItemSet(const SfxItemSet &rItemSet)
void DoHangulHanjaConversion()
void SetMarkedWidthOrHeight(bool bWidth, ScSizeMode eMode, sal_uInt16 nSizeTwips)
void ApplyAttributes(const SfxItemSet *pDialogSet, const SfxItemSet *pOldSet, bool bAdjustBlockHeight=true)
bool AdjustRowHeight(SCROW nStartRow, SCROW nEndRow, bool bApi)
void InsertSpecialChar(const OUString &rStr, const vcl::Font &rFont)
void ProtectDoc(const OUString &rPassword)
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)
sal_uInt16 GetOptimalColWidth(SCCOL nCol, SCTAB nTab, bool bFormula)
ScAutoFormatData * CreateAutoFormatData()
void FillCrossDblClick()
Downward fill of selected cell(s) by double-clicking cross-hair cursor.
void ModifyCellSize(ScDirection eDir, bool bOptimal)
void DeleteMulti(bool bRows)
void GetSelectionFrame(std::shared_ptr< SvxBoxItem > &rLineOuter, std::shared_ptr< SvxBoxInfoItem > &rLineInner)
::std::vector< ScUndoTabColorInfo > List
void HideTable(const ScMarkData &rMark, SCTAB nTabToSelect=-1)
bool InsertCells(InsCellCmd eCmd, bool bRecord=true, bool bPartOfPaste=false)
void EnterData(SCCOL nCol, SCROW nRow, SCTAB nTab, const OUString &rString, const EditTextObject *pData=nullptr)
void MakeScenario(const OUString &rName, const OUString &rComment, const Color &rColor, ScScenarioFlags nFlags)
void TabOp(const ScTabOpParam &rParam, bool bRecord=true)