void CInstanceInfoWindow::UpdateListBoxItems(u32 collectionId) { EditorScene* scene = EditorScene::getInstance(); std::vector<int> ids = scene->GetInstanceIdsInOneCollection(collectionId); int itemCount = ListBox_GetCount(mInstancesListBox); for (int i = itemCount - 1; i >= 0; i--) { ListBox_DeleteString(mInstancesListBox, i); } for (u32 i = 0; i < ids.size(); i++) { AddListBoxItem(ids[i]); } SetFocus(mParentHwnd); }
LRESULT CALLBACK BV2RecentsDlgProc (HWND hDlg, UINT message, WPARAM wParam, LPARAM lParam) { int dlgItemID; int i; char filename[256]; HWND mCtrl; RECT cr,r,r1; switch (message) { case WM_INITDIALOG: mCtrl = GetDlgItem(hDlg, IDC_LISTTEXT); sdata_init(&myrecents.rct); if (ReadRecentFilesInReg()) { for(i=0;i<sdata_jumlahdata(&myrecents.rct);i++) { sdata_ambildatanomor(&myrecents.rct, i, filename); AddListBoxItem (mCtrl, filename, i); } } //return TRUE; case WM_SIZE: GetClientRect (hDlg, &cr); mCtrl = GetDlgItem(hDlg, IDC_LISTTEXT); MoveWindow (mCtrl, 2, 2, cr.right-4, cr.bottom-28, TRUE); mCtrl = GetDlgItem(hDlg, IDOK); GetWindowRect(mCtrl, &r); MoveWindow (mCtrl, 2, cr.bottom-24, (r.right-r.left), (r.bottom-r.top), TRUE); mCtrl = GetDlgItem(hDlg, IDCANCEL); MoveWindow (mCtrl, 4+(r.right-r.left), cr.bottom-24, (r.right-r.left), (r.bottom-r.top), TRUE); mCtrl = GetDlgItem(hDlg, IDC_CLEAR); MoveWindow (mCtrl, 6+(r.right-r.left)*2, cr.bottom-24, (r.right-r.left), (r.bottom-r.top), TRUE); mCtrl = GetDlgItem(hDlg, IDC_NEWWINDOW); /* shb-20070906 */ GetWindowRect(mCtrl, &r1); MoveWindow (mCtrl, 12+(r.right-r.left)*3, cr.bottom-20, (r1.right-r1.left), (r1.bottom-r1.top), TRUE); /* shb-20070906 */ return TRUE; break; case WM_COMMAND: dlgItemID = LOWORD(wParam); if (dlgItemID==IDOK || (dlgItemID==IDC_LISTTEXT && HIWORD(wParam)==LBN_DBLCLK)) { GetListBoxCurSelString (GetDlgItem(hDlg, IDC_LISTTEXT), myrecents.file); myrecents.newwin = IsDlgButtonChecked (hDlg, IDC_NEWWINDOW); EndDialog(hDlg, IDOK); } else if (dlgItemID==IDCANCEL) { EndDialog(hDlg, dlgItemID); } else if (dlgItemID==IDC_CLEAR) { RegDeleteKey (HKEY_CURRENT_USER, "Software\\eshabe\\BeeVee\\MRU"); EndDialog(hDlg, dlgItemID); } break; case WM_DESTROY: sdata_hapussemua (&myrecents.rct); break; } return FALSE; }