LibreOffice Module sc (master)  1
Go to the documentation of this file.
1 /* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
2 /*
3  * This file is part of the LibreOffice project.
4  *
5  * This Source Code Form is subject to the terms of the Mozilla Public
6  * License, v. 2.0. If a copy of the MPL was not distributed with this
7  * file, You can obtain one at
8  *
9  * This file incorporates work covered by the following license notice:
10  *
11  * Licensed to the Apache Software Foundation (ASF) under one or more
12  * contributor license agreements. See the NOTICE file distributed
13  * with this work for additional information regarding copyright
14  * ownership. The ASF licenses this file to you under the Apache
15  * License, Version 2.0 (the "License"); you may not use this file
16  * except in compliance with the License. You may obtain a copy of
17  * the License at .
18  */
22 #include "tabview.hxx"
24 #include <tabbgcolor.hxx>
26 #include <com/sun/star/embed/Aspects.hpp>
27 #include <vector>
29 class ScPatternAttr;
30 class ScAutoFormatData;
31 class SvxSearchItem;
32 class SfxItemSet;
33 class SvxBoxItem;
34 class SvxBoxInfoItem;
35 class SfxStyleSheetBase;
36 class SfxStyleSheet;
37 class SfxPoolItem;
38 class EditTextObject;
39 struct ScSolveParam;
40 struct ScTabOpParam;
41 class ScValidationData;
42 class ScConversionParam;
43 class SdrModel;
44 class Graphic;
45 class ScRangeList;
46 class SvxHyperlinkItem;
47 class ScTransferObj;
48 class ScTableProtection;
49 enum class CreateNameFlags;
51 namespace editeng { class SvxBorderLine; }
52 namespace com::sun::star::embed { class XEmbeddedObject; }
54 namespace sc {
56 struct ColRowSpan;
58 }
60 namespace com::sun::star::datatransfer { class XTransferable; }
63 {
64  std::unique_ptr<weld::Builder> m_xBuilder;
65  std::unique_ptr<weld::Label> m_xLabel;
66  std::unique_ptr<weld::Entry> m_xEdit;
68  ScDataFormFragment(weld::Container* pGrid, int nLine);
69 };
71 class ScViewFunc : public ScTabView
72 {
73 private:
74  ScAddress aFormatSource; // for automatic extension of formatting
78 public:
79  ScViewFunc( vcl::Window* pParent, ScDocShell& rDocSh, ScTabViewShell* pViewShell );
80  ~ScViewFunc();
83  void GetSelectionFrame(
84  std::shared_ptr<SvxBoxItem>& rLineOuter,
85  std::shared_ptr<SvxBoxInfoItem>& rLineInner );
89  bool GetAutoSumArea( ScRangeList& rRangeList );
90  void EnterAutoSum( const ScRangeList& rRangeList, bool bSubTotal, const ScAddress& rAddr, const OpCode eCode );
91  bool AutoSum( const ScRange& rRange, bool bSubTotal, bool bSetCursor, bool bContinue, const OpCode eCode );
92  OUString GetAutoSumFormula( const ScRangeList& rRangeList, bool bSubTotal, const ScAddress& rAddr, const OpCode eCode );
94  void EnterData( SCCOL nCol, SCROW nRow, SCTAB nTab, const OUString& rString,
95  const EditTextObject* pData = nullptr );
96  void EnterData( SCCOL nCol, SCROW nRow, SCTAB nTab,
97  const EditTextObject& rData, bool bTestSimple = false );
98  void EnterValue( SCCOL nCol, SCROW nRow, SCTAB nTab, const double& rValue );
100  void EnterMatrix( const OUString& rString, ::formula::FormulaGrammar::Grammar eGram );
106  void EnterBlock( const OUString& rString, const EditTextObject* pData );
108  void EnterDataAtCursor( const OUString& rString );
110  SC_DLLPUBLIC void CutToClip(ScDocument* pClipDoc = nullptr);
111  SC_DLLPUBLIC bool CopyToClip( ScDocument* pClipDoc, bool bCut, bool bApi = false,
112  bool bIncludeObjects = false, bool bStopEdit = true );
113  SC_DLLPUBLIC bool CopyToClip( ScDocument* pClipDoc, const ScRangeList& rRange, bool bCut,
114  bool bApi = false, bool bIncludeObjects = false, bool bStopEdit = true );
115  bool CopyToClipSingleRange( ScDocument* pClipDoc, const ScRangeList& rRanges, bool bCut,
116  bool bIncludeObjects );
117  bool CopyToClipMultiRange( const ScDocument* pClipDoc, const ScRangeList& rRanges, bool bCut,
118  bool bApi, bool bIncludeObjects );
120  SC_DLLPUBLIC bool PasteFromClip( InsertDeleteFlags nFlags, ScDocument* pClipDoc,
121  ScPasteFunc nFunction = ScPasteFunc::NONE, bool bSkipEmpty = false,
122  bool bTranspose = false, bool bAsLink = false,
123  InsCellCmd eMoveMode = INS_NONE,
124  InsertDeleteFlags nUndoExtraFlags = InsertDeleteFlags::NONE,
125  bool bAllowDialogs = false );
127  void FillTab( InsertDeleteFlags nFlags, ScPasteFunc nFunction, bool bSkipEmpty, bool bAsLink );
130  SC_DLLPUBLIC bool PasteFromSystem( SotClipboardFormatId nFormatId, bool bApi = false );
131  void PasteFromTransferable( const css::uno::Reference<
132  css::datatransfer::XTransferable >& rxTransferable );
134  void PasteDraw();
135  void PasteDraw( const Point& rLogicPos, SdrModel* pModel, bool bGroup,
136  std::u16string_view rSrcShellID, std::u16string_view rDestShellID );
139  const css::uno::Reference< css::datatransfer::XTransferable >& rxTransferable,
140  SdrObject& rHitObj);
142  bool PasteDataFormat( SotClipboardFormatId nFormatId,
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 );
149  bool PasteBitmapEx( const Point&, const BitmapEx& );
150  bool PasteMetaFile( const Point&, const GDIMetaFile& );
151  bool PasteGraphic( const Point& rPos, const Graphic& rGraphic,
152  const OUString& rFile );
153  bool PasteBookmark( SotClipboardFormatId nFormatId,
154  const css::uno::Reference< css::datatransfer::XTransferable >& rxTransferable,
155  SCCOL nPosX, SCROW nPosY );
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 );
161  bool HasBookmarkAtCursor( SvxHyperlinkItem* pContent );
163  bool MoveBlockTo( const ScRange& rSource, const ScAddress& rDestPos,
164  bool bCut );
166  bool LinkBlock( const ScRange& rSource, const ScAddress& rDestPos );
168  void CreateNames( CreateNameFlags nFlags );
170  void InsertNameList();
171  bool InsertName( const OUString& rName, const OUString& rSymbol,
172  const OUString& rType );
174  void ApplyAttributes( const SfxItemSet* pDialogSet, const SfxItemSet* pOldSet, bool bAdjustBlockHeight = true );
175  void ApplyAttr( const SfxPoolItem& rAttrItem, bool bAdjustBlockHeight = true );
177  void ApplySelectionPattern( const ScPatternAttr& rAttr,
178  bool bCursorOnly = false);
179  void ApplyPatternLines(const ScPatternAttr& rAttr,
180  const SvxBoxItem& rNewOuter,
181  const SvxBoxInfoItem* pNewInner);
183  void ApplyUserItemSet( const SfxItemSet& rItemSet );
185  const SfxStyleSheet*
187  void SetStyleSheetToMarked( const SfxStyleSheet* pStyleSheet );
188  void RemoveStyleSheetInUse( const SfxStyleSheetBase* pStyleSheet );
189  void UpdateStyleSheetInUse( const SfxStyleSheetBase* pStyleSheet );
191  void SetNumberFormat( SvNumFormatType nFormatType, sal_uLong nAdd = 0 );
192  void SetNumFmtByStr( const OUString& rCode );
193  void ChangeNumFmtDecimals( bool bIncrement );
195  void SetValidation( const ScValidationData& rNew );
197  void ChangeIndent( bool bIncrement );
199  void ProtectSheet( SCTAB nTab, const ScTableProtection& rProtect );
201  void ProtectDoc( const OUString& rPassword );
202  bool Unprotect( SCTAB nTab, const OUString& rPassword );
204  void DeleteCells( DelCellCmd eCmd );
205  bool InsertCells( InsCellCmd eCmd, bool bRecord = true, bool bPartOfPaste = false );
206  void DeleteMulti( bool bRows );
208  void DeleteContents( InsertDeleteFlags nFlags );
210  void SetWidthOrHeight(
211  bool bWidth, const std::vector<sc::ColRowSpan>& rRanges, ScSizeMode eMode,
212  sal_uInt16 nSizeTwips, bool bRecord = true, const ScMarkData* pMarkData = nullptr );
214  void SetMarkedWidthOrHeight( bool bWidth, ScSizeMode eMode, sal_uInt16 nSizeTwips );
216  bool AdjustBlockHeight( bool bPaint = true, ScMarkData* pMarkData = nullptr );
217  bool AdjustRowHeight( SCROW nStartRow, SCROW nEndRow, bool bApi );
219  void ModifyCellSize( ScDirection eDir, bool bOptimal );
221  SC_DLLPUBLIC void
222  InsertPageBreak( bool bColumn, bool bRecord = true,
223  const ScAddress* pPos = nullptr,
224  bool bSetModified = true );
225  SC_DLLPUBLIC void
226  DeletePageBreak( bool bColumn, bool bRecord = true,
227  const ScAddress* pPos = nullptr,
228  bool bSetModified = true );
230  void RemoveManualBreaks();
232  void SetPrintZoom(sal_uInt16 nScale);
233  void AdjustPrintZoom();
235  bool TestMergeCells();
236  bool TestRemoveMerge();
238  bool MergeCells( bool bApi, bool& rDoContents, bool bCenter );
239  bool RemoveMerge();
241  SC_DLLPUBLIC void
242  FillSimple( FillDir eDir );
243  void FillSeries( FillDir eDir, FillCmd eCmd, FillDateCmd eDateCmd,
244  double fStart, double fStep, double fMax );
245  SC_DLLPUBLIC void
246  FillAuto( FillDir eDir, SCCOL nStartCol, SCROW nStartRow,
247  SCCOL nEndCol, SCROW nEndRow, sal_uLong nCount );
248  void FillCrossDblClick();
249  void ConvertFormulaToValue();
254  void AutoFormat( sal_uInt16 nFormatNo );
256  bool SearchAndReplace( const SvxSearchItem* pSearchItem,
257  bool bAddUndo, bool bIsApi );
259  void Solve( const ScSolveParam& rParam );
260  void TabOp( const ScTabOpParam& rParam, bool bRecord = true );
262  bool InsertTable( const OUString& rName, SCTAB nTabNr, bool bRecord = true );
263  void InsertTables(std::vector<OUString>& aNames, SCTAB nTab, SCTAB nCount, bool bRecord = true);
265  bool AppendTable( const OUString& rName, bool bRecord = true );
267  void DeleteTable( SCTAB nTabNr, bool bRecord = true );
268  bool DeleteTables(const std::vector<SCTAB>& TheTabs, bool bRecord = true );
269  void DeleteTables(SCTAB nTab, SCTAB nSheets);
271  bool RenameTable( const OUString& rName, SCTAB nTabNr );
272  void MoveTable( sal_uInt16 nDestDocNo, SCTAB nDestTab, bool bCopy, const OUString* pNewTabName = nullptr );
273  void ImportTables( ScDocShell* pSrcShell,
274  SCTAB nCount, const SCTAB* pSrcTabs,
275  bool bLink,SCTAB nTab);
277  bool SetTabBgColor( const Color& rColor, SCTAB nTabNr );
278  bool SetTabBgColor( ScUndoTabColorInfo::List& rUndoSetTabBgColorInfoList );
280  void InsertTableLink( const OUString& rFile,
281  const OUString& rFilter, const OUString& rOptions,
282  std::u16string_view rTabName );
283  void InsertAreaLink( const OUString& rFile,
284  const OUString& rFilter, const OUString& rOptions,
285  const OUString& rSource );
287  void ShowTable( const std::vector<OUString>& rNames );
288  void HideTable( const ScMarkData& rMark, SCTAB nTabToSelect = -1);
290  void MakeScenario(const OUString& rName, const OUString& rComment,
291  const Color& rColor, ScScenarioFlags nFlags);
292  void ExtendScenario();
293  void UseScenario( const OUString& rName );
295  void InsertSpecialChar( const OUString& rStr, const vcl::Font& rFont );
297  void SetSelectionFrameLines( const ::editeng::SvxBorderLine* pLine,
298  bool bColorOnly );
300  void SetNoteText( const ScAddress& rPos, const OUString& rNoteText );
301  void ReplaceNote( const ScAddress& rPos, const OUString& rNoteText, const OUString* pAuthor, const OUString* pDate );
302  void DoRefConversion();
305  void DoThesaurus();
308  void DoSheetConversion( const ScConversionParam& rParam );
310  void SetPrintRanges( bool bEntireSheet,
311  const OUString* pPrint,
312  const OUString* pRepCol, const OUString* pRepRow,
313  bool bAddPrint );
315  void DetectiveAddPred();
316  void DetectiveDelPred();
317  void DetectiveAddSucc();
318  void DetectiveDelSucc();
319  void DetectiveAddError();
320  void DetectiveMarkInvalid();
321  void DetectiveDelAll();
322  void DetectiveRefresh();
323  void DetectiveMarkPred();
324  void DetectiveMarkSucc();
326  void InsertCurrentTime(SvNumFormatType nCellFmt, const OUString& rUndoStr);
328  void ShowNote( bool bShow );
329  void EditNote();
331  bool SelectionEditable( bool* pOnlyNotBecauseOfMatrix = nullptr );
333  SC_DLLPUBLIC void
334  DataFormPutData(SCROW nCurrentRow ,
335  SCROW nStartRow , SCCOL nStartCol ,
336  SCROW nEndRow , SCCOL nEndCol ,
337  std::vector<std::unique_ptr<ScDataFormFragment>>& rEdits,
338  sal_uInt16 aColLength);
339  void UpdateSelectionArea( const ScMarkData& rSel, ScPatternAttr* pAttr = nullptr );
341  void OnLOKInsertDeleteColumn(SCCOL nStartCol, tools::Long nOffset);
342  void OnLOKInsertDeleteRow(SCROW nStartRow, tools::Long nOffset);
343  void OnLOKSetWidthOrHeight(SCCOLROW nStart, bool bWidth);
345  // Internal helper functions
346 protected:
347  static void UpdateLineAttrs( ::editeng::SvxBorderLine& rLine,
348  const ::editeng::SvxBorderLine* pDestLine,
349  const ::editeng::SvxBorderLine* pSrcLine,
350  bool bColor );
352 private:
353  void PasteRTF( SCCOL nCol, SCROW nStartRow,
354  const css::uno::Reference< css::datatransfer::XTransferable >& rxTransferable );
356  bool PasteMultiRangesFromClip( InsertDeleteFlags nFlags, ScDocument* pClipDoc, ScPasteFunc nFunction,
357  bool bSkipEmpty, bool bTranspose, bool bAsLink, bool bAllowDialogs,
358  InsCellCmd eMoveMode, InsertDeleteFlags nUndoFlags );
360  bool PasteFromClipToMultiRanges( InsertDeleteFlags nFlags, ScDocument* pClipDoc, ScPasteFunc nFunction,
361  bool bSkipEmpty, bool bTranspose, bool bAsLink, bool bAllowDialogs,
362  InsCellCmd eMoveMode, InsertDeleteFlags nUndoFlags );
364  void PostPasteFromClip(const ScRangeList& rPasteRanges, const ScMarkData& rMark);
366  sal_uInt16 GetOptimalColWidth( SCCOL nCol, SCTAB nTab, bool bFormula );
368  void StartFormatArea();
369  bool TestFormatArea( SCCOL nCol, SCROW nRow, SCTAB nTab, bool bAttrChanged );
370  void DoAutoAttributes( SCCOL nCol, SCROW nRow, SCTAB nTab,
371  bool bAttrChanged );
373  void MarkAndJumpToRanges(const ScRangeList& rRanges);
374  void CopyAutoSpellData( FillDir eDir, SCCOL nStartCol, SCROW nStartRow,
375  SCCOL nEndCol, SCROW nEndRow, sal_uLong nCount );
376 };
378 extern bool bPasteIsMove;
380 #endif
382 /* vim:set shiftwidth=4 softtabstop=4 expandtab: */
void DetectiveMarkInvalid()
Definition: viewfun6.cxx:111
SC_DLLPUBLIC void InsertPageBreak(bool bColumn, bool bRecord=true, const ScAddress *pPos=nullptr, bool bSetModified=true)
Definition: viewfun2.cxx:941
std::unique_ptr< weld::Label > m_xLabel
Definition: viewfunc.hxx:65
CreateNameFlags GetCreateNameFlags()
Definition: viewfunc.cxx:2903
void DeleteContents(InsertDeleteFlags nFlags)
Definition: viewfunc.cxx:1937
bool InsertTable(const OUString &rName, SCTAB nTabNr, bool bRecord=true)
Definition: viewfun2.cxx:2328
void MoveTable(sal_uInt16 nDestDocNo, SCTAB nDestTab, bool bCopy, const OUString *pNewTabName=nullptr)
Definition: viewfun2.cxx:2792
bool AdjustBlockHeight(bool bPaint=true, ScMarkData *pMarkData=nullptr)
Definition: viewfun2.cxx:113
void RemoveManualBreaks()
Definition: viewfun2.cxx:975
void SetSelectionFrameLines(const ::editeng::SvxBorderLine *pLine, bool bColorOnly)
Definition: viewfun2.cxx:3296
todo: It should be possible to have MarkArrays for each table, in order to enable "search all" across...
Definition: markdata.hxx:43
void InsertTableLink(const OUString &rFile, const OUString &rFilter, const OUString &rOptions, std::u16string_view rTabName)
Definition: viewfun2.cxx:2637
SC_DLLPUBLIC bool CopyToClip(ScDocument *pClipDoc, bool bCut, bool bApi=false, bool bIncludeObjects=false, bool bStopEdit=true)
Definition: viewfun3.cxx:166
void CreateNames(CreateNameFlags nFlags)
Definition: viewfunc.cxx:2892
bool PasteBookmark(SotClipboardFormatId nFormatId, const css::uno::Reference< css::datatransfer::XTransferable > &rxTransferable, SCCOL nPosX, SCROW nPosY)
Definition: viewfun4.cxx:681
ScAddress aFormatSource
Definition: viewfunc.hxx:74
bool PasteFromClipToMultiRanges(InsertDeleteFlags nFlags, ScDocument *pClipDoc, ScPasteFunc nFunction, bool bSkipEmpty, bool bTranspose, bool bAsLink, bool bAllowDialogs, InsCellCmd eMoveMode, InsertDeleteFlags nUndoFlags)
Definition: viewfun3.cxx:1637
bool GetAutoSumArea(ScRangeList &rRangeList)
Definition: viewfun2.cxx:477
bool AppendTable(const OUString &rName, bool bRecord=true)
Definition: viewfun2.cxx:2383
Definition: global.hxx:318
void SetPrintRanges(bool bEntireSheet, const OUString *pPrint, const OUString *pRepCol, const OUString *pRepRow, bool bAddPrint)
Definition: viewfun2.cxx:1014
void DoSheetConversion(const ScConversionParam &rParam)
Generic implementation of sheet conversion functions.
Definition: viewfun4.cxx:438
void FillTab(InsertDeleteFlags nFlags, ScPasteFunc nFunction, bool bSkipEmpty, bool bAsLink)
Definition: viewfun2.cxx:1638
std::unique_ptr< weld::Entry > m_xEdit
Definition: viewfunc.hxx:66
void DeleteCells(DelCellCmd eCmd)
Definition: viewfunc.cxx:1653
void ApplyAttr(const SfxPoolItem &rAttrItem, bool bAdjustBlockHeight=true)
Definition: viewfunc.cxx:998
sheet protection state container
Definition: global.hxx:236
void InsertNameList()
Definition: viewfunc.cxx:2965
sal_uIntPtr sal_uLong
long Long
bool PasteGraphic(const Point &rPos, const Graphic &rGraphic, const OUString &rFile)
Definition: viewfun7.cxx:377
void SetValidation(const ScValidationData &rNew)
Definition: viewfun2.cxx:3406
void DeleteTable(SCTAB nTabNr, bool bRecord=true)
Definition: viewfun2.cxx:2414
ScRange aFormatArea
Definition: viewfunc.hxx:75
void EnterBlock(const OUString &rString, const EditTextObject *pData)
Definition: viewfun2.cxx:850
void Solve(const ScSolveParam &rParam)
Definition: viewfun2.cxx:2194
SC_DLLPUBLIC void CutToClip(ScDocument *pClipDoc=nullptr)
Not used?
Definition: viewfun3.cxx:88
void EnterValue(SCCOL nCol, SCROW nRow, SCTAB nTab, const double &rValue)
Definition: viewfunc.cxx:594
void OnLOKInsertDeleteRow(SCROW nStartRow, tools::Long nOffset)
Definition: viewfunc.cxx:1520
void EnterDataAtCursor(const OUString &rString)
Definition: viewfunc.cxx:750
Definition: scui_def.hxx:51
bool PasteLink(const css::uno::Reference< css::datatransfer::XTransferable > &rxTransferable)
Definition: viewfun5.cxx:677
void ConvertFormulaToValue()
Definition: viewfun2.cxx:1829
bool RenameTable(const OUString &rName, SCTAB nTabNr)
Definition: viewfun2.cxx:2591
Definition: global.hxx:290
void DetectiveMarkPred()
Definition: viewfun6.cxx:167
void InsertTables(std::vector< OUString > &aNames, SCTAB nTab, SCTAB nCount, bool bRecord=true)
Definition: viewfun2.cxx:2341
const SfxStyleSheet * GetStyleSheetFromMarked()
Definition: viewfunc.cxx:1295
bool InsertName(const OUString &rName, const OUString &rSymbol, const OUString &rType)
Definition: viewfunc.cxx:2838
bool TestFormatArea(SCCOL nCol, SCROW nRow, SCTAB nTab, bool bAttrChanged)
Definition: viewfunc.cxx:140
void FillSeries(FillDir eDir, FillCmd eCmd, FillDateCmd eDateCmd, double fStart, double fStep, double fMax)
Definition: viewfun2.cxx:1406
bool SelectionEditable(bool *pOnlyNotBecauseOfMatrix=nullptr)
Definition: viewfunc.cxx:260
void RemoveStyleSheetInUse(const SfxStyleSheetBase *pStyleSheet)
Definition: viewfunc.cxx:1411
void PostPasteFromClip(const ScRangeList &rPasteRanges, const ScMarkData &rMark)
Definition: viewfun3.cxx:1800
bool CopyToClipSingleRange(ScDocument *pClipDoc, const ScRangeList &rRanges, bool bCut, bool bIncludeObjects)
Definition: viewfun3.cxx:215
bool PasteOnDrawObjectLinked(const css::uno::Reference< css::datatransfer::XTransferable > &rxTransferable, SdrObject &rHitObj)
Definition: viewfun3.cxx:772
sal_Int32 SCCOLROW
a type capable of holding either SCCOL or SCROW
Definition: types.hxx:24
bool Unprotect(SCTAB nTab, const OUString &rPassword)
Definition: viewfunc.cxx:2538
std::unique_ptr< weld::Builder > m_xBuilder
Definition: viewfunc.hxx:64
Definition: global.hxx:343
void TransliterateText(TransliterationFlags nType)
Definition: viewfun2.cxx:1840
bool HasBookmarkAtCursor(SvxHyperlinkItem *pContent)
Definition: viewfun4.cxx:753
void AutoFormat(sal_uInt16 nFormatNo)
Definition: viewfun2.cxx:1882
bool RemoveMerge()
Definition: viewfun2.cxx:1307
bool SearchAndReplace(const SvxSearchItem *pSearchItem, bool bAddUndo, bool bIsApi)
Definition: viewfun2.cxx:1900
void DetectiveDelSucc()
Definition: viewfun6.cxx:90
ScViewFunc(vcl::Window *pParent, ScDocShell &rDocSh, ScTabViewShell *pViewShell)
Definition: viewfunc.cxx:92
OUString GetAutoSumFormula(const ScRangeList &rRangeList, bool bSubTotal, const ScAddress &rAddr, const OpCode eCode)
Definition: viewfun2.cxx:809
SC_DLLPUBLIC void PasteFromSystem()
Definition: viewfun3.cxx:482
SvtScriptType GetSelectionScriptType()
Definition: viewfunc.cxx:803
SC_DLLPUBLIC void DeletePageBreak(bool bColumn, bool bRecord=true, const ScAddress *pPos=nullptr, bool bSetModified=true)
Definition: viewfun2.cxx:958
bool bFormatValid
Definition: viewfunc.hxx:76
bool PasteFile(const Point &, const OUString &, bool bLink)
Definition: viewfun4.cxx:578
void SetNoteText(const ScAddress &rPos, const OUString &rNoteText)
Definition: viewfunc.cxx:2582
Definition: global.hxx:189
static void UpdateLineAttrs(::editeng::SvxBorderLine &rLine, const ::editeng::SvxBorderLine *pDestLine, const ::editeng::SvxBorderLine *pSrcLine, bool bColor)
Definition: viewfun2.cxx:3261
void DetectiveAddPred()
Definition: viewfun6.cxx:69
void UseScenario(const OUString &rName)
Definition: viewfun2.cxx:2316
void ShowTable(const std::vector< OUString > &rNames)
Definition: viewfun2.cxx:3142
Parameter for data table aka multiple operations.
Definition: paramisc.hxx:46
Definition: global.hxx:326
void OnLOKSetWidthOrHeight(SCCOLROW nStart, bool bWidth)
Definition: viewfunc.cxx:1576
bool LinkBlock(const ScRange &rSource, const ScAddress &rDestPos)
Definition: viewfun3.cxx:1916
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)
Definition: viewfun5.cxx:77
sal_Int16 SCCOL
Definition: types.hxx:22
Definition: global.hxx:158
void InsertBookmark(const OUString &rDescription, const OUString &rURL, SCCOL nPosX, SCROW nPosY, const OUString *pTarget=nullptr, bool bTryReplace=false)
Definition: viewfun4.cxx:694
void UpdateStyleSheetInUse(const SfxStyleSheetBase *pStyleSheet)
Definition: viewfunc.cxx:1437
bool PasteBitmapEx(const Point &, const BitmapEx &)
Definition: viewfun7.cxx:365
void DetectiveAddSucc()
Definition: viewfun6.cxx:83
Parameters for conversion.
Definition: spellparam.hxx:33
bool TestMergeCells()
Definition: viewfun2.cxx:1123
void SetNumFmtByStr(const OUString &rCode)
Definition: viewfunc.cxx:2628
void MarkAndJumpToRanges(const ScRangeList &rRanges)
Definition: viewfun6.cxx:135
void ChangeIndent(bool bIncrement)
Definition: viewfunc.cxx:2808
bool bPasteIsMove
Definition: viewfun7.cxx:50
void DetectiveAddError()
Definition: viewfun6.cxx:97
void ReplaceNote(const ScAddress &rPos, const OUString &rNoteText, const OUString *pAuthor, const OUString *pDate)
Definition: viewfunc.cxx:2587
void ApplySelectionPattern(const ScPatternAttr &rAttr, bool bCursorOnly=false)
Definition: viewfunc.cxx:1108
bool PasteMultiRangesFromClip(InsertDeleteFlags nFlags, ScDocument *pClipDoc, ScPasteFunc nFunction, bool bSkipEmpty, bool bTranspose, bool bAsLink, bool bAllowDialogs, InsCellCmd eMoveMode, InsertDeleteFlags nUndoFlags)
Definition: viewfun3.cxx:1472
bool MoveBlockTo(const ScRange &rSource, const ScAddress &rDestPos, bool bCut)
Definition: viewfun3.cxx:1831
void SetNumberFormat(SvNumFormatType nFormatType, sal_uLong nAdd=0)
Definition: viewfunc.cxx:2592
void StartFormatArea()
Definition: viewfunc.cxx:118
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)
Definition: viewfun3.cxx:875
Definition: global.hxx:359
void DetectiveDelPred()
Definition: viewfun6.cxx:76
SC_DLLPUBLIC const ScPatternAttr * GetSelectionPattern()
Definition: viewfunc.cxx:829
bool CopyToClipMultiRange(const ScDocument *pClipDoc, const ScRangeList &rRanges, bool bCut, bool bApi, bool bIncludeObjects)
Definition: viewfun3.cxx:305
void InsertCurrentTime(SvNumFormatType nCellFmt, const OUString &rUndoStr)
Insert date or time into current cell.
Definition: viewfun6.cxx:271
void CopyAutoSpellData(FillDir eDir, SCCOL nStartCol, SCROW nStartRow, SCCOL nEndCol, SCROW nEndRow, sal_uLong nCount)
Definition: viewfun2.cxx:1477
void InsertAreaLink(const OUString &rFile, const OUString &rFilter, const OUString &rOptions, const OUString &rSource)
Definition: viewfun2.cxx:2624
rtl::Reference< ScTransferObj > CopyToTransferable()
Definition: viewfun3.cxx:429
void DetectiveDelAll()
Definition: viewfun6.cxx:104
void SetPrintZoom(sal_uInt16 nScale)
Definition: viewfun2.cxx:999
void EnterMatrix(const OUString &rString,::formula::FormulaGrammar::Grammar eGram)
Definition: viewfunc.cxx:759
SC_DLLPUBLIC void FillAuto(FillDir eDir, SCCOL nStartCol, SCROW nStartRow, SCCOL nEndCol, SCROW nEndRow, sal_uLong nCount)
Definition: viewfun2.cxx:1429
void PasteRTF(SCCOL nCol, SCROW nStartRow, const css::uno::Reference< css::datatransfer::XTransferable > &rxTransferable)
Definition: viewfun4.cxx:76
sal_Int32 SCROW
Definition: types.hxx:18
void ApplyPatternLines(const ScPatternAttr &rAttr, const SvxBoxItem &rNewOuter, const SvxBoxInfoItem *pNewInner)
Definition: viewfunc.cxx:1026
bool MergeCells(bool bApi, bool &rDoContents, bool bCenter)
Definition: viewfun2.cxx:1140
void DoAutoAttributes(SCCOL nCol, SCROW nRow, SCTAB nTab, bool bAttrChanged)
Definition: viewfunc.cxx:205
void ShowNote(bool bShow)
Definition: viewfun6.cxx:480
void ProtectSheet(SCTAB nTab, const ScTableProtection &rProtect)
Definition: viewfunc.cxx:2498
bool AutoSum(const ScRange &rRange, bool bSubTotal, bool bSetCursor, bool bContinue, const OpCode eCode)
Definition: viewfun2.cxx:589
void DetectiveRefresh()
Definition: viewfun6.cxx:118
void ChangeNumFmtDecimals(bool bIncrement)
Definition: viewfunc.cxx:2676
void PasteFromTransferable(const css::uno::Reference< css::datatransfer::XTransferable > &rxTransferable)
Definition: viewfun3.cxx:619
Definition: global.hxx:299
bool SetTabBgColor(const Color &rColor, SCTAB nTabNr)
Definition: viewfun2.cxx:2604
void DetectiveMarkSucc()
Definition: viewfun6.cxx:231
void EnterAutoSum(const ScRangeList &rRangeList, bool bSubTotal, const ScAddress &rAddr, const OpCode eCode)
Definition: viewfun2.cxx:583
void SetStyleSheetToMarked(const SfxStyleSheet *pStyleSheet)
Definition: viewfunc.cxx:1315
void OnLOKInsertDeleteColumn(SCCOL nStartCol, tools::Long nOffset)
Definition: viewfunc.cxx:1464
SC_DLLPUBLIC void FillSimple(FillDir eDir)
Definition: viewfun2.cxx:1357
SC_DLLPUBLIC void DataFormPutData(SCROW nCurrentRow, SCROW nStartRow, SCCOL nStartCol, SCROW nEndRow, SCCOL nEndCol, std::vector< std::unique_ptr< ScDataFormFragment >> &rEdits, sal_uInt16 aColLength)
Definition: viewfun3.cxx:1954
Definition: qproform.cxx:400
bool PasteMetaFile(const Point &, const GDIMetaFile &)
Definition: viewfun7.cxx:371
void SetWidthOrHeight(bool bWidth, const std::vector< sc::ColRowSpan > &rRanges, ScSizeMode eMode, sal_uInt16 nSizeTwips, bool bRecord=true, const ScMarkData *pMarkData=nullptr)
Definition: viewfunc.cxx:2027
void PasteDraw()
Definition: viewfun3.cxx:465
void DoRefConversion()
Definition: viewfun4.cxx:178
bool DeleteTables(const std::vector< SCTAB > &TheTabs, bool bRecord=true)
void ImportTables(ScDocShell *pSrcShell, SCTAB nCount, const SCTAB *pSrcTabs, bool bLink, SCTAB nTab)
Definition: viewfun2.cxx:2671
void UpdateSelectionArea(const ScMarkData &rSel, ScPatternAttr *pAttr=nullptr)
Definition: viewfunc.cxx:2973
void ApplyUserItemSet(const SfxItemSet &rItemSet)
Definition: viewfunc.cxx:1276
void DoHangulHanjaConversion()
Definition: viewfun4.cxx:432
void SetMarkedWidthOrHeight(bool bWidth, ScSizeMode eMode, sal_uInt16 nSizeTwips)
Definition: viewfunc.cxx:2333
Definition: global.hxx:351
void ApplyAttributes(const SfxItemSet *pDialogSet, const SfxItemSet *pOldSet, bool bAdjustBlockHeight=true)
Definition: viewfunc.cxx:886
bool AdjustRowHeight(SCROW nStartRow, SCROW nEndRow, bool bApi)
Definition: viewfun2.cxx:191
void InsertSpecialChar(const OUString &rStr, const vcl::Font &rFont)
Definition: viewfun2.cxx:3227
bool TestRemoveMerge()
Definition: viewfun2.cxx:1268
void ProtectDoc(const OUString &rPassword)
Definition: viewfunc.cxx:2528
void EditNote()
Definition: viewfun6.cxx:490
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)
Definition: viewfun7.cxx:278
sal_uInt16 GetOptimalColWidth(SCCOL nCol, SCTAB nTab, bool bFormula)
Definition: viewfunc.cxx:236
ScAutoFormatData * CreateAutoFormatData()
Definition: viewfun2.cxx:1861
void FillCrossDblClick()
Downward fill of selected cell(s) by double-clicking cross-hair cursor.
Definition: viewfun2.cxx:1718
void ExtendScenario()
Definition: viewfun2.cxx:2298
ScDataFormFragment(weld::Container *pGrid, int nLine)
Definition: datafdlg.cxx:342
void DoThesaurus()
Definition: viewfun4.cxx:309
void ModifyCellSize(ScDirection eDir, bool bOptimal)
Definition: viewfunc.cxx:2357
void DeleteMulti(bool bRows)
Definition: viewfunc.cxx:1741
Definition: scdllapi.h:28
void GetSelectionFrame(std::shared_ptr< SvxBoxItem > &rLineOuter, std::shared_ptr< SvxBoxInfoItem > &rLineInner)
Definition: viewfunc.cxx:855
::std::vector< ScUndoTabColorInfo > List
Definition: tabbgcolor.hxx:37
void HideTable(const ScMarkData &rMark, SCTAB nTabToSelect=-1)
Definition: viewfun2.cxx:3177
sal_Int16 SCTAB
Definition: types.hxx:23
bool InsertCells(InsCellCmd eCmd, bool bRecord=true, bool bPartOfPaste=false)
Definition: viewfunc.cxx:1600
void EnterData(SCCOL nCol, SCROW nRow, SCTAB nTab, const OUString &rString, const EditTextObject *pData=nullptr)
Definition: viewfunc.cxx:342
void AdjustPrintZoom()
Definition: viewfun2.cxx:1006
void MakeScenario(const OUString &rName, const OUString &rComment, const Color &rColor, ScScenarioFlags nFlags)
Definition: viewfun2.cxx:2277
void TabOp(const ScTabOpParam &rParam, bool bRecord=true)
Definition: viewfun2.cxx:2264