parent
1869a1bc64
commit
22392f1b60
|
@ -11,16 +11,16 @@ struct _E_Config_Dialog_Data
|
|||
int popup_on_hover;
|
||||
};
|
||||
|
||||
static void *_create_data(E_Config_Dialog * cfd);
|
||||
static void _free_data(E_Config_Dialog * cfd, E_Config_Dialog_Data * cfdata);
|
||||
static Evas_Object *_basic_create_widgets(E_Config_Dialog * cfd, Evas * evas,
|
||||
E_Config_Dialog_Data * cfdata);
|
||||
static int _basic_apply_data(E_Config_Dialog * cfd,
|
||||
E_Config_Dialog_Data * cfdata);
|
||||
static void _fill_data(Config_Item * ci, E_Config_Dialog_Data * cfdata);
|
||||
static void *_create_data(E_Config_Dialog *cfd);
|
||||
static void _free_data(E_Config_Dialog *cfd, E_Config_Dialog_Data *cfdata);
|
||||
static Evas_Object *_basic_create_widgets(E_Config_Dialog *cfd, Evas *evas,
|
||||
E_Config_Dialog_Data *cfdata);
|
||||
static int _basic_apply_data(E_Config_Dialog *cfd,
|
||||
E_Config_Dialog_Data *cfdata);
|
||||
static void _fill_data(Config_Item *ci, E_Config_Dialog_Data *cfdata);
|
||||
|
||||
void
|
||||
_config_forecasts_module(Config_Item * ci)
|
||||
_config_forecasts_module(Config_Item *ci)
|
||||
{
|
||||
E_Config_Dialog *cfd;
|
||||
E_Config_Dialog_View *v;
|
||||
|
@ -44,7 +44,7 @@ _config_forecasts_module(Config_Item * ci)
|
|||
}
|
||||
|
||||
static void
|
||||
_fill_data(Config_Item * ci, E_Config_Dialog_Data * cfdata)
|
||||
_fill_data(Config_Item *ci, E_Config_Dialog_Data *cfdata)
|
||||
{
|
||||
cfdata->poll_time = (ci->poll_time / 60.0);
|
||||
cfdata->degrees = ci->degrees;
|
||||
|
@ -55,7 +55,7 @@ _fill_data(Config_Item * ci, E_Config_Dialog_Data * cfdata)
|
|||
}
|
||||
|
||||
static void *
|
||||
_create_data(E_Config_Dialog * cfd)
|
||||
_create_data(E_Config_Dialog *cfd)
|
||||
{
|
||||
E_Config_Dialog_Data *cfdata;
|
||||
Config_Item *ci;
|
||||
|
@ -68,7 +68,7 @@ _create_data(E_Config_Dialog * cfd)
|
|||
}
|
||||
|
||||
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 (!forecasts_config)
|
||||
return;
|
||||
|
@ -79,8 +79,8 @@ _free_data(E_Config_Dialog * cfd, E_Config_Dialog_Data * cfdata)
|
|||
}
|
||||
|
||||
static Evas_Object *
|
||||
_basic_create_widgets(E_Config_Dialog * cfd, Evas * evas,
|
||||
E_Config_Dialog_Data * cfdata)
|
||||
_basic_create_widgets(E_Config_Dialog *cfd, Evas *evas,
|
||||
E_Config_Dialog_Data *cfdata)
|
||||
{
|
||||
Evas_Object *o, *of, *ob;
|
||||
E_Radio_Group *dg;
|
||||
|
@ -125,7 +125,7 @@ _basic_create_widgets(E_Config_Dialog * cfd, Evas * evas,
|
|||
}
|
||||
|
||||
static int
|
||||
_basic_apply_data(E_Config_Dialog * cfd, E_Config_Dialog_Data * cfdata)
|
||||
_basic_apply_data(E_Config_Dialog *cfd, E_Config_Dialog_Data *cfdata)
|
||||
{
|
||||
Config_Item *ci;
|
||||
|
||||
|
@ -152,3 +152,4 @@ _basic_apply_data(E_Config_Dialog * cfd, E_Config_Dialog_Data * cfdata)
|
|||
_forecasts_config_updated(ci);
|
||||
return 1;
|
||||
}
|
||||
|
||||
|
|
|
@ -8,16 +8,16 @@
|
|||
#define GOLDEN_RATIO 1.618033989
|
||||
|
||||
#define ENABLE_DEBUG 0
|
||||
#define DEBUG(f, ...) if(ENABLE_DEBUG) printf("[forecasts] "f"\n", __VA_ARGS__)
|
||||
|
||||
#define DEBUG(f, ...) if (ENABLE_DEBUG) \
|
||||
printf("[forecasts] "f "\n", __VA_ARGS__)
|
||||
|
||||
/* Gadcon Function Protos */
|
||||
static E_Gadcon_Client *_gc_init(E_Gadcon * gc, const char *name,
|
||||
static E_Gadcon_Client *_gc_init(E_Gadcon *gc, const char *name,
|
||||
const char *id, const char *style);
|
||||
static void _gc_shutdown(E_Gadcon_Client * gcc);
|
||||
static void _gc_orient(E_Gadcon_Client * gcc, E_Gadcon_Orient orient);
|
||||
static void _gc_shutdown(E_Gadcon_Client *gcc);
|
||||
static void _gc_orient(E_Gadcon_Client *gcc, E_Gadcon_Orient orient);
|
||||
static const char *_gc_label(E_Gadcon_Client_Class *client_class);
|
||||
static Evas_Object *_gc_icon(E_Gadcon_Client_Class *client_class, Evas * evas);
|
||||
static Evas_Object *_gc_icon(E_Gadcon_Client_Class *client_class, Evas *evas);
|
||||
static const char *_gc_id_new(E_Gadcon_Client_Class *client_class);
|
||||
|
||||
static E_Config_DD *conf_edd = NULL;
|
||||
|
@ -47,32 +47,39 @@ struct _Instance
|
|||
Ecore_Event_Handler *del_handler;
|
||||
Ecore_Event_Handler *data_handler;
|
||||
|
||||
struct {
|
||||
struct
|
||||
{
|
||||
int temp, code;
|
||||
char update[52];
|
||||
char desc[256];
|
||||
} condition;
|
||||
|
||||
struct {
|
||||
struct
|
||||
{
|
||||
char temp, distance[3], pressure[3], speed[4];
|
||||
} units;
|
||||
|
||||
struct {
|
||||
struct {
|
||||
struct
|
||||
{
|
||||
struct
|
||||
{
|
||||
int chill, direction, speed;
|
||||
} wind;
|
||||
|
||||
struct {
|
||||
struct
|
||||
{
|
||||
int humidity, rising;
|
||||
float pressure, visibility;
|
||||
} atmosphere;
|
||||
|
||||
struct {
|
||||
struct
|
||||
{
|
||||
char sunrise[9], sunset[9];
|
||||
} astronomy;
|
||||
} details;
|
||||
|
||||
struct {
|
||||
struct
|
||||
{
|
||||
char day[4];
|
||||
char date[12];
|
||||
int low, high, code;
|
||||
|
@ -103,15 +110,15 @@ struct
|
|||
};
|
||||
|
||||
/* Module Function Protos */
|
||||
static void _forecasts_cb_mouse_down(void *data, Evas * e, Evas_Object * obj,
|
||||
static void _forecasts_cb_mouse_down(void *data, Evas *e, Evas_Object *obj,
|
||||
void *event_info);
|
||||
static void _forecasts_menu_cb_configure(void *data, E_Menu * m,
|
||||
E_Menu_Item * mi);
|
||||
static void _forecasts_menu_cb_post(void *data, E_Menu * m);
|
||||
static void _forecasts_menu_cb_configure(void *data, E_Menu *m,
|
||||
E_Menu_Item *mi);
|
||||
static void _forecasts_menu_cb_post(void *data, E_Menu *m);
|
||||
static Eina_Bool _forecasts_cb_check(void *data);
|
||||
static Config_Item *_forecasts_config_item_get(const char *id);
|
||||
static Forecasts *_forecasts_new(Evas * evas);
|
||||
static void _forecasts_free(Forecasts * w);
|
||||
static Forecasts *_forecasts_new(Evas *evas);
|
||||
static void _forecasts_free(Forecasts *w);
|
||||
static void _forecasts_get_proxy(void);
|
||||
static Eina_Bool _forecasts_server_add(void *data, int type, void *event);
|
||||
static Eina_Bool _forecasts_server_del(void *data, int type, void *event);
|
||||
|
@ -122,17 +129,17 @@ static void _forecasts_convert_degrees(int *value, int dir);
|
|||
static void _forecasts_convert_distances(int *value, int dir);
|
||||
static void _forecasts_convert_distances_float(float *value, int dir);
|
||||
static void _forecasts_convert_pressures(float *value, int dir);
|
||||
static void _forecasts_display_set(Instance * inst, int ok);
|
||||
static void _forecasts_display_set(Instance *inst, int ok);
|
||||
static void _forecasts_popup_content_create(Instance *inst);
|
||||
static void _cb_mouse_down(void *data, Evas *e, Evas_Object *obj, void *event_info);
|
||||
static void _cb_mouse_in(void *data, Evas *e, Evas_Object *obj, void *event_info);
|
||||
static void _cb_mouse_out(void *data, Evas *e, Evas_Object *obj, void *event_info);
|
||||
static Evas_Object * _forecasts_popup_icon_create(Evas *evas, int code);
|
||||
static Evas_Object *_forecasts_popup_icon_create(Evas *evas, int code);
|
||||
static void _forecasts_popup_destroy(Instance *inst);
|
||||
|
||||
/* Gadcon Functions */
|
||||
static E_Gadcon_Client *
|
||||
_gc_init(E_Gadcon * gc, const char *name, const char *id, const char *style)
|
||||
_gc_init(E_Gadcon *gc, const char *name, const char *id, const char *style)
|
||||
{
|
||||
Evas_Object *o;
|
||||
E_Gadcon_Client *gcc;
|
||||
|
@ -187,7 +194,7 @@ _gc_init(E_Gadcon * gc, const char *name, const char *id, const char *style)
|
|||
}
|
||||
|
||||
static void
|
||||
_gc_shutdown(E_Gadcon_Client * gcc)
|
||||
_gc_shutdown(E_Gadcon_Client *gcc)
|
||||
{
|
||||
Instance *inst;
|
||||
Forecasts *w;
|
||||
|
@ -222,7 +229,7 @@ _gc_shutdown(E_Gadcon_Client * gcc)
|
|||
}
|
||||
|
||||
static void
|
||||
_gc_orient(E_Gadcon_Client * gcc, E_Gadcon_Orient orient)
|
||||
_gc_orient(E_Gadcon_Client *gcc, E_Gadcon_Orient orient)
|
||||
{
|
||||
Instance *inst;
|
||||
|
||||
|
@ -235,6 +242,7 @@ _gc_orient(E_Gadcon_Client * gcc, E_Gadcon_Orient orient)
|
|||
e_gadcon_client_aspect_set(gcc, 240, 120);
|
||||
e_gadcon_client_min_size_set(gcc, 240, 120);
|
||||
break;
|
||||
|
||||
default:
|
||||
edje_object_signal_emit(inst->forecasts_obj, "e,state,orientation,default", "e");
|
||||
e_gadcon_client_aspect_set(gcc, 16, 16);
|
||||
|
@ -250,7 +258,7 @@ _gc_label(E_Gadcon_Client_Class *client_class)
|
|||
}
|
||||
|
||||
static Evas_Object *
|
||||
_gc_icon(E_Gadcon_Client_Class *client_class, Evas * evas)
|
||||
_gc_icon(E_Gadcon_Client_Class *client_class, Evas *evas)
|
||||
{
|
||||
Evas_Object *o;
|
||||
char buf[4096];
|
||||
|
@ -272,7 +280,7 @@ _gc_id_new(E_Gadcon_Client_Class *client_class)
|
|||
}
|
||||
|
||||
static void
|
||||
_forecasts_cb_mouse_down(void *data, Evas * e, Evas_Object * obj,
|
||||
_forecasts_cb_mouse_down(void *data, Evas *e, Evas_Object *obj,
|
||||
void *event_info)
|
||||
{
|
||||
Instance *inst;
|
||||
|
@ -308,7 +316,7 @@ _forecasts_cb_mouse_down(void *data, Evas * e, Evas_Object * obj,
|
|||
}
|
||||
|
||||
static void
|
||||
_forecasts_menu_cb_post(void *data, E_Menu * m)
|
||||
_forecasts_menu_cb_post(void *data, E_Menu *m)
|
||||
{
|
||||
if (!forecasts_config->menu)
|
||||
return;
|
||||
|
@ -317,7 +325,7 @@ _forecasts_menu_cb_post(void *data, E_Menu * m)
|
|||
}
|
||||
|
||||
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;
|
||||
|
||||
|
@ -379,7 +387,7 @@ EAPI E_Module_Api e_modapi = {
|
|||
};
|
||||
|
||||
EAPI void *
|
||||
e_modapi_init(E_Module * m)
|
||||
e_modapi_init(E_Module *m)
|
||||
{
|
||||
char buf[4095];
|
||||
|
||||
|
@ -433,7 +441,7 @@ e_modapi_init(E_Module * m)
|
|||
}
|
||||
|
||||
EAPI int
|
||||
e_modapi_shutdown(E_Module * m)
|
||||
e_modapi_shutdown(E_Module *m)
|
||||
{
|
||||
forecasts_config->module = NULL;
|
||||
e_gadcon_provider_unregister(&_gadcon_class);
|
||||
|
@ -471,14 +479,14 @@ e_modapi_shutdown(E_Module * m)
|
|||
}
|
||||
|
||||
EAPI int
|
||||
e_modapi_save(E_Module * m)
|
||||
e_modapi_save(E_Module *m)
|
||||
{
|
||||
e_config_domain_save("module.forecasts", conf_edd, forecasts_config);
|
||||
return 1;
|
||||
}
|
||||
|
||||
static Forecasts *
|
||||
_forecasts_new(Evas * evas)
|
||||
_forecasts_new(Evas *evas)
|
||||
{
|
||||
Forecasts *w;
|
||||
char buf[4096];
|
||||
|
@ -504,7 +512,7 @@ _forecasts_new(Evas * evas)
|
|||
}
|
||||
|
||||
static void
|
||||
_forecasts_free(Forecasts * w)
|
||||
_forecasts_free(Forecasts *w)
|
||||
{
|
||||
evas_object_del(w->forecasts_obj);
|
||||
evas_object_del(w->icon_obj);
|
||||
|
@ -520,10 +528,10 @@ _forecasts_get_proxy(void)
|
|||
const char *p;
|
||||
int port = 0;
|
||||
|
||||
env = getenv ("http_proxy");
|
||||
if ((!env) || (!*env)) env = getenv ("HTTP_PROXY");
|
||||
env = getenv("http_proxy");
|
||||
if ((!env) || (!*env)) env = getenv("HTTP_PROXY");
|
||||
if ((!env) || (!*env)) return;
|
||||
if (strncmp (env, "http://", 7)) return;
|
||||
if (strncmp(env, "http://", 7)) return;
|
||||
|
||||
host = strchr(env, ':');
|
||||
host += 3;
|
||||
|
@ -563,7 +571,7 @@ _forecasts_cb_check(void *data)
|
|||
inst->server =
|
||||
ecore_con_server_connect(ECORE_CON_REMOTE_NODELAY, inst->ci->host, 80, inst);
|
||||
|
||||
if (!inst->server) return EINA_FALSE;return EINA_TRUE;
|
||||
if (!inst->server) return EINA_FALSE; return EINA_TRUE;
|
||||
}
|
||||
|
||||
static Eina_Bool
|
||||
|
@ -862,7 +870,7 @@ _forecasts_convert_pressures(float *value, int dir)
|
|||
}
|
||||
|
||||
static void
|
||||
_forecasts_display_set(Instance * inst, int ok)
|
||||
_forecasts_display_set(Instance *inst, int ok)
|
||||
{
|
||||
char buf[4096];
|
||||
char m[4096];
|
||||
|
@ -1059,11 +1067,11 @@ _forecasts_popup_content_create(Instance *inst)
|
|||
int row = 0;
|
||||
|
||||
if (!i)
|
||||
snprintf (buf, sizeof(buf), D_("Today"));
|
||||
snprintf(buf, sizeof(buf), D_("Today"));
|
||||
else if (i == 1)
|
||||
snprintf (buf, sizeof(buf), D_("Tomorrow"));
|
||||
snprintf(buf, sizeof(buf), D_("Tomorrow"));
|
||||
else
|
||||
snprintf (buf, sizeof(buf), "%s", inst->forecast[i].date);
|
||||
snprintf(buf, sizeof(buf), "%s", inst->forecast[i].date);
|
||||
of = e_widget_frametable_add(evas, buf, 0);
|
||||
|
||||
ob = e_widget_label_add(evas, inst->forecast[i].desc);
|
||||
|
@ -1090,10 +1098,10 @@ _forecasts_popup_content_create(Instance *inst)
|
|||
|
||||
e_widget_list_object_append(o, ol, 1, 1, 0.5);
|
||||
e_widget_size_min_get(o, &mw, &mh);
|
||||
if ((double) mw / mh > GOLDEN_RATIO)
|
||||
if ((double)mw / mh > GOLDEN_RATIO)
|
||||
mh = mw / GOLDEN_RATIO;
|
||||
else if ((double) mw / mh < GOLDEN_RATIO - (double) 1)
|
||||
mw = mh * (GOLDEN_RATIO - (double) 1);
|
||||
else if ((double)mw / mh < GOLDEN_RATIO - (double)1)
|
||||
mw = mh * (GOLDEN_RATIO - (double)1);
|
||||
e_widget_size_min_set(o, mw, mh);
|
||||
|
||||
e_gadcon_popup_content_set(inst->popup, o);
|
||||
|
@ -1168,3 +1176,4 @@ _cb_mouse_out(void *data, Evas *e, Evas_Object *obj, void *event_info)
|
|||
if (inst->popup->pinned) return;
|
||||
e_gadcon_popup_hide(inst->popup);
|
||||
}
|
||||
|
||||
|
|
Loading…
Reference in New Issue