aboutsummaryrefslogtreecommitdiffstats
path: root/Software/Visual_Studio/PPC/Tango.PPC.UI/Converters
diff options
context:
space:
mode:
authorVictoria Plitt <Victoria.Plitt@twine-s.com>2023-04-18 14:47:53 +0300
committerVictoria Plitt <Victoria.Plitt@twine-s.com>2023-04-18 14:47:53 +0300
commit1c7f16c34f85dd65a02ad08dde984f04a4d82b83 (patch)
tree74fb71b0959d1c7c1b9f09fdd636b3196b43aaf4 /Software/Visual_Studio/PPC/Tango.PPC.UI/Converters
parent7c7d1078082c261c820297cb6e4e5cf301872e4f (diff)
downloadTango-1c7f16c34f85dd65a02ad08dde984f04a4d82b83.tar.gz
Tango-1c7f16c34f85dd65a02ad08dde984f04a4d82b83.zip
PPC Eureka. Power button, new dialog.
Diffstat (limited to 'Software/Visual_Studio/PPC/Tango.PPC.UI/Converters')
-rw-r--r--Software/Visual_Studio/PPC/Tango.PPC.UI/Converters/LengthWithSpoolsConverter.cs2
-rw-r--r--Software/Visual_Studio/PPC/Tango.PPC.UI/Converters/ProgressLengthSpoolConverter.cs66
2 files changed, 67 insertions, 1 deletions
diff --git a/Software/Visual_Studio/PPC/Tango.PPC.UI/Converters/LengthWithSpoolsConverter.cs b/Software/Visual_Studio/PPC/Tango.PPC.UI/Converters/LengthWithSpoolsConverter.cs
index 3b42885bd..48e9bce7b 100644
--- a/Software/Visual_Studio/PPC/Tango.PPC.UI/Converters/LengthWithSpoolsConverter.cs
+++ b/Software/Visual_Studio/PPC/Tango.PPC.UI/Converters/LengthWithSpoolsConverter.cs
@@ -21,7 +21,7 @@ namespace Tango.PPC.UI.Converters
}
catch
{
- return "-";
+ return 0d;
}
}
diff --git a/Software/Visual_Studio/PPC/Tango.PPC.UI/Converters/ProgressLengthSpoolConverter.cs b/Software/Visual_Studio/PPC/Tango.PPC.UI/Converters/ProgressLengthSpoolConverter.cs
new file mode 100644
index 000000000..00473955b
--- /dev/null
+++ b/Software/Visual_Studio/PPC/Tango.PPC.UI/Converters/ProgressLengthSpoolConverter.cs
@@ -0,0 +1,66 @@
+using System;
+using System.Collections.Generic;
+using System.Globalization;
+using System.Linq;
+using System.Text;
+using System.Threading.Tasks;
+using System.Windows;
+using System.Windows.Data;
+
+namespace Tango.PPC.UI.Converters
+{
+ public class ProgressLengthSpoolConverter : IMultiValueConverter
+ {
+ public object Convert(object[] values, Type targetType, object parameter, CultureInfo culture)
+ {
+ try
+ {
+ if (values.Count() == 4)
+ {
+ double length = System.Convert.ToDouble(values[0]);
+ int spools = System.Convert.ToInt32(values[1]);
+ int NumberOfUnits = System.Convert.ToInt32(values[2]);
+ bool forOneSpool = System.Convert.ToBoolean(values[3]);
+ var totalBy4Spools = (double)length* spools * NumberOfUnits/ 4;
+ if (forOneSpool)
+ {
+ return (double)totalBy4Spools / 4;
+ }
+ return totalBy4Spools;
+
+ }
+ if (values.Count() == 5)
+ {
+ double length = System.Convert.ToDouble(values[0]);
+ int spools = System.Convert.ToInt32(values[1]);
+ int NumberOfUnits = System.Convert.ToInt32(values[2]);
+ bool forOneSpool = System.Convert.ToBoolean(values[3]);
+ double currentProgresslength = System.Convert.ToDouble(values[4]) ;
+
+ var totalBy4Spools = (double)length * spools * NumberOfUnits / 4;
+ var currentProgressBy4Spools = (double)currentProgresslength * spools ;
+
+ int coeff = (int)currentProgressBy4Spools / (int)totalBy4Spools;
+ var progressCurrent = coeff == 0 ? currentProgressBy4Spools : currentProgressBy4Spools % (coeff * totalBy4Spools);//show for progress
+
+ if (forOneSpool)
+ {
+ return (double)progressCurrent / 4;
+
+ }
+ return progressCurrent;
+ }
+ return "-";
+ }
+ catch
+ {
+ return "-";
+ }
+ }
+
+ public object[] ConvertBack(object value, Type[] targetTypes, object parameter, CultureInfo culture)
+ {
+ throw new NotImplementedException();
+ }
+ }
+}