///////////////////////////////////////// protected override void OnEnabledInHierarchyChanged() { base.OnEnabledInHierarchyChanged(); if (!insideDoUpdate && EnabledInHierarchy && IsNeedUpdate()) { if (!DoUpdate(null, out string error)) { var virtualFileName = ParentRoot.HierarchyController?.CreatedByResource?.Owner.Name; if (string.IsNullOrEmpty(virtualFileName)) { virtualFileName = "NO FILE NAME"; } var error2 = $"Unable to load or import resource \"{virtualFileName}\".\r\n\r\n" + error; Log.Error(error2); return; } //save to file if (HierarchyController != null && HierarchyController.CreatedByResource != null && HierarchyController.CreatedByResource.InstanceType == Resource.InstanceType.Resource && HierarchyController.CreatedByResource.Owner.LoadFromFile) { var resource = HierarchyController.CreatedByResource.Owner; string virtualPath = resource.Name + resource.GetSaveAddFileExtension(); string realPath = VirtualPathUtility.GetRealPathByVirtual(virtualPath); if (!File.Exists(realPath) && Components.Count != 0) { if (!ComponentUtility.SaveComponentToFile(this, realPath, null, out error)) { Log.Warning(error); return; } } } } }
public static void SaveToFileAndUpdate() { try { var fileName = ComponentUtility.GetOwnedFileNameOfComponent(Get); var realPath = VirtualPathUtility.GetRealPathByVirtual(fileName); string error; if (ComponentUtility.SaveComponentToFile(Get, realPath, null, out error)) { //return true; } else { //Log.Error( error ); //return false; } //reload _SettingsComponentSetNull(); } catch { } }