============================================================================= SelectEncodingDlgProc()
| 1501 | // |
| 1502 | // |
| 1503 | INT_PTR CALLBACK SelectEncodingDlgProc ( HWND hwnd, UINT umsg, WPARAM wParam, LPARAM lParam ) |
| 1504 | { |
| 1505 | static PENCODEDLG pdd; |
| 1506 | static HWND hwndLV; |
| 1507 | switch ( umsg ) { |
| 1508 | case WM_INITDIALOG: { |
| 1509 | LVCOLUMN lvc = { LVCF_FMT | LVCF_TEXT, LVCFMT_LEFT, 0, L"", -1, 0, 0, 0 }; |
| 1510 | HBITMAP hbmp; |
| 1511 | HIMAGELIST himl; |
| 1512 | pdd = ( PENCODEDLG ) lParam; |
| 1513 | ResizeDlg_Init ( hwnd, pdd->cxDlg, pdd->cyDlg, IDC_RESIZEGRIP4 ); |
| 1514 | hwndLV = GetDlgItem ( hwnd, IDC_ENCODINGLIST ); |
| 1515 | hbmp = LoadImage ( g_hInstance, MAKEINTRESOURCE ( IDB_ENCODING ), IMAGE_BITMAP, 0, 0, LR_CREATEDIBSECTION ); |
| 1516 | himl = ImageList_Create ( 16, 16, ILC_COLOR32 | ILC_MASK, 0, 0 ); |
| 1517 | ImageList_AddMasked ( himl, hbmp, CLR_DEFAULT ); |
| 1518 | DeleteObject ( hbmp ); |
| 1519 | ListView_SetImageList ( GetDlgItem ( hwnd, IDC_ENCODINGLIST ), himl, LVSIL_SMALL ); |
| 1520 | //SetExplorerTheme(hwndLV); |
| 1521 | ListView_SetExtendedListViewStyle ( hwndLV,/*LVS_EX_FULLROWSELECT|*/LVS_EX_DOUBLEBUFFER | LVS_EX_LABELTIP ); |
| 1522 | ListView_InsertColumn ( hwndLV, 0, &lvc ); |
| 1523 | Encoding_AddToListView ( hwndLV, pdd->idEncoding, pdd->bRecodeOnly ); |
| 1524 | ListView_SetColumnWidth ( hwndLV, 0, LVSCW_AUTOSIZE_USEHEADER ); |
| 1525 | CenterDlgInParent ( hwnd ); |
| 1526 | } |
| 1527 | return TRUE; |
| 1528 | case WM_DESTROY: |
| 1529 | ResizeDlg_Destroy ( hwnd, &pdd->cxDlg, &pdd->cyDlg ); |
| 1530 | return FALSE; |
| 1531 | case WM_SIZE: { |
| 1532 | int dx; |
| 1533 | int dy; |
| 1534 | HDWP hdwp; |
| 1535 | ResizeDlg_Size ( hwnd, lParam, &dx, &dy ); |
| 1536 | hdwp = BeginDeferWindowPos ( 4 ); |
| 1537 | hdwp = DeferCtlPos ( hdwp, hwnd, IDC_RESIZEGRIP4, dx, dy, SWP_NOSIZE ); |
| 1538 | hdwp = DeferCtlPos ( hdwp, hwnd, IDOK, dx, dy, SWP_NOSIZE ); |
| 1539 | hdwp = DeferCtlPos ( hdwp, hwnd, IDCANCEL, dx, dy, SWP_NOSIZE ); |
| 1540 | hdwp = DeferCtlPos ( hdwp, hwnd, IDC_ENCODINGLIST, dx, dy, SWP_NOMOVE ); |
| 1541 | EndDeferWindowPos ( hdwp ); |
| 1542 | ListView_SetColumnWidth ( GetDlgItem ( hwnd, IDC_ENCODINGLIST ), 0, LVSCW_AUTOSIZE_USEHEADER ); |
| 1543 | } |
| 1544 | return TRUE; |
| 1545 | case WM_GETMINMAXINFO: |
| 1546 | ResizeDlg_GetMinMaxInfo ( hwnd, lParam ); |
| 1547 | return TRUE; |
| 1548 | case WM_NOTIFY: { |
| 1549 | if ( ( ( LPNMHDR ) ( lParam ) )->idFrom == IDC_ENCODINGLIST ) { |
| 1550 | switch ( ( ( LPNMHDR ) ( lParam ) )->code ) { |
| 1551 | case NM_DBLCLK: |
| 1552 | SendMessage ( hwnd, WM_COMMAND, MAKELONG ( IDOK, 1 ), 0 ); |
| 1553 | break; |
| 1554 | case LVN_ITEMCHANGED: |
| 1555 | case LVN_DELETEITEM: { |
| 1556 | int i = ListView_GetNextItem ( hwndLV, -1, LVNI_ALL | LVNI_SELECTED ); |
| 1557 | EnableWindow ( GetDlgItem ( hwnd, IDOK ), i != -1 ); |
| 1558 | } |
| 1559 | break; |
| 1560 | } |
nothing calls this directly
no test coverage detected