ELinks 0.18.0
|
A window in the terminal screen. More...
#include <window.h>
Public Member Functions | |
LIST_HEAD_EL (struct window) |
Data Fields | |
enum window_type | type |
Whether this is a normal window or a tab window. | |
window_handler_T * | handler |
The window event handler. | |
void * | data |
For tab windows the session is stored in data . | |
struct terminal * | term |
The terminal (and screen) that hosts the window. | |
int | xpos |
For WINDOW_TAB, the position and size in the tab bar. | |
int | width |
int | x |
The position of something that has focus in the window. | |
int | y |
unsigned int | resize:1 |
For delayed tab resizing. |
A window in the terminal screen.
This structure does not know the position and size of the window, and no functions are provided for drawing into a window. Instead, when window.handler draws the window, it should decide the position and size of the window, and then draw directly to the terminal, taking care not to draw outside the window. Windows generally do not have their own coordinate systems; they get mouse events in the coordinate system of the terminal.
window::LIST_HEAD_EL | ( | struct window | ) |
terminal.windows is the sentinel.
void* window::data |
For tab windows the session is stored in data
.
For normal windows it can contain dialog data. It is free()'d by delete_window()
window_handler_T* window::handler |
The window event handler.
unsigned int window::resize |
For delayed tab resizing.
struct terminal* window::term |
The terminal (and screen) that hosts the window.
enum window_type window::type |
Whether this is a normal window or a tab window.
int window::width |
int window::x |
The position of something that has focus in the window.
Any popup menus are drawn near this position. In tab windows, during NAVIGATE_CURSOR_ROUTING, this is also the position of the cursor that the user can move; there is no separate cursor position for each frame. In dialog boxes, this is typically the top left corner of the focused widget, while the cursor is somewhere within the widget.
int window::xpos |
For WINDOW_TAB, the position and size in the tab bar.
Updated while the tab bar is being drawn, and read if the user clicks there with the mouse.
int window::y |