From a4cb1430b5286f2dd8a1fd1dc15d7c12fd0382fd Mon Sep 17 00:00:00 2001 From: Ian C Date: Wed, 2 May 2012 22:19:34 +0000 Subject: Improved event handling and added event to propagate touches the keyboard is not interested in. --- WindowsPhone/KeyboardTest.suo | Bin 44544 -> 48128 bytes WindowsPhone/KeyboardTest/KeyboardTest/Game1.cs | 19 +++++++++++++++---- 2 files changed, 15 insertions(+), 4 deletions(-) (limited to 'WindowsPhone') diff --git a/WindowsPhone/KeyboardTest.suo b/WindowsPhone/KeyboardTest.suo index 585204c..3e2bd4d 100644 Binary files a/WindowsPhone/KeyboardTest.suo and b/WindowsPhone/KeyboardTest.suo differ diff --git a/WindowsPhone/KeyboardTest/KeyboardTest/Game1.cs b/WindowsPhone/KeyboardTest/KeyboardTest/Game1.cs index 95e4a68..882ef72 100644 --- a/WindowsPhone/KeyboardTest/KeyboardTest/Game1.cs +++ b/WindowsPhone/KeyboardTest/KeyboardTest/Game1.cs @@ -94,6 +94,7 @@ namespace KeyboardTest keyboard = new KeyboardDriver(graphics.GraphicsDevice, keyboardImage, Vector2.Zero, def); keyboard.KeyEvent += KeyPress; + keyboard.TouchEvent += Touch; } /// @@ -131,21 +132,31 @@ namespace KeyboardTest foreach(string s in output) { - spriteBatch.DrawString(font, s, pos, Color.White); - pos.Y += 30; + spriteBatch.DrawString(font, s, pos, Color.White, 0f, Vector2.Zero, 0.5f, SpriteEffects.None, 1f); + pos.Y += 15; } spriteBatch.End(); } - private void KeyPress(object sender, KeyboardDriver.KeyPress e) + private void KeyPress(object sender, KeyboardDriver.KeyPressEventArgs e) { - if (output.Count > 15) + if (output.Count > 35) { output.RemoveAt(0); } output.Add(String.Format("{0} - {1}", e.Key.ToString(), e.Pressed.ToString())); } + + private void Touch(object sender, KeyboardDriver.TouchLocationEventArgs e) + { + if (output.Count > 35) + { + output.RemoveAt(0); + } + + output.Add(String.Format("{0} - {1} {2}", e.Location.Id, e.Location.Position, e.Location.State)); + } } } -- cgit v1.2.3