public override void InitElements() { AssingSize(_languageList, _profileList, _inputModeList); HorizontalStack _profileToolbar = new HorizontalStack(); _profileToolbar.SetHeightPolicy(SizePolicy.Fixed); _profileToolbar.SetHeight(30); _profileToolbar.SetSpacing(10); AddItems( _headerTitle, _autoLaunchAppCheckBox, _startMinimizedCheckBox, _autoStartCheckBox, Items.GetHorizontalDivider(), _headerProfile, _profileToolbar, _inputModeList, Items.GetHorizontalDivider(), _headerLocale, _languageList ); _profileToolbar.AddItems(_profileList, _addProfile, _copyProfile, _removeProfile); // apply settings _languageList.SetCurrentIndex( Controller.GetLocalizations().Keys.ToList().IndexOf(Controller.GetLanguage()["Locale"])); _profileList.SetCurrentIndex( Controller.GetAllProfiles().Select(p => p.Name).ToList().IndexOf(Controller.GetProfile().Name)); _inputModeList.SetCurrentIndex( Parse.RepeatTypes(Controller.GetProfile().RepeatMode)); // events _languageList.SelectionChanged += () => { Controller.InvokeEventLanguageChanged(_languageList.GetTextSelection()); }; _profileList.SelectionChanged += () => { Controller.InvokeEventProfileChanged(_profileList.GetTextSelection()); }; _inputModeList.SelectionChanged += () => { Controller.GetProfile().RepeatMode = (RepeatType)_inputModeList.GetCurrentIndex(); }; _autoLaunchAppCheckBox.EventToggle += (value) => { Controller.GetSettings().AutoLaunchOnSystemStartUp = value; }; _startMinimizedCheckBox.EventToggle += (value) => { Controller.GetSettings().StartAppMinimized = value; }; _autoStartCheckBox.EventToggle += (value) => { Controller.GetSettings().AutoStart = value; }; _addProfile.EventMouseClick += (sender, args) => { InputDialog input = new InputDialog(Controller.GetLanguage()["InputTitle"], Controller.GetLanguage()["AddButton"]); input.SetCancelVisible(false); input.OnCloseDialog += () => { if (input.GetResult().Length > 0) { Controller.InvokeEventAddProfile(input.GetResult()); } }; input.Show(GetHandler()); }; _copyProfile.EventMouseClick += (sender, args) => { InputDialog input = new InputDialog(Controller.GetLanguage()["InputTitle"], Controller.GetLanguage()["AddButton"]); input.SetCancelVisible(false); input.OnCloseDialog += () => { if (input.GetResult().Length > 0) { Controller.InvokeEventAddProfile(input.GetResult(), true); } }; input.Show(GetHandler()); }; _removeProfile.EventMouseClick += (sender, args) => { MessageItem msg = new MessageItem( Controller.GetLanguage()["MsgDeleteProfile"] + " " + Controller.GetProfile().Name + "\n" + Controller.GetLanguage()["MsgConfirm"], Controller.GetLanguage()["DeleteProfileTitle"]); msg.GetOkButton().SetText(Controller.GetLanguage()["DeleteButton"]); msg.GetCancelButton().SetText(Controller.GetLanguage()["CancelButton"]); msg.OnCloseDialog += () => { if (msg.GetResult()) { Controller.InvokeEventDeleteProfile(); } }; msg.Show(GetHandler()); }; }
public override void InitElements() { _leftStickLayout.SetSpacing(0, 10); _rightStickLayout.SetSpacing(0, 10); _lStickAssignment.SetPadding(0, 0, 40, 0); _rStickAssignment.SetPadding(0, 0, 40, 0); AddItems( _leftStickLayout, _rightStickLayout ); _leftStickLayout.AddItems( _lLabel, _lDynamicSensitivity, _lSpeedSlider, _lStickAssignment ); _rightStickLayout.AddItems( _rLabel, _rDynamicSensitivity, _rSpeedSlider, _rStickAssignment ); _lStickAssignment.AddItems( _lMouseMove, _lArrows ); _rStickAssignment.AddItems( _rMouseMove, _rArrows ); ApplyProfile(Controller.GetProfile()); _lSpeedSlider.EventValueChanged += () => { Controller.GetProfile().LeftThumbStickSpeed = (uint)_lSpeedSlider.GetSpeed(); }; _rSpeedSlider.EventValueChanged += () => { Controller.GetProfile().RightThumbStickSpeed = (uint)_rSpeedSlider.GetSpeed(); }; _lStickAssignment.SelectionChanged += () => { Controller.GetProfile().LeftStickAction = (StickActionType)_lStickAssignment.GetCurrentIndex(); }; _rStickAssignment.SelectionChanged += () => { Controller.GetProfile().RightStickAction = (StickActionType)_rStickAssignment.GetCurrentIndex(); }; _lDynamicSensitivity.EventToggle += (value) => { Controller.GetProfile().LeftThumbStickAcceleration = value; }; _rDynamicSensitivity.EventToggle += (value) => { Controller.GetProfile().RightThumbStickAcceleration = value; }; }