2007年11月4日星期日

파일 검색

void CPlayListDlg::OnPlayListSubMenuSearchLyrics()
{
CSearchLyricDlg dlg;
if(this->m_pMSPlayList->GetSelectedCount() > 0)
{
POSITION pos = this->m_pMSPlayList->GetFirstSelectedItemPosition();

CString strPath = _T("");
CString strTime = _T("");
CString strSearchWord = _T("");

int nItem;
if(pos)
{
nItem = this->m_pMSPlayList->GetNextSelectedItem(pos);
PLAYLIST_DATA* pPLAYLIST_DATA;
pPLAYLIST_DATA = (PLAYLIST_DATA*)this->m_pMSPlayList->GetItemData(nItem);

strPath = pPLAYLIST_DATA->FullPath;
//int pos = strPath.ReverseFind('\\');
//strPath = strPath.Mid(pos+1, strPath.GetLength() - pos);

CString strExt = strPath.Right(4);
strExt.MakeLower();

if( !(strExt == _T(".mp3") || strExt == _T(".ogg") || strExt == _T(".wma")) )
return;

//if(pPLAYLIST_DATA->bPlay)
//{
// CSyncSongDlg* pDlg = (CSyncSongDlg*)AfxGetMainWnd();
// pDlg->OnBnClickedStop();
//}

strTime = pPLAYLIST_DATA->PlayTime;

//2006.08.11 edit by sun ????? ?? ?? ???? ???? ??
CString strTitle = pPLAYLIST_DATA->Title;
CString strArtist = pPLAYLIST_DATA->Artist;
strTitle.TrimLeft();
strTitle.TrimRight();
strArtist.TrimLeft();
strArtist.TrimRight();

if( strTitle == "" && strArtist == "")
{
CString strTmp = GetFileNameFromPath(strPath);
int epos = strTmp.ReverseFind('.');
strSearchWord = strTmp.Mid(0, epos);
}
else
{
strSearchWord = pPLAYLIST_DATA->Title + _T(" ") + pPLAYLIST_DATA->Artist;
}
//end of edit

dlg.m_strFileName = strPath;
dlg.m_strPlayTime = strTime;
dlg.m_strSearchWord = strSearchWord;

CSyncSongDlg* pDlg = (CSyncSongDlg*)AfxGetMainWnd();

//::SendMessage(pDlg->m_hWnd, WM_DISABLEDIAGLOG, (WPARAM)m_hWnd, 0);
if(IDOK == dlg.DoModal())
{
pPLAYLIST_DATA->URL = dlg.m_strWMIFile;
m_pMSPlayList->ListRefresh(nItem);
}
//::SendMessage(pDlg->m_hWnd, WM_ENABLEDIAGLOG, (WPARAM)m_hWnd, 0);
}
}
}

没有评论: