diff options
author | Caolán McNamara <caolanm@redhat.com> | 2013-04-17 13:03:19 +0100 |
---|---|---|
committer | Caolán McNamara <caolanm@redhat.com> | 2013-04-17 14:30:20 +0100 |
commit | e983759ee1eedc2397de4ebd248a514e1ae50788 (patch) | |
tree | 83245783fc748c20de38ed57bcf3036acca964db /sc | |
parent | adapt solver dialog to .ui conversion (diff) | |
download | core-e983759ee1eedc2397de4ebd248a514e1ae50788.tar.gz core-e983759ee1eedc2397de4ebd248a514e1ae50788.zip |
adapt code to solver dialog .ui conversion
The vertical scrollbar remains a bit whacky in how it scales and operates when
scrolled, this is unchanged.
Change-Id: I468a87c75f1c1927d0387c4af64c7ad87f4e1922
Diffstat (limited to 'sc')
-rw-r--r-- | sc/inc/globstr.hrc | 5 | ||||
-rw-r--r-- | sc/inc/sc.hrc | 2 | ||||
-rw-r--r-- | sc/source/ui/inc/optsolver.hrc | 55 | ||||
-rw-r--r-- | sc/source/ui/inc/optsolver.hxx | 109 | ||||
-rw-r--r-- | sc/source/ui/miscdlgs/optsolver.cxx | 350 | ||||
-rw-r--r-- | sc/source/ui/src/globstr.src | 8 | ||||
-rw-r--r-- | sc/source/ui/src/optsolver.src | 421 | ||||
-rw-r--r-- | sc/uiconfig/scalc/ui/solverdlg.ui | 1073 |
8 files changed, 829 insertions, 1194 deletions
diff --git a/sc/inc/globstr.hrc b/sc/inc/globstr.hrc index 6392110d88ce..2dd33309a79b 100644 --- a/sc/inc/globstr.hrc +++ b/sc/inc/globstr.hrc @@ -675,7 +675,10 @@ #define STR_INVALIDFORM 540 #define STR_NOFORMULA 541 -#define STR_COUNT 542 +#define STR_INVALIDINPUT 542 +#define STR_INVALIDCONDITION 543 + +#define STR_COUNT 544 #endif diff --git a/sc/inc/sc.hrc b/sc/inc/sc.hrc index 793a746110b1..1832839f3a1d 100644 --- a/sc/inc/sc.hrc +++ b/sc/inc/sc.hrc @@ -1070,7 +1070,7 @@ #define RID_SCDLG_DPNUMGROUP (SC_DIALOGS_START + 135) #define RID_SCDLG_DPDATEGROUP (SC_DIALOGS_START + 136) #define RID_SCDLG_DPSHOWDETAIL (SC_DIALOGS_START + 137) -#define RID_SCDLG_OPTSOLVER (SC_DIALOGS_START + 138) + #define RID_SCDLG_SOLVEROPTIONS (SC_DIALOGS_START + 139) #define RID_SCDLG_SOLVER_INTEGER (SC_DIALOGS_START + 140) #define RID_SCDLG_SOLVER_DOUBLE (SC_DIALOGS_START + 141) diff --git a/sc/source/ui/inc/optsolver.hrc b/sc/source/ui/inc/optsolver.hrc index 23d17ccbbc99..5557cf788dd5 100644 --- a/sc/source/ui/inc/optsolver.hrc +++ b/sc/source/ui/inc/optsolver.hrc @@ -19,25 +19,6 @@ #include "sc.hrc" -#define ED_OBJECTIVECELL 1 -#define ED_TARGET 2 -#define ED_VARIABLECELLS 3 -#define ED_LEFT1 4 -#define ED_LEFT2 5 -#define ED_LEFT3 6 -#define ED_LEFT4 7 -#define ED_RIGHT1 8 -#define ED_RIGHT2 9 -#define ED_RIGHT3 10 -#define ED_RIGHT4 11 - -#define FT_OBJECTIVECELL 1 -#define FT_DIRECTION 2 -#define FT_VARIABLECELLS 3 -#define FT_CELLREF 4 -#define FT_OPERATOR 5 -#define FT_CONSTRAINT 6 - #define FT_PROGRESS 7 #define FT_TIMELIMIT 8 #define FT_NOSOLUTION 9 @@ -49,41 +30,9 @@ #define FL_CONDITIONS 1 #define FL_BUTTONS 2 -#define IB_OBJECTIVECELL 1 -#define IB_TARGET 2 -#define IB_VARIABLECELLS 3 -#define IB_LEFT1 4 -#define IB_LEFT2 5 -#define IB_LEFT3 6 -#define IB_LEFT4 7 -#define IB_RIGHT1 8 -#define IB_RIGHT2 9 -#define IB_RIGHT3 10 -#define IB_RIGHT4 11 -#define IB_DELETE1 12 -#define IB_DELETE2 13 -#define IB_DELETE3 14 -#define IB_DELETE4 15 - -#define LB_OP1 1 -#define LB_OP2 2 -#define LB_OP3 3 -#define LB_OP4 4 - -#define RB_MAX 1 -#define RB_MIN 2 -#define RB_VALUE 3 - -#define SB_SCROLL 1 - -#define BTN_OPTIONS 1 #define BTN_HELP 2 #define BTN_CLOSE 3 -#define BTN_SOLVE 4 -#define BTN_OK 5 -#define BTN_CANCEL 6 - -#define STR_INVALIDINPUT 1 -#define STR_INVALIDCONDITION 2 +#define BTN_OK 4 +#define BTN_CANCEL 5 /* vim:set shiftwidth=4 softtabstop=4 expandtab: */ diff --git a/sc/source/ui/inc/optsolver.hxx b/sc/source/ui/inc/optsolver.hxx index 70b2882f9ccf..b73172837441 100644 --- a/sc/source/ui/inc/optsolver.hxx +++ b/sc/source/ui/inc/optsolver.hxx @@ -43,6 +43,7 @@ class ScCursorRefEdit : public formula::RefEdit public: ScCursorRefEdit( ScAnyRefDlg* pParent, Window *pLabel, const ResId& rResId ); + ScCursorRefEdit( Window* pParent, Window *pLabel ); void SetCursorLinks( const Link& rUp, const Link& rDown ); protected: @@ -106,62 +107,56 @@ public: virtual sal_Bool Close(); private: - FixedText maFtObjectiveCell; - formula::RefEdit maEdObjectiveCell; - formula::RefButton maRBObjectiveCell; - - FixedText maFtDirection; - RadioButton maRbMax; - RadioButton maRbMin; - RadioButton maRbValue; - formula::RefEdit maEdTargetValue; - formula::RefButton maRBTargetValue; - - FixedText maFtVariableCells; - formula::RefEdit maEdVariableCells; - formula::RefButton maRBVariableCells; - - FixedLine maFlConditions; - - FixedText maFtCellRef; // labels are together with controls for the first row - ScCursorRefEdit maEdLeft1; - formula::RefButton maRBLeft1; - FixedText maFtOperator; - ListBox maLbOp1; - FixedText maFtConstraint; - ScCursorRefEdit maEdRight1; - formula::RefButton maRBRight1; - ImageButton maBtnDel1; - - ScCursorRefEdit maEdLeft2; - formula::RefButton maRBLeft2; - ListBox maLbOp2; - ScCursorRefEdit maEdRight2; - formula::RefButton maRBRight2; - ImageButton maBtnDel2; - - ScCursorRefEdit maEdLeft3; - formula::RefButton maRBLeft3; - ListBox maLbOp3; - ScCursorRefEdit maEdRight3; - formula::RefButton maRBRight3; - ImageButton maBtnDel3; - - ScCursorRefEdit maEdLeft4; - formula::RefButton maRBLeft4; - ListBox maLbOp4; - ScCursorRefEdit maEdRight4; - formula::RefButton maRBRight4; - ImageButton maBtnDel4; - - ScrollBar maScrollBar; - - FixedLine maFlButtons; - - PushButton maBtnOpt; - HelpButton maBtnHelp; - CancelButton maBtnCancel; - PushButton maBtnSolve; + FixedText* m_pFtObjectiveCell; + formula::RefEdit* m_pEdObjectiveCell; + formula::RefButton* m_pRBObjectiveCell; + + RadioButton* m_pRbMax; + RadioButton* m_pRbMin; + RadioButton* m_pRbValue; + formula::RefEdit* m_pEdTargetValue; + formula::RefButton* m_pRBTargetValue; + + FixedText* m_pFtVariableCells; + formula::RefEdit* m_pEdVariableCells; + formula::RefButton* m_pRBVariableCells; + + FixedText* m_pFtCellRef; // labels are together with controls for the first row + ScCursorRefEdit* m_pEdLeft1; + formula::RefButton* m_pRBLeft1; + FixedText* m_pFtOperator; + ListBox* m_pLbOp1; + FixedText* m_pFtConstraint; + ScCursorRefEdit* m_pEdRight1; + formula::RefButton* m_pRBRight1; + PushButton* m_pBtnDel1; + + ScCursorRefEdit* m_pEdLeft2; + formula::RefButton* m_pRBLeft2; + ListBox* m_pLbOp2; + ScCursorRefEdit* m_pEdRight2; + formula::RefButton* m_pRBRight2; + PushButton* m_pBtnDel2; + + ScCursorRefEdit* m_pEdLeft3; + formula::RefButton* m_pRBLeft3; + ListBox* m_pLbOp3; + ScCursorRefEdit* m_pEdRight3; + formula::RefButton* m_pRBRight3; + PushButton* m_pBtnDel3; + + ScCursorRefEdit* m_pEdLeft4; + formula::RefButton* m_pRBLeft4; + ListBox* m_pLbOp4; + ScCursorRefEdit* m_pEdRight4; + formula::RefButton* m_pRBRight4; + PushButton* m_pBtnDel4; + + ScrollBar* m_pScrollBar; + + PushButton* m_pBtnOpt; + PushButton* m_pBtnCancel; + PushButton* m_pBtnSolve; String maInputError; String maConditionError; @@ -178,7 +173,7 @@ private: ScCursorRefEdit* mpRightEdit[EDIT_ROW_COUNT]; formula::RefButton* mpRightButton[EDIT_ROW_COUNT]; ListBox* mpOperator[EDIT_ROW_COUNT]; - ImageButton* mpDelButton[EDIT_ROW_COUNT]; + PushButton* mpDelButton[EDIT_ROW_COUNT]; std::vector<ScOptConditionRow> maConditions; long nScrollPos; diff --git a/sc/source/ui/miscdlgs/optsolver.cxx b/sc/source/ui/miscdlgs/optsolver.cxx index e51fea678419..d9bba1097fc2 100644 --- a/sc/source/ui/miscdlgs/optsolver.cxx +++ b/sc/source/ui/miscdlgs/optsolver.cxx @@ -22,6 +22,7 @@ #include <sfx2/bindings.hxx> #include <sfx2/imagemgr.hxx> #include <svl/zforlist.hxx> +#include <vcl/builder.hxx> #include <vcl/msgbox.hxx> #include <vcl/svapp.hxx> @@ -36,6 +37,7 @@ #include "unonames.hxx" #include "solveroptions.hxx" #include "solverutil.hxx" +#include "globstr.hrc" #include "optsolver.hrc" #include "optsolver.hxx" @@ -120,6 +122,17 @@ ScCursorRefEdit::ScCursorRefEdit( ScAnyRefDlg* pParent, Window *pLabel, const Re { } +ScCursorRefEdit::ScCursorRefEdit( Window* pParent, Window *pLabel ) + : formula::RefEdit( pParent, pLabel ) +{ +} + +extern "C" SAL_DLLPUBLIC_EXPORT Window* SAL_CALL makeScCursorRefEdit(Window *pParent, + VclBuilder::stringmap &) +{ + return new ScCursorRefEdit(pParent, NULL); +} + void ScCursorRefEdit::SetCursorLinks( const Link& rUp, const Link& rDown ) { maCursorUpLink = rUp; @@ -168,110 +181,121 @@ ScOptSolverSave::ScOptSolverSave( const String& rObjective, sal_Bool bMax, sal_B ScOptSolverDlg::ScOptSolverDlg( SfxBindings* pB, SfxChildWindow* pCW, Window* pParent, ScDocShell* pDocSh, ScAddress aCursorPos ) - : ScAnyRefDlg( pB, pCW, pParent, "SolverDialog", "modules/scalc/ui/solverdlg.ui" ) - - , - - // - maFtObjectiveCell ( this, ScResId( FT_OBJECTIVECELL ) ), - maEdObjectiveCell ( this, this, &maFtObjectiveCell, ScResId( ED_OBJECTIVECELL ) ), - maRBObjectiveCell ( this, ScResId( IB_OBJECTIVECELL ), &maEdObjectiveCell, this ), - maFtDirection ( this, ScResId( FT_DIRECTION ) ), - maRbMax ( this, ScResId( RB_MAX ) ), - maRbMin ( this, ScResId( RB_MIN ) ), - maRbValue ( this, ScResId( RB_VALUE ) ), - maEdTargetValue ( this, this, NULL, ScResId( ED_TARGET ) ), - maRBTargetValue ( this, ScResId( IB_TARGET ), &maEdTargetValue, this ), - maFtVariableCells ( this, ScResId( FT_VARIABLECELLS ) ), - maEdVariableCells ( this, this, &maFtVariableCells, ScResId( ED_VARIABLECELLS ) ), - maRBVariableCells ( this, ScResId( IB_VARIABLECELLS ), &maEdVariableCells, this), - maFlConditions ( this, ScResId( FL_CONDITIONS ) ), - maFtCellRef ( this, ScResId( FT_CELLREF ) ), - maEdLeft1 ( this, NULL, ScResId( ED_LEFT1 ) ), - maRBLeft1 ( this, ScResId( IB_LEFT1 ), &maEdLeft1, this ), - maFtOperator ( this, ScResId( FT_OPERATOR ) ), - maLbOp1 ( this, ScResId( LB_OP1 ) ), - maFtConstraint ( this, ScResId( FT_CONSTRAINT ) ), - maEdRight1 ( this, NULL, ScResId( ED_RIGHT1 ) ), - maRBRight1 ( this, ScResId( IB_RIGHT1 ), &maEdRight1, this ), - maBtnDel1 ( this, ScResId( IB_DELETE1 ) ), - maEdLeft2 ( this, NULL, ScResId( ED_LEFT2 ) ), - maRBLeft2 ( this, ScResId( IB_LEFT2 ), &maEdLeft2, this ), - maLbOp2 ( this, ScResId( LB_OP2 ) ), - maEdRight2 ( this, NULL, ScResId( ED_RIGHT2 ) ), - maRBRight2 ( this, ScResId( IB_RIGHT2 ), &maEdRight2, this ), - maBtnDel2 ( this, ScResId( IB_DELETE2 ) ), - maEdLeft3 ( this, NULL, ScResId( ED_LEFT3 ) ), - maRBLeft3 ( this, ScResId( IB_LEFT3 ), &maEdLeft3, this ), - maLbOp3 ( this, ScResId( LB_OP3 ) ), - maEdRight3 ( this, NULL, ScResId( ED_RIGHT3 ) ), - maRBRight3 ( this, ScResId( IB_RIGHT3 ), &maEdRight3, this ), - maBtnDel3 ( this, ScResId( IB_DELETE3 ) ), - maEdLeft4 ( this, NULL, ScResId( ED_LEFT4 ) ), - maRBLeft4 ( this, ScResId( IB_LEFT4 ), &maEdLeft4, this ), - maLbOp4 ( this, ScResId( LB_OP4 ) ), - maEdRight4 ( this, NULL, ScResId( ED_RIGHT4 ) ), - maRBRight4 ( this, ScResId( IB_RIGHT4 ), &maEdRight4, this ), - maBtnDel4 ( this, ScResId( IB_DELETE4 ) ), - maScrollBar ( this, ScResId( SB_SCROLL ) ), - maFlButtons ( this, ScResId( FL_BUTTONS ) ), - maBtnOpt ( this, ScResId( BTN_OPTIONS ) ), - maBtnHelp ( this, ScResId( BTN_HELP ) ), - maBtnCancel ( this, ScResId( BTN_CLOSE ) ), - maBtnSolve ( this, ScResId( BTN_SOLVE ) ), - maInputError ( ScResId( STR_INVALIDINPUT ) ), - maConditionError ( ScResId( STR_INVALIDCONDITION ) ), - // - mpDocShell ( pDocSh ), - mpDoc ( pDocSh->GetDocument() ), - mnCurTab ( aCursorPos.Tab() ), - mpEdActive ( NULL ), - mbDlgLostFocus ( false ), - nScrollPos ( 0 ) + : ScAnyRefDlg(pB, pCW, pParent, "SolverDialog", "modules/scalc/ui/solverdlg.ui") + , maInputError(ScGlobal::GetRscString(STR_INVALIDINPUT)) + , maConditionError(ScGlobal::GetRscString(STR_INVALIDCONDITION)) + // + , mpDocShell(pDocSh) + , mpDoc(pDocSh->GetDocument()) + , mnCurTab(aCursorPos.Tab()) + , mpEdActive(NULL) + , mbDlgLostFocus(false) + , nScrollPos(0) { - mpLeftEdit[0] = &maEdLeft1; - mpLeftButton[0] = &maRBLeft1; - mpRightEdit[0] = &maEdRight1; - mpRightButton[0] = &maRBRight1; - mpOperator[0] = &maLbOp1; - mpDelButton[0] = &maBtnDel1; - - mpLeftEdit[1] = &maEdLeft2; - mpLeftButton[1] = &maRBLeft2; - mpRightEdit[1] = &maEdRight2; - mpRightButton[1] = &maRBRight2; - mpOperator[1] = &maLbOp2; - mpDelButton[1] = &maBtnDel2; - - mpLeftEdit[2] = &maEdLeft3; - mpLeftButton[2] = &maRBLeft3; - mpRightEdit[2] = &maEdRight3; - mpRightButton[2] = &maRBRight3; - mpOperator[2] = &maLbOp3; - mpDelButton[2] = &maBtnDel3; - - mpLeftEdit[3] = &maEdLeft4; - mpLeftButton[3] = &maRBLeft4; - mpRightEdit[3] = &maEdRight4; - mpRightButton[3] = &maRBRight4; - mpOperator[3] = &maLbOp4; - mpDelButton[3] = &maBtnDel4; - - maRbMax.SetAccessibleRelationMemberOf(&maFtDirection); - maRbMin.SetAccessibleRelationMemberOf(&maFtDirection); - maRbValue.SetAccessibleRelationMemberOf(&maFtDirection); - maEdLeft2.SetAccessibleName(maFtCellRef.GetText()); - maLbOp2.SetAccessibleName(maFtOperator.GetText()); - maEdRight2.SetAccessibleName(maFtConstraint.GetText()); - maEdLeft3.SetAccessibleName(maFtCellRef.GetText()); - maLbOp3.SetAccessibleName(maFtOperator.GetText()); - maEdRight3.SetAccessibleName(maFtConstraint.GetText()); - maEdLeft4.SetAccessibleName(maFtCellRef.GetText()); - maLbOp4.SetAccessibleName(maFtOperator.GetText()); - maEdRight4.SetAccessibleName(maFtConstraint.GetText()); + get(m_pFtObjectiveCell, "targetlabel"); + get(m_pEdObjectiveCell, "targetedit"); + m_pEdObjectiveCell->SetReferences(this, m_pFtObjectiveCell); + get(m_pRBObjectiveCell, "targetbutton"); + m_pRBObjectiveCell->SetReferences(this, m_pEdObjectiveCell); + get(m_pRbMax, "max"); + get(m_pRbMin, "min"); + get(m_pRbValue, "value"); + get(m_pEdTargetValue, "valueedit"); + m_pEdTargetValue->SetReferences(this, get<FixedText>("result")); + get(m_pRBTargetValue, "valuebutton"); + m_pRBTargetValue->SetReferences(this, m_pEdTargetValue); + get(m_pFtVariableCells, "changelabel"); + get(m_pEdVariableCells, "changeedit"); + m_pEdVariableCells->SetReferences(this, m_pFtVariableCells); + get(m_pRBVariableCells, "changebutton"); + m_pRBVariableCells->SetReferences(this, m_pEdVariableCells); + get(m_pFtCellRef, "cellreflabel"); + get(m_pEdLeft1, "ref1edit"); + m_pEdLeft1->SetReferences(this, m_pFtCellRef); + get(m_pRBLeft1, "ref1button"); + m_pRBLeft1->SetReferences(this, m_pEdLeft1); + get(m_pFtOperator, "oplabel"); + get(m_pLbOp1, "op1list"); + get(m_pFtConstraint, "constraintlabel"); + get(m_pEdRight1, "val1edit"); + m_pEdRight1->SetReferences(this, m_pFtConstraint); + get(m_pRBRight1, "val1button"); + m_pRBRight1->SetReferences(this, m_pEdRight1); + get(m_pBtnDel1, "del1"); + get(m_pEdLeft2, "ref2edit"); + m_pEdLeft2->SetReferences(this, m_pFtCellRef); + get(m_pRBLeft2, "ref2button"); + m_pRBLeft2->SetReferences(this, m_pEdLeft2); + get(m_pLbOp2, "op2list"); + get(m_pEdRight2, "val2edit"); + m_pEdRight2->SetReferences(this, m_pFtConstraint); + get(m_pRBRight2, "val2button"); + m_pRBRight2->SetReferences(this, m_pEdRight2); + get(m_pBtnDel2, "del2"); + get(m_pEdLeft3, "ref3edit"); + m_pEdLeft3->SetReferences(this, m_pFtCellRef); + get(m_pRBLeft3, "ref3button"); + m_pRBLeft3->SetReferences(this, m_pEdLeft3); + get(m_pLbOp3, "op3list"); + get(m_pEdRight3, "val3edit"); + m_pEdRight3->SetReferences(this, m_pFtConstraint); + get(m_pRBRight3, "val3button"); + m_pRBRight3->SetReferences(this, m_pEdRight3); + get(m_pBtnDel3, "del3"); + get(m_pEdLeft4, "ref4edit"); + m_pEdLeft4->SetReferences(this, m_pFtCellRef); + get(m_pRBLeft4, "ref4button"); + m_pRBLeft4->SetReferences(this, m_pEdLeft4); + get(m_pLbOp4, "op4list"); + get(m_pEdRight4, "val4edit"); + m_pEdRight4->SetReferences(this, m_pFtConstraint); + get(m_pRBRight4, "val4button"); + m_pRBRight4->SetReferences(this, m_pEdRight4); + get(m_pBtnDel4, "del4"); + get(m_pScrollBar, "scrollbar"); + get(m_pBtnOpt, "options"); + get(m_pBtnCancel, "close"); + get(m_pBtnSolve, "solve"); + + mpLeftEdit[0] = m_pEdLeft1; + mpLeftButton[0] = m_pRBLeft1; + mpRightEdit[0] = m_pEdRight1; + mpRightButton[0] = m_pRBRight1; + mpOperator[0] = m_pLbOp1; + mpDelButton[0] = m_pBtnDel1; + + mpLeftEdit[1] = m_pEdLeft2; + mpLeftButton[1] = m_pRBLeft2; + mpRightEdit[1] = m_pEdRight2; + mpRightButton[1] = m_pRBRight2; + mpOperator[1] = m_pLbOp2; + mpDelButton[1] = m_pBtnDel2; + + mpLeftEdit[2] = m_pEdLeft3; + mpLeftButton[2] = m_pRBLeft3; + mpRightEdit[2] = m_pEdRight3; + mpRightButton[2] = m_pRBRight3; + mpOperator[2] = m_pLbOp3; + mpDelButton[2] = m_pBtnDel3; + + mpLeftEdit[3] = m_pEdLeft4; + mpLeftButton[3] = m_pRBLeft4; + mpRightEdit[3] = m_pEdRight4; + mpRightButton[3] = m_pRBRight4; + mpOperator[3] = m_pLbOp4; + mpDelButton[3] = m_pBtnDel4; + + m_pEdLeft2->SetAccessibleName(m_pFtCellRef->GetText()); + m_pLbOp2->SetAccessibleName(m_pFtOperator->GetText()); + m_pEdRight2->SetAccessibleName(m_pFtConstraint->GetText()); + m_pEdLeft3->SetAccessibleName(m_pFtCellRef->GetText()); + m_pLbOp3->SetAccessibleName(m_pFtOperator->GetText()); + m_pEdRight3->SetAccessibleName(m_pFtConstraint->GetText()); + m_pEdLeft4->SetAccessibleName(m_pFtCellRef->GetText()); + m_pLbOp4->SetAccessibleName(m_pFtOperator->GetText()); + m_pEdRight4->SetAccessibleName(m_pFtConstraint->GetText()); Init( aCursorPos ); - FreeResource(); } //---------------------------------------------------------------------------- @@ -297,18 +321,18 @@ void ScOptSolverDlg::Init(const ScAddress& rCursorPos) mpDelButton[nRow]->SetModeImage( aDelNm ); } - maBtnOpt.SetClickHdl( LINK( this, ScOptSolverDlg, BtnHdl ) ); - maBtnCancel.SetClickHdl( LINK( this, ScOptSolverDlg, BtnHdl ) ); - maBtnSolve.SetClickHdl( LINK( this, ScOptSolverDlg, BtnHdl ) ); + m_pBtnOpt->SetClickHdl( LINK( this, ScOptSolverDlg, BtnHdl ) ); + m_pBtnCancel->SetClickHdl( LINK( this, ScOptSolverDlg, BtnHdl ) ); + m_pBtnSolve->SetClickHdl( LINK( this, ScOptSolverDlg, BtnHdl ) ); Link aLink = LINK( this, ScOptSolverDlg, GetFocusHdl ); - maEdObjectiveCell.SetGetFocusHdl( aLink ); - maRBObjectiveCell.SetGetFocusHdl( aLink ); - maEdTargetValue.SetGetFocusHdl( aLink ); - maRBTargetValue.SetGetFocusHdl( aLink ); - maEdVariableCells.SetGetFocusHdl( aLink ); - maRBVariableCells.SetGetFocusHdl( aLink ); - maRbValue.SetGetFocusHdl( aLink ); + m_pEdObjectiveCell->SetGetFocusHdl( aLink ); + m_pRBObjectiveCell->SetGetFocusHdl( aLink ); + m_pEdTargetValue->SetGetFocusHdl( aLink ); + m_pRBTargetValue->SetGetFocusHdl( aLink ); + m_pEdVariableCells->SetGetFocusHdl( aLink ); + m_pRBVariableCells->SetGetFocusHdl( aLink ); + m_pRbValue->SetGetFocusHdl( aLink ); for ( sal_uInt16 nRow = 0; nRow < EDIT_ROW_COUNT; ++nRow ) { mpLeftEdit[nRow]->SetGetFocusHdl( aLink ); @@ -319,12 +343,12 @@ void ScOptSolverDlg::Init(const ScAddress& rCursorPos) } aLink = LINK( this, ScOptSolverDlg, LoseFocusHdl ); - maEdObjectiveCell.SetLoseFocusHdl( aLink ); - maRBObjectiveCell.SetLoseFocusHdl( aLink ); - maEdTargetValue. SetLoseFocusHdl( aLink ); - maRBTargetValue. SetLoseFocusHdl( aLink ); - maEdVariableCells.SetLoseFocusHdl( aLink ); - maRBVariableCells.SetLoseFocusHdl( aLink ); + m_pEdObjectiveCell->SetLoseFocusHdl( aLink ); + m_pRBObjectiveCell->SetLoseFocusHdl( aLink ); + m_pEdTargetValue->SetLoseFocusHdl( aLink ); + m_pRBTargetValue-> SetLoseFocusHdl( aLink ); + m_pEdVariableCells->SetLoseFocusHdl( aLink ); + m_pRBVariableCells->SetLoseFocusHdl( aLink ); for ( sal_uInt16 nRow = 0; nRow < EDIT_ROW_COUNT; ++nRow ) { mpLeftEdit[nRow]->SetLoseFocusHdl( aLink ); @@ -345,14 +369,14 @@ void ScOptSolverDlg::Init(const ScAddress& rCursorPos) mpDelButton[nRow]->SetClickHdl( LINK( this, ScOptSolverDlg, DelBtnHdl ) ); mpOperator[nRow]->SetSelectHdl( LINK( this, ScOptSolverDlg, SelectHdl ) ); } - maEdTargetValue.SetModifyHdl( LINK( this, ScOptSolverDlg, TargetModifyHdl ) ); + m_pEdTargetValue->SetModifyHdl( LINK( this, ScOptSolverDlg, TargetModifyHdl ) ); - maScrollBar.SetEndScrollHdl( LINK( this, ScOptSolverDlg, ScrollHdl ) ); - maScrollBar.SetScrollHdl( LINK( this, ScOptSolverDlg, ScrollHdl ) ); + m_pScrollBar->SetEndScrollHdl( LINK( this, ScOptSolverDlg, ScrollHdl ) ); + m_pScrollBar->SetScrollHdl( LINK( this, ScOptSolverDlg, ScrollHdl ) ); - maScrollBar.SetPageSize( EDIT_ROW_COUNT ); - maScrollBar.SetVisibleSize( EDIT_ROW_COUNT ); - maScrollBar.SetLineSize( 1 ); + m_pScrollBar->SetPageSize( EDIT_ROW_COUNT ); + m_pScrollBar->SetVisibleSize( EDIT_ROW_COUNT ); + m_pScrollBar->SetLineSize( 1 ); // Range is set in ShowConditions // get available solver implementations @@ -363,30 +387,30 @@ void ScOptSolverDlg::Init(const ScAddress& rCursorPos) const ScOptSolverSave* pOldData = mpDocShell->GetSolverSaveData(); if ( pOldData ) { - maEdObjectiveCell.SetRefString( pOldData->GetObjective() ); - maRbMax.Check( pOldData->GetMax() ); - maRbMin.Check( pOldData->GetMin() ); - maRbValue.Check( pOldData->GetValue() ); - maEdTargetValue.SetRefString( pOldData->GetTarget() ); - maEdVariableCells.SetRefString( pOldData->GetVariable() ); + m_pEdObjectiveCell->SetRefString( pOldData->GetObjective() ); + m_pRbMax->Check( pOldData->GetMax() ); + m_pRbMin->Check( pOldData->GetMin() ); + m_pRbValue->Check( pOldData->GetValue() ); + m_pEdTargetValue->SetRefString( pOldData->GetTarget() ); + m_pEdVariableCells->SetRefString( pOldData->GetVariable() ); maConditions = pOldData->GetConditions(); maEngine = pOldData->GetEngine(); maProperties = pOldData->GetProperties(); } else { - maRbMax.Check(); + m_pRbMax->Check(); OUString aCursorStr; if ( !mpDoc->GetRangeAtBlock( ScRange(rCursorPos), &aCursorStr ) ) rCursorPos.Format( aCursorStr, SCA_ABS, NULL, mpDoc->GetAddressConvention() ); - maEdObjectiveCell.SetRefString( aCursorStr ); + m_pEdObjectiveCell->SetRefString( aCursorStr ); if ( nImplCount > 0 ) maEngine = maImplNames[0]; // use first implementation } ShowConditions(); - maEdObjectiveCell.GrabFocus(); - mpEdActive = &maEdObjectiveCell; + m_pEdObjectiveCell->GrabFocus(); + mpEdActive = m_pEdObjectiveCell; } //---------------------------------------------------------------------------- @@ -433,8 +457,8 @@ void ScOptSolverDlg::ShowConditions() // allow to scroll one page behind the visible or stored rows long nVisible = nScrollPos + EDIT_ROW_COUNT; long nMax = std::max( nVisible, (long) maConditions.size() ); - maScrollBar.SetRange( Range( 0, nMax + EDIT_ROW_COUNT ) ); - maScrollBar.SetThumbPos( nScrollPos ); + m_pScrollBar->SetRange( Range( 0, nMax + EDIT_ROW_COUNT ) ); + m_pScrollBar->SetThumbPos( nScrollPos ); EnableButtons(); } @@ -482,7 +506,7 @@ void ScOptSolverDlg::SetReference( const ScRange& rRef, ScDocument* pDocP ) RefInputStart(mpEdActive); // "target"/"value": single cell - bool bSingle = ( mpEdActive == &maEdObjectiveCell || mpEdActive == &maEdTargetValue ); + bool bSingle = ( mpEdActive == m_pEdObjectiveCell || mpEdActive == m_pEdTargetValue ); String aStr; ScAddress aAdr = rRef.aStart; @@ -503,7 +527,7 @@ void ScOptSolverDlg::SetReference( const ScRange& rRef, ScDocument* pDocP ) } // variable cells can be several ranges, so only the selection is replaced - if ( mpEdActive == &maEdVariableCells ) + if ( mpEdActive == m_pEdVariableCells ) { String aVal = mpEdActive->GetText(); Selection aSel = mpEdActive->GetSelection(); @@ -521,8 +545,8 @@ void ScOptSolverDlg::SetReference( const ScRange& rRef, ScDocument* pDocP ) EnableButtons(); // select "Value of" if a ref is input into "target" edit - if ( mpEdActive == &maEdTargetValue ) - maRbValue.Check(); + if ( mpEdActive == m_pEdTargetValue ) + m_pRbValue->Check(); } } @@ -538,9 +562,9 @@ sal_Bool ScOptSolverDlg::IsRefInputMode() const IMPL_LINK( ScOptSolverDlg, BtnHdl, PushButton*, pBtn ) { - if ( pBtn == &maBtnSolve || pBtn == &maBtnCancel ) + if ( pBtn == m_pBtnSolve || pBtn == m_pBtnCancel ) { - bool bSolve = ( pBtn == &maBtnSolve ); + bool bSolve = ( pBtn == m_pBtnSolve ); SetDispatcherLock( false ); SwitchToDocument(); @@ -554,8 +578,8 @@ IMPL_LINK( ScOptSolverDlg, BtnHdl, PushButton*, pBtn ) // Close: write dialog settings to DocShell for subsequent calls ReadConditions(); ScOptSolverSave aSave( - maEdObjectiveCell.GetText(), maRbMax.IsChecked(), maRbMin.IsChecked(), maRbValue.IsChecked(), - maEdTargetValue.GetText(), maEdVariableCells.GetText(), maConditions, maEngine, maProperties ); + m_pEdObjectiveCell->GetText(), m_pRbMax->IsChecked(), m_pRbMin->IsChecked(), m_pRbValue->IsChecked(), + m_pEdTargetValue->GetText(), m_pEdVariableCells->GetText(), maConditions, maEngine, maProperties ); mpDocShell->SetSolverSaveData( aSave ); Close(); } @@ -565,7 +589,7 @@ IMPL_LINK( ScOptSolverDlg, BtnHdl, PushButton*, pBtn ) SetDispatcherLock( sal_True ); } } - else if ( pBtn == &maBtnOpt ) + else if ( pBtn == m_pBtnOpt ) { //! move options dialog to UI lib? ScSolverOptionsDialog* pOptDlg = @@ -588,12 +612,12 @@ IMPL_LINK( ScOptSolverDlg, GetFocusHdl, Control*, pCtrl ) Edit* pEdit = NULL; mpEdActive = NULL; - if( pCtrl == &maEdObjectiveCell || pCtrl == &maRBObjectiveCell ) - pEdit = mpEdActive = &maEdObjectiveCell; - else if( pCtrl == &maEdTargetValue || pCtrl == &maRBTargetValue ) - pEdit = mpEdActive = &maEdTargetValue; - else if( pCtrl == &maEdVariableCells || pCtrl == &maRBVariableCells ) - pEdit = mpEdActive = &maEdVariableCells; + if( pCtrl == m_pEdObjectiveCell || pCtrl == m_pRBObjectiveCell ) + pEdit = mpEdActive = m_pEdObjectiveCell; + else if( pCtrl == m_pEdTargetValue || pCtrl == m_pRBTargetValue ) + pEdit = mpEdActive = m_pEdTargetValue; + else if( pCtrl == m_pEdVariableCells || pCtrl == m_pRBVariableCells ) + pEdit = mpEdActive = m_pEdVariableCells; for ( sal_uInt16 nRow = 0; nRow < EDIT_ROW_COUNT; ++nRow ) { if( pCtrl == mpLeftEdit[nRow] || pCtrl == mpLeftButton[nRow] ) @@ -603,8 +627,8 @@ IMPL_LINK( ScOptSolverDlg, GetFocusHdl, Control*, pCtrl ) else if( pCtrl == mpOperator[nRow] ) // focus on "operator" list box mpEdActive = mpRightEdit[nRow]; // use right edit for ref input, but don't change selection } - if( pCtrl == &maRbValue ) // focus on "Value of" radio button - mpEdActive = &maEdTargetValue; // use value edit for ref input, but don't change selection + if( pCtrl == m_pRbValue ) // focus on "Value of" radio button + mpEdActive = m_pEdTargetValue; // use value edit for ref input, but don't change selection if( pEdit ) pEdit->SetSelection( Selection( 0, SELECTION_MAX ) ); @@ -656,8 +680,8 @@ IMPL_LINK_NOARG(ScOptSolverDlg, TargetModifyHdl) { // modify handler for the target edit: // select "Value of" if something is input into the edit - if ( !maEdTargetValue.GetText().isEmpty() ) - maRbValue.Check(); + if ( !m_pEdTargetValue->GetText().isEmpty() ) + m_pRbValue->Check(); return 0; } @@ -680,7 +704,7 @@ IMPL_LINK_NOARG(ScOptSolverDlg, SelectHdl) IMPL_LINK_NOARG(ScOptSolverDlg, ScrollHdl) { ReadConditions(); - nScrollPos = maScrollBar.GetThumbPos(); + nScrollPos = m_pScrollBar->GetThumbPos(); ShowConditions(); if( mpEdActive ) mpEdActive->SetSelection( Selection( 0, SELECTION_MAX ) ); @@ -825,18 +849,18 @@ bool ScOptSolverDlg::CallSolver() // return true -> close dialog after cal uno::Reference<sheet::XSpreadsheetDocument> xDocument( mpDocShell->GetModel(), uno::UNO_QUERY ); ScRange aObjRange; - if ( !ParseRef( aObjRange, maEdObjectiveCell.GetText(), false ) ) + if ( !ParseRef( aObjRange, m_pEdObjectiveCell->GetText(), false ) ) { - ShowError( false, &maEdObjectiveCell ); + ShowError( false, m_pEdObjectiveCell ); return false; } table::CellAddress aObjective( aObjRange.aStart.Tab(), aObjRange.aStart.Col(), aObjRange.aStart.Row() ); // "changing cells" can be several ranges ScRangeList aVarRanges; - if ( !ParseWithNames( aVarRanges, maEdVariableCells.GetText(), mpDoc ) ) + if ( !ParseWithNames( aVarRanges, m_pEdVariableCells->GetText(), mpDoc ) ) { - ShowError( false, &maEdVariableCells ); + ShowError( false, m_pEdVariableCells ); return false; } uno::Sequence<table::CellAddress> aVariables; @@ -927,8 +951,8 @@ bool ScOptSolverDlg::CallSolver() // return true -> close dialog after cal } } - sal_Bool bMaximize = maRbMax.IsChecked(); - if ( maRbValue.IsChecked() ) + sal_Bool bMaximize = m_pRbMax->IsChecked(); + if ( m_pRbValue->IsChecked() ) { // handle "value of" with an additional constraint (and then minimize) @@ -936,7 +960,7 @@ bool ScOptSolverDlg::CallSolver() // return true -> close dialog after cal aConstraint.Left = aObjective; aConstraint.Operator = sheet::SolverConstraintOperator_EQUAL; - String aValStr = maEdTargetValue.GetText(); + String aValStr = m_pEdTargetValue->GetText(); ScRange aRightRange; if ( ParseRef( aRightRange, aValStr, false ) ) aConstraint.Right <<= table::CellAddress( aRightRange.aStart.Tab(), @@ -949,7 +973,7 @@ bool ScOptSolverDlg::CallSolver() // return true -> close dialog after cal aConstraint.Right <<= fValue; else { - ShowError( false, &maEdTargetValue ); + ShowError( false, m_pEdTargetValue ); return false; } } diff --git a/sc/source/ui/src/globstr.src b/sc/source/ui/src/globstr.src index a545d4057801..2cb9d4db7e1a 100644 --- a/sc/source/ui/src/globstr.src +++ b/sc/source/ui/src/globstr.src @@ -2080,6 +2080,14 @@ Resource RID_GLOBSTR { Text [ en-US ] = "Cell must contain a formula." ; }; + String STR_INVALIDINPUT + { + Text [ en-US ] = "Invalid input." ; + }; + String STR_INVALIDCONDITION + { + Text [ en-US ] = "Invalid condition." ; + }; }; /* vim:set shiftwidth=4 softtabstop=4 expandtab: */ diff --git a/sc/source/ui/src/optsolver.src b/sc/source/ui/src/optsolver.src index 53de274e64a4..477baad86a2f 100644 --- a/sc/source/ui/src/optsolver.src +++ b/sc/source/ui/src/optsolver.src @@ -19,427 +19,6 @@ #include "optsolver.hrc" -ModelessDialog RID_SCDLG_OPTSOLVER -{ - OutputSize = TRUE ; - HelpId = CMD_SID_OPENDLG_OPTSOLVER ; - Hide = TRUE ; - SVLook = TRUE ; - Size = MAP_APPFONT ( 250 , 210 ) ; - Text [ en-US ] = "Solver" ; - Moveable = TRUE ; - Closeable = FALSE ; - - FixedText FT_OBJECTIVECELL - { - Pos = MAP_APPFONT ( 6 , 8 ) ; - Size = MAP_APPFONT ( 59 , 8 ) ; - Text [ en-US ] = "Target cell" ; - }; - Edit ED_OBJECTIVECELL - { - HelpID = "sc:Edit:RID_SCDLG_OPTSOLVER:ED_OBJECTIVECELL"; - Border = TRUE ; - Pos = MAP_APPFONT ( 87 , 6 ) ; - Size = MAP_APPFONT ( 130 , 12 ) ; - TabStop = TRUE ; - }; - ImageButton IB_OBJECTIVECELL - { - HelpID = "sc:ImageButton:RID_SCDLG_OPTSOLVER:IB_OBJECTIVECELL"; - Pos = MAP_APPFONT ( 219 , 5 ) ; - Size = MAP_APPFONT ( 13 , 15 ) ; - TabStop = FALSE ; - QuickHelpText [ en-US ] = "Shrink" ; - }; - - FixedText FT_DIRECTION - { - Pos = MAP_APPFONT ( 6 , 24 ) ; - Size = MAP_APPFONT ( 79 , 8 ) ; - Text [ en-US ] = "Optimize result to" ; - }; - RadioButton RB_MAX - { - HelpID = "sc:RadioButton:RID_SCDLG_OPTSOLVER:RB_MAX"; - Pos = MAP_APPFONT ( 87 , 24 ) ; - Size = MAP_APPFONT ( 50 , 10 ) ; - Text [ en-US ] = "Maximum" ; - TabStop = TRUE ; - }; - RadioButton RB_MIN - { - HelpID = "sc:RadioButton:RID_SCDLG_OPTSOLVER:RB_MIN"; - Pos = MAP_APPFONT ( 87 , 38 ) ; - Size = MAP_APPFONT ( 50 , 10 ) ; - Text [ en-US ] = "Minimum" ; - TabStop = TRUE ; - }; - RadioButton RB_VALUE - { - HelpID = "sc:RadioButton:RID_SCDLG_OPTSOLVER:RB_VALUE"; - Pos = MAP_APPFONT ( 87 , 52 ) ; - Size = MAP_APPFONT ( 59 , 10 ) ; - Text [ en-US ] = "Value of" ; - TabStop = TRUE ; - }; - Edit ED_TARGET - { - HelpID = "sc:Edit:RID_SCDLG_OPTSOLVER:ED_TARGET"; - Border = TRUE ; - Pos = MAP_APPFONT ( 148 , 50 ) ; - Size = MAP_APPFONT ( 69 , 12 ) ; - TabStop = TRUE ; - }; - ImageButton IB_TARGET - { - HelpID = "sc:ImageButton:RID_SCDLG_OPTSOLVER:IB_TARGET"; - Pos = MAP_APPFONT ( 219 , 49 ) ; - Size = MAP_APPFONT ( 13 , 15 ) ; - TabStop = FALSE ; - QuickHelpText [ en-US ] = "Shrink" ; - }; - - FixedText FT_VARIABLECELLS - { - Pos = MAP_APPFONT ( 6 , 68 ) ; - Size = MAP_APPFONT ( 79 , 8 ) ; - Text [ en-US ] = "By changing cells" ; - }; - Edit ED_VARIABLECELLS - { - HelpID = "sc:Edit:RID_SCDLG_OPTSOLVER:ED_VARIABLECELLS"; - Border = TRUE ; - Pos = MAP_APPFONT ( 87 , 66 ) ; - Size = MAP_APPFONT ( 130 , 12 ) ; - TabStop = TRUE ; - }; - ImageButton IB_VARIABLECELLS - { - HelpID = "sc:ImageButton:RID_SCDLG_OPTSOLVER:IB_VARIABLECELLS"; - Pos = MAP_APPFONT ( 219 , 65 ) ; - Size = MAP_APPFONT ( 13 , 15 ) ; - TabStop = FALSE ; - QuickHelpText [ en-US ] = "Shrink" ; - }; - - FixedLine FL_CONDITIONS - { - Pos = MAP_APPFONT ( 6 , 88 ) ; - Size = MAP_APPFONT ( 221 , 8 ) ; - Text [ en-US ] = "Limiting conditions" ; - }; - - FixedText FT_CELLREF - { - Pos = MAP_APPFONT ( 12 , 102 ) ; - Size = MAP_APPFONT ( 70 , 8 ) ; - Text [ en-US ] = "Cell reference" ; - }; - FixedText FT_OPERATOR - { - Pos = MAP_APPFONT ( 104 , 102 ) ; - Size = MAP_APPFONT ( 38 , 8 ) ; - Text [ en-US ] = "Operator" ; - }; - FixedText FT_CONSTRAINT - { - Pos = MAP_APPFONT ( 148 , 102 ) ; - Size = MAP_APPFONT ( 70 , 8 ) ; - Text [ en-US ] = "Value" ; - }; - - Edit ED_LEFT1 - { - HelpID = "sc:Edit:RID_SCDLG_OPTSOLVER:ED_LEFT1"; - Border = TRUE ; - Pos = MAP_APPFONT ( 12 , 114 ) ; - Size = MAP_APPFONT ( 73 , 12 ) ; - TabStop = TRUE ; - }; - ImageButton IB_LEFT1 - { - HelpID = "sc:ImageButton:RID_SCDLG_OPTSOLVER:IB_LEFT1"; - Pos = MAP_APPFONT ( 87 , 113 ) ; - Size = MAP_APPFONT ( 13 , 15 ) ; - TabStop = FALSE ; - QuickHelpText [ en-US ] = "Shrink" ; - }; - ListBox LB_OP1 - { - HelpID = "sc:ListBox:RID_SCDLG_OPTSOLVER:LB_OP1"; - Border = TRUE ; - Pos = MAP_APPFONT ( 104 , 114 ) ; - Size = MAP_APPFONT ( 38 , 56 ) ; - TabStop = TRUE ; - DropDown = TRUE ; - StringList [ en-US ] = - { - < "<=" ; Default ; > ; - < "=" ; Default ; > ; - < ">=" ; Default ; > ; - < "Integer" ; Default ; > ; - < "Binary" ; Default ; > ; - }; - }; - Edit ED_RIGHT1 - { - HelpID = "sc:Edit:RID_SCDLG_OPTSOLVER:ED_RIGHT1"; - Border = TRUE ; - Pos = MAP_APPFONT ( 148 , 114 ) ; - Size = MAP_APPFONT ( 53 , 12 ) ; - TabStop = TRUE ; - }; - ImageButton IB_RIGHT1 - { - HelpID = "sc:ImageButton:RID_SCDLG_OPTSOLVER:IB_RIGHT1"; - Pos = MAP_APPFONT ( 203 , 113 ) ; - Size = MAP_APPFONT ( 13 , 15 ) ; - TabStop = FALSE ; - QuickHelpText [ en-US ] = "Shrink" ; - }; - ImageButton IB_DELETE1 - { - HelpID = "sc:ImageButton:RID_SCDLG_OPTSOLVER:IB_DELETE1"; - Pos = MAP_APPFONT ( 219 , 113 ) ; - Size = MAP_APPFONT ( 13 , 15 ) ; - TabStop = TRUE ; - QuickHelpText [ en-US ] = "Remove" ; - // image is set dynamically - }; - - Edit ED_LEFT2 - { - HelpID = "sc:Edit:RID_SCDLG_OPTSOLVER:ED_LEFT2"; - Border = TRUE ; - Pos = MAP_APPFONT ( 12 , 129 ) ; - Size = MAP_APPFONT ( 73 , 12 ) ; - TabStop = TRUE ; - }; - ImageButton IB_LEFT2 - { - HelpID = "sc:ImageButton:RID_SCDLG_OPTSOLVER:IB_LEFT2"; - Pos = MAP_APPFONT ( 87 , 128 ) ; - Size = MAP_APPFONT ( 13 , 15 ) ; - TabStop = FALSE ; - QuickHelpText [ en-US ] = "Shrink" ; - }; - ListBox LB_OP2 - { - HelpID = "sc:ListBox:RID_SCDLG_OPTSOLVER:LB_OP2"; - Border = TRUE ; - Pos = MAP_APPFONT ( 104 , 129 ) ; - Size = MAP_APPFONT ( 38 , 56 ) ; - TabStop = TRUE ; - DropDown = TRUE ; - StringList [ en-US ] = - { - < "<=" ; Default ; > ; - < "=" ; Default ; > ; - < ">=" ; Default ; > ; - < "Integer" ; Default ; > ; - < "Binary" ; Default ; > ; - }; - }; - Edit ED_RIGHT2 - { - HelpID = "sc:Edit:RID_SCDLG_OPTSOLVER:ED_RIGHT2"; - Border = TRUE ; - Pos = MAP_APPFONT ( 148 , 129 ) ; - Size = MAP_APPFONT ( 53 , 12 ) ; - TabStop = TRUE ; - }; - ImageButton IB_RIGHT2 - { - HelpID = "sc:ImageButton:RID_SCDLG_OPTSOLVER:IB_RIGHT2"; - Pos = MAP_APPFONT ( 203 , 128 ) ; - Size = MAP_APPFONT ( 13 , 15 ) ; - TabStop = FALSE ; - QuickHelpText [ en-US ] = "Shrink" ; - }; - ImageButton IB_DELETE2 - { - HelpID = "sc:ImageButton:RID_SCDLG_OPTSOLVER:IB_DELETE2"; - Pos = MAP_APPFONT ( 219 , 128 ) ; - Size = MAP_APPFONT ( 13 , 15 ) ; - TabStop = TRUE ; - QuickHelpText [ en-US ] = "Remove" ; - // image is set dynamically - }; - - Edit ED_LEFT3 - { - HelpID = "sc:Edit:RID_SCDLG_OPTSOLVER:ED_LEFT3"; - Border = TRUE ; - Pos = MAP_APPFONT ( 12 , 144 ) ; - Size = MAP_APPFONT ( 73 , 12 ) ; - TabStop = TRUE ; - }; - ImageButton IB_LEFT3 - { - HelpID = "sc:ImageButton:RID_SCDLG_OPTSOLVER:IB_LEFT3"; - Pos = MAP_APPFONT ( 87 , 143 ) ; - Size = MAP_APPFONT ( 13 , 15 ) ; - TabStop = FALSE ; - QuickHelpText [ en-US ] = "Shrink" ; - }; - ListBox LB_OP3 - { - HelpID = "sc:ListBox:RID_SCDLG_OPTSOLVER:LB_OP3"; - Border = TRUE ; - Pos = MAP_APPFONT ( 104 , 144 ) ; - Size = MAP_APPFONT ( 38 , 56 ) ; - TabStop = TRUE ; - DropDown = TRUE ; - StringList [ en-US ] = - { - < "<=" ; Default ; > ; - < "=" ; Default ; > ; - < ">=" ; Default ; > ; - < "Integer" ; Default ; > ; - < "Binary" ; Default ; > ; - }; - }; - Edit ED_RIGHT3 - { - HelpID = "sc:Edit:RID_SCDLG_OPTSOLVER:ED_RIGHT3"; - Border = TRUE ; - Pos = MAP_APPFONT ( 148 , 144 ) ; - Size = MAP_APPFONT ( 53 , 12 ) ; - TabStop = TRUE ; - }; - ImageButton IB_RIGHT3 - { - HelpID = "sc:ImageButton:RID_SCDLG_OPTSOLVER:IB_RIGHT3"; - Pos = MAP_APPFONT ( 203 , 143 ) ; - Size = MAP_APPFONT ( 13 , 15 ) ; - TabStop = FALSE ; - QuickHelpText [ en-US ] = "Shrink" ; - }; - ImageButton IB_DELETE3 - { - HelpID = "sc:ImageButton:RID_SCDLG_OPTSOLVER:IB_DELETE3"; - Pos = MAP_APPFONT ( 219 , 143 ) ; - Size = MAP_APPFONT ( 13 , 15 ) ; - TabStop = TRUE ; - QuickHelpText [ en-US ] = "Remove" ; - // image is set dynamically - }; - - Edit ED_LEFT4 - { - HelpID = "sc:Edit:RID_SCDLG_OPTSOLVER:ED_LEFT4"; - Border = TRUE ; - Pos = MAP_APPFONT ( 12 , 159 ) ; - Size = MAP_APPFONT ( 73 , 12 ) ; - TabStop = TRUE ; - }; - ImageButton IB_LEFT4 - { - HelpID = "sc:ImageButton:RID_SCDLG_OPTSOLVER:IB_LEFT4"; - Pos = MAP_APPFONT ( 87 , 158 ) ; - Size = MAP_APPFONT ( 13 , 15 ) ; - TabStop = FALSE ; - QuickHelpText [ en-US ] = "Shrink" ; - }; - ListBox LB_OP4 - { - HelpID = "sc:ListBox:RID_SCDLG_OPTSOLVER:LB_OP4"; - Border = TRUE ; - Pos = MAP_APPFONT ( 104 , 159 ) ; - Size = MAP_APPFONT ( 38 , 56 ) ; - TabStop = TRUE ; - DropDown = TRUE ; - StringList [ en-US ] = - { - < "<=" ; Default ; > ; - < "=" ; Default ; > ; - < ">=" ; Default ; > ; - < "Integer" ; Default ; > ; - < "Binary" ; Default ; > ; - }; - }; - Edit ED_RIGHT4 - { - HelpID = "sc:Edit:RID_SCDLG_OPTSOLVER:ED_RIGHT4"; - Border = TRUE ; - Pos = MAP_APPFONT ( 148 , 159 ) ; - Size = MAP_APPFONT ( 53 , 12 ) ; - TabStop = TRUE ; - }; - ImageButton IB_RIGHT4 - { - HelpID = "sc:ImageButton:RID_SCDLG_OPTSOLVER:IB_RIGHT4"; - Pos = MAP_APPFONT ( 203 , 158 ) ; - Size = MAP_APPFONT ( 13 , 15 ) ; - TabStop = FALSE ; - QuickHelpText [ en-US ] = "Shrink" ; - }; - ImageButton IB_DELETE4 - { - HelpID = "sc:ImageButton:RID_SCDLG_OPTSOLVER:IB_DELETE4"; - Pos = MAP_APPFONT ( 219 , 158 ) ; - Size = MAP_APPFONT ( 13 , 15 ) ; - TabStop = TRUE ; - QuickHelpText [ en-US ] = "Remove" ; - // image is set dynamically - }; - - ScrollBar SB_SCROLL - { - Pos = MAP_APPFONT ( 236, 113 ) ; - Size = MAP_APPFONT ( 8 , 59 ) ; - VScroll = TRUE ; - }; - - FixedLine FL_BUTTONS - { - Pos = MAP_APPFONT ( 0 , 179 ) ; - Size = MAP_APPFONT ( 230 , 8 ) ; - }; - - PushButton BTN_OPTIONS - { - HelpID = "sc:PushButton:RID_SCDLG_OPTSOLVER:BTN_OPTIONS"; - Pos = MAP_APPFONT ( 6 , 190 ) ; - Size = MAP_APPFONT ( 50 , 14 ) ; - TabStop = TRUE ; - Text [ en-US ] = "Options..." ; - }; - HelpButton BTN_HELP - { - Pos = MAP_APPFONT ( 69 , 190 ) ; - Size = MAP_APPFONT ( 50 , 14 ) ; - TabStop = TRUE ; - }; - CancelButton BTN_CLOSE - { - Pos = MAP_APPFONT ( 132 , 190 ) ; - Size = MAP_APPFONT ( 50 , 14 ) ; - TabStop = TRUE ; - Text [ en-US ] = "Close" ; - }; - PushButton BTN_SOLVE - { - HelpID = "sc:PushButton:RID_SCDLG_OPTSOLVER:BTN_SOLVE"; - Pos = MAP_APPFONT ( 195 , 190 ) ; - Size = MAP_APPFONT ( 50 , 14 ) ; - TabStop = TRUE ; - Text [ en-US ] = "Solve" ; - DefButton = TRUE ; - }; - - String STR_INVALIDINPUT - { - Text [ en-US ] = "Invalid input." ; - }; - String STR_INVALIDCONDITION - { - Text [ en-US ] = "Invalid condition." ; - }; -}; - - ModelessDialog RID_SCDLG_SOLVER_PROGRESS { OutputSize = TRUE ; diff --git a/sc/uiconfig/scalc/ui/solverdlg.ui b/sc/uiconfig/scalc/ui/solverdlg.ui index 5c6e3440f42b..e4702b02977b 100644 --- a/sc/uiconfig/scalc/ui/solverdlg.ui +++ b/sc/uiconfig/scalc/ui/solverdlg.ui @@ -1,6 +1,7 @@ <?xml version="1.0" encoding="UTF-8"?> <interface> <!-- interface-requires gtk+ 3.0 --> + <!-- interface-requires LibreOffice 1.0 --> <object class="GtkDialog" id="SolverDialog"> <property name="can_focus">False</property> <property name="border_width">6</property> @@ -86,16 +87,20 @@ <object class="GtkBox" id="box1"> <property name="visible">True</property> <property name="can_focus">False</property> + <property name="hexpand">True</property> + <property name="vexpand">True</property> <property name="orientation">vertical</property> <property name="spacing">12</property> <child> <object class="GtkGrid" id="grid2"> <property name="visible">True</property> <property name="can_focus">False</property> + <property name="hexpand">True</property> <property name="row_spacing">6</property> <property name="column_spacing">12</property> + <property name="row_homogeneous">True</property> <child> - <object class="GtkLabel" id="label5"> + <object class="GtkLabel" id="targetlabel"> <property name="visible">True</property> <property name="can_focus">False</property> <property name="xalign">0</property> @@ -110,7 +115,7 @@ </packing> </child> <child> - <object class="GtkLabel" id="label6"> + <object class="GtkLabel" id="result"> <property name="visible">True</property> <property name="can_focus">False</property> <property name="xalign">0</property> @@ -125,13 +130,12 @@ </packing> </child> <child> - <object class="GtkLabel" id="label7"> + <object class="GtkLabel" id="changelabel"> <property name="visible">True</property> <property name="can_focus">False</property> <property name="xalign">0</property> <property name="label" translatable="yes">_By changing cells</property> <property name="use_underline">True</property> - <property name="mnemonic_widget">entry11</property> </object> <packing> <property name="left_attach">0</property> @@ -141,83 +145,28 @@ </packing> </child> <child> - <object class="GtkEntry" id="entry11"> - <property name="visible">True</property> - <property name="can_focus">True</property> - <property name="hexpand">True</property> - <property name="invisible_char">•</property> - <property name="width_chars">32</property> - <property name="invisible_char_set">True</property> - </object> - <packing> - <property name="left_attach">1</property> - <property name="top_attach">4</property> - <property name="width">2</property> - <property name="height">1</property> - </packing> - </child> - <child> - <object class="GtkImage" id="image15"> - <property name="visible">True</property> - <property name="can_focus">False</property> - <property name="stock">gtk-missing-image</property> - </object> - <packing> - <property name="left_attach">3</property> - <property name="top_attach">4</property> - <property name="width">1</property> - <property name="height">1</property> - </packing> - </child> - <child> - <object class="GtkImage" id="image14"> - <property name="visible">True</property> - <property name="can_focus">False</property> - <property name="stock">gtk-missing-image</property> - </object> - <packing> - <property name="left_attach">3</property> - <property name="top_attach">3</property> - <property name="width">1</property> - <property name="height">1</property> - </packing> - </child> - <child> - <object class="GtkRadioButton" id="radiobutton3"> - <property name="label" translatable="yes">_Value of</property> + <object class="GtkRadioButton" id="min"> + <property name="label" translatable="yes">Minim_um</property> <property name="visible">True</property> <property name="can_focus">True</property> <property name="receives_default">False</property> <property name="use_underline">True</property> <property name="xalign">0</property> <property name="draw_indicator">True</property> - <property name="group">radiobutton1</property> + <accessibility> + <relation type="member-of" target="result"/> + </accessibility> </object> <packing> <property name="left_attach">1</property> - <property name="top_attach">3</property> - <property name="width">1</property> - <property name="height">1</property> - </packing> - </child> - <child> - <object class="GtkEntry" id="entry10"> - <property name="visible">True</property> - <property name="can_focus">True</property> - <property name="hexpand">True</property> - <property name="invisible_char">•</property> - <property name="invisible_char_set">True</property> - </object> - <packing> - <property name="left_attach">2</property> - <property name="top_attach">3</property> + <property name="top_attach">2</property> <property name="width">1</property> <property name="height">1</property> </packing> </child> <child> - <object class="GtkRadioButton" id="radiobutton2"> - <property name="label" translatable="yes">Minim_um</property> + <object class="GtkRadioButton" id="max"> + <property name="label" translatable="yes">_Maximum</property> <property name="visible">True</property> <property name="can_focus">True</property> <property name="receives_default">False</property> @@ -225,58 +174,165 @@ <property name="xalign">0</property> <property name="active">True</property> <property name="draw_indicator">True</property> + <property name="group">min</property> + <accessibility> + <relation type="member-of" target="result"/> + </accessibility> </object> <packing> <property name="left_attach">1</property> - <property name="top_attach">2</property> - <property name="width">3</property> + <property name="top_attach">1</property> + <property name="width">1</property> <property name="height">1</property> </packing> </child> <child> - <object class="GtkRadioButton" id="radiobutton1"> - <property name="label" translatable="yes">_Maximum</property> + <object class="GtkBox" id="box2"> <property name="visible">True</property> - <property name="can_focus">True</property> - <property name="receives_default">False</property> - <property name="use_underline">True</property> - <property name="xalign">0</property> - <property name="active">True</property> - <property name="draw_indicator">True</property> + <property name="can_focus">False</property> + <property name="hexpand">True</property> + <property name="spacing">6</property> + <child> + <object class="foruilo-RefEdit" id="changeedit"> + <property name="visible">True</property> + <property name="can_focus">True</property> + <property name="hexpand">True</property> + <property name="width_chars">32</property> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">True</property> + <property name="position">0</property> + </packing> + </child> + <child> + <object class="foruilo-RefButton" id="changebutton"> + <property name="visible">True</property> + <property name="can_focus">True</property> + <property name="receives_default">True</property> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">True</property> + <property name="position">1</property> + </packing> + </child> </object> <packing> <property name="left_attach">1</property> - <property name="top_attach">1</property> - <property name="width">3</property> + <property name="top_attach">4</property> + <property name="width">1</property> <property name="height">1</property> </packing> </child> <child> - <object class="GtkImage" id="image13"> + <object class="GtkBox" id="box4"> <property name="visible">True</property> <property name="can_focus">False</property> - <property name="stock">gtk-missing-image</property> + <property name="hexpand">True</property> + <property name="spacing">6</property> + <child> + <object class="foruilo-RefEdit" id="targetedit"> + <property name="visible">True</property> + <property name="can_focus">True</property> + <property name="hexpand">True</property> + <property name="width_chars">32</property> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">True</property> + <property name="position">0</property> + </packing> + </child> + <child> + <object class="foruilo-RefButton" id="targetbutton"> + <property name="visible">True</property> + <property name="can_focus">True</property> + <property name="receives_default">True</property> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">True</property> + <property name="position">1</property> + </packing> + </child> </object> <packing> - <property name="left_attach">3</property> + <property name="left_attach">1</property> <property name="top_attach">0</property> <property name="width">1</property> <property name="height">1</property> </packing> </child> <child> - <object class="GtkEntry" id="entry9"> + <object class="GtkBox" id="box5"> <property name="visible">True</property> - <property name="can_focus">True</property> + <property name="can_focus">False</property> <property name="hexpand">True</property> - <property name="invisible_char">•</property> - <property name="width_chars">32</property> - <property name="invisible_char_set">True</property> + <property name="spacing">12</property> + <child> + <object class="GtkRadioButton" id="value"> + <property name="label" translatable="yes">_Value of</property> + <property name="visible">True</property> + <property name="can_focus">True</property> + <property name="receives_default">False</property> + <property name="use_underline">True</property> + <property name="xalign">0</property> + <property name="draw_indicator">True</property> + <property name="group">max</property> + <accessibility> + <relation type="member-of" target="result"/> + </accessibility> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">True</property> + <property name="position">0</property> + </packing> + </child> + <child> + <object class="GtkBox" id="box3"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="hexpand">True</property> + <property name="spacing">6</property> + <child> + <object class="foruilo-RefEdit" id="valueedit"> + <property name="visible">True</property> + <property name="can_focus">True</property> + <property name="hexpand">True</property> + <property name="invisible_char">●</property> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">True</property> + <property name="position">0</property> + </packing> + </child> + <child> + <object class="foruilo-RefButton" id="valuebutton"> + <property name="visible">True</property> + <property name="can_focus">True</property> + <property name="receives_default">True</property> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">True</property> + <property name="position">1</property> + </packing> + </child> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">True</property> + <property name="position">1</property> + </packing> + </child> </object> <packing> <property name="left_attach">1</property> - <property name="top_attach">0</property> - <property name="width">2</property> + <property name="top_attach">3</property> + <property name="width">1</property> <property name="height">1</property> </packing> </child> @@ -297,439 +353,460 @@ <object class="GtkFrame" id="frame1"> <property name="visible">True</property> <property name="can_focus">False</property> + <property name="hexpand">True</property> + <property name="vexpand">True</property> <property name="label_xalign">0</property> <property name="shadow_type">none</property> <child> <object class="GtkAlignment" id="alignment1"> <property name="visible">True</property> <property name="can_focus">False</property> + <property name="valign">start</property> + <property name="hexpand">True</property> <property name="top_padding">6</property> <property name="left_padding">12</property> <child> - <object class="GtkBox" id="box2"> + <object class="GtkGrid" id="grid1"> <property name="visible">True</property> <property name="can_focus">False</property> + <property name="valign">start</property> + <property name="hexpand">True</property> + <property name="row_spacing">6</property> + <property name="column_spacing">6</property> <child> - <object class="GtkGrid" id="grid1"> + <object class="GtkLabel" id="cellreflabel"> <property name="visible">True</property> <property name="can_focus">False</property> - <property name="row_spacing">6</property> - <property name="column_spacing">12</property> - <child> - <object class="GtkLabel" id="label2"> - <property name="visible">True</property> - <property name="can_focus">False</property> - <property name="xalign">0</property> - <property name="label" translatable="yes">_Cell reference</property> - <property name="use_underline">True</property> - </object> - <packing> - <property name="left_attach">0</property> - <property name="top_attach">0</property> - <property name="width">1</property> - <property name="height">1</property> - </packing> - </child> - <child> - <object class="GtkLabel" id="label3"> - <property name="visible">True</property> - <property name="can_focus">False</property> - <property name="xalign">0</property> - <property name="label" translatable="yes">_Operator</property> - <property name="use_underline">True</property> - </object> - <packing> - <property name="left_attach">2</property> - <property name="top_attach">0</property> - <property name="width">1</property> - <property name="height">1</property> - </packing> - </child> - <child> - <object class="GtkLabel" id="label4"> - <property name="visible">True</property> - <property name="can_focus">False</property> - <property name="xalign">0</property> - <property name="label" translatable="yes">V_alue</property> - <property name="use_underline">True</property> - </object> - <packing> - <property name="left_attach">3</property> - <property name="top_attach">0</property> - <property name="width">1</property> - <property name="height">1</property> - </packing> - </child> - <child> - <object class="GtkEntry" id="entry1"> - <property name="visible">True</property> - <property name="can_focus">True</property> - <property name="invisible_char">•</property> - </object> - <packing> - <property name="left_attach">0</property> - <property name="top_attach">1</property> - <property name="width">1</property> - <property name="height">1</property> - </packing> - </child> - <child> - <object class="GtkEntry" id="entry2"> - <property name="visible">True</property> - <property name="can_focus">True</property> - <property name="invisible_char">•</property> - </object> - <packing> - <property name="left_attach">0</property> - <property name="top_attach">2</property> - <property name="width">1</property> - <property name="height">1</property> - </packing> - </child> - <child> - <object class="GtkEntry" id="entry3"> - <property name="visible">True</property> - <property name="can_focus">True</property> - <property name="invisible_char">•</property> - </object> - <packing> - <property name="left_attach">0</property> - <property name="top_attach">3</property> - <property name="width">1</property> - <property name="height">1</property> - </packing> - </child> - <child> - <object class="GtkEntry" id="entry4"> - <property name="visible">True</property> - <property name="can_focus">True</property> - <property name="invisible_char">•</property> - </object> - <packing> - <property name="left_attach">0</property> - <property name="top_attach">4</property> - <property name="width">1</property> - <property name="height">1</property> - </packing> - </child> - <child> - <object class="GtkImage" id="image1"> - <property name="visible">True</property> - <property name="can_focus">False</property> - <property name="stock">gtk-missing-image</property> - </object> - <packing> - <property name="left_attach">1</property> - <property name="top_attach">1</property> - <property name="width">1</property> - <property name="height">1</property> - </packing> - </child> - <child> - <object class="GtkImage" id="image2"> - <property name="visible">True</property> - <property name="can_focus">False</property> - <property name="stock">gtk-missing-image</property> - </object> - <packing> - <property name="left_attach">1</property> - <property name="top_attach">2</property> - <property name="width">1</property> - <property name="height">1</property> - </packing> - </child> - <child> - <object class="GtkImage" id="image3"> - <property name="visible">True</property> - <property name="can_focus">False</property> - <property name="stock">gtk-missing-image</property> - </object> - <packing> - <property name="left_attach">1</property> - <property name="top_attach">3</property> - <property name="width">1</property> - <property name="height">1</property> - </packing> - </child> - <child> - <object class="GtkImage" id="image4"> - <property name="visible">True</property> - <property name="can_focus">False</property> - <property name="stock">gtk-missing-image</property> - </object> - <packing> - <property name="left_attach">1</property> - <property name="top_attach">4</property> - <property name="width">1</property> - <property name="height">1</property> - </packing> - </child> - <child> - <object class="GtkComboBoxText" id="comboboxtext1"> - <property name="visible">True</property> - <property name="can_focus">False</property> - <property name="entry_text_column">0</property> - <property name="id_column">1</property> - <items> - <item translatable="yes"><=</item> - <item translatable="yes">=</item> - <item translatable="yes">=></item> - <item translatable="yes">Integer</item> - <item translatable="yes">Binary</item> - </items> - </object> - <packing> - <property name="left_attach">2</property> - <property name="top_attach">1</property> - <property name="width">1</property> - <property name="height">1</property> - </packing> - </child> - <child> - <object class="GtkComboBoxText" id="comboboxtext2"> - <property name="visible">True</property> - <property name="can_focus">False</property> - <property name="entry_text_column">0</property> - <property name="id_column">1</property> - <items> - <item translatable="yes"><=</item> - <item translatable="yes">=</item> - <item translatable="yes">=></item> - <item translatable="yes">Integer</item> - <item translatable="yes">Binary</item> - </items> - </object> - <packing> - <property name="left_attach">2</property> - <property name="top_attach">2</property> - <property name="width">1</property> - <property name="height">1</property> - </packing> - </child> - <child> - <object class="GtkComboBoxText" id="comboboxtext3"> - <property name="visible">True</property> - <property name="can_focus">False</property> - <property name="entry_text_column">0</property> - <property name="id_column">1</property> - <items> - <item translatable="yes"><=</item> - <item translatable="yes">=</item> - <item translatable="yes">=></item> - <item translatable="yes">Integer</item> - <item translatable="yes">Binary</item> - </items> - </object> - <packing> - <property name="left_attach">2</property> - <property name="top_attach">3</property> - <property name="width">1</property> - <property name="height">1</property> - </packing> - </child> - <child> - <object class="GtkComboBoxText" id="comboboxtext4"> - <property name="visible">True</property> - <property name="can_focus">False</property> - <property name="entry_text_column">0</property> - <property name="id_column">1</property> - <items> - <item translatable="yes"><=</item> - <item translatable="yes">=</item> - <item translatable="yes">=></item> - <item translatable="yes">Integer</item> - <item translatable="yes">Binary</item> - </items> - </object> - <packing> - <property name="left_attach">2</property> - <property name="top_attach">4</property> - <property name="width">1</property> - <property name="height">1</property> - </packing> - </child> - <child> - <object class="GtkEntry" id="entry5"> - <property name="visible">True</property> - <property name="can_focus">True</property> - <property name="invisible_char">•</property> - </object> - <packing> - <property name="left_attach">3</property> - <property name="top_attach">1</property> - <property name="width">1</property> - <property name="height">1</property> - </packing> - </child> - <child> - <object class="GtkEntry" id="entry6"> - <property name="visible">True</property> - <property name="can_focus">True</property> - <property name="invisible_char">•</property> - </object> - <packing> - <property name="left_attach">3</property> - <property name="top_attach">2</property> - <property name="width">1</property> - <property name="height">1</property> - </packing> - </child> - <child> - <object class="GtkEntry" id="entry7"> - <property name="visible">True</property> - <property name="can_focus">True</property> - <property name="invisible_char">•</property> - </object> - <packing> - <property name="left_attach">3</property> - <property name="top_attach">3</property> - <property name="width">1</property> - <property name="height">1</property> - </packing> - </child> - <child> - <object class="GtkEntry" id="entry8"> - <property name="visible">True</property> - <property name="can_focus">True</property> - <property name="invisible_char">•</property> - </object> - <packing> - <property name="left_attach">3</property> - <property name="top_attach">4</property> - <property name="width">1</property> - <property name="height">1</property> - </packing> - </child> - <child> - <object class="GtkImage" id="image5"> - <property name="visible">True</property> - <property name="can_focus">False</property> - <property name="stock">gtk-missing-image</property> - </object> - <packing> - <property name="left_attach">4</property> - <property name="top_attach">1</property> - <property name="width">1</property> - <property name="height">1</property> - </packing> - </child> - <child> - <object class="GtkImage" id="image6"> - <property name="visible">True</property> - <property name="can_focus">False</property> - <property name="stock">gtk-missing-image</property> - </object> - <packing> - <property name="left_attach">4</property> - <property name="top_attach">2</property> - <property name="width">1</property> - <property name="height">1</property> - </packing> - </child> - <child> - <object class="GtkImage" id="image7"> - <property name="visible">True</property> - <property name="can_focus">False</property> - <property name="stock">gtk-missing-image</property> - </object> - <packing> - <property name="left_attach">4</property> - <property name="top_attach">3</property> - <property name="width">1</property> - <property name="height">1</property> - </packing> - </child> - <child> - <object class="GtkImage" id="image8"> - <property name="visible">True</property> - <property name="can_focus">False</property> - <property name="stock">gtk-missing-image</property> - </object> - <packing> - <property name="left_attach">4</property> - <property name="top_attach">4</property> - <property name="width">1</property> - <property name="height">1</property> - </packing> - </child> - <child> - <object class="GtkImage" id="image9"> - <property name="visible">True</property> - <property name="can_focus">False</property> - <property name="stock">gtk-missing-image</property> - </object> - <packing> - <property name="left_attach">5</property> - <property name="top_attach">1</property> - <property name="width">1</property> - <property name="height">1</property> - </packing> - </child> - <child> - <object class="GtkImage" id="image10"> - <property name="visible">True</property> - <property name="can_focus">False</property> - <property name="stock">gtk-missing-image</property> - </object> - <packing> - <property name="left_attach">5</property> - <property name="top_attach">2</property> - <property name="width">1</property> - <property name="height">1</property> - </packing> - </child> - <child> - <object class="GtkImage" id="image11"> - <property name="visible">True</property> - <property name="can_focus">False</property> - <property name="stock">gtk-missing-image</property> - </object> - <packing> - <property name="left_attach">5</property> - <property name="top_attach">3</property> - <property name="width">1</property> - <property name="height">1</property> - </packing> - </child> - <child> - <object class="GtkImage" id="image12"> - <property name="visible">True</property> - <property name="can_focus">False</property> - <property name="stock">gtk-missing-image</property> - </object> - <packing> - <property name="left_attach">5</property> - <property name="top_attach">4</property> - <property name="width">1</property> - <property name="height">1</property> - </packing> - </child> - <child> - <placeholder/> - </child> - <child> - <placeholder/> - </child> - <child> - <placeholder/> - </child> + <property name="xalign">0</property> + <property name="label" translatable="yes">_Cell reference</property> + <property name="use_underline">True</property> </object> <packing> - <property name="expand">False</property> - <property name="fill">True</property> - <property name="position">0</property> + <property name="left_attach">0</property> + <property name="top_attach">0</property> + <property name="width">2</property> + <property name="height">1</property> </packing> </child> <child> - <object class="GtkScrollbar" id="scrollbar1"> + <object class="GtkLabel" id="oplabel"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="xalign">0</property> + <property name="label" translatable="yes">_Operator</property> + <property name="use_underline">True</property> + </object> + <packing> + <property name="left_attach">2</property> + <property name="top_attach">0</property> + <property name="width">1</property> + <property name="height">1</property> + </packing> + </child> + <child> + <object class="GtkLabel" id="constraintlabel"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="margin_left">6</property> + <property name="xalign">0</property> + <property name="label" translatable="yes">V_alue</property> + <property name="use_underline">True</property> + </object> + <packing> + <property name="left_attach">3</property> + <property name="top_attach">0</property> + <property name="width">4</property> + <property name="height">1</property> + </packing> + </child> + <child> + <object class="sclo-ScCursorRefEdit" id="ref1edit"> + <property name="visible">True</property> + <property name="can_focus">True</property> + <property name="hexpand">True</property> + <property name="invisible_char">●</property> + <property name="width_chars">20</property> + </object> + <packing> + <property name="left_attach">0</property> + <property name="top_attach">1</property> + <property name="width">1</property> + <property name="height">1</property> + </packing> + </child> + <child> + <object class="sclo-ScCursorRefEdit" id="ref2edit"> + <property name="visible">True</property> + <property name="can_focus">True</property> + <property name="hexpand">True</property> + <property name="invisible_char">●</property> + <property name="width_chars">20</property> + </object> + <packing> + <property name="left_attach">0</property> + <property name="top_attach">2</property> + <property name="width">1</property> + <property name="height">1</property> + </packing> + </child> + <child> + <object class="sclo-ScCursorRefEdit" id="ref3edit"> + <property name="visible">True</property> + <property name="can_focus">True</property> + <property name="hexpand">True</property> + <property name="invisible_char">●</property> + <property name="width_chars">20</property> + </object> + <packing> + <property name="left_attach">0</property> + <property name="top_attach">3</property> + <property name="width">1</property> + <property name="height">1</property> + </packing> + </child> + <child> + <object class="sclo-ScCursorRefEdit" id="ref4edit"> + <property name="visible">True</property> + <property name="can_focus">True</property> + <property name="hexpand">True</property> + <property name="invisible_char">●</property> + <property name="width_chars">20</property> + </object> + <packing> + <property name="left_attach">0</property> + <property name="top_attach">4</property> + <property name="width">1</property> + <property name="height">1</property> + </packing> + </child> + <child> + <object class="foruilo-RefButton" id="ref1button"> + <property name="visible">True</property> + <property name="can_focus">True</property> + <property name="receives_default">True</property> + </object> + <packing> + <property name="left_attach">1</property> + <property name="top_attach">1</property> + <property name="width">1</property> + <property name="height">1</property> + </packing> + </child> + <child> + <object class="foruilo-RefButton" id="ref2button"> + <property name="visible">True</property> + <property name="can_focus">True</property> + <property name="receives_default">True</property> + </object> + <packing> + <property name="left_attach">1</property> + <property name="top_attach">2</property> + <property name="width">1</property> + <property name="height">1</property> + </packing> + </child> + <child> + <object class="foruilo-RefButton" id="ref3button"> + <property name="visible">True</property> + <property name="can_focus">True</property> + <property name="receives_default">True</property> + </object> + <packing> + <property name="left_attach">1</property> + <property name="top_attach">3</property> + <property name="width">1</property> + <property name="height">1</property> + </packing> + </child> + <child> + <object class="foruilo-RefButton" id="ref4button"> + <property name="visible">True</property> + <property name="can_focus">True</property> + <property name="receives_default">True</property> + </object> + <packing> + <property name="left_attach">1</property> + <property name="top_attach">4</property> + <property name="width">1</property> + <property name="height">1</property> + </packing> + </child> + <child> + <object class="GtkComboBoxText" id="op1list"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="entry_text_column">0</property> + <property name="id_column">1</property> + <items> + <item translatable="yes"><=</item> + <item translatable="yes">=</item> + <item translatable="yes">=></item> + <item translatable="yes">Integer</item> + <item translatable="yes">Binary</item> + </items> + </object> + <packing> + <property name="left_attach">2</property> + <property name="top_attach">1</property> + <property name="width">1</property> + <property name="height">1</property> + </packing> + </child> + <child> + <object class="GtkComboBoxText" id="op2list"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="entry_text_column">0</property> + <property name="id_column">1</property> + <items> + <item translatable="yes"><=</item> + <item translatable="yes">=</item> + <item translatable="yes">=></item> + <item translatable="yes">Integer</item> + <item translatable="yes">Binary</item> + </items> + </object> + <packing> + <property name="left_attach">2</property> + <property name="top_attach">2</property> + <property name="width">1</property> + <property name="height">1</property> + </packing> + </child> + <child> + <object class="GtkComboBoxText" id="op3list"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="entry_text_column">0</property> + <property name="id_column">1</property> + <items> + <item translatable="yes"><=</item> + <item translatable="yes">=</item> + <item translatable="yes">=></item> + <item translatable="yes">Integer</item> + <item translatable="yes">Binary</item> + </items> + </object> + <packing> + <property name="left_attach">2</property> + <property name="top_attach">3</property> + <property name="width">1</property> + <property name="height">1</property> + </packing> + </child> + <child> + <object class="GtkComboBoxText" id="op4list"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="entry_text_column">0</property> + <property name="id_column">1</property> + <items> + <item translatable="yes"><=</item> + <item translatable="yes">=</item> + <item translatable="yes">=></item> + <item translatable="yes">Integer</item> + <item translatable="yes">Binary</item> + </items> + </object> + <packing> + <property name="left_attach">2</property> + <property name="top_attach">4</property> + <property name="width">1</property> + <property name="height">1</property> + </packing> + </child> + <child> + <object class="sclo-ScCursorRefEdit" id="val1edit"> + <property name="visible">True</property> + <property name="can_focus">True</property> + <property name="margin_left">6</property> + <property name="hexpand">True</property> + <property name="invisible_char">●</property> + <property name="width_chars">15</property> + </object> + <packing> + <property name="left_attach">3</property> + <property name="top_attach">1</property> + <property name="width">1</property> + <property name="height">1</property> + </packing> + </child> + <child> + <object class="sclo-ScCursorRefEdit" id="val2edit"> + <property name="visible">True</property> + <property name="can_focus">True</property> + <property name="margin_left">6</property> + <property name="hexpand">True</property> + <property name="invisible_char">●</property> + <property name="width_chars">15</property> + </object> + <packing> + <property name="left_attach">3</property> + <property name="top_attach">2</property> + <property name="width">1</property> + <property name="height">1</property> + </packing> + </child> + <child> + <object class="sclo-ScCursorRefEdit" id="val3edit"> + <property name="visible">True</property> + <property name="can_focus">True</property> + <property name="margin_left">6</property> + <property name="hexpand">True</property> + <property name="invisible_char">●</property> + <property name="width_chars">15</property> + </object> + <packing> + <property name="left_attach">3</property> + <property name="top_attach">3</property> + <property name="width">1</property> + <property name="height">1</property> + </packing> + </child> + <child> + <object class="sclo-ScCursorRefEdit" id="val4edit"> + <property name="visible">True</property> + <property name="can_focus">True</property> + <property name="margin_left">6</property> + <property name="hexpand">True</property> + <property name="invisible_char">●</property> + <property name="width_chars">15</property> + </object> + <packing> + <property name="left_attach">3</property> + <property name="top_attach">4</property> + <property name="width">1</property> + <property name="height">1</property> + </packing> + </child> + <child> + <object class="foruilo-RefButton" id="val1button"> + <property name="visible">True</property> + <property name="can_focus">True</property> + <property name="receives_default">True</property> + </object> + <packing> + <property name="left_attach">4</property> + <property name="top_attach">1</property> + <property name="width">1</property> + <property name="height">1</property> + </packing> + </child> + <child> + <object class="foruilo-RefButton" id="val2button"> + <property name="visible">True</property> + <property name="can_focus">True</property> + <property name="receives_default">True</property> + </object> + <packing> + <property name="left_attach">4</property> + <property name="top_attach">2</property> + <property name="width">1</property> + <property name="height">1</property> + </packing> + </child> + <child> + <object class="foruilo-RefButton" id="val3button"> + <property name="visible">True</property> + <property name="can_focus">True</property> + <property name="receives_default">True</property> + </object> + <packing> + <property name="left_attach">4</property> + <property name="top_attach">3</property> + <property name="width">1</property> + <property name="height">1</property> + </packing> + </child> + <child> + <object class="foruilo-RefButton" id="val4button"> + <property name="visible">True</property> + <property name="can_focus">True</property> + <property name="receives_default">True</property> + </object> + <packing> + <property name="left_attach">4</property> + <property name="top_attach">4</property> + <property name="width">1</property> + <property name="height">1</property> + </packing> + </child> + <child> + <object class="GtkButton" id="del2"> + <property name="visible">True</property> + <property name="can_focus">True</property> + <property name="receives_default">True</property> + <property name="has_tooltip">True</property> + <property name="tooltip_markup" translatable="yes">Remove</property> + <property name="tooltip_text" translatable="yes">Remove</property> + </object> + <packing> + <property name="left_attach">5</property> + <property name="top_attach">2</property> + <property name="width">1</property> + <property name="height">1</property> + </packing> + </child> + <child> + <object class="GtkButton" id="del1"> + <property name="visible">True</property> + <property name="can_focus">True</property> + <property name="receives_default">True</property> + <property name="has_tooltip">True</property> + <property name="tooltip_markup" translatable="yes">Remove</property> + <property name="tooltip_text" translatable="yes">Remove</property> + </object> + <packing> + <property name="left_attach">5</property> + <property name="top_attach">1</property> + <property name="width">1</property> + <property name="height">1</property> + </packing> + </child> + <child> + <object class="GtkButton" id="del3"> + <property name="visible">True</property> + <property name="can_focus">True</property> + <property name="receives_default">True</property> + <property name="has_tooltip">True</property> + <property name="tooltip_markup" translatable="yes">Remove</property> + <property name="tooltip_text" translatable="yes">Remove</property> + </object> + <packing> + <property name="left_attach">5</property> + <property name="top_attach">3</property> + <property name="width">1</property> + <property name="height">1</property> + </packing> + </child> + <child> + <object class="GtkButton" id="del4"> + <property name="visible">True</property> + <property name="can_focus">True</property> + <property name="receives_default">True</property> + <property name="has_tooltip">True</property> + <property name="tooltip_markup" translatable="yes">Remove</property> + <property name="tooltip_text" translatable="yes">Remove</property> + </object> + <packing> + <property name="left_attach">5</property> + <property name="top_attach">4</property> + <property name="width">1</property> + <property name="height">1</property> + </packing> + </child> + <child> + <object class="GtkScrollbar" id="scrollbar"> + <property name="height_request">1</property> <property name="visible">True</property> <property name="can_focus">False</property> <property name="orientation">vertical</property> </object> <packing> - <property name="expand">False</property> - <property name="fill">True</property> - <property name="position">1</property> + <property name="left_attach">6</property> + <property name="top_attach">1</property> + <property name="width">1</property> + <property name="height">4</property> </packing> </child> </object> |