LibreOffice Module sc (master)  1
inputwin.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 <vector>
23 #include <memory>
24 #include <vcl/customweld.hxx>
25 #include <vcl/toolbox.hxx>
27 #include <sfx2/childwin.hxx>
28 #include <svl/lstner.hxx>
30 #include <vcl/window.hxx>
31 #include <formula/opcode.hxx>
32 #include <svx/weldeditview.hxx>
33 
34 namespace com::sun::star::accessibility { class XAccessible; }
35 
36 class EditView;
40 class ScTextWndGroup;
41 class ScInputBarGroup;
42 class ScInputHandler;
43 class ScTabViewShell;
44 struct EENotify;
45 
47 {
48 public:
49  virtual void InsertAccessibleTextData( ScAccessibleEditLineTextData& rTextData ) = 0;
50  virtual void RemoveAccessibleTextData( ScAccessibleEditLineTextData& rTextData ) = 0;
51  virtual void SetTextString( const OUString& rString ) = 0;
52  virtual const OUString& GetTextString() const = 0;
53  virtual void StartEditEngine() = 0;
54  virtual void StopEditEngine( bool bAll ) = 0;
55  virtual EditView* GetEditView() const = 0;
56  virtual bool HasEditView() const = 0;
57  virtual void MakeDialogEditView() = 0;
58  virtual void SetFormulaMode( bool bSet ) = 0;
59  virtual bool IsInputActive() = 0;
60  virtual void TextGrabFocus() = 0;
61  virtual tools::Long GetNumLines() const = 0;
62  virtual ~ScTextWndBase() {}
63 };
64 
65 class ScTextWnd : public WeldEditView
66  , public ScTextWndBase
67 {
68 public:
69  ScTextWnd(ScTextWndGroup& rParent, ScTabViewShell* pViewSh);
70  virtual void SetDrawingArea(weld::DrawingArea* pDrawingArea) override;
71  virtual ~ScTextWnd() override;
72 
73  virtual void SetTextString( const OUString& rString ) override;
74  virtual const OUString& GetTextString() const override;
75 
76  bool IsInputActive() override;
77  virtual EditView* GetEditView() const override;
78  virtual bool HasEditView() const override;
79 
80  const OutputDevice& GetEditViewDevice() const;
81 
82  // for function autopilots
83  virtual void MakeDialogEditView() override;
84 
85  virtual void StartEditEngine() override;
86  virtual void StopEditEngine( bool bAll ) override;
87 
88  virtual void TextGrabFocus() override;
89 
90  virtual void StyleUpdated() override;
91 
92  // Triggered if scroll bar state should change
93  virtual void EditViewScrollStateChange() override;
94 
95  virtual void SetFormulaMode( bool bSet ) override;
96 
97  virtual css::uno::Reference< css::accessibility::XAccessible > CreateAccessible() override;
98 
99  virtual void InsertAccessibleTextData( ScAccessibleEditLineTextData& rTextData ) override;
100  virtual void RemoveAccessibleTextData( ScAccessibleEditLineTextData& rTextData ) override;
101 
102  virtual void Resize() override;
103 
105  int GetEditEngTxtHeight() const;
106 
107  virtual tools::Long GetNumLines() const override;
108  void SetNumLines(tools::Long nLines);
110  void SetLastNumExpandedLines(tools::Long nLastExpandedLines) { mnLastExpandedLines = nLastExpandedLines; }
111 
112  void DoScroll();
113 
114  DECL_LINK(ModifyHdl, LinkParamNone*, void);
115  DECL_LINK(EditStatusHdl, EditStatus&, void);
116 
117 protected:
118  virtual void Paint( vcl::RenderContext& rRenderContext, const tools::Rectangle& rRect ) override;
119 
120  virtual bool MouseMove( const MouseEvent& rMEvt ) override;
121  virtual bool MouseButtonDown( const MouseEvent& rMEvt ) override;
122  virtual bool MouseButtonUp( const MouseEvent& rMEvt ) override;
123  virtual bool Command( const CommandEvent& rCEvt ) override;
124  virtual bool KeyInput(const KeyEvent& rKEvt) override;
125  virtual bool CanFocus() const override;
126  virtual void GetFocus() override;
127 
128  virtual bool StartDrag() override;
129 
130 private:
131  void ImplInitSettings();
132  void UpdateAutoCorrFlag();
133 
134  void SetScrollBarRange();
135 
136  void InitEditEngine();
137 
139 
140  typedef ::std::vector< ScAccessibleEditLineTextData* > AccTextDataVector;
141 
143 
144  OUString aString;
146  AccTextDataVector maAccTextDatas; // #i105267# text data may be cloned, remember all copies
147  bool bIsRTL;
150 
151  // #102710#; this flag should be true if a key input or a command is handled
152  // it prevents the call of InputChanged in the ModifyHandler of the EditEngine
154 
159 };
160 
161 class ScPosWnd final : public InterimItemWindow, public SfxListener // Display position
162 {
163 private:
164  std::unique_ptr<weld::ComboBox> m_xWidget;
165 
167 
168  OUString aPosStr;
169  void* nTipVisible;
171 
172 public:
173  ScPosWnd( vcl::Window* pParent );
174  virtual ~ScPosWnd() override;
175  virtual void dispose() override;
176 
177  void SetPos( const OUString& rPosStr ); // Displayed Text
178  void SetFormulaMode( bool bSet );
179 
180  static OUString createLocalRangeName(std::u16string_view rName, std::u16string_view rTableName);
181 
182 private:
183  DECL_LINK(OnAsyncGetFocus, void*, void);
184  DECL_LINK(KeyInputHdl, const KeyEvent&, bool);
185  DECL_LINK(ActivateHdl, weld::ComboBox&, bool);
186  DECL_LINK(ModifyHdl, weld::ComboBox&, void);
187  DECL_LINK(FocusInHdl, weld::Widget&, void);
188  DECL_LINK(FocusOutHdl, weld::Widget&, void);
189 
190  virtual void Notify( SfxBroadcaster& rBC, const SfxHint& rHint ) override;
191 
192 private:
193  void FillRangeNames();
194  void FillFunctions();
195  void DoEnter();
196  void HideTip();
197 
198  void ReleaseFocus_Impl();
199 };
200 
202 {
203 public:
204  ScTextWndGroup(ScInputBarGroup& pParent, ScTabViewShell* pViewSh);
205  virtual ~ScTextWndGroup() override;
206 
207  virtual void InsertAccessibleTextData(ScAccessibleEditLineTextData& rTextData) override;
208  virtual EditView* GetEditView() const override;
209  const OutputDevice& GetEditViewDevice() const;
210  Point GetCursorScreenPixelPos(bool bBelowLine);
212  void SetLastNumExpandedLines(tools::Long nLastExpandedLines);
213  virtual tools::Long GetNumLines() const override;
216  virtual const OUString& GetTextString() const override;
217  virtual bool HasEditView() const override;
218  virtual bool IsInputActive() override;
219  virtual void MakeDialogEditView() override;
220  virtual void RemoveAccessibleTextData(ScAccessibleEditLineTextData& rTextData) override;
221  void SetScrollPolicy();
222  void SetNumLines(tools::Long nLines);
223  virtual void SetFormulaMode(bool bSet) override;
224  virtual void SetTextString(const OUString& rString) override;
225  virtual void StartEditEngine() override;
226  virtual void StopEditEngine(bool bAll) override;
227  virtual void TextGrabFocus() override;
228 
230 
231 private:
232  std::unique_ptr<ScTextWnd> mxTextWnd;
233  std::unique_ptr<weld::ScrolledWindow> mxScrollWin;
234  std::unique_ptr<weld::CustomWeld> mxTextWndWin;
236 
237  DECL_LINK(Impl_ScrollHdl, weld::ScrolledWindow&, void);
238 };
239 
241  , public ScTextWndBase
242 {
243 public:
245  virtual ~ScInputBarGroup() override;
246  virtual void dispose() override;
247  virtual void InsertAccessibleTextData(ScAccessibleEditLineTextData& rTextData) override;
248  virtual void RemoveAccessibleTextData(ScAccessibleEditLineTextData& rTextData) override;
249  void SetTextString(const OUString& rString) override;
250  void StartEditEngine() override;
251  virtual EditView* GetEditView() const override;
252  virtual bool HasEditView() const override;
253  Point GetCursorScreenPixelPos(bool bBelowLine);
254  virtual void Resize() override;
255  virtual const OUString& GetTextString() const override;
256  virtual void StopEditEngine(bool bAll) override;
257  virtual void TextGrabFocus() override;
258  void SetFormulaMode(bool bSet) override;
259  void MakeDialogEditView() override;
260  bool IsInputActive() override;
261  void IncrementVerticalSize();
262  void DecrementVerticalSize();
263  void NumLinesChanged();
264  virtual tools::Long GetNumLines() const override { return mxTextWndGroup->GetNumLines(); }
266 
268  {
269  return mxTextWndGroup->GetPixelHeightForLines(GetNumLines());
270  }
271 
273 
274 private:
275  void TriggerToolboxLayout();
276 
277  std::unique_ptr<weld::Container> mxBackground;
278  std::unique_ptr<ScTextWndGroup> mxTextWndGroup;
279  std::unique_ptr<weld::Button> mxButtonUp;
280  std::unique_ptr<weld::Button> mxButtonDown;
282 
283  DECL_LINK(ClickHdl, weld::Button&, void);
284 };
285 
286 class ScInputWindow final : public ToolBox // Parent toolbox
287 {
288 public:
289  ScInputWindow( vcl::Window* pParent, const SfxBindings* pBind );
290  virtual ~ScInputWindow() override;
291  virtual void dispose() override;
292 
293  virtual void PixelInvalidate(const tools::Rectangle* pRectangle) override;
294  virtual void SetSizePixel( const Size& rNewSize ) override;
295  virtual void Resize() override;
296  virtual void Select() override;
297 
298  void SetFuncString( const OUString& rString, bool bDoEdit = true );
299  void SetPosString( const OUString& rStr );
300  void SetTextString( const OUString& rString );
301 
302  void SetOkCancelMode();
303  void SetSumAssignMode();
304  void EnableButtons( bool bEnable );
306  void NumLinesChanged();
307 
308  void StartFormula();
309  void SetFormulaMode( bool bSet );
310 
311  bool IsInputActive();
314  Point GetCursorScreenPixelPos(bool bBelowLine = false);
315 
316  void TextGrabFocus();
317  void TextInvalidate();
318  void SwitchToTextWin();
319 
320  void PosGrabFocus();
321 
322  // For function autopilots
323  void MakeDialogEditView();
324 
325  void StopEditEngine( bool bAll );
326 
327  void SetInputHandler( ScInputHandler* pNew );
328 
330 
331  void StateChanged( StateChangedType nType ) override;
332  virtual void DataChanged( const DataChangedEvent& rDCEvt ) override;
333  virtual void MouseButtonUp( const MouseEvent& rMEvt ) override;
334  virtual void MouseButtonDown( const MouseEvent& rMEvt ) override;
335  virtual void MouseMove( const MouseEvent& rMEvt ) override;
336 
337  void NotifyLOKClient();
338 
339  void MenuHdl(std::string_view command);
340  DECL_LINK( DropdownClickHdl, ToolBox*, void );
341 
342  void AutoSum( bool& bRangeFinder, bool& bSubTotal, OpCode eCode );
343 
344 private:
345  bool IsPointerAtResizePos();
346 
353  bool bInResize;
354 };
355 
357 {
358 public:
360  sal_uInt16 nId,
361  SfxBindings* pBindings,
362  SfxChildWinInfo* pInfo );
363 
365 };
366 
367 /* vim:set shiftwidth=4 softtabstop=4 expandtab: */
int GetPixelHeightForLines() const
Definition: inputwin.hxx:267
tools::Long mnVertOffset
Definition: inputwin.hxx:281
void StateChanged(StateChangedType nType) override
Definition: inputwin.cxx:685
tools::Long mnLastExpandedLines
Definition: inputwin.hxx:157
virtual void TextGrabFocus()=0
vcl::Window & GetVclParent()
Definition: inputwin.hxx:229
DECL_LINK(Impl_ScrollHdl, weld::ScrolledWindow &, void)
void ReleaseFocus_Impl()
Definition: inputwin.cxx:2662
bool bFormulaMode
Definition: inputwin.hxx:170
virtual void StopEditEngine(bool bAll)=0
std::unique_ptr< weld::Container > mxBackground
Definition: inputwin.hxx:277
virtual void TextGrabFocus() override
Definition: inputwin.cxx:1118
virtual const OUString & GetTextString() const override
Definition: inputwin.cxx:1203
void SetNumLines(tools::Long nLines)
Definition: inputwin.cxx:1330
virtual void SetTextString(const OUString &rString) override
Definition: inputwin.cxx:1939
virtual void SetFormulaMode(bool bSet) override
Definition: inputwin.cxx:1241
void FillRangeNames()
Definition: inputwin.cxx:2264
ScTextWndGroup & mrGroupBar
Definition: inputwin.hxx:156
Point GetCursorScreenPixelPos(bool bBelowLine=false)
Definition: inputwin.cxx:618
virtual ~ScInputWindow() override
Definition: inputwin.cxx:281
virtual tools::Long GetNumLines() const override
Definition: inputwin.cxx:1188
VclPtr< ScInputBarGroup > mxTextWindow
Definition: inputwin.hxx:348
virtual void StyleUpdated() override
Definition: inputwin.cxx:2173
void StopEditEngine(bool bAll)
Definition: inputwin.cxx:628
tools::Long mnMaxY
Definition: inputwin.hxx:351
DECL_LINK(OnAsyncGetFocus, void *, void)
virtual bool HasEditView() const override
Definition: inputwin.cxx:939
virtual void MouseButtonUp(const MouseEvent &rMEvt) override
Definition: inputwin.cxx:786
virtual void TextGrabFocus() override
Definition: inputwin.cxx:1261
virtual void dispose() override
Definition: inputwin.cxx:2218
long Long
virtual bool MouseMove(const MouseEvent &rMEvt) override
Definition: inputwin.cxx:1610
void * nTipVisible
Definition: inputwin.hxx:169
virtual void dispose() override
Definition: inputwin.cxx:883
std::unique_ptr< weld::ComboBox > m_xWidget
Definition: inputwin.hxx:164
virtual void StopEditEngine(bool bAll) override
Definition: inputwin.cxx:919
virtual void MakeDialogEditView() override
Definition: inputwin.cxx:1218
const OutputDevice & GetEditViewDevice() const
Definition: inputwin.cxx:1173
ScPosWnd(vcl::Window *pParent)
Definition: inputwin.cxx:2185
virtual void StartEditEngine() override
Definition: inputwin.cxx:1414
sal_Int16 nId
ScTextWndGroup(ScInputBarGroup &pParent, ScTabViewShell *pViewSh)
Definition: inputwin.cxx:1126
DECL_LINK(DropdownClickHdl, ToolBox *, void)
virtual tools::Long GetNumLines() const =0
void NumLinesChanged()
Update Input bar after the number of lines was changed externally.
Definition: inputwin.cxx:680
void MenuHdl(std::string_view command)
Definition: inputwin.cxx:969
virtual tools::Long GetNumLines() const override
Definition: inputwin.cxx:1324
bool bFormulaMode
Definition: inputwin.hxx:149
virtual void EditViewScrollStateChange() override
Definition: inputwin.cxx:1850
virtual const OUString & GetTextString() const override
Definition: inputwin.cxx:2025
virtual void StartEditEngine()=0
virtual void SetTextString(const OUString &rString) override
Definition: inputwin.cxx:1246
void SetSumAssignMode()
Definition: inputwin.cxx:572
virtual const OUString & GetTextString() const =0
void SetPosString(const OUString &rStr)
Definition: inputwin.cxx:536
void SetFormulaMode(bool bSet) override
Definition: inputwin.cxx:949
void SetNumLines(tools::Long nLines)
Definition: inputwin.cxx:1236
void MakeDialogEditView()
Definition: inputwin.cxx:623
StateChangedType
weld::Builder & GetBuilder()
Definition: inputwin.hxx:272
EditView * GetEditView()
Definition: inputwin.cxx:608
virtual bool StartDrag() override
Definition: inputwin.cxx:1791
void DoEnter()
Definition: inputwin.cxx:2496
OpCode
void SetScrollBarRange()
Definition: inputwin.cxx:1372
bool bIsRTL
Definition: inputwin.hxx:147
virtual void InsertAccessibleTextData(ScAccessibleEditLineTextData &rTextData) override
Definition: inputwin.cxx:2157
ScTextWnd(ScTextWndGroup &rParent, ScTabViewShell *pViewSh)
Definition: inputwin.cxx:1591
rtl::Reference< ScAccessibleEditObject > pAcc
Definition: inputwin.hxx:142
virtual bool KeyInput(const KeyEvent &rKEvt) override
Definition: inputwin.cxx:1802
virtual void InsertAccessibleTextData(ScAccessibleEditLineTextData &rTextData) override
Definition: inputwin.cxx:1163
virtual void MouseButtonDown(const MouseEvent &rMEvt) override
Definition: inputwin.cxx:762
Point GetCursorScreenPixelPos(bool bBelowLine)
Definition: inputwin.cxx:873
void MakeDialogEditView() override
Definition: inputwin.cxx:929
void SetLastNumExpandedLines(tools::Long nLastExpandedLines)
Definition: inputwin.cxx:1183
bool IsInputActive()
Definition: inputwin.cxx:603
void SetFormulaMode(bool bSet)
Definition: inputwin.cxx:596
int GetPixelHeightForLines(tools::Long nLines)
Definition: inputwin.cxx:1193
bool IsPointerAtResizePos()
Definition: inputwin.cxx:713
virtual ~ScTextWnd() override
Definition: inputwin.cxx:1603
virtual bool IsInputActive() override
Definition: inputwin.cxx:1213
tools::Long GetLastNumExpandedLines() const
Definition: inputwin.hxx:109
OUString aString
Definition: inputwin.hxx:144
virtual ~ScTextWndGroup() override
Definition: inputwin.cxx:1159
std::unique_ptr< ScTextWndGroup > mxTextWndGroup
Definition: inputwin.hxx:278
ScTabViewShell * mpViewShell
Definition: inputwin.hxx:350
virtual void RemoveAccessibleTextData(ScAccessibleEditLineTextData &rTextData)=0
bool bInputMode
Definition: inputwin.hxx:153
void UpdateAutoCorrFlag()
Definition: inputwin.cxx:1834
virtual ~ScPosWnd() override
Definition: inputwin.cxx:2213
OUString aPosStr
Definition: inputwin.hxx:168
virtual EditView * GetEditView() const =0
virtual bool HasEditView() const override
Definition: inputwin.cxx:1310
virtual EditView * GetEditView() const override
Definition: inputwin.cxx:1303
std::unique_ptr< weld::CustomWeld > mxTextWndWin
Definition: inputwin.hxx:234
Point GetCursorScreenPixelPos(bool bBelowLine)
Definition: inputwin.cxx:1137
void SwitchToTextWin()
Definition: inputwin.cxx:643
void SetScrollPolicy()
Definition: inputwin.cxx:1228
virtual bool Command(const CommandEvent &rCEvt) override
Definition: inputwin.cxx:1665
virtual void MakeDialogEditView() override
Definition: inputwin.cxx:2035
void AutoSum(bool &bRangeFinder, bool &bSubTotal, OpCode eCode)
Definition: inputwin.cxx:798
virtual void MakeDialogEditView()=0
virtual EditView * GetEditView() const override
Definition: inputwin.cxx:1168
void SetInputHandler(ScInputHandler *pNew)
Definition: inputwin.cxx:321
virtual void StartEditEngine() override
Definition: inputwin.cxx:1251
ScInputHandler * pInputHdl
Definition: inputwin.hxx:349
virtual bool HasEditView() const =0
virtual void InsertAccessibleTextData(ScAccessibleEditLineTextData &rTextData) override
Definition: inputwin.cxx:892
virtual bool CanFocus() const override
Definition: inputwin.cxx:1615
std::unique_ptr< weld::ScrolledWindow > mxScrollWin
Definition: inputwin.hxx:233
ScInputHandler * GetInputHandler()
Definition: inputwin.hxx:329
::std::vector< ScAccessibleEditLineTextData * > AccTextDataVector
Definition: inputwin.hxx:140
virtual bool MouseButtonUp(const MouseEvent &rMEvt) override
Definition: inputwin.cxx:1648
int GetPixelHeightForLines(tools::Long nLines)
Definition: inputwin.cxx:1317
bool bIsOkCancelMode
Definition: inputwin.hxx:352
virtual const OUString & GetTextString() const override
Definition: inputwin.cxx:902
std::unique_ptr< ScTextWnd > mxTextWnd
Definition: inputwin.hxx:232
virtual void InsertAccessibleTextData(ScAccessibleEditLineTextData &rTextData)=0
virtual void RemoveAccessibleTextData(ScAccessibleEditLineTextData &rTextData) override
Definition: inputwin.cxx:897
rtl::Reference< svt::OStringTransferable > m_xHelper
Definition: inputwin.hxx:138
virtual void MouseMove(const MouseEvent &rMEvt) override
Definition: inputwin.cxx:718
virtual ~ScInputBarGroup() override
Definition: inputwin.cxx:878
VclPtr< vcl::Window > pParent
void StartFormula()
Definition: inputwin.cxx:371
ScInputWindow(vcl::Window *pParent, const SfxBindings *pBind)
Definition: inputwin.cxx:160
void InitEditEngine()
Definition: inputwin.cxx:1494
virtual css::uno::Reference< css::accessibility::XAccessible > CreateAccessible() override
Definition: inputwin.cxx:2151
void SetTextString(const OUString &rString)
Definition: inputwin.cxx:542
virtual void Paint(vcl::RenderContext &rRenderContext, const tools::Rectangle &rRect) override
Definition: inputwin.cxx:1271
DECL_LINK(ClickHdl, weld::Button &, void)
void TextGrabFocus()
Definition: inputwin.cxx:633
void SetFormulaMode(bool bSet)
Definition: inputwin.cxx:2234
void TriggerToolboxLayout()
Definition: inputwin.cxx:1071
void HideTip()
Definition: inputwin.cxx:2369
void SetFuncString(const OUString &rString, bool bDoEdit=true)
Definition: inputwin.cxx:503
virtual void SetSizePixel(const Size &rNewSize) override
Definition: inputwin.cxx:442
vcl::Window * GetEditWindow()
Definition: inputwin.cxx:613
virtual void Resize() override
Definition: inputwin.cxx:912
void FillFunctions()
Definition: inputwin.cxx:2309
void DecrementVerticalSize()
Definition: inputwin.cxx:960
virtual void Notify(SfxBroadcaster &rBC, const SfxHint &rHint) override
Definition: inputwin.cxx:2348
virtual void SetDrawingArea(weld::DrawingArea *pDrawingArea) override
Definition: inputwin.cxx:2100
vcl::Window & mrParent
Definition: inputwin.hxx:235
bool IsInputActive() override
Definition: inputwin.cxx:2030
virtual EditView * GetEditView() const override
Definition: inputwin.cxx:934
ScTabViewShell * mpViewShell
Definition: inputwin.hxx:155
virtual void Resize() override
Definition: inputwin.cxx:464
bool bIsInsertMode
Definition: inputwin.hxx:148
DECL_LINK(ModifyHdl, LinkParamNone *, void)
virtual void StopEditEngine(bool bAll) override
Definition: inputwin.cxx:1256
const OutputDevice & GetEditViewDevice() const
Definition: inputwin.cxx:1312
virtual void dispose() override
Definition: inputwin.cxx:286
void TextInvalidate()
Definition: inputwin.cxx:638
virtual void SetTextString(const OUString &rString)=0
tools::Long GetVertOffset() const
Definition: inputwin.hxx:265
ScInputBarGroup(vcl::Window *Parent, ScTabViewShell *pViewSh)
Definition: inputwin.cxx:835
QPRO_FUNC_TYPE nType
Definition: qproform.cxx:398
virtual ~ScTextWndBase()
Definition: inputwin.hxx:62
std::unique_ptr< weld::Builder > m_xBuilder
std::unique_ptr< weld::Button > mxButtonDown
Definition: inputwin.hxx:280
virtual void Select() override
Definition: inputwin.cxx:334
virtual bool IsInputActive()=0
virtual void SetFormulaMode(bool bSet)=0
void StartEditEngine() override
Definition: inputwin.cxx:924
virtual void PixelInvalidate(const tools::Rectangle *pRectangle) override
Definition: inputwin.cxx:425
void NotifyLOKClient()
Definition: inputwin.cxx:497
void IncrementVerticalSize()
Definition: inputwin.cxx:954
tools::Long GetLastNumExpandedLines() const
Definition: inputwin.cxx:1178
void EnableButtons(bool bEnable)
Definition: inputwin.cxx:668
virtual void RemoveAccessibleTextData(ScAccessibleEditLineTextData &rTextData) override
Definition: inputwin.cxx:2164
VclPtr< ScPosWnd > aWndPos
Definition: inputwin.hxx:347
virtual void TextGrabFocus() override
Definition: inputwin.cxx:2179
int GetEditEngTxtHeight() const
Definition: inputwin.cxx:1367
void SetTextString(const OUString &rString) override
Definition: inputwin.cxx:907
std::unique_ptr< weld::Button > mxButtonUp
Definition: inputwin.hxx:279
virtual void SetFormulaMode(bool bSet) override
Definition: inputwin.cxx:1825
SFX_DECL_CHILDWINDOW_WITHID(ScInputWindowWrapper)
bool IsInputActive() override
Definition: inputwin.cxx:944
virtual void DataChanged(const DataChangedEvent &rDCEvt) override
Definition: inputwin.cxx:692
ScInputWindowWrapper(vcl::Window *pParent, sal_uInt16 nId, SfxBindings *pBindings, SfxChildWinInfo *pInfo)
Definition: inputwin.cxx:119
virtual bool MouseButtonDown(const MouseEvent &rMEvt) override
Definition: inputwin.cxx:1620
bool mbInvalidate
Definition: inputwin.hxx:158
virtual bool HasEditView() const override
Definition: inputwin.cxx:1208
void DoScroll()
Definition: inputwin.cxx:1401
void SetOkCancelMode()
Definition: inputwin.cxx:550
static OUString createLocalRangeName(std::u16string_view rName, std::u16string_view rTableName)
Definition: inputwin.cxx:2259
virtual void RemoveAccessibleTextData(ScAccessibleEditLineTextData &rTextData) override
Definition: inputwin.cxx:1223
virtual void GetFocus() override
Definition: inputwin.cxx:1817
virtual tools::Long GetNumLines() const override
Definition: inputwin.hxx:264
AccTextDataVector maAccTextDatas
Definition: inputwin.hxx:146
ImplSVEvent * m_nAsyncGetFocusId
Definition: inputwin.hxx:166
virtual void Resize() override
Definition: inputwin.cxx:1342
void NumLinesChanged()
Definition: inputwin.cxx:1050
weld::ScrolledWindow & GetScrollWin()
Definition: inputwin.cxx:1198
void ImplInitSettings()
Definition: inputwin.cxx:2086
void PosGrabFocus()
Definition: inputwin.cxx:662
void SetPos(const OUString &rPosStr)
Definition: inputwin.cxx:2249
vcl::Font aTextFont
Definition: inputwin.hxx:145
void SetLastNumExpandedLines(tools::Long nLastExpandedLines)
Definition: inputwin.hxx:110
virtual void StopEditEngine(bool bAll) override
Definition: inputwin.cxx:1877
This base class provides an implementation of the AccessibleCell service.