aboutsummaryrefslogtreecommitdiffstats
path: root/Software/Visual_Studio/Tango.Core/ExtensionMethods
diff options
context:
space:
mode:
authorRoy Ben Shabat <Roy.mail.net@gmail.com>2019-04-18 20:48:48 +0300
committerRoy Ben Shabat <Roy.mail.net@gmail.com>2019-04-18 20:48:48 +0300
commitf27893986e9fd647a69be8569ecd5d944f853869 (patch)
tree40673893d6c8b43119633801710035b55315f7e8 /Software/Visual_Studio/Tango.Core/ExtensionMethods
parent8a249931cbff190c1c86a0b7bddc0b80b74370c2 (diff)
downloadTango-f27893986e9fd647a69be8569ecd5d944f853869.tar.gz
Tango-f27893986e9fd647a69be8569ecd5d944f853869.zip
Implemented machine status animations.
Diffstat (limited to 'Software/Visual_Studio/Tango.Core/ExtensionMethods')
-rw-r--r--Software/Visual_Studio/Tango.Core/ExtensionMethods/FrameworkElementExtensions.cs35
1 files changed, 35 insertions, 0 deletions
diff --git a/Software/Visual_Studio/Tango.Core/ExtensionMethods/FrameworkElementExtensions.cs b/Software/Visual_Studio/Tango.Core/ExtensionMethods/FrameworkElementExtensions.cs
index ca546922f..4371796c4 100644
--- a/Software/Visual_Studio/Tango.Core/ExtensionMethods/FrameworkElementExtensions.cs
+++ b/Software/Visual_Studio/Tango.Core/ExtensionMethods/FrameworkElementExtensions.cs
@@ -42,6 +42,13 @@ public static class FrameworkElementExtensions
/// <param name="handler">The handler.</param>
public static String RegisterForMouseOrTouchDown(this FrameworkElement element, FrameworkElement relativeTo, EventHandler<MouseOrTouchEventArgs> handler)
{
+ var existing_container = _containers.SingleOrDefault(x => x.Element == element && x.Handler == handler);
+
+ if (existing_container != null)
+ {
+ return existing_container.Token;
+ }
+
bool mousePressed = false;
bool touchDown = false;
@@ -145,6 +152,13 @@ public static class FrameworkElementExtensions
/// <param name="handler">The handler.</param>
public static String RegisterForMouseOrTouchUp(this FrameworkElement element, FrameworkElement relativeTo, EventHandler<MouseOrTouchEventArgs> handler)
{
+ var existing_container = _containers.SingleOrDefault(x => x.Element == element && x.Handler == handler);
+
+ if (existing_container != null)
+ {
+ return existing_container.Token;
+ }
+
bool mouseReleased = false;
bool touchReleased = false;
@@ -245,6 +259,13 @@ public static class FrameworkElementExtensions
/// <param name="handler">The handler.</param>
public static String RegisterForPreviewMouseOrTouchDown(this FrameworkElement element, FrameworkElement relativeTo, EventHandler<MouseOrTouchEventArgs> handler)
{
+ var existing_container = _containers.SingleOrDefault(x => x.Element == element && x.Handler == handler);
+
+ if (existing_container != null)
+ {
+ return existing_container.Token;
+ }
+
bool mousePressed = false;
bool touchDown = false;
@@ -348,6 +369,13 @@ public static class FrameworkElementExtensions
/// <param name="handler">The handler.</param>
public static String RegisterForPreviewMouseOrTouchUp(this FrameworkElement element, FrameworkElement relativeTo, EventHandler<MouseOrTouchEventArgs> handler)
{
+ var existing_container = _containers.SingleOrDefault(x => x.Element == element && x.Handler == handler);
+
+ if (existing_container != null)
+ {
+ return existing_container.Token;
+ }
+
bool mouseReleased = false;
bool touchReleased = false;
@@ -464,6 +492,13 @@ public static class FrameworkElementExtensions
/// <param name="handler">The handler.</param>
public static void RegisterForMouseOrTouchMove(this FrameworkElement element, FrameworkElement relativeTo, EventHandler<MouseOrTouchEventArgs> handler)
{
+ var existing_container = _containers.SingleOrDefault(x => x.Element == element && x.Handler == handler);
+
+ if (existing_container != null)
+ {
+ return;
+ }
+
bool _isTouch = false;
MouseEventHandler mouseHandler = (x, e) =>