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 { return mnLines; }
108  void SetNumLines(tools::Long nLines);
110 
111  void DoScroll();
112 
113  DECL_LINK(ModifyHdl, LinkParamNone*, void);
114  DECL_LINK(EditStatusHdl, EditStatus&, void);
115 
116 protected:
117  virtual void Paint( vcl::RenderContext& rRenderContext, const tools::Rectangle& rRect ) override;
118 
119  virtual bool MouseMove( const MouseEvent& rMEvt ) override;
120  virtual bool MouseButtonDown( const MouseEvent& rMEvt ) override;
121  virtual bool MouseButtonUp( const MouseEvent& rMEvt ) override;
122  virtual bool Command( const CommandEvent& rCEvt ) override;
123  virtual bool KeyInput(const KeyEvent& rKEvt) override;
124  virtual bool CanFocus() const override;
125  virtual void GetFocus() override;
126 
127  virtual bool StartDrag() override;
128 
129 private:
130  void ImplInitSettings();
131  void UpdateAutoCorrFlag();
132 
133  void SetScrollBarRange();
134 
135  void InitEditEngine();
136 
138 
139  typedef ::std::vector< ScAccessibleEditLineTextData* > AccTextDataVector;
140 
142 
143  OUString aString;
145  AccTextDataVector maAccTextDatas; // #i105267# text data may be cloned, remember all copies
146  bool bIsRTL;
149 
150  // #102710#; this flag should be true if a key input or a command is handled
151  // it prevents the call of InputChanged in the ModifyHandler of the EditEngine
153 
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  virtual tools::Long GetNumLines() const override;
215  virtual const OUString& GetTextString() const override;
216  virtual bool HasEditView() const override;
217  virtual bool IsInputActive() override;
218  virtual void MakeDialogEditView() override;
219  virtual void RemoveAccessibleTextData(ScAccessibleEditLineTextData& rTextData) override;
220  void SetScrollPolicy();
221  void SetNumLines(tools::Long nLines);
222  virtual void SetFormulaMode(bool bSet) override;
223  virtual void SetTextString(const OUString& rString) override;
224  virtual void StartEditEngine() override;
225  virtual void StopEditEngine(bool bAll) override;
226  virtual void TextGrabFocus() override;
227 
229 
230 private:
231  std::unique_ptr<ScTextWnd> mxTextWnd;
232  std::unique_ptr<weld::ScrolledWindow> mxScrollWin;
233  std::unique_ptr<weld::CustomWeld> mxTextWndWin;
235 
236  DECL_LINK(Impl_ScrollHdl, weld::ScrolledWindow&, void);
237 };
238 
240  , public ScTextWndBase
241 {
242 public:
244  virtual ~ScInputBarGroup() override;
245  virtual void dispose() override;
246  virtual void InsertAccessibleTextData(ScAccessibleEditLineTextData& rTextData) override;
247  virtual void RemoveAccessibleTextData(ScAccessibleEditLineTextData& rTextData) override;
248  void SetTextString(const OUString& rString) override;
249  void StartEditEngine() override;
250  virtual EditView* GetEditView() const override;
251  virtual bool HasEditView() const override;
252  Point GetCursorScreenPixelPos(bool bBelowLine);
253  virtual void Resize() override;
254  virtual const OUString& GetTextString() const override;
255  virtual void StopEditEngine(bool bAll) override;
256  virtual void TextGrabFocus() override;
257  void SetFormulaMode(bool bSet) override;
258  void MakeDialogEditView() override;
259  bool IsInputActive() override;
260  void IncrementVerticalSize();
261  void DecrementVerticalSize();
262  virtual tools::Long GetNumLines() const override { return mxTextWndGroup->GetNumLines(); }
264 
266  {
267  return mxTextWndGroup->GetPixelHeightForLines(GetNumLines());
268  }
269 
271 
272 private:
273  void TriggerToolboxLayout();
274 
275  std::unique_ptr<weld::Container> mxBackground;
276  std::unique_ptr<ScTextWndGroup> mxTextWndGroup;
277  std::unique_ptr<weld::Button> mxButtonUp;
278  std::unique_ptr<weld::Button> mxButtonDown;
280 
281  DECL_LINK(ClickHdl, weld::Button&, void);
282 };
283 
284 class ScInputWindow final : public ToolBox // Parent toolbox
285 {
286 public:
287  ScInputWindow( vcl::Window* pParent, const SfxBindings* pBind );
288  virtual ~ScInputWindow() override;
289  virtual void dispose() override;
290 
291  virtual void Paint( vcl::RenderContext& rRenderContext, const tools::Rectangle& rRect ) override;
292  virtual void PixelInvalidate(const tools::Rectangle* pRectangle) override;
293  virtual void setPosSizePixel( tools::Long nX, tools::Long nY, tools::Long nWidth, tools::Long nHeight,
294  PosSizeFlags nFlags = PosSizeFlags::All ) override;
295  virtual void SetSizePixel( const Size& rNewSize ) override;
296  virtual void Resize() override;
297  virtual void Select() override;
298 
299  void SetFuncString( const OUString& rString, bool bDoEdit = true );
300  void SetPosString( const OUString& rStr );
301  void SetTextString( const OUString& rString );
302 
303  void SetOkCancelMode();
304  void SetSumAssignMode();
305  void EnableButtons( bool bEnable );
306 
307  void SetFormulaMode( bool bSet );
308 
309  bool IsInputActive();
312  Point GetCursorScreenPixelPos(bool bBelowLine = false);
313 
314  void TextGrabFocus();
315  void TextInvalidate();
316  void SwitchToTextWin();
317 
318  void PosGrabFocus();
319 
320  // For function autopilots
321  void MakeDialogEditView();
322 
323  void StopEditEngine( bool bAll );
324 
325  void SetInputHandler( ScInputHandler* pNew );
326 
328 
329  void StateChanged( StateChangedType nType ) override;
330  virtual void DataChanged( const DataChangedEvent& rDCEvt ) override;
331  virtual void MouseButtonUp( const MouseEvent& rMEvt ) override;
332  virtual void MouseButtonDown( const MouseEvent& rMEvt ) override;
333  virtual void MouseMove( const MouseEvent& rMEvt ) override;
334 
335  void NotifyLOKClient();
336 
337  void MenuHdl(std::string_view command);
338  DECL_LINK( DropdownClickHdl, ToolBox*, void );
339 
340  void AutoSum( bool& bRangeFinder, bool& bSubTotal, OpCode eCode );
341 
342 private:
343  bool IsPointerAtResizePos();
344 
351  bool bInResize;
352 };
353 
355 {
356 public:
358  sal_uInt16 nId,
359  SfxBindings* pBindings,
360  SfxChildWinInfo* pInfo );
361 
363 };
364 
365 /* vim:set shiftwidth=4 softtabstop=4 expandtab: */
int GetPixelHeightForLines() const
Definition: inputwin.hxx:265
tools::Long mnVertOffset
Definition: inputwin.hxx:279
void StateChanged(StateChangedType nType) override
Definition: inputwin.cxx:731
tools::Long mnLastExpandedLines
Definition: inputwin.hxx:157
virtual void TextGrabFocus()=0
vcl::Window & GetVclParent()
Definition: inputwin.hxx:228
DECL_LINK(Impl_ScrollHdl, weld::ScrolledWindow &, void)
void ReleaseFocus_Impl()
Definition: inputwin.cxx:2664
bool bFormulaMode
Definition: inputwin.hxx:170
virtual void StopEditEngine(bool bAll)=0
std::unique_ptr< weld::Container > mxBackground
Definition: inputwin.hxx:275
virtual void TextGrabFocus() override
Definition: inputwin.cxx:1129
virtual const OUString & GetTextString() const override
Definition: inputwin.cxx:1207
void SetNumLines(tools::Long nLines)
Definition: inputwin.cxx:1359
virtual void SetTextString(const OUString &rString) override
Definition: inputwin.cxx:1947
virtual void SetFormulaMode(bool bSet) override
Definition: inputwin.cxx:1245
void FillRangeNames()
Definition: inputwin.cxx:2266
ScTextWndGroup & mrGroupBar
Definition: inputwin.hxx:155
Point GetCursorScreenPixelPos(bool bBelowLine=false)
Definition: inputwin.cxx:670
virtual ~ScInputWindow() override
Definition: inputwin.cxx:282
virtual tools::Long GetNumLines() const override
Definition: inputwin.cxx:1192
VclPtr< ScInputBarGroup > mxTextWindow
Definition: inputwin.hxx:346
virtual void StyleUpdated() override
Definition: inputwin.cxx:2175
void StopEditEngine(bool bAll)
Definition: inputwin.cxx:680
tools::Long mnMaxY
Definition: inputwin.hxx:349
DECL_LINK(OnAsyncGetFocus, void *, void)
virtual bool HasEditView() const override
Definition: inputwin.cxx:984
virtual void MouseButtonUp(const MouseEvent &rMEvt) override
Definition: inputwin.cxx:832
virtual void TextGrabFocus() override
Definition: inputwin.cxx:1265
virtual void dispose() override
Definition: inputwin.cxx:2220
long Long
virtual bool MouseMove(const MouseEvent &rMEvt) override
Definition: inputwin.cxx:1638
void * nTipVisible
Definition: inputwin.hxx:169
virtual void dispose() override
Definition: inputwin.cxx:929
std::unique_ptr< weld::ComboBox > m_xWidget
Definition: inputwin.hxx:164
virtual void StopEditEngine(bool bAll) override
Definition: inputwin.cxx:964
virtual void MakeDialogEditView() override
Definition: inputwin.cxx:1222
const OutputDevice & GetEditViewDevice() const
Definition: inputwin.cxx:1182
ScPosWnd(vcl::Window *pParent)
Definition: inputwin.cxx:2187
virtual void StartEditEngine() override
Definition: inputwin.cxx:1441
sal_Int16 nId
ScTextWndGroup(ScInputBarGroup &pParent, ScTabViewShell *pViewSh)
Definition: inputwin.cxx:1137
virtual tools::Long GetNumLines() const override
Definition: inputwin.hxx:107
DECL_LINK(DropdownClickHdl, ToolBox *, void)
PosSizeFlags
virtual tools::Long GetNumLines() const =0
void MenuHdl(std::string_view command)
Definition: inputwin.cxx:1014
bool bFormulaMode
Definition: inputwin.hxx:148
virtual void EditViewScrollStateChange() override
Definition: inputwin.cxx:1858
virtual const OUString & GetTextString() const override
Definition: inputwin.cxx:2027
virtual void StartEditEngine()=0
tools::Long mnLines
Definition: inputwin.hxx:156
virtual void SetTextString(const OUString &rString) override
Definition: inputwin.cxx:1250
void SetSumAssignMode()
Definition: inputwin.cxx:625
virtual const OUString & GetTextString() const =0
void SetPosString(const OUString &rStr)
Definition: inputwin.cxx:590
void SetFormulaMode(bool bSet) override
Definition: inputwin.cxx:994
void SetNumLines(tools::Long nLines)
Definition: inputwin.cxx:1240
void MakeDialogEditView()
Definition: inputwin.cxx:675
StateChangedType
weld::Builder & GetBuilder()
Definition: inputwin.hxx:270
virtual void setPosSizePixel(tools::Long nX, tools::Long nY, tools::Long nWidth, tools::Long nHeight, PosSizeFlags nFlags=PosSizeFlags::All) override
Definition: inputwin.cxx:480
EditView * GetEditView()
Definition: inputwin.cxx:660
virtual bool StartDrag() override
Definition: inputwin.cxx:1799
void DoEnter()
Definition: inputwin.cxx:2498
OpCode
void SetScrollBarRange()
Definition: inputwin.cxx:1399
bool bIsRTL
Definition: inputwin.hxx:146
virtual void InsertAccessibleTextData(ScAccessibleEditLineTextData &rTextData) override
Definition: inputwin.cxx:2159
ScTextWnd(ScTextWndGroup &rParent, ScTabViewShell *pViewSh)
Definition: inputwin.cxx:1618
rtl::Reference< ScAccessibleEditObject > pAcc
Definition: inputwin.hxx:141
virtual bool KeyInput(const KeyEvent &rKEvt) override
Definition: inputwin.cxx:1810
virtual void InsertAccessibleTextData(ScAccessibleEditLineTextData &rTextData) override
Definition: inputwin.cxx:1172
virtual void MouseButtonDown(const MouseEvent &rMEvt) override
Definition: inputwin.cxx:808
Point GetCursorScreenPixelPos(bool bBelowLine)
Definition: inputwin.cxx:919
void MakeDialogEditView() override
Definition: inputwin.cxx:974
bool IsInputActive()
Definition: inputwin.cxx:655
void SetFormulaMode(bool bSet)
Definition: inputwin.cxx:649
int GetPixelHeightForLines(tools::Long nLines)
Definition: inputwin.cxx:1197
bool IsPointerAtResizePos()
Definition: inputwin.cxx:759
virtual ~ScTextWnd() override
Definition: inputwin.cxx:1631
virtual bool IsInputActive() override
Definition: inputwin.cxx:1217
tools::Long GetLastNumExpandedLines() const
Definition: inputwin.hxx:109
OUString aString
Definition: inputwin.hxx:143
virtual ~ScTextWndGroup() override
Definition: inputwin.cxx:1168
std::unique_ptr< ScTextWndGroup > mxTextWndGroup
Definition: inputwin.hxx:276
ScTabViewShell * mpViewShell
Definition: inputwin.hxx:348
virtual void RemoveAccessibleTextData(ScAccessibleEditLineTextData &rTextData)=0
bool bInputMode
Definition: inputwin.hxx:152
void UpdateAutoCorrFlag()
Definition: inputwin.cxx:1842
virtual ~ScPosWnd() override
Definition: inputwin.cxx:2215
OUString aPosStr
Definition: inputwin.hxx:168
virtual EditView * GetEditView() const =0
virtual bool HasEditView() const override
Definition: inputwin.cxx:1345
virtual EditView * GetEditView() const override
Definition: inputwin.cxx:1338
std::unique_ptr< weld::CustomWeld > mxTextWndWin
Definition: inputwin.hxx:233
Point GetCursorScreenPixelPos(bool bBelowLine)
Definition: inputwin.cxx:1146
void SwitchToTextWin()
Definition: inputwin.cxx:695
void SetScrollPolicy()
Definition: inputwin.cxx:1232
virtual bool Command(const CommandEvent &rCEvt) override
Definition: inputwin.cxx:1693
virtual void MakeDialogEditView() override
Definition: inputwin.cxx:2037
void AutoSum(bool &bRangeFinder, bool &bSubTotal, OpCode eCode)
Definition: inputwin.cxx:844
virtual void MakeDialogEditView()=0
virtual EditView * GetEditView() const override
Definition: inputwin.cxx:1177
void SetInputHandler(ScInputHandler *pNew)
Definition: inputwin.cxx:325
virtual void StartEditEngine() override
Definition: inputwin.cxx:1255
ScInputHandler * pInputHdl
Definition: inputwin.hxx:347
virtual bool HasEditView() const =0
virtual void InsertAccessibleTextData(ScAccessibleEditLineTextData &rTextData) override
Definition: inputwin.cxx:938
virtual bool CanFocus() const override
Definition: inputwin.cxx:1643
std::unique_ptr< weld::ScrolledWindow > mxScrollWin
Definition: inputwin.hxx:232
ScInputHandler * GetInputHandler()
Definition: inputwin.hxx:327
::std::vector< ScAccessibleEditLineTextData * > AccTextDataVector
Definition: inputwin.hxx:139
virtual bool MouseButtonUp(const MouseEvent &rMEvt) override
Definition: inputwin.cxx:1676
int GetPixelHeightForLines(tools::Long nLines)
Definition: inputwin.cxx:1352
bool bIsOkCancelMode
Definition: inputwin.hxx:350
virtual const OUString & GetTextString() const override
Definition: inputwin.cxx:948
std::unique_ptr< ScTextWnd > mxTextWnd
Definition: inputwin.hxx:231
virtual void InsertAccessibleTextData(ScAccessibleEditLineTextData &rTextData)=0
virtual void Paint(vcl::RenderContext &rRenderContext, const tools::Rectangle &rRect) override
Definition: inputwin.cxx:423
virtual void RemoveAccessibleTextData(ScAccessibleEditLineTextData &rTextData) override
Definition: inputwin.cxx:943
rtl::Reference< svt::OStringTransferable > m_xHelper
Definition: inputwin.hxx:137
virtual void MouseMove(const MouseEvent &rMEvt) override
Definition: inputwin.cxx:764
virtual ~ScInputBarGroup() override
Definition: inputwin.cxx:924
VclPtr< vcl::Window > pParent
ScInputWindow(vcl::Window *pParent, const SfxBindings *pBind)
Definition: inputwin.cxx:161
void InitEditEngine()
Definition: inputwin.cxx:1521
virtual css::uno::Reference< css::accessibility::XAccessible > CreateAccessible() override
Definition: inputwin.cxx:2153
void SetTextString(const OUString &rString)
Definition: inputwin.cxx:595
virtual void Paint(vcl::RenderContext &rRenderContext, const tools::Rectangle &rRect) override
Definition: inputwin.cxx:1275
DECL_LINK(ClickHdl, weld::Button &, void)
void TextGrabFocus()
Definition: inputwin.cxx:685
void SetFormulaMode(bool bSet)
Definition: inputwin.cxx:2236
void TriggerToolboxLayout()
Definition: inputwin.cxx:1082
void HideTip()
Definition: inputwin.cxx:2371
void SetFuncString(const OUString &rString, bool bDoEdit=true)
Definition: inputwin.cxx:557
virtual void SetSizePixel(const Size &rNewSize) override
Definition: inputwin.cxx:458
vcl::Window * GetEditWindow()
Definition: inputwin.cxx:665
virtual void Resize() override
Definition: inputwin.cxx:958
void FillFunctions()
Definition: inputwin.cxx:2311
void DecrementVerticalSize()
Definition: inputwin.cxx:1005
virtual void Notify(SfxBroadcaster &rBC, const SfxHint &rHint) override
Definition: inputwin.cxx:2350
virtual void SetDrawingArea(weld::DrawingArea *pDrawingArea) override
Definition: inputwin.cxx:2102
vcl::Window & mrParent
Definition: inputwin.hxx:234
bool IsInputActive() override
Definition: inputwin.cxx:2032
virtual EditView * GetEditView() const override
Definition: inputwin.cxx:979
ScTabViewShell * mpViewShell
Definition: inputwin.hxx:154
virtual void Resize() override
Definition: inputwin.cxx:494
bool bIsInsertMode
Definition: inputwin.hxx:147
DECL_LINK(ModifyHdl, LinkParamNone *, void)
virtual void StopEditEngine(bool bAll) override
Definition: inputwin.cxx:1260
const OutputDevice & GetEditViewDevice() const
Definition: inputwin.cxx:1347
virtual void dispose() override
Definition: inputwin.cxx:287
void TextInvalidate()
Definition: inputwin.cxx:690
virtual void SetTextString(const OUString &rString)=0
tools::Long GetVertOffset() const
Definition: inputwin.hxx:263
ScInputBarGroup(vcl::Window *Parent, ScTabViewShell *pViewSh)
Definition: inputwin.cxx:881
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:278
virtual void Select() override
Definition: inputwin.cxx:338
virtual bool IsInputActive()=0
virtual void SetFormulaMode(bool bSet)=0
void StartEditEngine() override
Definition: inputwin.cxx:969
virtual void PixelInvalidate(const tools::Rectangle *pRectangle) override
Definition: inputwin.cxx:441
void NotifyLOKClient()
Definition: inputwin.cxx:536
void IncrementVerticalSize()
Definition: inputwin.cxx:999
tools::Long GetLastNumExpandedLines() const
Definition: inputwin.cxx:1187
void EnableButtons(bool bEnable)
Definition: inputwin.cxx:719
virtual void RemoveAccessibleTextData(ScAccessibleEditLineTextData &rTextData) override
Definition: inputwin.cxx:2166
VclPtr< ScPosWnd > aWndPos
Definition: inputwin.hxx:345
virtual void TextGrabFocus() override
Definition: inputwin.cxx:2181
int GetEditEngTxtHeight() const
Definition: inputwin.cxx:1394
void SetTextString(const OUString &rString) override
Definition: inputwin.cxx:953
std::unique_ptr< weld::Button > mxButtonUp
Definition: inputwin.hxx:277
virtual void SetFormulaMode(bool bSet) override
Definition: inputwin.cxx:1833
SFX_DECL_CHILDWINDOW_WITHID(ScInputWindowWrapper)
bool IsInputActive() override
Definition: inputwin.cxx:989
virtual void DataChanged(const DataChangedEvent &rDCEvt) override
Definition: inputwin.cxx:738
ScInputWindowWrapper(vcl::Window *pParent, sal_uInt16 nId, SfxBindings *pBindings, SfxChildWinInfo *pInfo)
Definition: inputwin.cxx:120
virtual bool MouseButtonDown(const MouseEvent &rMEvt) override
Definition: inputwin.cxx:1648
bool mbInvalidate
Definition: inputwin.hxx:158
virtual bool HasEditView() const override
Definition: inputwin.cxx:1212
void DoScroll()
Definition: inputwin.cxx:1428
void SetOkCancelMode()
Definition: inputwin.cxx:603
static OUString createLocalRangeName(std::u16string_view rName, std::u16string_view rTableName)
Definition: inputwin.cxx:2261
virtual void RemoveAccessibleTextData(ScAccessibleEditLineTextData &rTextData) override
Definition: inputwin.cxx:1227
virtual void GetFocus() override
Definition: inputwin.cxx:1825
virtual tools::Long GetNumLines() const override
Definition: inputwin.hxx:262
AccTextDataVector maAccTextDatas
Definition: inputwin.hxx:145
ImplSVEvent * m_nAsyncGetFocusId
Definition: inputwin.hxx:166
virtual void Resize() override
Definition: inputwin.cxx:1369
weld::ScrolledWindow & GetScrollWin()
Definition: inputwin.cxx:1202
void ImplInitSettings()
Definition: inputwin.cxx:2088
void PosGrabFocus()
Definition: inputwin.cxx:714
void SetPos(const OUString &rPosStr)
Definition: inputwin.cxx:2251
vcl::Font aTextFont
Definition: inputwin.hxx:144
virtual void StopEditEngine(bool bAll) override
Definition: inputwin.cxx:1885
This base class provides an implementation of the AccessibleCell service.