static LRESULT CALLBACK WndProcTocBox(HWND hwnd, UINT msg, WPARAM wParam, LPARAM lParam) { WindowInfo *win = FindWindowInfoByHwnd(hwnd); if (!win) return CallWindowProc(DefWndProcTocBox, hwnd, msg, wParam, lParam); switch (msg) { case WM_SIZE: LayoutTreeContainer(win->tocLabelWithClose, win->hwndTocTree); break; case WM_COMMAND: if (LOWORD(wParam) == IDC_TOC_LABEL_WITH_CLOSE) ToggleTocBox(win); break; case WM_NOTIFY: if (LOWORD(wParam) == IDC_TOC_TREE) { LRESULT res = OnTocTreeNotify(win, (LPNMTREEVIEW)lParam); if (res != -1) return res; } break; } return CallWindowProc(DefWndProcTocBox, hwnd, msg, wParam, lParam); }
static LRESULT CALLBACK WndProcFavBox(HWND hwnd, UINT message, WPARAM wParam, LPARAM lParam) { WindowInfo* win = FindWindowInfoByHwnd(hwnd); if (!win) return CallWindowProc(DefWndProcFavBox, hwnd, message, wParam, lParam); switch (message) { case WM_SIZE: LayoutTreeContainer(win->favLabelWithClose, win->hwndFavTree); break; case WM_COMMAND: if (LOWORD(wParam) == IDC_FAV_LABEL_WITH_CLOSE) ToggleFavorites(win); break; case WM_NOTIFY: if (LOWORD(wParam) == IDC_FAV_TREE) { LPNMTREEVIEW pnmtv = (LPNMTREEVIEW)lParam; LRESULT res = OnFavTreeNotify(win, pnmtv); if (res != -1) return res; } break; case WM_CONTEXTMENU: if (win->hwndFavTree == (HWND)wParam) { OnFavTreeContextMenu(win, PointI(GET_X_LPARAM(lParam), GET_Y_LPARAM(lParam))); return 0; } break; } return CallWindowProc(DefWndProcFavBox, hwnd, message, wParam, lParam); }