#endregion
#region keyboard Handling
- KeyboardState Keyboad = new KeyboardState ();
void Keyboard_KeyDown(object sender, OpenTK.Input.KeyboardKeyEventArgs otk_e)
{
-// if (_focusedWidget == null) {
+ if (!CrowInterface.ProcessKeyDown((int)otk_e.Key))
KeyboardKeyDown.Raise (this, otk_e);
-// return;
-// }
- Keyboad.SetKeyState ((Crow.Key)otk_e.Key, true);
- KeyboardKeyEventArgs e = new KeyboardKeyEventArgs((Crow.Key)otk_e.Key, otk_e.IsRepeat,Keyboad);
}
#endregion
}
hoverWidget.onMouseWheel (this, e);
return true;
}
-// public bool ProcessKeyDown(int Key){
-//
-// }
+ public bool ProcessKeyDown(int Key){
+ Keyboard.SetKeyState ((Crow.Key)Key, true);
+ if (_focusedWidget == null)
+ return false;
+ KeyboardKeyEventArgs e = new KeyboardKeyEventArgs((Crow.Key)Key, false, Keyboard);
+ _focusedWidget.onKeyDown (this, e);
+ return true;
+ }
+ public bool ProcessKeyUp(int Key){
+ Keyboard.SetKeyState ((Crow.Key)Key, false);
+ if (_activeWidget == null)
+ return false;
+ //KeyboardKeyEventArgs e = new KeyboardKeyEventArgs((Crow.Key)Key, false, Keyboard);
+ return true;
+ }
+
volatile bool mouseRepeatOn;
volatile int mouseRepeatCount;
Thread mouseRepeatThread;