typedef struct t_frame { // Descriptor of frame or tab window
// These variables must be filled before frame window is created.
wchar_t name[SHORTNAME]; // Name used to save/restore position
int herebit; // Must be 0 for plugins
int mode; // Combination of bits TABLE_xxx
t_block *block; // Pointer to block tree
t_menu *menu; // Menu descriptor (tab window only)
int scheme; // Colour scheme used by window
// These variables are initialized by frame creation function.
HWND hw; // Handle of MDI container or NULL
HWND htab; // Handle of tab control
WNDPROC htabwndproc; // Original WndProc of tab control
int capturedtab; // Tab captured on middle mouse click
HWND hstatus; // Handle of status bar or NULL
t_block *active; // Active table (has focus) or NULL
t_block *captured; // Block that captured mouse or NULL
int captureoffset; // Offset on mouse capture
int capturex; // Mouse screen X coordinate on capture
int capturey; // Mouse screen Y coordinate on capture
wchar_t title[TEXTLEN]; // Frame or tab window title
} t_frame;
Describes frame window (parent with several resizable child tables, like CPU) or tab collection (parent with tab control that displays one of the several child tables, like Search).
Members:
name
UNICODE string, at most SHORTNAME wide characters long. If mode includes any of the TABLE_SAVExxx
flags, it must be set to the unique name of the section in the main
initialization file that will be used to save the position and
appearance of the window
herebit
Plugins must set this member to 0
mode
Properties of the frame or tab collection, combination of bits TABLE_xxx: similar to that used by tables:
TABLE_STATUS - container window gets status bar hstatus at the bottom
TABLE_SAVEPOS - when frame or tab window is destroyed, its size, position and layout are saved to the main initialization file (section [name]) and are automatically restored next time the window is created
TABLE_GRAYTEXT - grays all tables within the frame window except for the frame with focus and frames marked as TABLE_NOGRAY
block
TABLE_STATUS - container window gets status bar hstatus at the bottom
TABLE_SAVEPOS - when frame or tab window is destroyed, its size, position and layout are saved to the main initialization file (section [name]) and are automatically restored next time the window is created
TABLE_GRAYTEXT - grays all tables within the frame window except for the frame with focus and frames marked as TABLE_NOGRAY
Pointer to the linked tree of structures of type t_block that describes layout of the frame window or tabs within the tab collection. See description here
menu
For tab collections, pointer to the array of type t_menu that describes pop-up menu associated with the tabs (invoked when user right-clicks the tab control), or NULL if such menu is not necessary
scheme
Index of the colour scheme (0..NSCHEMES-1) used by the window
hw
Handle of the frame or tab parent window, or NULL if window is not displayed
htab
Handle of the tab control in the tab window
hstatus
Handle of the optional status bar at the bottom of the parent window
title
UNICODE string, title of the frame or tab parent window
htabwndproc
capturedtab
active
captured
captureoffset
capturex
capturey
Used internally by OllyDbg
See also: