本文整理汇总了C++中GetFirstSelectedItemPosition函数的典型用法代码示例。如果您正苦于以下问题:C++ GetFirstSelectedItemPosition函数的具体用法?C++ GetFirstSelectedItemPosition怎么用?C++ GetFirstSelectedItemPosition使用的例子?那么恭喜您, 这里精选的函数代码示例或许可以为您提供帮助。
在下文中一共展示了GetFirstSelectedItemPosition函数的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: GetFirstSelectedItemPosition
void CSitesWnd::OnSitesDelete()
{
fs::list <int> vItems;
POSITION pos = GetFirstSelectedItemPosition ();
if (pos == NULL)
return;
if (IDNO == MessageBox (LS (L_AREYOUSURE), LS (L_CONFIRMATION), MB_YESNO))
{
SetFocus ();
return;
}
SetFocus ();
pos = GetFirstSelectedItemPosition ();
while (pos)
{
int iItem = GetNextSelectedItem (pos);
vItems.add (iItem);
}
if (vItems.size () == 0)
return;
for (int i = vItems.size () - 1; i >= 0; i--)
{
fsSiteInfo *pSite = (fsSiteInfo*) GetItemData (vItems [i]);
_SitesMgr.DeleteSite (pSite);
}
}
示例2: SetRedraw
void CSourceDirListCtrl::RemoveSelectedItems()
{
SetRedraw(FALSE);
//Delete all selected items
POSITION pos = GetFirstSelectedItemPosition();
int nItem = -1;
while (pos != NULL)
{
nItem = GetNextSelectedItem(pos);
DeleteItem(nItem);
//Delete the previous one item will affect the pos
pos = GetFirstSelectedItemPosition();
}
if(GetItemCount() <= 0)
{
SetHeaderCheckedState(0, CL_UNCHECKED);
}
SetRedraw(TRUE);
UpdateWindow();
}
示例3: while
void CServerListCtrl::DeleteSelectedServers()
{
//SetRedraw(FALSE);
while (GetFirstSelectedItemPosition() != NULL)
{
POSITION pos = GetFirstSelectedItemPosition();
int iItem = GetNextSelectedItem(pos);
theApp.serverlist->RemoveServer((CServer*)GetItemData(iItem));
DeleteItem(iItem);
}
ShowServerCount();
//SetRedraw(TRUE);
SetFocus();
AutoSelectItem();
}
示例4: GetFirstSelectedItemPosition
void CFVDownloads_Tasks::CallSelectedDownload(BOOL bPropertiesInsteadOfPass)
{
POSITION pos = GetFirstSelectedItemPosition ();
if (pos == NULL)
return;
vmsDownloadSmartPtr dld = m_vDlds [GetNextSelectedItem (pos)];
if (pos == NULL && dld->pMgr->IsDone ())
{
OnFvdldLaunch ();
}
else if (pos == NULL && dld->pMgr->IsRunning () && _App.DownloadDialog_Use ())
{
if (dld->pdlg)
{
dld->pdlg->BringWindowToTop ();
dld->pdlg->SetFocus ();
}
else
{
dld->AddRef ();
_pwndDownloads->PostMessage (WM_DW_CREATEDLDDIALOG, 1, (LPARAM)(fsDownload*)dld);
}
}
else
{
if (bPropertiesInsteadOfPass)
ShowSelectedDldsProperties ();
else
OnFvdldPasstodlds ();
}
}
示例5: GetSelectedCount
void CSitesWnd::UpdateMenu(CMenu *pMenu)
{
int cSelected = GetSelectedCount ();
if (cSelected == 0)
{
pMenu->EnableMenuItem (ID_SITES_DELETE, MF_BYCOMMAND | MF_GRAYED);
pMenu->EnableMenuItem (ID_SITES_TEMPRORARY, MF_BYCOMMAND | MF_GRAYED);
}
else
{
POSITION pos = GetFirstSelectedItemPosition ();
m_bSelectedIsTemp = TRUE;
while (pos)
{
int iItem = GetNextSelectedItem (pos);
fsSiteInfo *pSite = (fsSiteInfo*) GetItemData (iItem);
if (pSite->bTemp == FALSE)
{
m_bSelectedIsTemp = FALSE;
break;
}
}
if (m_bSelectedIsTemp)
pMenu->CheckMenuItem (ID_SITES_TEMPRORARY, MF_BYCOMMAND | MF_CHECKED);
}
if (cSelected != 1)
pMenu->EnableMenuItem (ID_SITES_PROPERTIES, MF_BYCOMMAND | MF_GRAYED);
pMenu->SetDefaultItem (ID_SITES_PROPERTIES);
}
示例6: GetFirstSelectedItemPosition
void CDownloads_Deleted::OnDeletedDelete()
{
DLDS_LIST v;
POSITION pos = GetFirstSelectedItemPosition ();
while (pos)
{
int iItem = GetNextSelectedItem (pos);
vmsDownloadSmartPtr dld = (fsDownload*) GetItemData (iItem);
v.push_back (dld);
}
if (v.size ())
{
if (IDYES == MessageBox (LS (L_AREYOUSURE), LS (L_CONFIRMATION), MB_ICONQUESTION | MB_YESNO))
{
if (_pwndDownloads->Get_DWWN () == DWWN_DELETED)
_pwndDownloads->m_wndDeleted.ShowWindow (SW_HIDE);
try {
_DldsMgr.DeleteDeletedDownloads (v);
}
catch (...) {}
if (_pwndDownloads->Get_DWWN () == DWWN_DELETED)
_pwndDownloads->m_wndDeleted.ShowWindow (SW_SHOW);
}
}
}
示例7: HitTest
int SeriesListCtrl::HitTest()
{
int ret=-1;
POSITION pos=GetFirstSelectedItemPosition();
if(pos) ret=GetItemData(GetNextSelectedItem(pos));
return ret;
}
示例8: GetFirstSelectedItemPosition
void FolderListCtrl::OnChar(UINT chr, UINT rep_cnt, UINT flags)
{
if (chr >= '0' && chr <= '9' || chr >= 'A' && chr <= 'Z' ||
chr >= 'a' && chr <= 'z' || chr >= 0x100)
{
bool begin= search_string_.empty();
search_string_ += static_cast<TCHAR>(chr);
POSITION pos= GetFirstSelectedItemPosition();
int item= GetNextSelectedItem(pos);
int found= FindItem(search_string_, item);
if (found < 0 && begin)
found = FindItem(search_string_, -1);
if (found >= 0)
{
UINT state= LVIS_SELECTED | LVIS_FOCUSED;
SetItemState(found, state, state);
}
else
{
//TODO:
// msg beep here to signal no match...
}
timer_ = SetTimer(1, 1000, 0);
}
else
Default();
}
示例9: GetFirstSelectedItemPosition
int CFileBrowserListCtrl::GetFirstSelectedItem() const
{
POSITION pos = GetFirstSelectedItemPosition();
if (pos != NULL)
return(GetNextSelectedItem(pos));
return(-1); // no selection
}
示例10: GetFirstSelectedItemPosition
void CHostList::OnCommander()
{
POSITION pos = GetFirstSelectedItemPosition();
int index = GetNextSelectedItem(pos);
if (pos < 0)
return;
CLIENT_INFO* info;
info = (CLIENT_INFO*)GetItemData(index);
CCmdDlg *dlg = NULL;
if (m_FuncMap[info->clientid].cmd == NULL)
{
dlg = new CCmdDlg();
dlg->InitModule(info->clientid);
dlg->Create(IDD_DIALOG_CMD);
m_FuncMap[info->clientid].cmd = dlg;
}
else
{
dlg = m_FuncMap[info->clientid].cmd;
}
dlg->ShowWindow(TRUE);
}
示例11: GetFirstSelectedItemPosition
int CListCtrlEx::GetSelectedItem()
{
// check new item and set its icon as the app icon
POSITION p = GetFirstSelectedItemPosition();
int nSelected = GetNextSelectedItem(p);
return nSelected;
}
示例12: OnDeleteSeries
void SeriesListCtrl::OnDeleteSeries()
{
POSITION pos=GetFirstSelectedItemPosition(); bool upd=false; void *x;
if(pos)
{
CArray<int,const int&> ToDel; int i; CString temp;
while(pos) ToDel.Add(GetItemData(GetNextSelectedItem(pos)));
qsort(ToDel.GetData(),ToDel.GetSize(),sizeof(int),compfunc);
for(i=0;i<ToDel.GetSize();i++)
{
int n=ToDel[i];
temp.Format("Series %s contains %d points. Remove it?",Items[n].Name,Items[n].Size);
if(AfxMessageBox(temp,MB_YESNO)==IDNO) ToDel[i]=-1;
}
if((x=Series->GainAcsess(WRITE))!=0)
{
upd=true;
SeriesProtector Protector(x); TSeriesArray& Series(Protector);
{
for(i=0;i<ToDel.GetSize();i++)
if(ToDel[i]>=0) Series.DeleteItem(ToDel[i]);
}
}
if(upd) UpdateSeriesList();
}
}
示例13: GetFirstSelectedItemPosition
void KGListCtrl::OnKeyUp(UINT nChar, UINT nRepCnt, UINT nFlags)
{
int nResult = false;
int nRetCode = false;
POSITION pos = GetFirstSelectedItemPosition();
int nItem = GetNextSelectedItem(pos);
POINT point;
CPoint HitPoint;
KG_PROCESS_ERROR(nItem != -1);
::GetCursorPos(&point);
::ScreenToClient(this->m_hWnd, &point);
HitPoint.x = point.x;
HitPoint.y = point.y;
DWORD dwData = MAKELONG(point.x, point.y);
if (nChar == 'C' && (GetAsyncKeyState(VK_CONTROL) & 0x8000))
{
}
else if (nChar == 'V' && (GetAsyncKeyState(VK_CONTROL) & 0x8000))
{
}
else if (nChar == VK_RETURN)
{
//OnLButtonDblClk(nFlags, HitPoint);
//GetParent()->SendMessage(WM_LBUTTONDBLCLK, MK_LBUTTON, dwData);
}
else if (nChar == VK_DELETE)
{
}
nResult = true;
Exit0:
return;
}
示例14: GetSelectionMark
void CGitProgressList::OnLvnBegindragSvnprogress(NMHDR* , LRESULT *pResult)
{
//LPNMLISTVIEW pNMLV = reinterpret_cast<LPNMLISTVIEW>(pNMHDR);
#if 0
int selIndex = GetSelectionMark();
if (selIndex < 0)
return;
CDropFiles dropFiles; // class for creating DROPFILES struct
int index;
POSITION pos = GetFirstSelectedItemPosition();
while ( (index = GetNextSelectedItem(pos)) >= 0 )
{
NotificationData * data = m_arData[index];
if ( data->kind==svn_node_file || data->kind==svn_node_dir )
{
CString sPath = GetPathFromColumnText(data->sPathColumnText);
dropFiles.AddFile( sPath );
}
}
if (!dropFiles.IsEmpty())
{
dropFiles.CreateStructure();
}
#endif
*pResult = 0;
}
示例15: GetFirstSelectedItemPosition
void CDownloads_History::OnHstitemDelete()
{
POSITION pos = GetFirstSelectedItemPosition ();
fs::list <fsDLHistoryRecord*> v;
while (pos)
{
int i = GetNextSelectedItem (pos);
v.add ((fsDLHistoryRecord*) GetItemData (i));
}
if (IDCANCEL == MessageBox (LS (L_ISOKTODELETE), LS (L_CONFIRMATION),
MB_ICONQUESTION | MB_OKCANCEL))
{
SetFocus ();
return;
}
ShowWindow (SW_HIDE);
try {
for (int i = 0; i < v.size (); i++)
_DldsMgr.m_histmgr.DeleteRecord (v [i]);
}catch (...) {}
ShowWindow (SW_SHOW);
SetFocus ();
}