
| #define AN_SELECT | ( | collapser, | |||
| dec1, | |||||
| dec2, | |||||
| dec3, | |||||
| dec4, | |||||
| p, | |||||
| ... | ) | p |
| #define ARGS | ( | ... | ) |
Value:
AN_SELECT( collapser, ##__VA_ARGS__, \ (p_mlv, arg1, arg2, arg3, arg4, p_e), \ (p_mlv, arg1, arg2, arg3, p_e), \ (p_mlv, arg1, arg2, p_e), \ (p_mlv, arg1, p_e), (p_mlv, p_e) )
| #define MEDIA_LIST_VIEW_FUNCTION | ( | name, | |||
| ret_type, | |||||
| default_ret_value, | |||||
| ... | ) |
Value:
ret_type \
libvlc_media_list_view_##name( libvlc_media_list_view_t * p_mlv, \
##__VA_ARGS__, \
libvlc_exception_t * p_e ) \
{ \
if( p_mlv->pf_##name ) \
return p_mlv->pf_##name ARGS(__VA_ARGS__) ; \
libvlc_exception_raise( p_e ); \
libvlc_printerr( "No '" #name "' method in this media_list_view" ); \
return default_ret_value;\
}
| #define MEDIA_LIST_VIEW_FUNCTION_VOID_RET | ( | name, | |||
| ... | ) |
Value:
void \ libvlc_media_list_view_##name( libvlc_media_list_view_t * p_mlv, \ ##__VA_ARGS__, \ libvlc_exception_t * p_e ) \ { \ if( p_mlv->pf_##name ) \ { \ p_mlv->pf_##name ARGS(__VA_ARGS__) ; \ return; \ } \ libvlc_exception_raise( p_e ); \ libvlc_printerr( "No '" #name "' method in this media_list_view" ); \ }
| #define trace | ( | ... | ) |
| static void install_md_listener | ( | libvlc_media_list_view_t * | p_mlv, | |
| libvlc_media_t * | p_md | |||
| ) | [static] |
References i, libvlc_event_t::event_type_specific::index, libvlc_event_t::event_type_specific::item, libvlc_event_attach(), libvlc_media_list_count(), libvlc_media_list_item_at_index(), libvlc_media_list_lock(), libvlc_media_list_release(), libvlc_media_list_unlock(), libvlc_media_release(), libvlc_media_subitems(), libvlc_MediaListItemAdded, libvlc_MediaListItemDeleted, libvlc_MediaSubItemAdded, media_list_item_added(), libvlc_event_t::event_type_specific::media_list_item_added, media_list_item_removed(), media_list_subitem_added(), libvlc_media_t::p_event_manager, libvlc_media_list_t::p_event_manager, libvlc_media_list_view_t::pf_ml_item_added, and libvlc_event_t::u.
Referenced by libvlc_media_list_view_set_ml_notification_callback(), media_list_item_added(), and media_list_subitem_added().
| void libvlc_media_list_view_item_added | ( | libvlc_media_list_view_t * | p_mlv, | |
| libvlc_media_t * | p_item, | |||
| int | index | |||
| ) |
References libvlc_event_send(), libvlc_MediaListViewItemAdded, and libvlc_media_list_view_t::p_event_manager.
Referenced by items_subitems_added(), media_list_item_added(), and ml_item_added().
| void libvlc_media_list_view_item_deleted | ( | libvlc_media_list_view_t * | p_mlv, | |
| libvlc_media_t * | p_item, | |||
| int | index | |||
| ) |
References libvlc_event_send(), libvlc_MediaListViewItemDeleted, and libvlc_media_list_view_t::p_event_manager.
Referenced by media_list_item_deleted(), and ml_item_removed().
| libvlc_media_list_view_t* libvlc_media_list_view_new | ( | libvlc_media_list_t * | p_mlist, | |
| libvlc_media_list_view_count_func_t | pf_count, | |||
| libvlc_media_list_view_item_at_index_func_t | pf_item_at_index, | |||
| libvlc_media_list_view_children_at_index_func_t | pf_children_at_index, | |||
| libvlc_media_list_view_constructor_func_t | pf_constructor, | |||
| libvlc_media_list_view_release_func_t | pf_release, | |||
| void * | this_view_data, | |||
| libvlc_exception_t * | p_e | |||
| ) |
References libvlc_media_list_view_t::i_refcount, libvlc_event_manager_new(), libvlc_event_manager_register_event_type(), libvlc_media_list_retain(), libvlc_MediaListViewItemAdded, libvlc_MediaListViewItemDeleted, libvlc_MediaListViewWillAddItem, libvlc_MediaListViewWillDeleteItem, libvlc_media_list_view_t::object_lock, libvlc_media_list_view_t::p_event_manager, libvlc_media_list_t::p_libvlc_instance, libvlc_media_list_view_t::p_libvlc_instance, libvlc_media_list_view_t::p_mlist, libvlc_media_list_view_t::p_this_view_data, libvlc_media_list_view_t::pf_children_at_index, libvlc_media_list_view_t::pf_constructor, libvlc_media_list_view_t::pf_count, libvlc_media_list_view_t::pf_item_at_index, libvlc_media_list_view_t::pf_release, and vlc_mutex_init().
Referenced by libvlc_media_list_flat_view(), libvlc_media_list_hierarchical_node_view(), and libvlc_media_list_hierarchical_view().
| void libvlc_media_list_view_set_ml_notification_callback | ( | libvlc_media_list_view_t * | p_mlv, | |
| void(*)(const libvlc_event_t *, libvlc_media_list_view_t *) | item_added, | |||
| void(*)(const libvlc_event_t *, libvlc_media_list_view_t *) | item_removed | |||
| ) |
References i, install_md_listener(), libvlc_event_attach(), libvlc_media_list_count(), libvlc_media_list_item_at_index(), libvlc_media_release(), libvlc_MediaListItemAdded, libvlc_MediaListItemDeleted, media_list_item_added(), media_list_item_removed(), libvlc_media_list_t::p_event_manager, libvlc_media_list_view_t::p_mlist, libvlc_media_list_view_t::pf_ml_item_added, and libvlc_media_list_view_t::pf_ml_item_removed.
Referenced by libvlc_media_list_flat_view().
| void libvlc_media_list_view_will_add_item | ( | libvlc_media_list_view_t * | p_mlv, | |
| libvlc_media_t * | p_item, | |||
| int | index | |||
| ) |
References libvlc_event_send(), libvlc_MediaListViewWillAddItem, and libvlc_media_list_view_t::p_event_manager.
Referenced by items_subitems_added(), media_list_will_add_item(), and ml_item_added().
| void libvlc_media_list_view_will_delete_item | ( | libvlc_media_list_view_t * | p_mlv, | |
| libvlc_media_t * | p_item, | |||
| int | index | |||
| ) |
References libvlc_event_send(), libvlc_MediaListViewWillDeleteItem, and libvlc_media_list_view_t::p_event_manager.
Referenced by media_list_will_delete_item(), and ml_item_removed().
| static void media_list_item_added | ( | const libvlc_event_t * | p_event, | |
| void * | p_user_data | |||
| ) | [static] |
| static void media_list_item_removed | ( | const libvlc_event_t * | p_event, | |
| void * | p_user_data | |||
| ) | [static] |
References libvlc_event_t::event_type_specific::item, libvlc_event_t::event_type_specific::media_list_item_added, libvlc_media_list_view_t::pf_ml_item_removed, libvlc_event_t::u, and uninstall_md_listener().
Referenced by install_md_listener(), libvlc_media_list_view_release(), libvlc_media_list_view_set_ml_notification_callback(), media_list_subitem_added(), and uninstall_md_listener().
| static void media_list_subitem_added | ( | const libvlc_event_t * | p_event, | |
| void * | p_user_data | |||
| ) | [static] |
References libvlc_event_t::event_type_specific::index, install_md_listener(), libvlc_event_t::event_type_specific::item, libvlc_event_attach(), libvlc_event_detach(), libvlc_media_list_lock(), libvlc_media_list_release(), libvlc_media_list_unlock(), libvlc_media_subitems(), libvlc_MediaListItemAdded, libvlc_MediaListItemDeleted, libvlc_MediaSubItemAdded, libvlc_event_t::event_type_specific::media_list_item_added, media_list_item_added(), media_list_item_removed(), libvlc_event_t::event_type_specific::media_subitem_added, libvlc_event_t::event_type_specific::new_child, libvlc_media_list_t::p_event_manager, libvlc_media_t::p_event_manager, libvlc_event_t::p_obj, libvlc_media_list_view_t::pf_ml_item_added, and libvlc_event_t::u.
Referenced by install_md_listener(), and uninstall_md_listener().
| MEDIA_LIST_VIEW_FUNCTION | ( | count | , | |
| int | , | |||
| 0 | ||||
| ) |
| static void uninstall_md_listener | ( | libvlc_media_list_view_t * | p_mlv, | |
| libvlc_media_t * | p_md | |||
| ) | [static] |
References i, libvlc_event_detach(), libvlc_exception_clear(), libvlc_exception_init(), libvlc_exception_raised(), libvlc_media_list_count(), libvlc_media_list_item_at_index(), libvlc_media_list_lock(), libvlc_media_list_release(), libvlc_media_list_unlock(), libvlc_media_release(), libvlc_media_subitems(), libvlc_MediaListItemAdded, libvlc_MediaListItemDeleted, libvlc_MediaSubItemAdded, media_list_item_added(), media_list_item_removed(), media_list_subitem_added(), libvlc_media_list_t::p_event_manager, and libvlc_media_t::p_event_manager.
Referenced by libvlc_media_list_view_release(), and media_list_item_removed().
1.5.6