WM_USER_CREATE |
Called when OllyDbg creates table child window, right after
call to CreateWindowEx(). This message has no parameters. Return value
is ignored. |
WM_USER_HSCR |
(Passed to the custom table function
only if TABLE_NOHSCR
is cleared) - called to update horizontal scroll bar. wparam contains
total width of table in pixels and lparam
- width of client area, also in pixels. Recommended action is to return
0, passing processing to the default table function. Otherwise, custom
table function must redraw horizontal scrollbar and return 1. Note that
default table function doesn't support this message |
WM_USER_VSCR |
(Passed to the custom table function
only if TABLE_NOVSCR
is cleared) - called to update vertical scroll bar. wparam is
the number of completely visible lines in the
window. Returns 1 if message is processed. It is recommended
that user-defined tables process this message. Alternatively,
they can set t_table.sorted.n
to the total number of lines in the table, t_table.offset to
the index of the first visible line and return 0. Note that
default
table function doesn't support this message |
WM_USER_MOUSE |
Called when table window receives WM_MOUSEMOVE and
mouse is not captured by some table action, like selection or resizing.
LOWORD(wparam)
is the horizontal (X) offset within the column in characters, HIWORD(wparam) - zero-based
column index, lparam
- row in the window. Returns 1 if custom function sets mouse pointer
and 0 in all other cases. Note that default table function doesn't
support this message |
WM_USER_VINC |
(Passed only to the custom table
function of user-defined tables, i.e. of type TABLE_USERDEF) -
scrolls contents of the window by the number of lines specified in
lparam (treated as a signed number, negative value means
scrolling upwards). wparam
is the number of completely visible lines in the window. Returns 0 if
custom function doesn't process this message, 1 if window must be
updated and -1 if not |
WM_USER_VPOS |
(Passed only to the custom table
function of user-defined tables) - scrolls contents of the window
vertically by the position of scrollbar. wparam is number of
completely visible lines in window, lparam
- zero-based index of the first displayed line (assuming
that total number of lines is t_table.sorted.n).
Returns 0 if custom function doesn't process this message, 1 if window
must be updated and -1 if not |
WM_USER_VBYTE |
(Passed only to the custom table
function of user-defined tables) - scrolls
contents of the window by the number of bytes specified in lparam (treated as
a signed number, negative value means scrolling upwards). If
byte scrolling is not supported, process this message as WM_USER_VINC. wparam is the number
of completely visible lines in window. Returns 0 if custom function
doesn't process this message (neither as VBYTE nor VINC), 1 if window
must be updated and -1 if not |
WM_USER_SETS |
(Passed only to the custom table
function of user-defined tables) - starts
mouse selection. LOWORD(wparam)
is the horizontal (X) offset within the column in characters, HIWORD(wparam) - column,
lparam - row in the window where selection must start. Returns 0 if
custom function doesn't process message,1 if window must be updated and
-1 if not |
WM_USER_CNTS |
(Passed only to the custom table
function of user-defined tables, and only if
table is neither TABLE_MMOVX
nor TABLE_MMOVY)
- continues mouse selection. LOWORD(wparam)
is the horizontal (X) offset within the column in characters, HIWORD(wparam) - column, lparam - row in the
window where selection ends. Returns 0 if custom function doesn't
process message, 1 if window must be updated and -1 if not |
WM_USER_MMOV |
(Passed only to the custom table
function of user-defined tables, and only if table is TABLE_MMOVX and/or
TABLE_MMOVY
instead of WM_USER_CNTS)
- scrolls window by mouse. wparam
is the signed horizontal (X) offset in pixels, lparam - signed Y offset
in pixels since the most recent WM_USER_SETS.
A sequence of WM_USER_MMOV
is always preceeded by WM_USER_SETS. Note that if table function
returns 0 on WM_USER_SETS,
WM_USER_MMOV
is not processed. If custom table processes this message by itself, it
must return 1 if window must be updated and -1 if not. Alternatively,
custom table function must set t_table.sorted.n
to the total number of lines in the table, t_table.offset to
the index of the first visible line and return 0 |
WM_USER_MOVS |
Keyboard interface to window
scrolling and selection. LOWORD(wparam)
contains number of completely visible lines in the window, HIWORD(wparam) - state of
Ctrl and Shift keys as a set of flags KEY_xxx, LOINT(lparam) - signed
number of lines to move in the vertical (Y) direction, or MOVETOP to move to
the topmost element and MOVEBOTTOM
to the last. HIINT(lparam)
contains signed number of elements to move in the horizontal (X)
direction. X and Y movements can't be set simultaneously. If custom
table function doesn't support this message (for example, when window
must scroll in X insteand of changing selection), it must return 0.
Otherwise, it moves or extends selection, if necessary scrolls window
so that the end of selection is visible and returns 1 if window must be
updated and -1 if not |
WM_USER_KEY |
Called when table window receives WM_KEYDOWN
or WM_SYSKEYDOWN.
LOWORD(wparam)
contains number of completely visible lines in the window,
HIWORD(wparam) is the state of keys Alt, Ctrl and Shift as a set of
flags KEY_xxx,
LOWORD(lparam)
- key value. Returns 0 if custom function doesn't process this message,
1 if window must be updated and -1 if not. Note that table function has
higher priority than shortcuts.
Also note that some keys or key combinations, like arrows, are
processed internally and are not passed to the table function |
WM_USER_BAR |
Called when user releases button (of
type BAR_BUTTON)
in the table bar. wparam
is the 0-based column index. Returns 0 if custom function doesn't
process this message, 1 if window must be updated and -1 if not |
WM_USER_DBLCLK |
Called when user doubleclicks data.
LOWORD(wparam)
is the horizontal (X) offset within the column in characters, HIWORD(wparam) - zero-based
column index, lparam
- row in the window. Returns 0 if custom function doesn't process this
message, 1 if window must be updated and -1 if not |
WM_USER_SELXY |
(Passed only to the custom table
function of user-defined tables) - called to
query position where selection-related dialog box or menu called via
the keyboard shortcut will appear. (For pure tables, Gettableselectionxy()
selects top right corner of selected line in the specified column). wparam contains
0-based column index, lparam - number of visible lines. Returns
MAKELONG(x,y), where x and y are coordinates in characters, or 0 if
message is not supported. OllyDbg automatically clips coordinates to
the column/window size. Note that default table function doesn't
support this message |
WM_USER_UPD |
(Passed only to the custom table
function of user-defined tables) - called on
automatic update. Table must actualize and update its contents. For
example, dump windows must read the actual contents of the memory by
flushing the memory cache. Returned value is ignored |
WM_USER_MTAB |
Called when user clicks middle mouse
button on the tab in the parent window of tab collection. wparam contains
zero-based tab index. Expected
standard reaction is to close the tab |