Fixed: session file writing bad format

This commit is contained in:
Ray committed 2021-07-23 14:38:07 +01:00
1 parent 515b81920f
commit dd32aee9d9
3 files changed
+34 -4

No files matched your search

+15 -2
View File
@@ -277,7 +277,16 @@ namespace FizzyLauncher
options.Converters.Add(new JsonPointConverter());
options.Converters.Add(new JsonSizeConverter());
this.CurrentSession = JsonSerializer.Deserialize<LauncherSession>(sourceCode, options);
try
{
this.CurrentSession = JsonSerializer.Deserialize<LauncherSession>(sourceCode, options);
}
catch (Exception exc)
{
MessageBox.Show("Unable to read session", "Load session");
return;
}
if (this.CurrentSession == null)
{
this.CurrentSession = new LauncherSession();
@@ -361,9 +370,13 @@ namespace FizzyLauncher
this.CurrentSession.Groups.Add(container.Model);
}
var options = new JsonSerializerOptions();
options.Converters.Add(new JsonPointConverter());
options.Converters.Add(new JsonSizeConverter());
try
{
File.WriteAllText(filename, JsonSerializer.Serialize(this.CurrentSession));
File.WriteAllText(filename, JsonSerializer.Serialize(this.CurrentSession, options));
if (showNotices)
{
+8 -1
View File
@@ -1,14 +1,21 @@
using System.Collections.Generic;
using FizzyLauncher.Text.Json;
using System.Collections.Generic;
using System.Drawing;
using System.Text.Json.Serialization;
namespace FizzyLauncher.Models
{
public class TileGroupModel
{
public string Title { get; set; }
public bool IsExpanded { get; set; } = false;
public bool IsExclusive { get; set; } = false;
public List<TileModel> Items { get; set; } = new List<TileModel>();
[JsonConverter(typeof(JsonSizeConverter))]
public Size GridSize { get; set; } = new Size(0, 0);
}
}
+11 -1
View File
@@ -1,21 +1,31 @@
using System;
using FizzyLauncher.Text.Json;
using System;
using System.Collections.Generic;
using System.Diagnostics;
using System.Drawing;
using System.Text.Json.Serialization;
namespace FizzyLauncher.Models
{
public class TileModel
{
public string Title { get; set; }
public string ProcessFilename { get; set; }
public string ProcessArgument { get; set; }
public string ProcessWorkingDirectory { get; set; }
public ProcessWindowStyle ProcessWindowStyle { get; set; } = ProcessWindowStyle.Normal;
public bool ProcessAsAdmin { get; set; } = false;
[JsonConverter(typeof(JsonPointConverter))]
public Point Position { get; set; }
public bool IsGroup { get; set; } = false;
public List<TileModel> Items { get; set; } = new List<TileModel>();
public override string ToString() => this.Title ?? string.Empty;