コード例 #1
0
ファイル: win32_utf8.c プロジェクト: Artogn/licecap
BOOL GetSaveFileNameUTF8(LPOPENFILENAME lpofn)
{
#ifdef WDL_SUPPORT_WIN9X
  if (GetVersion()&0x80000000) return GetSaveFileNameA(lpofn);
#endif
  return GetOpenSaveFileNameUTF8(lpofn,TRUE);
}
コード例 #2
0
void CRIFFChunkTreeDlg::OnSave() 
{
	OPENFILENAME ofn;

	PrepareSimpleDialog(&ofn, *this, "*.txt");
	ofn.lpstrFilter = "Text files (*.txt)|*.txt||";
	ofn.Flags |= OFN_OVERWRITEPROMPT;
	if (!GetOpenSaveFileNameUTF8(&ofn, false)) 
		return;

	CFileStream* destFile = new CFileStream();
	if (STREAM_OK == destFile->Open(ofn.lpstrFile, StreamMode::Write))
	{
		CACHE* cache = new CACHE(4, 1<<18);
		cache->Open(destFile, CACHE_OPEN_WRITE);
		cache->Write(cUTF8Hdr, 3);

		RenderItem(cache, m_Tree.GetRootItem(), 0);

		cache->Close();
		delete cache;
		destFile->Close();
		delete destFile;
	}
	else
	{
		MessageBoxHelper::CouldNotOpenFileForWrite(ofn.lpstrFile);
	}
}
コード例 #3
0
BOOL CVideoSourceListBox::OnCommand(WPARAM wParam, LPARAM lParam) 
{
	// TODO: Speziellen Code hier einfügen und/oder Basisklasse aufrufen
	CVideoInformationDlg*	lpvidlg;
	int						iIndex;
	VIDEOSOURCE*			lpVS;
	// TODO: Speziellen Code hier einfügen und/oder Basisklasse aufrufen
	CWinThread*	thread;
//	CFileDialog*	cfd;
	CAVIMux_GUIDlg*	cMainDlg = (CAVIMux_GUIDlg*)GetParent();
	char cFilter[256];
	std::basic_string<TCHAR> cDefExt;
	int open = 0;
	VIDEOSOURCE* v;
	OPENFILENAME o; 
	memset(&o, 0, sizeof(o));


	switch (LOWORD(wParam))
	{
		case IDM_VIDEOINFORMATION:
			iIndex=GetCurSel();
			if (iIndex!=LB_ERR)
			{
				lpVS=(VIDEOSOURCE*)GetItemData(iIndex);
				lpvidlg=new CVideoInformationDlg;
				lpvidlg->SetVideoSource(lpVS);
				lpvidlg->DoModal();
				delete lpvidlg;
			}
			break;
		case IDM_EXTRACT_BINARY:
			ZeroMemory(cFilter,sizeof(cFilter));
//			ZeroMemory(cDefExt,sizeof(cDefExt));
			
			iIndex = GetCurSel();
			if (iIndex == LB_ERR)
				iIndex = 0;

			v = (VIDEOSOURCE*)GetItemData(iIndex);

	
			strcpy(cFilter,"*.raw|*.raw||");
			cDefExt = _T("mp3");
			 

			PrepareSimpleDialog(&o, m_hWnd, cFilter);
			o.Flags |= OFN_OVERWRITEPROMPT;
			o.lpstrDefExt = cDefExt.c_str();
			open = GetOpenSaveFileNameUTF8(&o, 0);
			
			if (open) {
				EXTRACT_THREAD_VIDEO_DATA* lpETD = new EXTRACT_THREAD_VIDEO_DATA;
				lpETD->file = new CFileStream;
				if (lpETD->file->Open(o.lpstrFile,STREAM_WRITE)!=STREAM_ERR) {
					lpETD->dlg = cMainDlg;
					lpETD->v = v;
					cMainDlg->m_Prg_Dest_File.SetWindowText(o.lpstrFile);
					thread=AfxBeginThread((AFX_THREADPROC)ExtractThread,lpETD);
				} else {
					CUTF8 message(LoadString(IDS_COULDNOTOPENOUTPUTFILE));
					CUTF8 title(LoadString(STR_GEN_ERROR));

					MessageBox(message.TStr(), title.TStr(), MB_OK | MB_ICONERROR);

					//MessageBox(LoadString(IDS_COULDNOTOPENOUTPUTFILE),LoadString(STR_GEN_ERROR),
					//	MB_OK | MB_ICONERROR);
				}
			}
			
			break;
	}
	
	return CEnhancedListBox::OnCommand(wParam, lParam);
}
コード例 #4
0
ファイル: win32_utf8.c プロジェクト: safetydank/wdl-android
BOOL GetSaveFileNameUTF8(LPOPENFILENAME lpofn)
{
  if (GetVersion()< 0x80000000)return GetOpenSaveFileNameUTF8(lpofn,TRUE);
  return GetSaveFileNameA(lpofn);
}