本文整理汇总了C++中prop_unsubscribe函数的典型用法代码示例。如果您正苦于以下问题:C++ prop_unsubscribe函数的具体用法?C++ prop_unsubscribe怎么用?C++ prop_unsubscribe使用的例子?那么恭喜您, 这里精选的函数代码示例或许可以为您提供帮助。
在下文中一共展示了prop_unsubscribe函数的20个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于我们的系统推荐出更棒的C++代码示例。
示例1: nav_reload_current
static void
nav_reload_current(navigator_t *nav)
{
nav_page_t *np;
if((np = nav->nav_page_current) == NULL)
return;
plugins_reload_dev_plugin();
TRACE(TRACE_INFO, "navigator", "Reloading %s", np->np_url);
prop_unsubscribe(np->np_close_sub);
prop_unsubscribe(np->np_direct_close_sub);
prop_destroy(np->np_prop_root);
nav_page_setup_prop(nav, np, NULL);
if(prop_set_parent(np->np_prop_root, nav->nav_prop_pages)) {
/* nav->nav_prop_pages is a zombie, this is an error */
abort();
}
nav_select(nav, np, NULL);
if(backend_open(np->np_prop_root, np->np_url))
nav_open_errorf(np->np_prop_root, _("No handler for URL"));
}
开发者ID:CrashSerious,项目名称:showtime,代码行数:27,代码来源:navigator.c
示例2: nav_close
static void
nav_close(nav_page_t *np, int with_prop)
{
navigator_t *nav = np->np_nav;
prop_unsubscribe(np->np_close_sub);
prop_unsubscribe(np->np_url_sub);
prop_unsubscribe(np->np_direct_close_sub);
if(nav->nav_page_current == np)
nav->nav_page_current = NULL;
if(np->np_inhistory)
nav_remove_from_history(nav, np);
TAILQ_REMOVE(&nav->nav_pages, np, np_global_link);
if(with_prop) {
prop_destroy(np->np_prop_root);
nav_update_cango(nav);
}
free(np->np_url);
free(np->np_view);
free(np);
}
开发者ID:MatChung,项目名称:showtime,代码行数:25,代码来源:navigator.c
示例3: mp_destroy
void
mp_destroy(media_pipe_t *mp)
{
hts_mutex_lock(&media_mutex);
LIST_REMOVE(mp, mp_global_link);
num_media_pipelines--;
hts_mutex_unlock(&media_mutex);
mp_unbecome_primary(mp);
assert(mp->mp_sub_currenttime != NULL);
hts_mutex_lock(&mp->mp_mutex);
prop_unsubscribe(mp->mp_sub_currenttime);
prop_unsubscribe(mp->mp_sub_eventsink);
#if ENABLE_MEDIA_SETTINGS
mp_settings_clear(mp);
#endif
mp_track_mgr_destroy(&mp->mp_audio_track_mgr);
mp_track_mgr_destroy(&mp->mp_subtitle_track_mgr);
hts_mutex_unlock(&mp->mp_mutex);
mp_release(mp);
}
开发者ID:RuralHunter,项目名称:showtime,代码行数:29,代码来源:media.c
示例4: dyn_menu_item_del
static void
dyn_menu_item_del(gtk_ui_t *gu, dyn_menu_t *dn, dyn_menu_item_t *dmi)
{
if(dmi->dmi_widget != NULL)
gtk_widget_destroy(dmi->dmi_widget);
free(dmi->dmi_title);
prop_unsubscribe(dmi->dmi_type_sub);
prop_unsubscribe(dmi->dmi_enabled_sub);
prop_unsubscribe(dmi->dmi_title_sub);
prop_unsubscribe(dmi->dmi_value_sub);
prop_ref_dec(dmi->dmi_prop);
}
开发者ID:Allba,项目名称:showtime,代码行数:13,代码来源:gu_toolbar.c
示例5: toolbar_dtor
static void
toolbar_dtor(GtkObject *object, gpointer user_data)
{
toolbar_t *t = user_data;
prop_unsubscribe(t->sub_canGoBack);
prop_unsubscribe(t->sub_canGoFwd);
prop_unsubscribe(t->sub_canGoHome);
prop_unsubscribe(t->sub_parent);
prop_unsubscribe(t->sub_url);
free(t->parent_url);
free(t);
}
开发者ID:Allba,项目名称:showtime,代码行数:13,代码来源:gu_toolbar.c
示例6: gnp_dtor
static void
gnp_dtor(GtkWidget *w, gu_nav_page_t *gnp)
{
if(gnp->gnp_gt->gt_page_current == gnp)
gnp->gnp_gt->gt_page_current = NULL;
prop_unsubscribe(gnp->gnp_sub_type);
prop_unsubscribe(gnp->gnp_sub_url);
LIST_REMOVE(gnp, gnp_link);
prop_ref_dec(gnp->gnp_prop);
free(gnp->gnp_url);
free(gnp);
}
开发者ID:hean01,项目名称:showtime,代码行数:15,代码来源:gu_pages.c
示例7: nav_dtor_tracker
static void
nav_dtor_tracker(void *opaque, prop_event_t event, ...)
{
navigator_t *nav = opaque;
if(event != PROP_DESTROYED)
return;
prop_unsubscribe(nav->nav_eventsink);
prop_unsubscribe(nav->nav_dtor_tracker);
nav_close_all(nav, 0);
prop_courier_stop(nav->nav_pc);
free(nav);
}
开发者ID:CrashSerious,项目名称:showtime,代码行数:16,代码来源:navigator.c
示例8: popup_display
event_t *
popup_display(prop_t *p)
{
prop_courier_t *pc = prop_courier_create_waitable();
event_t *e = NULL;
prop_t *r = prop_create(p, "eventSink");
prop_sub_t *s = prop_subscribe(0,
PROP_TAG_CALLBACK, eventsink, &e,
PROP_TAG_ROOT, r,
PROP_TAG_COURIER, pc,
NULL);
/* Will show the popup */
if(prop_set_parent(p, prop_create(prop_get_global(), "popups"))) {
/* popuproot is a zombie, this is an error */
abort();
}
while(e == NULL)
prop_courier_wait_and_dispatch(pc);
prop_unsubscribe(s);
return e;
}
开发者ID:Sinster,项目名称:showtime,代码行数:25,代码来源:notifications.c
示例9: js_model_destroy
static void
js_model_destroy(js_model_t *jm)
{
if(jm->jm_args)
strvec_free(jm->jm_args);
prop_unsubscribe(jm->jm_eventsub);
if(jm->jm_root) prop_ref_dec(jm->jm_root);
if(jm->jm_loading) prop_ref_dec(jm->jm_loading);
if(jm->jm_nodes) prop_ref_dec(jm->jm_nodes);
if(jm->jm_actions) prop_ref_dec(jm->jm_actions);
if(jm->jm_type) prop_ref_dec(jm->jm_type);
if(jm->jm_error) prop_ref_dec(jm->jm_error);
if(jm->jm_contents) prop_ref_dec(jm->jm_contents);
if(jm->jm_entries) prop_ref_dec(jm->jm_entries);
if(jm->jm_source) prop_ref_dec(jm->jm_source);
if(jm->jm_metadata) prop_ref_dec(jm->jm_metadata);
if(jm->jm_options) prop_ref_dec(jm->jm_options);
if(jm->jm_eventsink) prop_ref_dec(jm->jm_eventsink);
if(jm->jm_pc != NULL)
prop_courier_destroy(jm->jm_pc);
free(jm->jm_url);
free(jm);
}
开发者ID:Allba,项目名称:showtime,代码行数:26,代码来源:js_page.c
示例10: video_destroy
static void
video_destroy(GtkWidget *w, gu_video_t *gv)
{
prop_unsubscribe(gv->gv_status_sub);
prop_ref_dec(gv->gv_closeprop);
free(gv);
}
开发者ID:Allba,项目名称:showtime,代码行数:7,代码来源:gu_video.c
示例11: js_model_destroy
static void
js_model_destroy(js_model_t *jm)
{
assert(TAILQ_FIRST(&jm->jm_items) == NULL);
if(jm->jm_args)
strvec_free(jm->jm_args);
prop_unsubscribe(jm->jm_eventsub);
if(jm->jm_root) prop_ref_dec(jm->jm_root);
if(jm->jm_loading) prop_ref_dec(jm->jm_loading);
if(jm->jm_nodes) prop_ref_dec(jm->jm_nodes);
if(jm->jm_actions) prop_ref_dec(jm->jm_actions);
if(jm->jm_type) prop_ref_dec(jm->jm_type);
if(jm->jm_error) prop_ref_dec(jm->jm_error);
if(jm->jm_contents) prop_ref_dec(jm->jm_contents);
if(jm->jm_entries) prop_ref_dec(jm->jm_entries);
if(jm->jm_source) prop_ref_dec(jm->jm_source);
if(jm->jm_metadata) prop_ref_dec(jm->jm_metadata);
if(jm->jm_options) prop_ref_dec(jm->jm_options);
if(jm->jm_eventsink) prop_ref_dec(jm->jm_eventsink);
if(jm->jm_pc != NULL)
prop_courier_destroy(jm->jm_pc);
free(jm->jm_url);
hts_mutex_lock(&js_model_mutex);
LIST_REMOVE(jm, jm_link);
hts_mutex_unlock(&js_model_mutex);
free(jm);
}
开发者ID:Bibamaru,项目名称:showtime,代码行数:31,代码来源:js_page.c
示例12: js_item_eventsub
static void
js_item_eventsub(void *opaque, prop_event_t event, ...)
{
js_item_t *ji = opaque;
va_list ap;
va_start(ap, event);
switch(event) {
default:
break;
case PROP_DESTROYED:
js_event_destroy_handlers(ji->ji_model->jm_cx, &ji->ji_event_handlers);
prop_unsubscribe(ji->ji_eventsub);
ji->ji_eventsub = NULL;
ji->ji_model->jm_subs--;
JS_RemoveRoot(ji->ji_model->jm_cx, &ji->ji_this);
prop_tag_clear(ji->ji_root, ji->ji_model);
break;
case PROP_EXT_EVENT:
js_event_dispatch(ji->ji_model->jm_cx, &ji->ji_event_handlers,
va_arg(ap, event_t *), JSVAL_TO_OBJECT(ji->ji_this));
break;
}
va_end(ap);
}
开发者ID:Bibamaru,项目名称:showtime,代码行数:28,代码来源:js_page.c
示例13: ab_destroy
static void
ab_destroy(GtkObject *object, gpointer user_data)
{
albumbrowse_t *ab = user_data;
prop_unsubscribe(ab->sub);
free(ab);
}
开发者ID:Allba,项目名称:showtime,代码行数:8,代码来源:gu_directory_albumcollection.c
示例14: notifications_dtor
static void
notifications_dtor(GtkObject *object, gpointer user_data)
{
statusbar_t *sb = user_data;
prop_unsubscribe(sb->sub);
free(sb);
}
开发者ID:Bibamaru,项目名称:showtime,代码行数:8,代码来源:gu_statusbar.c
示例15: dyn_menu_destroyed
static void
dyn_menu_destroyed(GtkObject *object, gpointer user_data)
{
dyn_menu_t *dm = user_data;
prop_unsubscribe(dm->dm_node_sub);
gu_cloner_destroy(&dm->dm_nodes);
free(dm);
}
开发者ID:Allba,项目名称:showtime,代码行数:8,代码来源:gu_toolbar.c
示例16: setting_destroy
void
setting_destroy(setting_t *s)
{
free(s->s_id);
prop_unsubscribe(s->s_sub);
prop_destroy(s->s_root);
prop_ref_dec(s->s_val);
free(s);
}
开发者ID:carlinx,项目名称:showtime,代码行数:9,代码来源:settings.c
示例17: mip_release
static void
mip_release(metadb_item_prop_t *mip)
{
mip->mip_refcount--;
if(mip->mip_refcount > 0)
return;
LIST_REMOVE(mip, mip_link);
prop_unsubscribe(mip->mip_destroy_sub);
prop_unsubscribe(mip->mip_playcount_sub);
prop_ref_dec(mip->mip_playcount);
prop_ref_dec(mip->mip_lastplayed);
prop_ref_dec(mip->mip_restartpos);
free(mip->mip_url);
free(mip);
}
开发者ID:Overx,项目名称:showtime,代码行数:18,代码来源:playinfo.c
示例18: connman_service_destroy
static void
connman_service_destroy(connman_service_t *cs)
{
connman_stop_input_request(cs);
prop_unsubscribe(cs->cs_sub);
TAILQ_REMOVE(&connman_services, cs, cs_link);
prop_destroy(cs->cs_prop);
cs->cs_prop = NULL;
connman_service_release(cs);
}
开发者ID:Ezio-PS,项目名称:movian,代码行数:10,代码来源:connman.c
示例19: glw_fini
void
glw_fini(glw_root_t *gr)
{
if(gr->gr_osk_widget != NULL) {
glw_unref(gr->gr_osk_widget);
prop_unsubscribe(gr->gr_osk_text_sub);
prop_unsubscribe(gr->gr_osk_ev_sub);
}
glw_text_bitmap_fini(gr);
rstr_release(gr->gr_default_font);
glw_tex_fini(gr);
free(gr->gr_skin);
prop_unsubscribe(gr->gr_evsub);
pool_destroy(gr->gr_token_pool);
pool_destroy(gr->gr_clone_pool);
prop_courier_destroy(gr->gr_courier);
hts_mutex_destroy(&gr->gr_mutex);
}
开发者ID:dev-life,项目名称:showtime,代码行数:19,代码来源:glw.c
示例20: gtb_unbind
static void
gtb_unbind(glw_text_bitmap_t *gtb)
{
prop_unsubscribe(gtb->gtb_sub);
if(gtb->gtb_p != NULL) {
prop_ref_dec(gtb->gtb_p);
gtb->gtb_p = NULL;
}
}
开发者ID:Allba,项目名称:showtime,代码行数:10,代码来源:glw_text_bitmap.c
注:本文中的prop_unsubscribe函数示例由纯净天空整理自Github/MSDocs等源码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。 |
请发表评论