public CarSettingsWindow(CarEntity source) : this() { Car = source; if (!string.IsNullOrEmpty(Car.DisplayName)) { Title = String.Format("Редактирование {0} ({1})", Car.DisplayName, Car.Name); } else { Title = String.Format("Редактирование ({0})", Car.Name); } }
private void TrackCarChanges(CarEntity car) { car.PropertyChanged += (s, a) => _worklog.EditCar(car); }
public static CarEntity FromXml(XElement carNode, bool trackChanges = true) { var currentCar = new CarEntity() { Name = carNode.Attribute("Name").Value, DisplayName = carNode.Element("DisplayName").Value, ABS = carNode.Attribute("ABS") != null ? bool.Parse(carNode.Attribute("ABS").Value) : false, AT = carNode.Attribute("AT") != null ? bool.Parse(carNode.Attribute("AT").Value) : false, Description = carNode.Element("Description") != null ? carNode.Element("Description").Value : string.Empty, Author = carNode.Element("Author") != null ? carNode.Element("Author").Value : "Неизвестен", IsIngame = carNode.Name.LocalName == "Car" ? true : false, Version = CarVersion.Unknown }; //determine version try { var targetDir = Path.Combine(App.Current.Properties["GamePath"].ToString(), @"data\physics\cars\", currentCar.Name); var settings = Directory.GetFiles(targetDir, "*.ini"); foreach (var file in settings) { var text = File.ReadAllText(file); if (text.Contains("PhysicsFilenames")) { currentCar.Version = CarVersion.Ver227; break; } if (text.Contains("PhysicsFiles")) { currentCar.Version = CarVersion.Ver228; break; } } } catch { //don't give a f**k } return currentCar; }
public void EditCar(CarEntity car) { _worklog.EditCar(car); }