From 3c5f32456c72b26497c05bb35fd64e3c77c6b0f5 Mon Sep 17 00:00:00 2001 From: Roy Ben-Shabat Date: Mon, 15 Apr 2019 12:06:30 +0300 Subject: Now using the latest RealTimeGraphX library! + infinity check! --- .../Controls/IRealTimeGraph.cs | 35 --------- .../Controls/RealTimeGraphControl.xaml | 65 ---------------- .../Controls/RealTimeGraphControl.xaml.cs | 77 ------------------- .../Controls/WpfGraphControl.cs | 88 ++++++++++++++++++++++ .../Resources/MaterialDesign.xaml | 29 +------ .../Tango.MachineStudio.Common.csproj | 24 ++---- .../Tango.MachineStudio.Common/Themes/Generic.xaml | 87 +++++++++++++++++++++ 7 files changed, 183 insertions(+), 222 deletions(-) delete mode 100644 Software/Visual_Studio/MachineStudio/Tango.MachineStudio.Common/Controls/IRealTimeGraph.cs delete mode 100644 Software/Visual_Studio/MachineStudio/Tango.MachineStudio.Common/Controls/RealTimeGraphControl.xaml delete mode 100644 Software/Visual_Studio/MachineStudio/Tango.MachineStudio.Common/Controls/RealTimeGraphControl.xaml.cs create mode 100644 Software/Visual_Studio/MachineStudio/Tango.MachineStudio.Common/Controls/WpfGraphControl.cs (limited to 'Software/Visual_Studio/MachineStudio/Tango.MachineStudio.Common') diff --git a/Software/Visual_Studio/MachineStudio/Tango.MachineStudio.Common/Controls/IRealTimeGraph.cs b/Software/Visual_Studio/MachineStudio/Tango.MachineStudio.Common/Controls/IRealTimeGraph.cs deleted file mode 100644 index dcf2cdf81..000000000 --- a/Software/Visual_Studio/MachineStudio/Tango.MachineStudio.Common/Controls/IRealTimeGraph.cs +++ /dev/null @@ -1,35 +0,0 @@ -using RealTimeGraphEx; -using RealTimeGraphEx.Controllers; -using RealTimeGraphX; -using RealTimeGraphX.WPF.DataSeries; -using System; -using System.Collections.Generic; -using System.Linq; -using System.Text; -using System.Threading.Tasks; - -namespace Tango.MachineStudio.Common.Controls -{ - public interface IRealTimeGraph - { - /// - /// Gets or sets the name of the sensor. - /// - String DisplayName { get; set; } - - /// - /// Gets or sets the tag. - /// - Object Tag { get; set; } - - /// - /// Gets or sets the sensor units. - /// - String DisplayUnits { get; set; } - - /// - /// Gets or sets the inner graph controller. - /// - IGraphController Controller { get; set; } - } -} diff --git a/Software/Visual_Studio/MachineStudio/Tango.MachineStudio.Common/Controls/RealTimeGraphControl.xaml b/Software/Visual_Studio/MachineStudio/Tango.MachineStudio.Common/Controls/RealTimeGraphControl.xaml deleted file mode 100644 index b5e809a3e..000000000 --- a/Software/Visual_Studio/MachineStudio/Tango.MachineStudio.Common/Controls/RealTimeGraphControl.xaml +++ /dev/null @@ -1,65 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/Software/Visual_Studio/MachineStudio/Tango.MachineStudio.Common/Controls/RealTimeGraphControl.xaml.cs b/Software/Visual_Studio/MachineStudio/Tango.MachineStudio.Common/Controls/RealTimeGraphControl.xaml.cs deleted file mode 100644 index f82196fed..000000000 --- a/Software/Visual_Studio/MachineStudio/Tango.MachineStudio.Common/Controls/RealTimeGraphControl.xaml.cs +++ /dev/null @@ -1,77 +0,0 @@ -using System; -using System.Collections.Generic; -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.Media; -using System.Windows.Media.Animation; -using System.Windows.Media.Imaging; -using System.Windows.Navigation; -using System.Windows.Shapes; -using RealTimeGraphEx; -using RealTimeGraphEx.Controllers; -using RealTimeGraphX; -using RealTimeGraphX.WPF.DataSeries; - -namespace Tango.MachineStudio.Common.Controls -{ - /// - /// Interaction logic for RealTimeGraphControl.xaml - /// - public partial class RealTimeGraphControl : UserControl, IRealTimeGraph - { - #region Properties - - public String DisplayName - { - get { return (String)GetValue(DisplayNameProperty); } - set { SetValue(DisplayNameProperty, value); } - } - public static readonly DependencyProperty DisplayNameProperty = - DependencyProperty.Register("DisplayName", typeof(String), typeof(RealTimeGraphControl), new PropertyMetadata(null)); - - public String DisplayUnits - { - get { return (String)GetValue(DisplayUnitsProperty); } - set { SetValue(DisplayUnitsProperty, value); } - } - public static readonly DependencyProperty DisplayUnitsProperty = - DependencyProperty.Register("DisplayUnits", typeof(String), typeof(RealTimeGraphControl), new PropertyMetadata(null)); - - public String StringFormat - { - get { return (String)GetValue(StringFormatProperty); } - set { SetValue(StringFormatProperty, value); } - } - public static readonly DependencyProperty StringFormatProperty = - DependencyProperty.Register("StringFormat", typeof(String), typeof(RealTimeGraphControl), new PropertyMetadata("0.0")); - - - - public IGraphController Controller - { - get { return (IGraphController)GetValue(ControllerProperty); } - set { SetValue(ControllerProperty, value); } - } - public static readonly DependencyProperty ControllerProperty = - DependencyProperty.Register("Controller", typeof(IGraphController), typeof(RealTimeGraphControl), new PropertyMetadata(null,(d,e) => (d as RealTimeGraphControl).OnControllerChanged())); - - private void OnControllerChanged() - { - Controller.Output.Output.ConnectOutput(Graph); - } - - #endregion - - public RealTimeGraphControl() - { - InitializeComponent(); - } - } -} diff --git a/Software/Visual_Studio/MachineStudio/Tango.MachineStudio.Common/Controls/WpfGraphControl.cs b/Software/Visual_Studio/MachineStudio/Tango.MachineStudio.Common/Controls/WpfGraphControl.cs new file mode 100644 index 000000000..68db76cd5 --- /dev/null +++ b/Software/Visual_Studio/MachineStudio/Tango.MachineStudio.Common/Controls/WpfGraphControl.cs @@ -0,0 +1,88 @@ +using RealTimeGraphX; +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.Data; +using System.Windows.Documents; +using System.Windows.Input; +using System.Windows.Media; +using System.Windows.Media.Imaging; +using System.Windows.Navigation; +using System.Windows.Shapes; + +namespace Tango.MachineStudio.Common.Controls +{ + public class WpfGraphControl : Control + { + /// + /// Gets or sets the graph controller. + /// + public IGraphController Controller + { + get { return (IGraphController)GetValue(ControllerProperty); } + set { SetValue(ControllerProperty, value); } + } + public static readonly DependencyProperty ControllerProperty = + DependencyProperty.Register("Controller", typeof(IGraphController), typeof(WpfGraphControl), new PropertyMetadata(null)); + + + /// + /// Gets or sets the string format of the y-axis. + /// + public String StringFormat + { + get { return (String)GetValue(StringFormatProperty); } + set { SetValue(StringFormatProperty, value); } + } + public static readonly DependencyProperty StringFormatProperty = + DependencyProperty.Register("StringFormat", typeof(String), typeof(WpfGraphControl), new PropertyMetadata("0.0")); + + + /// + /// Gets or sets the display name. + /// + public String DisplayName + { + get { return (String)GetValue(DisplayNameProperty); } + set { SetValue(DisplayNameProperty, value); } + } + public static readonly DependencyProperty DisplayNameProperty = + DependencyProperty.Register("DisplayName", typeof(String), typeof(WpfGraphControl), new PropertyMetadata(null)); + + + /// + /// Gets or sets the display units. + /// + public String DisplayUnits + { + get { return (String)GetValue(DisplayUnitsProperty); } + set { SetValue(DisplayUnitsProperty, value); } + } + public static readonly DependencyProperty DisplayUnitsProperty = + DependencyProperty.Register("DisplayUnits", typeof(String), typeof(WpfGraphControl), new PropertyMetadata(null)); + + /// + /// Gets or sets the graph label visibility. + /// + public Visibility GraphLabelVisibility + { + get { return (Visibility)GetValue(GraphLabelVisibilityProperty); } + set { SetValue(GraphLabelVisibilityProperty, value); } + } + public static readonly DependencyProperty GraphLabelVisibilityProperty = + DependencyProperty.Register("GraphLabelVisibility", typeof(Visibility), typeof(WpfGraphControl), new PropertyMetadata(Visibility.Visible)); + + + /// + /// Initializes the class. + /// + static WpfGraphControl() + { + DefaultStyleKeyProperty.OverrideMetadata(typeof(WpfGraphControl), new FrameworkPropertyMetadata(typeof(WpfGraphControl))); + } + } +} diff --git a/Software/Visual_Studio/MachineStudio/Tango.MachineStudio.Common/Resources/MaterialDesign.xaml b/Software/Visual_Studio/MachineStudio/Tango.MachineStudio.Common/Resources/MaterialDesign.xaml index 2f65fe817..d90d03545 100644 --- a/Software/Visual_Studio/MachineStudio/Tango.MachineStudio.Common/Resources/MaterialDesign.xaml +++ b/Software/Visual_Studio/MachineStudio/Tango.MachineStudio.Common/Resources/MaterialDesign.xaml @@ -235,39 +235,12 @@ - - - - - - - - - - - + diff --git a/Software/Visual_Studio/MachineStudio/Tango.MachineStudio.Common/Tango.MachineStudio.Common.csproj b/Software/Visual_Studio/MachineStudio/Tango.MachineStudio.Common/Tango.MachineStudio.Common.csproj index 4cf1855ca..e2bf7792d 100644 --- a/Software/Visual_Studio/MachineStudio/Tango.MachineStudio.Common/Tango.MachineStudio.Common.csproj +++ b/Software/Visual_Studio/MachineStudio/Tango.MachineStudio.Common/Tango.MachineStudio.Common.csproj @@ -60,6 +60,7 @@ + @@ -87,6 +88,7 @@ MachineView.xaml + @@ -100,11 +102,7 @@ HiveComboControl.xaml - - - RealTimeGraphControl.xaml - @@ -177,10 +175,6 @@ - - Designer - MSBuild:Compile - Designer MSBuild:Compile @@ -223,16 +217,12 @@ - - {b9ae25d6-be35-492f-9079-21a7f3e6f7cc} - RealTimeGraphEx - - - {99d233c5-fee7-418e-9c25-d4584cb52e28} + + {6b9774f7-960d-438e-ad81-c6b9be328d50} RealTimeGraphX.WPF - - {6d55a3b8-46d3-493a-a143-aebd2b98d683} + + {f13a489c-80ee-4cd0-bdd4-92d959215646} RealTimeGraphX @@ -386,7 +376,7 @@ - + \ No newline at end of file diff --git a/Software/Visual_Studio/MachineStudio/Tango.MachineStudio.Common/Themes/Generic.xaml b/Software/Visual_Studio/MachineStudio/Tango.MachineStudio.Common/Themes/Generic.xaml index 9cc398753..79245745e 100644 --- a/Software/Visual_Studio/MachineStudio/Tango.MachineStudio.Common/Themes/Generic.xaml +++ b/Software/Visual_Studio/MachineStudio/Tango.MachineStudio.Common/Themes/Generic.xaml @@ -2,6 +2,7 @@ xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" xmlns:mahApps="http://metro.mahapps.com/winfx/xaml/controls" + xmlns:realTimeGraphX="clr-namespace:RealTimeGraphX.WPF;assembly=RealTimeGraphX.WPF" xmlns:converters="clr-namespace:Tango.SharedUI.Converters;assembly=Tango.SharedUI" xmlns:local="clr-namespace:Tango.MachineStudio.Common.Controls"> @@ -28,4 +29,90 @@ + + + + + + + + + + + + + + + + -- cgit v1.3.1