summaryrefslogtreecommitdiff
path: root/include
diff options
context:
space:
mode:
authorCaolán McNamara <caolanm@redhat.com>2019-05-01 15:46:06 +0100
committerCaolán McNamara <caolanm@redhat.com>2019-05-07 13:08:13 +0200
commitfeecbabd01870ed83a04baa6cb13d7a8af832ac3 (patch)
treeb3eac2bed9c5936287a04badea90a508be57f623 /include
parentd25fef637897bdf9e680700451e9207ac6aa7cbe (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.hxx3
-rw-r--r--include/formula/formula.hxx33
-rw-r--r--include/formula/funcutl.hxx4
-rw-r--r--include/vcl/weld.hxx8
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;