chip-gameV3/Assets/SettingViewsProvider.cs

30 lines
935 B
C#

public class SettingViewsProvider
{
private static BoolView _boolView;
private static IntView _intView;
private static FloatView _floatView;
private static StringView _stringView;
private static SignalView _signalView;
public static void Inject(SettingViewSet viewSet)
{
_boolView = viewSet.boolView;
_intView = viewSet.intView;
_floatView = viewSet.floatView;
_stringView = viewSet.stringView;
_signalView = viewSet.signalView;
}
public static BaseSettingView ViewBySetting(SettingDTO setting)
{
return setting.Type switch
{
Setting.SettingType.Bool => _boolView,
Setting.SettingType.Float => _floatView,
Setting.SettingType.Signal => _signalView,
Setting.SettingType.String => _stringView,
Setting.SettingType.Int => _intView,
_ => _boolView
};
}
}