diff options
author | Caolán McNamara <caolanm@redhat.com> | 2019-05-01 15:46:06 +0100 |
---|---|---|
committer | Caolán McNamara <caolanm@redhat.com> | 2019-05-07 13:08:13 +0200 |
commit | feecbabd01870ed83a04baa6cb13d7a8af832ac3 (patch) | |
tree | b3eac2bed9c5936287a04badea90a508be57f623 /include | |
parent | d25fef637897bdf9e680700451e9207ac6aa7cbe (diff) |
weld FormulaDialog
drop xFocusWin hack, I don't see what gain it gives
Change-Id: I31952b5440797e6209ed1de6b546f1e4c0238d08
Reviewed-on: https://gerrit.libreoffice.org/71675
Tested-by: Jenkins
Reviewed-by: Caolán McNamara <caolanm@redhat.com>
Tested-by: Caolán McNamara <caolanm@redhat.com>
Diffstat (limited to 'include')
-rw-r--r-- | include/formula/formdata.hxx | 3 | ||||
-rw-r--r-- | include/formula/formula.hxx | 33 | ||||
-rw-r--r-- | include/formula/funcutl.hxx | 4 | ||||
-rw-r--r-- | include/vcl/weld.hxx | 8 |
4 files changed, 24 insertions, 24 deletions
diff --git a/include/formula/formdata.hxx b/include/formula/formdata.hxx index 6a1889b3c1ba..e910bd64300f 100644 --- a/include/formula/formdata.hxx +++ b/include/formula/formdata.hxx @@ -44,7 +44,6 @@ public: sal_uInt16 GetOffset() const { return nOffset; } const OUString& GetUndoStr() const { return aUndoStr; } bool GetMatrixFlag()const{ return bMatrix;} - const VclPtr<vcl::Window>& GetFocusWindow()const { return xFocusWin; } const Selection& GetSelection()const { return aSelection;} void SetMode( FormulaDlgMode nNew ) { nMode = nNew; } @@ -52,7 +51,6 @@ public: void SetOffset( sal_uInt16 nNew ) { nOffset = nNew; } void SetUndoStr( const OUString& rNew ) { aUndoStr = rNew; } void SetMatrixFlag(bool bNew) { bMatrix=bNew;} - void SetFocusWindow(const VclPtr<vcl::Window>& rWin) { xFocusWin=rWin;} void SetSelection(const Selection& aSel) { aSelection=aSel;} protected: void Reset(); @@ -65,7 +63,6 @@ private: sal_uInt16 nOffset; OUString aUndoStr; bool bMatrix; - VclPtr<vcl::Window> xFocusWin; Selection aSelection; }; diff --git a/include/formula/formula.hxx b/include/formula/formula.hxx index 873ab04866d7..7b4464e80019 100644 --- a/include/formula/formula.hxx +++ b/include/formula/formula.hxx @@ -60,24 +60,22 @@ class RefButton; class WeldRefButton; class FormEditData; -class FORMULA_DLLPUBLIC FormulaModalDialog : public ModalDialog, public formula::IFormulaEditorHelper +class FORMULA_DLLPUBLIC FormulaModalDialog + : public weld::GenericDialogController, public formula::IFormulaEditorHelper { friend class FormulaDlg_Impl; public: - FormulaModalDialog( vcl::Window* pParent - ,IFunctionManager const * _pFunctionMgr - ,IControlReferenceHandler* _pDlg ); + FormulaModalDialog(weld::Window* pParent, IFunctionManager const * _pFunctionMgr, + IControlReferenceHandler* _pDlg); virtual ~FormulaModalDialog() override; - virtual void dispose() override; private: std::unique_ptr<FormulaDlg_Impl, o3tl::default_delete<FormulaDlg_Impl>> m_pImpl; protected: - virtual bool PreNotify( NotifyEvent& rNEvt ) override; - ::std::pair<RefButton*,RefEdit*> RefInputStartBefore( RefEdit* pEdit, RefButton* pButton ); - static ::std::pair<WeldRefButton*,WeldRefEdit*> RefInputStartBefore( WeldRefEdit* pEdit, WeldRefButton* pButton ); + static ::std::pair<RefButton*,RefEdit*> RefInputStartBefore( RefEdit* pEdit, RefButton* pButton ); + ::std::pair<WeldRefButton*,WeldRefEdit*> RefInputStartBefore( WeldRefEdit* pEdit, WeldRefButton* pButton ); void RefInputStartAfter(); void RefInputDoneAfter(); @@ -90,17 +88,15 @@ protected: }; class FORMULA_DLLPUBLIC FormulaDlg: - public SfxModelessDialog, public IFormulaEditorHelper + public SfxModelessDialogController, public IFormulaEditorHelper { friend class FormulaDlg_Impl; public: - FormulaDlg( SfxBindings* pB - , SfxChildWindow* pCW - , vcl::Window* pParent - , IFunctionManager const * _pFunctionMgr - , IControlReferenceHandler* _pDlg ); + FormulaDlg(SfxBindings* pB, SfxChildWindow* pCW, + weld::Window* pParent, + IFunctionManager const * _pFunctionMgr, + IControlReferenceHandler* _pDlg); virtual ~FormulaDlg() override; - virtual void dispose() override; private: std::unique_ptr<FormulaDlg_Impl, o3tl::default_delete<FormulaDlg_Impl>> m_pImpl; @@ -110,9 +106,8 @@ protected: protected: - virtual bool PreNotify( NotifyEvent& rNEvt ) override; - ::std::pair<RefButton*,RefEdit*> RefInputStartBefore( RefEdit* pEdit, RefButton* pButton ); - static ::std::pair<WeldRefButton*,WeldRefEdit*> RefInputStartBefore( WeldRefEdit* pEdit, WeldRefButton* pButton ); + static ::std::pair<RefButton*,RefEdit*> RefInputStartBefore( RefEdit* pEdit, RefButton* pButton ); + ::std::pair<WeldRefButton*,WeldRefEdit*> RefInputStartBefore( WeldRefEdit* pEdit, WeldRefButton* pButton ); void RefInputStartAfter(); void RefInputDoneAfter( bool bForced ); @@ -126,7 +121,7 @@ protected: const IFunctionDescription* getCurrentFunctionDescription() const; bool UpdateParaWin(Selection& _rSelection); void UpdateParaWin(const Selection& _rSelection, const OUString& _sRefStr); - RefEdit* GetActiveEdit(); + WeldRefEdit* GetActiveEdit(); void SetEdSelection(); void StoreFormEditData(FormEditData* pData); diff --git a/include/formula/funcutl.hxx b/include/formula/funcutl.hxx index 7ab1252e7c97..92578e49f8ad 100644 --- a/include/formula/funcutl.hxx +++ b/include/formula/funcutl.hxx @@ -104,7 +104,7 @@ protected: public: WeldRefEdit(std::unique_ptr<weld::Entry> xControl); - weld::Widget* GetWidget() const { return xEntry.get(); } + weld::Entry* GetWidget() const { return xEntry.get(); } ~WeldRefEdit(); void SetRefString( const OUString& rStr ); @@ -227,7 +227,7 @@ protected: public: WeldRefButton(std::unique_ptr<weld::Button> xControl); - weld::Widget* GetWidget() const { return xButton.get(); } + weld::Button* GetWidget() const { return xButton.get(); } ~WeldRefButton(); void SetReferences(IControlReferenceHandler* pDlg, WeldRefEdit* pEdit); void SetStartImage(); diff --git a/include/vcl/weld.hxx b/include/vcl/weld.hxx index be325ab9af34..c24810f4ebec 100644 --- a/include/vcl/weld.hxx +++ b/include/vcl/weld.hxx @@ -1491,6 +1491,8 @@ public: virtual OUString get_label() const = 0; virtual void set_mnemonic_widget(Widget* pTarget) = 0; virtual void set_error(bool bShowError) = 0; + // font size is in points, not pixels, e.g. see Window::[G]etPointFont + virtual void set_font(const vcl::Font& rFont) = 0; }; class VCL_DLLPUBLIC TextView : virtual public Container @@ -1501,8 +1503,10 @@ private: protected: Link<TextView&, void> m_aChangeHdl; Link<TextView&, void> m_aVChangeHdl; + Link<TextView&, void> m_aCursorPositionHdl; void signal_changed() { m_aChangeHdl.Call(*this); } + void signal_cursor_position() { m_aCursorPositionHdl.Call(*this); } void signal_vadjustment_changed() { m_aVChangeHdl.Call(*this); } public: @@ -1523,6 +1527,10 @@ public: bool get_value_changed_from_saved() const { return m_sSavedValue != get_text(); } void connect_changed(const Link<TextView&, void>& rLink) { m_aChangeHdl = rLink; } + virtual void connect_cursor_position(const Link<TextView&, void>& rLink) + { + m_aCursorPositionHdl = rLink; + } virtual int vadjustment_get_value() const = 0; virtual int vadjustment_get_upper() const = 0; |