Пример #1
0
static void
_eco_match_click_cb(void *data)
{
  Eco_Option *opt;
  int sel;
  const char *match;
  
  /* remember changes to the last selected item */
  opt = eco_config_option_list_nth(cfg_screen, str_effects, selected);
  if (opt) opt->intValue = effect;
  
  opt = eco_config_option_list_nth(cfg_screen, str_durations, selected);
  if (opt) opt->intValue = duration;

  opt = eco_config_option_list_nth(cfg_screen, str_matches, selected);
  match = e_widget_ilist_nth_label_get(o_matches, selected);
  if (opt && match)
    {
      eco_string_free(opt->stringValue);
      opt->stringValue = eina_stringshare_add(match);
    }
  
  /* set stored values for selected match */
  sel = e_widget_ilist_selected_get(o_matches);
  opt = eco_config_option_list_nth(cfg_screen, str_durations, sel);
  if (opt)
    {
      e_widget_slider_value_int_set(o_duration, opt->intValue);
      e_widget_disabled_set(o_duration, 0);
    }
  opt = eco_config_option_list_nth(cfg_screen, str_effects, sel);
  if (opt)
    {
      e_widget_radio_toggle_set(o_effect[opt->intValue], 1);
    }
  selected = sel;
} 
Пример #2
0
/*
 * Load the data for the XPlanet tab.
 * Currently there's only one config allowed, but this will
 * be increased in future.
 */
static void _populate_xplanet_page(E_Config_Dialog_Data *cfdata,
      int config_index)
{
   Xplanet_Config *xplanet_config;
   char text_value[256];

   xplanet_config = eina_list_nth(eplanet_conf->xplanet_configs, config_index);
   if (xplanet_config)
   {
      cfdata->local_xplanet.body = xplanet_config->body;
      cfdata->local_xplanet.origin = xplanet_config->origin;
      cfdata->local_xplanet.source_type = xplanet_config->source_type;
      cfdata->local_xplanet.projection = xplanet_config->projection;
      cfdata->local_xplanet.viewpos_type = xplanet_config->viewpos_type;
      cfdata->local_xplanet.viewpos_lat = xplanet_config->viewpos_lat;
      cfdata->local_xplanet.viewpos_lon = xplanet_config->viewpos_lon;
      cfdata->local_xplanet.use_localtime = xplanet_config->use_localtime;
      cfdata->local_xplanet.localtime = xplanet_config->localtime;
      cfdata->local_xplanet.viewpos_file = xplanet_config->viewpos_file;
      cfdata->local_xplanet.show_label = xplanet_config->show_label;
      cfdata->local_xplanet.label_text = xplanet_config->label_text;
      cfdata->local_xplanet.label_time = xplanet_config->label_time;
      cfdata->local_xplanet.label_pos = xplanet_config->label_pos;
      cfdata->local_xplanet.label_pos_other = xplanet_config->label_pos_other;
      cfdata->local_xplanet.use_config = xplanet_config->use_config;
      cfdata->local_xplanet.config_name = xplanet_config->config_name;
      cfdata->local_xplanet.extra_options = xplanet_config->extra_options;

      if (cfdata->local_xplanet.localtime > 23)
         cfdata->local_xplanet.localtime = 12;

      _fill_planet_ilist(cfdata->gui.o_body_ilist, cfdata->local_xplanet.body,
            _cb_target, cfdata, &(cfdata->body_item));

      if (cfdata->local_xplanet.source_type == SOURCE_ORIGIN)
      {
         _fill_planet_ilist(cfdata->gui.o_source_ilist,
               cfdata->local_xplanet.origin, _cb_source, cfdata, &(cfdata->source_item));
         e_widget_radio_toggle_set(cfdata->gui.o_origin_toggle, 1);
         e_widget_radio_toggle_set(cfdata->gui.o_projection_toggle, 0);
      }
      else
      {
         _fill_projection_ilist(cfdata->gui.o_source_ilist,
               cfdata->local_xplanet.projection, cfdata, &(cfdata->source_item));
         e_widget_radio_toggle_set(cfdata->gui.o_origin_toggle, 0);
         e_widget_radio_toggle_set(cfdata->gui.o_projection_toggle, 1);
      }

      e_widget_radio_toggle_set(cfdata->gui.o_viewpos_latlon,
            (cfdata->local_xplanet.viewpos_type == VIEWPOS_LATLON));
      e_widget_radio_toggle_set(cfdata->gui.o_viewpos_random,
            (cfdata->local_xplanet.viewpos_type == VIEWPOS_RANDOM));
      e_widget_radio_toggle_set(cfdata->gui.o_viewpos_file,
            (cfdata->local_xplanet.viewpos_type == VIEWPOS_FILE));

      sprintf(text_value, "%1g", cfdata->local_xplanet.viewpos_lat);
      e_widget_entry_text_set(cfdata->gui.o_viewpos_lat, text_value);

      sprintf(text_value, "%1g", cfdata->local_xplanet.viewpos_lon);
      e_widget_entry_text_set(cfdata->gui.o_viewpos_lon, text_value);

      sprintf(text_value, "%s", cfdata->local_xplanet.viewpos_file);
      e_widget_entry_text_set(cfdata->gui.o_viewpos_file_val, text_value);

      e_widget_check_checked_set(cfdata->gui.o_use_localtime, cfdata->local_xplanet.use_localtime);
      e_widget_slider_value_int_set(cfdata->gui.o_localtime, cfdata->local_xplanet.localtime);

      cfdata->gui.show_label = cfdata->local_xplanet.show_label;
      e_widget_check_checked_set(cfdata->gui.o_show_label,
            cfdata->gui.show_label);

      if (cfdata->local_xplanet.label_text) sprintf(text_value, "%s",
            cfdata->local_xplanet.label_text);
      else sprintf(text_value, "%s", "");

      e_widget_entry_text_set(cfdata->gui.o_label_text, text_value);

      e_widget_radio_toggle_set(cfdata->gui.o_label_time_local_toggle,
            (cfdata->local_xplanet.label_time == LABEL_TIME_LOCAL));
      e_widget_radio_toggle_set(cfdata->gui.o_label_time_gmt_toggle,
            (cfdata->local_xplanet.label_time == LABEL_TIME_GMT));

      e_widget_radio_toggle_set(cfdata->gui.o_label_pos_tl_toggle,
            (cfdata->local_xplanet.label_pos == LABEL_POS_TL));
      e_widget_radio_toggle_set(cfdata->gui.o_label_pos_tr_toggle,
            (cfdata->local_xplanet.label_pos == LABEL_POS_TR));
      e_widget_radio_toggle_set(cfdata->gui.o_label_pos_bl_toggle,
            (cfdata->local_xplanet.label_pos == LABEL_POS_BL));
      e_widget_radio_toggle_set(cfdata->gui.o_label_pos_br_toggle,
            (cfdata->local_xplanet.label_pos == LABEL_POS_BR));
      e_widget_radio_toggle_set(cfdata->gui.o_label_pos_other_toggle,
            (cfdata->local_xplanet.label_pos == LABEL_POS_OTHER));

      if (cfdata->local_xplanet.label_pos_other) sprintf(text_value, "%s",
            cfdata->local_xplanet.label_pos_other);
      else sprintf(text_value, "%s", "");

      e_widget_entry_text_set(cfdata->gui.o_label_pos_other_text, text_value);

      e_widget_check_checked_set(cfdata->gui.o_config_check,
            cfdata->local_xplanet.use_config);
      if (cfdata->local_xplanet.config_name) sprintf(text_value, "%s",
            cfdata->local_xplanet.config_name);
      else sprintf(text_value, "%s", "");

      e_widget_entry_text_set(cfdata->gui.o_config_name, text_value);

      if (cfdata->local_xplanet.extra_options) sprintf(text_value, "%s",
            cfdata->local_xplanet.extra_options);
      else sprintf(text_value, "%s", "");

      e_widget_entry_text_set(cfdata->gui.o_extra_options, text_value);

      _cb_source_type(cfdata, NULL, NULL);
      _cb_show_label(cfdata, NULL, NULL);
      _cb_label_pos(cfdata, NULL, NULL);
      _cb_set_localtime(cfdata, NULL, NULL);
   }
}
Пример #3
0
/* Page creation functions */
static void
eco_config_animation_page(void *data)
{
  int val = 0;
  int max = 6;
  selected = -1;
    
  ECO_PAGE_BEGIN("animation");
  
  ECO_PAGE_TABLE(_("Window Match"));
  ECO_CREATE_LIST_MATCH(0, str_matches, 0, 0);
  /* to remember previously selected item */
  if (e_widget_ilist_count(o_matches) > 0) selected = 0;
  ECO_PAGE_TABLE_END;

  ECO_PAGE_TABLE(_("Animation duration"));
  o = e_widget_label_add(cfdata->evas, _("Duration"));
  e_widget_frametable_object_append(ta, o, 0, 0, 1, 1, 1, 0, 0, 0);
  o_duration = e_widget_slider_add(cfdata->evas, 1, 0, "%1.0f ms", 50, 2000,
				   1.0, 0, NULL, &duration, 0);
  e_widget_disabled_set(o_duration, 1);					\
  e_widget_frametable_object_append(ta, o_duration, 1, 0, 1, 1, 1, 0, 1, 0);
  
  opt = eco_config_option_list_nth(cfg_screen, str_durations, 0);
  if (opt)
    {      
      e_widget_slider_value_int_set(o_duration, opt->intValue);
      e_widget_disabled_set(o_duration, 0);
    }
  ECO_PAGE_TABLE_END;
  
  ECO_PAGE_TABLE( _("Animation for selected match"));
  opt = eco_config_option_list_nth(cfg_screen, str_effects, 0);
  if (opt) effect = opt->intValue;
  group = e_widget_radio_group_new(&effect);
  for (i = 0; i < effect_cnt; i++)					
    {								
      o_effect[i] = e_widget_radio_add(cfdata->evas, effect_names[i], i, group);
      e_widget_frametable_object_append(ta, o_effect[i], (i/max), (i%max),
					1, 1, 1, 0, 1, 0);
      if (effect == i) e_widget_radio_toggle_set(o_effect[i], 1);	
    }
  ECO_PAGE_TABLE_END;
  
  ECO_PAGE_TABLE( _("Animation random pool"));
  opt = eco_config_option_get(cfg_screen, str_randoms); 

  for (i = 0; i < effect_cnt; i++)  random_effect[i] = 0;
  
  for (l = opt->listValue; l; l = l->next)
    {
      item = l->data;
      random_effect[item->intValue] = 1;
    }
  
  for (i = 0; i < effect_cnt; i++)					
    {								
      o = e_widget_check_add(cfdata->evas, effect_names[i], &random_effect[i]);
      e_widget_frametable_object_append(ta, o, (i/max), (i%max),
					1, 1, 1, 0, 1, 0);
    }
  ECO_PAGE_TABLE_END;
  ECO_PAGE_END;
}
Пример #4
0
static Evas_Object *
_advanced_create_widgets(E_Config_Dialog *cfd, Evas *evas, E_Config_Dialog_Data *cfdata) 
{
   Evas_Object *o, *o2, *of, *of2, *ob;
   E_Radio_Group *rg;

   o = e_widget_table_add(evas, 0);

   o2 = e_widget_list_add(evas, 0, 0);

   of = e_widget_frametable_add(evas, D_("Feeds"), 0);

   ob = e_widget_label_add(evas, D_("Timer"));
   e_widget_frametable_object_append(of, ob, 0, 0, 1, 1, 1, 1, 1, 0);
   ob = e_widget_slider_add(evas, 1, 0, D_("%1.0f min"),
			    (float)NEWS_FEED_TIMER_MIN, (float)NEWS_FEED_TIMER_MAX,
			    1.0, 0, NULL, &(cfdata->feed.timer_m), 70);
   e_widget_frametable_object_append(of, ob, 1, 0, 1, 1, 1, 1, 1, 0);
   ob = e_widget_check_add(evas, D_("Sort lists by name (disable Move action)"), &(cfdata->feed.sort_name));
   e_widget_frametable_object_append(of, ob, 0, 1, 2, 1, 1, 1, 1, 0);

   e_widget_list_object_append(o2, of, 1, 1, 0.5);

   of = e_widget_framelist_add(evas, D_("Browser"), 0);

   ob = e_widget_label_add(evas, D_("Uses xdg-open script, from freedesktop.org"));
   e_widget_framelist_object_append(of, ob);

   e_widget_list_object_append(o2, of, 1, 1, 0.5);

   of = e_widget_frametable_add(evas, D_("Popup On News"), 0);

   rg = e_widget_radio_group_new(&(cfdata->popup_news.active));
   ob = e_widget_radio_add(evas, D_("Never"),
			   NEWS_FEED_POPUP_NEWS_ACTIVE_NO, rg);
   //TODO: NOT IMPLEMENTED YET
   e_widget_radio_toggle_set(ob, 0);
   e_widget_disabled_set(ob, 1);
   e_widget_frametable_object_append(of, ob, 0, 0, 1, 1, 1, 1, 1, 0);
   ob = e_widget_radio_add(evas, D_("Only on urgent feeds"),
			   NEWS_FEED_POPUP_NEWS_ACTIVE_URGENT, rg);
   //TODO: NOT IMPLEMENTED YET
   e_widget_radio_toggle_set(ob, 0);
   e_widget_disabled_set(ob, 1);
   e_widget_frametable_object_append(of, ob, 1, 0, 1, 1, 1, 1, 1, 0);
   ob = e_widget_radio_add(evas, D_("On all feeds"),
			   NEWS_FEED_POPUP_NEWS_ACTIVE_ALL, rg);
   //TODO: NOT IMPLEMENTED YET
   e_widget_radio_toggle_set(ob, 0);
   e_widget_disabled_set(ob, 1);
   e_widget_frametable_object_append(of, ob, 1, 1, 1, 1, 1, 1, 1, 0);

   ob = e_widget_label_add(evas, D_("Timer"));
   e_widget_frametable_object_append(of, ob, 0, 2, 1, 1, 1, 1, 1, 0);
   ob = e_widget_slider_add(evas, 1, 0, D_("%1.0f s"),
			    (float)NEWS_POPUP_TIMER_S_MIN,
			    (float)NEWS_POPUP_TIMER_S_MAX,
			    1.0, 0, NULL, &(cfdata->popup_news.timer_s), 70);
   e_widget_frametable_object_append(of, ob, 1, 2, 1, 1, 1, 1, 1, 0);

   e_widget_list_object_append(o2, of, 1, 1, 0.5);

   of = e_widget_frametable_add(evas, D_("Popup On Warning / Error"), 0);

   //TODO: NOT IMPLEMENTED YET
   news->config->popup_other.on_timeout = 0;
   cfdata->popup_other.on_timeout = 0;
   ob = e_widget_check_add(evas, D_("Show on timeout ?"), &(cfdata->popup_other.on_timeout));
   //TODO: NOT IMPLEMENTED YET
   e_widget_disabled_set(ob, 1);
   e_widget_frametable_object_append(of, ob, 0, 0, 2, 1, 1, 0, 1, 0);

   ob = e_widget_label_add(evas, D_("Timer"));
   e_widget_frametable_object_append(of, ob, 0, 1, 1, 1, 1, 1, 1, 0);
   ob = e_widget_slider_add(evas, 1, 0, D_("%1.0f s"),
			    (float)NEWS_POPUP_TIMER_S_MIN,
			    (float)NEWS_POPUP_TIMER_S_MAX,
			    1.0, 0, NULL, &(cfdata->popup_other.timer_s), 70);
   e_widget_frametable_object_append(of, ob, 1, 1, 1, 1, 1, 1, 1, 0);

   e_widget_list_object_append(o2, of, 1, 1, 0.5);

   e_widget_table_object_append(o, o2, 0, 0, 1, 1, 1, 1, 1, 1);


   o2 = e_widget_list_add(evas, 0, 0);

   of = e_widget_frametable_add(evas, D_("News Viewer"), 0);

   ob = e_widget_check_add(evas, D_("Unread feeds first"), &(cfdata->viewer.vfeeds.unread_first));
   e_widget_frametable_object_append(of, ob, 0, 0, 1, 1, 1, 0, 1, 0);
   ob = e_widget_check_add(evas, D_("Unread articles first"), &(cfdata->viewer.varticles.unread_first));
   e_widget_frametable_object_append(of, ob, 1, 0, 1, 1, 1, 0, 1, 0);
   ob = e_widget_check_add(evas, D_("Sort articles by date"), &(cfdata->viewer.varticles.sort_date));
   e_widget_frametable_object_append(of, ob, 1, 1, 1, 1, 1, 0, 1, 0);

   of2 = e_widget_frametable_add(evas, D_("Font"), 0);

   ob = e_widget_slider_add(evas, 1, 0, D_("%1.0f"), NEWS_VIEWER_VCONTENT_FONT_SIZE_MIN, NEWS_VIEWER_VCONTENT_FONT_SIZE_MAX, 1.0, 0, NULL, &(cfdata->viewer.vcontent.font_size), 70);
   e_widget_frametable_object_append(of2, ob, 0, 0, 1, 1, 1, 0, 1, 0);

   ob = e_widget_color_well_add(evas, cfdata->viewer.vcontent.font_color, 1);
   cfdata->color_viewer_font = ob;
   e_widget_on_change_hook_set(ob, _cb_color_viewer_font_change, cfdata);
   e_widget_frametable_object_append(of2, ob, 0, 1, 1, 1, 1, 0, 1, 0);

   ob = e_widget_check_add(evas, D_("Font Shadow"), &cfdata->viewer.vcontent.font_shadow);
   e_widget_frametable_object_append(of2, ob, 1, 0, 1, 1, 1, 0, 1, 0);

   ob = e_widget_color_well_add(evas, cfdata->viewer.vcontent.font_shadow_color, 1);
   cfdata->color_viewer_font_shadow = ob;
   e_widget_on_change_hook_set(ob, _cb_color_viewer_font_shadow_change, cfdata);
   e_widget_frametable_object_append(of2, ob, 1, 1, 1, 1, 1, 0, 1, 0);

   e_widget_frametable_object_append(of, of2, 0, 2, 2, 1, 1, 0, 1, 0);

   e_widget_list_object_append(o2, of, 1, 1, 0.0);

   of = e_widget_frametable_add(evas, D_("Proxy"), 0);

   ob = e_widget_check_add(evas, D_("Enable"), &(cfdata->proxy.enable));
   e_widget_frametable_object_append(of, ob, 0, 0, 2, 1, 1, 0, 0, 0);
   ob = e_widget_label_add(evas, D_("Host"));
   e_widget_frametable_object_append(of, ob, 0, 1, 1, 1, 1, 0, 0, 0);
   ob = e_widget_entry_add(evas, &(cfdata->proxy.host), NULL, NULL, NULL);
   e_widget_frametable_object_append(of, ob, 1, 1, 1, 1, 1, 0, 1, 0);
   ob = e_widget_label_add(evas, D_("Port"));
   e_widget_frametable_object_append(of, ob, 0, 2, 1, 1, 1, 0, 0, 0);
   ob = e_widget_entry_add(evas, &(cfdata->proxy.port), NULL, NULL, NULL);
   e_widget_frametable_object_append(of, ob, 1, 2, 1, 1, 1, 0, 1, 0);

   e_widget_list_object_append(o2, of, 1, 1, 1.0);

   e_widget_table_object_append(o, o2, 1, 0, 1, 1, 1, 1, 1, 1);

   return o;
}