// DlgMeasure.cpp : ±¸Çö ÆÄÀÏÀÔ´Ï´Ù.
|
//
|
|
#include "stdafx.h"
|
#include "ReviewRecipeEditor.h"
|
#include "DlgMeasure.h"
|
#include "ReviewRecipeEditorDlg.h"
|
#include "CHEdgeTriangle/RecipeManager.h"
|
#include "DlgCommon.h"
|
|
// CDlgMeasure ´ëÈ »óÀÚÀÔ´Ï´Ù.
|
|
IMPLEMENT_DYNAMIC(CDlgMeasure, CDialog)
|
|
CDlgMeasure::CDlgMeasure(CWnd* pParent /*=NULL*/)
|
: CDialog(CDlgMeasure::IDD, pParent)
|
, m_nMeasureCount(0)
|
, m_nResultCount(0)
|
, m_nModuleCount(0)
|
, m_nSelectResultIdx(-1)
|
, m_nUserGlassCount(0)
|
, m_strStdCameraGlassPosX(_T("0.000"))
|
, m_strStdCameraGlassPosY(_T("0.000"))
|
{
|
|
}
|
|
CDlgMeasure::~CDlgMeasure()
|
{
|
}
|
|
void CDlgMeasure::DoDataExchange(CDataExchange* pDX)
|
{
|
CDialog::DoDataExchange(pDX);
|
DDX_Text(pDX, IDC_EDIT_RCP_MEASURE_COUNT, m_nMeasureCount);
|
DDX_Text(pDX, IDC_EDIT_RCP_RESULT_COUNT, m_nResultCount);
|
DDX_Text(pDX, IDC_EDIT_RCP_MODULE_COUNT, m_nModuleCount);
|
|
DDX_Text(pDX, IDC_EDIT_STD_CAMERA_GLASS_X, m_strStdCameraGlassPosX);
|
DDX_Text(pDX, IDC_EDIT_STD_CAMERA_GLASS_Y, m_strStdCameraGlassPosY);
|
|
DDX_Control(pDX, IDC_GRID_RCP_MEASURE_INFO, m_ctrlGridMeasureInfo);
|
DDX_Control(pDX, IDC_COMBO_GLASS_ORIGIN_DIR, m_ctrlGlassOriginDir);
|
|
DDX_Text(pDX, IDC_EDIT_RCP_GlASS_COUNT, m_nUserGlassCount);
|
}
|
|
|
BEGIN_MESSAGE_MAP(CDlgMeasure, CDialog)
|
ON_BN_CLICKED(IDC_BUTTON_RCP_MEASURE_RESET, &CDlgMeasure::OnBnClickedButtonRcpMeasureReset)
|
ON_BN_CLICKED(IDC_BUTTON_RCP_MEASURE_APPLY, &CDlgMeasure::OnBnClickedButtonRcpMeasureApply)
|
ON_EN_CHANGE(IDC_EDIT_RCP_MEASURE_COUNT, &CDlgMeasure::OnEnChangeEditRcpMeasureCount)
|
ON_EN_CHANGE(IDC_EDIT_RCP_RESULT_COUNT, &CDlgMeasure::OnEnChangeEditRcpResultCount)
|
ON_EN_CHANGE(IDC_EDIT_RCP_MODULE_COUNT, &CDlgMeasure::OnEnChangeEditRcpModuleCount)
|
ON_BN_CLICKED(IDC_BUTTON_GLASS_POS_SET, &CDlgMeasure::OnBnClickedButtonGlassPosSet)
|
ON_NOTIFY(NM_CLICK, IDC_GRID_RCP_MEASURE_INFO, &CDlgMeasure::OnGridClick)
|
ON_WM_TIMER()
|
ON_BN_CLICKED(IDC_BUTTON_SET_ALL_MODEL, &CDlgMeasure::OnBnClickedButtonSetAllModel)
|
ON_BN_CLICKED(IDC_BUTTON_SET_ALL_MAGNIFIC, &CDlgMeasure::OnBnClickedButtonSetAllMagnific)
|
ON_BN_CLICKED(IDC_BUTTON_SET_ALL_LIGHT, &CDlgMeasure::OnBnClickedButtonSetAllLight)
|
END_MESSAGE_MAP()
|
|
|
// CDlgMeasure ¸Þ½ÃÁö 󸮱âÀÔ´Ï´Ù.
|
|
BOOL CDlgMeasure::OnInitDialog()
|
{
|
CDialog::OnInitDialog();
|
|
for (int i=0; i<GlassOriginDir_Count; i++)
|
{
|
switch(i)
|
{
|
case GlassOriginDir_LeftTop:
|
m_ctrlGlassOriginDir.InsertString(i, _T("Left Top"));
|
break;
|
case GlassOriginDir_RightTop:
|
m_ctrlGlassOriginDir.InsertString(i, _T("Right Top"));
|
break;
|
case GlassOriginDir_LeftBottom:
|
m_ctrlGlassOriginDir.InsertString(i, _T("Left Bottom"));
|
break;
|
case GlassOriginDir_RightBottom:
|
m_ctrlGlassOriginDir.InsertString(i, _T("Right Bottom"));
|
break;
|
}
|
}
|
m_ctrlGlassOriginDir.SetCurSel(GlassOriginDir_LeftBottom);
|
|
InitMeasureInfoGridControl();
|
|
FillMeasureInfo();
|
|
SetTimer(100, 500, NULL);
|
|
return TRUE; // return TRUE unless you set the focus to a control
|
}
|
|
BOOL CDlgMeasure::PreTranslateMessage(MSG* pMsg)
|
{
|
// TODO: ¿©±â¿¡ Ư¼öÈµÈ Äڵ带 Ãß°¡ ¹×/¶Ç´Â ±âº» Ŭ·¡½º¸¦ È£ÃâÇÕ´Ï´Ù.
|
if( pMsg->message == WM_KEYDOWN )
|
{
|
if(pMsg->wParam == VK_RETURN || pMsg->wParam == VK_ESCAPE )
|
{
|
::TranslateMessage(pMsg);
|
::DispatchMessage(pMsg);
|
return TRUE;
|
}
|
}
|
|
return CDialog::PreTranslateMessage(pMsg);
|
}
|
|
void CDlgMeasure::UpdateDialogData()
|
{
|
FillMeasureInfo();
|
|
Invalidate(FALSE);
|
}
|
|
void CDlgMeasure::OnBnClickedButtonRcpMeasureReset()
|
{
|
// TODO: ¿©±â¿¡ ÄÁÆ®·Ñ ¾Ë¸² 󸮱â Äڵ带 Ãß°¡ÇÕ´Ï´Ù.
|
m_nModuleCount = 0;
|
m_nResultCount = 0;
|
m_nMeasureCount = 0;
|
m_nUserGlassCount = 0;
|
|
UpdateData(FALSE);
|
|
OnEnChangeEditRcpMeasureCount();
|
}
|
|
|
|
void CDlgMeasure::OnBnClickedButtonRcpMeasureApply()
|
{
|
// TODO: ¿©±â¿¡ ÄÁÆ®·Ñ ¾Ë¸² 󸮱â Äڵ带 Ãß°¡ÇÕ´Ï´Ù.
|
UpdateData(TRUE);
|
|
int i, j, nRowIdx, nColIdx, nArrayCount;
|
CString strTemp, strItemText;
|
CRcp_RsMeasureManager* pRcpRsMeasureManager = NULL;
|
CGridCellCombo* pCellCombo = NULL;
|
CStringArray strArrayOption;
|
CReviewRecipeEditorDlg* pDlg = (CReviewRecipeEditorDlg*)AfxGetMainWnd();
|
if(pDlg == NULL) return;
|
|
|
pRcpRsMeasureManager = pDlg->GetRsMeasureManager();
|
if(pRcpRsMeasureManager == NULL) return;
|
|
|
nRowIdx = 1;
|
int nOriginDir = m_ctrlGlassOriginDir.GetCurSel();
|
pRcpRsMeasureManager->GetRsRcpMeasureInfo()->SetGlassOriginDir(nOriginDir);
|
pRcpRsMeasureManager->GetRsRcpMeasureInfo()->SetModuleCount(m_nModuleCount);
|
pRcpRsMeasureManager->GetRsRcpMeasureInfo()->SetResultCount(m_nResultCount);
|
pRcpRsMeasureManager->GetRsRcpMeasureInfo()->SetRcpMeasureInfoCount(m_nMeasureCount); //m_rsRcpMeasureInfo.m_vecRcpMeasureInfo.clear();
|
pRcpRsMeasureManager->GetRsRcpMeasureInfo()->SetUserGlassCount(m_nUserGlassCount);
|
|
for(i = 0; i < m_nMeasureCount; i++)
|
{
|
nColIdx = 1;
|
CRcpMeasureInfo* pRcpMeasureInfo = pRcpRsMeasureManager->GetRsRcpMeasureInfo()->GetRcpMeasureInfo(i);
|
if (pRcpMeasureInfo==NULL) continue;
|
|
//X Pos
|
strItemText = m_ctrlGridMeasureInfo.GetItemText(nRowIdx, nColIdx++);
|
pRcpMeasureInfo->m_nModuleIdx = _ttoi(strItemText);
|
|
//Y Pos
|
strItemText = m_ctrlGridMeasureInfo.GetItemText(nRowIdx, nColIdx++);
|
pRcpMeasureInfo->m_nResultIdx = _ttoi(strItemText);
|
|
|
//X Pos
|
strItemText = m_ctrlGridMeasureInfo.GetItemText(nRowIdx, nColIdx++);
|
pRcpMeasureInfo->m_dPosX = _tcstod(strItemText, NULL);
|
|
//Y Pos
|
strItemText = m_ctrlGridMeasureInfo.GetItemText(nRowIdx, nColIdx++);
|
pRcpMeasureInfo->m_dPosY = _tcstod(strItemText, NULL);
|
|
//Measure Model Idx
|
pCellCombo = (CGridCellCombo*)m_ctrlGridMeasureInfo.GetCell(nRowIdx, nColIdx++);
|
|
if(pCellCombo)
|
{
|
strArrayOption.RemoveAll();
|
strItemText = pCellCombo->GetText();
|
pCellCombo->GetOptions(strArrayOption);
|
nArrayCount = (int)strArrayOption.GetCount();
|
|
for(j = 0; j < nArrayCount; j++)
|
{
|
strTemp = strArrayOption.GetAt(j);
|
if(strTemp.Compare(strItemText) == 0)
|
{
|
pRcpMeasureInfo->m_nMeasureModelIdx = j;
|
break;
|
}
|
}
|
}
|
|
//Magnification Idx
|
pCellCombo = (CGridCellCombo*)m_ctrlGridMeasureInfo.GetCell(nRowIdx, nColIdx++);
|
|
if(pCellCombo)
|
{
|
strArrayOption.RemoveAll();
|
strItemText = pCellCombo->GetText();
|
pCellCombo->GetOptions(strArrayOption);
|
nArrayCount = (int)strArrayOption.GetCount();
|
|
for(j = 0; j < nArrayCount; j++)
|
{
|
strTemp = strArrayOption.GetAt(j);
|
if(strTemp.Compare(strItemText) == 0)
|
{
|
pRcpMeasureInfo->m_nMagnificationIdx = j;
|
break;
|
}
|
}
|
}
|
|
//Light Level
|
strItemText = m_ctrlGridMeasureInfo.GetItemText(nRowIdx, nColIdx++);
|
pRcpMeasureInfo->m_nLightLevel = _ttoi(strItemText);
|
|
nRowIdx++;
|
}
|
|
}
|
|
void CDlgMeasure::OnEnChangeEditRcpModuleCount()
|
{
|
OnEnChangeEditRcpResultCount();
|
}
|
|
|
void CDlgMeasure::OnEnChangeEditRcpResultCount()
|
{
|
UpdateData(TRUE);
|
|
m_nMeasureCount = m_nModuleCount * m_nResultCount;
|
|
UpdateData(FALSE);
|
|
OnEnChangeEditRcpMeasureCount();
|
}
|
|
|
|
void CDlgMeasure::OnEnChangeEditRcpMeasureCount()
|
{
|
UpdateData(TRUE);
|
|
int j, nRowIdx, nColIdx, nTriangleRecipeCount;
|
CString strTemp, strTriangleRecipePath;
|
CRect rect;
|
CRecipeInfo* pTriangleRecipeInfo = NULL;
|
CRecipeManager triangleRecipeManager;
|
|
strTriangleRecipePath = TRIANGLE_RECIPE_PATH;
|
strTriangleRecipePath += TRIANGLE_RECIPE_INFO;
|
triangleRecipeManager.ReadRecipeInfo(strTriangleRecipePath);
|
nTriangleRecipeCount = (int)triangleRecipeManager.GetRecipeInfoCount();
|
|
m_ctrlGridMeasureInfo.GetWindowRect(&rect);
|
m_ctrlGridMeasureInfo.SetRowCount(m_nMeasureCount + 1);
|
|
if(m_nMeasureCount > 0)
|
{
|
GV_ITEM Item;
|
CStringArray strArrayOption;
|
CGridCellCombo* pCellCombo = NULL;
|
nRowIdx = 1;
|
nColIdx = 1;
|
|
int nPointIdx = 0;
|
for (int nModuleIdx=0; nModuleIdx<m_nModuleCount; nModuleIdx++)
|
{
|
for (int nResultIdx=0; nResultIdx<m_nResultCount; nResultIdx++)
|
{
|
//À妽º
|
nColIdx = 0;
|
Item.mask = GVIF_TEXT;
|
Item.row = nRowIdx;
|
Item.col = nColIdx;
|
strTemp.Format(_T("%02d"), nPointIdx++);
|
Item.strText = strTemp;
|
m_ctrlGridMeasureInfo.SetItem(&Item);
|
|
// Module Idx
|
nColIdx = 1;
|
strArrayOption.RemoveAll();
|
for(j = 0; j < m_nModuleCount; j++)
|
{
|
strTemp.Format(_T("%d"), j);
|
strArrayOption.Add(strTemp);
|
}
|
m_ctrlGridMeasureInfo.SetCellType(nRowIdx, nColIdx, RUNTIME_CLASS(CGridCellCombo));
|
pCellCombo = (CGridCellCombo*)m_ctrlGridMeasureInfo.GetCell(nRowIdx, nColIdx);
|
pCellCombo->SetOptions(strArrayOption);
|
pCellCombo->SetStyle(CBS_DROPDOWN);
|
strTemp.Format(_T("%d"), nModuleIdx);
|
pCellCombo->SetText(strTemp);
|
|
|
// Result Idx
|
nColIdx = 2;
|
strArrayOption.RemoveAll();
|
for(j = 0; j < m_nResultCount; j++)
|
{
|
strTemp.Format(_T("%d"), j);
|
strArrayOption.Add(strTemp);
|
}
|
m_ctrlGridMeasureInfo.SetCellType(nRowIdx, nColIdx, RUNTIME_CLASS(CGridCellCombo));
|
pCellCombo = (CGridCellCombo*)m_ctrlGridMeasureInfo.GetCell(nRowIdx, nColIdx);
|
pCellCombo->SetOptions(strArrayOption);
|
pCellCombo->SetStyle(CBS_DROPDOWN);
|
strTemp.Format(_T("%d"), nResultIdx);
|
pCellCombo->SetText(strTemp);
|
|
|
// Model
|
nColIdx = 5;
|
strArrayOption.RemoveAll();
|
for(j = 0; j < nTriangleRecipeCount; j++)
|
{
|
pTriangleRecipeInfo = triangleRecipeManager.GetRecipeInfo(j);
|
|
if(pTriangleRecipeInfo)
|
{
|
strArrayOption.Add(pTriangleRecipeInfo->strRecipeName);
|
}
|
}
|
m_ctrlGridMeasureInfo.SetCellType(nRowIdx, nColIdx, RUNTIME_CLASS(CGridCellCombo));
|
pCellCombo = (CGridCellCombo*)m_ctrlGridMeasureInfo.GetCell(nRowIdx, nColIdx);
|
pCellCombo->SetOptions(strArrayOption);
|
pCellCombo->SetStyle(CBS_DROPDOWN);
|
|
// Magnific
|
nColIdx = 6;
|
strArrayOption.RemoveAll();
|
for(j = 0; j < RECIPE_MAGNIFICATION_COUNT; j++)
|
{
|
switch(j)
|
{
|
case RECIPE_MAGNIFICATION_X2:
|
strTemp.Format(_T("X2"));
|
break;
|
case RECIPE_MAGNIFICATION_X5:
|
strTemp.Format(_T("X5"));
|
break;
|
case RECIPE_MAGNIFICATION_X10:
|
strTemp.Format(_T("X10"));
|
break;
|
case RECIPE_MAGNIFICATION_X20:
|
strTemp.Format(_T("X20"));
|
break;
|
case RECIPE_MAGNIFICATION_X50:
|
strTemp.Format(_T("X50"));
|
break;
|
default:
|
strTemp.Format(_T(""));
|
break;
|
}
|
|
strArrayOption.Add(strTemp);
|
}
|
|
m_ctrlGridMeasureInfo.SetCellType(nRowIdx, nColIdx, RUNTIME_CLASS(CGridCellCombo));
|
pCellCombo = (CGridCellCombo*)m_ctrlGridMeasureInfo.GetCell(nRowIdx, nColIdx);
|
pCellCombo->SetOptions(strArrayOption);
|
pCellCombo->SetStyle(CBS_DROPDOWN);
|
|
nRowIdx++;
|
}
|
}
|
}
|
}
|
|
void CDlgMeasure::InitMeasureInfoGridControl()
|
{
|
int nRowIdx, nColIdx, nRows, nCols, nFixRows, nFixCols, nMargin, nDataColumnWidth;
|
CString strTemp;
|
CRect rect;
|
|
nRows = m_nMeasureCount + 1;
|
nCols = MEASURE_INFO_GRID_COL_COUNT;
|
nFixRows = 1;
|
nFixCols = 1;
|
nRowIdx = 0;
|
nColIdx = 0;
|
|
m_ctrlGridMeasureInfo.GetWindowRect(&rect);
|
m_ctrlGridMeasureInfo.GetDefaultCell(FALSE, FALSE)->SetBackClr(RGB(0xFF, 0xFF, 0xE0));
|
m_ctrlGridMeasureInfo.SetRowCount(nRows);
|
m_ctrlGridMeasureInfo.SetColumnCount(nCols);
|
m_ctrlGridMeasureInfo.SetFixedRowCount(nFixRows);
|
m_ctrlGridMeasureInfo.SetFixedColumnCount(nFixCols);
|
|
GV_ITEM Item;
|
|
Item.mask = GVIF_TEXT;
|
Item.row = nRowIdx;
|
Item.col = nColIdx;
|
strTemp.Format(_T("Idx"));//_T("À妽º"));
|
Item.strText = strTemp;
|
m_ctrlGridMeasureInfo.SetItem(&Item);
|
m_ctrlGridMeasureInfo.SetColumnWidth(nColIdx++, 30);
|
|
nMargin = 5;
|
nDataColumnWidth = (rect.Width() - 30 - nMargin) / (MEASURE_INFO_GRID_COL_COUNT - 1);
|
|
Item.col = nColIdx;
|
strTemp.Format(_T("Module"));
|
Item.strText = strTemp;
|
m_ctrlGridMeasureInfo.SetItem(&Item);
|
m_ctrlGridMeasureInfo.SetColumnWidth(nColIdx++, 50);
|
|
|
Item.col = nColIdx;
|
strTemp.Format(_T("Result"));
|
Item.strText = strTemp;
|
m_ctrlGridMeasureInfo.SetItem(&Item);
|
m_ctrlGridMeasureInfo.SetColumnWidth(nColIdx++, 50);
|
|
|
Item.col = nColIdx;
|
strTemp.Format(_T("X(mm)"));
|
Item.strText = strTemp;
|
m_ctrlGridMeasureInfo.SetItem(&Item);
|
m_ctrlGridMeasureInfo.SetColumnWidth(nColIdx++, 70);
|
|
Item.col = nColIdx;
|
strTemp.Format(_T("Y(mm)"));
|
Item.strText = strTemp;
|
m_ctrlGridMeasureInfo.SetItem(&Item);
|
m_ctrlGridMeasureInfo.SetColumnWidth(nColIdx++, 70);
|
|
Item.col = nColIdx;
|
strTemp.Format(_T("Model"));
|
Item.strText = strTemp;
|
m_ctrlGridMeasureInfo.SetItem(&Item);
|
m_ctrlGridMeasureInfo.SetColumnWidth(nColIdx++, 80);
|
|
Item.col = nColIdx;
|
strTemp.Format(_T("Magnific"));
|
Item.strText = strTemp;
|
m_ctrlGridMeasureInfo.SetItem(&Item);
|
m_ctrlGridMeasureInfo.SetColumnWidth(nColIdx++, 60);
|
|
Item.col = nColIdx;
|
strTemp.Format(_T("Light"));
|
Item.strText = strTemp;
|
m_ctrlGridMeasureInfo.SetItem(&Item);
|
m_ctrlGridMeasureInfo.SetColumnWidth(nColIdx++, 50);
|
}
|
|
void CDlgMeasure::FillMeasureInfo()
|
{
|
int i, nRowIdx, nColIdx;
|
CString strItemText;
|
CRcp_RsMeasureManager* pRcpRsMeasureManager = NULL;
|
CReviewRecipeEditorDlg* pDlg = (CReviewRecipeEditorDlg*)AfxGetMainWnd();
|
if(pDlg == NULL) return;
|
|
|
pRcpRsMeasureManager = pDlg->GetRsMeasureManager();
|
if(pRcpRsMeasureManager == NULL) return;
|
|
int nOriginDir = pRcpRsMeasureManager->GetRsRcpMeasureInfo()->GetGlassOriginDir();
|
m_ctrlGlassOriginDir.SetCurSel(nOriginDir);
|
|
int nMeasureCount = pRcpRsMeasureManager->GetRsRcpMeasureInfo()->GetRcpMeasureInfoCount();
|
int nModuleCount = pRcpRsMeasureManager->GetRsRcpMeasureInfo()->GetModuleCount();
|
int nResultCount = pRcpRsMeasureManager->GetRsRcpMeasureInfo()->GetResultCount();
|
int nGlassCount = pRcpRsMeasureManager->GetRsRcpMeasureInfo()->GetUserGlassCount();
|
|
if(nMeasureCount > 0)
|
{
|
CGridCellCombo* pCellCombo = NULL;
|
CStringArray strArrayOption;
|
|
nRowIdx = 1;
|
m_nMeasureCount = nMeasureCount;
|
m_nModuleCount = nModuleCount;
|
m_nResultCount = nResultCount;
|
m_nUserGlassCount = nGlassCount;
|
|
UpdateData(FALSE);
|
OnEnChangeEditRcpMeasureCount();
|
|
for(i = 0; i < nMeasureCount; i++)
|
{
|
nColIdx = 1;
|
CRcpMeasureInfo* pRcpMeasureInfo = pRcpRsMeasureManager->GetRsRcpMeasureInfo()->GetRcpMeasureInfo(i);
|
if(pRcpMeasureInfo == NULL) continue;
|
|
//X À§Ä¡
|
strItemText.Format(_T("%d"), pRcpMeasureInfo->m_nModuleIdx);
|
m_ctrlGridMeasureInfo.SetItemText(nRowIdx, nColIdx++, strItemText);
|
|
//Y À§Ä¡
|
strItemText.Format(_T("%d"), pRcpMeasureInfo->m_nResultIdx);
|
m_ctrlGridMeasureInfo.SetItemText(nRowIdx, nColIdx++, strItemText);
|
|
//X À§Ä¡
|
strItemText.Format(_T("%.03lf"), pRcpMeasureInfo->m_dPosX);
|
m_ctrlGridMeasureInfo.SetItemText(nRowIdx, nColIdx++, strItemText);
|
|
//Y À§Ä¡
|
strItemText.Format(_T("%.03lf"), pRcpMeasureInfo->m_dPosY);
|
m_ctrlGridMeasureInfo.SetItemText(nRowIdx, nColIdx++, strItemText);
|
|
//ÃøÁ¤ ¸ðµ¨
|
pCellCombo = (CGridCellCombo*)m_ctrlGridMeasureInfo.GetCell(nRowIdx, nColIdx);
|
|
if(pCellCombo)
|
{
|
strArrayOption.RemoveAll();
|
pCellCombo->GetOptions(strArrayOption);
|
|
if(strArrayOption.GetSize() > 0 && pRcpMeasureInfo->m_nMeasureModelIdx < strArrayOption.GetSize() && pRcpMeasureInfo->m_nMeasureModelIdx != -1)
|
{
|
strItemText = strArrayOption.GetAt(pRcpMeasureInfo->m_nMeasureModelIdx);
|
m_ctrlGridMeasureInfo.SetItemText(nRowIdx, nColIdx, strItemText);
|
}
|
}
|
|
//ÃøÁ¤ ¹èÀ²
|
nColIdx++;
|
pCellCombo = (CGridCellCombo*)m_ctrlGridMeasureInfo.GetCell(nRowIdx, nColIdx);
|
|
if(pCellCombo)
|
{
|
strArrayOption.RemoveAll();
|
pCellCombo->GetOptions(strArrayOption);
|
|
if(strArrayOption.GetSize() > 0 && pRcpMeasureInfo->m_nMagnificationIdx > -1)
|
{
|
strItemText = strArrayOption.GetAt(pRcpMeasureInfo->m_nMagnificationIdx);
|
m_ctrlGridMeasureInfo.SetItemText(nRowIdx, nColIdx, strItemText);
|
}
|
}
|
|
//±¤·®°ª
|
nColIdx++;
|
strItemText.Format(_T("%d"), pRcpMeasureInfo->m_nLightLevel);
|
m_ctrlGridMeasureInfo.SetItemText(nRowIdx, nColIdx++, strItemText);
|
|
nRowIdx++;
|
}
|
}
|
else
|
{
|
|
}
|
|
m_ctrlGridMeasureInfo.Invalidate(FALSE);
|
}
|
|
void CDlgMeasure::OnBnClickedButtonGlassPosSet()
|
{
|
if (m_nSelectResultIdx<0) return;
|
|
if (m_nSelectResultIdx>=m_ctrlGridMeasureInfo.GetRowCount())
|
{
|
return;
|
}
|
|
int nRowIdx = m_nSelectResultIdx + 1;
|
int nColIdx = 3;
|
|
//X À§Ä¡
|
m_ctrlGridMeasureInfo.SetItemText(nRowIdx, nColIdx++, m_strStdCameraGlassPosX);
|
|
//Y À§Ä¡
|
m_ctrlGridMeasureInfo.SetItemText(nRowIdx, nColIdx++, m_strStdCameraGlassPosY);
|
|
m_ctrlGridMeasureInfo.Invalidate(FALSE);
|
}
|
|
|
void CDlgMeasure::OnGridClick(NMHDR *pNotifyStruct, LRESULT* pResult)
|
{
|
int nIdx;
|
CString strItemText;
|
NM_GRIDVIEW* pItem = (NM_GRIDVIEW*) pNotifyStruct;
|
|
nIdx = pItem->iRow - 1;
|
|
if(nIdx >= 0)
|
{
|
m_nSelectResultIdx = nIdx;
|
}
|
}
|
|
void CDlgMeasure::OnTimer(UINT_PTR nIDEvent)
|
{
|
// TODO: ¿©±â¿¡ ¸Þ½ÃÁö 󸮱â Äڵ带 Ãß°¡ ¹×/¶Ç´Â ±âº»°ªÀ» È£ÃâÇÕ´Ï´Ù.
|
if (nIDEvent == 100)
|
{
|
static int i = 0;
|
|
if ( (i+1) % 2 == 0 )
|
{
|
CReviewRecipeEditorDlg* pDlg = (CReviewRecipeEditorDlg*)AfxGetMainWnd();
|
if(pDlg)
|
{
|
COPYDATA_RECIPE2REV copyData;
|
copyData.Message = MsgRecipe2Rev_StandardCameraGlassPos;
|
pDlg->SendData2ReviewSystem(©Data);
|
}
|
}
|
else
|
{
|
CReviewRecipeEditorDlg* pDlg = (CReviewRecipeEditorDlg*)AfxGetMainWnd();
|
if(pDlg)
|
{
|
COPYDATA_RECIPE2REV* pCopyData = pDlg->GetRecipe2ReviewData();
|
m_strStdCameraGlassPosX.Format(_T("%.03lf"), pCopyData->dStandardCameraGlassPosX);
|
m_strStdCameraGlassPosY.Format(_T("%.03lf"), pCopyData->dStandardCameraGlassPosY);
|
|
SetDlgItemText(IDC_EDIT_STD_CAMERA_GLASS_X, m_strStdCameraGlassPosX);
|
SetDlgItemText(IDC_EDIT_STD_CAMERA_GLASS_Y, m_strStdCameraGlassPosY);
|
}
|
}
|
|
i++;
|
}
|
|
|
CDialog::OnTimer(nIDEvent);
|
}
|
|
void CDlgMeasure::OnBnClickedButtonSetAllModel()
|
{
|
int nRowIdx = 1;
|
int nColIdx = 5;
|
|
CString strValue = m_ctrlGridMeasureInfo.GetItemText(nRowIdx, nColIdx);
|
for (int i=nRowIdx+1; i<m_ctrlGridMeasureInfo.GetRowCount(); i++)
|
{
|
m_ctrlGridMeasureInfo.SetItemText(i, nColIdx, strValue);
|
}
|
|
m_ctrlGridMeasureInfo.Invalidate(FALSE);
|
}
|
|
void CDlgMeasure::OnBnClickedButtonSetAllMagnific()
|
{
|
int nRowIdx = 1;
|
int nColIdx = 6;
|
|
CString strValue = m_ctrlGridMeasureInfo.GetItemText(nRowIdx, nColIdx);
|
for (int i=nRowIdx+1; i<m_ctrlGridMeasureInfo.GetRowCount(); i++)
|
{
|
m_ctrlGridMeasureInfo.SetItemText(i, nColIdx, strValue);
|
}
|
|
m_ctrlGridMeasureInfo.Invalidate(FALSE);
|
}
|
|
void CDlgMeasure::OnBnClickedButtonSetAllLight()
|
{
|
int nRowIdx = 1;
|
int nColIdx = 7;
|
|
CString strValue = m_ctrlGridMeasureInfo.GetItemText(nRowIdx, nColIdx);
|
for (int i=nRowIdx+1; i<m_ctrlGridMeasureInfo.GetRowCount(); i++)
|
{
|
m_ctrlGridMeasureInfo.SetItemText(i, nColIdx, strValue);
|
}
|
|
m_ctrlGridMeasureInfo.Invalidate(FALSE);
|
}
|