private void TextBlock_info_flow_MouseUp(object sender, MouseButtonEventArgs e) { TextBlock tb = sender as TextBlock; if (tb == null) { return; } if (string.IsNullOrEmpty(tb.Text)) { return; } InfoFlow infoF = ComponentUtils.StringToInfoFlow(tb.Text); int nrTypes = Enum.GetNames(typeof(InfoFlow)).Length; int tmp = (int)(infoF + 1) % nrTypes; infoF = (InfoFlow)((int)(infoF + 1) % nrTypes); tb.Text = ComponentUtils.InfoFlowToString(infoF); tb.ToolTip = ComponentUtils.InfoFlowStringToDescription(tb.Text); }
// only call when parsing internal Parameter ReconstructParameter(long _id, string _name, string _unit, Category _category, InfoFlow _propagation, double _value_min, double _value_max, double _value_current, bool _is_within_bounds, MultiValue _value_field, long _value_field_ref, MultiValPointer _value_field_pointer, DateTime _time_stamp, string _text_value) { Parameter created = new Parameter(_id, _name, _unit, _category, _propagation, _value_min, _value_max, _value_current, _is_within_bounds, _text_value, _value_field_ref, _value_field_pointer); // value field created.ValueField = _value_field; // resets ValueFieldRef und MValPointer (e.g. if the field is NULL) if (_value_field != null) { created.MValPointer = _value_field_pointer; // DO NOT FORGET to corrct the MValPointer } // time stamp if (_time_stamp != null) { created.TimeStamp = _time_stamp; } else { created.TimeStamp = DateTime.Now; } // check if a valid value table was created if (created == null) { return(null); } // create this.parameter_record.Add(created); // adjust type counter Parameter.NR_PARAMS = Math.Max(Parameter.NR_PARAMS, created.ID); // done return(created); }