parent
d55655b366
commit
2456994fe8
|
@ -123,7 +123,7 @@ _gc_init(E_Gadcon *gc, const char *name, const char *id, const char *style)
|
||||||
ni = news_item_new(gcc, o, id);
|
ni = news_item_new(gcc, o, id);
|
||||||
gcc->data = ni;
|
gcc->data = ni;
|
||||||
|
|
||||||
news->items = evas_list_append(news->items, ni);
|
news->items = eina_list_append(news->items, ni);
|
||||||
|
|
||||||
return ni->gcc;
|
return ni->gcc;
|
||||||
}
|
}
|
||||||
|
@ -136,7 +136,7 @@ _gc_shutdown(E_Gadcon_Client *gcc)
|
||||||
ni = gcc->data;
|
ni = gcc->data;
|
||||||
|
|
||||||
DMAIN(("GCC shutdown"));
|
DMAIN(("GCC shutdown"));
|
||||||
news->items = evas_list_remove(news->items, ni);
|
news->items = eina_list_remove(news->items, ni);
|
||||||
news_item_free(ni);
|
news_item_free(ni);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -159,7 +159,7 @@ _gc_orient(E_Gadcon_Client *gcc)
|
||||||
nb_feeds = 1;
|
nb_feeds = 1;
|
||||||
break;
|
break;
|
||||||
case NEWS_ITEM_VIEW_MODE_FEED:
|
case NEWS_ITEM_VIEW_MODE_FEED:
|
||||||
nb_feeds = evas_list_count(ni->config->feed_refs);
|
nb_feeds = eina_list_count(ni->config->feed_refs);
|
||||||
if (!nb_feeds) nb_feeds = 1;
|
if (!nb_feeds) nb_feeds = 1;
|
||||||
break;
|
break;
|
||||||
case NEWS_ITEM_VIEW_MODE_FEED_UNREAD:
|
case NEWS_ITEM_VIEW_MODE_FEED_UNREAD:
|
||||||
|
|
|
@ -20,8 +20,8 @@ struct _News
|
||||||
E_Config_Dialog *config_dialog_category_new;
|
E_Config_Dialog *config_dialog_category_new;
|
||||||
E_Config_Dialog *config_dialog_langs;
|
E_Config_Dialog *config_dialog_langs;
|
||||||
|
|
||||||
Evas_List *items;
|
Eina_List *items;
|
||||||
Evas_List *langs;
|
Eina_List *langs;
|
||||||
Ecore_Timer *feeds_timer;
|
Ecore_Timer *feeds_timer;
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
|
@ -189,7 +189,7 @@ news_config_shutdown(void)
|
||||||
|
|
||||||
if (c->proxy.host) evas_stringshare_del(c->proxy.host);
|
if (c->proxy.host) evas_stringshare_del(c->proxy.host);
|
||||||
|
|
||||||
while ( (nic = evas_list_data(c->items)) )
|
while ( (nic = eina_list_data_get(c->items)) )
|
||||||
news_config_item_del(nic);
|
news_config_item_del(nic);
|
||||||
|
|
||||||
evas_stringshare_del(c->viewer.vcontent.font_color);
|
evas_stringshare_del(c->viewer.vcontent.font_color);
|
||||||
|
@ -218,7 +218,7 @@ News_Config_Item *
|
||||||
news_config_item_add(const char *id)
|
news_config_item_add(const char *id)
|
||||||
{
|
{
|
||||||
News_Config_Item *nic;
|
News_Config_Item *nic;
|
||||||
Evas_List *l;
|
Eina_List *l;
|
||||||
char buf[128];
|
char buf[128];
|
||||||
|
|
||||||
DCONF(("Item new config"));
|
DCONF(("Item new config"));
|
||||||
|
@ -231,7 +231,7 @@ news_config_item_add(const char *id)
|
||||||
if (news->config->items)
|
if (news->config->items)
|
||||||
{
|
{
|
||||||
const char *p;
|
const char *p;
|
||||||
nic = evas_list_last(news->config->items)->data;
|
nic = eina_list_last(news->config->items)->data;
|
||||||
p = strrchr(nic->id, '.');
|
p = strrchr(nic->id, '.');
|
||||||
if (p) num = atoi(p + 1) + 1;
|
if (p) num = atoi(p + 1) + 1;
|
||||||
}
|
}
|
||||||
|
@ -241,9 +241,9 @@ news_config_item_add(const char *id)
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
/* is there already an item config for this id ? */
|
/* is there already an item config for this id ? */
|
||||||
for (l=news->config->items; l; l=evas_list_next(l))
|
for (l=news->config->items; l; l=eina_list_next(l))
|
||||||
{
|
{
|
||||||
nic = evas_list_data(l);
|
nic = eina_list_data_get(l);
|
||||||
if (!strcmp(nic->id, id))
|
if (!strcmp(nic->id, id))
|
||||||
{
|
{
|
||||||
DCONF(("config found ! %s", nic->id));
|
DCONF(("config found ! %s", nic->id));
|
||||||
|
@ -261,7 +261,7 @@ news_config_item_add(const char *id)
|
||||||
nic->openmethod = NEWS_ITEM_OPENMETHOD_DEFAULT;
|
nic->openmethod = NEWS_ITEM_OPENMETHOD_DEFAULT;
|
||||||
nic->browser_open_home = NEWS_ITEM_BROWSER_OPEN_HOME_DEFAULT;
|
nic->browser_open_home = NEWS_ITEM_BROWSER_OPEN_HOME_DEFAULT;
|
||||||
|
|
||||||
news->config->items = evas_list_append(news->config->items, nic);
|
news->config->items = eina_list_append(news->config->items, nic);
|
||||||
|
|
||||||
return nic;
|
return nic;
|
||||||
}
|
}
|
||||||
|
@ -271,15 +271,15 @@ news_config_item_del(News_Config_Item *nic)
|
||||||
{
|
{
|
||||||
evas_stringshare_del(nic->id);
|
evas_stringshare_del(nic->id);
|
||||||
|
|
||||||
while(evas_list_count(nic->feed_refs))
|
while(eina_list_count(nic->feed_refs))
|
||||||
{
|
{
|
||||||
News_Feed_Ref *fr;
|
News_Feed_Ref *fr;
|
||||||
fr = evas_list_data(nic->feed_refs);
|
fr = eina_list_data_get(nic->feed_refs);
|
||||||
evas_stringshare_del(fr->name);
|
evas_stringshare_del(fr->name);
|
||||||
nic->feed_refs = evas_list_remove(nic->feed_refs, fr);
|
nic->feed_refs = eina_list_remove(nic->feed_refs, fr);
|
||||||
}
|
}
|
||||||
|
|
||||||
news->config->items = evas_list_remove(news->config->items, nic);
|
news->config->items = eina_list_remove(news->config->items, nic);
|
||||||
free(nic);
|
free(nic);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -16,10 +16,10 @@ struct _News_Config
|
||||||
|
|
||||||
struct
|
struct
|
||||||
{
|
{
|
||||||
Evas_List *categories;
|
Eina_List *categories;
|
||||||
int timer_m;
|
int timer_m;
|
||||||
int sort_name;
|
int sort_name;
|
||||||
Evas_List *langs;
|
Eina_List *langs;
|
||||||
int langs_all;
|
int langs_all;
|
||||||
int langs_notset;
|
int langs_notset;
|
||||||
} feed;
|
} feed;
|
||||||
|
@ -63,7 +63,7 @@ struct _News_Config
|
||||||
int timer_s;
|
int timer_s;
|
||||||
} popup_other;
|
} popup_other;
|
||||||
|
|
||||||
Evas_List *items;
|
Eina_List *items;
|
||||||
};
|
};
|
||||||
|
|
||||||
struct _News_Config_Item
|
struct _News_Config_Item
|
||||||
|
@ -71,7 +71,7 @@ struct _News_Config_Item
|
||||||
const char *id;
|
const char *id;
|
||||||
|
|
||||||
/* list of Feed_Ref */
|
/* list of Feed_Ref */
|
||||||
Evas_List *feed_refs;
|
Eina_List *feed_refs;
|
||||||
|
|
||||||
int view_mode;
|
int view_mode;
|
||||||
int openmethod;
|
int openmethod;
|
||||||
|
|
|
@ -169,7 +169,7 @@ _basic_apply_data(E_Config_Dialog *cfd, E_Config_Dialog_Data *cfdata)
|
||||||
cfdata->icon);
|
cfdata->icon);
|
||||||
if (!cat) return 0;
|
if (!cat) return 0;
|
||||||
news->config->feed.categories =
|
news->config->feed.categories =
|
||||||
evas_list_append(news->config->feed.categories, cat);
|
eina_list_append(news->config->feed.categories, cat);
|
||||||
|
|
||||||
cfdata->cat = cat;
|
cfdata->cat = cat;
|
||||||
news->config_dialog_category_new = NULL;
|
news->config_dialog_category_new = NULL;
|
||||||
|
|
|
@ -58,7 +58,7 @@ news_config_dialog_feed_show(News_Feed *feed)
|
||||||
E_Config_Dialog *cfd;
|
E_Config_Dialog *cfd;
|
||||||
E_Config_Dialog_View *v;
|
E_Config_Dialog_View *v;
|
||||||
|
|
||||||
if (!evas_list_count(news->config->feed.categories))
|
if (!eina_list_count(news->config->feed.categories))
|
||||||
{
|
{
|
||||||
news_util_message_error_show(D_("You need to <hilight>create a category</hilight> first"));
|
news_util_message_error_show(D_("You need to <hilight>create a category</hilight> first"));
|
||||||
return 0;
|
return 0;
|
||||||
|
@ -100,7 +100,7 @@ void
|
||||||
news_config_dialog_feed_refresh_categories(News_Feed *feed)
|
news_config_dialog_feed_refresh_categories(News_Feed *feed)
|
||||||
{
|
{
|
||||||
E_Config_Dialog_Data *cfdata;
|
E_Config_Dialog_Data *cfdata;
|
||||||
Evas_List *l;
|
Eina_List *l;
|
||||||
Evas_Object *ilist;
|
Evas_Object *ilist;
|
||||||
int pos, pos_to_select;
|
int pos, pos_to_select;
|
||||||
int w;
|
int w;
|
||||||
|
@ -122,13 +122,13 @@ news_config_dialog_feed_refresh_categories(News_Feed *feed)
|
||||||
|
|
||||||
pos = 0;
|
pos = 0;
|
||||||
pos_to_select = -1;
|
pos_to_select = -1;
|
||||||
for(l=news->config->feed.categories; l; l=evas_list_next(l))
|
for(l=news->config->feed.categories; l; l=eina_list_next(l))
|
||||||
{
|
{
|
||||||
Evas_Object *ic = NULL;
|
Evas_Object *ic = NULL;
|
||||||
News_Feed_Category *fc;
|
News_Feed_Category *fc;
|
||||||
char buf[1024];
|
char buf[1024];
|
||||||
|
|
||||||
fc = evas_list_data(l);
|
fc = eina_list_data_get(l);
|
||||||
|
|
||||||
if (fc->icon && fc->icon[0])
|
if (fc->icon && fc->icon[0])
|
||||||
{
|
{
|
||||||
|
@ -165,7 +165,7 @@ news_config_dialog_feed_refresh_langs(News_Feed *feed)
|
||||||
E_Config_Dialog_Data *cfdata;
|
E_Config_Dialog_Data *cfdata;
|
||||||
Evas_Object *ilist;
|
Evas_Object *ilist;
|
||||||
News_Feed_Lang *lang;
|
News_Feed_Lang *lang;
|
||||||
Evas_List *list, *l;
|
Eina_List *list, *l;
|
||||||
int pos, pos_to_select;
|
int pos, pos_to_select;
|
||||||
int w;
|
int w;
|
||||||
|
|
||||||
|
@ -190,7 +190,7 @@ news_config_dialog_feed_refresh_langs(News_Feed *feed)
|
||||||
list = news->config->feed.langs;
|
list = news->config->feed.langs;
|
||||||
pos = 0;
|
pos = 0;
|
||||||
pos_to_select = -1;
|
pos_to_select = -1;
|
||||||
for (l=list; l; l=evas_list_next(l))
|
for (l=list; l; l=eina_list_next(l))
|
||||||
{
|
{
|
||||||
lang = l->data;
|
lang = l->data;
|
||||||
e_widget_ilist_append(ilist, NULL, lang->name, NULL, lang, NULL);
|
e_widget_ilist_append(ilist, NULL, lang->name, NULL, lang, NULL);
|
||||||
|
@ -446,8 +446,8 @@ _common_apply_data(E_Config_Dialog *cfd, E_Config_Dialog_Data *cfdata)
|
||||||
{
|
{
|
||||||
if (old_cat != cfdata->category)
|
if (old_cat != cfdata->category)
|
||||||
{
|
{
|
||||||
old_cat->feeds = evas_list_remove(old_cat->feeds, f);
|
old_cat->feeds = eina_list_remove(old_cat->feeds, f);
|
||||||
f->category->feeds = evas_list_prepend(f->category->feeds, f);
|
f->category->feeds = eina_list_prepend(f->category->feeds, f);
|
||||||
}
|
}
|
||||||
if (f->item && f->item->viewer)
|
if (f->item && f->item->viewer)
|
||||||
news_viewer_refresh(f->item->viewer);
|
news_viewer_refresh(f->item->viewer);
|
||||||
|
@ -477,7 +477,7 @@ _common_apply_data(E_Config_Dialog *cfd, E_Config_Dialog_Data *cfdata)
|
||||||
DD(("FAILED to create feed !"));
|
DD(("FAILED to create feed !"));
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
cat->feeds = evas_list_append(cat->feeds, f);
|
cat->feeds = eina_list_append(cat->feeds, f);
|
||||||
|
|
||||||
cfdata->feed = f;
|
cfdata->feed = f;
|
||||||
news->config_dialog_feed_new = NULL;
|
news->config_dialog_feed_new = NULL;
|
||||||
|
@ -513,7 +513,7 @@ _cb_category_list(void *data)
|
||||||
|
|
||||||
cfdata = data;
|
cfdata = data;
|
||||||
|
|
||||||
cfdata->category = evas_list_nth(news->config->feed.categories,
|
cfdata->category = eina_list_nth(news->config->feed.categories,
|
||||||
e_widget_ilist_selected_get(cfdata->gui.ilist_categories));
|
e_widget_ilist_selected_get(cfdata->gui.ilist_categories));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -104,7 +104,7 @@ void
|
||||||
news_config_dialog_feeds_refresh_feeds(void)
|
news_config_dialog_feeds_refresh_feeds(void)
|
||||||
{
|
{
|
||||||
E_Config_Dialog_Data *cfdata;
|
E_Config_Dialog_Data *cfdata;
|
||||||
Evas_List *l, *lcat;
|
Eina_List *l, *lcat;
|
||||||
Evas_Object *ilist;
|
Evas_Object *ilist;
|
||||||
int pos, pos_to_select;
|
int pos, pos_to_select;
|
||||||
|
|
||||||
|
@ -119,12 +119,12 @@ news_config_dialog_feeds_refresh_feeds(void)
|
||||||
|
|
||||||
pos = -1;
|
pos = -1;
|
||||||
pos_to_select = -1;
|
pos_to_select = -1;
|
||||||
for (lcat=news->config->feed.categories; lcat; lcat=evas_list_next(lcat))
|
for (lcat=news->config->feed.categories; lcat; lcat=eina_list_next(lcat))
|
||||||
{
|
{
|
||||||
News_Feed_Category *cat;
|
News_Feed_Category *cat;
|
||||||
Evas_Object *iccat = NULL;
|
Evas_Object *iccat = NULL;
|
||||||
|
|
||||||
cat = evas_list_data(lcat);
|
cat = eina_list_data_get(lcat);
|
||||||
|
|
||||||
if (!cat->feeds_visible)
|
if (!cat->feeds_visible)
|
||||||
continue;
|
continue;
|
||||||
|
@ -138,13 +138,13 @@ news_config_dialog_feeds_refresh_feeds(void)
|
||||||
e_widget_ilist_header_append(ilist, iccat, cat->name);
|
e_widget_ilist_header_append(ilist, iccat, cat->name);
|
||||||
pos++;
|
pos++;
|
||||||
|
|
||||||
for (l=cat->feeds_visible; l; l=evas_list_next(l))
|
for (l=cat->feeds_visible; l; l=eina_list_next(l))
|
||||||
{
|
{
|
||||||
Evas_Object *ic = NULL;
|
Evas_Object *ic = NULL;
|
||||||
News_Feed *f;
|
News_Feed *f;
|
||||||
char buf[1024];
|
char buf[1024];
|
||||||
|
|
||||||
f = evas_list_data(l);
|
f = eina_list_data_get(l);
|
||||||
|
|
||||||
if (f->icon && f->icon[0])
|
if (f->icon && f->icon[0])
|
||||||
{
|
{
|
||||||
|
@ -186,7 +186,7 @@ void
|
||||||
news_config_dialog_feeds_refresh_categories(void)
|
news_config_dialog_feeds_refresh_categories(void)
|
||||||
{
|
{
|
||||||
E_Config_Dialog_Data *cfdata;
|
E_Config_Dialog_Data *cfdata;
|
||||||
Evas_List *l;
|
Eina_List *l;
|
||||||
Evas_Object *ilist;
|
Evas_Object *ilist;
|
||||||
int pos, pos_to_select;
|
int pos, pos_to_select;
|
||||||
|
|
||||||
|
@ -201,13 +201,13 @@ news_config_dialog_feeds_refresh_categories(void)
|
||||||
|
|
||||||
pos = -1;
|
pos = -1;
|
||||||
pos_to_select = -1;
|
pos_to_select = -1;
|
||||||
for (l=news->config->feed.categories; l; l=evas_list_next(l))
|
for (l=news->config->feed.categories; l; l=eina_list_next(l))
|
||||||
{
|
{
|
||||||
Evas_Object *ic = NULL;
|
Evas_Object *ic = NULL;
|
||||||
News_Feed_Category *fc;
|
News_Feed_Category *fc;
|
||||||
char buf[1024];
|
char buf[1024];
|
||||||
|
|
||||||
fc = evas_list_data(l);
|
fc = eina_list_data_get(l);
|
||||||
|
|
||||||
if (fc->icon && fc->icon[0])
|
if (fc->icon && fc->icon[0])
|
||||||
{
|
{
|
||||||
|
@ -453,7 +453,7 @@ _cb_feed_up(void *data, void *data2)
|
||||||
E_Config_Dialog_Data *cfdata;
|
E_Config_Dialog_Data *cfdata;
|
||||||
News_Feed_Category *cat;
|
News_Feed_Category *cat;
|
||||||
News_Feed *f, *f_prev;
|
News_Feed *f, *f_prev;
|
||||||
Evas_List *l, *l_prev;
|
Eina_List *l, *l_prev;
|
||||||
|
|
||||||
if (news->config->feed.sort_name) return;
|
if (news->config->feed.sort_name) return;
|
||||||
|
|
||||||
|
@ -463,13 +463,13 @@ _cb_feed_up(void *data, void *data2)
|
||||||
if (!f) return;
|
if (!f) return;
|
||||||
cat = f->category;
|
cat = f->category;
|
||||||
|
|
||||||
l = evas_list_find_list(cat->feeds_visible, f);
|
l = eina_list_data_find_list(cat->feeds_visible, f);
|
||||||
l_prev = evas_list_prev(l);
|
l_prev = eina_list_prev(l);
|
||||||
f_prev = evas_list_data(l_prev);
|
f_prev = eina_list_data_get(l_prev);
|
||||||
if (!l_prev) return;
|
if (!l_prev) return;
|
||||||
|
|
||||||
cat->feeds = evas_list_remove(cat->feeds, f);
|
cat->feeds = eina_list_remove(cat->feeds, f);
|
||||||
cat->feeds = evas_list_prepend_relative(cat->feeds, f, f_prev);
|
cat->feeds = eina_list_prepend_relative(cat->feeds, f, f_prev);
|
||||||
|
|
||||||
news_feed_lists_refresh(0);
|
news_feed_lists_refresh(0);
|
||||||
}
|
}
|
||||||
|
@ -480,7 +480,7 @@ _cb_feed_down(void *data, void *data2)
|
||||||
E_Config_Dialog_Data *cfdata;
|
E_Config_Dialog_Data *cfdata;
|
||||||
News_Feed_Category *cat;
|
News_Feed_Category *cat;
|
||||||
News_Feed *f, *f_next;
|
News_Feed *f, *f_next;
|
||||||
Evas_List *l, *l_next;
|
Eina_List *l, *l_next;
|
||||||
|
|
||||||
if (news->config->feed.sort_name) return;
|
if (news->config->feed.sort_name) return;
|
||||||
|
|
||||||
|
@ -490,13 +490,13 @@ _cb_feed_down(void *data, void *data2)
|
||||||
if (!f) return;
|
if (!f) return;
|
||||||
cat = f->category;
|
cat = f->category;
|
||||||
|
|
||||||
l = evas_list_find_list(cat->feeds, f);
|
l = eina_list_data_find_list(cat->feeds, f);
|
||||||
l_next = evas_list_next(l);
|
l_next = eina_list_next(l);
|
||||||
f_next = evas_list_data(l_next);
|
f_next = eina_list_data_get(l_next);
|
||||||
if (!l_next) return;
|
if (!l_next) return;
|
||||||
|
|
||||||
cat->feeds = evas_list_remove(cat->feeds, f);
|
cat->feeds = eina_list_remove(cat->feeds, f);
|
||||||
cat->feeds = evas_list_append_relative(cat->feeds, f, f_next);
|
cat->feeds = eina_list_append_relative(cat->feeds, f, f_next);
|
||||||
|
|
||||||
news_feed_lists_refresh(0);
|
news_feed_lists_refresh(0);
|
||||||
}
|
}
|
||||||
|
@ -545,7 +545,7 @@ _cb_feed_del(void *data, void *data2)
|
||||||
nv = f->item->viewer;
|
nv = f->item->viewer;
|
||||||
|
|
||||||
cat = f->category;
|
cat = f->category;
|
||||||
cat->feeds = evas_list_remove(cat->feeds, f);
|
cat->feeds = eina_list_remove(cat->feeds, f);
|
||||||
news_feed_free(f);
|
news_feed_free(f);
|
||||||
cfdata->selected_feed = NULL;
|
cfdata->selected_feed = NULL;
|
||||||
|
|
||||||
|
@ -579,7 +579,7 @@ _cb_category_up(void *data, void *data2)
|
||||||
{
|
{
|
||||||
E_Config_Dialog_Data *cfdata;
|
E_Config_Dialog_Data *cfdata;
|
||||||
News_Feed_Category *cat;
|
News_Feed_Category *cat;
|
||||||
Evas_List *l, *l_prev;
|
Eina_List *l, *l_prev;
|
||||||
|
|
||||||
if (news->config->feed.sort_name) return;
|
if (news->config->feed.sort_name) return;
|
||||||
|
|
||||||
|
@ -587,14 +587,14 @@ _cb_category_up(void *data, void *data2)
|
||||||
|
|
||||||
cat = cfdata->selected_category;
|
cat = cfdata->selected_category;
|
||||||
if (!cat) return;
|
if (!cat) return;
|
||||||
l = evas_list_find_list(news->config->feed.categories, cat);
|
l = eina_list_data_find_list(news->config->feed.categories, cat);
|
||||||
l_prev = evas_list_prev(l);
|
l_prev = eina_list_prev(l);
|
||||||
if (!l_prev) return;
|
if (!l_prev) return;
|
||||||
|
|
||||||
news->config->feed.categories =
|
news->config->feed.categories =
|
||||||
evas_list_remove_list(news->config->feed.categories, l);
|
eina_list_remove_list(news->config->feed.categories, l);
|
||||||
news->config->feed.categories =
|
news->config->feed.categories =
|
||||||
evas_list_prepend_relative_list(news->config->feed.categories, cat, l_prev);
|
eina_list_prepend_relative_list(news->config->feed.categories, cat, l_prev);
|
||||||
|
|
||||||
news_feed_lists_refresh(0);
|
news_feed_lists_refresh(0);
|
||||||
}
|
}
|
||||||
|
@ -604,7 +604,7 @@ _cb_category_down(void *data, void *data2)
|
||||||
{
|
{
|
||||||
E_Config_Dialog_Data *cfdata;
|
E_Config_Dialog_Data *cfdata;
|
||||||
News_Feed_Category *cat;
|
News_Feed_Category *cat;
|
||||||
Evas_List *l, *l_next;
|
Eina_List *l, *l_next;
|
||||||
|
|
||||||
if (news->config->feed.sort_name) return;
|
if (news->config->feed.sort_name) return;
|
||||||
|
|
||||||
|
@ -612,14 +612,14 @@ _cb_category_down(void *data, void *data2)
|
||||||
|
|
||||||
cat = cfdata->selected_category;
|
cat = cfdata->selected_category;
|
||||||
if (!cat) return;
|
if (!cat) return;
|
||||||
l = evas_list_find_list(news->config->feed.categories, cat);
|
l = eina_list_data_find_list(news->config->feed.categories, cat);
|
||||||
l_next = evas_list_next(l);
|
l_next = eina_list_next(l);
|
||||||
if (!l_next) return;
|
if (!l_next) return;
|
||||||
|
|
||||||
news->config->feed.categories =
|
news->config->feed.categories =
|
||||||
evas_list_remove_list(news->config->feed.categories, l);
|
eina_list_remove_list(news->config->feed.categories, l);
|
||||||
news->config->feed.categories =
|
news->config->feed.categories =
|
||||||
evas_list_append_relative_list(news->config->feed.categories, cat, l_next);
|
eina_list_append_relative_list(news->config->feed.categories, cat, l_next);
|
||||||
|
|
||||||
news_feed_lists_refresh(0);
|
news_feed_lists_refresh(0);
|
||||||
}
|
}
|
||||||
|
@ -681,7 +681,7 @@ _cb_category_del(void *data, void *data2)
|
||||||
cfdata = data;
|
cfdata = data;
|
||||||
c = cfdata->selected_category;
|
c = cfdata->selected_category;
|
||||||
if (!c) return;
|
if (!c) return;
|
||||||
if (c->feeds && evas_list_count(c->feeds))
|
if (c->feeds && eina_list_count(c->feeds))
|
||||||
{
|
{
|
||||||
news_util_message_error_show(D_("There are <hilight>feeds</hilight> in this category.<br>"
|
news_util_message_error_show(D_("There are <hilight>feeds</hilight> in this category.<br>"
|
||||||
"You have to <hilight>remove them first</hilight>"));
|
"You have to <hilight>remove them first</hilight>"));
|
||||||
|
@ -689,7 +689,7 @@ _cb_category_del(void *data, void *data2)
|
||||||
}
|
}
|
||||||
|
|
||||||
news_feed_category_free(c);
|
news_feed_category_free(c);
|
||||||
news->config->feed.categories = evas_list_remove(news->config->feed.categories, c);
|
news->config->feed.categories = eina_list_remove(news->config->feed.categories, c);
|
||||||
cfdata->selected_category = NULL;
|
cfdata->selected_category = NULL;
|
||||||
|
|
||||||
pos = e_widget_ilist_selected_get(cfdata->ilist_categories);
|
pos = e_widget_ilist_selected_get(cfdata->ilist_categories);
|
||||||
|
|
|
@ -144,7 +144,7 @@ _basic_apply_data(E_Config_Dialog *cfd, E_Config_Dialog_Data *cfdata)
|
||||||
{
|
{
|
||||||
News_Config_Item *nic, *nic2;
|
News_Config_Item *nic, *nic2;
|
||||||
News_Item *ni, *ni2;
|
News_Item *ni, *ni2;
|
||||||
Evas_List *l;
|
Eina_List *l;
|
||||||
|
|
||||||
ni = cfdata->ni;
|
ni = cfdata->ni;
|
||||||
nic = ni->config;
|
nic = ni->config;
|
||||||
|
@ -161,7 +161,7 @@ _basic_apply_data(E_Config_Dialog *cfd, E_Config_Dialog_Data *cfdata)
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
for (l=news->items; l; l=evas_list_next(l))
|
for (l=news->items; l; l=eina_list_next(l))
|
||||||
{
|
{
|
||||||
ni2 = l->data;
|
ni2 = l->data;
|
||||||
nic2 = ni2->config;
|
nic2 = ni2->config;
|
||||||
|
|
|
@ -5,9 +5,9 @@
|
||||||
struct _E_Config_Dialog_Data
|
struct _E_Config_Dialog_Data
|
||||||
{
|
{
|
||||||
Evas_Object *ilist_feeds;
|
Evas_Object *ilist_feeds;
|
||||||
Evas_List *ilist_feeds_sel;
|
Eina_List *ilist_feeds_sel;
|
||||||
Evas_Object *ilist_selected_feeds;
|
Evas_Object *ilist_selected_feeds;
|
||||||
Evas_List *ilist_selected_feeds_sel;
|
Eina_List *ilist_selected_feeds_sel;
|
||||||
int ilist_selected_feeds_inrefresh;
|
int ilist_selected_feeds_inrefresh;
|
||||||
Evas_Object *button_add;
|
Evas_Object *button_add;
|
||||||
Evas_Object *button_rem;
|
Evas_Object *button_rem;
|
||||||
|
@ -75,7 +75,7 @@ void
|
||||||
news_config_dialog_item_content_refresh_feeds(News_Item *ni)
|
news_config_dialog_item_content_refresh_feeds(News_Item *ni)
|
||||||
{
|
{
|
||||||
E_Config_Dialog_Data *cfdata;
|
E_Config_Dialog_Data *cfdata;
|
||||||
Evas_List *l, *l2;
|
Eina_List *l, *l2;
|
||||||
Evas_Object *ilist;
|
Evas_Object *ilist;
|
||||||
int pos;
|
int pos;
|
||||||
int iw, ih;
|
int iw, ih;
|
||||||
|
@ -93,12 +93,12 @@ news_config_dialog_item_content_refresh_feeds(News_Item *ni)
|
||||||
e_widget_disabled_set(cfdata->button_add, 1);
|
e_widget_disabled_set(cfdata->button_add, 1);
|
||||||
|
|
||||||
pos = -1;
|
pos = -1;
|
||||||
for(l=news->config->feed.categories; l; l=evas_list_next(l))
|
for(l=news->config->feed.categories; l; l=eina_list_next(l))
|
||||||
{
|
{
|
||||||
News_Feed_Category *cat;
|
News_Feed_Category *cat;
|
||||||
Evas_Object *iccat = NULL;
|
Evas_Object *iccat = NULL;
|
||||||
|
|
||||||
cat = evas_list_data(l);
|
cat = eina_list_data_get(l);
|
||||||
|
|
||||||
if (!cat->feeds_visible)
|
if (!cat->feeds_visible)
|
||||||
continue;
|
continue;
|
||||||
|
@ -112,13 +112,13 @@ news_config_dialog_item_content_refresh_feeds(News_Item *ni)
|
||||||
e_widget_ilist_header_append(ilist, iccat, cat->name);
|
e_widget_ilist_header_append(ilist, iccat, cat->name);
|
||||||
pos++;
|
pos++;
|
||||||
|
|
||||||
for(l2=cat->feeds_visible; l2; l2=evas_list_next(l2))
|
for(l2=cat->feeds_visible; l2; l2=eina_list_next(l2))
|
||||||
{
|
{
|
||||||
Evas_Object *ic = NULL;
|
Evas_Object *ic = NULL;
|
||||||
News_Feed *f;
|
News_Feed *f;
|
||||||
char buf[1024];
|
char buf[1024];
|
||||||
|
|
||||||
f = evas_list_data(l2);
|
f = eina_list_data_get(l2);
|
||||||
|
|
||||||
if (f->icon && f->icon[0])
|
if (f->icon && f->icon[0])
|
||||||
{
|
{
|
||||||
|
@ -131,7 +131,7 @@ news_config_dialog_item_content_refresh_feeds(News_Item *ni)
|
||||||
e_widget_ilist_append(ilist, ic, buf, NULL, f, NULL);
|
e_widget_ilist_append(ilist, ic, buf, NULL, f, NULL);
|
||||||
pos++;
|
pos++;
|
||||||
|
|
||||||
if (evas_list_find(cfdata->ilist_feeds_sel, f))
|
if (eina_list_data_find(cfdata->ilist_feeds_sel, f))
|
||||||
e_widget_ilist_multi_select(ilist, pos);
|
e_widget_ilist_multi_select(ilist, pos);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -188,7 +188,7 @@ news_config_dialog_item_content_refresh_selected_feeds(News_Item *ni)
|
||||||
e_widget_ilist_append(ilist, ic, buf, NULL, _feed, NULL);
|
e_widget_ilist_append(ilist, ic, buf, NULL, _feed, NULL);
|
||||||
pos++;
|
pos++;
|
||||||
|
|
||||||
if (evas_list_find(cfdata->ilist_selected_feeds_sel, _feed))
|
if (eina_list_data_find(cfdata->ilist_selected_feeds_sel, _feed))
|
||||||
e_widget_ilist_multi_select(ilist, pos);
|
e_widget_ilist_multi_select(ilist, pos);
|
||||||
}
|
}
|
||||||
NEWS_ITEM_FEEDS_FOREACH_END();
|
NEWS_ITEM_FEEDS_FOREACH_END();
|
||||||
|
@ -230,9 +230,9 @@ static void
|
||||||
_free_data(E_Config_Dialog *cfd, E_Config_Dialog_Data *cfdata)
|
_free_data(E_Config_Dialog *cfd, E_Config_Dialog_Data *cfdata)
|
||||||
{
|
{
|
||||||
if (cfdata->ilist_feeds_sel)
|
if (cfdata->ilist_feeds_sel)
|
||||||
evas_list_free(cfdata->ilist_feeds_sel);
|
eina_list_free(cfdata->ilist_feeds_sel);
|
||||||
if (cfdata->ilist_selected_feeds_sel)
|
if (cfdata->ilist_selected_feeds_sel)
|
||||||
evas_list_free(cfdata->ilist_selected_feeds_sel);
|
eina_list_free(cfdata->ilist_selected_feeds_sel);
|
||||||
|
|
||||||
cfdata->ni->config_dialog_content = NULL;
|
cfdata->ni->config_dialog_content = NULL;
|
||||||
free(cfdata);
|
free(cfdata);
|
||||||
|
@ -315,23 +315,23 @@ _cb_feed_up(void *data, void *data2)
|
||||||
News_Feed *f;
|
News_Feed *f;
|
||||||
News_Item *ni;
|
News_Item *ni;
|
||||||
News_Feed_Ref *ref;
|
News_Feed_Ref *ref;
|
||||||
Evas_List *sel, *l, *lf;
|
Eina_List *sel, *l, *lf;
|
||||||
|
|
||||||
cfdata = data;
|
cfdata = data;
|
||||||
ni = cfdata->ni;
|
ni = cfdata->ni;
|
||||||
|
|
||||||
for (sel = cfdata->ilist_selected_feeds_sel; sel; sel=evas_list_next(sel))
|
for (sel = cfdata->ilist_selected_feeds_sel; sel; sel=eina_list_next(sel))
|
||||||
{
|
{
|
||||||
f = sel->data;
|
f = sel->data;
|
||||||
ref = news_feed_ref_find(f, ni);
|
ref = news_feed_ref_find(f, ni);
|
||||||
if (!ref) return;
|
if (!ref) return;
|
||||||
|
|
||||||
l = evas_list_find_list(ni->config->feed_refs, ref);
|
l = eina_list_data_find_list(ni->config->feed_refs, ref);
|
||||||
lf = evas_list_prev(l);
|
lf = eina_list_prev(l);
|
||||||
if (!lf) return;
|
if (!lf) return;
|
||||||
|
|
||||||
ni->config->feed_refs = evas_list_remove_list(ni->config->feed_refs, l);
|
ni->config->feed_refs = eina_list_remove_list(ni->config->feed_refs, l);
|
||||||
ni->config->feed_refs = evas_list_prepend_relative_list(ni->config->feed_refs,
|
ni->config->feed_refs = eina_list_prepend_relative_list(ni->config->feed_refs,
|
||||||
ref, lf);
|
ref, lf);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -346,23 +346,23 @@ _cb_feed_down(void *data, void *data2)
|
||||||
News_Feed *f;
|
News_Feed *f;
|
||||||
News_Item *ni;
|
News_Item *ni;
|
||||||
News_Feed_Ref *ref;
|
News_Feed_Ref *ref;
|
||||||
Evas_List *sel, *l, *lf;
|
Eina_List *sel, *l, *lf;
|
||||||
|
|
||||||
cfdata = data;
|
cfdata = data;
|
||||||
ni = cfdata->ni;
|
ni = cfdata->ni;
|
||||||
|
|
||||||
for (sel=evas_list_last(cfdata->ilist_selected_feeds_sel); sel; sel=evas_list_prev(sel))
|
for (sel=eina_list_last(cfdata->ilist_selected_feeds_sel); sel; sel=eina_list_prev(sel))
|
||||||
{
|
{
|
||||||
f = sel->data;
|
f = sel->data;
|
||||||
ref = news_feed_ref_find(f, ni);
|
ref = news_feed_ref_find(f, ni);
|
||||||
if (!ref) return;
|
if (!ref) return;
|
||||||
|
|
||||||
l = evas_list_find_list(ni->config->feed_refs, ref);
|
l = eina_list_data_find_list(ni->config->feed_refs, ref);
|
||||||
lf = evas_list_next(l);
|
lf = eina_list_next(l);
|
||||||
if (!lf) return;
|
if (!lf) return;
|
||||||
|
|
||||||
ni->config->feed_refs = evas_list_remove_list(ni->config->feed_refs, l);
|
ni->config->feed_refs = eina_list_remove_list(ni->config->feed_refs, l);
|
||||||
ni->config->feed_refs = evas_list_append_relative_list(ni->config->feed_refs,
|
ni->config->feed_refs = eina_list_append_relative_list(ni->config->feed_refs,
|
||||||
ref, lf);
|
ref, lf);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -376,12 +376,12 @@ _cb_feed_add(void *data, void *data2)
|
||||||
E_Config_Dialog_Data *cfdata;
|
E_Config_Dialog_Data *cfdata;
|
||||||
News_Item *ni;
|
News_Item *ni;
|
||||||
News_Feed *f;
|
News_Feed *f;
|
||||||
Evas_List *l;
|
Eina_List *l;
|
||||||
|
|
||||||
cfdata = data;
|
cfdata = data;
|
||||||
ni = cfdata->ni;
|
ni = cfdata->ni;
|
||||||
|
|
||||||
for (l=cfdata->ilist_feeds_sel; l; l=evas_list_next(l))
|
for (l=cfdata->ilist_feeds_sel; l; l=eina_list_next(l))
|
||||||
{
|
{
|
||||||
f = l->data;
|
f = l->data;
|
||||||
if (f->item) continue;
|
if (f->item) continue;
|
||||||
|
@ -390,7 +390,7 @@ _cb_feed_add(void *data, void *data2)
|
||||||
news_feed_obj_refresh(f, 1, 1);
|
news_feed_obj_refresh(f, 1, 1);
|
||||||
|
|
||||||
/* dont reselect this feed */
|
/* dont reselect this feed */
|
||||||
cfdata->ilist_feeds_sel = evas_list_remove(cfdata->ilist_feeds_sel, f);
|
cfdata->ilist_feeds_sel = eina_list_remove(cfdata->ilist_feeds_sel, f);
|
||||||
}
|
}
|
||||||
|
|
||||||
news_item_refresh(ni, 1, 0, 0);
|
news_item_refresh(ni, 1, 0, 0);
|
||||||
|
@ -406,12 +406,12 @@ _cb_feed_remove(void *data, void *data2)
|
||||||
E_Config_Dialog_Data *cfdata;
|
E_Config_Dialog_Data *cfdata;
|
||||||
News_Item *ni;
|
News_Item *ni;
|
||||||
News_Feed *f;
|
News_Feed *f;
|
||||||
Evas_List *l;
|
Eina_List *l;
|
||||||
|
|
||||||
cfdata = data;
|
cfdata = data;
|
||||||
ni = cfdata->ni;
|
ni = cfdata->ni;
|
||||||
|
|
||||||
for (l=cfdata->ilist_selected_feeds_sel; l; l=evas_list_next(l))
|
for (l=cfdata->ilist_selected_feeds_sel; l; l=eina_list_next(l))
|
||||||
{
|
{
|
||||||
f = l->data;
|
f = l->data;
|
||||||
news_feed_detach(f, 1);
|
news_feed_detach(f, 1);
|
||||||
|
@ -430,21 +430,21 @@ _cb_feed_change(void *data, Evas_Object *obj)
|
||||||
E_Config_Dialog_Data *cfdata;
|
E_Config_Dialog_Data *cfdata;
|
||||||
E_Ilist_Item *item;
|
E_Ilist_Item *item;
|
||||||
News_Feed *feed;
|
News_Feed *feed;
|
||||||
Evas_List *sel, *items, *l;
|
Eina_List *sel, *items, *l;
|
||||||
int i;
|
int i;
|
||||||
|
|
||||||
cfdata = data;
|
cfdata = data;
|
||||||
|
|
||||||
if (cfdata->ilist_feeds_sel) evas_list_free(cfdata->ilist_feeds_sel);
|
if (cfdata->ilist_feeds_sel) eina_list_free(cfdata->ilist_feeds_sel);
|
||||||
sel = NULL;
|
sel = NULL;
|
||||||
items = e_widget_ilist_items_get(cfdata->ilist_feeds);
|
items = e_widget_ilist_items_get(cfdata->ilist_feeds);
|
||||||
for (l=items, i=0; l; l=evas_list_next(l), i++)
|
for (l=items, i=0; l; l=eina_list_next(l), i++)
|
||||||
{
|
{
|
||||||
item = l->data;
|
item = l->data;
|
||||||
if (item->header) continue;
|
if (item->header) continue;
|
||||||
if (!item->selected) continue;
|
if (!item->selected) continue;
|
||||||
feed = e_widget_ilist_nth_data_get(cfdata->ilist_feeds, i);
|
feed = e_widget_ilist_nth_data_get(cfdata->ilist_feeds, i);
|
||||||
sel = evas_list_append(sel, feed);
|
sel = eina_list_append(sel, feed);
|
||||||
}
|
}
|
||||||
cfdata->ilist_feeds_sel = sel;
|
cfdata->ilist_feeds_sel = sel;
|
||||||
|
|
||||||
|
@ -466,22 +466,22 @@ _cb_selected_feed_change(void *data, Evas_Object *obj)
|
||||||
E_Config_Dialog_Data *cfdata;
|
E_Config_Dialog_Data *cfdata;
|
||||||
E_Ilist_Item *item;
|
E_Ilist_Item *item;
|
||||||
News_Feed *feed;
|
News_Feed *feed;
|
||||||
Evas_List *sel, *items, *l;
|
Eina_List *sel, *items, *l;
|
||||||
int i;
|
int i;
|
||||||
|
|
||||||
cfdata = data;
|
cfdata = data;
|
||||||
if (cfdata->ilist_selected_feeds_inrefresh) return;
|
if (cfdata->ilist_selected_feeds_inrefresh) return;
|
||||||
|
|
||||||
if (cfdata->ilist_selected_feeds_sel) evas_list_free(cfdata->ilist_selected_feeds_sel);
|
if (cfdata->ilist_selected_feeds_sel) eina_list_free(cfdata->ilist_selected_feeds_sel);
|
||||||
sel = NULL;
|
sel = NULL;
|
||||||
items = e_widget_ilist_items_get(cfdata->ilist_selected_feeds);
|
items = e_widget_ilist_items_get(cfdata->ilist_selected_feeds);
|
||||||
for (l=items, i=0; l; l=evas_list_next(l), i++)
|
for (l=items, i=0; l; l=eina_list_next(l), i++)
|
||||||
{
|
{
|
||||||
item = l->data;
|
item = l->data;
|
||||||
if (item->header) continue;
|
if (item->header) continue;
|
||||||
if (!item->selected) continue;
|
if (!item->selected) continue;
|
||||||
feed = e_widget_ilist_nth_data_get(cfdata->ilist_selected_feeds, i);
|
feed = e_widget_ilist_nth_data_get(cfdata->ilist_selected_feeds, i);
|
||||||
sel = evas_list_append(sel, feed);
|
sel = eina_list_append(sel, feed);
|
||||||
}
|
}
|
||||||
cfdata->ilist_selected_feeds_sel = sel;
|
cfdata->ilist_selected_feeds_sel = sel;
|
||||||
|
|
||||||
|
|
|
@ -13,7 +13,7 @@ typedef struct _Lang_Choice Lang_Choice;
|
||||||
|
|
||||||
struct _E_Config_Dialog_Data
|
struct _E_Config_Dialog_Data
|
||||||
{
|
{
|
||||||
Evas_List *choices;
|
Eina_List *choices;
|
||||||
};
|
};
|
||||||
|
|
||||||
static void *_create_data(E_Config_Dialog *cfd);
|
static void *_create_data(E_Config_Dialog *cfd);
|
||||||
|
@ -78,10 +78,10 @@ _free_data(E_Config_Dialog *cfd, E_Config_Dialog_Data *cfdata)
|
||||||
{
|
{
|
||||||
Lang_Choice *ch;
|
Lang_Choice *ch;
|
||||||
|
|
||||||
while ((ch = evas_list_data(cfdata->choices)))
|
while ((ch = eina_list_data_get(cfdata->choices)))
|
||||||
{
|
{
|
||||||
free(ch);
|
free(ch);
|
||||||
cfdata->choices = evas_list_remove_list(cfdata->choices, cfdata->choices);
|
cfdata->choices = eina_list_remove_list(cfdata->choices, cfdata->choices);
|
||||||
}
|
}
|
||||||
|
|
||||||
news->config_dialog_langs = NULL;
|
news->config_dialog_langs = NULL;
|
||||||
|
@ -93,15 +93,15 @@ _fill_data(E_Config_Dialog_Data *cfdata)
|
||||||
{
|
{
|
||||||
News_Feed_Lang *lang;
|
News_Feed_Lang *lang;
|
||||||
Lang_Choice *choice;
|
Lang_Choice *choice;
|
||||||
Evas_List *l;
|
Eina_List *l;
|
||||||
|
|
||||||
for (l=news->langs; l; l=evas_list_next(l))
|
for (l=news->langs; l; l=eina_list_next(l))
|
||||||
{
|
{
|
||||||
lang = l->data;
|
lang = l->data;
|
||||||
choice = E_NEW(Lang_Choice, 1);
|
choice = E_NEW(Lang_Choice, 1);
|
||||||
choice->lang = lang;
|
choice->lang = lang;
|
||||||
choice->ok = news_feed_lang_selected_is(lang->key);
|
choice->ok = news_feed_lang_selected_is(lang->key);
|
||||||
cfdata->choices = evas_list_append(cfdata->choices, choice);
|
cfdata->choices = eina_list_append(cfdata->choices, choice);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -111,7 +111,7 @@ _basic_create_widgets(E_Config_Dialog *cfd, Evas *evas, E_Config_Dialog_Data *cf
|
||||||
Evas_Object *ol, *of, *o;
|
Evas_Object *ol, *of, *o;
|
||||||
Evas_Object *ob;
|
Evas_Object *ob;
|
||||||
Lang_Choice *choice;
|
Lang_Choice *choice;
|
||||||
Evas_List *l;
|
Eina_List *l;
|
||||||
char buf[4096];
|
char buf[4096];
|
||||||
int line;
|
int line;
|
||||||
int count;
|
int count;
|
||||||
|
@ -132,7 +132,7 @@ _basic_create_widgets(E_Config_Dialog *cfd, Evas *evas, E_Config_Dialog_Data *cf
|
||||||
line = 0;
|
line = 0;
|
||||||
of = e_widget_framelist_add(evas, D_("Languages"), 1);
|
of = e_widget_framelist_add(evas, D_("Languages"), 1);
|
||||||
ol = e_widget_list_add(evas, 0, 0);
|
ol = e_widget_list_add(evas, 0, 0);
|
||||||
for (l=cfdata->choices; l; l=evas_list_next(l))
|
for (l=cfdata->choices; l; l=eina_list_next(l))
|
||||||
{
|
{
|
||||||
choice = l->data;
|
choice = l->data;
|
||||||
|
|
||||||
|
@ -172,13 +172,13 @@ _cb_lang_change(void *data, Evas_Object *obj)
|
||||||
E_Config_Dialog_Data *cfdata;
|
E_Config_Dialog_Data *cfdata;
|
||||||
News_Feed_Lang *lang;
|
News_Feed_Lang *lang;
|
||||||
Lang_Choice *choice;
|
Lang_Choice *choice;
|
||||||
Evas_List *list, *l;
|
Eina_List *list, *l;
|
||||||
|
|
||||||
cfdata = data;
|
cfdata = data;
|
||||||
|
|
||||||
news_feed_lang_list_free(news->config->feed.langs);
|
news_feed_lang_list_free(news->config->feed.langs);
|
||||||
list = NULL;
|
list = NULL;
|
||||||
for (l=cfdata->choices; l; l=evas_list_next(l))
|
for (l=cfdata->choices; l; l=eina_list_next(l))
|
||||||
{
|
{
|
||||||
choice = l->data;
|
choice = l->data;
|
||||||
if (choice->ok)
|
if (choice->ok)
|
||||||
|
@ -186,7 +186,7 @@ _cb_lang_change(void *data, Evas_Object *obj)
|
||||||
lang = E_NEW(News_Feed_Lang, 1);
|
lang = E_NEW(News_Feed_Lang, 1);
|
||||||
lang->key = evas_stringshare_add(choice->lang->key);
|
lang->key = evas_stringshare_add(choice->lang->key);
|
||||||
lang->name = evas_stringshare_add(choice->lang->name);
|
lang->name = evas_stringshare_add(choice->lang->name);
|
||||||
list = evas_list_append(list, lang);
|
list = eina_list_append(list, lang);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
news->config->feed.langs = list;
|
news->config->feed.langs = list;
|
||||||
|
|
|
@ -5,14 +5,14 @@
|
||||||
snprintf(buf, sizeof(buf), "%s/%s", \
|
snprintf(buf, sizeof(buf), "%s/%s", \
|
||||||
e_module_dir_get(news->module), icon); \
|
e_module_dir_get(news->module), icon); \
|
||||||
cat = news_feed_category_new(id, buf); \
|
cat = news_feed_category_new(id, buf); \
|
||||||
c->feed.categories = evas_list_append(c->feed.categories, cat); \
|
c->feed.categories = eina_list_append(c->feed.categories, cat); \
|
||||||
}
|
}
|
||||||
#define CFG_FEED_ADD(id, icon) \
|
#define CFG_FEED_ADD(id, icon) \
|
||||||
{ \
|
{ \
|
||||||
snprintf(buf, sizeof(buf), "%s/%s", \
|
snprintf(buf, sizeof(buf), "%s/%s", \
|
||||||
e_module_dir_get(news->module), icon); \
|
e_module_dir_get(news->module), icon); \
|
||||||
feed = news_feed_new(id, buf, 1, 0, cat); \
|
feed = news_feed_new(id, buf, 1, 0, cat); \
|
||||||
cat->feeds = evas_list_append(cat->feeds, feed); \
|
cat->feeds = eina_list_append(cat->feeds, feed); \
|
||||||
}
|
}
|
||||||
|
|
||||||
static int _feed_activate(News_Feed *f);
|
static int _feed_activate(News_Feed *f);
|
||||||
|
@ -64,7 +64,7 @@ int
|
||||||
news_feed_init(void)
|
news_feed_init(void)
|
||||||
{
|
{
|
||||||
News_Feed_Lang *lang;
|
News_Feed_Lang *lang;
|
||||||
Evas_List *l;
|
Eina_List *l;
|
||||||
int i;
|
int i;
|
||||||
|
|
||||||
/* create dynamic languages list from static one
|
/* create dynamic languages list from static one
|
||||||
|
@ -76,7 +76,7 @@ news_feed_init(void)
|
||||||
lang = E_NEW(News_Feed_Lang, 1);
|
lang = E_NEW(News_Feed_Lang, 1);
|
||||||
lang->key = evas_stringshare_add(_feed_langs[i].key);
|
lang->key = evas_stringshare_add(_feed_langs[i].key);
|
||||||
lang->name = evas_stringshare_add(_feed_langs[i].name);
|
lang->name = evas_stringshare_add(_feed_langs[i].name);
|
||||||
l = evas_list_append(l, lang);
|
l = eina_list_append(l, lang);
|
||||||
i++;
|
i++;
|
||||||
}
|
}
|
||||||
news->langs = l;
|
news->langs = l;
|
||||||
|
@ -92,7 +92,7 @@ news_feed_init(void)
|
||||||
(char *)_feed->icon, _feed->icon_ovrw,
|
(char *)_feed->icon, _feed->icon_ovrw,
|
||||||
_feed->important,
|
_feed->important,
|
||||||
_cat, 1))
|
_cat, 1))
|
||||||
_cat->feeds = evas_list_remove_list(_cat->feeds, _l_cats);
|
_cat->feeds = eina_list_remove_list(_cat->feeds, _l_cats);
|
||||||
NEWS_FEED_FOREACH_END();
|
NEWS_FEED_FOREACH_END();
|
||||||
|
|
||||||
/* create 'feeds_visible' lists in categories */
|
/* create 'feeds_visible' lists in categories */
|
||||||
|
@ -128,10 +128,10 @@ news_feed_all_delete(void)
|
||||||
while (cat->feeds)
|
while (cat->feeds)
|
||||||
{
|
{
|
||||||
f = cat->feeds->data;
|
f = cat->feeds->data;
|
||||||
cat->feeds = evas_list_remove_list(cat->feeds, cat->feeds);
|
cat->feeds = eina_list_remove_list(cat->feeds, cat->feeds);
|
||||||
news_feed_free(f);
|
news_feed_free(f);
|
||||||
}
|
}
|
||||||
c->feed.categories = evas_list_remove_list(c->feed.categories,
|
c->feed.categories = eina_list_remove_list(c->feed.categories,
|
||||||
c->feed.categories);
|
c->feed.categories);
|
||||||
news_feed_category_free(cat);
|
news_feed_category_free(cat);
|
||||||
}
|
}
|
||||||
|
@ -184,7 +184,7 @@ news_feed_all_restore(void)
|
||||||
void
|
void
|
||||||
news_feed_lists_refresh(int sort)
|
news_feed_lists_refresh(int sort)
|
||||||
{
|
{
|
||||||
Evas_List *l, *l2, *list;
|
Eina_List *l, *l2, *list;
|
||||||
News_Feed_Category *cat;
|
News_Feed_Category *cat;
|
||||||
News_Feed *f;
|
News_Feed *f;
|
||||||
int list_free;
|
int list_free;
|
||||||
|
@ -194,21 +194,21 @@ news_feed_lists_refresh(int sort)
|
||||||
if (sort && news->config->feed.sort_name)
|
if (sort && news->config->feed.sort_name)
|
||||||
{
|
{
|
||||||
list = news->config->feed.categories;
|
list = news->config->feed.categories;
|
||||||
list = evas_list_sort(list, evas_list_count(list), _cb_sort_cats);
|
list = eina_list_sort(list, eina_list_count(list), _cb_sort_cats);
|
||||||
news->config->feed.categories = list;
|
news->config->feed.categories = list;
|
||||||
|
|
||||||
for (l=news->config->feed.categories; l; l=evas_list_next(l))
|
for (l=news->config->feed.categories; l; l=eina_list_next(l))
|
||||||
{
|
{
|
||||||
cat = l->data;
|
cat = l->data;
|
||||||
list = cat->feeds;
|
list = cat->feeds;
|
||||||
list = evas_list_sort(list, evas_list_count(list), _cb_sort_feeds);
|
list = eina_list_sort(list, eina_list_count(list), _cb_sort_feeds);
|
||||||
cat->feeds = list;
|
cat->feeds = list;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
/* 2. create "feeds_visible" in categories */
|
/* 2. create "feeds_visible" in categories */
|
||||||
|
|
||||||
for (l=news->config->feed.categories; l; l=evas_list_next(l))
|
for (l=news->config->feed.categories; l; l=eina_list_next(l))
|
||||||
{
|
{
|
||||||
cat = l->data;
|
cat = l->data;
|
||||||
list = NULL;
|
list = NULL;
|
||||||
|
@ -219,17 +219,17 @@ news_feed_lists_refresh(int sort)
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
for (l2=cat->feeds; l2; l2=evas_list_next(l2))
|
for (l2=cat->feeds; l2; l2=eina_list_next(l2))
|
||||||
{
|
{
|
||||||
f = l2->data;
|
f = l2->data;
|
||||||
if (news_feed_lang_selected_is(f->language))
|
if (news_feed_lang_selected_is(f->language))
|
||||||
list = evas_list_append(list, f);
|
list = eina_list_append(list, f);
|
||||||
}
|
}
|
||||||
list_free = 1;
|
list_free = 1;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (cat->feeds_visible_free && cat->feeds_visible)
|
if (cat->feeds_visible_free && cat->feeds_visible)
|
||||||
evas_list_free(cat->feeds_visible);
|
eina_list_free(cat->feeds_visible);
|
||||||
|
|
||||||
cat->feeds_visible = list;
|
cat->feeds_visible = list;
|
||||||
cat->feeds_visible_free = list_free;
|
cat->feeds_visible_free = list_free;
|
||||||
|
@ -469,16 +469,16 @@ news_feed_attach(News_Feed *f, News_Feed_Ref *ref, News_Item *ni)
|
||||||
{
|
{
|
||||||
News_Feed_Category *cat;
|
News_Feed_Category *cat;
|
||||||
News_Feed *f_look;
|
News_Feed *f_look;
|
||||||
Evas_List *l, *l2;
|
Eina_List *l, *l2;
|
||||||
|
|
||||||
for (l=news->config->feed.categories; l; l=evas_list_next(l))
|
for (l=news->config->feed.categories; l; l=eina_list_next(l))
|
||||||
{
|
{
|
||||||
cat = evas_list_data(l);
|
cat = eina_list_data_get(l);
|
||||||
if (!strcmp(cat->name, ref->category))
|
if (!strcmp(cat->name, ref->category))
|
||||||
{
|
{
|
||||||
for (l2=cat->feeds; l2; l2=evas_list_next(l2))
|
for (l2=cat->feeds; l2; l2=eina_list_next(l2))
|
||||||
{
|
{
|
||||||
f_look = evas_list_data(l2);
|
f_look = eina_list_data_get(l2);
|
||||||
if (!strcmp(f_look->name, ref->name))
|
if (!strcmp(f_look->name, ref->name))
|
||||||
{
|
{
|
||||||
f = f_look;
|
f = f_look;
|
||||||
|
@ -497,7 +497,7 @@ news_feed_attach(News_Feed *f, News_Feed_Ref *ref, News_Item *ni)
|
||||||
ref->category = evas_stringshare_add(f->category->name);
|
ref->category = evas_stringshare_add(f->category->name);
|
||||||
ref->name = evas_stringshare_add(f->name);
|
ref->name = evas_stringshare_add(f->name);
|
||||||
ref->feed = f;
|
ref->feed = f;
|
||||||
ni->config->feed_refs = evas_list_append(ni->config->feed_refs, ref);
|
ni->config->feed_refs = eina_list_append(ni->config->feed_refs, ref);
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
|
@ -542,7 +542,7 @@ news_feed_detach(News_Feed *f, int really)
|
||||||
if (really)
|
if (really)
|
||||||
{
|
{
|
||||||
DITEM(("feed detach : delete feed ref (%s)", ref->feed->name));
|
DITEM(("feed detach : delete feed ref (%s)", ref->feed->name));
|
||||||
ni->config->feed_refs = evas_list_remove(ni->config->feed_refs, ref);
|
ni->config->feed_refs = eina_list_remove(ni->config->feed_refs, ref);
|
||||||
evas_stringshare_del(ref->category);
|
evas_stringshare_del(ref->category);
|
||||||
evas_stringshare_del(ref->name);
|
evas_stringshare_del(ref->name);
|
||||||
free(ref);
|
free(ref);
|
||||||
|
@ -738,13 +738,13 @@ news_feed_ref_find(News_Feed *f, News_Item *ni)
|
||||||
void
|
void
|
||||||
news_feed_read_set(News_Feed *feed)
|
news_feed_read_set(News_Feed *feed)
|
||||||
{
|
{
|
||||||
Evas_List *l;
|
Eina_List *l;
|
||||||
News_Feed_Article *art;
|
News_Feed_Article *art;
|
||||||
|
|
||||||
if (!feed->doc) return;
|
if (!feed->doc) return;
|
||||||
if (!feed->doc->unread_count) return;
|
if (!feed->doc->unread_count) return;
|
||||||
|
|
||||||
for (l=feed->doc->articles; l; l=evas_list_next(l))
|
for (l=feed->doc->articles; l; l=eina_list_next(l))
|
||||||
{
|
{
|
||||||
art = l->data;
|
art = l->data;
|
||||||
if (art->unread)
|
if (art->unread)
|
||||||
|
@ -795,16 +795,16 @@ news_feed_unread_count_change(News_Feed *feed, int nb)
|
||||||
void
|
void
|
||||||
news_feed_list_ui_refresh(void)
|
news_feed_list_ui_refresh(void)
|
||||||
{
|
{
|
||||||
Evas_List *l;
|
Eina_List *l;
|
||||||
|
|
||||||
if (news->config_dialog_feeds)
|
if (news->config_dialog_feeds)
|
||||||
news_config_dialog_feeds_refresh_feeds();
|
news_config_dialog_feeds_refresh_feeds();
|
||||||
|
|
||||||
for (l=news->items; l; l=evas_list_next(l))
|
for (l=news->items; l; l=eina_list_next(l))
|
||||||
{
|
{
|
||||||
News_Item *ni;
|
News_Item *ni;
|
||||||
|
|
||||||
ni = evas_list_data(l);
|
ni = eina_list_data_get(l);
|
||||||
if (ni->config_dialog_content)
|
if (ni->config_dialog_content)
|
||||||
{
|
{
|
||||||
news_config_dialog_item_content_refresh_feeds(ni);
|
news_config_dialog_item_content_refresh_feeds(ni);
|
||||||
|
@ -833,7 +833,7 @@ news_feed_article_del(News_Feed_Article *art)
|
||||||
if (doc->feed->item && art->unread)
|
if (doc->feed->item && art->unread)
|
||||||
news_feed_unread_count_change(doc->feed, -1);
|
news_feed_unread_count_change(doc->feed, -1);
|
||||||
|
|
||||||
doc->articles = evas_list_remove(doc->articles, art);
|
doc->articles = eina_list_remove(doc->articles, art);
|
||||||
|
|
||||||
free(art);
|
free(art);
|
||||||
}
|
}
|
||||||
|
@ -908,12 +908,12 @@ news_feed_category_edit(News_Feed_Category *cat, char *name, char *icon)
|
||||||
void
|
void
|
||||||
news_feed_category_free(News_Feed_Category *cat)
|
news_feed_category_free(News_Feed_Category *cat)
|
||||||
{
|
{
|
||||||
if (cat->feeds && evas_list_count(cat->feeds)) return;
|
if (cat->feeds && eina_list_count(cat->feeds)) return;
|
||||||
|
|
||||||
if (cat->name) evas_stringshare_del(cat->name);
|
if (cat->name) evas_stringshare_del(cat->name);
|
||||||
if (cat->icon) evas_stringshare_del(cat->icon);
|
if (cat->icon) evas_stringshare_del(cat->icon);
|
||||||
if (cat->feeds_visible_free && cat->feeds_visible)
|
if (cat->feeds_visible_free && cat->feeds_visible)
|
||||||
evas_list_free(cat->feeds_visible);
|
eina_list_free(cat->feeds_visible);
|
||||||
if (cat->config_dialog) news_config_dialog_category_hide(cat);
|
if (cat->config_dialog) news_config_dialog_category_hide(cat);
|
||||||
|
|
||||||
free(cat);
|
free(cat);
|
||||||
|
@ -948,15 +948,15 @@ news_feed_lang_list_refresh(void)
|
||||||
}
|
}
|
||||||
|
|
||||||
void
|
void
|
||||||
news_feed_lang_list_free(Evas_List *list)
|
news_feed_lang_list_free(Eina_List *list)
|
||||||
{
|
{
|
||||||
News_Feed_Lang *lang;
|
News_Feed_Lang *lang;
|
||||||
|
|
||||||
while ((lang = evas_list_data(list)))
|
while ((lang = eina_list_data_get(list)))
|
||||||
{
|
{
|
||||||
if (lang->key) evas_stringshare_del(lang->key);
|
if (lang->key) evas_stringshare_del(lang->key);
|
||||||
if (lang->name) evas_stringshare_del(lang->name);
|
if (lang->name) evas_stringshare_del(lang->name);
|
||||||
list = evas_list_remove_list(list, list);
|
list = eina_list_remove_list(list, list);
|
||||||
free(lang);
|
free(lang);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -980,9 +980,9 @@ int
|
||||||
news_feed_lang_selected_is(const char *key)
|
news_feed_lang_selected_is(const char *key)
|
||||||
{
|
{
|
||||||
News_Feed_Lang *lang;
|
News_Feed_Lang *lang;
|
||||||
Evas_List *l;
|
Eina_List *l;
|
||||||
|
|
||||||
for (l=news->config->feed.langs; l; l=evas_list_next(l))
|
for (l=news->config->feed.langs; l; l=eina_list_next(l))
|
||||||
{
|
{
|
||||||
lang = l->data;
|
lang = l->data;
|
||||||
if (!strncmp(lang->key, key, 2))
|
if (!strncmp(lang->key, key, 2))
|
||||||
|
@ -1065,9 +1065,9 @@ static News_Feed *
|
||||||
_feed_find(News_Feed_Category *cat, char *name)
|
_feed_find(News_Feed_Category *cat, char *name)
|
||||||
{
|
{
|
||||||
News_Feed *f;
|
News_Feed *f;
|
||||||
Evas_List *l;
|
Eina_List *l;
|
||||||
|
|
||||||
for (l=cat->feeds; l; l=evas_list_next(l))
|
for (l=cat->feeds; l; l=eina_list_next(l))
|
||||||
{
|
{
|
||||||
f = l->data;
|
f = l->data;
|
||||||
if (!strcmp(f->name, name))
|
if (!strcmp(f->name, name))
|
||||||
|
@ -1080,13 +1080,13 @@ _feed_find(News_Feed_Category *cat, char *name)
|
||||||
static News_Feed_Category *
|
static News_Feed_Category *
|
||||||
_feed_category_find(char *name)
|
_feed_category_find(char *name)
|
||||||
{
|
{
|
||||||
Evas_List *l;
|
Eina_List *l;
|
||||||
|
|
||||||
for (l=news->config->feed.categories; l; l=evas_list_next(l))
|
for (l=news->config->feed.categories; l; l=eina_list_next(l))
|
||||||
{
|
{
|
||||||
News_Feed_Category *cat;
|
News_Feed_Category *cat;
|
||||||
|
|
||||||
cat = evas_list_data(l);
|
cat = eina_list_data_get(l);
|
||||||
if (!strcmp(cat->name, name))
|
if (!strcmp(cat->name, name))
|
||||||
return cat;
|
return cat;
|
||||||
}
|
}
|
||||||
|
|
|
@ -173,14 +173,14 @@ typedef enum _News_Feed_Popup_News_Active
|
||||||
|
|
||||||
#define NEWS_FEED_FOREACH_BEG() \
|
#define NEWS_FEED_FOREACH_BEG() \
|
||||||
{ \
|
{ \
|
||||||
Evas_List *_l_feeds, *_l_cats; \
|
Eina_List *_l_feeds, *_l_cats; \
|
||||||
News_Feed_Category *_cat; \
|
News_Feed_Category *_cat; \
|
||||||
News_Feed *_feed; \
|
News_Feed *_feed; \
|
||||||
\
|
\
|
||||||
for (_l_feeds=news->config->feed.categories; _l_feeds; _l_feeds=evas_list_next(_l_feeds)) \
|
for (_l_feeds=news->config->feed.categories; _l_feeds; _l_feeds=eina_list_next(_l_feeds)) \
|
||||||
{ \
|
{ \
|
||||||
_cat = _l_feeds->data; \
|
_cat = _l_feeds->data; \
|
||||||
for (_l_cats=_cat->feeds; _l_cats; _l_cats=evas_list_next(_l_cats)) \
|
for (_l_cats=_cat->feeds; _l_cats; _l_cats=eina_list_next(_l_cats)) \
|
||||||
{ \
|
{ \
|
||||||
_feed = _l_cats->data;
|
_feed = _l_cats->data;
|
||||||
#define NEWS_FEED_FOREACH_END() \
|
#define NEWS_FEED_FOREACH_END() \
|
||||||
|
@ -237,14 +237,14 @@ struct _News_Feed_Category
|
||||||
const char *name;
|
const char *name;
|
||||||
const char *icon;
|
const char *icon;
|
||||||
|
|
||||||
Evas_List *feeds;
|
Eina_List *feeds;
|
||||||
|
|
||||||
/* not saved */
|
/* not saved */
|
||||||
/* temporary list of categories */
|
/* temporary list of categories */
|
||||||
/* this list is sorted and contains only the feeds
|
/* this list is sorted and contains only the feeds
|
||||||
of the languages selected by user
|
of the languages selected by user
|
||||||
it regenerated via news_feed_lists_refresh */
|
it regenerated via news_feed_lists_refresh */
|
||||||
Evas_List *feeds_visible;
|
Eina_List *feeds_visible;
|
||||||
int feeds_visible_free;
|
int feeds_visible_free;
|
||||||
E_Config_Dialog *config_dialog;
|
E_Config_Dialog *config_dialog;
|
||||||
};
|
};
|
||||||
|
@ -254,7 +254,7 @@ struct _News_Feed_Document
|
||||||
News_Feed *feed;
|
News_Feed *feed;
|
||||||
|
|
||||||
News_Popup *popw;
|
News_Popup *popw;
|
||||||
Evas_List *articles;
|
Eina_List *articles;
|
||||||
int unread_count;
|
int unread_count;
|
||||||
unsigned char ui_needrefresh : 1;
|
unsigned char ui_needrefresh : 1;
|
||||||
|
|
||||||
|
@ -352,7 +352,7 @@ void news_feed_category_free(News_Feed_Category *cat);
|
||||||
void news_feed_category_list_ui_refresh(void);
|
void news_feed_category_list_ui_refresh(void);
|
||||||
|
|
||||||
void news_feed_lang_list_refresh(void);
|
void news_feed_lang_list_refresh(void);
|
||||||
void news_feed_lang_list_free(Evas_List *l);
|
void news_feed_lang_list_free(Eina_List *l);
|
||||||
const char *news_feed_lang_name_get(const char *key);
|
const char *news_feed_lang_name_get(const char *key);
|
||||||
int news_feed_lang_selected_is(const char *key);
|
int news_feed_lang_selected_is(const char *key);
|
||||||
|
|
||||||
|
|
|
@ -17,7 +17,7 @@ news_item_new(E_Gadcon_Client *gcc, Evas_Object *obj, const char *id)
|
||||||
News_Item *ni;
|
News_Item *ni;
|
||||||
News_Config_Item *nic;
|
News_Config_Item *nic;
|
||||||
Evas_Object *view;
|
Evas_Object *view;
|
||||||
Evas_List *l;
|
Eina_List *l;
|
||||||
|
|
||||||
ni = E_NEW(News_Item, 1);
|
ni = E_NEW(News_Item, 1);
|
||||||
|
|
||||||
|
@ -34,11 +34,11 @@ news_item_new(E_Gadcon_Client *gcc, Evas_Object *obj, const char *id)
|
||||||
_cb_mouse_out, ni);
|
_cb_mouse_out, ni);
|
||||||
|
|
||||||
/* attach feeds */
|
/* attach feeds */
|
||||||
for (l=nic->feed_refs; l; l=evas_list_next(l))
|
for (l=nic->feed_refs; l; l=eina_list_next(l))
|
||||||
{
|
{
|
||||||
News_Feed_Ref *ref;
|
News_Feed_Ref *ref;
|
||||||
|
|
||||||
ref = evas_list_data(l);
|
ref = eina_list_data_get(l);
|
||||||
news_feed_attach(NULL, ref, ni);
|
news_feed_attach(NULL, ref, ni);
|
||||||
}
|
}
|
||||||
news_feed_list_ui_refresh();
|
news_feed_list_ui_refresh();
|
||||||
|
@ -109,7 +109,7 @@ news_item_refresh(News_Item *ni, int changed_order, int changed_content, int cha
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
if (!evas_list_count(ni->config->feed_refs))
|
if (!eina_list_count(ni->config->feed_refs))
|
||||||
mode = NEWS_ITEM_VIEW_MODE_ONE;
|
mode = NEWS_ITEM_VIEW_MODE_ONE;
|
||||||
else
|
else
|
||||||
mode = ni->config->view_mode;
|
mode = ni->config->view_mode;
|
||||||
|
@ -231,7 +231,7 @@ _item_refresh_mode_feed(News_Item *ni, int important_only, int unread_only, int
|
||||||
Evas_Object *box;
|
Evas_Object *box;
|
||||||
Evas_Object *obj;
|
Evas_Object *obj;
|
||||||
|
|
||||||
if (!evas_list_count(ni->config->feed_refs)) return;
|
if (!eina_list_count(ni->config->feed_refs)) return;
|
||||||
|
|
||||||
box = ni->view.box;
|
box = ni->view.box;
|
||||||
|
|
||||||
|
|
|
@ -29,11 +29,11 @@ typedef enum _News_Item_Openmethod
|
||||||
|
|
||||||
#define NEWS_ITEM_FEEDS_FOREACH_BEG_LIST(list) \
|
#define NEWS_ITEM_FEEDS_FOREACH_BEG_LIST(list) \
|
||||||
{ \
|
{ \
|
||||||
Evas_List *_l_feeds; \
|
Eina_List *_l_feeds; \
|
||||||
News_Feed_Ref *_ref; \
|
News_Feed_Ref *_ref; \
|
||||||
News_Feed *_feed; \
|
News_Feed *_feed; \
|
||||||
\
|
\
|
||||||
for (_l_feeds=list; _l_feeds; _l_feeds=evas_list_next(_l_feeds)) \
|
for (_l_feeds=list; _l_feeds; _l_feeds=eina_list_next(_l_feeds)) \
|
||||||
{ \
|
{ \
|
||||||
_ref = _l_feeds->data; \
|
_ref = _l_feeds->data; \
|
||||||
_feed = _ref->feed; \
|
_feed = _ref->feed; \
|
||||||
|
|
|
@ -47,14 +47,14 @@ struct _News_Parse
|
||||||
char *buffer_pos;
|
char *buffer_pos;
|
||||||
|
|
||||||
News_Parse_Oc_Actions oc;
|
News_Parse_Oc_Actions oc;
|
||||||
Evas_List *articles;
|
Eina_List *articles;
|
||||||
Ecore_Idler *idler;
|
Ecore_Idler *idler;
|
||||||
News_Parse_Article *art;
|
News_Parse_Article *art;
|
||||||
int error;
|
int error;
|
||||||
unsigned char changes : 1;
|
unsigned char changes : 1;
|
||||||
};
|
};
|
||||||
|
|
||||||
static Evas_List *_parsers;
|
static Eina_List *_parsers;
|
||||||
|
|
||||||
static int _parse_type(News_Feed_Document *doc);
|
static int _parse_type(News_Feed_Document *doc);
|
||||||
|
|
||||||
|
@ -102,7 +102,7 @@ news_parse_shutdown(void)
|
||||||
{
|
{
|
||||||
p = _parsers->data;
|
p = _parsers->data;
|
||||||
news_parse_stop(p->doc);
|
news_parse_stop(p->doc);
|
||||||
_parsers = evas_list_remove_list(_parsers, _parsers);
|
_parsers = eina_list_remove_list(_parsers, _parsers);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -116,7 +116,7 @@ news_parse_go(News_Feed_Document *doc,
|
||||||
|
|
||||||
if (!_parse_type(doc))
|
if (!_parse_type(doc))
|
||||||
{
|
{
|
||||||
if (doc->articles && evas_list_count(doc->articles))
|
if (doc->articles && eina_list_count(doc->articles))
|
||||||
cb_func(doc, NEWS_PARSE_ERROR_TYPE_UNKNOWN, 0);
|
cb_func(doc, NEWS_PARSE_ERROR_TYPE_UNKNOWN, 0);
|
||||||
else
|
else
|
||||||
cb_func(doc, NEWS_PARSE_ERROR_TYPE_UNKNOWN, 1);
|
cb_func(doc, NEWS_PARSE_ERROR_TYPE_UNKNOWN, 1);
|
||||||
|
@ -129,7 +129,7 @@ news_parse_go(News_Feed_Document *doc,
|
||||||
parser->buffer_pos = parser->doc->server.buffer;
|
parser->buffer_pos = parser->doc->server.buffer;
|
||||||
|
|
||||||
doc->parse.parser = parser;
|
doc->parse.parser = parser;
|
||||||
_parsers = evas_list_append(_parsers, parser);
|
_parsers = eina_list_append(_parsers, parser);
|
||||||
|
|
||||||
switch (doc->parse.type)
|
switch (doc->parse.type)
|
||||||
{
|
{
|
||||||
|
@ -154,7 +154,7 @@ news_parse_stop(News_Feed_Document *doc)
|
||||||
DPARSE(("Parse STOP"));
|
DPARSE(("Parse STOP"));
|
||||||
|
|
||||||
_parse_free(doc->parse.parser);
|
_parse_free(doc->parse.parser);
|
||||||
_parsers = evas_list_remove(_parsers,
|
_parsers = eina_list_remove(_parsers,
|
||||||
doc->parse.parser);
|
doc->parse.parser);
|
||||||
doc->parse.parser = NULL;
|
doc->parse.parser = NULL;
|
||||||
}
|
}
|
||||||
|
@ -390,7 +390,7 @@ _idler_parse_article_init(News_Parse *parser)
|
||||||
p1 = strstr(pos, parser->doc->parse.meta_article);
|
p1 = strstr(pos, parser->doc->parse.meta_article);
|
||||||
if (!p1)
|
if (!p1)
|
||||||
{
|
{
|
||||||
if (evas_list_count(parser->articles))
|
if (eina_list_count(parser->articles))
|
||||||
{
|
{
|
||||||
parser->oc.action = NEWS_PARSE_OC_END;
|
parser->oc.action = NEWS_PARSE_OC_END;
|
||||||
return NEWS_PARSE_ERROR_NO;
|
return NEWS_PARSE_ERROR_NO;
|
||||||
|
@ -414,17 +414,17 @@ _idler_parse_article_exists(News_Parse *parser)
|
||||||
{
|
{
|
||||||
News_Parse_Article *art;
|
News_Parse_Article *art;
|
||||||
News_Feed_Article *a;
|
News_Feed_Article *a;
|
||||||
Evas_List *l;
|
Eina_List *l;
|
||||||
|
|
||||||
art = parser->art;
|
art = parser->art;
|
||||||
|
|
||||||
if (!parser->doc->articles ||
|
if (!parser->doc->articles ||
|
||||||
!evas_list_count(parser->doc->articles))
|
!eina_list_count(parser->doc->articles))
|
||||||
return NEWS_PARSE_ERROR_NO;
|
return NEWS_PARSE_ERROR_NO;
|
||||||
|
|
||||||
DPARSE(("ALREADY EXISTS : Go %s %s",
|
DPARSE(("ALREADY EXISTS : Go %s %s",
|
||||||
art->url, art->title));
|
art->url, art->title));
|
||||||
for (l=parser->doc->articles; l; l=evas_list_next(l))
|
for (l=parser->doc->articles; l; l=eina_list_next(l))
|
||||||
{
|
{
|
||||||
a = l->data;
|
a = l->data;
|
||||||
|
|
||||||
|
@ -456,7 +456,7 @@ _idler_parse_article_exists(News_Parse *parser)
|
||||||
static News_Parse_Error
|
static News_Parse_Error
|
||||||
_idler_parse_article_end(News_Parse *parser)
|
_idler_parse_article_end(News_Parse *parser)
|
||||||
{
|
{
|
||||||
parser->articles = evas_list_append(parser->articles,
|
parser->articles = eina_list_append(parser->articles,
|
||||||
parser->art);
|
parser->art);
|
||||||
parser->buffer_pos = parser->art->pos_end;
|
parser->buffer_pos = parser->art->pos_end;
|
||||||
DPARSE(("Parse article %s end", parser->art->title));
|
DPARSE(("Parse article %s end", parser->art->title));
|
||||||
|
@ -1007,7 +1007,7 @@ _parse_finished(News_Parse *parser)
|
||||||
|
|
||||||
doc = parser->doc;
|
doc = parser->doc;
|
||||||
|
|
||||||
DPARSE(("Parse finished ! %d articles", evas_list_count(parser->articles)));
|
DPARSE(("Parse finished ! %d articles", eina_list_count(parser->articles)));
|
||||||
|
|
||||||
if ( (parser->error != NEWS_PARSE_ERROR_TYPE_UNKNOWN) &&
|
if ( (parser->error != NEWS_PARSE_ERROR_TYPE_UNKNOWN) &&
|
||||||
(parser->error != NEWS_PARSE_ERROR_NOT_IMPLEMENTED))
|
(parser->error != NEWS_PARSE_ERROR_NOT_IMPLEMENTED))
|
||||||
|
@ -1019,7 +1019,7 @@ _parse_finished(News_Parse *parser)
|
||||||
parser->idler = NULL;
|
parser->idler = NULL;
|
||||||
parser->doc->parse.parser = NULL;
|
parser->doc->parse.parser = NULL;
|
||||||
|
|
||||||
_parsers = evas_list_remove(_parsers, parser);
|
_parsers = eina_list_remove(_parsers, parser);
|
||||||
_parse_free(parser);
|
_parse_free(parser);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -1028,16 +1028,16 @@ _update_doc(News_Parse *parser)
|
||||||
{
|
{
|
||||||
News_Parse_Article *pa;
|
News_Parse_Article *pa;
|
||||||
News_Feed_Article *fa;
|
News_Feed_Article *fa;
|
||||||
Evas_List *list, *l;
|
Eina_List *list, *l;
|
||||||
int pos;
|
int pos;
|
||||||
|
|
||||||
list = NULL;
|
list = NULL;
|
||||||
|
|
||||||
/* create a list of new articles */
|
/* create a list of new articles */
|
||||||
|
|
||||||
for (l=parser->articles; l; l=evas_list_next(l))
|
for (l=parser->articles; l; l=eina_list_next(l))
|
||||||
{
|
{
|
||||||
pa = evas_list_data(l);
|
pa = eina_list_data_get(l);
|
||||||
if (!pa->article)
|
if (!pa->article)
|
||||||
{
|
{
|
||||||
/* create a brand new article */
|
/* create a brand new article */
|
||||||
|
@ -1066,13 +1066,13 @@ _update_doc(News_Parse *parser)
|
||||||
DPARSE(("** New articles list, reused fa %s", pa->article->title));
|
DPARSE(("** New articles list, reused fa %s", pa->article->title));
|
||||||
fa = pa->article;
|
fa = pa->article;
|
||||||
fa->reused = 0;
|
fa->reused = 0;
|
||||||
parser->doc->articles = evas_list_remove(parser->doc->articles, fa);
|
parser->doc->articles = eina_list_remove(parser->doc->articles, fa);
|
||||||
}
|
}
|
||||||
_parse_article_free(pa);
|
_parse_article_free(pa);
|
||||||
|
|
||||||
list = evas_list_append(list, fa);
|
list = eina_list_append(list, fa);
|
||||||
}
|
}
|
||||||
evas_list_free(parser->articles);
|
eina_list_free(parser->articles);
|
||||||
parser->articles = NULL;
|
parser->articles = NULL;
|
||||||
|
|
||||||
/* remove old articles
|
/* remove old articles
|
||||||
|
@ -1080,8 +1080,8 @@ _update_doc(News_Parse *parser)
|
||||||
if ((parser->error != NEWS_PARSE_ERROR_BROKEN_FEED) ||
|
if ((parser->error != NEWS_PARSE_ERROR_BROKEN_FEED) ||
|
||||||
(parser->doc->unread_count > NEWS_FEED_UNREAD_COUNT_MAX))
|
(parser->doc->unread_count > NEWS_FEED_UNREAD_COUNT_MAX))
|
||||||
{
|
{
|
||||||
pos = evas_list_count(parser->doc->articles) - 1;
|
pos = eina_list_count(parser->doc->articles) - 1;
|
||||||
while ((fa = evas_list_nth(parser->doc->articles, pos)))
|
while ((fa = eina_list_nth(parser->doc->articles, pos)))
|
||||||
{
|
{
|
||||||
/* if unread count max reached, remove even if unread */
|
/* if unread count max reached, remove even if unread */
|
||||||
if (!fa->unread || (parser->doc->unread_count > NEWS_FEED_UNREAD_COUNT_MAX))
|
if (!fa->unread || (parser->doc->unread_count > NEWS_FEED_UNREAD_COUNT_MAX))
|
||||||
|
@ -1094,21 +1094,21 @@ _update_doc(News_Parse *parser)
|
||||||
}
|
}
|
||||||
|
|
||||||
/* append the old articles list to the new one */
|
/* append the old articles list to the new one */
|
||||||
for (l=parser->doc->articles; l; l=evas_list_next(l))
|
for (l=parser->doc->articles; l; l=eina_list_next(l))
|
||||||
{
|
{
|
||||||
fa = l->data;
|
fa = l->data;
|
||||||
list = evas_list_append(list, fa);
|
list = eina_list_append(list, fa);
|
||||||
}
|
}
|
||||||
/* and replace the old list by the new one */
|
/* and replace the old list by the new one */
|
||||||
evas_list_free(parser->doc->articles);
|
eina_list_free(parser->doc->articles);
|
||||||
parser->doc->articles = list;
|
parser->doc->articles = list;
|
||||||
|
|
||||||
/* DEBUG : list the articles */
|
/* DEBUG : list the articles */
|
||||||
#ifdef DPARSE
|
#ifdef DPARSE
|
||||||
DPARSE(("-- New articles list for feed %s", parser->doc->feed->name));
|
DPARSE(("-- New articles list for feed %s", parser->doc->feed->name));
|
||||||
for (l=parser->doc->articles; l; l=evas_list_next(l))
|
for (l=parser->doc->articles; l; l=eina_list_next(l))
|
||||||
{
|
{
|
||||||
fa = evas_list_data(l);
|
fa = eina_list_data_get(l);
|
||||||
DPARSE(("- %s", fa->title));
|
DPARSE(("- %s", fa->title));
|
||||||
}
|
}
|
||||||
DPARSE(("---------"));
|
DPARSE(("---------"));
|
||||||
|
@ -1126,7 +1126,7 @@ _parse_free(News_Parse *parser)
|
||||||
|
|
||||||
a = parser->articles->data;
|
a = parser->articles->data;
|
||||||
_parse_article_free(a);
|
_parse_article_free(a);
|
||||||
parser->articles = evas_list_remove_list(parser->articles,
|
parser->articles = eina_list_remove_list(parser->articles,
|
||||||
parser->articles);
|
parser->articles);
|
||||||
}
|
}
|
||||||
if (parser->idler) ecore_idler_del(parser->idler);
|
if (parser->idler) ecore_idler_del(parser->idler);
|
||||||
|
|
|
@ -1,6 +1,6 @@
|
||||||
#include "News.h"
|
#include "News.h"
|
||||||
|
|
||||||
static Evas_List *_popups_warn;
|
static Eina_List *_popups_warn;
|
||||||
|
|
||||||
static void _check_overlap(int *px, int *py, int *pw, int *ph, int tries, int org_x, int org_y);
|
static void _check_overlap(int *px, int *py, int *pw, int *ph, int tries, int org_x, int org_y);
|
||||||
static void _try_close(News_Popup *popw);
|
static void _try_close(News_Popup *popw);
|
||||||
|
@ -23,15 +23,15 @@ news_popup_init(void)
|
||||||
void
|
void
|
||||||
news_popup_shutdown(void)
|
news_popup_shutdown(void)
|
||||||
{
|
{
|
||||||
Evas_List *l;
|
Eina_List *l;
|
||||||
|
|
||||||
for (l = _popups_warn; l; l = evas_list_next(l))
|
for (l = _popups_warn; l; l = eina_list_next(l))
|
||||||
{
|
{
|
||||||
News_Popup *p;
|
News_Popup *p;
|
||||||
p = evas_list_data(l);
|
p = eina_list_data_get(l);
|
||||||
news_popup_del(p);
|
news_popup_del(p);
|
||||||
}
|
}
|
||||||
evas_list_free(_popups_warn);
|
eina_list_free(_popups_warn);
|
||||||
_popups_warn = NULL;
|
_popups_warn = NULL;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -119,7 +119,7 @@ news_popup_add(int type, const char *title, const char *text, int timer, int (*f
|
||||||
evas_event_thaw(popw->pop->evas);
|
evas_event_thaw(popw->pop->evas);
|
||||||
e_popup_show(popw->pop);
|
e_popup_show(popw->pop);
|
||||||
|
|
||||||
_popups_warn = evas_list_append(_popups_warn, popw);
|
_popups_warn = eina_list_append(_popups_warn, popw);
|
||||||
|
|
||||||
return popw;
|
return popw;
|
||||||
}
|
}
|
||||||
|
@ -136,7 +136,7 @@ news_popup_del(News_Popup *popw)
|
||||||
if (popw->pop)
|
if (popw->pop)
|
||||||
e_object_del(E_OBJECT(popw->pop));
|
e_object_del(E_OBJECT(popw->pop));
|
||||||
|
|
||||||
_popups_warn = evas_list_remove(_popups_warn, popw);
|
_popups_warn = eina_list_remove(_popups_warn, popw);
|
||||||
|
|
||||||
free(popw);
|
free(popw);
|
||||||
}
|
}
|
||||||
|
@ -150,16 +150,16 @@ news_popup_del(News_Popup *popw)
|
||||||
static void
|
static void
|
||||||
_check_overlap(int *px, int *py, int *pw, int *ph, int tries, int org_x, int org_y)
|
_check_overlap(int *px, int *py, int *pw, int *ph, int tries, int org_x, int org_y)
|
||||||
{
|
{
|
||||||
Evas_List *l;
|
Eina_List *l;
|
||||||
News_Popup *p;
|
News_Popup *p;
|
||||||
int pxw, pyh;
|
int pxw, pyh;
|
||||||
int p_xw, p_yh;
|
int p_xw, p_yh;
|
||||||
|
|
||||||
pxw = *px + *pw;
|
pxw = *px + *pw;
|
||||||
pyh = *py + *ph;
|
pyh = *py + *ph;
|
||||||
for (l = _popups_warn; l; l = evas_list_next(l))
|
for (l = _popups_warn; l; l = eina_list_next(l))
|
||||||
{
|
{
|
||||||
p = evas_list_data(l);
|
p = eina_list_data_get(l);
|
||||||
p_xw = p->x + p->w;
|
p_xw = p->x + p->w;
|
||||||
p_yh = p->y + p->h;
|
p_yh = p->y + p->h;
|
||||||
if (((p->x >= *px) && (p->x <= pxw) &&
|
if (((p->x >= *px) && (p->x <= pxw) &&
|
||||||
|
|
|
@ -36,7 +36,7 @@ struct _News_Popup
|
||||||
E_Popup *pop;
|
E_Popup *pop;
|
||||||
Evas_Object *face;
|
Evas_Object *face;
|
||||||
Evas_Object *tb;
|
Evas_Object *tb;
|
||||||
Evas_List *log; /* 2 consecutive strings for each popup */
|
Eina_List *log; /* 2 consecutive strings for each popup */
|
||||||
|
|
||||||
Ecore_Timer *timer;
|
Ecore_Timer *timer;
|
||||||
int (*func_close) (News_Popup *popw, void *data);
|
int (*func_close) (News_Popup *popw, void *data);
|
||||||
|
|
|
@ -80,17 +80,17 @@ news_util_browser_open(const char *url)
|
||||||
return 1;
|
return 1;
|
||||||
}
|
}
|
||||||
|
|
||||||
Evas_List *
|
Eina_List *
|
||||||
news_util_lang_detect(void)
|
news_util_lang_detect(void)
|
||||||
{
|
{
|
||||||
Evas_List *list = NULL;
|
Eina_List *list = NULL;
|
||||||
News_Feed_Lang *lang;
|
News_Feed_Lang *lang;
|
||||||
const char *key, *name;
|
const char *key, *name;
|
||||||
|
|
||||||
lang = E_NEW(News_Feed_Lang, 1);
|
lang = E_NEW(News_Feed_Lang, 1);
|
||||||
lang->key = evas_stringshare_add("en");
|
lang->key = evas_stringshare_add("en");
|
||||||
lang->name = evas_stringshare_add("English");
|
lang->name = evas_stringshare_add("English");
|
||||||
list = evas_list_append(list, lang);
|
list = eina_list_append(list, lang);
|
||||||
|
|
||||||
//FIXME is that get from env correct ?
|
//FIXME is that get from env correct ?
|
||||||
key = getenv("LC_MESSAGES");
|
key = getenv("LC_MESSAGES");
|
||||||
|
@ -103,7 +103,7 @@ news_util_lang_detect(void)
|
||||||
lang = E_NEW(News_Feed_Lang, 1);
|
lang = E_NEW(News_Feed_Lang, 1);
|
||||||
lang->key = evas_stringshare_add(key);
|
lang->key = evas_stringshare_add(key);
|
||||||
lang->name = evas_stringshare_add(name);
|
lang->name = evas_stringshare_add(name);
|
||||||
list = evas_list_append(list, lang);
|
list = eina_list_append(list, lang);
|
||||||
}
|
}
|
||||||
|
|
||||||
return list;
|
return list;
|
||||||
|
|
|
@ -33,7 +33,7 @@ const char *news_util_convert_locale_to_utf8(char *txt);
|
||||||
const char *news_util_convert_utf8_to_locale(char *txt);
|
const char *news_util_convert_utf8_to_locale(char *txt);
|
||||||
int news_util_datecmp(struct tm *t1, struct tm *t2);
|
int news_util_datecmp(struct tm *t1, struct tm *t2);
|
||||||
int news_util_browser_open(const char *url);
|
int news_util_browser_open(const char *url);
|
||||||
Evas_List *news_util_lang_detect(void);
|
Eina_List *news_util_lang_detect(void);
|
||||||
int news_util_proxy_detect(void);
|
int news_util_proxy_detect(void);
|
||||||
|
|
||||||
#endif
|
#endif
|
||||||
|
|
|
@ -31,13 +31,13 @@ static void _vcontent_feed_infos_set(News_Viewer *nv);
|
||||||
static void _vcontent_cb_mouse_down(void *data, Evas *e, Evas_Object *obj, void *event_info);
|
static void _vcontent_cb_mouse_down(void *data, Evas *e, Evas_Object *obj, void *event_info);
|
||||||
|
|
||||||
static Evas_Object *_article_icon_get(News_Feed_Article *art, Evas *evas);
|
static Evas_Object *_article_icon_get(News_Feed_Article *art, Evas *evas);
|
||||||
static Evas_List *_sort_feedrefs_unreadfirst_list_get(News_Item *ni);
|
static Eina_List *_sort_feedrefs_unreadfirst_list_get(News_Item *ni);
|
||||||
static Evas_List *_sort_articles_unreadfirst_list_get(News_Feed *f);
|
static Eina_List *_sort_articles_unreadfirst_list_get(News_Feed *f);
|
||||||
static Evas_List *_sort_articles_unreadfirst(Evas_List *articles);
|
static Eina_List *_sort_articles_unreadfirst(Eina_List *articles);
|
||||||
static Evas_List *_sort_articles_date_list_get(News_Feed *f);
|
static Eina_List *_sort_articles_date_list_get(News_Feed *f);
|
||||||
static int _sort_articles_date_list_cb(void *d1, void *d2);
|
static int _sort_articles_date_list_cb(void *d1, void *d2);
|
||||||
|
|
||||||
static Evas_List *_viewers;
|
static Eina_List *_viewers;
|
||||||
|
|
||||||
|
|
||||||
/*
|
/*
|
||||||
|
@ -61,7 +61,7 @@ news_viewer_shutdown(void)
|
||||||
{
|
{
|
||||||
nv = _viewers->data;
|
nv = _viewers->data;
|
||||||
news_viewer_destroy(nv);
|
news_viewer_destroy(nv);
|
||||||
_viewers = evas_list_remove_list(_viewers, _viewers);
|
_viewers = eina_list_remove_list(_viewers, _viewers);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -73,10 +73,10 @@ news_viewer_all_refresh(int force, int recreate)
|
||||||
|
|
||||||
pos = 0;
|
pos = 0;
|
||||||
counter = 0;
|
counter = 0;
|
||||||
count = evas_list_count(_viewers);
|
count = eina_list_count(_viewers);
|
||||||
while (counter < count)
|
while (counter < count)
|
||||||
{
|
{
|
||||||
nv = evas_list_nth(_viewers, pos);
|
nv = eina_list_nth(_viewers, pos);
|
||||||
if (force)
|
if (force)
|
||||||
{
|
{
|
||||||
NEWS_ITEM_FEEDS_FOREACH_BEG(nv->item);
|
NEWS_ITEM_FEEDS_FOREACH_BEG(nv->item);
|
||||||
|
@ -119,7 +119,7 @@ news_viewer_create(News_Item *ni)
|
||||||
e_win_raise(nv->dialog.dia->win);
|
e_win_raise(nv->dialog.dia->win);
|
||||||
|
|
||||||
ni->viewer = nv;
|
ni->viewer = nv;
|
||||||
_viewers = evas_list_append(_viewers, nv);
|
_viewers = eina_list_append(_viewers, nv);
|
||||||
|
|
||||||
news_viewer_refresh(nv);
|
news_viewer_refresh(nv);
|
||||||
|
|
||||||
|
@ -133,7 +133,7 @@ news_viewer_destroy(News_Viewer *nv)
|
||||||
_dialog_destroy(nv);
|
_dialog_destroy(nv);
|
||||||
|
|
||||||
nv->item->viewer = NULL;
|
nv->item->viewer = NULL;
|
||||||
_viewers = evas_list_remove(_viewers, nv);
|
_viewers = eina_list_remove(_viewers, nv);
|
||||||
free(nv);
|
free(nv);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -141,7 +141,7 @@ void
|
||||||
news_viewer_refresh(News_Viewer *nv)
|
news_viewer_refresh(News_Viewer *nv)
|
||||||
{
|
{
|
||||||
Evas_Object *ilist;
|
Evas_Object *ilist;
|
||||||
Evas_List *feed_refs;
|
Eina_List *feed_refs;
|
||||||
int feed_refs_own = 0;
|
int feed_refs_own = 0;
|
||||||
int pos, toselect_pos;
|
int pos, toselect_pos;
|
||||||
|
|
||||||
|
@ -150,7 +150,7 @@ news_viewer_refresh(News_Viewer *nv)
|
||||||
ilist = nv->vfeeds.ilist;
|
ilist = nv->vfeeds.ilist;
|
||||||
e_widget_ilist_freeze(ilist);
|
e_widget_ilist_freeze(ilist);
|
||||||
e_widget_ilist_clear(ilist);
|
e_widget_ilist_clear(ilist);
|
||||||
if (!evas_list_count(nv->item->config->feed_refs))
|
if (!eina_list_count(nv->item->config->feed_refs))
|
||||||
{
|
{
|
||||||
nv->vfeeds.selected = NULL;
|
nv->vfeeds.selected = NULL;
|
||||||
nv->varticles.selected = NULL;
|
nv->varticles.selected = NULL;
|
||||||
|
@ -221,7 +221,7 @@ news_viewer_refresh(News_Viewer *nv)
|
||||||
if (nv->vfeeds.list)
|
if (nv->vfeeds.list)
|
||||||
{
|
{
|
||||||
DD(("LIST OWN free !!"));
|
DD(("LIST OWN free !!"));
|
||||||
evas_list_free(nv->vfeeds.list);
|
eina_list_free(nv->vfeeds.list);
|
||||||
nv->vfeeds.list = NULL;
|
nv->vfeeds.list = NULL;
|
||||||
}
|
}
|
||||||
nv->vfeeds.list_own = 0;
|
nv->vfeeds.list_own = 0;
|
||||||
|
@ -268,7 +268,7 @@ news_viewer_feed_selected_infos_refresh(News_Viewer *nv)
|
||||||
void
|
void
|
||||||
news_viewer_article_state_refresh(News_Viewer *nv, News_Feed_Article *art)
|
news_viewer_article_state_refresh(News_Viewer *nv, News_Feed_Article *art)
|
||||||
{
|
{
|
||||||
Evas_List *l;
|
Eina_List *l;
|
||||||
News_Feed *f;
|
News_Feed *f;
|
||||||
News_Feed_Article *a;
|
News_Feed_Article *a;
|
||||||
int pos;
|
int pos;
|
||||||
|
@ -277,7 +277,7 @@ news_viewer_article_state_refresh(News_Viewer *nv, News_Feed_Article *art)
|
||||||
if (nv->vfeeds.selected != f) return;
|
if (nv->vfeeds.selected != f) return;
|
||||||
|
|
||||||
pos = 0;
|
pos = 0;
|
||||||
for (l=nv->varticles.list; l; l=evas_list_next(l))
|
for (l=nv->varticles.list; l; l=eina_list_next(l))
|
||||||
{
|
{
|
||||||
a = l->data;
|
a = l->data;
|
||||||
if (art == a) break;
|
if (art == a) break;
|
||||||
|
@ -478,7 +478,7 @@ _dialog_content_destroy(News_Viewer *nv)
|
||||||
}
|
}
|
||||||
if (nv->vfeeds.list_own && nv->vfeeds.list)
|
if (nv->vfeeds.list_own && nv->vfeeds.list)
|
||||||
{
|
{
|
||||||
evas_list_free(nv->vfeeds.list);
|
eina_list_free(nv->vfeeds.list);
|
||||||
nv->vfeeds.list = NULL;
|
nv->vfeeds.list = NULL;
|
||||||
}
|
}
|
||||||
if (nv->vfeeds.ilist)
|
if (nv->vfeeds.ilist)
|
||||||
|
@ -510,7 +510,7 @@ _dialog_content_destroy(News_Viewer *nv)
|
||||||
|
|
||||||
if (nv->varticles.list_own && nv->varticles.list)
|
if (nv->varticles.list_own && nv->varticles.list)
|
||||||
{
|
{
|
||||||
evas_list_free(nv->varticles.list);
|
eina_list_free(nv->varticles.list);
|
||||||
nv->varticles.list = NULL;
|
nv->varticles.list = NULL;
|
||||||
nv->varticles.list_own = 0;
|
nv->varticles.list_own = 0;
|
||||||
}
|
}
|
||||||
|
@ -713,7 +713,7 @@ _varticles_refresh(News_Viewer *nv)
|
||||||
{
|
{
|
||||||
News_Feed *feed;
|
News_Feed *feed;
|
||||||
Evas_Object *ilist;
|
Evas_Object *ilist;
|
||||||
Evas_List *articles, *l;
|
Eina_List *articles, *l;
|
||||||
int articles_own = 0;
|
int articles_own = 0;
|
||||||
int pos, toselect_pos;
|
int pos, toselect_pos;
|
||||||
|
|
||||||
|
@ -728,11 +728,11 @@ _varticles_refresh(News_Viewer *nv)
|
||||||
{
|
{
|
||||||
if (news->config->viewer.varticles.sort_date)
|
if (news->config->viewer.varticles.sort_date)
|
||||||
{
|
{
|
||||||
Evas_List *tmp;
|
Eina_List *tmp;
|
||||||
|
|
||||||
tmp = _sort_articles_date_list_get(feed);
|
tmp = _sort_articles_date_list_get(feed);
|
||||||
articles = _sort_articles_unreadfirst(tmp);
|
articles = _sort_articles_unreadfirst(tmp);
|
||||||
evas_list_free(tmp);
|
eina_list_free(tmp);
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
articles = _sort_articles_unreadfirst_list_get(feed);
|
articles = _sort_articles_unreadfirst_list_get(feed);
|
||||||
|
@ -747,9 +747,9 @@ _varticles_refresh(News_Viewer *nv)
|
||||||
|
|
||||||
pos = 0;
|
pos = 0;
|
||||||
toselect_pos = -1;
|
toselect_pos = -1;
|
||||||
if (evas_list_count(articles))
|
if (eina_list_count(articles))
|
||||||
{
|
{
|
||||||
for (l=articles; l; l=evas_list_next(l))
|
for (l=articles; l; l=eina_list_next(l))
|
||||||
{
|
{
|
||||||
News_Feed_Article *art;
|
News_Feed_Article *art;
|
||||||
char label[4096];
|
char label[4096];
|
||||||
|
@ -785,7 +785,7 @@ _varticles_refresh(News_Viewer *nv)
|
||||||
|
|
||||||
if (nv->varticles.list_own)
|
if (nv->varticles.list_own)
|
||||||
{
|
{
|
||||||
evas_list_free(nv->varticles.list);
|
eina_list_free(nv->varticles.list);
|
||||||
nv->varticles.list = NULL;
|
nv->varticles.list = NULL;
|
||||||
nv->varticles.list_own = 0;
|
nv->varticles.list_own = 0;
|
||||||
}
|
}
|
||||||
|
@ -934,35 +934,35 @@ _article_icon_get(News_Feed_Article *art, Evas *evas)
|
||||||
return ic;
|
return ic;
|
||||||
}
|
}
|
||||||
|
|
||||||
static Evas_List *
|
static Eina_List *
|
||||||
_sort_feedrefs_unreadfirst_list_get(News_Item *ni)
|
_sort_feedrefs_unreadfirst_list_get(News_Item *ni)
|
||||||
{
|
{
|
||||||
Evas_List *list, *reads, *l;
|
Eina_List *list, *reads, *l;
|
||||||
News_Feed_Ref *ref;
|
News_Feed_Ref *ref;
|
||||||
|
|
||||||
list = NULL;
|
list = NULL;
|
||||||
reads = NULL;
|
reads = NULL;
|
||||||
NEWS_ITEM_FEEDS_FOREACH_BEG(ni);
|
NEWS_ITEM_FEEDS_FOREACH_BEG(ni);
|
||||||
if (_feed->doc && _feed->doc->unread_count)
|
if (_feed->doc && _feed->doc->unread_count)
|
||||||
list = evas_list_append(list, _ref);
|
list = eina_list_append(list, _ref);
|
||||||
else
|
else
|
||||||
reads = evas_list_append(reads, _ref);
|
reads = eina_list_append(reads, _ref);
|
||||||
NEWS_ITEM_FEEDS_FOREACH_END();
|
NEWS_ITEM_FEEDS_FOREACH_END();
|
||||||
|
|
||||||
for (l=reads; l; l=evas_list_next(l))
|
for (l=reads; l; l=eina_list_next(l))
|
||||||
{
|
{
|
||||||
ref = l->data;
|
ref = l->data;
|
||||||
list = evas_list_append(list, ref);
|
list = eina_list_append(list, ref);
|
||||||
}
|
}
|
||||||
evas_list_free(reads);
|
eina_list_free(reads);
|
||||||
|
|
||||||
return list;
|
return list;
|
||||||
}
|
}
|
||||||
|
|
||||||
static Evas_List *
|
static Eina_List *
|
||||||
_sort_articles_unreadfirst_list_get(News_Feed *f)
|
_sort_articles_unreadfirst_list_get(News_Feed *f)
|
||||||
{
|
{
|
||||||
Evas_List *list;
|
Eina_List *list;
|
||||||
|
|
||||||
if (!f->doc) return NULL;
|
if (!f->doc) return NULL;
|
||||||
list = _sort_articles_unreadfirst(f->doc->articles);
|
list = _sort_articles_unreadfirst(f->doc->articles);
|
||||||
|
@ -970,49 +970,49 @@ _sort_articles_unreadfirst_list_get(News_Feed *f)
|
||||||
return list;
|
return list;
|
||||||
}
|
}
|
||||||
|
|
||||||
static Evas_List *
|
static Eina_List *
|
||||||
_sort_articles_unreadfirst(Evas_List *articles)
|
_sort_articles_unreadfirst(Eina_List *articles)
|
||||||
{
|
{
|
||||||
Evas_List *list, *reads, *l;
|
Eina_List *list, *reads, *l;
|
||||||
News_Feed_Article *art;
|
News_Feed_Article *art;
|
||||||
|
|
||||||
list = NULL;
|
list = NULL;
|
||||||
reads = NULL;
|
reads = NULL;
|
||||||
for (l=articles; l; l=evas_list_next(l))
|
for (l=articles; l; l=eina_list_next(l))
|
||||||
{
|
{
|
||||||
art = l->data;
|
art = l->data;
|
||||||
|
|
||||||
if (art->unread)
|
if (art->unread)
|
||||||
list = evas_list_append(list, art);
|
list = eina_list_append(list, art);
|
||||||
else
|
else
|
||||||
reads = evas_list_append(reads, art);
|
reads = eina_list_append(reads, art);
|
||||||
}
|
}
|
||||||
|
|
||||||
for (l=reads; l; l=evas_list_next(l))
|
for (l=reads; l; l=eina_list_next(l))
|
||||||
{
|
{
|
||||||
art = l->data;
|
art = l->data;
|
||||||
list = evas_list_append(list, art);
|
list = eina_list_append(list, art);
|
||||||
}
|
}
|
||||||
evas_list_free(reads);
|
eina_list_free(reads);
|
||||||
|
|
||||||
return list;
|
return list;
|
||||||
}
|
}
|
||||||
|
|
||||||
static Evas_List *
|
static Eina_List *
|
||||||
_sort_articles_date_list_get(News_Feed *f)
|
_sort_articles_date_list_get(News_Feed *f)
|
||||||
{
|
{
|
||||||
Evas_List *list, *l;
|
Eina_List *list, *l;
|
||||||
News_Feed_Article *art;
|
News_Feed_Article *art;
|
||||||
|
|
||||||
if (!f->doc) return NULL;
|
if (!f->doc) return NULL;
|
||||||
|
|
||||||
list = NULL;
|
list = NULL;
|
||||||
for (l=f->doc->articles; l; l=evas_list_next(l))
|
for (l=f->doc->articles; l; l=eina_list_next(l))
|
||||||
{
|
{
|
||||||
art = l->data;
|
art = l->data;
|
||||||
list = evas_list_append(list, art);
|
list = eina_list_append(list, art);
|
||||||
}
|
}
|
||||||
list = evas_list_sort(list, evas_list_count(list), _sort_articles_date_list_cb);
|
list = eina_list_sort(list, eina_list_count(list), _sort_articles_date_list_cb);
|
||||||
|
|
||||||
return list;
|
return list;
|
||||||
}
|
}
|
||||||
|
|
|
@ -35,7 +35,7 @@ struct _News_Viewer
|
||||||
/* view of the feeds list */
|
/* view of the feeds list */
|
||||||
struct
|
struct
|
||||||
{
|
{
|
||||||
Evas_List *list;
|
Eina_List *list;
|
||||||
int list_own;
|
int list_own;
|
||||||
Evas_Object *ilist;
|
Evas_Object *ilist;
|
||||||
News_Feed *selected;
|
News_Feed *selected;
|
||||||
|
@ -48,7 +48,7 @@ struct _News_Viewer
|
||||||
/* view of the articles list */
|
/* view of the articles list */
|
||||||
struct
|
struct
|
||||||
{
|
{
|
||||||
Evas_List *list;
|
Eina_List *list;
|
||||||
int list_own;
|
int list_own;
|
||||||
Evas_Object *ilist;
|
Evas_Object *ilist;
|
||||||
News_Feed_Article *selected;
|
News_Feed_Article *selected;
|
||||||
|
|
Loading…
Reference in New Issue