aboutsummaryrefslogtreecommitdiffstatsci
path: root/OTKCrow
diff options
context:
space:
mode:
authorjp <jp_bruyere@hotmail.com>2016-03-15 14:10:54 +0100
committerjp <jp_bruyere@hotmail.com>2016-03-15 14:10:54 +0100
commit7d84e81ebdc0bf89b5aa89cef2375c4acae7b37e (patch)
tree3212e1f2672b5864483f77f716fd831d7bd0e7cc /OTKCrow
parent97e0683c77461e7f13ab40ff9bc6f8a56c7a9d7e (diff)
keypress event
Diffstat (limited to 'OTKCrow')
-rw-r--r--OTKCrow/OpenTKGameWindow.cs14
1 files changed, 14 insertions, 0 deletions
diff --git a/OTKCrow/OpenTKGameWindow.cs b/OTKCrow/OpenTKGameWindow.cs
index 94a52a0c..b11c2ce0 100644
--- a/OTKCrow/OpenTKGameWindow.cs
+++ b/OTKCrow/OpenTKGameWindow.cs
@@ -153,6 +153,8 @@ namespace Crow
public event EventHandler<OpenTK.Input.MouseButtonEventArgs> MouseClick;
public event EventHandler<OpenTK.Input.MouseMoveEventArgs> MouseMove;
public event EventHandler<OpenTK.Input.KeyboardKeyEventArgs> KeyboardKeyDown;
+ public event EventHandler<OpenTK.Input.KeyboardKeyEventArgs> KeyboardKeyUp;
+
#endregion
#region graphic context
@@ -230,7 +232,9 @@ namespace Crow
{
base.OnLoad(e);
+ this.KeyPress += new EventHandler<OpenTK.KeyPressEventArgs>(OpenTKGameWindow_KeyPress);
Keyboard.KeyDown += new EventHandler<OpenTK.Input.KeyboardKeyEventArgs>(Keyboard_KeyDown);
+ Keyboard.KeyUp += new EventHandler<OpenTK.Input.KeyboardKeyEventArgs>(Keyboard_KeyUp);
Mouse.WheelChanged += new EventHandler<OpenTK.Input.MouseWheelEventArgs>(Mouse_WheelChanged);
Mouse.ButtonDown += new EventHandler<OpenTK.Input.MouseButtonEventArgs>(Mouse_ButtonDown);
Mouse.ButtonUp += new EventHandler<OpenTK.Input.MouseButtonEventArgs>(Mouse_ButtonUp);
@@ -246,6 +250,7 @@ namespace Crow
shader = new Crow.TexturedShader ();
}
+
protected override void OnUpdateFrame(FrameEventArgs e)
{
base.OnUpdateFrame(e);
@@ -322,6 +327,15 @@ namespace Crow
if (!CrowInterface.ProcessKeyDown((int)otk_e.Key))
KeyboardKeyDown.Raise (this, otk_e);
}
+ void Keyboard_KeyUp(object sender, OpenTK.Input.KeyboardKeyEventArgs otk_e)
+ {
+ if (!CrowInterface.ProcessKeyUp((int)otk_e.Key))
+ KeyboardKeyUp.Raise (this, otk_e);
+ }
+ void OpenTKGameWindow_KeyPress (object sender, OpenTK.KeyPressEventArgs e)
+ {
+ CrowInterface.ProcessKeyPress (e.KeyChar);
+ }
#endregion
}
}