Add realm store / key binding implementations

This commit is contained in:
Dean Herbert
2021-01-07 14:35:15 +09:00
parent 5372d95d16
commit d5ac97ece8
3 changed files with 126 additions and 0 deletions

View File

@ -0,0 +1,33 @@
// Copyright (c) ppy Pty Ltd <contact@ppy.sh>. Licensed under the MIT Licence.
// See the LICENCE file in the repository root for full licence text.
using System;
using osu.Framework.Input.Bindings;
using osu.Game.Database;
using Realms;
namespace osu.Game.Input.Bindings
{
[MapTo("KeyBinding")]
public class RealmKeyBinding : RealmObject, IHasGuidPrimaryKey
{
public Guid ID { get; set; }
public int? RulesetID { get; set; }
public int? Variant { get; set; }
[Ignored]
public KeyBinding KeyBinding
{
get
{
var split = KeyBindingString.Split(':');
return new KeyBinding(split[0], int.Parse(split[1]));
}
set => KeyBindingString = $"{value.KeyCombination}:{(int)value.Action}";
}
public string KeyBindingString { get; set; }
}
}