#include <vlc_keys.h> /* Wheel event */
#include <vlc_vout.h>
+#include <vlc_dialog.h>
/* Callback prototypes */
static int PopupMenuCB( vlc_object_t *p_this, const char *psz_variable,
vlc_value_t old_val, vlc_value_t new_val, void *param );
static int InteractCallback( vlc_object_t *, const char *, vlc_value_t,
vlc_value_t, void *);
+static int DialogCallback( vlc_object_t *, const char *,
+ vlc_value_t, vlc_value_t, void *);
MainInterface::MainInterface( intf_thread_t *_p_intf ) : QVLCMW( _p_intf )
{
var_AddCallback( p_intf, "interaction", InteractCallback, this );
interaction_Register( p_intf );
+ var_Create( p_intf, "dialog-fatal", VLC_VAR_ADDRESS );
+ var_AddCallback( p_intf, "dialog-fatal", DialogCallback, this );
+ dialog_Register( p_intf );
+
var_AddCallback( p_intf->p_libvlc, "intf-show", IntfShowCB, p_intf );
/* Register callback for the intf-popupmenu variable */
interaction_Unregister( p_intf );
var_DelCallback( p_intf, "interaction", InteractCallback, this );
+ dialog_Unregister( p_intf );
+ var_DelCallback( p_intf, "dialog-fatal", DialogCallback, this );
+
p_intf->p_sys->p_mi = NULL;
}
return VLC_SUCCESS;
}
+static int DialogCallback( vlc_object_t *p_this,
+ const char *type, vlc_value_t previous,
+ vlc_value_t value, void *data )
+{
+ MainInterface *self = (MainInterface *)data;
+ const dialog_fatal_t *dialog = (const dialog_fatal_t *)value.p_address;
+
+ if (!strcmp (type, "dialog-fatal"))
+ printf ("ERROR: %s\n %s\n", dialog->title, dialog->message);
+
+ /* FIXME!!! */
+ (void) previous;
+ return VLC_SUCCESS;
+}
+
/*****************************************************************************
* PopupMenuCB: callback triggered by the intf-popupmenu playlist variable.
* We don't show the menu directly here because we don't want the