From 6138c99ba97743cd810db65034afadef1b0515e5 Mon Sep 17 00:00:00 2001 From: Daniel Schick Date: Fri, 15 Jul 2022 08:46:38 +0200 Subject: [PATCH] =?UTF-8?q?Shortcuts=20f=C3=BCr=20Save,=20SaveAll,=20Reloa?= =?UTF-8?q?d=20und=20Validate?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- ENI2/DetailRootControl.xaml.cs | 34 +++++++++++++++++++++++++++++++--- ENI2/MainWindow.xaml.cs | 2 +- 2 files changed, 32 insertions(+), 4 deletions(-) diff --git a/ENI2/DetailRootControl.xaml.cs b/ENI2/DetailRootControl.xaml.cs index 72deed89..71480c7b 100644 --- a/ENI2/DetailRootControl.xaml.cs +++ b/ENI2/DetailRootControl.xaml.cs @@ -14,6 +14,7 @@ using ENI2.DetailViewControls; using ENI2.Util; using ENI2.EditControls; +using System.Windows.Input; namespace ENI2 { @@ -135,14 +136,31 @@ namespace ENI2 this._listBoxList.Add(new MessageGroup() { MessageGroupName = Properties.Resources.textTowage, MessageGroupControlType = typeof(TowageDetailControl), ImagePath = "Resources/ship2.png" }); - this.listBoxMessages.ItemsSource = this._listBoxList; - + this.listBoxMessages.ItemsSource = this._listBoxList; + _messages = DBManager.GetSingleCon(Properties.Settings.Default.ConnectionString).GetMessagesForCore(Core, DBManager.MessageLoad.ALL); List missingMessages = bsmd.database.Util.CreateMessagesForCore(Core, _messages, this.LockedBy); _messages.AddRange(missingMessages); BindingOperations.EnableCollectionSynchronization(_messages, this.messageListLock); - Dispatcher.BeginInvoke((Action)(() => this.listBoxMessages.SelectedIndex = 0)); + Dispatcher.BeginInvoke((Action)(() => this.listBoxMessages.SelectedIndex = 0)); + + RoutedCommand saveCmd = new RoutedCommand(); + saveCmd.InputGestures.Add(new KeyGesture(Key.S, ModifierKeys.Control)); + CommandBindings.Add(new CommandBinding(saveCmd, this.buttonSave_Click)); + + RoutedCommand saveAllCmd = new RoutedCommand(); + saveAllCmd.InputGestures.Add(new KeyGesture(Key.A, ModifierKeys.Control)); + CommandBindings.Add(new CommandBinding(saveAllCmd, this.buttonSaveAll_Click)); + + RoutedCommand reloadCmd = new RoutedCommand(); + reloadCmd.InputGestures.Add(new KeyGesture(Key.R, ModifierKeys.Control)); + CommandBindings.Add(new CommandBinding(reloadCmd, this.ShortCutReload)); + + RoutedCommand validateCmd = new RoutedCommand(); + validateCmd.InputGestures.Add(new KeyGesture(Key.F, ModifierKeys.Control)); + CommandBindings.Add(new CommandBinding(validateCmd, this.ShortCutValidate)); + } #endregion @@ -541,6 +559,16 @@ namespace ENI2 } */ + private void ShortCutReload(object sender, ExecutedRoutedEventArgs e) + { + this.DetailControl_RequestReload(this.Core.Id.Value); + } + + private void ShortCutValidate(object sender, ExecutedRoutedEventArgs e) + { + this.DetailControl_RequestValidate(); + } + private void DetailControl_RequestReload(Guid id) { /// core und messages neu laden diff --git a/ENI2/MainWindow.xaml.cs b/ENI2/MainWindow.xaml.cs index 483bc33a..3e2c9fb5 100644 --- a/ENI2/MainWindow.xaml.cs +++ b/ENI2/MainWindow.xaml.cs @@ -135,7 +135,7 @@ namespace ENI2 { Dispatcher.BeginInvoke((Action)(() => this.mainFrame.SelectedItem = openTabs[aMessageCore.Id.Value])); } - } + } } private void Drc_ReloadCoreRequested(Guid obj)