LibreOffice Module sc (master)  1
inputhdl.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 
20 #pragma once
21 
22 #include <global.hxx>
23 #include <address.hxx>
24 #include <tools/solar.h>
25 #include <typedstrdata.hxx>
26 
27 #include <tools/fract.hxx>
28 #include <tools/gen.hxx>
29 #include <tools/link.hxx>
30 #include <vcl/vclptr.hxx>
31 #include <editeng/svxenum.hxx>
32 #include "viewdata.hxx"
33 
34 #include <set>
35 #include <memory>
36 #include <vector>
37 
38 class ScDocument;
39 class ScTabViewShell;
40 class ScInputWindow;
41 class ScPatternAttr;
43 class EditView;
44 class EditTextObject;
45 class ScInputHdlState;
46 class ScRangeFindList;
47 class Timer;
48 class KeyEvent;
49 class CommandEvent;
50 class VclWindowEvent;
51 namespace vcl { class Window; }
52 struct ReferenceMark;
53 struct ESelection;
54 
55 // ScInputHandler
56 
57 class ScInputHandler final
58 {
59 private:
61 
62  std::unique_ptr<ScEditEngineDefaulter> mpEditEngine;
63  EditView* pTableView; // associated active EditView
64  EditView* pTopView; // EditView in the input row
65 
66  std::unique_ptr<ScTypedCaseStrSet> pColumnData;
67  std::unique_ptr<ScTypedCaseStrSet> pFormulaData;
68  std::unique_ptr<ScTypedCaseStrSet> pFormulaDataPara;
69  ScTypedCaseStrSet::const_iterator miAutoPosColumn;
70  ScTypedCaseStrSet::const_iterator miAutoPosFormula;
71 
73  void* nTipVisible;
76  OUString aManualTip;
77  OUString aAutoSearch;
78 
79  OUString aCurrentText;
80 
81  OUString aFormText; // for autopilot function
82  sal_Int32 nFormSelStart; // Selection for autopilot function
83  sal_Int32 nFormSelEnd;
84 
85  sal_Unicode nCellPercentFormatDecSep; // 0:= no percent format, else which decimal separator
86 
87  sal_uInt16 nAutoPar; // autom.parentheses than can be overwritten
88 
91  bool bUseTab:1; // Scrolling possible
92  bool bTextValid:1; // Text is not in edit engine
93  bool bModified:1;
94  bool bSelIsRef:1;
95  bool bFormulaMode:1;
101  bool bInOwnChange:1;
102 
103  bool bProtected:1;
108 
111 
112  Fraction aScaleX; // for ref MapMode
114 
117 
119  std::unique_ptr<SfxItemSet>
121 
122  std::unique_ptr<ScInputHdlState>
124  std::unique_ptr<Timer> pDelayTimer;
125 
126  std::unique_ptr<ScRangeFindList>
128 
129  static bool bAutoComplete; // from app options
130  static bool bOptLoaded;
131  ::std::set< sal_Unicode > maFormulaChar; //fdo 75264
132 
133 private:
134  void UpdateActiveView();
135  void SyncViews( const EditView* pSourceView = nullptr );
146  bool StartTable( sal_Unicode cTyped, bool bFromCommand, bool bInputActivated,
147  ScEditEngineDefaulter* pTopEngine );
148  void RemoveSelection();
149  void UpdateFormulaMode();
150  static void InvalidateAttribs();
151  void ImplCreateEditEngine();
152  DECL_LINK( DelayTimer, Timer*, void );
153  void GetColData();
154  void UseColData();
155  void NextAutoEntry( bool bBack );
156  void UpdateAdjust( sal_Unicode cTyped );
157  void GetFormulaData();
158  void UseFormulaData();
159  void NextFormulaEntry( bool bBack );
160  void PasteFunctionData();
161  void PasteManualTip();
163  void RemoveAdjust();
164  void RemoveRangeFinder();
165  void DeleteRangeFinder();
166  void UpdateParenthesis();
167  void UpdateAutoCorrFlag();
168  void ResetAutoPar();
169  void AutoParAdded();
170  bool CursorAtClosingPar();
171  void SkipClosingPar();
172  bool GetFuncName( OUString& aStart, OUString& aResult ); // fdo75264
173  void ShowArgumentsTip( OUString& rSelText );
174  DECL_LINK( ModifyHdl, LinkParamNone*, void );
175  DECL_LINK( ShowHideTipVisibleParentListener, VclWindowEvent&, void );
176  DECL_LINK( ShowHideTipVisibleSecParentListener, VclWindowEvent&, void );
177 
178 public:
179  ScInputHandler(const ScInputHandler&) = delete;
180  const ScInputHandler& operator=(const ScInputHandler&) = delete;
181 
182  ScInputHandler();
183  ~ScInputHandler();
184 
185  void SetMode( ScInputMode eNewMode, const OUString* pInitText = nullptr,
186  ScEditEngineDefaulter* pTopEngine = nullptr );
187  bool IsInputMode() const { return (eMode != SC_INPUT_NONE); }
188  bool IsEditMode() const { return (eMode != SC_INPUT_NONE &&
189  eMode != SC_INPUT_TYPE); }
190  bool IsTopMode() const { return (eMode == SC_INPUT_TOP); }
191 
192  const OUString& GetEditString();
193  const OUString& GetFormString() const { return aFormText; }
194 
195  const ScAddress& GetCursorPos() const { return aCursorPos; }
196 
197  bool GetTextAndFields( ScEditEngineDefaulter& rDestEngine );
198  void MergeLanguageAttributes( ScEditEngineDefaulter& rDestEngine ) const;
199 
200  bool KeyInput( const KeyEvent& rKEvt, bool bStartEdit );
201  void EnterHandler( ScEnterMode nBlockMode = ScEnterMode::NORMAL );
202  void CancelHandler();
203  void SetReference( const ScRange& rRef, const ScDocument& rDoc );
204  void AddRefEntry();
205 
206  void InputCommand( const CommandEvent& rCEvt );
207 
208  OUString GetSurroundingText();
210  bool DeleteSurroundingText(const Selection& rSelection);
211 
212  void InsertFunction( const OUString& rFuncName, bool bAddPar = true );
213  void ClearText();
214 
215  void InputSelection( const EditView* pView );
216  void InputChanged( const EditView* pView, bool bFromNotify );
217 
218  void ViewShellGone(const ScTabViewShell* pViewSh);
219  void SetRefViewShell(ScTabViewShell* pRefVsh) {pRefViewSh=pRefVsh;}
220 
221  void NotifyChange( const ScInputHdlState* pState, bool bForce = false,
222  ScTabViewShell* pSourceSh = nullptr,
223  bool bStopEditing = true);
224  void UpdateCellAdjust( SvxCellHorJustify eJust );
225 
226  void ResetDelayTimer(); //BugId 54702
227 
228  void HideTip();
229  void HideTipBelow();
230  void ShowTipCursor();
231  void ShowTip( const OUString& rText ); // at Cursor
232  void ShowTipBelow( const OUString& rText );
233  void ShowFuncList( const ::std::vector< OUString > & rFuncStrVec );
234 
235  void SetRefScale( const Fraction& rX, const Fraction& rY );
236  void UpdateRefDevice();
237 
240  EditView* GetTopView() { return pTopView; }
241 
242  bool DataChanging( sal_Unicode cTyped = 0, bool bFromCommand = false );
243  void DataChanged( bool bFromTopNotify = false, bool bSetModified = true );
244 
245  bool TakesReturn() const { return ( nTipVisible != nullptr ); }
246 
247  void SetModified() { bModified = true; }
248 
249  bool GetSelIsRef() const { return bSelIsRef; }
250  void SetSelIsRef(bool bSet) { bSelIsRef = bSet; }
251 
252  void ShowRefFrame();
253 
255 
256  void UpdateRange( sal_uInt16 nIndex, const ScRange& rNew );
257 
258  // Communication with the autopilot function
259  void InputGetSelection ( sal_Int32& rStart, sal_Int32& rEnd );
260  void InputSetSelection ( sal_Int32 nStart, sal_Int32 nEnd );
261  void InputReplaceSelection ( const OUString& rStr );
262  void InputTurnOffWinEngine();
263 
264  bool IsFormulaMode() const { return bFormulaMode; }
266  void SetInputWindow( ScInputWindow* pNew );
267  void StopInputWinEngine( bool bAll );
268 
269  bool IsInEnterHandler() const { return bInEnterHandler; }
270  bool IsInOwnChange() const { return bInOwnChange; }
271 
273  bool HasPartialComplete() const { return mbPartialPrefix; };
274 
275  bool IsModalMode( const SfxObjectShell* pDocSh );
276 
277  void ForgetLastPattern();
278 
279  void UpdateSpellSettings( bool bFromStartTab = false );
280 
281  void FormulaPreview();
282 
283  Size GetTextSize(); // in 1/100mm
284 
285  // actually private, public for SID_INPUT_SUM
286  void InitRangeFinder(const OUString& rFormula);
287 
289  static void SendReferenceMarks( const SfxViewShell* pViewShell,
290  const std::vector<ReferenceMark>& rReferenceMarks );
291 
292  void SetDocumentDisposing( bool b );
293 
294  static void SetAutoComplete(bool bSet) { bAutoComplete = bSet; }
295 
296  static ReferenceMark GetReferenceMark( const ScViewData& rViewData, ScDocShell* pDocSh,
297  tools::Long nX1, tools::Long nX2, tools::Long nY1, tools::Long nY2,
298  tools::Long nTab, const Color& rColor );
299 
300  void LOKPasteFunctionData(const OUString& rFunctionName);
301 };
302 
303 // ScInputHdlState
304 
306 {
307  friend class ScInputHandler;
308 
309 public:
310  ScInputHdlState( const ScAddress& rCurPos,
311  const ScAddress& rStartPos,
312  const ScAddress& rEndPos,
313  const OUString& rString,
314  const EditTextObject* pData );
315  ScInputHdlState( const ScInputHdlState& rCpy );
317 
319  bool operator==( const ScInputHdlState& r ) const;
320 
321  const ScAddress& GetPos() const { return aCursorPos; }
322  const ScAddress& GetStartPos() const { return aStartPos; }
323  const ScAddress& GetEndPos() const { return aEndPos; }
324  const OUString& GetString() const { return aString; }
325  const EditTextObject* GetEditData() const { return pEditData.get(); }
326 
327 private:
331  OUString aString;
332  std::unique_ptr<EditTextObject> pEditData;
333 };
334 
335 /* vim:set shiftwidth=4 softtabstop=4 expandtab: */
EditView * pTableView
Definition: inputhdl.hxx:63
SvxCellHorJustify
sal_uInt16 nAutoPar
Definition: inputhdl.hxx:87
void UpdateRange(sal_uInt16 nIndex, const ScRange &rNew)
Definition: inputhdl.cxx:633
bool CursorAtClosingPar()
Definition: inputhdl.cxx:1928
static void SetAutoComplete(bool bSet)
Definition: inputhdl.hxx:294
void CancelHandler()
Definition: inputhdl.cxx:3350
const EditTextObject * GetEditData() const
Definition: inputhdl.hxx:325
void NextAutoEntry(bool bBack)
Definition: inputhdl.cxx:2069
Selection GetSurroundingTextSelection()
Definition: inputhdl.cxx:3936
ScTypedCaseStrSet::const_iterator miAutoPosColumn
Definition: inputhdl.hxx:69
void ShowTip(const OUString &rText)
Definition: inputhdl.cxx:1285
void UpdateCellAdjust(SvxCellHorJustify eJust)
Definition: inputhdl.cxx:4278
sal_Int32 nFormSelStart
Definition: inputhdl.hxx:82
void SetInputWindow(ScInputWindow *pNew)
Definition: inputhdl.cxx:2277
const OUString & GetEditString()
Definition: inputhdl.cxx:4362
void NextFormulaEntry(bool bBack)
Definition: inputhdl.cxx:1579
void SetModified()
Definition: inputhdl.hxx:247
VclPtr< vcl::Window > pTipVisibleParent
Definition: inputhdl.hxx:72
void PasteManualTip()
Definition: inputhdl.cxx:1859
bool IsFormulaMode() const
Definition: inputhdl.hxx:264
void ShowFuncList(const ::std::vector< OUString > &rFuncStrVec)
Definition: inputhdl.cxx:1392
bool HasPartialComplete() const
Returns true if there is a partial autocomplete suggestion.
Definition: inputhdl.hxx:273
bool DataChanging(sal_Unicode cTyped=0, bool bFromCommand=false)
Definition: inputhdl.cxx:2644
bool IsInputMode() const
Definition: inputhdl.hxx:187
void UpdateParenthesis()
Definition: inputhdl.cxx:2132
const ScAddress & GetPos() const
Definition: inputhdl.hxx:321
sal_uIntPtr sal_uLong
long Long
DECL_LINK(DelayTimer, Timer *, void)
void ClearText()
Definition: inputhdl.cxx:3602
void AutoParAdded()
Definition: inputhdl.cxx:1923
VclPtr< vcl::Window > pTipVisibleSecParent
Definition: inputhdl.hxx:74
sal_Int32 nFormSelEnd
Definition: inputhdl.hxx:83
std::unique_ptr< ScInputHdlState > pLastState
Definition: inputhdl.hxx:123
ScAddress aEndPos
Definition: inputhdl.hxx:330
std::unique_ptr< Timer > pDelayTimer
Definition: inputhdl.hxx:124
void ResetAutoPar()
Definition: inputhdl.cxx:1918
void RemoveSelection()
Definition: inputhdl.cxx:2822
void InputSelection(const EditView *pView)
Definition: inputhdl.cxx:4326
void UpdateActiveView()
Definition: inputhdl.cxx:2228
bool bFormulaMode
Definition: inputhdl.hxx:95
void LOKPasteFunctionData(const OUString &rFunctionName)
Definition: inputhdl.cxx:1725
void SetRefViewShell(ScTabViewShell *pRefVsh)
Definition: inputhdl.hxx:219
void ViewShellGone(const ScTabViewShell *pViewSh)
Definition: inputhdl.cxx:2194
bool bCreatingFuncView
Definition: inputhdl.hxx:98
void SetDocumentDisposing(bool b)
Definition: inputhdl.cxx:606
void ShowRefFrame()
Definition: inputhdl.cxx:2789
EditView * GetTableView()
Definition: inputhdl.hxx:239
OUString aCurrentText
Definition: inputhdl.hxx:79
EditView * GetActiveView()
Definition: inputhdl.cxx:2290
OUString aManualTip
Definition: inputhdl.hxx:76
bool operator==(const ScInputHdlState &r) const
Definition: inputhdl.cxx:4543
ScInputHdlState & operator=(const ScInputHdlState &r)
Definition: inputhdl.cxx:4552
sal_uInt16 sal_Unicode
void SkipClosingPar()
Definition: inputhdl.cxx:1944
OUString aAutoSearch
Definition: inputhdl.hxx:77
bool IsInEnterHandler() const
Definition: inputhdl.hxx:269
void DeleteRangeFinder()
Definition: inputhdl.cxx:685
void InputReplaceSelection(const OUString &rStr)
Definition: inputhdl.cxx:4473
void RemoveRangeFinder()
Definition: inputhdl.cxx:2372
const ScInputHandler & operator=(const ScInputHandler &)=delete
void MergeLanguageAttributes(ScEditEngineDefaulter &rDestEngine) const
Definition: inputhdl.cxx:2563
void ImplCreateEditEngine()
Definition: inputhdl.cxx:914
void AddRefEntry()
Definition: inputhdl.cxx:3417
::std::set< sal_Unicode > maFormulaChar
Definition: inputhdl.hxx:131
void ShowTipCursor()
Definition: inputhdl.cxx:1261
ScInputWindow * GetInputWindow()
Definition: inputhdl.hxx:265
ScAddress aCursorPos
Definition: inputhdl.hxx:89
void SyncViews(const EditView *pSourceView=nullptr)
Definition: inputhdl.cxx:2601
SvxCellHorJustify eAttrAdjust
Definition: inputhdl.hxx:110
void ShowArgumentsTip(OUString &rSelText)
Definition: inputhdl.cxx:1103
OUString aFormText
Definition: inputhdl.hxx:81
void InputSetSelection(sal_Int32 nStart, sal_Int32 nEnd)
Definition: inputhdl.cxx:4453
bool bParenthesisShown
Definition: inputhdl.hxx:97
void UpdateFormulaMode()
Definition: inputhdl.cxx:2741
void UpdateSpellSettings(bool bFromStartTab=false)
Definition: inputhdl.cxx:953
OUString GetSurroundingText()
Definition: inputhdl.cxx:3920
void UpdateLokReferenceMarks()
Definition: inputhdl.cxx:524
std::unique_ptr< EditTextObject > pEditData
Definition: inputhdl.hxx:332
bool IsModalMode(const SfxObjectShell *pDocSh)
Definition: inputhdl.cxx:3409
sal_Unicode nCellPercentFormatDecSep
Definition: inputhdl.hxx:85
void GetFormulaData()
Definition: inputhdl.cxx:1009
const OUString & GetString() const
Definition: inputhdl.hxx:324
EditView * GetFuncEditView()
Definition: inputhdl.cxx:4427
bool IsInOwnChange() const
Definition: inputhdl.hxx:270
static bool bOptLoaded
Definition: inputhdl.hxx:130
Describes reference mark to be drawn, position & size in TWIPs.
Definition: output.hxx:63
void GetColData()
Definition: inputhdl.cxx:1971
void EnterHandler(ScEnterMode nBlockMode=ScEnterMode::NORMAL)
Definition: inputhdl.cxx:2981
ScTypedCaseStrSet::const_iterator miAutoPosFormula
Definition: inputhdl.hxx:70
ScInputMode eMode
Definition: inputhdl.hxx:90
std::unique_ptr< ScTypedCaseStrSet > pColumnData
Definition: inputhdl.hxx:66
std::unique_ptr< ScEditEngineDefaulter > mpEditEngine
Edited data in the sheet (when the user clicks into the sheet, and starts writing there)...
Definition: inputhdl.hxx:62
Fraction aScaleY
Definition: inputhdl.hxx:113
std::unique_ptr< ScTypedCaseStrSet > pFormulaDataPara
Definition: inputhdl.hxx:68
bool mbPartialPrefix
To indicate if there is a partial prefix completion.
Definition: inputhdl.hxx:107
void InsertFunction(const OUString &rFuncName, bool bAddPar=true)
Definition: inputhdl.cxx:3555
const OUString & GetFormString() const
Definition: inputhdl.hxx:193
void UseFormulaData()
Definition: inputhdl.cxx:1510
void InputChanged(const EditView *pView, bool bFromNotify)
Definition: inputhdl.cxx:4336
bool GetTextAndFields(ScEditEngineDefaulter &rDestEngine)
Definition: inputhdl.cxx:4382
VclPtr< ScInputWindow > pInputWin
Definition: inputhdl.hxx:60
Size GetTextSize()
Definition: inputhdl.cxx:4373
const ScAddress & GetStartPos() const
Definition: inputhdl.hxx:322
void SetReference(const ScRange &rRef, const ScDocument &rDoc)
Definition: inputhdl.cxx:3450
void InitRangeFinder(const OUString &rFormula)
Definition: inputhdl.cxx:349
void * nTipVisible
Definition: inputhdl.hxx:73
sal_uLong nValidation
Definition: inputhdl.hxx:109
ScTabViewShell * pRefViewSh
Definition: inputhdl.hxx:115
void UpdateAutoCorrFlag()
Definition: inputhdl.cxx:937
bool DeleteSurroundingText(const Selection &rSelection)
Definition: inputhdl.cxx:3952
ScAddress aStartPos
Definition: inputhdl.hxx:329
bool GetFuncName(OUString &aStart, OUString &aResult)
Definition: inputhdl.cxx:1348
void * nTipVisibleSec
Definition: inputhdl.hxx:75
static ReferenceMark GetReferenceMark(const ScViewData &rViewData, ScDocShell *pDocSh, tools::Long nX1, tools::Long nX2, tools::Long nY1, tools::Long nY2, tools::Long nTab, const Color &rColor)
Definition: inputhdl.cxx:474
ScAddress aCursorPos
Definition: inputhdl.hxx:328
ScInputHdlState(const ScAddress &rCurPos, const ScAddress &rStartPos, const ScAddress &rEndPos, const OUString &rString, const EditTextObject *pData)
ScInputHdlState.
Definition: inputhdl.cxx:4521
bool bInRangeUpdate
Definition: inputhdl.hxx:96
Fraction aScaleX
Definition: inputhdl.hxx:112
bool bInEnterHandler
Definition: inputhdl.hxx:99
void InputGetSelection(sal_Int32 &rStart, sal_Int32 &rEnd)
Methods for FunctionAutoPilot: InputGetSelection, InputSetSelection, InputReplaceSelection, InputGetFormulaStr.
Definition: inputhdl.cxx:4421
const ScAddress & GetCursorPos() const
Definition: inputhdl.hxx:195
std::unique_ptr< ScRangeFindList > pRangeFindList
Definition: inputhdl.hxx:127
bool TakesReturn() const
Definition: inputhdl.hxx:245
bool KeyInput(const KeyEvent &rKEvt, bool bStartEdit)
Definition: inputhdl.cxx:3630
void StopInputWinEngine(bool bAll)
Definition: inputhdl.cxx:2282
void ResetDelayTimer()
Definition: inputhdl.cxx:4284
static void SendReferenceMarks(const SfxViewShell *pViewShell, const std::vector< ReferenceMark > &rReferenceMarks)
Definition: inputhdl.cxx:311
bool IsEditMode() const
Definition: inputhdl.hxx:188
void NotifyChange(const ScInputHdlState *pState, bool bForce=false, ScTabViewShell *pSourceSh=nullptr, bool bStopEditing=true)
Definition: inputhdl.cxx:4076
static bool bAutoComplete
Definition: inputhdl.hxx:129
std::unique_ptr< ScTypedCaseStrSet > pFormulaData
Definition: inputhdl.hxx:67
void DataChanged(bool bFromTopNotify=false, bool bSetModified=true)
Definition: inputhdl.cxx:2656
bool StartTable(sal_Unicode cTyped, bool bFromCommand, bool bInputActivated, ScEditEngineDefaulter *pTopEngine)
Definition: inputhdl.cxx:2387
const ScPatternAttr * pLastPattern
Definition: inputhdl.hxx:118
void HideTipBelow()
Definition: inputhdl.cxx:1081
void UpdateAdjust(sal_Unicode cTyped)
Definition: inputhdl.cxx:2305
void ShowTipBelow(const OUString &rText)
Definition: inputhdl.cxx:1316
EditView * pTopView
Definition: inputhdl.hxx:64
static void InvalidateAttribs()
Definition: inputhdl.cxx:2837
ScEnterMode
Definition: global.hxx:229
void InputTurnOffWinEngine()
Definition: inputhdl.cxx:4504
bool GetSelIsRef() const
Definition: inputhdl.hxx:249
bool bCommandErrorShown
Definition: inputhdl.hxx:100
void UpdateRefDevice()
Definition: inputhdl.cxx:885
void UseColData()
Definition: inputhdl.cxx:1992
void FormulaPreview()
Definition: inputhdl.cxx:1835
void SetMode(ScInputMode eNewMode, const OUString *pInitText=nullptr, ScEditEngineDefaulter *pTopEngine=nullptr)
Definition: inputhdl.cxx:2872
ScRangeFindList * GetRangeFindList()
Definition: inputhdl.hxx:254
void PasteFunctionData()
Definition: inputhdl.cxx:1696
std::unique_ptr< SfxItemSet > pEditDefaults
Definition: inputhdl.hxx:120
void RemoveAdjust()
Definition: inputhdl.cxx:2356
bool IsTopMode() const
Definition: inputhdl.hxx:190
void SetSelIsRef(bool bSet)
Definition: inputhdl.hxx:250
ScInputMode
Definition: global.hxx:369
EditView * GetTopView()
Definition: inputhdl.hxx:240
void InputCommand(const CommandEvent &rCEvt)
Definition: inputhdl.cxx:3968
void ForgetLastPattern()
Definition: inputhdl.cxx:2296
bool mbDocumentDisposing
Definition: inputhdl.hxx:105
ScTabViewShell * pActiveViewSh
Definition: inputhdl.hxx:116
OUString aString
Definition: inputhdl.hxx:331
const ScAddress & GetEndPos() const
Definition: inputhdl.hxx:323
void SetRefScale(const Fraction &rX, const Fraction &rY)
Definition: inputhdl.cxx:871
bool bLastIsSymbol
Definition: inputhdl.hxx:104