public ViewModel([NotNull] DarkKn5ObjectRenderer renderer, [NotNull] CarObject carObject, string skinId) { if (renderer == null) { throw new ArgumentNullException(nameof(renderer)); } Renderer = renderer; Settings = new CmPreviewsSettings(renderer); renderer.PropertyChanged += Renderer_PropertyChanged; Renderer_CarNodeUpdated(); renderer.Tick += Renderer_Tick; Car = carObject; Skin = skinId == null ? Car.SelectedSkin : Car.GetSkinById(skinId); Car.SkinsManager.EnsureLoadedAsync().Forget(); Saveable = new SaveHelper <SaveableData>("__CmPreviewsTools", () => new SaveableData(), o => { }, () => { Reset(false); }); }
/// <summary> /// Get checksum of specified preset. /// </summary> public static string GetChecksum(string presetFilename = null) { return(CmPreviewsSettings.GetSavedOptions(presetFilename).GetChecksum()); }
public static Task <IReadOnlyList <UpdatePreviewError> > UpdatePreview(IReadOnlyList <ToUpdatePreview> entries, string presetFilename = null) { return(UpdatePreview(entries, CmPreviewsSettings.GetSavedOptions(presetFilename), GetPresetName())); }