OSDN Git Service

flip ok
[psychlops/silverlight.git] / dev3 / psychlops / core / device / hid.cs
index a8bdc53..b71caeb 100644 (file)
@@ -11,19 +11,30 @@ namespace Psychlops
        {\r
                public struct Button\r
                {\r
+                       private static object locker;\r
+                       static Button()\r
+                       {\r
+                               locker = new object(); \r
+                       }\r
                        private bool pushed_, released_, pressed_;\r
                        public void down()\r
                        {\r
-                               pushed_ = true;\r
-                               pressed_ = true;\r
+                               lock (locker)\r
+                               {\r
+                                       pushed_ = true;\r
+                                       pressed_ = true;\r
+                               }\r
                        }\r
                        public void up()\r
                        {\r
-                               released_ = true;\r
-                               pressed_ = false;\r
+                               lock (locker)\r
+                               {\r
+                                       released_ = true;\r
+                                       pressed_ = false;\r
+                               }\r
                        }\r
-                       public bool pushed() { bool tmp = pushed_; pushed_ = false;  return tmp; }\r
-                       public bool released() { bool tmp = released_; released_ = false; return tmp; }\r
+                       public bool pushed() { lock (locker) { bool tmp = pushed_; pushed_ = false; return tmp; } }\r
+                       public bool released() { lock (locker) { bool tmp = released_; released_ = false; return tmp; } }\r
                        public bool pressed() { return pressed_; }\r
                }\r
        }\r
@@ -94,7 +105,6 @@ namespace Psychlops
                static private System.Collections.Generic.Dictionary<System.Windows.Input.Key, IKey> map;\r
                static public void Canvas_KeyUp(object sender, KeyEventArgs e)\r
                {\r
-                       Main.drawable.msg("hoge", 0,0,Color.green);\r
                        if (map.ContainsKey(e.Key)) map[e.Key].up();\r
                }\r
                static public void Canvas_KeyDown(object sender, KeyEventArgs e)\r