Fix for gadcon update. Not added new gadcon functions.
SVN revision: 31732
This commit is contained in:
parent
135c0dd042
commit
d008eb0369
|
@ -144,6 +144,6 @@ _basic_apply_data(E_Config_Dialog * cfd, E_Config_Dialog_Data * cfdata)
|
||||||
ci->show_text = cfdata->show_text;
|
ci->show_text = cfdata->show_text;
|
||||||
|
|
||||||
e_config_save_queue();
|
e_config_save_queue();
|
||||||
_forecasts_config_updated(ci->id);
|
_forecasts_config_updated(ci);
|
||||||
return 1;
|
return 1;
|
||||||
}
|
}
|
||||||
|
|
106
e_mod_main.c
106
e_mod_main.c
|
@ -87,6 +87,7 @@ struct _Instance
|
||||||
int bufsize, cursize;
|
int bufsize, cursize;
|
||||||
|
|
||||||
E_Gadcon_Popup *popup;
|
E_Gadcon_Popup *popup;
|
||||||
|
Config_Item *ci;
|
||||||
};
|
};
|
||||||
|
|
||||||
struct _Forecasts
|
struct _Forecasts
|
||||||
|
@ -139,12 +140,11 @@ _gc_init(E_Gadcon * gc, const char *name, const char *id, const char *style)
|
||||||
E_Gadcon_Client *gcc;
|
E_Gadcon_Client *gcc;
|
||||||
Forecasts *w;
|
Forecasts *w;
|
||||||
Instance *inst;
|
Instance *inst;
|
||||||
Config_Item *ci;
|
|
||||||
|
|
||||||
inst = E_NEW(Instance, 1);
|
inst = E_NEW(Instance, 1);
|
||||||
|
|
||||||
ci = _forecasts_config_item_get(id);
|
inst->ci = _forecasts_config_item_get(id);
|
||||||
inst->area = evas_stringshare_add(ci->code);
|
inst->area = evas_stringshare_add(inst->ci->code);
|
||||||
|
|
||||||
w = _forecasts_new(gc->evas);
|
w = _forecasts_new(gc->evas);
|
||||||
w->inst = inst;
|
w->inst = inst;
|
||||||
|
@ -162,7 +162,7 @@ _gc_init(E_Gadcon * gc, const char *name, const char *id, const char *style)
|
||||||
evas_object_event_callback_add(inst->forecasts_obj, EVAS_CALLBACK_MOUSE_OUT,
|
evas_object_event_callback_add(inst->forecasts_obj, EVAS_CALLBACK_MOUSE_OUT,
|
||||||
_cb_mouse_out, inst);
|
_cb_mouse_out, inst);
|
||||||
|
|
||||||
if (!ci->show_text)
|
if (!inst->ci->show_text)
|
||||||
edje_object_signal_emit(inst->forecasts_obj, "e,state,description,hide", "e");
|
edje_object_signal_emit(inst->forecasts_obj, "e,state,description,hide", "e");
|
||||||
else
|
else
|
||||||
edje_object_signal_emit(inst->forecasts_obj, "e,state,description,show", "e");
|
edje_object_signal_emit(inst->forecasts_obj, "e,state,description,show", "e");
|
||||||
|
@ -187,7 +187,7 @@ _gc_init(E_Gadcon * gc, const char *name, const char *id, const char *style)
|
||||||
|
|
||||||
_forecasts_cb_check(inst);
|
_forecasts_cb_check(inst);
|
||||||
inst->check_timer =
|
inst->check_timer =
|
||||||
ecore_timer_add((double) ci->poll_time, _forecasts_cb_check, inst);
|
ecore_timer_add(inst->ci->poll_time, _forecasts_cb_check, inst);
|
||||||
return gcc;
|
return gcc;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -306,11 +306,9 @@ static void
|
||||||
_forecasts_menu_cb_configure(void *data, E_Menu * m, E_Menu_Item * mi)
|
_forecasts_menu_cb_configure(void *data, E_Menu * m, E_Menu_Item * mi)
|
||||||
{
|
{
|
||||||
Instance *inst;
|
Instance *inst;
|
||||||
Config_Item *ci;
|
|
||||||
|
|
||||||
inst = data;
|
inst = data;
|
||||||
ci = _forecasts_config_item_get(inst->gcc->id);
|
_config_forecasts_module(inst->ci);
|
||||||
_config_forecasts_module(ci);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
static Config_Item *
|
static Config_Item *
|
||||||
|
@ -436,21 +434,6 @@ e_modapi_shutdown(E_Module * m)
|
||||||
EAPI int
|
EAPI int
|
||||||
e_modapi_save(E_Module * m)
|
e_modapi_save(E_Module * m)
|
||||||
{
|
{
|
||||||
Evas_List *l;
|
|
||||||
|
|
||||||
for (l = forecasts_config->instances; l; l = l->next)
|
|
||||||
{
|
|
||||||
Instance *inst;
|
|
||||||
Config_Item *ci;
|
|
||||||
|
|
||||||
inst = l->data;
|
|
||||||
ci = _forecasts_config_item_get(inst->gcc->id);
|
|
||||||
|
|
||||||
if (ci->id)
|
|
||||||
evas_stringshare_del(ci->id);
|
|
||||||
ci->id = evas_stringshare_add(inst->gcc->id);
|
|
||||||
}
|
|
||||||
|
|
||||||
e_config_domain_save("module.forecasts", conf_edd, forecasts_config);
|
e_config_domain_save("module.forecasts", conf_edd, forecasts_config);
|
||||||
return 1;
|
return 1;
|
||||||
}
|
}
|
||||||
|
@ -532,10 +515,8 @@ static int
|
||||||
_forecasts_cb_check(void *data)
|
_forecasts_cb_check(void *data)
|
||||||
{
|
{
|
||||||
Instance *inst;
|
Instance *inst;
|
||||||
Config_Item *ci;
|
|
||||||
|
|
||||||
inst = data;
|
inst = data;
|
||||||
ci = _forecasts_config_item_get(inst->gcc->id);
|
|
||||||
|
|
||||||
if (inst->server)
|
if (inst->server)
|
||||||
{
|
{
|
||||||
|
@ -548,7 +529,7 @@ _forecasts_cb_check(void *data)
|
||||||
proxy.host, proxy.port, inst);
|
proxy.host, proxy.port, inst);
|
||||||
else
|
else
|
||||||
inst->server =
|
inst->server =
|
||||||
ecore_con_server_connect(ECORE_CON_REMOTE_SYSTEM, ci->host, 80, inst);
|
ecore_con_server_connect(ECORE_CON_REMOTE_SYSTEM, inst->ci->host, 80, inst);
|
||||||
|
|
||||||
return 1;
|
return 1;
|
||||||
}
|
}
|
||||||
|
@ -557,7 +538,6 @@ static int
|
||||||
_forecasts_server_add(void *data, int type, void *event)
|
_forecasts_server_add(void *data, int type, void *event)
|
||||||
{
|
{
|
||||||
Instance *inst;
|
Instance *inst;
|
||||||
Config_Item *ci;
|
|
||||||
Ecore_Con_Event_Server_Add *ev;
|
Ecore_Con_Event_Server_Add *ev;
|
||||||
char buf[1024];
|
char buf[1024];
|
||||||
char forecast[1024];
|
char forecast[1024];
|
||||||
|
@ -567,19 +547,18 @@ _forecasts_server_add(void *data, int type, void *event)
|
||||||
if (!inst)
|
if (!inst)
|
||||||
return 1;
|
return 1;
|
||||||
|
|
||||||
ci = _forecasts_config_item_get(inst->gcc->id);
|
|
||||||
ev = event;
|
ev = event;
|
||||||
if ((!inst->server) || (inst->server != ev->server))
|
if ((!inst->server) || (inst->server != ev->server))
|
||||||
return 1;
|
return 1;
|
||||||
|
|
||||||
if (ci->degrees == DEGREES_F)
|
if (inst->ci->degrees == DEGREES_F)
|
||||||
degrees = 'f';
|
degrees = 'f';
|
||||||
else
|
else
|
||||||
degrees = 'c';
|
degrees = 'c';
|
||||||
|
|
||||||
snprintf(forecast, sizeof(forecast), "/forecastrss?p=%s&u=%c", ci->code, degrees);
|
snprintf(forecast, sizeof(forecast), "/forecastrss?p=%s&u=%c", inst->ci->code, degrees);
|
||||||
snprintf(buf, sizeof(buf), "GET http://%s%s HTTP/1.1\r\nHost: %s\r\n\r\n",
|
snprintf(buf, sizeof(buf), "GET http://%s%s HTTP/1.1\r\nHost: %s\r\n\r\n",
|
||||||
ci->host, forecast, ci->host);
|
inst->ci->host, forecast, inst->ci->host);
|
||||||
DEBUG("Server: %s", buf);
|
DEBUG("Server: %s", buf);
|
||||||
ecore_con_server_send(inst->server, buf, strlen(buf));
|
ecore_con_server_send(inst->server, buf, strlen(buf));
|
||||||
return 0;
|
return 0;
|
||||||
|
@ -790,11 +769,9 @@ error:
|
||||||
void
|
void
|
||||||
_forecasts_converter(Instance *inst)
|
_forecasts_converter(Instance *inst)
|
||||||
{
|
{
|
||||||
Config_Item *ci;
|
|
||||||
int i, dir = -1;
|
int i, dir = -1;
|
||||||
|
|
||||||
ci = _forecasts_config_item_get(inst->gcc->id);
|
if ((inst->units.temp == 'F') && (inst->ci->degrees == DEGREES_C))
|
||||||
if ((inst->units.temp == 'F') && (ci->degrees == DEGREES_C))
|
|
||||||
{
|
{
|
||||||
dir = DEGREES_C;
|
dir = DEGREES_C;
|
||||||
inst->units.temp = 'C';
|
inst->units.temp = 'C';
|
||||||
|
@ -802,7 +779,7 @@ _forecasts_converter(Instance *inst)
|
||||||
snprintf(inst->units.pressure, 3, "mb");
|
snprintf(inst->units.pressure, 3, "mb");
|
||||||
snprintf(inst->units.speed, 4, "kph");
|
snprintf(inst->units.speed, 4, "kph");
|
||||||
}
|
}
|
||||||
else if ((inst->units.temp == 'C') && (ci->degrees == DEGREES_F))
|
else if ((inst->units.temp == 'C') && (inst->ci->degrees == DEGREES_F))
|
||||||
{
|
{
|
||||||
dir = DEGREES_F;
|
dir = DEGREES_F;
|
||||||
inst->units.temp = 'F';
|
inst->units.temp = 'F';
|
||||||
|
@ -885,54 +862,46 @@ _forecasts_display_set(Instance * inst, int ok)
|
||||||
}
|
}
|
||||||
|
|
||||||
void
|
void
|
||||||
_forecasts_config_updated(const char *id)
|
_forecasts_config_updated(Config_Item *ci)
|
||||||
{
|
{
|
||||||
Evas_List *l;
|
Evas_List *l;
|
||||||
Config_Item *ci;
|
|
||||||
char buf[4096];
|
char buf[4096];
|
||||||
|
|
||||||
if (!forecasts_config)
|
if (!forecasts_config)
|
||||||
return;
|
return;
|
||||||
ci = _forecasts_config_item_get(id);
|
|
||||||
for (l = forecasts_config->instances; l; l = l->next)
|
for (l = forecasts_config->instances; l; l = l->next)
|
||||||
{
|
{
|
||||||
Instance *inst;
|
Instance *inst;
|
||||||
|
|
||||||
inst = l->data;
|
inst = l->data;
|
||||||
if (!inst->gcc->id)
|
if (inst->ci != ci) continue;
|
||||||
continue;
|
int area_changed = 0;
|
||||||
if (!strcmp(inst->gcc->id, ci->id))
|
|
||||||
{
|
|
||||||
int area_changed = 0;
|
|
||||||
|
|
||||||
if (inst->area && strcmp(inst->area, ci->code))
|
if (inst->area && strcmp(inst->area, inst->ci->code))
|
||||||
area_changed = 1;
|
area_changed = 1;
|
||||||
|
|
||||||
if (inst->area) evas_stringshare_del(inst->area);
|
if (inst->area) evas_stringshare_del(inst->area);
|
||||||
inst->area = evas_stringshare_add(ci->code);
|
inst->area = evas_stringshare_add(inst->ci->code);
|
||||||
_forecasts_converter(inst);
|
_forecasts_converter(inst);
|
||||||
_forecasts_popup_content_create(inst);
|
_forecasts_popup_content_create(inst);
|
||||||
|
|
||||||
snprintf(buf, sizeof(buf), "%d°%c", inst->condition.temp, inst->units.temp);
|
snprintf(buf, sizeof(buf), "%d°%c", inst->condition.temp, inst->units.temp);
|
||||||
edje_object_part_text_set(inst->forecasts->forecasts_obj, "e.text.temp", buf);
|
edje_object_part_text_set(inst->forecasts->forecasts_obj, "e.text.temp", buf);
|
||||||
|
|
||||||
if (!ci->show_text)
|
if (!inst->ci->show_text)
|
||||||
edje_object_signal_emit(inst->forecasts_obj, "e,state,description,hide", "e");
|
edje_object_signal_emit(inst->forecasts_obj, "e,state,description,hide", "e");
|
||||||
else
|
else
|
||||||
edje_object_signal_emit(inst->forecasts_obj, "e,state,description,show", "e");
|
edje_object_signal_emit(inst->forecasts_obj, "e,state,description,show", "e");
|
||||||
|
|
||||||
if (area_changed)
|
|
||||||
_forecasts_cb_check(inst);
|
|
||||||
if (!inst->check_timer)
|
|
||||||
inst->check_timer =
|
|
||||||
ecore_timer_add((double) ci->poll_time, _forecasts_cb_check,
|
|
||||||
inst);
|
|
||||||
else
|
|
||||||
ecore_timer_interval_set(inst->check_timer,
|
|
||||||
(double) ci->poll_time);
|
|
||||||
|
|
||||||
break;
|
if (area_changed)
|
||||||
}
|
_forecasts_cb_check(inst);
|
||||||
|
if (!inst->check_timer)
|
||||||
|
inst->check_timer =
|
||||||
|
ecore_timer_add(inst->ci->poll_time, _forecasts_cb_check,
|
||||||
|
inst);
|
||||||
|
else
|
||||||
|
ecore_timer_interval_set(inst->check_timer,
|
||||||
|
inst->ci->poll_time);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -1093,8 +1062,7 @@ static void
|
||||||
_cb_mouse_in(void *data, Evas *e, Evas_Object *obj, void *event_info)
|
_cb_mouse_in(void *data, Evas *e, Evas_Object *obj, void *event_info)
|
||||||
{
|
{
|
||||||
Instance *inst;
|
Instance *inst;
|
||||||
int ww, wh;
|
|
||||||
|
|
||||||
if (!(inst = data)) return;
|
if (!(inst = data)) return;
|
||||||
e_gadcon_popup_show(inst->popup);
|
e_gadcon_popup_show(inst->popup);
|
||||||
}
|
}
|
||||||
|
|
|
@ -37,7 +37,7 @@ EAPI int e_modapi_save(E_Module *m);
|
||||||
EAPI int e_modapi_about(E_Module *m);
|
EAPI int e_modapi_about(E_Module *m);
|
||||||
|
|
||||||
void _config_forecasts_module(Config_Item *ci);
|
void _config_forecasts_module(Config_Item *ci);
|
||||||
void _forecasts_config_updated(const char *id);
|
void _forecasts_config_updated(Config_Item *ci);
|
||||||
|
|
||||||
extern Config *forecasts_config;
|
extern Config *forecasts_config;
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue