ShowBorderRemoveDlg Example for C++ 5.0 and later
void CDialogs::OnShowRemoveRedEyeDlg()
{
HRESULT hr;
int nRet;
ILEADRasterDlgKrn_U *m_pRasterDlgKrn = NULL;
hr = CoCreateInstance(CLSID_LEADRasterDlgKrn_U,
NULL,
CLSCTX_ALL,
IID_ILEADRasterDlgKrn_U,
(LPVOID*)&m_pRasterDlgKrn);
ILEADRasterDlgImgDoc_U *m_pRasterDlgImgDoc = NULL;
hr = CoCreateInstance(CLSID_LEADRasterDlgImgDoc_U,
NULL,
CLSCTX_ALL,
IID_ILEADRasterDlgImgDoc_U,
(LPVOID*)&m_pRasterDlgImgDoc);
nRet = m_pRasterDlgKrn->InitDlg(INIT_WITH_COLOR);
m_pRasterDlgImgDoc->Bitmap = m_pLead1.GetBitmap();
m_pRasterDlgImgDoc->BorderRemove->WhiteNoiseLength = 3;
m_pRasterDlgImgDoc->BorderRemove->BorderPercent = 5;
m_pRasterDlgImgDoc->BorderRemove->Variance = 2;
m_pRasterDlgImgDoc->BorderRemove->BorderToRemove = BORDER_LEFT;
m_pRasterDlgImgDoc->BorderRemove->Flags = BORDER_USE_VARIANCE;
nRet = m_pRasterDlgImgDoc->ShowBorderRemoveDlg((long)m_hWnd);
if (nRet == 0 && m_pRasterDlgImgDoc->DialogStatus == DLG_OK)
{
m_pLead1.BorderRemove(m_pRasterDlgImgDoc->BorderRemove->Flags,
m_pRasterDlgImgDoc->BorderRemove->BorderToRemove,
m_pRasterDlgImgDoc->BorderRemove->BorderPercent,
m_pRasterDlgImgDoc->BorderRemove->WhiteNoiseLength,
m_pRasterDlgImgDoc->BorderRemove->Variance);
}
}