public void SaveData() { List <JsonDataSaveGroup> json_groups = new List <JsonDataSaveGroup>(); for (int i = 0; i < GroupsWork.Count; i++) { if (GroupsWork[i].GroupData.status == StatusTransfer.Loading) { continue; } JsonDataSaveGroup json_item = new JsonDataSaveGroup(); json_item.fromfolder = GroupsWork[i].fromfolder; json_item.savefolder = GroupsWork[i].savefolder; json_item.Group = GroupsWork[i].GroupData; json_item.AreCut = GroupsWork[i].AreCut; json_groups.Add(json_item); } string json = JsonConvert.SerializeObject(json_groups); if (temp_jsonSaveData == json) { return; } else { temp_jsonSaveData = json; } ReadWriteData.Write(ReadWriteData.File_DataUploadDownload, Encoding.UTF8.GetBytes(json)); }
/// <summary> /// Load data from save file. /// </summary> /// <param name="group_json"></param> internal ItemsTransferManager(JsonDataSaveGroup group_json) { LoadField(); this.GroupData = group_json.Group; this.fromfolder = group_json.fromfolder; this.AreCut = group_json.AreCut; this.savefolder = group_json.savefolder; this.GroupData.status = (group_json.Group.status == StatusTransfer.Done | group_json.Group.status == StatusTransfer.Error) ? group_json.Group.status : StatusTransfer.Stop; foreach (TransferItem item in this.GroupData.items) { item.Group = GroupData; if (item.status == StatusTransfer.Running) { item.status = StatusTransfer.Stop; } item.DataSource.Status = item.status.ToString(); item.SizeString = UnitConventer.ConvertSize(item.From.node.Info.Size, 2, UnitConventer.unit_size); } this.GroupData.change = ChangeTLV.Done; RefreshGroupDataToShow(-1); }