summaryrefslogtreecommitdiffstats
path: root/sc
diff options
context:
space:
mode:
authorCaolán McNamara <caolanm@redhat.com>2013-04-17 13:03:19 +0100
committerCaolán McNamara <caolanm@redhat.com>2013-04-17 14:30:20 +0100
commite983759ee1eedc2397de4ebd248a514e1ae50788 (patch)
tree83245783fc748c20de38ed57bcf3036acca964db /sc
parentadapt solver dialog to .ui conversion (diff)
downloadcore-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.hrc5
-rw-r--r--sc/inc/sc.hrc2
-rw-r--r--sc/source/ui/inc/optsolver.hrc55
-rw-r--r--sc/source/ui/inc/optsolver.hxx109
-rw-r--r--sc/source/ui/miscdlgs/optsolver.cxx350
-rw-r--r--sc/source/ui/src/globstr.src8
-rw-r--r--sc/source/ui/src/optsolver.src421
-rw-r--r--sc/uiconfig/scalc/ui/solverdlg.ui1073
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">&lt;=</item>
- <item translatable="yes">=</item>
- <item translatable="yes">=&gt;</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">&lt;=</item>
- <item translatable="yes">=</item>
- <item translatable="yes">=&gt;</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">&lt;=</item>
- <item translatable="yes">=</item>
- <item translatable="yes">=&gt;</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">&lt;=</item>
- <item translatable="yes">=</item>
- <item translatable="yes">=&gt;</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">&lt;=</item>
+ <item translatable="yes">=</item>
+ <item translatable="yes">=&gt;</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">&lt;=</item>
+ <item translatable="yes">=</item>
+ <item translatable="yes">=&gt;</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">&lt;=</item>
+ <item translatable="yes">=</item>
+ <item translatable="yes">=&gt;</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">&lt;=</item>
+ <item translatable="yes">=</item>
+ <item translatable="yes">=&gt;</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>