VLC
3.0.15
|
Graphical window. More...
Data Fields | |
struct vlc_common_members | obj |
unsigned | type |
Window handle type. More... | |
union { | |
void * hwnd | |
Win32 window handle. More... | |
uint32_t xid | |
X11 windows ID. More... | |
void * nsobject | |
Mac OSX view object. More... | |
void * anativewindow | |
Android native window. More... | |
struct wl_surface * wl | |
Wayland surface (client pointer) More... | |
} | handle |
Window handle (mandatory) More... | |
union { | |
char * x11 | |
X11 display string (NULL = use default) More... | |
struct wl_display * wl | |
Wayland display (client pointer) More... | |
} | display |
Display server (mandatory) More... | |
int(* | control )(vout_window_t *, int query, va_list) |
Control callback (mandatory) More... | |
struct { | |
bool has_double_click | |
Whether double click events are sent, or need to be emulated. More... | |
} | info |
vout_window_sys_t * | sys |
vout_window_owner_t | owner |
Graphical window.
This structure is an abstract interface to the windowing system. The window is normally used to draw video (and subpictures) into, but it can also be used for other purpose (e.g. OpenGL visualization).
The window is responsible for providing a window handle, whose exact meaning depends on the windowing system. It also must report some events such as user input (keyboard, mouse) and window resize.
Finally, it must support some control requests such as for fullscreen mode.
void* vout_window_t::anativewindow |
Android native window.
int(* vout_window_t::control) (vout_window_t *, int query, va_list) |
Control callback (mandatory)
This callback handles some control request regarding the window. See vout_window_control.
This field should not be used directly when manipulating a window. vout_window_Control() should be used instead.
Referenced by vout_window_vaControl().
union { ... } vout_window_t::display |
Display server (mandatory)
This must be filled by the plugin upon activation.
The window handle is relative to the display server. The exact meaning of the display server depends on the window handle type. Not all window handle type provide a display server field.
union { ... } vout_window_t::handle |
Window handle (mandatory)
This must be filled by the plugin upon activation.
Depending on the type above, a different member of this union is used.
bool vout_window_t::has_double_click |
Whether double click events are sent, or need to be emulated.
void* vout_window_t::hwnd |
Win32 window handle.
struct { ... } vout_window_t::info |
void* vout_window_t::nsobject |
Mac OSX view object.
struct vlc_common_members vout_window_t::obj |
vout_window_owner_t vout_window_t::owner |
vout_window_sys_t* vout_window_t::sys |
unsigned vout_window_t::type |
Window handle type.
This identified the windowing system and protocol that the window needs to use. This also selects which member of the handle union and the display union are to be set.
The possible values are defined in vout_window_type.
VOUT_WINDOW_TYPE_INVALID is a special placeholder type. It means that any windowing system is acceptable. In that case, the plugin must set its actual type during activation.
struct wl_surface* vout_window_t::wl |
Wayland surface (client pointer)
struct wl_display* vout_window_t::wl |
Wayland display (client pointer)
char* vout_window_t::x11 |
X11 display string (NULL = use default)
uint32_t vout_window_t::xid |
X11 windows ID.