diff options
author | Caolán McNamara <caolanm@redhat.com> | 2019-11-19 11:38:40 +0000 |
---|---|---|
committer | Caolán McNamara <caolanm@redhat.com> | 2019-11-19 22:15:28 +0100 |
commit | b626a7de72c8c94f0999acf08b83d7449c36a535 (patch) | |
tree | be66c6ec632958c04d0ba42f1055c76290c6fa7a | |
parent | 72acdb46f62d8ebbc70f7f478f5be155c73ddcda (diff) |
up/down in ArgEdit doesn't do anything
but it should cycle through the arguments
Change-Id: Ifa398039e77d536a0df021b1a18e06d6df673980
Reviewed-on: https://gerrit.libreoffice.org/83192
Tested-by: Jenkins
Reviewed-by: Eike Rathke <erack@redhat.com>
(cherry picked from commit 7a73a586571a8242d9a49051adc62ef7c1c43e86)
Reviewed-on: https://gerrit.libreoffice.org/83213
-rw-r--r-- | formula/source/ui/dlg/ControlHelper.hxx | 2 | ||||
-rw-r--r-- | formula/source/ui/dlg/funcutl.cxx | 13 | ||||
-rw-r--r-- | include/formula/funcutl.hxx | 6 |
3 files changed, 14 insertions, 7 deletions
diff --git a/formula/source/ui/dlg/ControlHelper.hxx b/formula/source/ui/dlg/ControlHelper.hxx index 3fb82de8bac1..960935573acc 100644 --- a/formula/source/ui/dlg/ControlHelper.hxx +++ b/formula/source/ui/dlg/ControlHelper.hxx @@ -38,7 +38,7 @@ public: ParaWin& rParaWin, sal_uInt16 nArgCount); protected: - DECL_LINK(KeyInputHdl, const KeyEvent&, bool); + virtual bool KeyInput(const KeyEvent& rKEvt); private: ArgEdit* pEdPrev; diff --git a/formula/source/ui/dlg/funcutl.cxx b/formula/source/ui/dlg/funcutl.cxx index 21ab45c0ee6b..491bab8c2769 100644 --- a/formula/source/ui/dlg/funcutl.cxx +++ b/formula/source/ui/dlg/funcutl.cxx @@ -55,7 +55,7 @@ void ArgEdit::Init(ArgEdit* pPrevEdit, ArgEdit* pNextEdit, } // Cursor control for Edit Fields in Argument Dialog -IMPL_LINK(ArgEdit, KeyInputHdl, const KeyEvent&, rKEvt, bool) +bool ArgEdit::KeyInput(const KeyEvent& rKEvt) { vcl::KeyCode aCode = rKEvt.GetKeyCode(); bool bUp = (aCode.GetCode() == KEY_UP); @@ -127,7 +127,7 @@ IMPL_LINK(ArgEdit, KeyInputHdl, const KeyEvent&, rKEvt, bool) } return true; } - return false; + return RefEdit::KeyInput(rKEvt); } // class ArgInput @@ -272,7 +272,7 @@ RefEdit::RefEdit(std::unique_ptr<weld::Entry> xControl) { xEntry->connect_focus_in(LINK(this, RefEdit, GetFocus)); xEntry->connect_focus_out(LINK(this, RefEdit, LoseFocus)); - xEntry->connect_key_press(LINK(this, RefEdit, KeyInput)); + xEntry->connect_key_press(LINK(this, RefEdit, KeyInputHdl)); xEntry->connect_changed(LINK(this, RefEdit, Modify)); aIdle.SetInvokeHandler( LINK( this, RefEdit, UpdateHdl ) ); } @@ -330,7 +330,12 @@ IMPL_LINK_NOARG(RefEdit, Modify, weld::Entry&, void) pAnyRefDlg->HideReference(); } -IMPL_LINK(RefEdit, KeyInput, const KeyEvent&, rKEvt, bool) +IMPL_LINK(RefEdit, KeyInputHdl, const KeyEvent&, rKEvt, bool) +{ + return KeyInput(rKEvt); +} + +bool RefEdit::KeyInput(const KeyEvent& rKEvt) { const vcl::KeyCode& rKeyCode = rKEvt.GetKeyCode(); if (pAnyRefDlg && !rKeyCode.GetModifier() && rKeyCode.GetCode() == KEY_F2) diff --git a/include/formula/funcutl.hxx b/include/formula/funcutl.hxx index 5e4a037c607e..02cf585a771e 100644 --- a/include/formula/funcutl.hxx +++ b/include/formula/funcutl.hxx @@ -49,15 +49,17 @@ private: DECL_LINK( UpdateHdl, Timer*, void ); protected: - DECL_LINK(KeyInput, const KeyEvent&, bool); + DECL_LINK(KeyInputHdl, const KeyEvent&, bool); DECL_LINK(GetFocus, weld::Widget&, void); DECL_LINK(LoseFocus, weld::Widget&, void); DECL_LINK(Modify, weld::Entry&, void); + virtual bool KeyInput(const KeyEvent& rKEvt); + public: RefEdit(std::unique_ptr<weld::Entry> xControl); weld::Entry* GetWidget() const { return xEntry.get(); } - ~RefEdit(); + virtual ~RefEdit(); void SetRefString( const OUString& rStr ); |