Beispiel #1
0
XFILE::CFile *CXBMCTestUtils::CreateTempFile(std::string const& suffix)
{
  CTempFile *f = new CTempFile();
  if (f->Create(suffix))
    return f;
  delete f;
  return NULL;
}
Beispiel #2
0
bool CGattooImg::saveToSD()
{
	if (m_Img.empty()) return true;

	IImgConverter* pConverter = createImgConverter(IImgConverter::enDefault);

	cv::cvtColor(m_Img, m_Img, CV_RGB2GRAY);

	CTempFile tmpFile;
	tmpFile.Create();

	pConverter->Convert(m_Img, tmpFile);

	if (0x8000 & GetKeyState(VK_SHIFT))
	{
		pConverter->CreateBitmap(tmpFile.getName());
	}
	
	cv::cvtColor(m_Img, m_Img, CV_GRAY2RGB);

	std::string strDrive;
	getDriveToSave(strDrive);
	if (0 == strDrive.size()) return false;

	SWriteProgressData data;

	data.chDrive = strDrive.c_str()[0];
	data.szFilePath = tmpFile.getName();

	CUPDialog progress(AfxGetMainWnd()->GetSafeHwnd(), ThreadProc, (LPVOID)&data);

	progress.SetDialogTemplate(nullptr, MAKEINTRESOURCE(IDD_DIALOG_SAVE_PROGRESS), IDC_STATIC_PROGRESS, IDC_PROGRESS, IDC_BUTTON_CANCEL);

	if (IDOK == progress.DoModal())
		MessageBox(AfxGetMainWnd()->GetSafeHwnd(), _T("Image was saved to SD card successfully."), _T("Information"), MB_OK|MB_ICONINFORMATION);
	else
		MessageBox(AfxGetMainWnd()->GetSafeHwnd(), _T("Image saving to SD card was interrupted."), _T("Warning"), MB_OK|MB_ICONEXCLAMATION);
	
	pConverter->Destroy();

	return true;
}