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
#pragma once
 
#include "btnenh.h"
#include "General_Draw.h"
#include "ViewHoleRecipeSetting.h"
#include "HoleInspector.h"
#include "ViewSettingSpline.h"
#include "ViewSettingNotch.h"
 
interface IInspectRecipeView2Parent
{
public:
    virtual BOOL            IInspectRecipe2RecipeView_SetMarker(int nPos,int nMarkPos) = 0;
    virtual void            IInspectRecipe2RecipeView_SetMarkerPos(int nOff_X,int nOff_Y) = 0;
    virtual void            IInspectRecipe2RecipeView_ModifyMarker(BOOL bModify) = 0;
    virtual void            IInspectRecipe2RecipeView_ChangeSide(int iSide) = 0;
};
 
// CViewRecipeInspectionView ´ëÈ­ »óÀÚÀÔ´Ï´Ù.
class CHardwareSettings;
class CGlassRecipe;
class CViewRecipeInspectionView : public CDialogEx
                                
{
    DECLARE_DYNAMIC(CViewRecipeInspectionView)
 
public:
    CViewRecipeInspectionView(CWnd* pParent = NULL);   // Ç¥ÁØ »ý¼ºÀÚÀÔ´Ï´Ù.
    virtual ~CViewRecipeInspectionView();
 
// ´ëÈ­ »óÀÚ µ¥ÀÌÅÍÀÔ´Ï´Ù.
    enum { IDD = IDD_DLG_RECIPE_INSPECTSETTING_VIEW };
 
protected:
    virtual void DoDataExchange(CDataExchange* pDX);    // DDX/DDV Áö¿øÀÔ´Ï´Ù.
    afx_msg void OnClickAlignMarkType(UINT nID);    
    virtual BOOL OnInitDialog();
    virtual BOOL PreTranslateMessage(MSG* pMsg);
    afx_msg void OnShowWindow(BOOL bShow, UINT nStatus);    
    afx_msg void OnPaint();    
    LRESULT    OnSplineApplyRecipe(WPARAM wParam, LPARAM lParam);    
    LRESULT    OnNotchApplyRecipe(WPARAM wParam, LPARAM lParam);    
    DECLARE_MESSAGE_MAP()
    DECLARE_EVENTSINK_MAP()
 
public:
    void            SetRecipe(CHardwareSettings *pHW,CGlassRecipe *pRecipe);
    void            DrawMarkImage();    
    void            Refresh();
    void            SetI2M(IInspectRecipeView2Parent *pI2M){m_pI2M=pI2M;}
    void            SetH2M(IHoleRecipeView2Parent *pH2M){m_pH2V=pH2M;}
 
protected:
    enum            eViewCorner {eRcp_Corner_Use=0, eRcp_Corner_End};
    CBtnEnh            m_ctrlCmdCorner[eRcp_Corner_End];    
    enum            eViewCmdSide {eRcp_SideRD_A=0, eRcp_SideRD_B, eRcp_SideRD_C, eRcp_SideRD_D,eRcp_SideRD_A_DN,eRcp_SideRD_B_DN,eRcp_SideRD_C_DN,eRcp_SideRD_D_DN,eRcp_SideRD_End};        
    CBtnEnh            m_ctrlCmdSideBtn[eRcp_SideRD_End];    
    enum            eViewMarkSel {eRcp_MarkSel_T=0, eRcp_MarkSel_B, eRcp_MarkSel_End};        
    CBtnEnh            m_ctrlRDMarkBtn[eRcp_MarkSel_End];    
    enum            eViewMarkPos {eRcp_MarkPos_1=0, eRcp_MarkPos_2,eRcp_MarkPos_3,eRcp_MarkPos_End};
    CBtnEnh            m_ctrlRDMarkPos[eRcp_MarkPos_End];    
    enum            eViewMarkEnable {eRcp_MarkEN_A=0, eRcp_MarkEN_B, eRcp_MarkEN_C,eRcp_MarkEN_D,eRcp_MarkEN_A_DN,eRcp_MarkEN_B_DN,eRcp_MarkEN_C_DN,eRcp_MarkEN_D_DN
                                    ,eRcp_MarkEN_Sub_A, eRcp_MarkEN_Sub_B, eRcp_MarkEN_Sub_C,eRcp_MarkEN_Sub_D, eRcp_MarkEN_End};        
    CBtnEnh            m_ctrlMarkEnBtn[eRcp_MarkEN_End];    
    enum            eViewJudgeAnd {eRcp_JudgeAnd_Chip=0,eRcp_JudgeAnd_Burr,eRcp_JudgeAnd_Broken,eRcp_JudgeAnd_CFChip,eRcp_JudgeAnd_CFBurr,eRcp_JudgeAnd_Crack, eRcp_JudgeAnd_End};        
    CBtnEnh            m_ctrlJudgeAnd[eRcp_JudgeAnd_End];    
    enum            eViewJudgeUse {eRcp_JudgeUse_Chip=0,eRcp_JudgeUse_Burr,eRcp_JudgeUse_Broken,eRcp_JudgeUse_CFChip,eRcp_JudgeUse_CFBurr,eRcp_JudgeUse_Crack, eRcp_JudgeUse_End};        
    CBtnEnh            m_ctrlJudgeUse[eRcp_JudgeUse_End];        
    CBtnEnh            m_ctrlMarkModify;
 
protected:
    void            ClickChkUseCornerButton();
    void            ClickChkSideSelButton();
    void            ClickChkMarkSelButton();
    void            ClickChkMarkPosButton();
    void            ClickChkMarkEnableButton();
    void            ClickChkJudgeAndButton();
    void            ClickChkJudgeUSEButton();    
    void            OnBnClickedCheckMarkModify();
    void            OnBnClickedMarkUpdate_1();
    void            OnBnClickedMarkUpdate_2();
    void            OnBnClickedMarkUpdate_3();
    void            OnBnClickedMarkDelete_1();
    void            OnBnClickedMarkDelete_2();
    void            OnBnClickedMarkDelete_3();
    void            OnBnClickedBtnMarkLeft();
    void            OnBnClickedBtnMarkUp();
    void            OnBnClickedBtnMarkDn();
    void            OnBnClickedBtnMarkRight();
    void            ClickHoleSettingButton();
    void            OnBnClickedBtnRCutSettins();
    void            OnBnClickedBtnNotchSettins();
 
    void            SetButtonEnable(const BOOL& bEnable);    
    void            ChangViewCdmRD(int nID);    
    void            SetFontControl();
    void            SetControlButton();    
    void            SetButtonEnableCmdSide(const BOOL& bEnable);
    void            SetEnableCmdSide(eViewCmdSide eSelView, BOOL bEnable);
    void            ChangViewCdmSide(UINT nID);
    void            SetButtonMarkEnableAll(const BOOL& bEnable);
    void            SetButtonMarkSelTB(eViewMarkSel eSelView, BOOL bEnable);
    void            SetButtonMarkPosEnableAll(const BOOL& bEnable);
    void            SetButtonMarkPos(eViewMarkPos eSelView, BOOL bEnable);
    void            ChangeViewMarkSel(UINT nID);
    void            ChangeViewMarkPos(UINT nID);
    void            ChangeMarkEnable(BOOL bWrite);
    void            SetButtonMarkEnAllEnable(const BOOL& bEnable);
 
    void            SetButtonJudgeAndEnable(const BOOL& bEnable);
    void            SetButtonJudgeUseEnable(const BOOL& bEnable);    
 
    void            ChangeSideSelect(eViewCmdSide eSelView);
    void            SetRefMark(int nPos);
    void            Del_Mark(int nMark);
    void            SetMarkPos(int nOff_X,int nOff_Y);
    void            Init_BitmapInfo();
 
protected:
    BITMAPINFO        *m_pBmInfo;
    CViewSettingSpline            *m_pViewSettingSpline;
    CViewSettingNotch            *m_pViewSettingNotch;
    CViewHoleRecipeSetting        *m_pViewHoleRecipeSetting;
    IHoleRecipeView2Parent        *m_pH2V;    
    int                m_nCndRDSide;
    int                m_nCndMarkSel;    
    int                m_nCndMarkPos;
    CHardwareSettings    *m_pHardware;
    CGlassRecipe    *m_pDlgRecipe;
    IInspectRecipeView2Parent    *m_pI2M;
    CFontControl                m_FontControl;
};