From 671ffb1ac11f0ea00524510af965550c3fbc40ad Mon Sep 17 00:00:00 2001
From: d23004 <kimseijin@diteam.co.kr>
Date: ์ˆ˜, 24 5์›” 2023 13:41:44 +0900
Subject: [PATCH] Merge remote-tracking branch 'origin/master'

---
 SA_LTT_UI/SA_LTT_UI/Viewer/ProcessRecipeInfoViewer.cs |   84 ++++++++++++++++++++++++++++++++++++++++++
 1 files changed, 84 insertions(+), 0 deletions(-)

diff --git a/SA_LTT_UI/SA_LTT_UI/Viewer/ProcessRecipeInfoViewer.cs b/SA_LTT_UI/SA_LTT_UI/Viewer/ProcessRecipeInfoViewer.cs
new file mode 100644
index 0000000..ddf6809
--- /dev/null
+++ b/SA_LTT_UI/SA_LTT_UI/Viewer/ProcessRecipeInfoViewer.cs
@@ -0,0 +1,84 @@
+็™คํ“Žsing SA_LTT;
+using SA_LTT.Info.RecipeInfo;
+using SA_LTT_UI.Screen;
+using System;
+using System.Collections.Generic;
+using System.ComponentModel;
+using System.Data;
+using System.Drawing;
+using System.Linq;
+using System.Text;
+using System.Threading.Tasks;
+using System.Windows.Forms;
+
+namespace SA_LTT_UI.Viewer
+{
+    public partial class ProcessRecipeInfoViewer : Form
+    {
+        MainFrame _mainFrame;
+
+        WaferProcessPointView _waferProcessPointView = new WaferProcessPointView();
+
+        public ProcessRecipeInfoViewer(MainFrame mainFrame)
+        {
+            InitializeComponent();
+            _mainFrame = mainFrame;
+
+            el_CurrentWaferProcess.Child = _waferProcessPointView;
+
+            _mainFrame.equipment.AddRecipeExcutedEvent(Sequence_RecipeExcuted);
+            _mainFrame.equipment.AddProcessInfoExcutedEvent(Sequence_ProcessInfoExcuted);
+        }
+
+        private void Sequence_RecipeExcuted(Recipe recipe)
+        {
+            if (InvokeRequired)
+            {
+                BeginInvoke(new RecipeExcuteEvent(Sequence_RecipeExcuted), recipe);
+            }
+            else
+            {
+                _waferProcessPointView.ClearProcessArea();
+                _waferProcessPointView.Radius = recipe.Radius;
+                _waferProcessPointView.PrimaryFlat = recipe.DistanceFromCenterToPrimaryFlat;
+
+                tb_RecipeName.Text = recipe.Name;
+                tb_RecipeRadius.Text = recipe.Radius.ToString();
+                tb_RecipeDistancePrimaryFlat.Text = recipe.DistanceFromCenterToPrimaryFlat.ToString();
+                tb_RecipeEdgeRound.Text = recipe.EdgeRound.ToString();
+
+                tb_RecipeBeamWidth.Text = recipe.BeamWidth.ToString();
+                tb_RecipeBeamHeight.Text = recipe.BeamHeight.ToString();
+
+                foreach (ProcessInfo processInfo in recipe.ProcessInfoList)
+                {
+                    processInfo.SetProcessData();
+
+                    _waferProcessPointView.AddProcessArea(processInfo.ProcessStartY, processInfo.ProcessEndY, processInfo.ProcessList.ToArray());
+                }
+            }
+        }
+
+        private void Sequence_ProcessInfoExcuted(ProcessInfo processInfo, int processInfoIndex)
+        {
+            if (InvokeRequired)
+            {
+                BeginInvoke(new ProcessInfoExcuteEvent(Sequence_ProcessInfoExcuted), processInfo, processInfoIndex);
+            }
+            else
+            {
+                tb_RecipeWidthOverlap.Text = processInfo.BeamWidthOverlap.ToString();
+                tb_RecipeHeightOverlap.Text = processInfo.BeamHeightOverlap.ToString();
+                tb_RecipeEnergy.Text = processInfo.Energy.ToString();
+
+                _waferProcessPointView.HighlightProcessAreas(processInfoIndex);
+            }
+        }
+
+        private void ProcessRecipeInfoViewer_FormClosing(object sender, FormClosingEventArgs e)
+        {
+            e.Cancel = true;
+            this.Hide();
+        }
+    }
+}

--
Gitblit v1.9.3