]> git.sesse.net Git - vlc/blobdiff - include/vlc_osd.h
Merged OSD functionality on the same core functions. All OSD functionality is describ...
[vlc] / include / vlc_osd.h
index 4256bdf972aaa8d2683eb5997ef3cad9dfd07116..bf47c87f2f4ea2ebc371dd920215ae83c84152b2 100644 (file)
@@ -1,11 +1,15 @@
 /*****************************************************************************\r
- * osd.h - OSD menu definitions and function prototypes\r
+ * vlc_osd.h - OSD menu definitions and function prototypes\r
  *****************************************************************************\r
  * Copyright (C) 2004-2005 M2X\r
- * $Id: osd.h 9451 2004-12-01 01:07:08Z jpsaman $\r
+ * $Id: vlc_osd.h 9451 2004-12-01 01:07:08Z jpsaman $\r
  *\r
  * Authors: Jean-Paul Saman <jpsaman #_at_# m2x dot nl>\r
  *\r
+ * Added code from include/osd.h written by:\r
+ * Copyright (C) 2003-2005 the VideoLAN team\r
+ * Authors: Sigmund Augdal <sigmunau@idi.ntnu.no>\r
+ *\r
  * This program is free software; you can redistribute it and/or modify\r
  * it under the terms of the GNU General Public License as published by\r
  * the Free Software Foundation; either version 2 of the License, or\r
@@ -63,7 +67,7 @@ extern "C" {
 # endif\r
 \r
 /**\r
- * The OSD Menu configuration file format.\r
+ * \brief The OSD Menu configuration file format.\r
  *\r
  * The configuration file syntax is very basic and so is its parser. See the\r
  * BNF formal representation below:\r
@@ -95,6 +99,37 @@ extern "C" {
  *\r
  */ \r
 \r
+/**\r
+ * OSD menu position and picture type defines\r
+ */\r
+\r
+#define OSD_ALIGN_LEFT 0x1\r
+#define OSD_ALIGN_RIGHT 0x2\r
+#define OSD_ALIGN_TOP 0x4\r
+#define OSD_ALIGN_BOTTOM 0x8\r
+\r
+#define OSD_HOR_SLIDER 1\r
+#define OSD_VERT_SLIDER 2\r
+\r
+#define OSD_PLAY_ICON 1\r
+#define OSD_PAUSE_ICON 2\r
+#define OSD_SPEAKER_ICON 3\r
+#define OSD_MUTE_ICON 4\r
+\r
+/**\r
+ * Text style information.\r
+ * This struct is currently ignored\r
+ */\r
+struct text_style_t\r
+{\r
+    int i_size;\r
+    uint32_t i_color;\r
+    vlc_bool_t b_italic;\r
+    vlc_bool_t b_bold;\r
+    vlc_bool_t b_underline;\r
+};\r
+static const text_style_t default_text_style = { 22, 0xffffff, VLC_FALSE, VLC_FALSE, VLC_FALSE };\r
\r
 /**\r
  * OSD menu button states\r
  *\r
@@ -372,6 +407,29 @@ static inline void osd_SetMenuUpdate( osd_menu_t *p_osd, vlc_bool_t b_value )
     var_Set( p_osd, "osd-menu-update", val );\r
 } \r
 \r
+/**\r
+ * Textual feedback\r
+ *\r
+ * Functions that provide the textual feedback on the OSD. They are shown on hotkey commands. The feedback\r
+ * is also part of the osd_button_t object. The types are declared in the include file\r
+ * include/vlc_osd.h\r
+ * @see vlc_osd.h \r
+ */\r
+VLC_EXPORT( int, osd_ShowTextRelative, ( spu_t *, int, char *, text_style_t *, int, int, int, mtime_t ) );\r
+VLC_EXPORT( int, osd_ShowTextAbsolute, ( spu_t *, int, char *, text_style_t *, int, int, int, mtime_t, mtime_t ) );\r
+VLC_EXPORT( void,osd_Message, ( spu_t *, int, char *, ... ) );\r
+\r
+/**\r
+ * Default feedback images\r
+ *\r
+ * Functions that provide the default OSD feedback images on hotkey commands. These feedback\r
+ * images are also part of the osd_button_t object. The types are declared in the include file\r
+ * include/vlc_osd.h\r
+ * @see vlc_osd.h \r
+ */\r
+VLC_EXPORT( int, osd_Slider, ( vlc_object_t *, spu_t *, int, int, int, int, short ) );\r
+VLC_EXPORT( int, osd_Icon, ( vlc_object_t *, spu_t *, int, int, int, short ) );\r
+\r
 /**\r
  * Loading and parse the OSD Configuration file\r
  *\r