SDC C-Project CF Review 프로그램
LYW
2021-06-07 b785acb6a38b295544c03f83caccf99368d1b598
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
 
// ReviewRecipeEditorDlg.h : Çì´õ ÆÄÀÏ
//
 
#pragma once
#include "afxcmn.h"
#include "DlgCommon.h"
#include "DlgReview.h"
#include "DlgMeasure.h"
#include "DlgAlign.h"
#include "DlgDefectFind.h"
#include "DlgRcpGlassInfo.h"
#include "CDlgJudgement.h"
#include "CHCommonControls/GridCtrl.h"
#include "CHCommonClasses/MacroFile.h"
#include "CHReviewRecipe/Rcp_RsReviewManager.h"
#include "CHReviewRecipe/Rcp_RsMeasureManager.h"
#include "CHReviewRecipe/Rcp_RsAlignManager.h"
#include "CHReviewRecipe/Rcp_RsDefectFindManager.h"
#include "CHReviewRecipe/Rcp_RsGlassTypeInfoManager.h"
#include "CHReviewSetting/Sys_SystemManager.h"
#include "CHReviewSetting/Sys_GlassTypeManager.h"
 
enum { RECIPE_LIST_GRID_ROW_COUNT = 1, RECIPE_LIST_GRID_COL_COUNT = 3 };
 
typedef enum RecipeMainTab { COMMON_TAB=0, REVIEW_TAB, WSI_TAB, ALIGN_TAB, JUDGE_TAB, MEASURE_TAB, DEFECT_FIND_TAB, GLASSINFO_TAB  };
 
// CReviewRecipeEditorDlg ´ëÈ­ »óÀÚ
class CReviewRecipeEditorDlg : public CDialog
{
// »ý¼ºÀÔ´Ï´Ù.
public:
    CReviewRecipeEditorDlg(CWnd* pParent = NULL);    // Ç¥ÁØ »ý¼ºÀÚÀÔ´Ï´Ù.
    virtual ~CReviewRecipeEditorDlg();
 
// ´ëÈ­ »óÀÚ µ¥ÀÌÅÍÀÔ´Ï´Ù.
    enum { IDD = IDD_REVIEWRECIPEEDITOR_DIALOG };
 
    protected:
    virtual void DoDataExchange(CDataExchange* pDX);    // DDX/DDV Áö¿øÀÔ´Ï´Ù.
 
public:
    COPYDATA_RECIPE2REV* GetRecipe2ReviewData();
    BOOL SendData2ReviewSystem(COPYDATA_RECIPE2REV* pData);
    BOOL IsReviewSystemPC();
    void GetCurrentIPAddress(CStringArray& strArrayIPAddress);
    void CreateReviewRecipeDirectory();
    void CreateManager();
    void CreateTabDlg();
    void InitTabControl();
    void InitRecipeListGridControl();
    void RefreshRecipeList();
    void FindRecipeFile(CStringArray& strArrayRecipeName, CStringArray& strArrayLastWriteTime);
    BOOL ReadRecipeFile(CString strRecipeName);
    BOOL SaveRecipeFile(CString strRecipeName);
    void UpdateTabDialogData();
    BOOL CreateRecipe(CString& strNewRecipeName);
    BOOL ReadReviewSystemConfigFile();
    CFontStatic m_SelectedRecipe;
    
    CRcp_RsReviewManager*        GetRsReviewManager()            { return m_pRsReviewManager; }
    CRcp_RsMeasureManager*        GetRsMeasureManager()            { return m_pRsMeasureManager; }
    CRcp_RsAlignManager*        GetRsAlignManager()                { return m_pRsAlignManager; }
    CRcp_RsDefectFindManager*    GetRsDefectFindManager()        { return m_pRsDefectFindManager; }
    CRcp_RsGlassTypeInfoManager* GetRsGlassTypeInfoManager()    { return m_pRsGlassTypeInfoManager; }
    CString GetCurrentRecipeName()                                { return m_strCurrentRecipeName; }            
 
    CSys_SystemManager* GetSysSystemManager()                    { return m_pSysSystemManager; }
    CSys_GlassTypeManager* GetSysGlassTypeManager()                { return m_pSysGlassTypeManager; }
    
    CSystemInfo*                GetSys_SystemInfo();
    CGantryInfo*                GetSys_GantryInfo(int nGantryIdx);
    CHeaderInfo*                GetSys_HeaderInfo(int nGantryIdx, int nHeaderIdx);
    CCameraControlInfo_Plus*    GetSys_CameraInfo(int nGantryIdx, int nHeaderIdx, int nCameraIdx);
    CLightControlInfo*            GetSys_LightInfo(int nGantryIdx, int nHeaderIdx, int nLightIdx);
    CLensChangeControlInfo*        GetSys_RevolverInfo(int nGantryIdx, int nHeaderIdx, int nRevolverIdx);
    CAfmControlInfo*            GetSys_AFMInfo(int nGantryIdx, int nHeaderIdx, int nAFMIdx);
 
private:
    COPYDATA_RECIPE2REV            m_DataRecipe2Rev;
 
    BOOL                        m_bReviewSystemPC;
    CString                        m_strCurrentRecipeName;
 
    CDlgCommon*                    m_pDlgCommon;
    CDlgReview*                    m_pDlgReviewFilter;    
    CDlgReview*                    m_pDlgWSIFilter;
    CDlgMeasure*                m_pDlgMeasure;
    CDlgAlign*                    m_pDlgAlign;
    CDlgDefectFind*                m_pDlgDefectFind;
    CDlgRcpGlassInfo*            m_pDlgRcpGlassInfo;
    CDlgJudgement*                m_pDlgJudgement;
 
    CRcp_RsReviewManager*        m_pRsReviewManager;
    CRcp_RsMeasureManager*        m_pRsMeasureManager;
    CRcp_RsAlignManager*        m_pRsAlignManager;
    CRcp_RsDefectFindManager*    m_pRsDefectFindManager;
    CRcp_RsGlassTypeInfoManager* m_pRsGlassTypeInfoManager;
 
 
    CSys_SystemManager*            m_pSysSystemManager;
    CSys_GlassTypeManager*        m_pSysGlassTypeManager;
 
 
// ±¸ÇöÀÔ´Ï´Ù.
protected:
    HICON m_hIcon;
 
    // »ý¼ºµÈ ¸Þ½ÃÁö ¸Ê ÇÔ¼ö
    virtual BOOL OnInitDialog();
    afx_msg void OnPaint();
    afx_msg HCURSOR OnQueryDragIcon();
    DECLARE_MESSAGE_MAP()
public:
    CGridCtrl m_ctrlGridRecipeList;
    CTabCtrl m_ctrlTabMain;
    afx_msg void OnBnClickedButtonReviewRcpEditorCreate();
    afx_msg void OnBnClickedButtonReviewRcpEditorDelete();
    afx_msg void OnBnClickedButtonReviewRcpEditorLoad();
    afx_msg void OnBnClickedButtonReviewRcpEditorSave();
    afx_msg void OnBnClickedButtonReviewrcpEditorExit();
    afx_msg void OnTcnSelchangeTabReviewRcpEditorMainTab(NMHDR *pNMHDR, LRESULT *pResult);
    afx_msg void OnGridDblClick(NMHDR *pNotifyStruct, LRESULT* pResult);
 
    // [2017:1:25]-[WEZASW] : SystemMachine_B7E_WSI ¼³ºñ ºÐ¸®(WSI À¯/¹«)
    int GetCurrentTapIndex(int nCurTap);
 
    // [2017:4:17]-[WEZASW] : Grid Control DB Clicked.
    BOOL SetSelectedRecipeInfo();
    // [2017:5:20]-[WEZASW] : Recipe »ý¼º ¿¹¿Üó¸®.(¼ýÀÚ¸¸ ÀÔ·Â, 1~999 ±îÁö Çã¿ë)
    BOOL GetRecipeValidityCheck(CString strRecipeName, CString& strMessage);
    
protected:
    virtual void OnCancel();
    static CReviewRecipeEditorDlg* pReviewRecipeEditor;
 
public:
    afx_msg void OnStnClickedStaticSelectRcipe();
    afx_msg BOOL OnCopyData(CWnd* pWnd, COPYDATASTRUCT* pCopyDataStruct);
    static CReviewRecipeEditorDlg* GetInstance();
    void ReviewRcpEditorSave(CString RecipeName);
    int m_nLoginLevel;
    
};