Beispiel #1
0
        private static bool HandleEventSink(Key key, AssignRegion region, bool preview, bool isSourceFromTextBox)
        {
            var modifier = Keyboard.Modifiers;

            System.Diagnostics.Debug.WriteLine(modifier.ToString() + " " + key.ToString() + " / " + region.ToString() + " ? " + preview.ToString());
            if (assignDescription == null)
            {
                return(false);
            }
            try
            {
                return(assignDescription.AssignDatas
                       .First(a => a.Item1 == region)
                       .Item2
                       .Where(a => a.Key == key && a.Modifiers == modifier &&
                              (!preview || a.LookInPreview) && (!isSourceFromTextBox || a.HandleInTextBox))
                       .Select(a => new Tuple <string, string>(a.ActionId, a.Argument))
                       .Dispatch());
            }
            catch (Exception ex)
            {
                ExceptionStorage.Register(ex, ExceptionCategory.ConfigurationError,
                                          "キーアサインを処理中にエラーが発生しました :" + ex.Message);
                return(false);
            }
        }
Beispiel #2
0
 /// <summary>
 /// PreviewKeyDown Eventを通知します。
 /// </summary>
 public static void HandleEvent(KeyEventArgs e, AssignRegion region)
 {
     if (HandleEventSink(CheckIme(e), region, false, IsSourceFromTextBox(e)))
     {
         e.Handled = true;
     }
 }
Beispiel #3
0
 /// <summary>
 /// KeyDown Eventを通知します。
 /// </summary>
 public static void HandlePreviewEvent(KeyEventArgs e, AssignRegion region)
 {
     if (HandleEventSink(CheckIme(e), region, true, IsSourceFromTextBox(e)))
         e.Handled = true;
 }
Beispiel #4
0
 private static bool HandleEventSink(Key key, AssignRegion region, bool preview, bool isSourceFromTextBox)
 {
     var modifier = Keyboard.Modifiers;
     System.Diagnostics.Debug.WriteLine(modifier.ToString() + " " + key.ToString() + " / " + region.ToString() + " ? " + preview.ToString());
     if (assignDescription == null) return false;
     try
     {
         return assignDescription.AssignDatas
             .First(a => a.Item1 == region)
             .Item2
             .Where(a => a.Key == key && a.Modifiers == modifier &&
                 (!preview || a.LookInPreview) && (!isSourceFromTextBox || a.HandleInTextBox))
             .Select(a => new Tuple<string, string>(a.ActionId, a.Argument))
             .Dispatch();
     }
     catch (Exception ex)
     {
         ExceptionStorage.Register(ex, ExceptionCategory.ConfigurationError,
             "キーアサインを処理中にエラーが発生しました :" + ex.Message);
         return false;
     }
 }