Esempio n. 1
0
		void LogKeyEvent(object sender, string type, KeyEventArgs e)
		{
			if (!showParentEvents.Checked == true && sender == this)
				return;
			if (!showWindowEvents.Checked == true && sender == this.ParentWindow)
				return;
			Log.Write(sender, "{0}, Key: {1}, Char: {2}, Handled: {3}", type, e.KeyData, e.IsChar ? e.KeyChar.ToString() : "no char", e.Handled);
			if (handleEvents.Checked == true)
				e.Handled = true;
		}
Esempio n. 2
0
        private void OnKeyUp(object sender, EKeyEventArgs keyEventArgs)
        {
            var key = keyEventArgs.Key.ToClarity();

            keys[(int)key] = false;
            var cEventArgs = new KeyEvent
            {
                ComplexEventType = KeyEventType.Up,
                KeyModifiers     = GetModifiers(keyEventArgs),
                EventKey         = keyEventArgs.Key.ToClarity(),
                HasFocus         = renderControl.HasFocus,
                State            = new KeyboardState(keys.Copy()),
                Viewport         = inputService.FocusedViewport
            };

            inputService.OnInputEvent(cEventArgs);
        }
Esempio n. 3
0
        private static KeyModifiers GetModifiers(EKeyEventArgs keyEventArgs)
        {
            var result = KeyModifiers.None;

            if (keyEventArgs.Shift)
            {
                result |= KeyModifiers.Shift;
            }
            if (keyEventArgs.Control)
            {
                result |= KeyModifiers.Control;
            }
            if (keyEventArgs.Alt)
            {
                result |= KeyModifiers.Alt;
            }
            return(result);
        }
Esempio n. 4
0
        void CmdBox_KeyDown(object sender, KeyEventArgs e)
        {
            //如果插入符号在其他位置,且按下不是enter按键或者ctrl时,将它设置回原位
            if (!IsCaretAtWritablePosition() && !(e.Control || IsTerminatorKey(e.Key)))
            {
                MoveCaretToEndOfText();
            }
			//不允许退格符移动到提示文字之前
			if (e.Key == Keys.Backspace && IsCaretJustBeforePrompt())
            {
                e.Handled = true;
            }
            //不允许插入符号移动到提示文字之前
            if (e.Key == Keys.Left && IsCaretJustBeforePrompt())
            {
                e.Handled = true;
            }
	        if (e.Key == Keys.Space && IsCaretJustBeforePrompt())
	        {
				e.Handled = true;
	        }
            else if (e.Key == Keys.Down)
            {
                //历史命令记录
                if (commandHistory.DoesNextCommandExist())
                {
                    ReplaceTextAtPrompt(commandHistory.GetNextCommand());
                }
                e.Handled = true;
            }
            else if (e.Key == Keys.Up)
            {
                //历史命令记录
                if (commandHistory.DoesPreviousCommandExist())
                {
                    ReplaceTextAtPrompt(commandHistory.GetPreviousCommand());
                }
                e.Handled = true;
            }
            else if (e.Key == Keys.Right)
            {
                ////Performs command completion
                //string currentTextAtPrompt = GetTextAtPrompt();
                //string lastCommand = commandHistory.LastCommand;

                //if (lastCommand != null && (currentTextAtPrompt.Length == 0 || lastCommand.StartsWith(currentTextAtPrompt)))
                //{
                //    if (lastCommand.Length > currentTextAtPrompt.Length)
                //    {
                //        this.AddText(lastCommand[currentTextAtPrompt.Length].ToString());
                //    }
                //}
            }

            //处理空格和enter按键
            //如果是执行按键
            if (IsTerminatorKey(e.Key))
            {
                //如果当前行不是以Prompt开头,则忽略
                if (!IsStartWithPromptAtCurrentLine())
                {
                    e.Handled = true;
                    PrintPrompt();
                    return;
                }
                e.Handled = true;
                string currentCommand = GetTextAtPrompt();
                ExcuteCmd(currentCommand);
            }
        }
Esempio n. 5
0
		public void HandleKeyDown(object sender, KeyEventArgs e)
		{
			Log.Write(sender, "Key was pressed: {0}", e.Key);
		}
Esempio n. 6
0
		public static KeyEventArgs ToEtoKeyEventArgs(this NSEvent theEvent)
		{
			char keyChar = !string.IsNullOrEmpty(theEvent.Characters) ? theEvent.Characters[0] : '\0';
			Keys key = KeyMap.MapKey(theEvent.KeyCode);
			KeyEventArgs kpea;
			Keys modifiers = theEvent.ModifierFlags.ToEto();
			key |= modifiers;
			if (key != Keys.None)
			{
				if (((modifiers & ~(Keys.Shift | Keys.Alt)) == 0))
					kpea = new KeyEventArgs(key, KeyEventType.KeyDown, keyChar);
				else
					kpea = new KeyEventArgs(key, KeyEventType.KeyDown);
			}
			else
			{
				kpea = new KeyEventArgs(key, KeyEventType.KeyDown, keyChar);
			}
			return kpea;
		}
Esempio n. 7
0
		void control_KeyDown(object sender, KeyEventArgs e)
		{
			LogKeyEvent(sender, "KeyDown", e);
		}
Esempio n. 8
0
		void control_KeyUp(object sender, KeyEventArgs e)
		{
			LogKeyEvent(sender, "KeyUp", e);
		}
Esempio n. 9
0
		/// <summary>
		/// Raises the <see cref="Control.KeyDown"/> event.
		/// </summary>
		/// <param name="e">Key event arguments</param>
		protected virtual void OnKeyDown(KeyEventArgs e)
		{
			Properties.TriggerEvent(KeyDownEvent, this, e);
		}
Esempio n. 10
0
			/// <summary>
			/// Raises the key up event.
			/// </summary>
			public void OnKeyUp(Control widget, KeyEventArgs e)
			{
				widget.Platform.Invoke(() => widget.OnKeyUp(e));
			}
Esempio n. 11
0
 void _textboxUrl_KeyDown(object sender, KeyEventArgs e)
 {
     if (e.Key == Keys.Enter)
     {
         var current = GetCurrentDirPath();
         if (current != "")
         {
             SetCurrentDirPath(current);
             MoveCareIndexToEnd();
             _fileManager.GetFileTree(current);
         }
     }
 }