diff options
| author | Pietro Gagliardi <[email protected]> | 2014-12-10 10:07:08 -0500 |
|---|---|---|
| committer | Pietro Gagliardi <[email protected]> | 2014-12-10 10:07:08 -0500 |
| commit | 395521b832acb7f5133f1b2b1920cd31734ed585 (patch) | |
| tree | 2da4412344315ed34abf7c0b48ff85738a897d2c /wintable/new/header.h | |
| parent | b2b04c6de406ee58810994c8b74399e93216bb9f (diff) | |
Moved Table width calculation out of recomputeHScroll() and into updateTableWidth(); also stored width in the Table itself.
Diffstat (limited to 'wintable/new/header.h')
| -rw-r--r-- | wintable/new/header.h | 13 |
1 files changed, 13 insertions, 0 deletions
diff --git a/wintable/new/header.h b/wintable/new/header.h index 47c13b2..c89b506 100644 --- a/wintable/new/header.h +++ b/wintable/new/header.h @@ -55,6 +55,19 @@ static void headerAddColumn(struct table *t, WCHAR *name) static void updateTableWidth(struct table *t) { + HDITEMW item; + intptr_t i; + + t->width = 0; + // TODO count dividers? + for (i = 0; i < t->nColumns; i++) { + ZeroMemory(&item, sizeof (HDITEMW)); + item.mask = HDI_WIDTH; + if (SendMessageW(t->header, HDM_GETITEM, (WPARAM) i, (LPARAM) (&item)) == FALSE) + panic("error getting Table column width for updateTableWidth()"); + t->width += item.cxy; + } + // TODO replace this with a call to hscrollby(t, 0) recomputeHScroll(t); } |
