void DlgMix::SetMix() { pDocSrc = (CDemoDoc*) m_cbSrc.GetItemData(m_cbSrc.GetCurSel()); pDocDst = (CDemoDoc*) m_cbDst.GetItemData(m_cbDst.GetCurSel()); OpType = m_cbOpType.GetItemData(m_cbOpType.GetCurSel()); if (pDocSrc==0 || pDocDst==0) return; CxImage* pImageSrc = pDocSrc->GetImage(); CxImage* pImageDst = pDocDst->GetImage(); SetThumbs(pImageSrc,pImageDst); CxImage tmp; tmp.Copy(m_imageDst); tmp.Mix(m_imageSrc,(CxImage::ImageOpType)OpType,(long)(m_xoffset*m_ratio),(long)(m_yoffset*m_ratio),m_mixalpha!=0); if (m_mixalpha!=0){ RGBQUAD c={255,255,255,0}; tmp.SetTransColor(c); tmp.AlphaStrip(); } if (m_bitmap) DeleteObject(m_bitmap); m_bitmap = tmp.MakeBitmap(m_picture.GetDC()->m_hDC); m_picture.SetBitmap(m_bitmap); }