LibreOffice Module sc (master) 1
Public Member Functions | Private Member Functions | Private Attributes | List of all members
ScSolverDlg Class Reference

#include <solvrdlg.hxx>

Inheritance diagram for ScSolverDlg:
[legend]
Collaboration diagram for ScSolverDlg:
[legend]

Public Member Functions

 ScSolverDlg (SfxBindings *pB, SfxChildWindow *pCW, weld::Window *pParent, ScDocument *pDocument, const ScAddress &aCursorPos)
 
virtual ~ScSolverDlg () override
 
virtual void SetReference (const ScRange &rRef, ScDocument &rDoc) override
 
virtual bool IsRefInputMode () const override
 
virtual void SetActive () override
 
virtual void Close () override
 
- Public Member Functions inherited from ScAnyRefDlgController
 ScAnyRefDlgController (SfxBindings *rt1, SfxChildWindow *rt2, weld::Window *rt3, const OUString &rt4, const OUString &rt5)
 
- Public Member Functions inherited from ScRefHdlrControllerImpl< SfxModelessDialogController >
 ScRefHdlrControllerImpl (weld::Window *pParent, const OUString &rUIXMLDescription, const OUString &rID, const SfxItemSet *pArg, SfxBindings *pB)
 
 ScRefHdlrControllerImpl (SfxBindings *pB, SfxChildWindow *pCW, weld::Window *pParent, const OUString &rUIXMLDescription, const OUString &rID)
 
- Public Member Functions inherited from SfxModelessDialogController
virtual ~SfxModelessDialogController () override
 
void Initialize (SfxChildWinInfo const *pInfo)
 
bool IsClosing () const
 
virtual void Close () override
 
virtual void EndDialog (int nResponse) override
 
virtual void Activate () override
 
virtual void Deactivate () override
 
virtual void ChildWinDispose () override
 
virtual void FillInfo (SfxChildWinInfo &) const
 
SfxBindingsGetBindings () const
 
- Public Member Functions inherited from SfxDialogController
 SfxDialogController (weld::Widget *pParent, const OUString &rUIFile, const OUString &rDialogId)
 
virtual void Activate ()
 
virtual void Deactivate ()
 
virtual void ChildWinDispose ()
 
virtual void Close ()
 
virtual void EndDialog (int nResponse)
 
virtual bool CloseOnHide () const
 
- Public Member Functions inherited from ScRefHandler
 ScRefHandler (SfxDialogController &rController, SfxBindings *pB, bool bBindRef)
 
virtual ~ScRefHandler () COVERITY_NOEXCEPT_FALSE override
 
virtual void SetReference (const ScRange &rRef, ScDocument &rDoc) override=0
 
virtual void AddRefEntry () override
 
virtual bool IsRefInputMode () const override
 
virtual bool IsTableLocked () const override
 
virtual bool IsDocAllowed (SfxObjectShell *pDocSh) const override
 
virtual void ShowReference (const OUString &rStr) override
 
virtual void HideReference (bool bDoneRefMode=true) override
 
virtual void ToggleCollapsed (formula::RefEdit *pEdit, formula::RefButton *pButton) override
 
virtual void ReleaseFocus (formula::RefEdit *pEdit) override
 
virtual void ViewShellChanged () override
 
void SwitchToDocument ()
 
virtual void SetActive () override=0
 
bool EnterRefMode ()
 
bool LeaveRefMode ()
 
bool CanInputDone (bool bForced)
 

Private Member Functions

void Init ()
 
bool CheckTargetValue (const OUString &rStrVal)
 
void RaiseError (ScSolverErr eError)
 
 DECL_LINK (BtnHdl, weld::Button &, void)
 
 DECL_LINK (GetEditFocusHdl, formula::RefEdit &, void)
 
 DECL_LINK (LoseEditFocusHdl, formula::RefEdit &, void)
 
 DECL_LINK (GetButtonFocusHdl, formula::RefButton &, void)
 
 DECL_LINK (LoseButtonFocusHdl, formula::RefButton &, void)
 
 DECL_LINK (GetFocusHdl, weld::Widget &, void)
 

Private Attributes

ScAddress theFormulaCell
 
ScAddress theVariableCell
 
OUString theTargetValStr
 
ScDocumentpDoc
 
const SCTAB nCurTab
 
bool bDlgLostFocus
 
const OUString errMsgInvalidVar
 
const OUString errMsgInvalidForm
 
const OUString errMsgNoFormula
 
const OUString errMsgInvalidVal
 
formula::RefEditm_pEdActive
 
std::unique_ptr< weld::Labelm_xFtFormulaCell
 
std::unique_ptr< formula::RefEditm_xEdFormulaCell
 
std::unique_ptr< formula::RefButtonm_xRBFormulaCell
 
std::unique_ptr< weld::Entrym_xEdTargetVal
 
std::unique_ptr< weld::Labelm_xFtVariableCell
 
std::unique_ptr< formula::RefEditm_xEdVariableCell
 
std::unique_ptr< formula::RefButtonm_xRBVariableCell
 
std::unique_ptr< weld::Buttonm_xBtnOk
 
std::unique_ptr< weld::Buttonm_xBtnCancel
 
std::shared_ptr< weld::MessageDialogm_xMessageBox
 

Additional Inherited Members

- Public Types inherited from ScRefHdlrControllerImpl< SfxModelessDialogController >
enum  
 
- Static Public Member Functions inherited from ScRefHandler
static bool CanInputStart (const formula::RefEdit *pEdit)
 
- Protected Member Functions inherited from SfxModelessDialogController
 SfxModelessDialogController (SfxBindings *, SfxChildWindow *pChildWin, weld::Window *pParent, const OUString &rUIXMLDescription, const OUString &rID)
 
- Protected Member Functions inherited from ScRefHandler
void disposeRefHandler ()
 
bool DoClose (sal_uInt16 nId)
 
void SetDispatcherLock (bool bLock)
 
virtual void RefInputStart (formula::RefEdit *pEdit, formula::RefButton *pButton=nullptr) override
 
virtual void RefInputDone (bool bForced=false) override
 
bool ParseWithNames (ScRangeList &rRanges, std::u16string_view rStr, const ScDocument &pDoc)
 

Detailed Description

Definition at line 33 of file solvrdlg.hxx.

Constructor & Destructor Documentation

◆ ScSolverDlg()

ScSolverDlg::ScSolverDlg ( SfxBindings pB,
SfxChildWindow pCW,
weld::Window pParent,
ScDocument pDocument,
const ScAddress aCursorPos 
)

◆ ~ScSolverDlg()

ScSolverDlg::~ScSolverDlg ( )
overridevirtual

Definition at line 66 of file solvrdlg.cxx.

References m_xMessageBox, and RET_CANCEL.

Member Function Documentation

◆ CheckTargetValue()

bool ScSolverDlg::CheckTargetValue ( const OUString &  rStrVal)
private

◆ Close()

void ScSolverDlg::Close ( )
overridevirtual

Reimplemented from SfxModelessDialogController.

Definition at line 103 of file solvrdlg.cxx.

References ScRefHandler::DoClose().

◆ DECL_LINK() [1/6]

ScSolverDlg::DECL_LINK ( BtnHdl  ,
weld::Button ,
void   
)
private

◆ DECL_LINK() [2/6]

ScSolverDlg::DECL_LINK ( GetButtonFocusHdl  ,
formula::RefButton ,
void   
)
private

◆ DECL_LINK() [3/6]

ScSolverDlg::DECL_LINK ( GetEditFocusHdl  ,
formula::RefEdit ,
void   
)
private

◆ DECL_LINK() [4/6]

ScSolverDlg::DECL_LINK ( GetFocusHdl  ,
weld::Widget ,
void   
)
private

◆ DECL_LINK() [5/6]

ScSolverDlg::DECL_LINK ( LoseButtonFocusHdl  ,
formula::RefButton ,
void   
)
private

◆ DECL_LINK() [6/6]

ScSolverDlg::DECL_LINK ( LoseEditFocusHdl  ,
formula::RefEdit ,
void   
)
private

◆ Init()

void ScSolverDlg::Init ( void  )
private

◆ IsRefInputMode()

bool ScSolverDlg::IsRefInputMode ( ) const
overridevirtual

Reimplemented from ScRefHandler.

Definition at line 174 of file solvrdlg.cxx.

References m_pEdActive.

◆ RaiseError()

void ScSolverDlg::RaiseError ( ScSolverErr  eError)
private

◆ SetActive()

void ScSolverDlg::SetActive ( )
overridevirtual

◆ SetReference()

void ScSolverDlg::SetReference ( const ScRange rRef,
ScDocument rDoc 
)
overridevirtual

Member Data Documentation

◆ bDlgLostFocus

bool ScSolverDlg::bDlgLostFocus
private

Definition at line 53 of file solvrdlg.hxx.

Referenced by SetActive().

◆ errMsgInvalidForm

const OUString ScSolverDlg::errMsgInvalidForm
private

Definition at line 55 of file solvrdlg.hxx.

Referenced by RaiseError().

◆ errMsgInvalidVal

const OUString ScSolverDlg::errMsgInvalidVal
private

Definition at line 57 of file solvrdlg.hxx.

Referenced by RaiseError().

◆ errMsgInvalidVar

const OUString ScSolverDlg::errMsgInvalidVar
private

Definition at line 54 of file solvrdlg.hxx.

Referenced by RaiseError().

◆ errMsgNoFormula

const OUString ScSolverDlg::errMsgNoFormula
private

Definition at line 56 of file solvrdlg.hxx.

Referenced by RaiseError().

◆ m_pEdActive

formula::RefEdit* ScSolverDlg::m_pEdActive
private

Definition at line 59 of file solvrdlg.hxx.

Referenced by Init(), IsRefInputMode(), SetActive(), and SetReference().

◆ m_xBtnCancel

std::unique_ptr<weld::Button> ScSolverDlg::m_xBtnCancel
private

Definition at line 72 of file solvrdlg.hxx.

Referenced by Init().

◆ m_xBtnOk

std::unique_ptr<weld::Button> ScSolverDlg::m_xBtnOk
private

Definition at line 71 of file solvrdlg.hxx.

Referenced by Init().

◆ m_xEdFormulaCell

std::unique_ptr<formula::RefEdit> ScSolverDlg::m_xEdFormulaCell
private

Definition at line 62 of file solvrdlg.hxx.

Referenced by Init(), ScSolverDlg(), and SetReference().

◆ m_xEdTargetVal

std::unique_ptr<weld::Entry> ScSolverDlg::m_xEdTargetVal
private

Definition at line 65 of file solvrdlg.hxx.

Referenced by Init(), and RaiseError().

◆ m_xEdVariableCell

std::unique_ptr<formula::RefEdit> ScSolverDlg::m_xEdVariableCell
private

Definition at line 68 of file solvrdlg.hxx.

Referenced by Init(), ScSolverDlg(), and SetReference().

◆ m_xFtFormulaCell

std::unique_ptr<weld::Label> ScSolverDlg::m_xFtFormulaCell
private

Definition at line 61 of file solvrdlg.hxx.

Referenced by ScSolverDlg().

◆ m_xFtVariableCell

std::unique_ptr<weld::Label> ScSolverDlg::m_xFtVariableCell
private

Definition at line 67 of file solvrdlg.hxx.

Referenced by ScSolverDlg().

◆ m_xMessageBox

std::shared_ptr<weld::MessageDialog> ScSolverDlg::m_xMessageBox
private

Definition at line 74 of file solvrdlg.hxx.

Referenced by RaiseError(), and ~ScSolverDlg().

◆ m_xRBFormulaCell

std::unique_ptr<formula::RefButton> ScSolverDlg::m_xRBFormulaCell
private

Definition at line 63 of file solvrdlg.hxx.

Referenced by Init(), and ScSolverDlg().

◆ m_xRBVariableCell

std::unique_ptr<formula::RefButton> ScSolverDlg::m_xRBVariableCell
private

Definition at line 69 of file solvrdlg.hxx.

Referenced by Init(), and ScSolverDlg().

◆ nCurTab

const SCTAB ScSolverDlg::nCurTab
private

Definition at line 52 of file solvrdlg.hxx.

Referenced by SetReference().

◆ pDoc

ScDocument* ScSolverDlg::pDoc
private

Definition at line 51 of file solvrdlg.hxx.

Referenced by CheckTargetValue(), and Init().

◆ theFormulaCell

ScAddress ScSolverDlg::theFormulaCell
private

Definition at line 47 of file solvrdlg.hxx.

Referenced by Init(), and SetReference().

◆ theTargetValStr

OUString ScSolverDlg::theTargetValStr
private

Definition at line 49 of file solvrdlg.hxx.

◆ theVariableCell

ScAddress ScSolverDlg::theVariableCell
private

Definition at line 48 of file solvrdlg.hxx.

Referenced by SetReference().


The documentation for this class was generated from the following files: