More Windows Table work.

This commit is contained in:
Pietro Gagliardi 2014-12-03 19:38:08 -05:00
parent bb28a02b15
commit 5b904dfa94
2 changed files with 13 additions and 3 deletions

View File

@ -112,3 +112,14 @@ static void recomputeHScroll(struct table *t)
si.nMax = t->width - 1; // - 1 because endpoints inclusive
SetScrollInfo(t->hwnd, SB_HORZ, &si, TRUE);
}
HANDLER(hscroll)
{
switch (uMsg) {
case WM_HSCROLL:
hscroll(t, wParam);
*lResult = 0;
return TRUE;
}
return FALSE;
}

View File

@ -105,6 +105,7 @@ struct table {
typedef BOOL (*handlerfunc)(struct table *, UINT, WPARAM, LPARAM, LRESULT *);
const handlerfunc handlerfuncs[] = {
hscrollHandler,
vscrollHandler,
APIHandler,
NULL,
@ -177,9 +178,6 @@ if (ImageList_GetIconSize(t->imagelist, &unused, &(t->imagelistHeight)) == 0)abo
drawItems(t, dc, ps.rcPaint);
EndPaint(hwnd, &ps);
return 0;
case WM_HSCROLL:
hscroll(t, wParam);
return 0;
case WM_SIZE:
resize(t);
return 0;
@ -190,6 +188,7 @@ if (ImageList_GetIconSize(t->imagelist, &unused, &(t->imagelistHeight)) == 0)abo
case WM_KILLFOCUS:
// all we need to do here is redraw the highlight
// TODO ensure giving focus works right
// TODO figure out hwat I meant by this
redrawRow(t, t->selected);
return 0;
case WM_KEYDOWN: