diff --git a/channels/console_video.h b/channels/console_video.h index f426a5463964244cbdbe7d51803d2f29256bad52..79240e871fe7a614fe1d48b3373a6c9161475a20 100644 --- a/channels/console_video.h +++ b/channels/console_video.h @@ -43,6 +43,13 @@ #endif /* HAVE_VIDEO_CONSOLE and others */ +#define SRC_WIN_W 80 /* width of video thumbnails */ +#define SRC_WIN_H 60 /* height of video thumbnails */ +/* we only support a limited number of video sources in the GUI, + * because we need screen estate to switch between them. + */ +#define MAX_VIDEO_SOURCES 9 + /* * In many places we use buffers to store the raw frames (but not only), * so here is a structure to keep all the info. data = NULL means the @@ -60,6 +67,11 @@ struct fbuf_t { /* frame buffers, dynamically allocated */ int w; /* size */ int h; int pix_fmt; + /* offsets and size of the copy in Picture-in-Picture mode */ + int win_x; + int win_y; + int win_w; + int win_h; }; void fbuf_free(struct fbuf_t *); @@ -103,6 +115,7 @@ enum drag_window { /* which window are we dragging */ DRAG_DIALED, /* dialed number */ DRAG_INPUT, /* input window */ DRAG_MESSAGE, /* message window */ + DRAG_PIP, /* picture in picture */ }; /*! \brief support for drag actions */ @@ -123,5 +136,8 @@ const char *read_message(const struct board *b); /*! \brief reset the board to blank */ int reset_board(struct board *b); +/*! \brief deallocates memory space for a board */ +void delete_board(struct board *b); + #endif /* CONSOLE_VIDEO_H */ /* end of file */