LibreOffice Module sc (master)  1
viewfunc.hxx
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 http://mozilla.org/MPL/2.0/.
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 http://www.apache.org/licenses/LICENSE-2.0 .
18  */
19 #pragma once
20 
21 #include "tabview.hxx"
22 
23 #include <tabbgcolor.hxx>
24 
25 #include <com/sun/star/embed/Aspects.hpp>
26 #include <vector>
27 
28 class ScPatternAttr;
29 class ScAutoFormatData;
30 class SvxSearchItem;
31 class SfxItemSet;
32 class SvxBoxItem;
33 class SvxBoxInfoItem;
34 class SfxStyleSheetBase;
35 class SfxStyleSheet;
36 class SfxPoolItem;
37 class EditTextObject;
38 struct ScSolveParam;
39 struct ScTabOpParam;
40 class ScValidationData;
41 class ScConversionParam;
42 class SdrModel;
43 class Graphic;
44 class ScRangeList;
45 class SvxHyperlinkItem;
46 class ScTransferObj;
47 class ScTableProtection;
48 enum class CreateNameFlags;
49 
50 namespace editeng { class SvxBorderLine; }
51 namespace com::sun::star::embed { class XEmbeddedObject; }
52 
53 namespace sc {
54 
55 struct ColRowSpan;
56 
57 }
58 
59 namespace com::sun::star::datatransfer { class XTransferable; }
60 
62 {
63  std::unique_ptr<weld::Builder> m_xBuilder;
64  std::unique_ptr<weld::Label> m_xLabel;
65  std::unique_ptr<weld::Entry> m_xEdit;
66 
67  ScDataFormFragment(weld::Container* pGrid, int nLine);
68 };
69 
70 class ScViewFunc : public ScTabView
71 {
72 private:
73  ScAddress aFormatSource; // for automatic extension of formatting
76 
77 public:
78  ScViewFunc( vcl::Window* pParent, ScDocShell& rDocSh, ScTabViewShell* pViewShell );
79  ~ScViewFunc();
80 
82  void GetSelectionFrame(
83  std::shared_ptr<SvxBoxItem>& rLineOuter,
84  std::shared_ptr<SvxBoxInfoItem>& rLineInner );
85 
87 
88  bool GetAutoSumArea( ScRangeList& rRangeList );
89  void EnterAutoSum( const ScRangeList& rRangeList, bool bSubTotal, const ScAddress& rAddr, const OpCode eCode );
90  bool AutoSum( const ScRange& rRange, bool bSubTotal, bool bSetCursor, bool bContinue, const OpCode eCode );
91  OUString GetAutoSumFormula( const ScRangeList& rRangeList, bool bSubTotal, const ScAddress& rAddr, const OpCode eCode );
92 
93  void EnterData( SCCOL nCol, SCROW nRow, SCTAB nTab, const OUString& rString,
94  const EditTextObject* pData = nullptr );
95  void EnterData( SCCOL nCol, SCROW nRow, SCTAB nTab,
96  const EditTextObject& rData, bool bTestSimple = false );
97  void EnterValue( SCCOL nCol, SCROW nRow, SCTAB nTab, const double& rValue );
98 
99  void EnterMatrix( const OUString& rString, ::formula::FormulaGrammar::Grammar eGram );
100 
105  void EnterBlock( const OUString& rString, const EditTextObject* pData );
106 
107  void EnterDataAtCursor( const OUString& rString );
108 
109  SC_DLLPUBLIC void CutToClip();
110  SC_DLLPUBLIC bool CopyToClip( ScDocument* pClipDoc, bool bCut, bool bApi = false,
111  bool bIncludeObjects = false, bool bStopEdit = true );
112  SC_DLLPUBLIC bool CopyToClip( ScDocument* pClipDoc, const ScRangeList& rRange, bool bCut,
113  bool bApi = false, bool bIncludeObjects = false, bool bStopEdit = true );
114  bool CopyToClipSingleRange( ScDocument* pClipDoc, const ScRangeList& rRanges, bool bCut,
115  bool bIncludeObjects );
116  bool CopyToClipMultiRange( const ScDocument* pClipDoc, const ScRangeList& rRanges, bool bCut,
117  bool bApi, bool bIncludeObjects );
119  SC_DLLPUBLIC bool PasteFromClip( InsertDeleteFlags nFlags, ScDocument* pClipDoc,
120  ScPasteFunc nFunction = ScPasteFunc::NONE, bool bSkipEmpty = false,
121  bool bTranspose = false, bool bAsLink = false,
122  InsCellCmd eMoveMode = INS_NONE,
123  InsertDeleteFlags nUndoExtraFlags = InsertDeleteFlags::NONE,
124  bool bAllowDialogs = false );
125 
126  void FillTab( InsertDeleteFlags nFlags, ScPasteFunc nFunction, bool bSkipEmpty, bool bAsLink );
127 
129  SC_DLLPUBLIC bool PasteFromSystem( SotClipboardFormatId nFormatId, bool bApi = false );
130  void PasteFromTransferable( const css::uno::Reference<
131  css::datatransfer::XTransferable >& rxTransferable );
132 
133  void PasteDraw();
134  void PasteDraw( const Point& rLogicPos, SdrModel* pModel, bool bGroup,
135  std::u16string_view rSrcShellID, std::u16string_view rDestShellID );
136 
138  const css::uno::Reference< css::datatransfer::XTransferable >& rxTransferable,
139  SdrObject& rHitObj);
140 
141  bool PasteDataFormat( SotClipboardFormatId nFormatId,
142  const css::uno::Reference< css::datatransfer::XTransferable >& rxTransferable,
143  SCCOL nPosX, SCROW nPosY, const Point* pLogicPos,
144  bool bLink = false, bool bAllowDialogs = false );
145 
146  bool PasteFile( const Point&, const OUString&, bool bLink );
147  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 );
148  bool PasteBitmapEx( const Point&, const BitmapEx& );
149  bool PasteMetaFile( const Point&, const GDIMetaFile& );
150  bool PasteGraphic( const Point& rPos, const Graphic& rGraphic,
151  const OUString& rFile );
152  bool PasteBookmark( SotClipboardFormatId nFormatId,
153  const css::uno::Reference< css::datatransfer::XTransferable >& rxTransferable,
154  SCCOL nPosX, SCROW nPosY );
155  bool PasteLink( const css::uno::Reference< css::datatransfer::XTransferable >& rxTransferable );
156 
157  void InsertBookmark( const OUString& rDescription, const OUString& rURL,
158  SCCOL nPosX, SCROW nPosY, const OUString* pTarget = nullptr,
159  bool bTryReplace = false );
160  bool HasBookmarkAtCursor( SvxHyperlinkItem* pContent );
161 
162  bool MoveBlockTo( const ScRange& rSource, const ScAddress& rDestPos,
163  bool bCut );
164 
165  bool LinkBlock( const ScRange& rSource, const ScAddress& rDestPos );
166 
167  void CreateNames( CreateNameFlags nFlags );
169  void InsertNameList();
170  bool InsertName( const OUString& rName, const OUString& rSymbol,
171  const OUString& rType );
172 
173  void ApplyAttributes( const SfxItemSet* pDialogSet, const SfxItemSet* pOldSet, bool bAdjustBlockHeight = true );
174  void ApplyAttr( const SfxPoolItem& rAttrItem, bool bAdjustBlockHeight = true );
175 
176  void ApplySelectionPattern( const ScPatternAttr& rAttr,
177  bool bCursorOnly = false);
178  void ApplyPatternLines(const ScPatternAttr& rAttr,
179  const SvxBoxItem& rNewOuter,
180  const SvxBoxInfoItem* pNewInner);
181 
182  void ApplyUserItemSet( const SfxItemSet& rItemSet );
183 
184  const SfxStyleSheet*
186  void SetStyleSheetToMarked( const SfxStyleSheet* pStyleSheet );
187  void RemoveStyleSheetInUse( const SfxStyleSheetBase* pStyleSheet );
188  void UpdateStyleSheetInUse( const SfxStyleSheetBase* pStyleSheet );
189 
190  void SetNumberFormat( SvNumFormatType nFormatType, sal_uLong nAdd = 0 );
191  void SetNumFmtByStr( const OUString& rCode );
192  void ChangeNumFmtDecimals( bool bIncrement );
193 
194  void SetValidation( const ScValidationData& rNew );
195 
196  void ChangeIndent( bool bIncrement );
197 
198  void ProtectSheet( SCTAB nTab, const ScTableProtection& rProtect );
199 
200  void ProtectDoc( const OUString& rPassword );
201  bool Unprotect( SCTAB nTab, const OUString& rPassword );
202 
203  void DeleteCells( DelCellCmd eCmd );
204  bool InsertCells( InsCellCmd eCmd, bool bRecord = true, bool bPartOfPaste = false );
205  void DeleteMulti( bool bRows );
206 
207  void DeleteContents( InsertDeleteFlags nFlags );
208 
209  void SetWidthOrHeight(
210  bool bWidth, const std::vector<sc::ColRowSpan>& rRanges, ScSizeMode eMode,
211  sal_uInt16 nSizeTwips, bool bRecord = true, const ScMarkData* pMarkData = nullptr );
212 
213  void SetMarkedWidthOrHeight( bool bWidth, ScSizeMode eMode, sal_uInt16 nSizeTwips );
214 
215  bool AdjustBlockHeight( bool bPaint = true, ScMarkData* pMarkData = nullptr );
216  bool AdjustRowHeight( SCROW nStartRow, SCROW nEndRow, bool bApi );
217 
218  void ModifyCellSize( ScDirection eDir, bool bOptimal );
219 
220  SC_DLLPUBLIC void
221  InsertPageBreak( bool bColumn, bool bRecord = true,
222  const ScAddress* pPos = nullptr,
223  bool bSetModified = true );
224  SC_DLLPUBLIC void
225  DeletePageBreak( bool bColumn, bool bRecord = true,
226  const ScAddress* pPos = nullptr,
227  bool bSetModified = true );
228 
229  void RemoveManualBreaks();
230 
231  void SetPrintZoom(sal_uInt16 nScale);
232  void AdjustPrintZoom();
233 
234  bool TestMergeCells();
235  bool TestRemoveMerge();
236 
237  bool MergeCells( bool bApi, bool& rDoContents, bool bCenter );
238  bool RemoveMerge();
239 
240  SC_DLLPUBLIC void
241  FillSimple( FillDir eDir );
242  void FillSeries( FillDir eDir, FillCmd eCmd, FillDateCmd eDateCmd,
243  double fStart, double fStep, double fMax );
244  SC_DLLPUBLIC void
245  FillAuto( FillDir eDir, SCCOL nStartCol, SCROW nStartRow,
246  SCCOL nEndCol, SCROW nEndRow, sal_uLong nCount );
247  void FillCrossDblClick();
248  void ConvertFormulaToValue();
249 
251 
253  void AutoFormat( sal_uInt16 nFormatNo );
254 
255  bool SearchAndReplace( const SvxSearchItem* pSearchItem,
256  bool bAddUndo, bool bIsApi );
257 
258  void Solve( const ScSolveParam& rParam );
259  void TabOp( const ScTabOpParam& rParam, bool bRecord = true );
260 
261  bool InsertTable( const OUString& rName, SCTAB nTabNr, bool bRecord = true );
262  void InsertTables(std::vector<OUString>& aNames, SCTAB nTab, SCTAB nCount, bool bRecord = true);
263 
264  bool AppendTable( const OUString& rName, bool bRecord = true );
265 
266  void DeleteTable( SCTAB nTabNr, bool bRecord = true );
267  bool DeleteTables(const std::vector<SCTAB>& TheTabs, bool bRecord = true );
268  void DeleteTables(SCTAB nTab, SCTAB nSheets);
269 
270  bool RenameTable( const OUString& rName, SCTAB nTabNr );
271  void MoveTable( sal_uInt16 nDestDocNo, SCTAB nDestTab, bool bCopy, const OUString* pNewTabName = nullptr );
272  void ImportTables( ScDocShell* pSrcShell,
273  SCTAB nCount, const SCTAB* pSrcTabs,
274  bool bLink,SCTAB nTab);
275 
276  bool SetTabBgColor( const Color& rColor, SCTAB nTabNr );
277  bool SetTabBgColor( ScUndoTabColorInfo::List& rUndoSetTabBgColorInfoList );
278 
279  void InsertTableLink( const OUString& rFile,
280  const OUString& rFilter, const OUString& rOptions,
281  std::u16string_view rTabName );
282  void InsertAreaLink( const OUString& rFile,
283  const OUString& rFilter, const OUString& rOptions,
284  const OUString& rSource );
285 
286  void ShowTable( const std::vector<OUString>& rNames );
287  void HideTable( const ScMarkData& rMark, SCTAB nTabToSelect = -1);
288 
289  void MakeScenario(const OUString& rName, const OUString& rComment,
290  const Color& rColor, ScScenarioFlags nFlags);
291  void ExtendScenario();
292  void UseScenario( const OUString& rName );
293 
294  void InsertSpecialChar( const OUString& rStr, const vcl::Font& rFont );
295 
296  void SetSelectionFrameLines( const ::editeng::SvxBorderLine* pLine,
297  bool bColorOnly );
298 
299  void SetNoteText( const ScAddress& rPos, const OUString& rNoteText );
300  void ReplaceNote( const ScAddress& rPos, const OUString& rNoteText, const OUString* pAuthor, const OUString* pDate );
301  void DoRefConversion();
302 
304  void DoThesaurus();
305 
307  void DoSheetConversion( const ScConversionParam& rParam );
308 
309  void SetPrintRanges( bool bEntireSheet,
310  const OUString* pPrint,
311  const OUString* pRepCol, const OUString* pRepRow,
312  bool bAddPrint );
313 
314  void DetectiveAddPred();
315  void DetectiveDelPred();
316  void DetectiveAddSucc();
317  void DetectiveDelSucc();
318  void DetectiveAddError();
319  void DetectiveMarkInvalid();
320  void DetectiveDelAll();
321  void DetectiveRefresh();
322  void DetectiveMarkPred();
323  void DetectiveMarkSucc();
324 
325  void InsertCurrentTime(SvNumFormatType nCellFmt, const OUString& rUndoStr);
326 
327  void ShowNote( bool bShow );
328  void EditNote();
329 
330  bool SelectionEditable( bool* pOnlyNotBecauseOfMatrix = nullptr );
331 
332  SC_DLLPUBLIC void
333  DataFormPutData(SCROW nCurrentRow ,
334  SCROW nStartRow , SCCOL nStartCol ,
335  SCROW nEndRow , SCCOL nEndCol ,
336  std::vector<std::unique_ptr<ScDataFormFragment>>& rEdits,
337  sal_uInt16 aColLength);
338  void UpdateSelectionArea( const ScMarkData& rSel, ScPatternAttr* pAttr = nullptr );
339 
340  void OnLOKInsertDeleteColumn(SCCOL nStartCol, tools::Long nOffset);
341  void OnLOKInsertDeleteRow(SCROW nStartRow, tools::Long nOffset);
342  void OnLOKSetWidthOrHeight(SCCOLROW nStart, bool bWidth);
343 
344  // Internal helper functions
345 protected:
346  static void UpdateLineAttrs( ::editeng::SvxBorderLine& rLine,
347  const ::editeng::SvxBorderLine* pDestLine,
348  const ::editeng::SvxBorderLine* pSrcLine,
349  bool bColor );
350 
351 private:
352  void PasteRTF( SCCOL nCol, SCROW nStartRow,
353  const css::uno::Reference< css::datatransfer::XTransferable >& rxTransferable );
354 
356  ScPasteFunc nFunction, bool bSkipEmpty, bool bIncludeFiltered,
357  bool bTranspose, bool bAsLink, bool bAllowDialogs,
358  InsCellCmd eMoveMode, InsertDeleteFlags nUndoFlags);
359 
360  bool PasteFromClipToMultiRanges( InsertDeleteFlags nFlags, ScDocument* pClipDoc, ScPasteFunc nFunction,
361  bool bSkipEmpty, bool bTranspose, bool bAsLink, bool bAllowDialogs,
362  InsCellCmd eMoveMode, InsertDeleteFlags nUndoFlags );
363 
364  void PostPasteFromClip(const ScRangeList& rPasteRanges, const ScMarkData& rMark);
365 
366  sal_uInt16 GetOptimalColWidth( SCCOL nCol, SCTAB nTab, bool bFormula );
367 
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 );
372 
373  void MarkAndJumpToRanges(const ScRangeList& rRanges);
374  void CopyAutoSpellData( FillDir eDir, SCCOL nStartCol, SCROW nStartRow,
375  SCCOL nEndCol, SCROW nEndRow, sal_uLong nCount );
376 };
377 
378 extern bool bPasteIsMove;
379 
380 /* vim:set shiftwidth=4 softtabstop=4 expandtab: */
void DetectiveMarkInvalid()
Definition: viewfun6.cxx:112
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:64
CreateNameFlags GetCreateNameFlags()
Definition: viewfunc.cxx:2912
void DeleteContents(InsertDeleteFlags nFlags)
Definition: viewfunc.cxx:1946
bool InsertTable(const OUString &rName, SCTAB nTabNr, bool bRecord=true)
Definition: viewfun2.cxx:2337
void MoveTable(sal_uInt16 nDestDocNo, SCTAB nDestTab, bool bCopy, const OUString *pNewTabName=nullptr)
Definition: viewfun2.cxx:2801
bool AdjustBlockHeight(bool bPaint=true, ScMarkData *pMarkData=nullptr)
Definition: viewfun2.cxx:114
void RemoveManualBreaks()
Definition: viewfun2.cxx:975
void SetSelectionFrameLines(const ::editeng::SvxBorderLine *pLine, bool bColorOnly)
Definition: viewfun2.cxx:3311
todo: It should be possible to have MarkArrays for each table, in order to enable "search all" across...
Definition: markdata.hxx:42
void InsertTableLink(const OUString &rFile, const OUString &rFilter, const OUString &rOptions, std::u16string_view rTabName)
Definition: viewfun2.cxx:2646
SC_DLLPUBLIC bool CopyToClip(ScDocument *pClipDoc, bool bCut, bool bApi=false, bool bIncludeObjects=false, bool bStopEdit=true)
Definition: viewfun3.cxx:167
void CreateNames(CreateNameFlags nFlags)
Definition: viewfunc.cxx:2901
bool PasteBookmark(SotClipboardFormatId nFormatId, const css::uno::Reference< css::datatransfer::XTransferable > &rxTransferable, SCCOL nPosX, SCROW nPosY)
Definition: viewfun4.cxx:682
ScAddress aFormatSource
Definition: viewfunc.hxx:73
bool PasteFromClipToMultiRanges(InsertDeleteFlags nFlags, ScDocument *pClipDoc, ScPasteFunc nFunction, bool bSkipEmpty, bool bTranspose, bool bAsLink, bool bAllowDialogs, InsCellCmd eMoveMode, InsertDeleteFlags nUndoFlags)
Definition: viewfun3.cxx:1626
bool GetAutoSumArea(ScRangeList &rRangeList)
Definition: viewfun2.cxx:478
bool AppendTable(const OUString &rName, bool bRecord=true)
Definition: viewfun2.cxx:2392
FillDir
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:439
void FillTab(InsertDeleteFlags nFlags, ScPasteFunc nFunction, bool bSkipEmpty, bool bAsLink)
Definition: viewfun2.cxx:1638
std::unique_ptr< weld::Entry > m_xEdit
Definition: viewfunc.hxx:65
void DeleteCells(DelCellCmd eCmd)
Definition: viewfunc.cxx:1662
void ApplyAttr(const SfxPoolItem &rAttrItem, bool bAdjustBlockHeight=true)
Definition: viewfunc.cxx:999
sheet protection state container
ScScenarioFlags
Definition: global.hxx:236
void InsertNameList()
Definition: viewfunc.cxx:2974
sal_uIntPtr sal_uLong
long Long
bool PasteGraphic(const Point &rPos, const Graphic &rGraphic, const OUString &rFile)
Definition: viewfun7.cxx:378
void SetValidation(const ScValidationData &rNew)
Definition: viewfun2.cxx:3415
void DeleteTable(SCTAB nTabNr, bool bRecord=true)
Definition: viewfun2.cxx:2423
ScRange aFormatArea
Definition: viewfunc.hxx:74
void EnterBlock(const OUString &rString, const EditTextObject *pData)
Definition: viewfun2.cxx:851
void Solve(const ScSolveParam &rParam)
Definition: viewfun2.cxx:2203
void EnterValue(SCCOL nCol, SCROW nRow, SCTAB nTab, const double &rValue)
Definition: viewfunc.cxx:595
void OnLOKInsertDeleteRow(SCROW nStartRow, tools::Long nOffset)
Definition: viewfunc.cxx:1521
void EnterDataAtCursor(const OUString &rString)
Definition: viewfunc.cxx:751
CreateNameFlags
Definition: scui_def.hxx:50
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:2600
DelCellCmd
Definition: global.hxx:290
void DetectiveMarkPred()
Definition: viewfun6.cxx:168
void InsertTables(std::vector< OUString > &aNames, SCTAB nTab, SCTAB nCount, bool bRecord=true)
Definition: viewfun2.cxx:2350
const SfxStyleSheet * GetStyleSheetFromMarked()
Definition: viewfunc.cxx:1295
bool InsertName(const OUString &rName, const OUString &rSymbol, const OUString &rType)
Definition: viewfunc.cxx:2847
bool TestFormatArea(SCCOL nCol, SCROW nRow, SCTAB nTab, bool bAttrChanged)
Definition: viewfunc.cxx:141
SC_DLLPUBLIC void CutToClip()
Not used?
Definition: viewfun3.cxx:89
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:261
void RemoveStyleSheetInUse(const SfxStyleSheetBase *pStyleSheet)
Definition: viewfunc.cxx:1411
void PostPasteFromClip(const ScRangeList &rPasteRanges, const ScMarkData &rMark)
Definition: viewfun3.cxx:1789
bool CopyToClipSingleRange(ScDocument *pClipDoc, const ScRangeList &rRanges, bool bCut, bool bIncludeObjects)
Definition: viewfun3.cxx:216
bool PasteOnDrawObjectLinked(const css::uno::Reference< css::datatransfer::XTransferable > &rxTransferable, SdrObject &rHitObj)
Definition: viewfun3.cxx:759
sal_Int32 SCCOLROW
a type capable of holding either SCCOL or SCROW
Definition: types.hxx:23
bool Unprotect(SCTAB nTab, const OUString &rPassword)
Definition: viewfunc.cxx:2547
OpCode
std::unique_ptr< weld::Builder > m_xBuilder
Definition: viewfunc.hxx:63
FillDateCmd
Definition: global.hxx:343
void TransliterateText(TransliterationFlags nType)
Definition: viewfun2.cxx:1840
bool HasBookmarkAtCursor(SvxHyperlinkItem *pContent)
Definition: viewfun4.cxx:754
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:91
SotClipboardFormatId
ScViewFunc(vcl::Window *pParent, ScDocShell &rDocSh, ScTabViewShell *pViewShell)
Definition: viewfunc.cxx:93
OUString GetAutoSumFormula(const ScRangeList &rRangeList, bool bSubTotal, const ScAddress &rAddr, const OpCode eCode)
Definition: viewfun2.cxx:810
SC_DLLPUBLIC void PasteFromSystem()
Definition: viewfun3.cxx:483
SvtScriptType GetSelectionScriptType()
Definition: viewfunc.cxx:804
TransliterationFlags
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:75
bool PasteFile(const Point &, const OUString &, bool bLink)
Definition: viewfun4.cxx:579
void SetNoteText(const ScAddress &rPos, const OUString &rNoteText)
Definition: viewfunc.cxx:2591
ScPasteFunc
Definition: global.hxx:189
static void UpdateLineAttrs(::editeng::SvxBorderLine &rLine, const ::editeng::SvxBorderLine *pDestLine, const ::editeng::SvxBorderLine *pSrcLine, bool bColor)
Definition: viewfun2.cxx:3276
void DetectiveAddPred()
Definition: viewfun6.cxx:70
void UseScenario(const OUString &rName)
Definition: viewfun2.cxx:2325
void ShowTable(const std::vector< OUString > &rNames)
Definition: viewfun2.cxx:3157
Parameter for data table aka multiple operations.
Definition: paramisc.hxx:45
SvtScriptType
FillCmd
Definition: global.hxx:326
void OnLOKSetWidthOrHeight(SCCOLROW nStart, bool bWidth)
Definition: viewfunc.cxx:1578
bool LinkBlock(const ScRange &rSource, const ScAddress &rDestPos)
Definition: viewfun3.cxx:1905
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:21
InsertDeleteFlags
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:695
void UpdateStyleSheetInUse(const SfxStyleSheetBase *pStyleSheet)
Definition: viewfunc.cxx:1437
bool PasteBitmapEx(const Point &, const BitmapEx &)
Definition: viewfun7.cxx:366
void DetectiveAddSucc()
Definition: viewfun6.cxx:84
Parameters for conversion.
Definition: spellparam.hxx:32
bool TestMergeCells()
Definition: viewfun2.cxx:1123
void SetNumFmtByStr(const OUString &rCode)
Definition: viewfunc.cxx:2637
void MarkAndJumpToRanges(const ScRangeList &rRanges)
Definition: viewfun6.cxx:136
void ChangeIndent(bool bIncrement)
Definition: viewfunc.cxx:2817
bool bPasteIsMove
Definition: viewfun7.cxx:51
SvNumFormatType
void DetectiveAddError()
Definition: viewfun6.cxx:98
void ReplaceNote(const ScAddress &rPos, const OUString &rNoteText, const OUString *pAuthor, const OUString *pDate)
Definition: viewfunc.cxx:2596
void ApplySelectionPattern(const ScPatternAttr &rAttr, bool bCursorOnly=false)
Definition: viewfunc.cxx:1109
bool MoveBlockTo(const ScRange &rSource, const ScAddress &rDestPos, bool bCut)
Definition: viewfun3.cxx:1820
void SetNumberFormat(SvNumFormatType nFormatType, sal_uLong nAdd=0)
Definition: viewfunc.cxx:2601
void StartFormatArea()
Definition: viewfunc.cxx:119
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:862
ScSizeMode
Definition: global.hxx:360
void DetectiveDelPred()
Definition: viewfun6.cxx:77
SC_DLLPUBLIC const ScPatternAttr * GetSelectionPattern()
Definition: viewfunc.cxx:830
bool CopyToClipMultiRange(const ScDocument *pClipDoc, const ScRangeList &rRanges, bool bCut, bool bApi, bool bIncludeObjects)
Definition: viewfun3.cxx:306
void InsertCurrentTime(SvNumFormatType nCellFmt, const OUString &rUndoStr)
Insert date or time into current cell.
Definition: viewfun6.cxx:272
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:2633
rtl::Reference< ScTransferObj > CopyToTransferable()
Definition: viewfun3.cxx:430
void DetectiveDelAll()
Definition: viewfun6.cxx:105
void SetPrintZoom(sal_uInt16 nScale)
Definition: viewfun2.cxx:999
void EnterMatrix(const OUString &rString,::formula::FormulaGrammar::Grammar eGram)
Definition: viewfunc.cxx:760
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:77
sal_Int32 SCROW
Definition: types.hxx:17
void ApplyPatternLines(const ScPatternAttr &rAttr, const SvxBoxItem &rNewOuter, const SvxBoxInfoItem *pNewInner)
Definition: viewfunc.cxx:1027
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:206
void ShowNote(bool bShow)
Definition: viewfun6.cxx:481
void ProtectSheet(SCTAB nTab, const ScTableProtection &rProtect)
Definition: viewfunc.cxx:2507
bool AutoSum(const ScRange &rRange, bool bSubTotal, bool bSetCursor, bool bContinue, const OpCode eCode)
Definition: viewfun2.cxx:590
void DetectiveRefresh()
Definition: viewfun6.cxx:119
void ChangeNumFmtDecimals(bool bIncrement)
Definition: viewfunc.cxx:2685
void PasteFromTransferable(const css::uno::Reference< css::datatransfer::XTransferable > &rxTransferable)
Definition: viewfun3.cxx:620
InsCellCmd
Definition: global.hxx:299
bool SetTabBgColor(const Color &rColor, SCTAB nTabNr)
Definition: viewfun2.cxx:2613
void DetectiveMarkSucc()
Definition: viewfun6.cxx:232
void EnterAutoSum(const ScRangeList &rRangeList, bool bSubTotal, const ScAddress &rAddr, const OpCode eCode)
Definition: viewfun2.cxx:584
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:1943
QPRO_FUNC_TYPE nType
Definition: qproform.cxx:398
bool PasteMetaFile(const Point &, const GDIMetaFile &)
Definition: viewfun7.cxx:372
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:2036
void PasteDraw()
Definition: viewfun3.cxx:466
void DoRefConversion()
Definition: viewfun4.cxx:179
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:2680
void UpdateSelectionArea(const ScMarkData &rSel, ScPatternAttr *pAttr=nullptr)
Definition: viewfunc.cxx:2982
bool PasteMultiRangesFromClip(InsertDeleteFlags nFlags, ScDocument *pClipDoc, ScPasteFunc nFunction, bool bSkipEmpty, bool bIncludeFiltered, bool bTranspose, bool bAsLink, bool bAllowDialogs, InsCellCmd eMoveMode, InsertDeleteFlags nUndoFlags)
Definition: viewfun3.cxx:1457
void ApplyUserItemSet(const SfxItemSet &rItemSet)
Definition: viewfunc.cxx:1276
void DoHangulHanjaConversion()
Definition: viewfun4.cxx:433
void SetMarkedWidthOrHeight(bool bWidth, ScSizeMode eMode, sal_uInt16 nSizeTwips)
Definition: viewfunc.cxx:2342
ScDirection
Definition: global.hxx:352
void ApplyAttributes(const SfxItemSet *pDialogSet, const SfxItemSet *pOldSet, bool bAdjustBlockHeight=true)
Definition: viewfunc.cxx:887
bool AdjustRowHeight(SCROW nStartRow, SCROW nEndRow, bool bApi)
Definition: viewfun2.cxx:192
void InsertSpecialChar(const OUString &rStr, const vcl::Font &rFont)
Definition: viewfun2.cxx:3242
bool TestRemoveMerge()
Definition: viewfun2.cxx:1268
void ProtectDoc(const OUString &rPassword)
Definition: viewfunc.cxx:2537
void EditNote()
Definition: viewfun6.cxx:491
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:279
sal_uInt16 GetOptimalColWidth(SCCOL nCol, SCTAB nTab, bool bFormula)
Definition: viewfunc.cxx:237
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:2307
ScDataFormFragment(weld::Container *pGrid, int nLine)
Definition: datafdlg.cxx:343
void DoThesaurus()
Definition: viewfun4.cxx:311
void ModifyCellSize(ScDirection eDir, bool bOptimal)
Definition: viewfunc.cxx:2366
void DeleteMulti(bool bRows)
Definition: viewfunc.cxx:1750
#define SC_DLLPUBLIC
Definition: scdllapi.h:27
void GetSelectionFrame(std::shared_ptr< SvxBoxItem > &rLineOuter, std::shared_ptr< SvxBoxInfoItem > &rLineInner)
Definition: viewfunc.cxx:856
::std::vector< ScUndoTabColorInfo > List
Definition: tabbgcolor.hxx:36
void HideTable(const ScMarkData &rMark, SCTAB nTabToSelect=-1)
Definition: viewfun2.cxx:3192
sal_Int16 SCTAB
Definition: types.hxx:22
bool InsertCells(InsCellCmd eCmd, bool bRecord=true, bool bPartOfPaste=false)
Definition: viewfunc.cxx:1608
void EnterData(SCCOL nCol, SCROW nRow, SCTAB nTab, const OUString &rString, const EditTextObject *pData=nullptr)
Definition: viewfunc.cxx:343
void AdjustPrintZoom()
Definition: viewfun2.cxx:1006
void MakeScenario(const OUString &rName, const OUString &rComment, const Color &rColor, ScScenarioFlags nFlags)
Definition: viewfun2.cxx:2286
void TabOp(const ScTabOpParam &rParam, bool bRecord=true)
Definition: viewfun2.cxx:2273