public void InitializeVariable(INumericFormat iNumericFormat, ProcessVar var) { if (var.Enabled) { this.iNumericFormat = iNumericFormat; this.var = var; this.UpdateVariableValue(UnitSystemService.GetInstance().CurrentUnitSystem); if (this.var.Owner is Solvable) { Solvable solvable = this.var.Owner as Solvable; solvable.SolveComplete += new SolveCompleteEventHandler(solvable_SolveComplete); } else { this.var.Owner.ProcessVarValueCommitted += new ProcessVarValueCommittedEventHandler(Owner_ProcessVarValueCommitted); } UnitSystemService.GetInstance().CurrentUnitSystemChanged += new CurrentUnitSystemChangedEventHandler(ProcessVarNonEditableTextBox_CurrentUnitSystemChanged); this.iNumericFormat.NumericFormatStringChanged += new NumericFormatStringChangedEventHandler(iNumericFormat_NumericFormatStringChanged); } else { this.Enabled = false; } }
public static string GetVariableValue(ProcessVar var, UnitSystem unitSystem, string numericFormatStr) { string valStr = null; if (var is ProcessVarDouble) { ProcessVarDouble varDouble = (ProcessVarDouble)var; double val = UnitSystemService.GetInstance().ConvertFromSIValue(var.Type, varDouble.Value); if (varDouble.Value == Constants.NO_VALUE) { valStr = ""; } else { valStr = val.ToString(numericFormatStr); } } else if (var is ProcessVarInt) { ProcessVarInt varInt = (ProcessVarInt)var; if (varInt.Value == Constants.NO_VALUE_INT) { valStr = ""; } else { valStr = varInt.Value.ToString(UI.DECIMAL); } } return(valStr); }
public ProcVarsMoreThenOneOutOfRangeForm(INumericFormat iNumericFormat, IProcessVarOwner solvable, ErrorMessage error) { // // Required for Windows Form Designer support // InitializeComponent(); this.solvable = solvable; this.Text = error.Title; // display the message this.labelMessage.Text = error.Message; IEnumerator en = error.ProcessVarsAndValues.ProcessVarList.GetEnumerator(); while (en.MoveNext()) { ProcessVar pv = (ProcessVar)en.Current; object minMaxVals = error.ProcessVarsAndValues.GetVarRange(pv); MinMaxProcVarElementControl ctrl = new MinMaxProcVarElementControl(iNumericFormat, pv, minMaxVals); ctrl.Dock = DockStyle.Top; this.panelCenter.Controls.Add(ctrl); ctrl.BringToFront(); } }
public CustomEditorForm(Flowsheet flowsheet, CustomEditor editor) { InitializeComponent(); this.flowsheet = flowsheet; this.editor = editor; this.elements = new ArrayList(); this.baseIndex = 0; // compose the header, assuming max 10 columns for (int column = 0; column < 10; column++) { CustomEditorHeaderControl header = new CustomEditorHeaderControl(); header.Location = new System.Drawing.Point(ELEMENT_WIDTH * column, 0); this.panelHeader.Controls.Add(header); } IEnumerator en = this.editor.Variables.GetEnumerator(); while (en.MoveNext()) { ProcessVar var = (ProcessVar)en.Current; this.AddUIElement(var); } this.DisplayElements(); this.editor.ProcessVarAdded += new ProcessVarAddedEventHandler(editor_ProcessVarAdded); this.editor.ProcessVarDeleted += new ProcessVarDeletedEventHandler(editor_ProcessVarDeleted); this.ResizeEnd += new EventHandler(CustomEditorForm_ResizeEnd); }
//public virtual void SetObjectData(SerializationInfo info, StreamingContext context) { public override void SetObjectData() { //public override void SetObjectData() int persistedClassVersion = info.GetInt32("ClassPersistenceVersionCustomEditor"); if (persistedClassVersion == 1) { ArrayList varIds = (ArrayList)info.GetValue("VariableIds", typeof(ArrayList)); //IEnumerator e = varIds.GetEnumerator(); //while (e.MoveNext()) { // int id = (int)e.Current; foreach (int id in varIds) { ProcessVar var = this.flowsheet.EvaporationAndDryingSystem.GetProcessVar(id); this.variables.Add(var); } } else if (persistedClassVersion >= 2) { this.flowsheet = (Flowsheet)info.GetValue("Flowsheet", typeof(Flowsheet)); this.variables = (ArrayList)info.GetValue("Variables", typeof(ArrayList)); } Init(); }
private void OnProcessVarValueCommitted(ProcessVar var) { if (ProcessVarValueCommitted != null) { ProcessVarValueCommitted(var); } }
public void InitializeVariable(INumericFormat iNumericFormat, ProcessVar var) { if (var.Enabled) { this.iNumericFormat = iNumericFormat; this.var = var; this.UpdateVariableValue(UnitSystemService.GetInstance().CurrentUnitSystem); if (this.var.Owner is Solvable) { Solvable solvable = this.var.Owner as Solvable; solvable.SolveComplete += new SolveCompleteEventHandler(solvable_SolveComplete); } else { this.var.Owner.ProcessVarValueCommitted += new ProcessVarValueCommittedEventHandler(Owner_ProcessVarValueCommitted); } UnitSystemService.GetInstance().CurrentUnitSystemChanged += new CurrentUnitSystemChangedEventHandler(ProcessVarTextBox_CurrentUnitSystemChanged); this.iNumericFormat.NumericFormatStringChanged += new NumericFormatStringChangedEventHandler(iNumericFormat_NumericFormatStringChanged); this.Validating += new System.ComponentModel.CancelEventHandler(ProcessVarTextBox_Validating); // NOTE: the subscription to the KeyUp event is done in the context where this textBox is used } else { this.Enabled = false; } }
/// <summary> /// initialize the process variable object /// </summary> /// <param name="iNumericFormat"></param> /// <param name="var"></param> public ProcessVarObj(INumericFormat iNumericFormat, ProcessVar var) { if (var.Enabled) { this.iNumericFormat = iNumericFormat; this.var = var; this.UpdateVariableValue(UnitSystemService.GetInstance().CurrentUnitSystem); if (this.var.Owner is Solvable) { Solvable solvable = this.var.Owner as Solvable; solvable.SolveComplete += new SolveCompleteEventHandler(solvable_SolveComplete); } else { this.var.Owner.ProcessVarValueCommitted += new ProcessVarValueCommittedEventHandler(Owner_ProcessVarValueCommitted); } UnitSystemService.GetInstance().CurrentUnitSystemChanged += new CurrentUnitSystemChangedEventHandler(ProcessVarTextBox_CurrentUnitSystemChanged); this.iNumericFormat.NumericFormatStringChanged += new NumericFormatStringChangedEventHandler(iNumericFormat_NumericFormatStringChanged); // this.Validating += new System.ComponentModel.CancelEventHandler(ProcessVarTextBox_Validating); } else { // this.Enabled = false; } }
public void InitializeVariable(ProcessVar var) { this.var = var; this.Text = SolvableControl.GetVariableName(this.var, UnitSystemService.GetInstance().CurrentUnitSystem); this.var.NameChanged += new NameChangedEventHandler(var_NameChanged); UnitSystemService.GetInstance().CurrentUnitSystemChanged += new CurrentUnitSystemChangedEventHandler(ProcessVarLabel_CurrentUnitSystemChanged); }
private void listBoxSolvable_SelectedIndexChanged(object sender, System.EventArgs e) { this.listViewVariable.Items.Clear(); Solvable s = (Solvable)this.listBoxSolvable.SelectedItem; IList list = null; if (this.variableListType == ProcessVariableListType.All) { list = s.VarList; } else if (this.variableListType == ProcessVariableListType.Calculated) { list = s.CalculatedVarList; } else if (this.variableListType == ProcessVariableListType.Specified) { list = s.SpecifiedVarList; } IEnumerator en = list.GetEnumerator(); while (en.MoveNext()) { ProcessVar pv = (ProcessVar)en.Current; this.listViewVariable.Items.Add(new ListViewVariableItem(pv)); } }
// public void DeleteProcessVar(ProcessVar var) // { // int idx = this.variables.IndexOf(var); // this.variables.RemoveAt(idx); // } private void OnProcessVarAdded(ProcessVar var) { if (ProcessVarAdded != null) { ProcessVarAdded(var); } }
private void listViewUnitOps_SelectedIndexChanged(object sender, System.EventArgs e) { if (this.listViewUnitOps.SelectedItems.Count > 0) { this.Cursor = Cursors.WaitCursor; this.Enabled = false; this.panelVariables.Visible = false; this.panelVariables.Controls.Clear(); this.panelVariables.Controls.Add(this.formulaEditorHeaderControl); ListViewSolvableItem item = (ListViewSolvableItem)this.listViewUnitOps.SelectedItems[0]; UnitOperation uo = item.Solvable as UnitOperation; IEnumerator en = uo.GetAllVariables().GetEnumerator(); while (en.MoveNext()) { ProcessVar pv = (ProcessVar)en.Current; FormulaEditorElementControl ctrl = new FormulaEditorElementControl(pv, this.evapAndDryingSystem.FormulaTable); ctrl.Dock = DockStyle.Top; this.panelVariables.Controls.Add(ctrl); ctrl.BringToFront(); } this.panelVariables.Visible = true; this.Enabled = true; this.Cursor = Cursors.Default; } }
private void AddUIElement(ProcessVar var) { CustomEditorElementControl element = new CustomEditorElementControl(this, this.editor.flowsheet, var); this.panel.Controls.Add(element); elements.Add(element); }
internal void RegisterProcessVar(ProcessVar var) { int id = procVarCounter; var.ID = id; procVarTable.Add(id, var); procVarCounter++; }
public void AddProcessVar(ProcessVar var) { if (!this.IsOnTheList(var)) { this.variables.Add(var); this.OnProcessVarAdded(var); } }
public static string GetVariableName(ProcessVar var, UnitSystem unitSystem) { string name = null; string unit = UnitSystemService.GetInstance().GetUnitAsString(var.Type); if (unit != null && !unit.Trim().Equals("")) name = var.VarTypeName + " (" + unit + ")"; else name = var.VarTypeName; return name; }
private void listViewStreamVariables_DoubleClick(object sender, EventArgs e) { ListViewVariableItem item = (ListViewVariableItem)this.solvableVariablesControlStream.ListViewVariable.SelectedItems[0]; ProcessVar var = item.Variable; if (var != null) { this.editor.AddProcessVar(var); } }
public ProcessVar GetSelectedProcessVar() { ProcessVar pVar = null; if (this.listViewVariable.SelectedItems.Count == 1) { ListViewVariableItem lvvi = this.listViewVariable.SelectedItems[0] as ListViewVariableItem; pVar = lvvi.Variable; } return(pVar); }
public CustomEditorElementControl(CustomEditorForm editorForm, Flowsheet flowsheet, ProcessVar var) { InitializeComponent(); this.editorForm = editorForm; this.var = var; this.labelSolvable.InitializeSolvable(var.Owner as Solvable); this.labelVariable.InitializeVariable(var); this.textBoxValue.InitializeVariable(flowsheet.ApplicationPrefs, var); this.IsSelected = false; }
public void AddProcessVars(ArrayList vars) { IEnumerator e = vars.GetEnumerator(); while (e.MoveNext()) { ProcessVar var = (ProcessVar)e.Current; if (var != null) { this.AddProcessVar(var); } } }
private void EraseOldValue(ProcessVar var) { if (var is ProcessVarDouble) { ProcessVarDouble pvd = var as ProcessVarDouble; pvd.Value = Constants.NO_VALUE; } else if (var is ProcessVarInt) { ProcessVarInt pvi = var as ProcessVarInt; pvi.Value = Constants.NO_VALUE_INT; } }
public static string GetUnitName(ProcessVar var, UnitSystem unitSystem) { string unit = UnitSystemService.GetInstance().GetUnitAsString(var.Type); if (unit != null && !unit.Trim().Equals("")) { return(unit); } else { return(null); } //return unit; }
public virtual void GetObjectData(SerializationInfo info, StreamingContext context) { info.AddValue("ClassPersistenceVersionCustomEditor", CustomEditor.CLASS_PERSISTENCE_VERSION, typeof(int)); ArrayList varIds = new ArrayList(); IEnumerator e = this.Variables.GetEnumerator(); while (e.MoveNext()) { ProcessVar var = (ProcessVar)e.Current; int id = var.ID; varIds.Add(id); } info.AddValue("VariableIds", varIds, typeof(ArrayList)); }
public void SelectProcessVariable(ProcessVar procVar) { for (int i = 0; i < this.listViewVariable.Items.Count; i++) { ListViewVariableItem lvvi = this.listViewVariable.Items[i] as ListViewVariableItem; if (lvvi.Variable.Equals(procVar)) { IProcessVarOwner iProcVarOwner = procVar.Owner; this.SelectProcessVarOwner(iProcVarOwner); lvvi.Selected = true; break; } } }
public void DeleteProcessVars(ArrayList idxs) { // the list of indexes is sorted in descending order ArrayList vars = new ArrayList(); IEnumerator e = idxs.GetEnumerator(); while (e.MoveNext()) { int idx = (int)e.Current; ProcessVar var = (ProcessVar)this.variables[idx]; vars.Add(var); this.variables.RemoveAt(idx); } this.OnProcessVarDeleted(vars, idxs); }
private bool IsOnTheList(ProcessVar var) { bool isOnTheList = false; IEnumerator e = this.variables.GetEnumerator(); while (e.MoveNext()) { ProcessVar v = (ProcessVar)e.Current; if (var.Equals(v)) { isOnTheList = true; break; } } return(isOnTheList); }
public RecommProcVarElementControl(INumericFormat iNumericFormat, ProcessVar var, object recommValue) { // This call is required by the Windows.Forms Form Designer. InitializeComponent(); this.var = var; this.labelName.InitializeVariable(var); this.textBoxExistingValue.InitializeVariable(iNumericFormat, var); // note: the recommended value is not converted to the current unit system, // and it also needs formating if (var is ProcessVarDouble) { double val = (double)recommValue; double val2 = 0.0; val2 = UnitSystemService.GetInstance().ConvertFromSIValue(var.Type, val); if (val2 == Constants.NO_VALUE) { this.textBoxRecommendedValue.Text = ""; } else { this.textBoxRecommendedValue.Text = val2.ToString(iNumericFormat.NumericFormatString); } } else if (var is ProcessVarInt) { int val = (int)recommValue; if (val == Constants.NO_VALUE_INT) { this.textBoxRecommendedValue.Text = ""; } else { this.textBoxRecommendedValue.Text = val.ToString(UI.DECIMAL); } } this.textBoxExistingValue.BackColor = Color.Gainsboro; this.textBoxRecommendedValue.BackColor = Color.Gainsboro; // as convenience, initialize the new value with the recommended value this.textBoxNewValue.Text = this.textBoxRecommendedValue.Text; }
public virtual void SetObjectData(SerializationInfo info, StreamingContext context) { int persistedClassVersion = (int)info.GetValue("ClassPersistenceVersionCustomEditor", typeof(int)); switch (persistedClassVersion) { case 1: ArrayList varIds = (ArrayList)info.GetValue("VariableIds", typeof(ArrayList)); IEnumerator e = varIds.GetEnumerator(); while (e.MoveNext()) { int id = (int)e.Current; ProcessVar var = this.flowsheet.EvaporationAndDryingSystem.GetProcessVar(id); this.Variables.Add(var); } break; } }
public FormulaEditorElementControl(ProcessVar var, Hashtable formulae) { InitializeComponent(); this.var = var; this.formulae = formulae; this.labelId.Text = "v" + var.ID.ToString(); this.labelName.Text = var.Name; this.textBoxFormula.Text = this.formulae[var.ID] as string; if (var.IsSpecified) { this.textBoxFormula.Enabled = true; } else { this.textBoxFormula.Enabled = false; } }
public void InitializeVariable(ProcessVar var) { string unitName; this.var = var; this.Clear(); this.SelectedText = var.VarTypeName; unitName = UI.GetUnitName(this.var, UnitSystemService.GetInstance().CurrentUnitSystem); if (unitName != null) { this.SelectionCharOffset = UI.SUB_CHAR_OFFSET; //superscript this.SelectedText = (" (" + unitName + ")"); //this.AppendText(" (" + unitName + ")"); } // this.Text = UI.GetVariableName(this.var, UnitSystemService.GetInstance().CurrentUnitSystem); this.var.NameChanged += new NameChangedEventHandler(var_NameChanged); UnitSystemService.GetInstance().CurrentUnitSystemChanged += new CurrentUnitSystemChangedEventHandler(ProcessVarLabel_CurrentUnitSystemChanged); }