亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? eringdlg.cpp

?? 微軟PDA上的鈴聲軟件
?? CPP
?? 第 1 頁 / 共 2 頁
字號:
		btn->SetWindowText(str);
		btn->GetWindowRect(&rt);
		int i=rt.Height();
		rt.top=h;
		rt.bottom=rt.top+i;
		btn->MoveWindow(&rt);
	}
	btn=(CButton *)GetDlgItem(IDC_STOP);
	str.LoadString(IDS_STOP);
	if (btn){
		btn->SetWindowText(str);
		btn->GetWindowRect(&rt);
		int i=rt.Height();
		rt.top=h;
		rt.bottom=rt.top+i;
		btn->MoveWindow(&rt);
	}
//	btn=(CButton *)GetDlgItem(IDC_ABOUT);
//	str.LoadString(IDS_ABOUT);
//	if (btn){
//		btn->SetWindowText(str);
//		btn->GetWindowRect(&rt);
//		int i=rt.Height();
//		rt.top=h;
//		rt.bottom=rt.top+i;
//		btn->MoveWindow(&rt);
//		h=rt.bottom+3;
//	}
	m_List.GetWindowRect(&rt);
	rt.top=h;
	m_List.MoveWindow(&rt);
}

void CERingDlg::OnPaint() 
{
	CPaintDC dc(this); // device context for painting
	
	// TODO: Add your message handler code here
	CStatic *stc;
	CRect rt;
	int y;
	CPen pen,*pold;
	CFont font,*fold;
	LOGFONT lgf;
	CString str;
	str.LoadString(IDS_MSGTITLE);
	memset(&lgf,0,sizeof(LOGFONT));
	stc=(CStatic *)GetDlgItem(IDC_MSGSHOWN);
	stc->GetWindowRect(&rt);
	ScreenToClient(&rt);
	y=rt.bottom+2;
	pen.CreatePen(PS_SOLID,2,RGB(0,0,0));
	pold=dc.SelectObject(&pen);
	GetClientRect(&rt);
	dc.MoveTo(rt.left,y);
	dc.LineTo(rt.right,y);
	dc.SelectObject(pold);
	pen.DeleteObject();
	stc=(CStatic *)GetDlgItem(IDC_TITLE);
	stc->GetWindowRect(&rt);
	ScreenToClient(&rt);
	lgf.lfHeight=rt.Height();
	lgf.lfWeight=FW_BOLD;
	lgf.lfCharSet=GB2312_CHARSET;
	lgf.lfOutPrecision =OUT_DEFAULT_PRECIS;
	lgf.lfClipPrecision =CLIP_DEFAULT_PRECIS;
	lgf.lfQuality =DEFAULT_QUALITY;
	lgf.lfPitchAndFamily =DEFAULT_PITCH ;
	wsprintf(lgf.lfFaceName,L"System");
	font.CreateFontIndirect(&lgf);
	fold=dc.SelectObject(&font);
	dc.DrawText(str,&rt,DT_LEFT);
	dc.SelectObject(fold);
	font.DeleteObject();
	// Do not call CDialog::OnPaint() for painting messages
}

void CERingDlg::OnActivate(UINT nState, CWnd* pWndOther, BOOL bMinimized) 
{
	if (nState==1&&!bAbout){
		GetSelectedWave();
		m_List.DeleteAllItems();
		ReleaseData();
		listWave.RemoveAll();
		listRing.RemoveAll();
		count=0;
		ListView_SetExtendedListViewStyle 
			(m_List.GetSafeHwnd(), LVS_EX_CHECKBOXES | LVS_EX_FULLROWSELECT);
		ReFresh();		
	}
	// TODO: Add your message handler code here
	CDialog::OnActivate(nState, pWndOther, bMinimized);
	
}



int CERingDlg::FindStrInArray(CStringArray &arr, CString str)
{
	int result=-1;
	for (int i=0;i<arr.GetSize();i++){
		CString tmp;
		tmp=arr.GetAt(i);
		if (!tmp.CompareNoCase(str)){
			result=i;
			break;
		}
	}
	return result;
}

void CERingDlg::AddStrToArray(CStringArray &arr, CString str)
{
	if (FindStrInArray(arr,str)==-1)
		arr.Add(str);
}

void CERingDlg::DeleteStrFromArray(CStringArray &arr, CString str)
{
	int i;
	i=FindStrInArray(arr,str);
	if (i!=-1)
		arr.RemoveAt(i);
}

void CERingDlg::Preview()
{
	POSITION pos = m_List.GetFirstSelectedItemPosition();
	if (pos != NULL)
	{
//		DWORD vol;
//		BOOL bChange=FALSE;
//		MMRESULT res;
//		res=waveOutGetVolume(0,&vol);
//		if (res==MMSYSERR_NOERROR){
//			if (vol==0){
//				waveOutSetVolume(0,0x8888);
//				bChange=TRUE;
//			}
//		}
		while (pos)
		{
			int nItem = m_List.GetNextSelectedItem(pos);
			nItem=m_List.GetItemData(nItem);
			sndPlaySound(listWave.GetAt(nItem)->szPathName,SND_SYNC);
			// you could do your own processing on nItem here
			if (beStop){
				beStop=false;
				return;
			}
			Sleep(300);
		}
//		if (bChange)
//			waveOutSetVolume(0,vol);
	}
}

void CERingDlg::SetRingTone(CStringArray &arr)
{
	CString pn,fn;
	int i;
	CStringArray err;
	err.SetSize(0);
	for (i=0;i<listRing.GetSize();i++){
		fn=listRing.GetAt(i);
		if (FindStrInArray(listSelect,fn)==-1){
			CFileStatus fsta;
			CFile::GetStatus(fn,fsta);
			fsta.m_attribute=BYTE(0);
			CFile::SetStatus(fn,fsta);
			DeleteFile(fn);
		}
	}
	for (i=0;i<listSelect.GetSize();i++){
		fn=listSelect.GetAt(i);
		if (FindStrInArray(listRing,fn)==-1){
			CString nn;
			nn.LoadString(IDS_RINGTONEFOLDER);
			nn=nn+fn.Right(fn.GetLength()-fn.ReverseFind('\\'));
			if (!CopyFile(fn,nn,TRUE)){
				err.Add(fn);
			}
			else{
				CFileStatus fsta;
				CFile::GetStatus(nn,fsta);
				fsta.m_attribute=BYTE(0);
				CFile::SetStatus(nn,fsta);
			}
		}
	}
	if (err.GetSize()>0){
		CString msg,title;
		msg.LoadString(IDS_ADDFAILURE);
		for (i=0;i<err.GetSize();i++){
			if (i==err.GetSize()-1)
				msg+=err.GetAt(i);
			else
				msg+=err.GetAt(i)+L";";
		}
		title.LoadString(IDS_TITLE);
		bAbout=true;
		::MessageBox(this->GetSafeHwnd(),msg,title,MB_OK|MB_ICONINFORMATION);
	}
}

int CERingDlg::CompareFunc_Name(LPARAM lParam1, LPARAM lParam2, LPARAM lParamSort)
{
	CERingDlg* pdlg = (CERingDlg*) lParamSort;
	CString    strItem1 = pdlg->listWave.GetAt(lParam1)->szFileName;
	CString    strItem2 = pdlg->listWave.GetAt(lParam2)->szFileName;
	int result;
	
	if (pdlg->sortStatus[0]){
		result=strItem2.CompareNoCase(strItem1);
	}
	else{
		result=strItem1.CompareNoCase(strItem2);
	}
	return result;
}

int CERingDlg::CompareFunc_Date(LPARAM lParam1, LPARAM lParam2, LPARAM lParamSort)
{
	CERingDlg* pdlg = (CERingDlg*) lParamSort;
	FILETIME filetm1;
	FILETIME filetm2;
	filetm1=pdlg->listWave.GetAt(lParam1)->ftLastWriteTime;
	filetm2=pdlg->listWave.GetAt(lParam2)->ftLastWriteTime;
	int result;
	if (filetm1.dwHighDateTime==filetm2.dwHighDateTime){
		if (pdlg->sortStatus[1])
			result=(filetm2.dwLowDateTime>filetm1.dwLowDateTime);
		else
			result=(filetm1.dwLowDateTime>filetm2.dwLowDateTime);
	}
	else{
		if (pdlg->sortStatus[1])
			result=(filetm2.dwHighDateTime>filetm1.dwHighDateTime);
		else
			result=(filetm1.dwHighDateTime>filetm2.dwHighDateTime);
	}
	return result;
}

int CERingDlg::CompareFunc_Size(LPARAM lParam1, LPARAM lParam2, LPARAM lParamSort)
{
	CERingDlg* pdlg = (CERingDlg*) lParamSort;
	DWORD fs1;
	DWORD fs2;
	fs1=pdlg->listWave.GetAt(lParam1)->nFileSize;
	fs2=pdlg->listWave.GetAt(lParam2)->nFileSize;
	int result;
	
	if (fs1==fs2){
		result=0;
	}
	else{
		if (pdlg->sortStatus[2]){
			result=fs2>fs1;
		}
		else{
			result=fs1>fs2;
		}
	}
	return result;
}

void CERingDlg::ReleaseData()
{
	PFINDDATA pData;
	for (int i=0;i<listWave.GetSize();i++){
		pData=listWave.GetAt(i);
		delete pData;
	}
}

BOOL CERingDlg::OnNotify(WPARAM wParam, LPARAM lParam, LRESULT* pResult) 
{
	// TODO: Add your specialized code here and/or call the base class
	NMHDR nmh;
	nmh=*(LPNMHDR)lParam;
	if (nmh.code==GN_CONTEXTMENU&&nmh.hwndFrom==m_List.GetSafeHwnd() ){
		HMENU hMenu;
		CMenu popmenu;
		hMenu = LoadMenu (AfxGetInstanceHandle(), MAKEINTRESOURCE(IDR_RIGHTMENU));
		if (hMenu){
			CMenu popmenu;
			popmenu.Attach(hMenu);
			CMenu* smenu=popmenu.GetSubMenu (0);
			GetPopMenuPos(m_Point);
			bAbout=true;
			smenu->TrackPopupMenu(TPM_LEFTALIGN   , m_Point.x, m_Point.y, this, NULL);
			bAbout=false;
			smenu->DestroyMenu();
			DestroyMenu (hMenu);
			m_List.ScreenToClient(&m_Point);
		}
		return TRUE;
	}	
	
	return CDialog::OnNotify(wParam, lParam, pResult);
}

void CERingDlg::OnSetRingTone(WPARAM wParam,LPARAM lParam)
{
	UINT flag;
	CString fn,nn;
//	m_List.ScreenToClient(&m_Point);
	int nItem=m_List.HitTest(m_Point,&flag);
	if (nItem!=-1) {
		fn=listWave.GetAt(nItem)->szPathName;
		nn.LoadString(IDS_RINGTONEFOLDER);
		nn+=L"\\"+listWave.GetAt(nItem)->szFileName;
		if (CopyFile(fn,nn,TRUE)){
			CFileStatus fsta;
			CFile::GetStatus(nn,fsta);
			fsta.m_attribute=BYTE(0);
			CFile::SetStatus(nn,fsta);
		}
		SetRegistKey(listWave.GetAt(nItem)->szFileName);
		ListView_SetItemState (m_List.GetSafeHwnd(), nItem, 
			UINT((int(TRUE) + 1) << 12), LVIS_STATEIMAGEMASK);
		m_List.SetItemState(nItem,LVNI_FOCUSED,LVNI_FOCUSED);
		m_List.SetItemState(nItem,LVNI_SELECTED,LVNI_SELECTED);
		AddStrToArray(listRing,nn);
		listWave.GetAt(nItem)->szPathName=nn;
//		AddStrToArray(listSelect,fn);
//		else{
//			CString msg,title;
//			msg.LoadString(IDS_SETRINGERR);
//			title.LoadString(IDS_TITLE);
//			bAbout=true;
//			::MessageBox(this->GetSafeHwnd(),msg,title,MB_OK|MB_ICONINFORMATION);
//			bAbout=false;
//		}
	}
}

void CERingDlg::OnLButtonDown(UINT nFlags, CPoint point) 
{
	// TODO: Add your message handler code here and/or call default
		//start of code add by galaxy 0226
//	CDialog::OnLButtonDown(nFlags, point);
}

void CERingDlg::SetRegistKey(CString fn)
{
	HKEY hRes;
	if (RegOpenKeyEx(HKEY_CURRENT_USER,RINGTONEKEY,0,0,&hRes)!=ERROR_SUCCESS ){
		RegCloseKey(hRes);
		return;
	}
	if (RegSetValueEx(hRes,SCRIPT,0,REG_SZ,(BYTE *)SCRIPTVALUE,sizeof(TCHAR)*(1+_tcslen(SCRIPTVALUE)))!=ERROR_SUCCESS){
	}
	if (RegSetValueEx(hRes,SOUND,0,REG_SZ,(BYTE *)fn.GetBuffer(0),sizeof(TCHAR)*(1+fn.GetLength()))!=ERROR_SUCCESS){
	}
	if (RegSetValueEx(hRes,CATEGORY,0,REG_SZ,(BYTE *)CATEGORYVALUE,sizeof(TCHAR)*(1+_tcslen(CATEGORYVALUE)))!=ERROR_SUCCESS){
	}
	RegCloseKey(hRes);
}

void CERingDlg::GetSelectedWave()
{
	listSelect.RemoveAll();
	listSelect.SetSize(0);
	int nItem;
	UINT status;
	BOOL bChecked;
	for (nItem=0;nItem<m_List.GetItemCount();nItem++){
		status=m_List.GetItemState(nItem,LVIS_STATEIMAGEMASK);
		bChecked=(BOOL)(((status & LVIS_STATEIMAGEMASK)>>12)-1);
		if (bChecked){
			int idx;
			idx=m_List.GetItemData(nItem);
			listSelect.Add(listWave.GetAt(idx)->szPathName);
		}
	}
}

int CERingDlg::FindFileInArray(CArray<PFINDDATA,PFINDDATA> &arr, CString fn)
{
	int result=-1;
	for (int i=0;i<arr.GetSize();i++){
		CString tmp;
		tmp=arr.GetAt(i)->szFileName;
		if (tmp.GetLength()>0){
			if (!tmp.CompareNoCase(fn)){
				result=i;
				break;
			}
		}
	}
	return result;
}

void CERingDlg::ReFresh()
{
	DWORD ThreadId;
	HANDLE	hThread;
	AfxGetApp()->DoWaitCursor(1);
	hThread=CreateThread(NULL,0,(unsigned long(__cdecl*)(void*))thdGetList,this,0,&ThreadId);
	CloseHandle(hThread);
	AfxGetApp()->DoWaitCursor(-1);
}

void CERingDlg::OnKeyDown(UINT nChar, UINT nRepCnt, UINT nFlags) 
{
	// TODO: Add your message handler code here and/or call default
//	if (nChar==0x86||nChar==VK_RETURN)
//		return;
	if (nChar==0x86) m_exit=false;
	CDialog::OnKeyDown(nChar, nRepCnt, nFlags);
}

void CERingDlg::OnCancelMode() 
{
	CDialog::OnCancelMode();
	
	// TODO: Add your message handler code here
	m_exit=true;
//	CDialog::OnOK();	
}

void CERingDlg::GetPopMenuPos(CPoint &pt)
{
	int nIndex1 = m_List.GetTopIndex();
	int nIndex2;
	nIndex2 = m_List.GetNextItem(-1,LVNI_FOCUSED);
	if(nIndex2 <0 ) 
		nIndex2 = nIndex1;

	CRect rect;
	m_List.GetItemRect( nIndex2, &rect, LVIR_BOUNDS);
	pt.x=(rect.left + rect.right)/2;
	pt.y=(rect.top + rect.bottom)/2;
	m_List.ClientToScreen(&pt);
}



BOOL CERingDlg::OnHelpInfo(HELPINFO* pHelpInfo) 
{
	// TODO: Add your message handler code here and/or call default
	if (GetFileAttributes(L"\\windows\\Add_Phone_Ring.htm")!=0xFFFFFFFF)
		CreateProcess(TEXT("PegHelp.exe"),TEXT("Add_Phone_Ring.htm#Main_Contents"),NULL, NULL, FALSE, 0, NULL, NULL, NULL, NULL); 

	#if(_WIN32_WCE > 211)
	return CDialog::OnHelpInfo(pHelpInfo);
	#else
	return TRUE;
	#endif
}

void CERingDlg::GetList()
{
	CString str;
	str.LoadString(IDS_RINGTONEFOLDER);
	GetWaveList(str,FALSE);
	GetWaveList(L"\\windows",FALSE);
	GetWaveList(L"");
	switch(indexSort){
	case 0:{
			m_List.SortItems(CompareFunc_Name,(LPARAM) this);
			break;
		}
	case 1:{
			m_List.SortItems(CompareFunc_Date,(LPARAM) this);
			break;
		}
	case 2:{
			m_List.SortItems(CompareFunc_Size,(LPARAM) this);
			break;
		}
	}
}

DWORD WINAPI CERingDlg::thdGetList(LPVOID para) {
	CERingDlg *pDlg;
	pDlg=(CERingDlg*)para;
	pDlg->GetList();
	return 0;
}

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
亚洲综合视频在线观看| 久久蜜桃一区二区| 亚洲电影在线播放| 色视频成人在线观看免| 亚洲国产一区视频| 在线播放视频一区| 精品综合免费视频观看| 中文字幕国产精品一区二区| av在线一区二区| 亚洲bt欧美bt精品777| 欧美成人伊人久久综合网| 国产在线乱码一区二区三区| 国产精品视频你懂的| 色噜噜狠狠成人网p站| 水野朝阳av一区二区三区| 日韩欧美国产电影| 高清成人在线观看| 一区二区三区精品视频在线| 欧美一级淫片007| 国产iv一区二区三区| 亚洲精品免费电影| 日韩色在线观看| 成人h动漫精品一区二区| 亚洲电影中文字幕在线观看| 久久亚洲精品国产精品紫薇| 91亚洲永久精品| 欧美aaa在线| 亚洲日本电影在线| 欧美成人在线直播| 欧美午夜一区二区三区| 国产精品一级在线| 亚洲国产日韩a在线播放| 久久这里都是精品| 欧美最猛性xxxxx直播| 国精产品一区一区三区mba视频| 亚洲婷婷国产精品电影人久久| 日韩三级视频中文字幕| 色婷婷一区二区| 狠狠久久亚洲欧美| 午夜成人免费电影| 中文字幕欧美一| 精品国产百合女同互慰| 91国偷自产一区二区三区成为亚洲经典| 开心九九激情九九欧美日韩精美视频电影| 国产精品久久久一区麻豆最新章节| 制服丝袜一区二区三区| 一本高清dvd不卡在线观看| 久久99精品国产91久久来源| 亚洲影院久久精品| 亚洲欧洲美洲综合色网| 久久久久久久久久电影| 欧美日韩激情一区| 91丨porny丨国产| 国产成人av电影在线观看| 日韩电影免费在线观看网站| 亚洲精品一二三| 国产精品久久免费看| 久久一区二区三区国产精品| 91精品国产91久久久久久最新毛片 | 免费不卡在线视频| 亚洲二区视频在线| 一区二区三区产品免费精品久久75| 国产精品私人自拍| 久久精品视频一区二区三区| 欧美一区二区精品| 欧美日韩国产精选| 欧美艳星brazzers| 91福利社在线观看| 一本一道综合狠狠老| eeuss鲁一区二区三区| 国产成人精品www牛牛影视| 精品亚洲国产成人av制服丝袜| 偷拍亚洲欧洲综合| 丝袜亚洲另类欧美| 午夜私人影院久久久久| 亚洲一区二区三区中文字幕在线| 亚洲乱码国产乱码精品精98午夜| 久久久99精品免费观看| 欧美精品一区二区三区四区| 日韩视频免费观看高清完整版在线观看| 欧美日韩精品三区| 日韩三级视频在线观看| 日韩欧美精品在线视频| 欧美sm美女调教| 国产亚洲欧美色| 国产偷国产偷亚洲高清人白洁| 久久久久久久国产精品影院| 精品久久久久久久久久久院品网 | 日韩免费电影一区| 久久久激情视频| 国产精品免费丝袜| 亚洲女人小视频在线观看| 亚洲欧美一区二区三区孕妇| 亚洲午夜免费视频| 日韩av一区二区三区四区| 久久国产免费看| 国产成人午夜视频| 色婷婷一区二区三区四区| 精品视频免费看| 欧美成人a∨高清免费观看| 久久久夜色精品亚洲| 国产精品二三区| 日韩精品视频网站| 国产伦精品一区二区三区视频青涩| 成人动漫中文字幕| 欧美伊人久久久久久午夜久久久久| 欧美一区二区三区系列电影| 国产亚洲一区二区三区在线观看 | 国产一区免费电影| 91在线观看一区二区| 欧美老肥妇做.爰bbww视频| 精品少妇一区二区三区日产乱码| 国产精品系列在线| 午夜亚洲福利老司机| 国产一区二区在线观看免费| k8久久久一区二区三区| 91.麻豆视频| 亚洲三级免费电影| 国内精品伊人久久久久av一坑| 91蝌蚪国产九色| 欧美刺激脚交jootjob| 依依成人综合视频| 激情小说亚洲一区| 欧美日韩国产天堂| 日本一区二区三区免费乱视频 | 日韩福利电影在线| 波多野结衣欧美| 日韩一区二区三区免费观看| 亚洲欧美日韩久久精品| 久草精品在线观看| 欧美日韩精品一区视频| 中文字幕欧美一| 国产a久久麻豆| 日韩一区二区三区三四区视频在线观看| 最新不卡av在线| 韩国毛片一区二区三区| 欧美日韩视频在线一区二区| 国产精品毛片大码女人| 老司机精品视频导航| 在线观看日韩高清av| 国产精品嫩草99a| 国产精品羞羞答答xxdd| 日韩精品一区二区三区在线观看 | 欧美疯狂性受xxxxx喷水图片| 国产精品伦理一区二区| 国产一区二区三区四区五区入口 | 粉嫩一区二区三区性色av| 日韩一区二区麻豆国产| 亚洲午夜免费福利视频| 91麻豆精东视频| 亚洲三级在线播放| 99re视频精品| 亚洲欧美一区二区三区久本道91| 成人伦理片在线| 中文字幕精品—区二区四季| 国产成人在线网站| 国产欧美日韩在线| 国产精品99久久久久久有的能看| 日韩亚洲欧美一区| 美国欧美日韩国产在线播放| 91精品国产入口在线| 婷婷六月综合亚洲| 91精品国产aⅴ一区二区| 日韩av网站在线观看| 欧美一级在线观看| 久久精品国产99| 精品剧情v国产在线观看在线| 久久精品国产久精国产| 亚洲精品一区二区三区四区高清| 美女视频黄a大片欧美| 日韩欧美视频在线| 国模娜娜一区二区三区| 久久久无码精品亚洲日韩按摩| 国产一区二区精品久久91| 国产欧美日韩三级| 波多野结衣中文一区| 亚洲欧美一区二区三区孕妇| 色又黄又爽网站www久久| 亚洲一区二区3| 日韩亚洲欧美综合| 高清视频一区二区| 洋洋av久久久久久久一区| 欧洲精品中文字幕| 日本不卡一区二区| 26uuu国产日韩综合| 国产aⅴ综合色| 亚洲黄色av一区| 91精品视频网| 国产成人av影院| 一区二区免费在线| 日韩精品中文字幕在线一区| 国产激情一区二区三区| 亚洲人成伊人成综合网小说| 欧美日本在线播放| 国产一区二区不卡| 一区在线播放视频| 欧美日韩精品综合在线| 国产精品综合二区| 亚洲精品一二三四区| 日韩女同互慰一区二区|