| 70 | } |
| 71 | |
| 72 | LRESULT CKernelView::OnTcnSelChange(int, LPNMHDR hdr, BOOL&) { |
| 73 | int index = 0; |
| 74 | |
| 75 | index = m_TabCtrl.GetCurSel(); |
| 76 | for (auto hwnd : m_hwndArray) { |
| 77 | if (::IsWindow(hwnd)) { |
| 78 | ::ShowWindow(hwnd, SW_HIDE); |
| 79 | } |
| 80 | } |
| 81 | |
| 82 | switch (static_cast<TabColumn>(index)) { |
| 83 | case TabColumn::PiDDBCacheTable: |
| 84 | m_PiDDBCacheTable->ShowWindow(SW_SHOW); |
| 85 | m_PiDDBCacheTable->SetFocus(); |
| 86 | break; |
| 87 | case TabColumn::UnloadedDriverTable: |
| 88 | m_UnloadedDriverTable->ShowWindow(SW_SHOW); |
| 89 | m_UnloadedDriverTable->SetFocus(); |
| 90 | break; |
| 91 | case TabColumn::KernelPoolTable: |
| 92 | m_KernelPoolView->ShowWindow(SW_SHOW); |
| 93 | m_KernelPoolView->UpdatePaneText(); |
| 94 | break; |
| 95 | case TabColumn::BigPoolTable: |
| 96 | m_BigPoolView->ShowWindow(SW_SHOW); |
| 97 | m_BigPoolView->UpdatePaneText(); |
| 98 | break; |
| 99 | case TabColumn::DpcTimer: |
| 100 | m_DpcTimerTable->ShowWindow(SW_SHOW); |
| 101 | break; |
| 102 | case TabColumn::IoTimer: |
| 103 | m_IoTimerTable->ShowWindow(SW_SHOW); |
| 104 | break; |
| 105 | } |
| 106 | _index = index; |
| 107 | ::PostMessage(m_hWnd, WM_SIZE, 0, 0); |
| 108 | return 0; |
| 109 | } |
| 110 | |
| 111 | void CKernelView::InitPiDDBCacheTable() { |
| 112 | BarDesc bars[] = { |
nothing calls this directly
no test coverage detected