summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDaniel Caujolle-Bert <f1rmb@users.sourceforge.net>2001-05-03 18:22:37 +0000
committerDaniel Caujolle-Bert <f1rmb@users.sourceforge.net>2001-05-03 18:22:37 +0000
commit9142df5dc4bd090d324c2b62059f52f4e83b737f (patch)
treed08d3c958663cfd97b927b9aecb095aa10bf66b0
parent977dd61d21c00c84a3a744ca83e72968feec8c93 (diff)
downloadxine-lib-9142df5dc4bd090d324c2b62059f52f4e83b737f.tar.gz
xine-lib-9142df5dc4bd090d324c2b62059f52f4e83b737f.tar.bz2
Implement xine_*_window*() functions.
CVS patchset: 58 CVS date: 2001/05/03 18:22:37
-rw-r--r--include/xine.h.tmpl.in55
-rw-r--r--src/xine-engine/video_out.c7
-rw-r--r--src/xine-engine/xine.c42
3 files changed, 101 insertions, 3 deletions
diff --git a/include/xine.h.tmpl.in b/include/xine.h.tmpl.in
index 94824b9bb..2096ce8f7 100644
--- a/include/xine.h.tmpl.in
+++ b/include/xine.h.tmpl.in
@@ -29,7 +29,7 @@
\endverbatim
*/
/*
- * $Id: xine.h.tmpl.in,v 1.11 2001/05/03 00:02:42 f1rmb Exp $
+ * $Id: xine.h.tmpl.in,v 1.12 2001/05/03 18:22:37 f1rmb Exp $
*
*/
@@ -286,6 +286,59 @@ int xine_get_spu_channel (xine_t *this);
*/
void xine_select_spu_channel (xine_t *this, int channel);
+/**
+ * \fn void *xine_get_output_window(xine_t *this);
+ * \brief Get the output window.
+ * \param this Current xine engine configuration ( #see xine_init() )
+ * \return Return output window as void pointer.
+ *
+ * Get whatever is usefull to contact the window/video output
+ * (mostly usefull for the gui if it wants to access
+ * the video output window). The calling application should
+ * cast the void pointer to desired type.
+ */
+void *xine_get_window_output(xine_t *this);
+
+/**
+ * \fn int xine_get_window_property(xine_t *this, int property);
+ * \brief
+ * \param
+ * \return
+ *
+ *
+ */
+int xine_get_window_property(xine_t *this, int property);
+
+/**
+ * \fn int xine_set_window_property(xine_t *this, int property, int value);
+ * \brief
+ * \param
+ * \return
+ *
+ *
+ */
+int xine_set_window_property(xine_t *this, int property, int value);
+
+/**
+ * \fn void xine_get_window_property_min_max(xine_t *this, int property, int *min, int *max);
+ * \brief
+ * \param
+ * \return
+ *
+ *
+ */
+void xine_get_window_property_min_max(xine_t *this, int property, int *min, int *max);
+
+/**
+ * \fn void xine_window_handle_event(xine_t *this, void *event);
+ * \brief
+ * \param
+ * \return
+ *
+ *
+ */
+void xine_window_handle_event(xine_t *this, void *event);
+
/** @} end of xine_management_api */
/**
diff --git a/src/xine-engine/video_out.c b/src/xine-engine/video_out.c
index 6fcf6abf6..78c37d839 100644
--- a/src/xine-engine/video_out.c
+++ b/src/xine-engine/video_out.c
@@ -17,7 +17,7 @@
* along with this program; if not, write to the Free Software
* Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA
*
- * $Id: video_out.c,v 1.1 2001/04/24 20:57:11 f1rmb Exp $
+ * $Id: video_out.c,v 1.2 2001/05/03 18:22:37 f1rmb Exp $
*
*/
@@ -319,6 +319,10 @@ static void vo_exit (vo_instance_t *this) {
}
+static void *vo_get_window(vo_instance_t *this) {
+ return this->driver->get_window (this->driver);
+}
+
static uint32_t vo_get_capabilities (vo_instance_t *this) {
return this->driver->get_capabilities (this->driver);
}
@@ -447,6 +451,7 @@ vo_instance_t *vo_new_instance (vo_driver_t *driver, metronom_t *metronom) {
this->get_frame = vo_get_frame;
this->close = vo_close;
this->exit = vo_exit;
+ this->get_window = vo_get_window;
this->get_property = vo_get_property;
this->set_property = vo_set_property;
this->get_property_min_max = vo_get_property_min_max;
diff --git a/src/xine-engine/xine.c b/src/xine-engine/xine.c
index 98ec4e05a..5d39330cc 100644
--- a/src/xine-engine/xine.c
+++ b/src/xine-engine/xine.c
@@ -17,7 +17,7 @@
* along with this program; if not, write to the Free Software
* Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA
*
- * $Id: xine.c,v 1.11 2001/04/30 21:55:27 guenter Exp $
+ * $Id: xine.c,v 1.12 2001/05/03 18:22:37 f1rmb Exp $
*
* top-level xine functions
*
@@ -526,3 +526,43 @@ int xine_get_status(xine_t *this) {
return this->status;
}
+/*
+ *
+ */
+void *xine_get_window_output(xine_t *this) {
+
+ return (this->video_out->get_window(this->video_out));
+}
+
+/*
+ *
+ */
+int xine_get_window_property(xine_t *this, int property) {
+
+ return (this->video_out->get_property(this->video_out, property));
+}
+
+/*
+ *
+ */
+int xine_set_window_property(xine_t *this, int property, int value) {
+
+ return (this->video_out->set_property(this->video_out, property, value));
+}
+
+/*
+ *
+ */
+void xine_get_window_property_min_max(xine_t *this,
+ int property, int *min, int *max) {
+
+ this->video_out->get_property_min_max(this->video_out, property, min, max);
+}
+
+/*
+ *
+ */
+void xine_window_handle_event(xine_t *this, void *event) {
+
+ this->video_out->handle_event(this->video_out, event);
+}