]> git.sesse.net Git - vlc/blobdiff - src/video_output/control.c
Use var_Inherit* instead of var_CreateGet*.
[vlc] / src / video_output / control.c
index bff7a4e2d89cd0b9fabe2e2b7df789ff4b787065..96cb186c894dd582d32674a40449ac27fbab1fd2 100644 (file)
@@ -26,6 +26,7 @@
 #endif
 
 #include <vlc_common.h>
+#include <vlc_vout.h>
 #include "control.h"
 
 /* */
@@ -38,22 +39,15 @@ void vout_control_cmd_Init(vout_control_cmd_t *cmd, int type)
 void vout_control_cmd_Clean(vout_control_cmd_t *cmd)
 {
     switch (cmd->type) {
-    //case VOUT_CONTROL_OSD_MESSAGE:
+    case VOUT_CONTROL_SUBPICTURE:
+        if (cmd->u.subpicture)
+            subpicture_Delete(cmd->u.subpicture);
+        break;
     case VOUT_CONTROL_OSD_TITLE:
     case VOUT_CONTROL_CHANGE_FILTERS:
+    case VOUT_CONTROL_CHANGE_SUB_FILTERS:
         free(cmd->u.string);
         break;
-#if 0
-    case VOUT_CONTROL_OSD_TEXT:
-        free(cmd->text.string);
-        if (cmd->text.style)
-            text_style_Delete(cmd->text.style);
-        break;
-    case VOUT_CONTROL_OSD_SUBPICTURE:
-        if (cmd->subpicture)
-            subpicture_Delete(cmd->subpicture);
-        break;
-#endif
     default:
         break;
     }
@@ -140,6 +134,14 @@ void vout_control_PushBool(vout_control_t *ctrl, int type, bool boolean)
     cmd.u.boolean = boolean;
     vout_control_Push(ctrl, &cmd);
 }
+void vout_control_PushInteger(vout_control_t *ctrl, int type, int integer)
+{
+    vout_control_cmd_t cmd;
+
+    vout_control_cmd_Init(&cmd, type);
+    cmd.u.integer = integer;
+    vout_control_Push(ctrl, &cmd);
+}
 void vout_control_PushTime(vout_control_t *ctrl, int type, mtime_t time)
 {
     vout_control_cmd_t cmd;