aboutsummaryrefslogtreecommitdiffstats
path: root/Software/Visual_Studio/Tango.Touch/Controls/TouchClickableControl.cs
diff options
context:
space:
mode:
authorMirta <mirta@twine-s.com>2020-12-30 16:39:52 +0200
committerMirta <mirta@twine-s.com>2020-12-30 16:39:52 +0200
commit00a491d93733d4625ad329b2ba8237f445364b3f (patch)
tree4b24c6fa78d7648f4bb7cefafa464bb0b063fec4 /Software/Visual_Studio/Tango.Touch/Controls/TouchClickableControl.cs
parent124ad4150f80c6846fdee41dbbda9848c105f6e5 (diff)
downloadTango-00a491d9.tar.gz
Tango-00a491d9.zip
merge
Diffstat (limited to 'Software/Visual_Studio/Tango.Touch/Controls/TouchClickableControl.cs')
-rw-r--r--Software/Visual_Studio/Tango.Touch/Controls/TouchClickableControl.cs129
1 files changed, 0 insertions, 129 deletions
diff --git a/Software/Visual_Studio/Tango.Touch/Controls/TouchClickableControl.cs b/Software/Visual_Studio/Tango.Touch/Controls/TouchClickableControl.cs
deleted file mode 100644
index b14917846..000000000
--- a/Software/Visual_Studio/Tango.Touch/Controls/TouchClickableControl.cs
+++ /dev/null
@@ -1,129 +0,0 @@
-using System;
-using System.Collections.Generic;
-using System.Linq;
-using System.Text;
-using System.Threading.Tasks;
-using System.Windows;
-using System.Windows.Controls;
-using System.Windows.Input;
-using System.Windows.Media;
-
-namespace Tango.Touch.Controls
-{
- public class TouchClickableControl : Grid
- {
- private bool _isMouseDown;
-
- #region Properties
-
- public object CommandParameter
- {
- get { return (object)GetValue(CommandParameterProperty); }
- set { SetValue(CommandParameterProperty, value); }
- }
- public static readonly DependencyProperty CommandParameterProperty =
- DependencyProperty.Register("CommandParameter", typeof(object), typeof(TouchClickableControl), new PropertyMetadata(null));
-
- #endregion
-
- #region Routed Events
-
- public static readonly RoutedEvent ClickEvent = EventManager.RegisterRoutedEvent("Click", RoutingStrategy.Bubble, typeof(RoutedEventHandler), typeof(TouchClickableControl));
- public event RoutedEventHandler Click
- {
- add
- {
- AddHandler(ClickEvent, value);
- }
- remove
- {
- RemoveHandler(ClickEvent, value);
- }
- }
-
- #endregion
-
- #region Commands
-
- public ICommand Command
- {
- get { return (ICommand)GetValue(CommandProperty); }
- set { SetValue(CommandProperty, value); }
- }
- public static readonly DependencyProperty CommandProperty =
- DependencyProperty.Register("Command", typeof(ICommand), typeof(TouchClickableControl), new PropertyMetadata(null, (d, e) => (d as TouchClickableControl).OnCommandChanged()));
-
- #endregion
-
- #region Constructors
-
- public TouchClickableControl()
- {
- Background = Brushes.Transparent;
- }
-
- #endregion
-
- #region Private Methods
-
- private void OnCommandChanged()
- {
- if (Command != null)
- {
- Command.CanExecuteChanged -= Command_CanExecuteChanged;
- Command.CanExecuteChanged += Command_CanExecuteChanged;
- }
- }
-
- private void Command_CanExecuteChanged(object sender, EventArgs e)
- {
- IsEnabled = Command != null && Command.CanExecute(CommandParameter);
- }
-
- #endregion
-
- #region Override Methods
-
- protected override void OnMouseDown(MouseButtonEventArgs e)
- {
- base.OnMouseDown(e);
- _isMouseDown = true;
- }
-
- protected override void OnMouseUp(MouseButtonEventArgs e)
- {
- base.OnMouseUp(e);
- if (_isMouseDown)
- {
- OnClick();
- }
-
- _isMouseDown = false;
- }
-
- protected override void OnMouseLeave(MouseEventArgs e)
- {
- base.OnMouseLeave(e);
- _isMouseDown = false;
- }
-
- #endregion
-
- #region Virtual Methods
-
- /// <summary>
- /// Raises the click event and executes the command.
- /// </summary>
- protected virtual void OnClick()
- {
- RoutedEventArgs args = new RoutedEventArgs(TouchClickableControl.ClickEvent, this);
- RaiseEvent(args);
- if (Command != null && Command.CanExecute(CommandParameter))
- {
- Command.Execute(CommandParameter);
- }
- }
-
- #endregion
- }
-}