VLC 4.0.0-dev
Loading...
Searching...
No Matches

Window modules interface. More...

Include dependency graph for vlc_window.h:

Go to the source code of this file.

Data Structures

struct  vlc_window_mouse_event
 Window mouse event. More...
 
struct  vlc_window_cfg
 Window (desired) configuration. More...
 
struct  vlc_window_callbacks
 Window event callbacks structure. More...
 
struct  vlc_window_owner
 Window callbacks and opaque data. More...
 
struct  vlc_window_operations
 Window implementation callbacks. More...
 
struct  vlc_window
 Window object. More...
 

Typedefs

typedef struct vlc_icc_profile_t vlc_icc_profile_t
 
typedef struct vlc_window_mouse_event vlc_window_mouse_event_t
 Window mouse event.
 
typedef struct vlc_window_cfg vlc_window_cfg_t
 Window (desired) configuration.
 
typedef void(* vlc_window_ack_cb) (struct vlc_window *, unsigned width, unsigned height, void *data)
 Callback prototype for window event acknowledgement.
 
typedef struct vlc_window_owner vlc_window_owner_t
 Window callbacks and opaque data.
 
typedef struct vlc_window vlc_window_t
 Window object.
 

Enumerations

enum  vlc_window_type {
  VLC_WINDOW_TYPE_DUMMY , VLC_WINDOW_TYPE_XID , VLC_WINDOW_TYPE_HWND , VLC_WINDOW_TYPE_NSOBJECT ,
  VLC_WINDOW_TYPE_ANDROID_NATIVE , VLC_WINDOW_TYPE_WAYLAND , VLC_WINDOW_TYPE_DCOMP , VLC_WINDOW_TYPE_KMS
}
 Window handle type. More...
 
enum  vlc_window_state { VLC_WINDOW_STATE_NORMAL , VLC_WINDOW_STATE_ABOVE , VLC_WINDOW_STATE_BELOW }
 Window states. More...
 
enum  vlc_window_mouse_event_type { VLC_WINDOW_MOUSE_MOVED , VLC_WINDOW_MOUSE_PRESSED , VLC_WINDOW_MOUSE_RELEASED , VLC_WINDOW_MOUSE_DOUBLE_CLICK }
 Window mouse event types. More...
 

Functions

vlc_window_tvlc_window_New (vlc_object_t *obj, const char *module, const vlc_window_owner_t *owner, const vlc_window_cfg_t *cfg)
 Creates a new window.
 
void vlc_window_Delete (vlc_window_t *window)
 Deletes a window.
 
void vlc_window_SetInhibition (vlc_window_t *window, bool enabled)
 Inhibits or deinhibits the screensaver.
 
static void vlc_window_SetState (vlc_window_t *window, unsigned state)
 Requests a new window state.
 
void vlc_window_SetSize (vlc_window_t *window, unsigned width, unsigned height)
 Requests a new window size.
 
void vlc_window_SetFullScreen (vlc_window_t *window, const char *id)
 Requests fullscreen mode.
 
void vlc_window_UnsetFullScreen (vlc_window_t *window)
 Requests windowed mode.
 
static void vlc_window_SetTitle (vlc_window_t *window, const char *title)
 Request a new window title.
 
int vlc_window_Enable (vlc_window_t *window)
 Enables a window.
 
void vlc_window_Disable (vlc_window_t *window)
 Disables a window.
 
static void vlc_window_ReportSize (vlc_window_t *window, unsigned width, unsigned height)
 Reports the current window size.
 
static void vlc_window_ReportClose (vlc_window_t *window)
 Reports a request to close the window.
 
static void vlc_window_ReportState (vlc_window_t *window, unsigned state)
 Reports the current window state.
 
void vlc_window_ReportWindowed (vlc_window_t *wnd)
 Reports that the window is not in full screen.
 
void vlc_window_ReportFullscreen (vlc_window_t *wnd, const char *id)
 Reports that the window is in full screen.
 
static void vlc_window_SendMouseEvent (vlc_window_t *window, const vlc_window_mouse_event_t *mouse)
 
static void vlc_window_ReportMouseMoved (vlc_window_t *window, int x, int y)
 Reports a pointer movement.
 
static void vlc_window_ReportMousePressed (vlc_window_t *window, int button)
 Reports a mouse button press.
 
static void vlc_window_ReportMouseReleased (vlc_window_t *window, int button)
 Reports a mouse button release.
 
static void vlc_window_ReportMouseDoubleClick (vlc_window_t *window, int button)
 Reports a mouse double-click.
 
static void vlc_window_ReportKeyPress (vlc_window_t *window, int key)
 Reports a keyboard key press.
 
static void vlc_window_ReportOutputDevice (vlc_window_t *window, const char *id, const char *name)
 Adds/removes a fullscreen output.
 
static void vlc_window_ReportICCProfile (vlc_window_t *window, vlc_icc_profile_t *prof)
 Reports a change to the currently active ICC profile.
 

Detailed Description

Window modules interface.