]> git.sesse.net Git - vlc/commitdiff
Use oldval and newval in libvlc_event_t
authorFilippo Carone <littlejohn@videolan.org>
Sun, 20 May 2007 16:58:44 +0000 (16:58 +0000)
committerFilippo Carone <littlejohn@videolan.org>
Sun, 20 May 2007 16:58:44 +0000 (16:58 +0000)
include/vlc/libvlc_structures.h
src/control/callback.c

index e7cb50d5063efbaacf309b4d80bf53d564b605d7..145f190ad61730b48a899ce3f4aa059cc71ca47b 100644 (file)
@@ -144,14 +144,30 @@ typedef struct libvlc_log_message_t
  * - VOLUME_CHANGED
  * - INPUT_POSITION_CHANGED
  */
+
 typedef enum {
     VOLUME_CHANGED,
     INPUT_POSITION_CHANGED,
 } libvlc_event_type_t;
 
+typedef enum {
+    INT_EVENT,
+    BOOLEAN_EVENT,
+    FLOAT_EVENT,
+    STRING_EVENT,
+    ADDRESS_EVENT,
+    OBJECT_EVENT,
+    LIST_EVENT,
+    TIME_EVENT,
+    VAR_EVENT,
+} libvlc_event_value_type_t;
+
 typedef struct 
 {
     libvlc_event_type_t type;
+    libvlc_event_value_type_t value_type;
+    vlc_value_t old_value;
+    vlc_value_t new_value;
     char reserved[8]; /* For future use */
 } libvlc_event_t;
 
index 531afd85c18b2be4e8f61d5b03577fc3e869e71d..91f30632c74530d8910fdcf16b48fe7e6c309a1c 100644 (file)
@@ -110,6 +110,18 @@ int libvlc_private_handle_callback( vlc_object_t *p_this, char const *psz_cmd,
     struct libvlc_callback_entry_t *entry = p_data;
     libvlc_event_t event;
     event.type = entry->i_event_type;
+    switch ( event.type )
+    {
+        case VOLUME_CHANGED:
+            event.value_type = BOOLEAN_EVENT;
+            break;
+        case INPUT_POSITION_CHANGED:
+            break;
+        default:
+            break;
+    }
+    event.old_value = oldval;
+    event.new_value = newval;
 
     /* Call the client entry */
     entry->f_callback( entry->p_instance, &event, entry->p_user_data );