public object Deserialize(object o, Altaxo.Serialization.Xml.IXmlDeserializationInfo info, object parent) { LinearScale s = null != o ? (LinearScale)o : new LinearScale(); s._baseOrg = info.GetDouble("BaseOrg"); s._baseEnd = info.GetDouble("BaseEnd"); s._majorSpan = info.GetDouble("MajorSpan"); s._minorTicks = info.GetInt32("MinorTicks"); s._axisOrgByMajor = info.GetDouble("OrgByMajor"); s._axisEndByMajor = info.GetDouble("EndByMajor"); bool AxisOrgFixed = info.GetBoolean("OrgFixed"); bool AxisEndFixed = info.GetBoolean("EndFixed"); s._dataBounds = (FiniteNumericalBoundaries)info.GetValue("Bounds", s); s.SetCachedValues(); // restore the event chain s._dataBounds.ParentObject = s; s._rescaling = new LinearScaleRescaleConditions(); s._rescaling.SetUserParameters(AxisOrgFixed ? BoundaryRescaling.Fixed : BoundaryRescaling.Auto, s.Org, AxisEndFixed ? BoundaryRescaling.Fixed : BoundaryRescaling.Auto, s.End); s._rescaling.ParentObject = s; return(s); }