mirror of
https://github.com/osukey/osukey.git
synced 2025-05-22 22:17:36 +09:00
Mark classes nullable
This commit is contained in:
parent
2e4c3c8e39
commit
ff16d2f490
@ -3,15 +3,17 @@
|
|||||||
|
|
||||||
using osu.Framework.Platform;
|
using osu.Framework.Platform;
|
||||||
|
|
||||||
|
#nullable enable
|
||||||
|
|
||||||
namespace osu.Game.Database
|
namespace osu.Game.Database
|
||||||
{
|
{
|
||||||
public abstract class RealmBackedStore
|
public abstract class RealmBackedStore
|
||||||
{
|
{
|
||||||
protected readonly Storage Storage;
|
protected readonly Storage? Storage;
|
||||||
|
|
||||||
protected readonly IRealmFactory ContextFactory;
|
protected readonly IRealmFactory ContextFactory;
|
||||||
|
|
||||||
protected RealmBackedStore(IRealmFactory contextFactory, Storage storage = null)
|
protected RealmBackedStore(IRealmFactory contextFactory, Storage? storage = null)
|
||||||
{
|
{
|
||||||
ContextFactory = contextFactory;
|
ContextFactory = contextFactory;
|
||||||
Storage = storage;
|
Storage = storage;
|
||||||
|
@ -10,6 +10,8 @@ using osu.Game.Database;
|
|||||||
using osu.Game.Input.Bindings;
|
using osu.Game.Input.Bindings;
|
||||||
using osu.Game.Rulesets;
|
using osu.Game.Rulesets;
|
||||||
|
|
||||||
|
#nullable enable
|
||||||
|
|
||||||
namespace osu.Game.Input
|
namespace osu.Game.Input
|
||||||
{
|
{
|
||||||
public class RealmKeyBindingStore : RealmBackedStore
|
public class RealmKeyBindingStore : RealmBackedStore
|
||||||
@ -17,19 +19,22 @@ namespace osu.Game.Input
|
|||||||
/// <summary>
|
/// <summary>
|
||||||
/// Fired whenever any key binding change occurs, across all rulesets and types.
|
/// Fired whenever any key binding change occurs, across all rulesets and types.
|
||||||
/// </summary>
|
/// </summary>
|
||||||
public event Action KeyBindingChanged;
|
public event Action? KeyBindingChanged;
|
||||||
|
|
||||||
public RealmKeyBindingStore(RealmContextFactory contextFactory, RulesetStore rulesets, Storage storage = null)
|
public RealmKeyBindingStore(RealmContextFactory contextFactory, RulesetStore? rulesets, Storage? storage = null)
|
||||||
: base(contextFactory, storage)
|
: base(contextFactory, storage)
|
||||||
{
|
{
|
||||||
// populate defaults from rulesets.
|
if (rulesets != null)
|
||||||
using (ContextFactory.GetForWrite())
|
|
||||||
{
|
{
|
||||||
foreach (RulesetInfo info in rulesets.AvailableRulesets)
|
// populate defaults from rulesets.
|
||||||
|
using (ContextFactory.GetForWrite())
|
||||||
{
|
{
|
||||||
var ruleset = info.CreateInstance();
|
foreach (RulesetInfo info in rulesets.AvailableRulesets)
|
||||||
foreach (var variant in ruleset.AvailableVariants)
|
{
|
||||||
insertDefaults(ruleset.GetDefaultKeyBindings(variant), info.ID, variant);
|
var ruleset = info.CreateInstance();
|
||||||
|
foreach (var variant in ruleset.AvailableVariants)
|
||||||
|
insertDefaults(ruleset.GetDefaultKeyBindings(variant), info.ID, variant);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -87,7 +92,7 @@ namespace osu.Game.Input
|
|||||||
public void Update(IHasGuidPrimaryKey keyBinding, Action<IKeyBinding> modification)
|
public void Update(IHasGuidPrimaryKey keyBinding, Action<IKeyBinding> modification)
|
||||||
{
|
{
|
||||||
// the incoming instance could already be a live access object.
|
// the incoming instance could already be a live access object.
|
||||||
Live<RealmKeyBinding> realmBinding = keyBinding as Live<RealmKeyBinding>;
|
Live<RealmKeyBinding>? realmBinding = keyBinding as Live<RealmKeyBinding>;
|
||||||
|
|
||||||
using (var realm = ContextFactory.GetForWrite())
|
using (var realm = ContextFactory.GetForWrite())
|
||||||
{
|
{
|
||||||
|
Loading…
x
Reference in New Issue
Block a user