public MissionLibraryGameKeyConfigVM(AGameKeyCategoryManager gameKeyCategoryManager, Action <GameKeyOptionVM> onKeyBindRequest) { _gameKeyCategoryManager = gameKeyCategoryManager; _categories = _gameKeyCategoryManager.Categories.ToDictionary(pair => pair.Key, pair => pair.Value.Value); Groups = new MBBindingList <MissionLibraryGameKeyGroupVM>(); foreach (KeyValuePair <string, AGameKeyCategory> category in _categories) { if (category.Value.GameKeys.Count > 0) { Groups.Add(new MissionLibraryGameKeyGroupVM(category.Key, category.Value.GameKeys, onKeyBindRequest, UpdateKeysOfGameKeysWithId)); } } RefreshValues(); }
public void Activate() { _dataSource = new RTSCameraGameKeyConfigVM(AGameKeyCategoryManager.Get(), OnKeyBindRequest, Deactivate); _gauntletLayer = new GauntletLayer(ViewOrderPriorty) { IsFocusLayer = true }; _gauntletLayer.LoadMovie("RTSCameraOptionsGameKeyPage", _dataSource); _gauntletLayer.Input.RegisterHotKeyCategory(HotKeyManager.GetCategory("GenericPanelGameKeyCategory")); _gauntletLayer.InputRestrictions.SetInputRestrictions(); _gauntletLayer.IsFocusLayer = true; MissionScreen.AddLayer(_gauntletLayer); ScreenManager.TrySetFocus(_gauntletLayer); }
public static void AddCategory(this AGameKeyCategoryManager categoryManager, Func <AGameKeyCategory> creator, Version version, bool addOnlyWhenMissing = true) { categoryManager.AddCategory(new ConcreteProvider <AGameKeyCategory>(creator, version), addOnlyWhenMissing); }
public static void RegisterGameKeyCategory() { AGameKeyCategoryManager.Get()?.AddCategory(CreateCategory, new Version(1, 0)); }
public GameKeyConfigVM(AGameKeyCategoryManager gameKeyCategoryManager, Action <GameKeyOptionVM> onKeyBindRequest, Action onClose) { _onClose = onClose; GameKeyOptions = new MissionLibraryGameKeyConfigVM(gameKeyCategoryManager, onKeyBindRequest); RefreshValues(); }
public static void Initialize() { AGameKeyCategoryManager.Get()?.AddCategory(CreateCategory, new Version(1, 0)); }