Skip to content

Commit

Permalink
Migrate to .Net 6.0
Browse files Browse the repository at this point in the history
  • Loading branch information
sabihoshi committed Jan 5, 2022
1 parent 7a3b321 commit 60318f3
Show file tree
Hide file tree
Showing 37 changed files with 2,027 additions and 2,074 deletions.
15 changes: 7 additions & 8 deletions GenshinLyreMidiPlayer.Data/Entities/History.cs
Original file line number Diff line number Diff line change
@@ -1,15 +1,14 @@
using System;

namespace GenshinLyreMidiPlayer.Data.Entities
namespace GenshinLyreMidiPlayer.Data.Entities;

public class History
{
public class History
{
public History() { }
public History() { }

public History(string path) { Path = path; }
public History(string path) { Path = path; }

public Guid Id { get; set; }
public Guid Id { get; set; }

public string Path { get; set; } = null!;
}
public string Path { get; set; } = null!;
}
11 changes: 6 additions & 5 deletions GenshinLyreMidiPlayer.Data/GenshinLyreMidiPlayer.Data.csproj
Original file line number Diff line number Diff line change
@@ -1,16 +1,17 @@
<Project Sdk="Microsoft.NET.Sdk">

<PropertyGroup>
<TargetFramework>net5.0-windows10.0.19041.0</TargetFramework>
<TargetFramework>net6.0-windows10.0.22000.0</TargetFramework>
<LangVersion>latest</LangVersion>
<Nullable>enable</Nullable>
<SupportedOSPlatformVersion>7.0</SupportedOSPlatformVersion>
</PropertyGroup>

<ItemGroup>
<PackageReference Include="Melanchall.DryWetMidi" Version="5.2.1" />
<PackageReference Include="Microsoft.EntityFrameworkCore" Version="5.0.11" />
<PackageReference Include="Microsoft.EntityFrameworkCore.Sqlite" Version="5.0.11" />
<PackageReference Include="Microsoft.EntityFrameworkCore.Sqlite.Core" Version="5.0.11" />
<PackageReference Include="Melanchall.DryWetMidi" Version="6.0.1" />
<PackageReference Include="Microsoft.EntityFrameworkCore" Version="6.0.1" />
<PackageReference Include="Microsoft.EntityFrameworkCore.Sqlite" Version="6.0.1" />
<PackageReference Include="Microsoft.EntityFrameworkCore.Sqlite.Core" Version="6.0.1" />
<PackageReference Include="Stylet" Version="1.3.6" />
</ItemGroup>

Expand Down
19 changes: 9 additions & 10 deletions GenshinLyreMidiPlayer.Data/Git/GitVersion.cs
Original file line number Diff line number Diff line change
@@ -1,20 +1,19 @@
using System;
using System.Text.Json.Serialization;

namespace GenshinLyreMidiPlayer.Data.Git
namespace GenshinLyreMidiPlayer.Data.Git;

public class GitVersion
{
public class GitVersion
{
[JsonPropertyName("draft")] public bool Draft { get; set; }
[JsonPropertyName("draft")] public bool Draft { get; set; }

[JsonPropertyName("prerelease")] public bool Prerelease { get; set; }
[JsonPropertyName("prerelease")] public bool Prerelease { get; set; }

[JsonPropertyName("name")] public string Name { get; set; } = null!;
[JsonPropertyName("name")] public string Name { get; set; } = null!;

[JsonPropertyName("tag_name")] public string TagName { get; set; } = null!;
[JsonPropertyName("tag_name")] public string TagName { get; set; } = null!;

[JsonPropertyName("html_url")] public string Url { get; set; } = null!;
[JsonPropertyName("html_url")] public string Url { get; set; } = null!;

public Version Version => new(TagName.Replace("v", string.Empty));
}
public Version Version => new(TagName.Replace("v", string.Empty));
}
11 changes: 5 additions & 6 deletions GenshinLyreMidiPlayer.Data/LyreContext.cs
Original file line number Diff line number Diff line change
@@ -1,12 +1,11 @@
using GenshinLyreMidiPlayer.Data.Entities;
using Microsoft.EntityFrameworkCore;

namespace GenshinLyreMidiPlayer.Data
namespace GenshinLyreMidiPlayer.Data;

public class LyreContext : DbContext
{
public class LyreContext : DbContext
{
public LyreContext(DbContextOptions<LyreContext> options) : base(options) { }
public LyreContext(DbContextOptions<LyreContext> options) : base(options) { }

public DbSet<History> History { get; set; } = null!;
}
public DbSet<History> History { get; set; } = null!;
}
47 changes: 23 additions & 24 deletions GenshinLyreMidiPlayer.Data/Midi/MidiFile.cs
Original file line number Diff line number Diff line change
Expand Up @@ -6,38 +6,37 @@
using Stylet;
using static System.IO.Path;

namespace GenshinLyreMidiPlayer.Data.Midi
namespace GenshinLyreMidiPlayer.Data.Midi;

public class MidiFile : Screen
{
public class MidiFile : Screen
{
private readonly ReadingSettings? _settings;
private int _position;
private readonly ReadingSettings? _settings;
private int _position;

public MidiFile(string path, ReadingSettings? settings = null)
{
_settings = settings;
public MidiFile(string path, ReadingSettings? settings = null)
{
_settings = settings;

Path = path;
InitializeMidi();
}
Path = path;
InitializeMidi();
}

public int Position
{
get => _position + 1;
set => SetAndNotify(ref _position, value);
}
public int Position
{
get => _position + 1;
set => SetAndNotify(ref _position, value);
}

public Melanchall.DryWetMidi.Core.MidiFile Midi { get; private set; } = null!;
public Melanchall.DryWetMidi.Core.MidiFile Midi { get; private set; } = null!;

public string Path { get; }
public string Path { get; }

public string Title => GetFileNameWithoutExtension(Path);
public string Title => GetFileNameWithoutExtension(Path);

public TimeSpan Duration => Midi.GetDuration<MetricTimeSpan>();
public TimeSpan Duration => Midi.GetDuration<MetricTimeSpan>();

public IEnumerable<Melanchall.DryWetMidi.Core.MidiFile> Split(uint bars, uint beats, uint ticks) =>
Midi.SplitByGrid(new SteppedGrid(new BarBeatTicksTimeSpan(bars, beats, ticks)));
public IEnumerable<Melanchall.DryWetMidi.Core.MidiFile> Split(uint bars, uint beats, uint ticks) =>
Midi.SplitByGrid(new SteppedGrid(new BarBeatTicksTimeSpan(bars, beats, ticks)));

public void InitializeMidi() { Midi = Melanchall.DryWetMidi.Core.MidiFile.Read(Path, _settings); }
}
public void InitializeMidi() => Midi = Melanchall.DryWetMidi.Core.MidiFile.Read(Path, _settings);
}
11 changes: 5 additions & 6 deletions GenshinLyreMidiPlayer.Data/Midi/MidiInput.cs
Original file line number Diff line number Diff line change
@@ -1,9 +1,8 @@
namespace GenshinLyreMidiPlayer.Data.Midi
namespace GenshinLyreMidiPlayer.Data.Midi;

public class MidiInput
{
public class MidiInput
{
public MidiInput(string deviceName) { DeviceName = deviceName; }
public MidiInput(string deviceName) { DeviceName = deviceName; }

public string DeviceName { get; }
}
public string DeviceName { get; }
}
19 changes: 9 additions & 10 deletions GenshinLyreMidiPlayer.Data/Midi/MidiSpeed.cs
Original file line number Diff line number Diff line change
@@ -1,15 +1,14 @@
namespace GenshinLyreMidiPlayer.Data.Midi
namespace GenshinLyreMidiPlayer.Data.Midi;

public class MidiSpeed
{
public class MidiSpeed
public MidiSpeed(string speedName, double speed)
{
public MidiSpeed(string speedName, double speed)
{
SpeedName = speedName;
Speed = speed;
}
SpeedName = speedName;
Speed = speed;
}

public double Speed { get; }
public double Speed { get; }

public string SpeedName { get; }
}
public string SpeedName { get; }
}
45 changes: 22 additions & 23 deletions GenshinLyreMidiPlayer.Data/Midi/MidiTrack.cs
Original file line number Diff line number Diff line change
Expand Up @@ -2,36 +2,35 @@
using Melanchall.DryWetMidi.Core;
using Stylet;

namespace GenshinLyreMidiPlayer.Data.Midi
namespace GenshinLyreMidiPlayer.Data.Midi;

public class MidiTrack
{
public class MidiTrack
{
private readonly IEventAggregator _events;
private bool _isChecked;
private readonly IEventAggregator _events;
private bool _isChecked;

public MidiTrack(IEventAggregator events, TrackChunk track)
{
_events = events;
_isChecked = true;
public MidiTrack(IEventAggregator events, TrackChunk track)
{
_events = events;
_isChecked = true;

Track = track;
TrackName = track.Events.OfType<SequenceTrackNameEvent>().FirstOrDefault()?.Text;
}
Track = track;
TrackName = track.Events.OfType<SequenceTrackNameEvent>().FirstOrDefault()?.Text;
}

public bool CanBePlayed => Track.Events.Count(e => e is NoteEvent) > 0;
public bool CanBePlayed => Track.Events.Count(e => e is NoteEvent) > 0;

public bool IsChecked
public bool IsChecked
{
get => _isChecked;
set
{
get => _isChecked;
set
{
_isChecked = value;
_events.Publish(this);
}
_isChecked = value;
_events.Publish(this);
}
}

public string? TrackName { get; }
public string? TrackName { get; }

public TrackChunk Track { get; }
}
public TrackChunk Track { get; }
}
29 changes: 14 additions & 15 deletions GenshinLyreMidiPlayer.Data/Notification/MergeNotesNotification.cs
Original file line number Diff line number Diff line change
@@ -1,24 +1,23 @@
using GenshinLyreMidiPlayer.Data.Midi;

namespace GenshinLyreMidiPlayer.Data.Notification
namespace GenshinLyreMidiPlayer.Data.Notification;

public class MergeNotesNotification
{
public class MergeNotesNotification
{
public MergeNotesNotification(bool merge) { Merge = merge; }
public MergeNotesNotification(bool merge) { Merge = merge; }

public bool Merge { get; }
}
public bool Merge { get; }
}

public class TrackNotification
public class TrackNotification
{
public TrackNotification(MidiTrack track, bool enabled)
{
public TrackNotification(MidiTrack track, bool enabled)
{
Track = track;
Enabled = enabled;
}
Track = track;
Enabled = enabled;
}

public bool Enabled { get; }
public bool Enabled { get; }

public MidiTrack Track { get; }
}
public MidiTrack Track { get; }
}
Original file line number Diff line number Diff line change
@@ -1,4 +1,3 @@
namespace GenshinLyreMidiPlayer.Data.Notification
{
public class PlayTimerNotification { }
}
namespace GenshinLyreMidiPlayer.Data.Notification;

public class PlayTimerNotification { }
31 changes: 15 additions & 16 deletions GenshinLyreMidiPlayer.Data/Properties/Settings.cs
Original file line number Diff line number Diff line change
@@ -1,25 +1,24 @@
using System.ComponentModel;
using System.Configuration;

namespace GenshinLyreMidiPlayer.Data.Properties
namespace GenshinLyreMidiPlayer.Data.Properties;

// This class allows you to handle specific events on the settings class:
// The SettingChanging event is raised before a setting's value is changed.
// The PropertyChanged event is raised after a setting's value is changed.
// The SettingsLoaded event is raised after the setting values are loaded.
// The SettingsSaving event is raised before the setting values are saved.
public sealed partial class Settings
{
// This class allows you to handle specific events on the settings class:
// The SettingChanging event is raised before a setting's value is changed.
// The PropertyChanged event is raised after a setting's value is changed.
// The SettingsLoaded event is raised after the setting values are loaded.
// The SettingsSaving event is raised before the setting values are saved.
public sealed partial class Settings
{
protected override void OnPropertyChanged(object sender, PropertyChangedEventArgs e) => Save();
protected override void OnPropertyChanged(object sender, PropertyChangedEventArgs e) => Save();

protected override void OnSettingsLoaded(object sender, SettingsLoadedEventArgs e)
protected override void OnSettingsLoaded(object sender, SettingsLoadedEventArgs e)
{
if (Default.UpgradeRequired)
{
if (Default.UpgradeRequired)
{
Default.Upgrade();
Default.UpgradeRequired = false;
Default.Save();
}
Default.Upgrade();
Default.UpgradeRequired = false;
Default.Save();
}
}
}
13 changes: 6 additions & 7 deletions GenshinLyreMidiPlayer.Data/Properties/SettingsExtensions.cs
Original file line number Diff line number Diff line change
@@ -1,13 +1,12 @@
using System;

namespace GenshinLyreMidiPlayer.Data.Properties
namespace GenshinLyreMidiPlayer.Data.Properties;

public static class SettingsExtensions
{
public static class SettingsExtensions
public static void Modify(this Settings settings, Action<Settings> action)
{
public static void Modify(this Settings settings, Action<Settings> action)
{
action.Invoke(settings);
settings.Save();
}
action.Invoke(settings);
settings.Save();
}
}
Loading

0 comments on commit 60318f3

Please sign in to comment.