コード例 #1
0
void
news_config_dialog_item_content_refresh_selected_feeds(News_Item *ni)
{
   E_Config_Dialog_Data *cfdata;
   Evas_Object *ilist;
   int pos, iw, ih;
  
   if (!ni->config_dialog_content) return;
   cfdata = ni->config_dialog_content->cfdata;

   ilist = cfdata->ilist_selected_feeds;
   e_widget_ilist_freeze(ilist);
   /* disable the callback until we finish to refresh the list */
   e_widget_on_change_hook_set(ilist, NULL, NULL);

   e_widget_ilist_clear(ilist);
   if (cfdata->button_rem)
     {
        e_widget_disabled_set(cfdata->button_rem, 1);
        e_widget_disabled_set(cfdata->button_up, 1);
        e_widget_disabled_set(cfdata->button_down, 1);
     }

   cfdata->ilist_selected_feeds_inrefresh = 1;
   pos = -1;
   NEWS_ITEM_FEEDS_FOREACH_BEG(ni);
   {
      Evas_Object *ic = NULL;
      char buf[1024];
        
        if (_feed->icon && _feed->icon[0])
          {
             ic = e_icon_add(evas_object_evas_get(ilist));
             e_icon_file_set(ic, _feed->icon);
          }

        snprintf(buf, sizeof(buf), "%s%s", (_feed->important) ? "[i] " : "", _feed->name);

        e_widget_ilist_append(ilist, ic, buf, NULL, _feed, NULL);
	pos++;

	if (eina_list_data_find(cfdata->ilist_selected_feeds_sel, _feed))
          e_widget_ilist_multi_select(ilist, pos);
   }
   NEWS_ITEM_FEEDS_FOREACH_END();
   cfdata->ilist_selected_feeds_inrefresh = 0;

   e_widget_size_min_get(ilist, &iw, &ih);
   if (iw < 200) iw = 200;
   e_widget_size_min_set(ilist, iw, 250);
   
   e_widget_ilist_go(ilist);
   e_widget_ilist_thaw(ilist);
   _cb_selected_feed_change(cfdata, NULL);
   /* restore the callback */
   e_widget_on_change_hook_set(ilist, _cb_selected_feed_change, cfdata);
}
コード例 #2
0
ファイル: e_mod_config.c プロジェクト: squaregoldfish/eplanet
/*
 * Populate the list of projections.
 * Note that this list is the same as the planet list -
 * its contents are replaced according to context.
 */
static void _fill_projection_ilist(Evas_Object *ilist, const char *value,
      E_Config_Dialog_Data *cfdata, int *store_item)
{
   Evas *evas;
   int count = -1;

   evas = evas_object_evas_get(ilist);
   evas_event_freeze(evas);
   edje_freeze();
   e_widget_ilist_freeze(ilist);
   e_widget_ilist_clear(ilist);

   _add_ilist_entry(ilist, "Ancient", "ancient", value, _cb_source, cfdata,
         ++count, store_item);
   _add_ilist_entry(ilist, "Azimuthal", "azimuthal", value, _cb_source, cfdata,
         ++count, store_item);
   _add_ilist_entry(ilist, "Bonne", "bonne", value, _cb_source, cfdata, ++count, store_item);
   _add_ilist_entry(ilist, "Equal Area", "equalarea", value, _cb_source,
         cfdata, ++count, store_item);
   _add_ilist_entry(ilist, "Gnomonic", "gnomonic", value, _cb_source, cfdata,
         ++count, store_item);
   _add_ilist_entry(ilist, "Hemisphere", "hemisphere", value, _cb_source,
         cfdata, ++count, store_item);
   _add_ilist_entry(ilist, "Icosagnomonic", "icosagnomonic", value, _cb_source,
         cfdata, ++count, store_item);
   _add_ilist_entry(ilist, "Lambert", "lambert", value, _cb_source, cfdata,
         ++count, store_item);
   _add_ilist_entry(ilist, "Mercator", "mercator", value, _cb_source, cfdata,
         ++count, store_item);
   _add_ilist_entry(ilist, "Mollweide", "mollweide", value, _cb_source, cfdata,
         ++count, store_item);
   _add_ilist_entry(ilist, "Orthographic", "orthographic", value, _cb_source,
         cfdata, ++count, store_item);
   _add_ilist_entry(ilist, "Peters", "peters", value, _cb_source, cfdata,
         ++count, store_item);
   _add_ilist_entry(ilist, "Polyconic", "polyconic", value, _cb_source, cfdata,
         ++count, store_item);
   _add_ilist_entry(ilist, "Rectangular", "rectangular", value, _cb_source,
         cfdata, ++count, store_item);

   e_widget_ilist_go(ilist);
   e_widget_ilist_thaw(ilist);
   edje_thaw();
   evas_event_thaw(evas);
}
コード例 #3
0
void
news_config_dialog_item_content_refresh_feeds(News_Item *ni)
{
   E_Config_Dialog_Data *cfdata;
   Eina_List *l, *l2;
   Evas_Object *ilist;
   int pos;
   int iw, ih;
  
   if (!ni->config_dialog_content) return;
   cfdata = ni->config_dialog_content->cfdata;

   ilist = cfdata->ilist_feeds;
   e_widget_ilist_freeze(ilist);
   /* disable the callback until we finish to refresh the list */
   e_widget_on_change_hook_set(ilist, NULL, NULL);

   e_widget_ilist_clear(ilist);
   if (cfdata->button_add)
     e_widget_disabled_set(cfdata->button_add, 1);

   pos = -1;
   for(l=news->config->feed.categories; l; l=eina_list_next(l))
     {
        News_Feed_Category *cat;
        Evas_Object *iccat = NULL;

        cat = eina_list_data_get(l);

        if (!cat->feeds_visible)
          continue;

        if (cat->icon)
          {
             iccat = e_icon_add(evas_object_evas_get(ilist));
             e_icon_file_set(iccat, cat->icon);
          }

        e_widget_ilist_header_append(ilist, iccat, cat->name);
	pos++;

        for(l2=cat->feeds_visible; l2; l2=eina_list_next(l2))
          {
             Evas_Object *ic = NULL;
             News_Feed *f;
             char buf[1024];
             
             f = eina_list_data_get(l2);
             
             if (f->icon && f->icon[0])
               {
                  ic = e_icon_add(evas_object_evas_get(ilist));
                  e_icon_file_set(ic, f->icon);
               }
             
             snprintf(buf, sizeof(buf), "%s%s", (f->important) ? "[i] " : "", f->name);
             
             e_widget_ilist_append(ilist, ic, buf, NULL, f, NULL);
	     pos++;

	     if (eina_list_data_find(cfdata->ilist_feeds_sel, f))
               e_widget_ilist_multi_select(ilist, pos);
          }
     }
   e_widget_ilist_thaw(ilist);

   e_widget_size_min_get(ilist, &iw, &ih);
   if (iw < 200) iw = 200;
   e_widget_size_min_set(ilist, iw, 250);
   
   e_widget_ilist_go(ilist);
   _cb_feed_change(cfdata, NULL);
   /* restore the callback */
   e_widget_on_change_hook_set(ilist, _cb_feed_change, cfdata);
}
コード例 #4
0
ファイル: e_mod_config.c プロジェクト: squaregoldfish/eplanet
/*
 * Populate the list of planets
 * Note that this list is the same as the projection list -
 * its contents are replaced according to context.
 */
static void _fill_planet_ilist(Evas_Object *ilist, const char *value,
      void(*callback)(void *data), E_Config_Dialog_Data *cfdata, int *store_item)
{
   Evas *evas;
   int count = -1;

   evas = evas_object_evas_get(ilist);
   evas_event_freeze(evas);
   edje_freeze();
   e_widget_ilist_freeze(ilist);
   e_widget_ilist_clear(ilist);

   _add_ilist_entry(ilist, "Sun", "sun", value, callback, cfdata, ++count, store_item);
   _add_ilist_entry(ilist, "Mercury", "mercury", value, callback, cfdata,
         ++count, store_item);
   _add_ilist_entry(ilist, "Venus", "venus", value, callback, cfdata, ++count, store_item);
   _add_ilist_entry(ilist, "Earth", "earth", value, callback, cfdata, ++count, store_item);
   _add_ilist_entry(ilist, "   Moon", "moon", value, callback, cfdata, ++count, store_item);
   _add_ilist_entry(ilist, "Mars", "mars", value, callback, cfdata, ++count, store_item);
   _add_ilist_entry(ilist, "   Phobos", "phobos", value, callback, cfdata,
         ++count, store_item);
   _add_ilist_entry(ilist, "   Deimos", "deimos", value, callback, cfdata,
         ++count, store_item);
   _add_ilist_entry(ilist, "Jupiter", "jupiter", value, callback, cfdata,
         ++count, store_item);
   _add_ilist_entry(ilist, "   Io", "io", value, callback, cfdata, ++count, store_item);
   _add_ilist_entry(ilist, "   Europa", "europa", value, callback, cfdata,
         ++count, store_item);
   _add_ilist_entry(ilist, "   Ganymede", "ganymede", value, callback, cfdata,
         ++count, store_item);
   _add_ilist_entry(ilist, "   Callisto", "callisto", value, callback, cfdata,
         ++count, store_item);
   _add_ilist_entry(ilist, "Saturn", "saturn", value, callback, cfdata, ++count, store_item);
   _add_ilist_entry(ilist, "   Mimas", "mimas", value, callback, cfdata, ++count, store_item);
   _add_ilist_entry(ilist, "   Enceladus", "enceladus", value, callback,
         cfdata, ++count, store_item);
   _add_ilist_entry(ilist, "   Tethys", "tethys", value, callback, cfdata,
         ++count, store_item);
   _add_ilist_entry(ilist, "   Dione", "dione", value, callback, cfdata, ++count, store_item);
   _add_ilist_entry(ilist, "   Rhea", "rhea", value, callback, cfdata, ++count, store_item);
   _add_ilist_entry(ilist, "   Titan", "titan", value, callback, cfdata, ++count, store_item);
   _add_ilist_entry(ilist, "   Hyperion", "hyperion", value, callback, cfdata,
         ++count, store_item);
   _add_ilist_entry(ilist, "   Iapetus", "iapetus", value, callback, cfdata,
         ++count, store_item);
   _add_ilist_entry(ilist, "   Phoebe", "phoebe", value, callback, cfdata,
         ++count, store_item);
   _add_ilist_entry(ilist, "Uranus", "uranus", value, callback, cfdata, ++count, store_item);
   _add_ilist_entry(ilist, "   Miranda", "miranda", value, callback, cfdata,
         ++count, store_item);
   _add_ilist_entry(ilist, "   Ariel", "ariel", value, callback, cfdata, ++count, store_item);
   _add_ilist_entry(ilist, "   Umbriel", "umbriel", value, callback, cfdata,
         ++count, store_item);
   _add_ilist_entry(ilist, "   Titania", "titania", value, callback, cfdata,
         ++count, store_item);
   _add_ilist_entry(ilist, "   Oberon", "oberon", value, callback, cfdata,
         ++count, store_item);
   _add_ilist_entry(ilist, "Neptune", "neptune", value, callback, cfdata,
         ++count, store_item);
   _add_ilist_entry(ilist, "   Triton", "triton", value, callback, cfdata,
         ++count, store_item);
   _add_ilist_entry(ilist, "   Nereid", "nereid", value, callback, cfdata,
         ++count, store_item);
   _add_ilist_entry(ilist, "Pluto", "pluto", value, callback, cfdata, ++count, store_item);
   _add_ilist_entry(ilist, "   Charon", "charon", value, callback, cfdata,
         ++count, store_item);
   _add_ilist_entry(ilist, "Random", "random", value, callback, cfdata, ++count, store_item);

   e_widget_ilist_go(ilist);
   e_widget_ilist_thaw(ilist);
   edje_thaw();
   evas_event_thaw(evas);
}