EAPI void * e_modapi_init(E_Module *m) { char buf[PATH_MAX]; #if HAVE_LOCALE_H setlocale(LC_ALL, ""); #endif snprintf(buf, sizeof(buf), "%s/locale", m->dir); bindtextdomain(PACKAGE, buf); bind_textdomain_codeset(PACKAGE, "UTF-8"); conf_item_edd = E_CONFIG_DD_NEW("TClock_Config_Item", Config_Item); #undef T #undef D #define T Config_Item #define D conf_item_edd E_CONFIG_VAL(D, T, id, STR); E_CONFIG_VAL(D, T, show_date, INT); E_CONFIG_VAL(D, T, show_time, INT); E_CONFIG_VAL(D, T, show_tip, INT); E_CONFIG_VAL(D, T, date_format, STR); E_CONFIG_VAL(D, T, time_format, STR); E_CONFIG_VAL(D, T, time_offset, STR); E_CONFIG_VAL(D, T, tip_format, STR); conf_edd = E_CONFIG_DD_NEW("TClock_Config", Config); #undef T #undef D #define T Config #define D conf_edd E_CONFIG_LIST(D, T, items, conf_item_edd); tclock_config = e_config_domain_load("module.tclock", conf_edd); if (!tclock_config) { Config_Item *ci; tclock_config = E_NEW(Config, 1); ci = E_NEW(Config_Item, 1); ci->id = eina_stringshare_add("0"); ci->show_date = 1; ci->show_time = 1; ci->show_tip = 1; ci->time_format = eina_stringshare_add("%T"); ci->time_offset = eina_stringshare_add("0"); ci->date_format = eina_stringshare_add("%d/%m/%y"); ci->tip_format = eina_stringshare_add("%d"); tclock_config->items = eina_list_append(tclock_config->items, ci); } tclock_config->mod_dir = eina_stringshare_add(m->dir); e_gadcon_provider_register(&_gc_class); return m; }
EAPI void * e_modapi_init(E_Module *m) { char buf[4095]; snprintf(buf, sizeof(buf), "%s/locale", e_module_dir_get(m)); bindtextdomain(PACKAGE, buf); bind_textdomain_codeset(PACKAGE, "UTF-8"); conf_item_edd = E_CONFIG_DD_NEW("Forecasts_Config_Item", Config_Item); #undef T #undef D #define T Config_Item #define D conf_item_edd E_CONFIG_VAL(D, T, id, STR); E_CONFIG_VAL(D, T, poll_time, DOUBLE); E_CONFIG_VAL(D, T, days, DOUBLE); E_CONFIG_VAL(D, T, degrees, INT); E_CONFIG_VAL(D, T, host, STR); E_CONFIG_VAL(D, T, code, STR); E_CONFIG_VAL(D, T, show_text, INT); E_CONFIG_VAL(D, T, popup_on_hover, INT); E_CONFIG_VAL(D, T, by_code, INT); conf_edd = E_CONFIG_DD_NEW("Forecasts_Config", Config); #undef T #undef D #define T Config #define D conf_edd E_CONFIG_LIST(D, T, items, conf_item_edd); forecasts_config = e_config_domain_load("module.forecasts", conf_edd); if (!forecasts_config) { Config_Item *ci; forecasts_config = E_NEW(Config, 1); ci = E_NEW(Config_Item, 1); ci->poll_time = 60.0; ci->days = 15.0; ci->degrees = DEGREES_C; ci->host = eina_stringshare_add("query.yahooapis.com"); ci->code = eina_stringshare_add(DEFAULT_LOCATION); ci->id = eina_stringshare_add("0"); ci->show_text = 1; ci->popup_on_hover = 1; forecasts_config->items = eina_list_append(forecasts_config->items, ci); } _forecasts_get_proxy(); forecasts_config->module = m; e_gadcon_provider_register(&_gadcon_class); return m; }
EAPI void * e_modapi_init(E_Module *m) { Mod *mod; char buf[4096]; mod = calloc(1, sizeof(Mod)); m->data = mod; mod->module = m; snprintf(buf, sizeof(buf), "%s/e-module-comp.edj", e_module_dir_get(m)); e_configure_registry_category_add("appearance", 10, _("Look"), NULL, "preferences-look"); e_configure_registry_item_add("appearance/comp", 120, _("Composite"), NULL, buf, e_int_config_comp_module); e_mod_comp_cfdata_edd_init(&(mod->conf_edd), &(mod->conf_match_edd)); mod->conf = e_config_domain_load("module.comp", mod->conf_edd); if (!mod->conf) _e_mod_config_new(m); if (!e_config->use_composite) { e_config->use_composite = 1; e_config_save_queue(); } /* XXX: disabled dropshadow module when comp is running */ { Eina_List *l; E_Module *m2; EINA_LIST_FOREACH(e_module_list(), l, m2) { if (m2->enabled && (!strcmp(m2->name, "dropshadow"))) e_module_disable(m2); } } /* XXX: update old configs. add config versioning */ if (mod->conf->first_draw_delay == 0) mod->conf->first_draw_delay = 0.20; _comp_mod = mod; if (!e_mod_comp_init()) { // FIXME: handle if comp init fails } e_module_delayed_set(m, 0); e_module_priority_set(m, -1000); return mod; }
EAPI void * e_modapi_init (E_Module * m) { char buf[4096]; snprintf (buf, sizeof (buf), "%s/locale", e_module_dir_get (m)); bindtextdomain (PACKAGE, buf); bind_textdomain_codeset (PACKAGE, "UTF-8"); conf_item_edd = E_CONFIG_DD_NEW ("MPDule_Config_Item", Config_Item); #undef T #undef D #define T Config_Item #define D conf_item_edd E_CONFIG_VAL (D, T, id, STR); E_CONFIG_VAL (D, T, poll_time, DOUBLE); E_CONFIG_VAL (D, T, hostname, STR); E_CONFIG_VAL (D, T, port, INT); E_CONFIG_VAL (D, T, show_popup, UCHAR); conf_edd = E_CONFIG_DD_NEW ("MPDule_Config", Config); #undef T #undef D #define T Config #define D conf_edd E_CONFIG_LIST (D, T, items, conf_item_edd); mpdule_config = e_config_domain_load ("module.mpdule", conf_edd); if (!mpdule_config) { Config_Item *ci; mpdule_config = E_NEW (Config, 1); ci = E_NEW (Config_Item, 1); ci->id = eina_stringshare_add ("0"); ci->poll_time = 1.0; ci->hostname = eina_stringshare_add ("localhost"); ci->port = 6600; ci->show_popup = 1; mpdule_config->items = eina_list_append (mpdule_config->items, ci); } mpdule_config->module = m; e_gadcon_provider_register (&_gc_class); return m; }
EAPI void * e_modapi_init (E_Module * m) { char buf[PATH_MAX]; snprintf (buf, sizeof (buf), "%s/locale", e_module_dir_get (m)); bindtextdomain (PACKAGE, buf); bind_textdomain_codeset (PACKAGE, "UTF-8"); conf_item_edd = E_CONFIG_DD_NEW ("Wlan_Config_Item", Config_Item); #undef T #undef D #define T Config_Item #define D conf_item_edd E_CONFIG_VAL (D, T, id, STR); E_CONFIG_VAL (D, T, device, STR); E_CONFIG_VAL (D, T, poll_time, DOUBLE); E_CONFIG_VAL (D, T, always_text, INT); E_CONFIG_VAL (D, T, show_percent, INT); conf_edd = E_CONFIG_DD_NEW ("Wlan_Config", Config); #undef T #undef D #define T Config #define D conf_edd E_CONFIG_LIST (D, T, items, conf_item_edd); wlan_config = e_config_domain_load ("module.wlan", conf_edd); if (!wlan_config) { Config_Item *ci; wlan_config = E_NEW (Config, 1); ci = E_NEW (Config_Item, 1); ci->id = eina_stringshare_add ("0"); ci->device = eina_stringshare_add ("wlan0"); ci->poll_time = 1.0; ci->always_text = 0; ci->show_percent = 1; wlan_config->items = eina_list_append (wlan_config->items, ci); } wlan_config->module = m; e_gadcon_provider_register (&_gc_class); return m; }
EAPI void * e_modapi_init (E_Module * m) { char buf[PATH_MAX]; snprintf (buf, sizeof (buf), "%s/locale", e_module_dir_get (m)); bindtextdomain (PACKAGE, buf); bind_textdomain_codeset (PACKAGE, "UTF-8"); conf_item_edd = E_CONFIG_DD_NEW ("Uptime_Config_Item", Config_Item); #undef T #undef D #define T Config_Item #define D conf_item_edd E_CONFIG_VAL (D, T, id, STR); E_CONFIG_VAL (D, T, check_interval, INT); E_CONFIG_VAL (D, T, update_interval, INT); conf_edd = E_CONFIG_DD_NEW ("Uptime_Config", Config); #undef T #undef D #define T Config #define D conf_edd E_CONFIG_LIST (D, T, items, conf_item_edd); ut_config = e_config_domain_load ("module.uptime", conf_edd); if (!ut_config) { Config_Item *ci; ut_config = E_NEW (Config, 1); ci = E_NEW (Config_Item, 1); ci->id = eina_stringshare_add ("0"); ci->check_interval = 60.0; ci->update_interval = 60.0; ut_config->items = eina_list_append (ut_config->items, ci); } ut_config->module = m; e_gadcon_provider_register (&_gc_class); return m; }
static void _e_mod_ds_config_load(void) { #undef T #undef D conf_edd = E_CONFIG_DD_NEW("Config", Config); #define T Config #define D conf_edd E_CONFIG_VAL(D, T, config_version, UINT); E_CONFIG_VAL(D, T, disable_ruler, UCHAR); E_CONFIG_VAL(D, T, disable_maximize, UCHAR); E_CONFIG_VAL(D, T, disable_transitions, UCHAR); E_CONFIG_VAL(D, T, disabled_transition_count, UINT); E_CONFIG_VAL(D, T, types.disable_PAN, UCHAR); E_CONFIG_VAL(D, T, types.disable_FADE_OUT, UCHAR); E_CONFIG_VAL(D, T, types.disable_FADE_IN, UCHAR); E_CONFIG_VAL(D, T, types.disable_BATMAN, UCHAR); E_CONFIG_VAL(D, T, types.disable_ZOOM_IN, UCHAR); E_CONFIG_VAL(D, T, types.disable_ZOOM_OUT, UCHAR); E_CONFIG_VAL(D, T, types.disable_GROW, UCHAR); E_CONFIG_VAL(D, T, types.disable_ROTATE_OUT, UCHAR); E_CONFIG_VAL(D, T, types.disable_ROTATE_IN, UCHAR); E_CONFIG_VAL(D, T, types.disable_SLIDE_SPLIT, UCHAR); E_CONFIG_VAL(D, T, types.disable_QUAD_SPLIT, UCHAR); E_CONFIG_VAL(D, T, types.disable_QUAD_MERGE, UCHAR); E_CONFIG_VAL(D, T, types.disable_BLINK, UCHAR); E_CONFIG_VAL(D, T, types.disable_VIEWPORT, UCHAR); ds_config = e_config_domain_load("module.compiz", conf_edd); if (ds_config) { if (!e_util_module_config_check("Compiz", ds_config->config_version, MOD_CONFIG_FILE_VERSION)) E_FREE(ds_config); } if (!ds_config) ds_config = E_NEW(Config, 1); ds_config->config_version = MOD_CONFIG_FILE_VERSION; }
E_API void * e_modapi_init(E_Module *m) { char buf[PATH_MAX]; snprintf(buf, sizeof(buf), "%s/e-module-quickaccess.edj", e_module_dir_get(m)); e_configure_registry_category_add("launcher", 80, _("Launcher"), NULL, "modules-launcher"); e_configure_registry_item_add("launcher/quickaccess", 1, _("Quickaccess"), NULL, buf, e_int_config_qa_module); qa_mod = E_NEW(Mod, 1); qa_mod->module = m; m->data = qa_mod; e_module_delayed_set(m, 0); conf_edd = e_qa_config_dd_new(); qa_config = e_config_domain_load("module.quickaccess", conf_edd); if (qa_config) { if (!e_util_module_config_check(_("Quickaccess"), qa_config->config_version, MOD_CONFIG_FILE_VERSION)) { e_qa_config_free(qa_config); qa_config = NULL; } } if (!qa_config) qa_config = e_qa_config_new(); qa_config->config_version = MOD_CONFIG_FILE_VERSION; _e_quick_access_log_dom = eina_log_domain_register("quickaccess", EINA_COLOR_ORANGE); eina_log_domain_level_set("quickaccess", EINA_LOG_LEVEL_ERR); if (!e_qa_init()) { _e_modapi_shutdown(); return NULL; } return m; }
/* * This is the first function called by e17 when you click the enable button */ EAPI void * e_modapi_init(E_Module *m) { /* Note-to-self, if you add a catagory, and you did not add any item * to it , IT WILL NOT BE DISPLAYED!!! */ //e_configure_registry_category_add("elive", 32, "Elive", NULL, // NULL); e_configure_registry_item_add("preferences/skeletor", 10, "Skeletor Configuration", NULL, "preferences-system-screen-resolution",e_int_config_skeletor_module); conf_item_edd = E_CONFIG_DD_NEW("Config_Item", Config_Item); #undef T #undef D #define T Config_Item #define D conf_item_edd E_CONFIG_VAL(D, T, id, STR); conf_edd = E_CONFIG_DD_NEW("Config", Config); #undef T #undef D #define T Config #define D conf_edd E_CONFIG_LIST(D, T, items, conf_item_edd); E_CONFIG_VAL(D, T, set, INT); skeletor_config = e_config_domain_load("module.skeletor", conf_edd); if(!skeletor_config) skeletor_config = E_NEW(Config, 1); skeletor_config->module = m; e_module_delayed_set(m, 1); return m; }
/* public functions */ void * e_modapi_init(E_Module *m) { char buff[PATH_MAX]; snprintf(buff, sizeof(buff), "%s/locale", m->dir); bindtextdomain(PACKAGE, buff); bind_textdomain_codeset(PACKAGE, "UTF-8"); item_edd = E_CONFIG_DD_NEW("Config_Item", Config_Item); E_CONFIG_VAL(item_edd, Config_Item, id, STR); E_CONFIG_VAL(item_edd, Config_Item, celcius, INT); E_CONFIG_VAL(item_edd, Config_Item, location, STR); E_CONFIG_VAL(item_edd, Config_Item, google, STR); E_CONFIG_VAL(item_edd, Config_Item, plugin, STR); E_CONFIG_VAL(item_edd, Config_Item, poll_time, DOUBLE); conf_edd = E_CONFIG_DD_NEW("Config", Config); E_CONFIG_VAL(conf_edd, Config, config_version, UINT); E_CONFIG_LIST(conf_edd, Config, items, item_edd); weather_cfg = e_config_domain_load("module.eweather", conf_edd); if (weather_cfg) { if (!e_util_module_config_check(D_("EWeather"), weather_cfg->config_version, MOD_CONFIG_FILE_VERSION)) { _weather_config_free(); weather_cfg = NULL; } } if (!weather_cfg) _weather_config_new(); weather_cfg->mod_dir = eina_stringshare_add(m->dir); _gc_register(); return m; }
EAPI void * e_modapi_init(E_Module *m) { char buf[4096]; Eina_List *l; snprintf(buf, sizeof(buf), "%s/locale", e_module_dir_get(m)); bindtextdomain(PACKAGE, buf); bind_textdomain_codeset(PACKAGE, "UTF-8"); _alarms_edd = E_CONFIG_DD_NEW("Alarm_Alarm", Alarm); #undef T #undef D #define T Alarm #define D _alarms_edd E_CONFIG_VAL(D, T, name, STR); E_CONFIG_VAL(D, T, state, SHORT); E_CONFIG_VAL(D, T, description, STR); E_CONFIG_VAL(D, T, autoremove, SHORT); E_CONFIG_VAL(D, T, open_popup, SHORT); E_CONFIG_VAL(D, T, run_program, SHORT); E_CONFIG_VAL(D, T, program, STR); E_CONFIG_VAL(D, T, sched.type, SHORT); E_CONFIG_VAL(D, T, sched.date_epoch, DOUBLE); E_CONFIG_VAL(D, T, sched.day_monday, SHORT); E_CONFIG_VAL(D, T, sched.day_tuesday, SHORT); E_CONFIG_VAL(D, T, sched.day_wenesday, SHORT); E_CONFIG_VAL(D, T, sched.day_thursday, SHORT); E_CONFIG_VAL(D, T, sched.day_friday, SHORT); E_CONFIG_VAL(D, T, sched.day_saturday, SHORT); E_CONFIG_VAL(D, T, sched.day_sunday, SHORT); E_CONFIG_VAL(D, T, sched.hour, SHORT); E_CONFIG_VAL(D, T, sched.minute, SHORT); E_CONFIG_VAL(D, T, snooze.hour, SHORT); E_CONFIG_VAL(D, T, snooze.minute, SHORT); E_CONFIG_VAL(D, T, snooze.remember, SHORT); _conf_edd = E_CONFIG_DD_NEW("Alarm_Config", Config); #undef T #undef D #define T Config #define D _conf_edd E_CONFIG_VAL(D, T, time_format, SHORT); E_CONFIG_VAL(D, T, alarms_state, SHORT); E_CONFIG_LIST(D, T, alarms, _alarms_edd); E_CONFIG_VAL(D, T, alarms_details, SHORT); E_CONFIG_VAL(D, T, alarms_autoremove_default, SHORT); E_CONFIG_VAL(D, T, alarms_open_popup_default, SHORT); E_CONFIG_VAL(D, T, alarms_run_program_default, SHORT); E_CONFIG_VAL(D, T, alarms_program_default, STR); E_CONFIG_VAL(D, T, config_version, SHORT); alarm_config = e_config_domain_load("module.alarm", _conf_edd); if (alarm_config) { if (alarm_config->config_version < CONFIG_VERSION) { snprintf(buf, sizeof(buf), D_("<hilight>Alarm module : Configuration Upgraded</hilight><br><br>" "Your configuration of alarm module<br>" "has been upgraded<br>" "Your settings and alarms were removed<br>" "Sorry for the inconvenience<br><br>" "(%d -> %d)"), alarm_config->config_version, CONFIG_VERSION); e_module_dialog_show(alarm_config->module, D_("Alarm Module version " MODULE_VERSION), buf); alarm_config = NULL; } else { if (alarm_config->config_version > CONFIG_VERSION) { snprintf(buf, sizeof(buf), D_("<hilight>Alarm module : Configuration Downgraded</hilight><br><br>" "Your configuration of Alarm module<br>" "has been downgraded<br>" "Your settings and alarms were removed<br>" "Sorry for the inconvenience<br><br>" "(%d ->%d)"), alarm_config->config_version, CONFIG_VERSION); e_module_dialog_show(alarm_config->module, D_("Alarm Module version " MODULE_VERSION), buf); alarm_config = NULL; } } } if (!alarm_config) { alarm_config = E_NEW(Config, 1); alarm_config->time_format = TIME_FORMAT_DEFAULT; alarm_config->alarms_state = ALARM_STATE_OFF; alarm_config->alarms_details = ALARMS_DETAILS_DEFAULT; alarm_config->alarms_autoremove_default = ALARMS_AUTOREMOVE_DEFAULT; alarm_config->alarms_open_popup_default = ALARMS_OPEN_POPUP_DEFAULT; alarm_config->alarms_run_program_default = ALARMS_RUN_PROGRAM_DEFAULT; alarm_config->config_version = CONFIG_VERSION; } E_CONFIG_LIMIT(alarm_config->time_format, TIME_FORMAT_12, TIME_FORMAT_24); E_CONFIG_LIMIT(alarm_config->alarms_details, 0, 1); E_CONFIG_LIMIT(alarm_config->alarms_autoremove_default, 0, 1); E_CONFIG_LIMIT(alarm_config->alarms_open_popup_default, 0, 1); /* set the number of ringing alarms */ for (l=alarm_config->alarms; l; l=eina_list_next(l)) { Alarm *al; al = eina_list_data_get(l); if (al->state == ALARM_STATE_RINGING) alarm_config->alarms_ringing_nb++; } /* set alarms state and check dates */ if (alarm_config->alarms) { for (l=alarm_config->alarms; l; l=eina_list_next(l)) { Alarm *al; al = eina_list_data_get(l); _alarm_check_date(al, 0); } alarm_config->alarms_ring_etimer = ecore_timer_add(ALARMS_CHECK_TIMER, _cb_alarms_ring_etimer, NULL); } //FIXME not sure about that, maybe must use edje directly to find the part if (!e_theme_category_find(THEME_IN_E)) { char buf[512]; snprintf(buf, sizeof(buf), "%s/alarm.edj", e_module_dir_get(m)); alarm_config->theme = strdup(buf); } alarm_config->module = m; e_gadcon_provider_register((const E_Gadcon_Client_Class *)&_gadcon_class); return alarm_config; }
EAPI void * e_modapi_init(E_Module *m) { Mod *mod; char buf[4096]; { Eina_List *l; E_Module *m2; EINA_LIST_FOREACH(e_module_list(), l, m2) { if (m2->enabled && (!strcmp(m2->name, "tiling"))) { e_util_dialog_internal(_("Physics"), _("Cowardly refusing to battle<br>" "with the Tiling module for control<br>" "of your windows. There can be only one!")); return NULL; } } } if (!ephysics_init()) return NULL; mod = calloc(1, sizeof(Mod)); m->data = mod; mod->module = m; snprintf(buf, sizeof(buf), "%s/e-module-physics.edj", e_module_dir_get(m)); e_configure_registry_category_add("appearance", 10, _("Look"), NULL, "preferences-look"); e_configure_registry_item_add("appearance/physics", 120, _("Physics"), NULL, buf, e_int_config_physics_module); mod->conf_edd = e_mod_physics_cfdata_edd_init(); mod->conf = e_config_domain_load("module.physics", mod->conf_edd); if (mod->conf) { if (!e_util_module_config_check(_("Physics"), mod->conf->config_version, MOD_CONFIG_FILE_VERSION)) { e_mod_cfdata_config_free(mod->conf); mod->conf = NULL; } } if (mod->conf) mod->conf->config_version = MOD_CONFIG_FILE_VERSION; else _e_mod_config_new(m); _physics_mod = mod; if (!e_mod_physics_init()) { e_util_dialog_internal(_("Physics Error"), _("The physics module could not be started")); e_modapi_shutdown(mod->module); return NULL; } e_module_delayed_set(m, 0); e_module_priority_set(m, -1000); return mod; }
int news_config_init(void) { _news_feed_edd = E_CONFIG_DD_NEW("News_Feed", News_Feed); #undef T #undef D #define T News_Feed #define D _news_feed_edd E_CONFIG_VAL(D, T, name, STR); E_CONFIG_VAL(D, T, name_ovrw, SHORT); E_CONFIG_VAL(D, T, language, STR); E_CONFIG_VAL(D, T, language_ovrw, SHORT); E_CONFIG_VAL(D, T, description, STR); E_CONFIG_VAL(D, T, description_ovrw, SHORT); E_CONFIG_VAL(D, T, url_home, STR); E_CONFIG_VAL(D, T, url_home_ovrw, SHORT); E_CONFIG_VAL(D, T, url_feed, STR); E_CONFIG_VAL(D, T, icon, STR); E_CONFIG_VAL(D, T, icon_ovrw, SHORT); E_CONFIG_VAL(D, T, important, SHORT); _news_feed_ref_edd = E_CONFIG_DD_NEW("News_Feed_Ref", News_Feed_Ref); #undef T #undef D #define T News_Feed_Ref #define D _news_feed_ref_edd E_CONFIG_VAL(D, T, category, STR); E_CONFIG_VAL(D, T, name, STR); _news_feed_category_edd = E_CONFIG_DD_NEW("News_Feed_Category", News_Feed_Category); #undef T #undef D #define T News_Feed_Category #define D _news_feed_category_edd E_CONFIG_VAL(D, T, name, STR); E_CONFIG_VAL(D, T, icon, STR); E_CONFIG_LIST(D, T, feeds, _news_feed_edd); _news_feed_lang_edd = E_CONFIG_DD_NEW("News_Feed_Lang", News_Feed_Lang); #undef T #undef D #define T News_Feed_Lang #define D _news_feed_lang_edd E_CONFIG_VAL(D, T, key, STR); E_CONFIG_VAL(D, T, name, STR); _news_item_edd = E_CONFIG_DD_NEW("News_Item", News_Config_Item); #undef T #undef D #define T News_Config_Item #define D _news_item_edd E_CONFIG_VAL(D, T, id, STR); E_CONFIG_LIST(D, T, feed_refs, _news_feed_ref_edd); E_CONFIG_VAL(D, T, view_mode, SHORT); E_CONFIG_VAL(D, T, openmethod, SHORT); E_CONFIG_VAL(D, T, browser_open_home, SHORT); _news_edd = E_CONFIG_DD_NEW("News", News_Config); #undef T #undef D #define T News_Config #define D _news_edd E_CONFIG_VAL(D, T, version, SHORT); E_CONFIG_LIST(D, T, feed.categories, _news_feed_category_edd); E_CONFIG_VAL(D, T, feed.timer_m, INT); E_CONFIG_VAL(D, T, feed.sort_name, INT); E_CONFIG_LIST(D, T, feed.langs, _news_feed_lang_edd); E_CONFIG_VAL(D, T, feed.langs_all, SHORT); E_CONFIG_VAL(D, T, feed.langs_notset, SHORT); E_CONFIG_VAL(D, T, proxy.enable, SHORT); E_CONFIG_VAL(D, T, proxy.host, STR); E_CONFIG_VAL(D, T, proxy.port, INT); E_CONFIG_VAL(D, T, viewer.vfeeds.unread_first, SHORT); E_CONFIG_VAL(D, T, viewer.varticles.unread_first, SHORT); E_CONFIG_VAL(D, T, viewer.varticles.sort_date, SHORT); E_CONFIG_VAL(D, T, viewer.vcontent.font_size, SHORT); E_CONFIG_VAL(D, T, viewer.vcontent.font_color, STR); E_CONFIG_VAL(D, T, viewer.vcontent.font_shadow, SHORT); E_CONFIG_VAL(D, T, viewer.vcontent.font_shadow_color, STR); E_CONFIG_VAL(D, T, popup_news.active, SHORT); E_CONFIG_VAL(D, T, popup_news.timer_s, INT); E_CONFIG_VAL(D, T, popup_other.on_timeout, SHORT); E_CONFIG_VAL(D, T, popup_other.timer_s, INT); E_CONFIG_LIST(D, T, items, _news_item_edd); news->config = e_config_domain_load("module.news", _news_edd); if (news->config) { if (news->config->version < NEWS_CONFIG_VERSION) { news_util_message_show(D_("<hilight>News module : Configuration Upgraded</hilight><br><br>" "Your configuration of news module<br>" "has been upgraded<br>" "Your settings were removed<br>" "Sorry for the inconvenience<br><br>" "(%d -> %d)"), news->config->version, NEWS_CONFIG_VERSION); news->config = NULL; } else { if (news->config->version > NEWS_CONFIG_VERSION) { news_util_message_show(D_("<hilight>News module : Configuration Downgraded</hilight><br><br>" "Your configuration of News module<br>" "has been downgraded<br>" "Your settings were removed<br>" "Sorry for the inconvenience<br><br>" "(%d ->%d)"), news->config->version, NEWS_CONFIG_VERSION); news->config = NULL; } } } if (!news->config) { News_Config *c; c = E_NEW(News_Config, 1); news->config = c; c->version = NEWS_CONFIG_VERSION; news_feed_all_restore(); c->feed.timer_m = NEWS_FEED_TIMER_DEFAULT; c->feed.sort_name = NEWS_FEED_SORT_NAME_DEFAULT; c->feed.langs = news_util_lang_detect(); c->feed.langs_all = NEWS_FEED_LANG_ALL_DEFAULT; c->feed.langs_notset = 1; if (news_util_proxy_detect()) c->proxy.enable = 1; else { c->proxy.host = NULL; c->proxy.port = NEWS_FEED_PROXY_PORT_DEFAULT; } c->viewer.vfeeds.unread_first = NEWS_VIEWER_VFEEDS_UNREAD_FIRST_DEFAULT; c->viewer.varticles.unread_first = NEWS_VIEWER_VARTICLES_UNREAD_FIRST_DEFAULT; c->viewer.varticles.sort_date = NEWS_VIEWER_VARTICLES_SORT_DATE_DEFAULT; c->viewer.vcontent.font_size = NEWS_VIEWER_VCONTENT_FONT_SIZE_DEFAULT; c->viewer.vcontent.font_color = eina_stringshare_add(NEWS_VIEWER_VCONTENT_FONT_COLOR_DEFAULT); c->viewer.vcontent.font_shadow = NEWS_VIEWER_VCONTENT_FONT_SHADOW_DEFAULT; c->viewer.vcontent.font_shadow_color = eina_stringshare_add(NEWS_VIEWER_VCONTENT_FONT_SHADOW_COLOR_DEFAULT); c->popup_news.active = NEWS_FEED_POPUP_NEWS_ACTIVE_DEFAULT; c->popup_news.timer_s = NEWS_FEED_POPUP_NEWS_TIMER_S_DEFAULT; c->popup_other.on_timeout = NEWS_FEED_POPUP_OTHER_ON_TIMEOUT_DEFAULT; c->popup_other.timer_s = NEWS_FEED_POPUP_OTHER_TIMER_S_DEFAULT; } E_CONFIG_LIMIT(news->config->feed.timer_m, NEWS_FEED_TIMER_MIN, NEWS_FEED_TIMER_MAX); E_CONFIG_LIMIT(news->config->feed.sort_name, 0, 1); E_CONFIG_LIMIT(news->config->proxy.enable, 0, 1); E_CONFIG_LIMIT(news->config->proxy.port, 1, 65535); E_CONFIG_LIMIT(news->config->viewer.vfeeds.unread_first, 0, 1); E_CONFIG_LIMIT(news->config->viewer.varticles.unread_first, 0, 1); E_CONFIG_LIMIT(news->config->viewer.varticles.sort_date, 0, 1); E_CONFIG_LIMIT(news->config->viewer.vcontent.font_size, NEWS_VIEWER_VCONTENT_FONT_SIZE_MIN, NEWS_VIEWER_VCONTENT_FONT_SIZE_MAX); E_CONFIG_LIMIT(news->config->viewer.vcontent.font_shadow, 0, 1); E_CONFIG_LIMIT(news->config->popup_news.timer_s, NEWS_POPUP_TIMER_S_MIN, NEWS_POPUP_TIMER_S_MAX); E_CONFIG_LIMIT(news->config->popup_other.on_timeout, 0, 1); E_CONFIG_LIMIT(news->config->popup_other.timer_s, NEWS_POPUP_TIMER_S_MIN, NEWS_POPUP_TIMER_S_MAX); return 1; }
EAPI void * e_modapi_init (E_Module * m) { char buf[4096]; snprintf (buf, sizeof (buf), "%s/locale", e_module_dir_get (m)); bindtextdomain (PACKAGE, buf); bind_textdomain_codeset (PACKAGE, "UTF-8"); conf_box_edd = E_CONFIG_DD_NEW ("Mail_Box_Config", Config_Box); #undef T #undef D #define T Config_Box #define D conf_box_edd E_CONFIG_VAL (D, T, name, STR); E_CONFIG_VAL (D, T, type, INT); E_CONFIG_VAL (D, T, port, INT); E_CONFIG_VAL (D, T, monitor, UCHAR); E_CONFIG_VAL (D, T, ssl, UCHAR); E_CONFIG_VAL (D, T, local, UCHAR); E_CONFIG_VAL (D, T, host, STR); E_CONFIG_VAL (D, T, user, STR); E_CONFIG_VAL (D, T, pass, STR); E_CONFIG_VAL (D, T, new_path, STR); E_CONFIG_VAL (D, T, cur_path, STR); E_CONFIG_VAL (D, T, use_exec, UCHAR); E_CONFIG_VAL (D, T, exec, STR); conf_item_edd = E_CONFIG_DD_NEW ("Mail_Config_Item", Config_Item); #undef T #undef D #define T Config_Item #define D conf_item_edd E_CONFIG_VAL (D, T, id, STR); E_CONFIG_VAL (D, T, show_label, UCHAR); E_CONFIG_VAL (D, T, check_time, DOUBLE); E_CONFIG_VAL (D, T, show_popup, UCHAR); E_CONFIG_VAL (D, T, show_popup_empty, UCHAR); E_CONFIG_LIST (D, T, boxes, conf_box_edd); conf_edd = E_CONFIG_DD_NEW ("Mail_Config", Config); #undef T #undef D #define T Config #define D conf_edd E_CONFIG_LIST (D, T, items, conf_item_edd); mail_config = e_config_domain_load ("module.mail", conf_edd); if (!mail_config) { Config_Item *ci; mail_config = E_NEW (Config, 1); ci = E_NEW (Config_Item, 1); ci->id = eina_stringshare_add ("0"); ci->show_label = 1; ci->check_time = 15.0; ci->show_popup = 1; ci->show_popup_empty = 0; ci->boxes = NULL; mail_config->items = eina_list_append (mail_config->items, ci); } mail_config->module = m; e_gadcon_provider_register (&_gc_class); return m; }
EAPI void * e_modapi_init(E_Module *m) { char buf[4096]; /* Set up a new configuration panel */ snprintf(buf, sizeof(buf), "%s/e-module-gadman.edj", m->dir); e_configure_registry_category_add("extensions", 90, _("Extensions"), NULL, "preferences-extensions"); e_configure_registry_item_add("extensions/gadman", 150, _("Gadgets"), NULL, buf, _config_gadman_module); /* Set this module to be loaded after all other modules, or we don't see modules loaded after this */ e_module_priority_set(m, 100); gadman_init(m); //Settings values Man->conf_edd = E_CONFIG_DD_NEW("Gadman_Config", Config); #undef T #undef D #define T Config #define D Man->conf_edd E_CONFIG_VAL(D, T, bg_type, INT); E_CONFIG_VAL(D, T, color_r, INT); E_CONFIG_VAL(D, T, color_g, INT); E_CONFIG_VAL(D, T, color_b, INT); E_CONFIG_VAL(D, T, color_a, INT); E_CONFIG_VAL(D, T, anim_bg, INT); E_CONFIG_VAL(D, T, anim_gad, INT); E_CONFIG_VAL(D, T, custom_bg, STR); Man->conf = e_config_domain_load("module.gadman", Man->conf_edd); if (!Man->conf) { Man->conf = E_NEW(Config, 1); Man->conf->bg_type = 0; Man->conf->color_r = 255; Man->conf->color_g = 255; Man->conf->color_b = 255; Man->conf->color_a = 255; Man->conf->anim_bg = 1; Man->conf->anim_gad = 1; Man->conf->custom_bg = NULL; } E_CONFIG_LIMIT(Man->conf->bg_type, 0, 5); E_CONFIG_LIMIT(Man->conf->color_r, 0, 255); E_CONFIG_LIMIT(Man->conf->color_g, 0, 255); E_CONFIG_LIMIT(Man->conf->color_b, 0, 255); E_CONFIG_LIMIT(Man->conf->color_a, 0, 255); E_CONFIG_LIMIT(Man->conf->anim_bg, 0, 1); E_CONFIG_LIMIT(Man->conf->anim_gad, 0, 1); /* Menu augmentation */ Man->icon_name = eina_stringshare_add(buf); Man->maug = NULL; Man->maug = e_int_menus_menu_augmentation_add_sorted ("config/1", _("Gadgets"), _gadman_maug_add, (void *)Man->icon_name, NULL, NULL); /* Create toggle action */ Man->action = e_action_add("gadman_toggle"); if (Man->action) { Man->action->func.go = _gadman_action_cb; e_action_predef_name_set(_("Gadgets"), _("Show/hide gadgets"), "gadman_toggle", NULL, NULL, 0); } gadman_update_bg(); return Man; }