diff options
Diffstat (limited to 'Software/Visual_Studio/PPC/Modules/Tango.PPC.Maintenance/Controls')
| -rw-r--r-- | Software/Visual_Studio/PPC/Modules/Tango.PPC.Maintenance/Controls/StateTouchButton.cs | 109 |
1 files changed, 0 insertions, 109 deletions
diff --git a/Software/Visual_Studio/PPC/Modules/Tango.PPC.Maintenance/Controls/StateTouchButton.cs b/Software/Visual_Studio/PPC/Modules/Tango.PPC.Maintenance/Controls/StateTouchButton.cs deleted file mode 100644 index 9a259482b..000000000 --- a/Software/Visual_Studio/PPC/Modules/Tango.PPC.Maintenance/Controls/StateTouchButton.cs +++ /dev/null @@ -1,109 +0,0 @@ -using System; -using System.Collections; -using System.Collections.Generic; -using System.Collections.ObjectModel; -using System.Collections.Specialized; -using System.ComponentModel; -using System.Linq; -using System.Text; -using System.Threading.Tasks; -using System.Windows; -using System.Windows.Controls; -using System.Windows.Data; -using System.Windows.Documents; -using System.Windows.Input; -using System.Windows.Markup; -using System.Windows.Media; -using System.Windows.Media.Imaging; -using System.Windows.Navigation; -using System.Windows.Shapes; -using Tango.Touch.Controls; - -namespace Tango.PPC.Maintenance.Controls -{ - public class ButtonState : DependencyObject - { - public Object Value - { - get { return (Object)GetValue(ValueProperty); } - set { SetValue(ValueProperty, value); } - } - public static readonly DependencyProperty ValueProperty = - DependencyProperty.Register("Value", typeof(Object), typeof(ButtonState), new PropertyMetadata(null)); - - public Object Content - { - get { return (Object)GetValue(ContentProperty); } - set { SetValue(ContentProperty, value); } - } - public static readonly DependencyProperty ContentProperty = - DependencyProperty.Register("Content", typeof(Object), typeof(ButtonState), new PropertyMetadata(null)); - } - - [ContentProperty(nameof(States))] - public class StateTouchButton : TouchButton - { - public ObservableCollection<Object> States - { - get { return (ObservableCollection<Object>)GetValue(StatesProperty); } - set { SetValue(StatesProperty, value); } - } - public static readonly DependencyProperty StatesProperty = - DependencyProperty.Register("States", typeof(ObservableCollection<Object>), typeof(StateTouchButton), new PropertyMetadata(null, (d, e) => (d as StateTouchButton).OnStatesChanged())); - - public Object SelectedState - { - get { return (Object)GetValue(SelectedStateProperty); } - set { SetValue(SelectedStateProperty, value); } - } - public static readonly DependencyProperty SelectedStateProperty = - DependencyProperty.Register("SelectedState", typeof(Object), typeof(StateTouchButton), new PropertyMetadata(null, (d, e) => (d as StateTouchButton).OnSelectedStateChanged())); - - public StateTouchButton() - { - States = new ObservableCollection<object>(); - } - - private void OnStatesChanged() - { - if (States != null) - { - States.CollectionChanged -= States_CollectionChanged; - States.CollectionChanged += States_CollectionChanged; - OnSelectedStateChanged(); - } - } - - private void OnSelectedStateChanged() - { - if (SelectedState == null) - { - Content = null; - return; - } - - if (States != null) - { - var converter = TypeDescriptor.GetConverter(SelectedState.GetType()); - var matchingState = States.OfType<ButtonState>().ToList().FirstOrDefault(x => x.Value != null && converter.ConvertFrom(x.Value).Equals(SelectedState)); - if (matchingState != null) - { - Content = matchingState.Content; - } - else - { - Content = null; - } - } - else - { - Content = null; - } - } - - private void States_CollectionChanged(object sender, NotifyCollectionChangedEventArgs e) - { - OnSelectedStateChanged(); - } - } -} |
