forked from enlightenment/enlightenment
parent
e786c54c55
commit
253743b31f
|
@ -8,10 +8,10 @@ struct _E_Config_Dialog_Data
|
|||
};
|
||||
|
||||
/* Protos */
|
||||
static void *_create_data(E_Config_Dialog *cfd);
|
||||
static void _free_data(E_Config_Dialog *cfd, 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 int _basic_apply_data(E_Config_Dialog *cfd, E_Config_Dialog_Data *cfdata);
|
||||
|
||||
void
|
||||
_config_tasks_module(Config_Item *ci)
|
||||
|
@ -28,7 +28,7 @@ _config_tasks_module(Config_Item *ci)
|
|||
v->basic.create_widgets = _basic_create_widgets;
|
||||
|
||||
con = e_container_current_get(e_manager_current_get());
|
||||
cfd = e_config_dialog_new(con, _("Tasks Configuration"), "Tasks",
|
||||
cfd = e_config_dialog_new(con, _("Tasks Configuration"), "Tasks",
|
||||
"_e_modules_tasks_config_dialog", NULL, 0, v, ci);
|
||||
if (tasks_config->config_dialog)
|
||||
e_object_del(E_OBJECT(tasks_config->config_dialog));
|
||||
|
@ -84,7 +84,7 @@ _basic_create_widgets(E_Config_Dialog *cfd __UNUSED__, Evas *evas, E_Config_Dial
|
|||
ow = e_widget_slider_add(evas, 1, 0, _("%1.0f px"), 20, 420, 1, 0,
|
||||
NULL, &(cfdata->minh), 100);
|
||||
e_widget_framelist_object_append(of, ow);
|
||||
|
||||
|
||||
e_widget_list_object_append(o, of, 1, 1, 0.5);
|
||||
return o;
|
||||
}
|
||||
|
@ -102,3 +102,4 @@ _basic_apply_data(E_Config_Dialog *cfd, E_Config_Dialog_Data *cfdata)
|
|||
_tasks_config_updated(ci);
|
||||
return 1;
|
||||
}
|
||||
|
||||
|
|
|
@ -2,14 +2,14 @@
|
|||
#include "e_mod_main.h"
|
||||
|
||||
/***************************************************************************/
|
||||
/**/
|
||||
/**/
|
||||
/* gadcon requirements */
|
||||
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 const char *_gc_label(E_Gadcon_Client_Class *client_class);
|
||||
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 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 const char *_gc_id_new(E_Gadcon_Client_Class *client_class);
|
||||
|
||||
/* and actually define the gadcon class that this module provides (just 1) */
|
||||
static E_Gadcon_Client_Class _gadcon_class = {
|
||||
|
@ -26,63 +26,63 @@ static E_Gadcon_Client_Class _gadcon_class = {
|
|||
/**/
|
||||
/* actual module specifics */
|
||||
|
||||
typedef struct _Tasks Tasks;
|
||||
typedef struct _Tasks Tasks;
|
||||
typedef struct _Tasks_Item Tasks_Item;
|
||||
|
||||
struct _Tasks
|
||||
{
|
||||
E_Gadcon_Client *gcc; // The gadcon client
|
||||
Evas_Object *o_items; // Table of items
|
||||
Eina_List *items; // List of items
|
||||
E_Zone *zone; // Current Zone
|
||||
Config_Item *config; // Configuration
|
||||
int horizontal;
|
||||
E_Gadcon_Client *gcc; // The gadcon client
|
||||
Evas_Object *o_items; // Table of items
|
||||
Eina_List *items; // List of items
|
||||
E_Zone *zone; // Current Zone
|
||||
Config_Item *config; // Configuration
|
||||
int horizontal;
|
||||
};
|
||||
|
||||
struct _Tasks_Item
|
||||
{
|
||||
Tasks *tasks; // Parent tasks
|
||||
E_Border *border; // The border this item points to
|
||||
Evas_Object *o_item; // The edje theme object
|
||||
Evas_Object *o_icon; // The icon
|
||||
Tasks *tasks; // Parent tasks
|
||||
E_Border *border; // The border this item points to
|
||||
Evas_Object *o_item; // The edje theme object
|
||||
Evas_Object *o_icon; // The icon
|
||||
};
|
||||
|
||||
static Tasks *_tasks_new(Evas *evas, E_Zone *zone, const char *id);
|
||||
static void _tasks_free(Tasks *tasks);
|
||||
static void _tasks_refill(Tasks *tasks);
|
||||
static void _tasks_refill_all();
|
||||
static void _tasks_refill_border(E_Border *border);
|
||||
static void _tasks_signal_emit(E_Border *border, char *sig, char *src);
|
||||
static Tasks *_tasks_new(Evas *evas, E_Zone *zone, const char *id);
|
||||
static void _tasks_free(Tasks *tasks);
|
||||
static void _tasks_refill(Tasks *tasks);
|
||||
static void _tasks_refill_all();
|
||||
static void _tasks_refill_border(E_Border *border);
|
||||
static void _tasks_signal_emit(E_Border *border, char *sig, char *src);
|
||||
|
||||
static Tasks_Item *_tasks_item_find(Tasks *tasks, E_Border *border);
|
||||
static Tasks_Item *_tasks_item_new(Tasks *tasks, E_Border *border);
|
||||
static Tasks_Item *_tasks_item_find(Tasks *tasks, E_Border *border);
|
||||
static Tasks_Item *_tasks_item_new(Tasks *tasks, E_Border *border);
|
||||
|
||||
static int _tasks_item_check_add(Tasks *tasks, E_Border *border);
|
||||
static void _tasks_item_add(Tasks *tasks, E_Border *border);
|
||||
static void _tasks_item_remove(Tasks_Item *item);
|
||||
static void _tasks_item_refill(Tasks_Item *item);
|
||||
static void _tasks_item_fill(Tasks_Item *item);
|
||||
static void _tasks_item_free(Tasks_Item *item);
|
||||
static void _tasks_item_signal_emit(Tasks_Item *item, char *sig, char *src);
|
||||
static int _tasks_item_check_add(Tasks *tasks, E_Border *border);
|
||||
static void _tasks_item_add(Tasks *tasks, E_Border *border);
|
||||
static void _tasks_item_remove(Tasks_Item *item);
|
||||
static void _tasks_item_refill(Tasks_Item *item);
|
||||
static void _tasks_item_fill(Tasks_Item *item);
|
||||
static void _tasks_item_free(Tasks_Item *item);
|
||||
static void _tasks_item_signal_emit(Tasks_Item *item, char *sig, char *src);
|
||||
|
||||
static Config_Item *_tasks_config_item_get(const char *id);
|
||||
|
||||
static void _tasks_cb_menu_configure(void *data, E_Menu *m, E_Menu_Item *mi);
|
||||
static void _tasks_cb_item_mouse_down(void *data, Evas *e, Evas_Object *obj, void *event_info);
|
||||
static void _tasks_cb_item_mouse_up(void *data, Evas *e, Evas_Object *obj, void *event_info);
|
||||
static void _tasks_cb_menu_configure(void *data, E_Menu *m, E_Menu_Item *mi);
|
||||
static void _tasks_cb_item_mouse_down(void *data, Evas *e, Evas_Object *obj, void *event_info);
|
||||
static void _tasks_cb_item_mouse_up(void *data, Evas *e, Evas_Object *obj, void *event_info);
|
||||
|
||||
static Eina_Bool _tasks_cb_event_border_add(void *data, int type, void *event);
|
||||
static Eina_Bool _tasks_cb_event_border_remove(void *data, int type, void *event);
|
||||
static Eina_Bool _tasks_cb_event_border_iconify(void *data, int type, void *event);
|
||||
static Eina_Bool _tasks_cb_event_border_uniconify(void *data, int type, void *event);
|
||||
static Eina_Bool _tasks_cb_event_border_icon_change(void *data, int type, void *event);
|
||||
static Eina_Bool _tasks_cb_event_border_zone_set(void *data, int type, void *event);
|
||||
static Eina_Bool _tasks_cb_event_border_desk_set(void *data, int type, void *event);
|
||||
static Eina_Bool _tasks_cb_window_focus_in(void *data, int type, void *event);
|
||||
static Eina_Bool _tasks_cb_window_focus_out(void *data, int type, void *event);
|
||||
static Eina_Bool _tasks_cb_event_border_property(void *data, int type, void *event);
|
||||
static Eina_Bool _tasks_cb_event_desk_show(void *data, int type, void *event);
|
||||
static Eina_Bool _tasks_cb_event_border_urgent_change(void *data, int type, void *event);
|
||||
static Eina_Bool _tasks_cb_event_border_add(void *data, int type, void *event);
|
||||
static Eina_Bool _tasks_cb_event_border_remove(void *data, int type, void *event);
|
||||
static Eina_Bool _tasks_cb_event_border_iconify(void *data, int type, void *event);
|
||||
static Eina_Bool _tasks_cb_event_border_uniconify(void *data, int type, void *event);
|
||||
static Eina_Bool _tasks_cb_event_border_icon_change(void *data, int type, void *event);
|
||||
static Eina_Bool _tasks_cb_event_border_zone_set(void *data, int type, void *event);
|
||||
static Eina_Bool _tasks_cb_event_border_desk_set(void *data, int type, void *event);
|
||||
static Eina_Bool _tasks_cb_window_focus_in(void *data, int type, void *event);
|
||||
static Eina_Bool _tasks_cb_window_focus_out(void *data, int type, void *event);
|
||||
static Eina_Bool _tasks_cb_event_border_property(void *data, int type, void *event);
|
||||
static Eina_Bool _tasks_cb_event_desk_show(void *data, int type, void *event);
|
||||
static Eina_Bool _tasks_cb_event_border_urgent_change(void *data, int type, void *event);
|
||||
|
||||
static E_Config_DD *conf_edd = NULL;
|
||||
static E_Config_DD *conf_item_edd = NULL;
|
||||
|
@ -122,9 +122,9 @@ e_modapi_init(E_Module *m)
|
|||
if (!tasks_config)
|
||||
{
|
||||
Config_Item *config;
|
||||
|
||||
|
||||
tasks_config = E_NEW(Config, 1);
|
||||
|
||||
|
||||
config = E_NEW(Config_Item, 1);
|
||||
config->id = eina_stringshare_add("0");
|
||||
config->show_all = 0;
|
||||
|
@ -136,44 +136,44 @@ e_modapi_init(E_Module *m)
|
|||
tasks_config->module = m;
|
||||
|
||||
tasks_config->handlers = eina_list_append
|
||||
(tasks_config->handlers, ecore_event_handler_add
|
||||
(tasks_config->handlers, ecore_event_handler_add
|
||||
(E_EVENT_BORDER_ADD, _tasks_cb_event_border_add, NULL));
|
||||
tasks_config->handlers = eina_list_append
|
||||
(tasks_config->handlers, ecore_event_handler_add
|
||||
(tasks_config->handlers, ecore_event_handler_add
|
||||
(E_EVENT_BORDER_REMOVE, _tasks_cb_event_border_remove, NULL));
|
||||
tasks_config->handlers = eina_list_append
|
||||
(tasks_config->handlers, ecore_event_handler_add
|
||||
(tasks_config->handlers, ecore_event_handler_add
|
||||
(E_EVENT_BORDER_ICONIFY, _tasks_cb_event_border_iconify, NULL));
|
||||
tasks_config->handlers = eina_list_append
|
||||
(tasks_config->handlers, ecore_event_handler_add
|
||||
(tasks_config->handlers, ecore_event_handler_add
|
||||
(E_EVENT_BORDER_UNICONIFY, _tasks_cb_event_border_uniconify, NULL));
|
||||
tasks_config->handlers = eina_list_append
|
||||
(tasks_config->handlers, ecore_event_handler_add
|
||||
(tasks_config->handlers, ecore_event_handler_add
|
||||
(E_EVENT_BORDER_ICON_CHANGE, _tasks_cb_event_border_icon_change, NULL));
|
||||
tasks_config->handlers = eina_list_append
|
||||
(tasks_config->handlers, ecore_event_handler_add
|
||||
(tasks_config->handlers, ecore_event_handler_add
|
||||
(E_EVENT_BORDER_DESK_SET, _tasks_cb_event_border_desk_set, NULL));
|
||||
tasks_config->handlers = eina_list_append
|
||||
(tasks_config->handlers, ecore_event_handler_add
|
||||
(tasks_config->handlers, ecore_event_handler_add
|
||||
(E_EVENT_BORDER_ZONE_SET, _tasks_cb_event_border_zone_set, NULL));
|
||||
tasks_config->handlers = eina_list_append
|
||||
(tasks_config->handlers, ecore_event_handler_add
|
||||
(tasks_config->handlers, ecore_event_handler_add
|
||||
(E_EVENT_BORDER_FOCUS_IN, _tasks_cb_window_focus_in, NULL));
|
||||
tasks_config->handlers = eina_list_append
|
||||
(tasks_config->handlers, ecore_event_handler_add
|
||||
(tasks_config->handlers, ecore_event_handler_add
|
||||
(E_EVENT_BORDER_FOCUS_OUT, _tasks_cb_window_focus_out, NULL));
|
||||
tasks_config->handlers = eina_list_append
|
||||
(tasks_config->handlers, ecore_event_handler_add
|
||||
(tasks_config->handlers, ecore_event_handler_add
|
||||
(E_EVENT_BORDER_PROPERTY, _tasks_cb_event_border_property, NULL));
|
||||
tasks_config->handlers = eina_list_append
|
||||
(tasks_config->handlers, ecore_event_handler_add
|
||||
(tasks_config->handlers, ecore_event_handler_add
|
||||
(E_EVENT_DESK_SHOW, _tasks_cb_event_desk_show, NULL));
|
||||
tasks_config->handlers = eina_list_append
|
||||
(tasks_config->handlers, ecore_event_handler_add
|
||||
(tasks_config->handlers, ecore_event_handler_add
|
||||
(E_EVENT_BORDER_URGENT_CHANGE, _tasks_cb_event_border_urgent_change, NULL));
|
||||
|
||||
|
||||
tasks_config->borders = eina_list_clone(e_border_client_list());
|
||||
|
||||
|
||||
e_gadcon_provider_register(&_gadcon_class);
|
||||
return m;
|
||||
}
|
||||
|
@ -227,15 +227,15 @@ _gc_init(E_Gadcon *gc, const char *name, const char *id, const char *style __UNU
|
|||
/* int cx, cy, cw, ch; */
|
||||
|
||||
tasks = _tasks_new(gc->evas, gc->zone, id);
|
||||
|
||||
|
||||
o = tasks->o_items;
|
||||
gcc = e_gadcon_client_new(gc, name, id, E_GADCON_CLIENT_STYLE_INSET, o);
|
||||
gcc->data = tasks;
|
||||
tasks->gcc = gcc;
|
||||
|
||||
|
||||
/* e_gadcon_canvas_zone_geometry_get(gcc->gadcon, &cx, &cy, &cw, &ch); */
|
||||
/* evas_object_geometry_get(o, &x, &y, &w, &h); */
|
||||
|
||||
|
||||
tasks_config->tasks = eina_list_append(tasks_config->tasks, tasks);
|
||||
|
||||
e_gadcon_client_autoscroll_toggle_disabled_set(gcc, 1);
|
||||
|
@ -248,7 +248,7 @@ static void
|
|||
_gc_shutdown(E_Gadcon_Client *gcc)
|
||||
{
|
||||
Tasks *tasks;
|
||||
|
||||
|
||||
tasks = (Tasks *)gcc->data;
|
||||
tasks_config->tasks = eina_list_remove(tasks_config->tasks, tasks);
|
||||
_tasks_free(tasks);
|
||||
|
@ -272,13 +272,14 @@ _gc_orient(E_Gadcon_Client *gcc, E_Gadcon_Orient orient)
|
|||
case E_GADCON_ORIENT_CORNER_TR:
|
||||
case E_GADCON_ORIENT_CORNER_BL:
|
||||
case E_GADCON_ORIENT_CORNER_BR:
|
||||
if (!tasks->horizontal)
|
||||
{
|
||||
if (!tasks->horizontal)
|
||||
{
|
||||
tasks->horizontal = 1;
|
||||
e_box_orientation_set(tasks->o_items, tasks->horizontal);
|
||||
_tasks_refill(tasks);
|
||||
}
|
||||
break;
|
||||
}
|
||||
break;
|
||||
|
||||
case E_GADCON_ORIENT_VERT:
|
||||
case E_GADCON_ORIENT_LEFT:
|
||||
case E_GADCON_ORIENT_RIGHT:
|
||||
|
@ -286,15 +287,16 @@ _gc_orient(E_Gadcon_Client *gcc, E_Gadcon_Orient orient)
|
|||
case E_GADCON_ORIENT_CORNER_RT:
|
||||
case E_GADCON_ORIENT_CORNER_LB:
|
||||
case E_GADCON_ORIENT_CORNER_RB:
|
||||
if (tasks->horizontal)
|
||||
{
|
||||
if (tasks->horizontal)
|
||||
{
|
||||
tasks->horizontal = 0;
|
||||
e_box_orientation_set(tasks->o_items, tasks->horizontal);
|
||||
_tasks_refill(tasks);
|
||||
}
|
||||
break;
|
||||
}
|
||||
break;
|
||||
|
||||
default:
|
||||
break;
|
||||
break;
|
||||
}
|
||||
e_box_align_set(tasks->o_items, 0.5, 0.5);
|
||||
}
|
||||
|
@ -350,12 +352,13 @@ static void
|
|||
_tasks_free(Tasks *tasks)
|
||||
{
|
||||
Tasks_Item *item;
|
||||
EINA_LIST_FREE(tasks->items, item) _tasks_item_free(item);
|
||||
EINA_LIST_FREE(tasks->items, item)
|
||||
_tasks_item_free(item);
|
||||
evas_object_del(tasks->o_items);
|
||||
free(tasks);
|
||||
}
|
||||
|
||||
static void
|
||||
static void
|
||||
_tasks_refill(Tasks *tasks)
|
||||
{
|
||||
Eina_List *l;
|
||||
|
@ -375,7 +378,7 @@ _tasks_refill(Tasks *tasks)
|
|||
if (tasks->items)
|
||||
{
|
||||
item = tasks->items->data;
|
||||
edje_object_size_min_calc(item->o_item, &w, &h);
|
||||
edje_object_size_min_calc(item->o_item, &w, &h);
|
||||
if (tasks->horizontal)
|
||||
{
|
||||
if (w < tasks->config->minw) w = tasks->config->minw;
|
||||
|
@ -384,14 +387,14 @@ _tasks_refill(Tasks *tasks)
|
|||
{
|
||||
if (h < tasks->config->minh) h = tasks->config->minh;
|
||||
}
|
||||
if (!tasks->gcc->resizable)
|
||||
{
|
||||
if (tasks->horizontal)
|
||||
e_gadcon_client_min_size_set(tasks->gcc,
|
||||
if (!tasks->gcc->resizable)
|
||||
{
|
||||
if (tasks->horizontal)
|
||||
e_gadcon_client_min_size_set(tasks->gcc,
|
||||
w * eina_list_count(tasks->items),
|
||||
h);
|
||||
else
|
||||
e_gadcon_client_min_size_set(tasks->gcc,
|
||||
else
|
||||
e_gadcon_client_min_size_set(tasks->gcc,
|
||||
w,
|
||||
h * eina_list_count(tasks->items));
|
||||
}
|
||||
|
@ -412,36 +415,35 @@ _tasks_refill_all(void)
|
|||
}
|
||||
}
|
||||
|
||||
|
||||
static void
|
||||
_tasks_refill_border(E_Border *border)
|
||||
{
|
||||
const Eina_List *l;
|
||||
Tasks *tasks;
|
||||
|
||||
|
||||
EINA_LIST_FOREACH(tasks_config->tasks, l, tasks)
|
||||
{
|
||||
const Eina_List *m;
|
||||
Tasks_Item *item;
|
||||
EINA_LIST_FOREACH(tasks->items, m, item)
|
||||
const Eina_List *m;
|
||||
Tasks_Item *item;
|
||||
EINA_LIST_FOREACH(tasks->items, m, item)
|
||||
{
|
||||
if (item->border == border) _tasks_item_refill(item);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
static void
|
||||
static void
|
||||
_tasks_signal_emit(E_Border *border, char *sig, char *src)
|
||||
{
|
||||
const Eina_List *l;
|
||||
Tasks *tasks;
|
||||
|
||||
|
||||
EINA_LIST_FOREACH(tasks_config->tasks, l, tasks)
|
||||
{
|
||||
const Eina_List *m;
|
||||
Tasks_Item *item;
|
||||
|
||||
EINA_LIST_FOREACH(tasks->items, m, item)
|
||||
const Eina_List *m;
|
||||
Tasks_Item *item;
|
||||
|
||||
EINA_LIST_FOREACH(tasks->items, m, item)
|
||||
{
|
||||
if (item->border == border)
|
||||
_tasks_item_signal_emit(item, sig, src);
|
||||
|
@ -473,16 +475,16 @@ _tasks_item_new(Tasks *tasks, E_Border *border)
|
|||
item->border = border;
|
||||
item->o_item = edje_object_add(evas_object_evas_get(tasks->o_items));
|
||||
if (tasks->horizontal)
|
||||
e_theme_edje_object_set(item->o_item,
|
||||
"base/theme/modules/tasks",
|
||||
e_theme_edje_object_set(item->o_item,
|
||||
"base/theme/modules/tasks",
|
||||
"modules/tasks/item");
|
||||
else
|
||||
{
|
||||
if (!e_theme_edje_object_set(item->o_item,
|
||||
"base/theme/modules/tasks",
|
||||
if (!e_theme_edje_object_set(item->o_item,
|
||||
"base/theme/modules/tasks",
|
||||
"modules/tasks/item_vert"))
|
||||
e_theme_edje_object_set(item->o_item,
|
||||
"base/theme/modules/tasks",
|
||||
e_theme_edje_object_set(item->o_item,
|
||||
"base/theme/modules/tasks",
|
||||
"modules/tasks/item");
|
||||
}
|
||||
evas_object_event_callback_add(item->o_item, EVAS_CALLBACK_MOUSE_DOWN,
|
||||
|
@ -490,7 +492,7 @@ _tasks_item_new(Tasks *tasks, E_Border *border)
|
|||
evas_object_event_callback_add(item->o_item, EVAS_CALLBACK_MOUSE_UP,
|
||||
_tasks_cb_item_mouse_up, item);
|
||||
evas_object_show(item->o_item);
|
||||
|
||||
|
||||
_tasks_item_fill(item);
|
||||
return item;
|
||||
}
|
||||
|
@ -505,7 +507,7 @@ _tasks_item_check_add(Tasks *tasks, E_Border *border)
|
|||
if (!(tasks->config->show_all))
|
||||
{
|
||||
if (border->zone != tasks->zone) return 1;
|
||||
if ((border->desk != e_desk_current_get(border->zone)) &&
|
||||
if ((border->desk != e_desk_current_get(border->zone)) &&
|
||||
(!border->sticky))
|
||||
return 1;
|
||||
}
|
||||
|
@ -526,7 +528,7 @@ _tasks_item_add(Tasks *tasks, E_Border *border)
|
|||
0.5, 0.5, /* align */
|
||||
1, 1, /* min */
|
||||
9999, 9999 /* max */
|
||||
);
|
||||
);
|
||||
tasks->items = eina_list_append(tasks->items, item);
|
||||
}
|
||||
|
||||
|
@ -559,15 +561,15 @@ static void
|
|||
_tasks_item_fill(Tasks_Item *item)
|
||||
{
|
||||
const char *label;
|
||||
|
||||
|
||||
item->o_icon = e_border_icon_add(item->border, evas_object_evas_get(item->tasks->o_items));
|
||||
edje_object_part_swallow(item->o_item, "e.swallow.icon", item->o_icon);
|
||||
evas_object_pass_events_set(item->o_icon, 1);
|
||||
evas_object_show(item->o_icon);
|
||||
|
||||
|
||||
label = e_border_name_get(item->border);
|
||||
edje_object_part_text_set(item->o_item, "e.text.label", label);
|
||||
|
||||
|
||||
if (item->border->iconic)
|
||||
_tasks_item_signal_emit(item, "e,state,iconified", "e");
|
||||
else
|
||||
|
@ -595,16 +597,16 @@ _tasks_config_item_get(const char *id)
|
|||
Eina_List *l;
|
||||
Config_Item *config;
|
||||
char buf[128];
|
||||
|
||||
|
||||
if (!id)
|
||||
{
|
||||
int num = 0;
|
||||
|
||||
|
||||
/* Create id */
|
||||
if (tasks_config->items)
|
||||
{
|
||||
const char *p;
|
||||
|
||||
|
||||
config = eina_list_last(tasks_config->items)->data;
|
||||
p = strrchr(config->id, '.');
|
||||
if (p) num = atoi(p + 1) + 1;
|
||||
|
@ -614,7 +616,7 @@ _tasks_config_item_get(const char *id)
|
|||
}
|
||||
else
|
||||
{
|
||||
EINA_LIST_FOREACH(tasks_config->items, l, config)
|
||||
EINA_LIST_FOREACH(tasks_config->items, l, config)
|
||||
{
|
||||
if (!config->id) continue;
|
||||
if (!strcmp(config->id, id)) return config;
|
||||
|
@ -637,7 +639,7 @@ _tasks_config_updated(Config_Item *config)
|
|||
{
|
||||
const Eina_List *l;
|
||||
Tasks *tasks;
|
||||
|
||||
|
||||
if (!tasks_config) return;
|
||||
EINA_LIST_FOREACH(tasks_config->tasks, l, tasks)
|
||||
{
|
||||
|
@ -650,7 +652,7 @@ _tasks_cb_menu_configure(void *data, E_Menu *m __UNUSED__, E_Menu_Item *mi __UNU
|
|||
{
|
||||
Tasks *tasks;
|
||||
|
||||
tasks = (Tasks *) data;
|
||||
tasks = (Tasks *)data;
|
||||
_config_tasks_module(tasks->config);
|
||||
}
|
||||
|
||||
|
@ -659,43 +661,42 @@ _tasks_cb_item_mouse_down(void *data, Evas *e __UNUSED__, Evas_Object *obj __UNU
|
|||
{
|
||||
Evas_Event_Mouse_Down *ev;
|
||||
Tasks_Item *item;
|
||||
|
||||
item = (Tasks_Item *) data;
|
||||
|
||||
item = (Tasks_Item *)data;
|
||||
ev = event_info;
|
||||
if (ev->button == 3)
|
||||
if (ev->button == 3)
|
||||
{
|
||||
E_Menu *m;
|
||||
E_Menu_Item *mi;
|
||||
E_Menu_Item *mi;
|
||||
int cx, cy, cw, ch;
|
||||
|
||||
|
||||
e_gadcon_canvas_zone_geometry_get(item->tasks->gcc->gadcon, &cx, &cy, &cw, &ch);
|
||||
|
||||
e_int_border_menu_create(item->border);
|
||||
|
||||
mi = e_menu_item_new(item->border->border_menu);
|
||||
e_menu_item_separator_set(mi, 1);
|
||||
|
||||
m = e_menu_new();
|
||||
|
||||
e_int_border_menu_create(item->border);
|
||||
|
||||
mi = e_menu_item_new(item->border->border_menu);
|
||||
e_menu_item_separator_set(mi, 1);
|
||||
|
||||
m = e_menu_new();
|
||||
mi = e_menu_item_new(m);
|
||||
e_menu_item_label_set(mi, _("Settings"));
|
||||
e_util_menu_item_theme_icon_set(mi, "preferences-system");
|
||||
e_menu_item_callback_set(mi, _tasks_cb_menu_configure, item->tasks);
|
||||
|
||||
m = e_gadcon_client_util_menu_items_append(item->tasks->gcc, m, 0);
|
||||
|
||||
e_menu_item_label_set(mi, _("Settings"));
|
||||
e_util_menu_item_theme_icon_set(mi, "preferences-system");
|
||||
e_menu_item_callback_set(mi, _tasks_cb_menu_configure, item->tasks);
|
||||
|
||||
m = e_gadcon_client_util_menu_items_append(item->tasks->gcc, m, 0);
|
||||
|
||||
mi = e_menu_item_new(item->border->border_menu);
|
||||
e_menu_item_label_set(mi, _("Tasks"));
|
||||
e_menu_item_submenu_set(mi, m);
|
||||
e_util_menu_item_theme_icon_set(mi, "preferences-system");
|
||||
|
||||
e_menu_activate_mouse(item->border->border_menu,
|
||||
e_util_menu_item_theme_icon_set(mi, "preferences-system");
|
||||
|
||||
e_menu_activate_mouse(item->border->border_menu,
|
||||
e_util_zone_current_get(e_manager_current_get()),
|
||||
cx + ev->output.x, cy + ev->output.y, 1, 1,
|
||||
E_MENU_POP_DIRECTION_DOWN, ev->timestamp);
|
||||
evas_event_feed_mouse_up(item->tasks->gcc->gadcon->evas, ev->button,
|
||||
EVAS_BUTTON_NONE, ev->timestamp, NULL);
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
static void
|
||||
|
@ -703,7 +704,7 @@ _tasks_cb_item_mouse_up(void *data, Evas *e __UNUSED__, Evas_Object *obj __UNUSE
|
|||
{
|
||||
Evas_Event_Mouse_Up *ev;
|
||||
Tasks_Item *item;
|
||||
|
||||
|
||||
ev = event_info;
|
||||
item = data;
|
||||
if (ev->button == 1)
|
||||
|
@ -866,7 +867,7 @@ _tasks_cb_event_border_icon_change(void *data __UNUSED__, int type __UNUSED__, v
|
|||
{
|
||||
E_Event_Border_Icon_Change *ev;
|
||||
E_Border *border;
|
||||
|
||||
|
||||
ev = event;
|
||||
border = ev->border;
|
||||
if (border) _tasks_refill_border(border);
|
||||
|
@ -895,7 +896,7 @@ _tasks_cb_event_desk_show(void *data __UNUSED__, int type __UNUSED__, void *even
|
|||
}
|
||||
|
||||
/***************************************************************************/
|
||||
/**/
|
||||
/**/
|
||||
|
||||
/**/
|
||||
/**/
|
||||
/***************************************************************************/
|
||||
|
|
Loading…
Reference in New Issue