process_list: again pretend...
Pretend to be professional :) Time to kill anyway
This commit is contained in:
parent
98eac5b7c8
commit
947c893fd2
|
@ -250,10 +250,9 @@ typedef struct {
|
|||
} pid_cpu_time_t;
|
||||
|
||||
static void
|
||||
_proc_pid_cpu_times_free(Ui *ui)
|
||||
_proc_pid_cpu_times_free(Ui_Data *pd)
|
||||
{
|
||||
pid_cpu_time_t *tmp;
|
||||
Ui_Data *pd = _private_data;
|
||||
|
||||
EINA_LIST_FREE(pd->cpu_times, tmp)
|
||||
{
|
||||
|
@ -262,22 +261,20 @@ _proc_pid_cpu_times_free(Ui *ui)
|
|||
}
|
||||
|
||||
static void
|
||||
_proc_pid_cpu_times_reset(Ui *ui)
|
||||
_proc_pid_cpu_times_reset(Ui_Data *pd)
|
||||
{
|
||||
Eina_List *l;
|
||||
pid_cpu_time_t *tmp;
|
||||
Ui_Data *pd = _private_data;
|
||||
|
||||
EINA_LIST_FOREACH(pd->cpu_times, l, tmp)
|
||||
tmp->cpu_time_prev = 0;
|
||||
}
|
||||
|
||||
static void
|
||||
_proc_pid_cpu_time_save(Ui *ui, Proc_Info *proc)
|
||||
_proc_pid_cpu_time_save(Ui_Data *pd, Proc_Info *proc)
|
||||
{
|
||||
Eina_List *l;
|
||||
pid_cpu_time_t *tmp;
|
||||
Ui_Data *pd = _private_data;
|
||||
|
||||
EINA_LIST_FOREACH(pd->cpu_times, l, tmp)
|
||||
{
|
||||
|
@ -298,11 +295,10 @@ _proc_pid_cpu_time_save(Ui *ui, Proc_Info *proc)
|
|||
}
|
||||
|
||||
static void
|
||||
_proc_pid_cpu_usage_get(Ui *ui, Proc_Info *proc)
|
||||
_proc_pid_cpu_usage_get(Ui_Data *pd, Proc_Info *proc)
|
||||
{
|
||||
Eina_List *l;
|
||||
pid_cpu_time_t *tmp;
|
||||
Ui_Data *pd = _private_data;
|
||||
|
||||
EINA_LIST_FOREACH(pd->cpu_times, l, tmp)
|
||||
{
|
||||
|
@ -312,14 +308,14 @@ _proc_pid_cpu_usage_get(Ui *ui, Proc_Info *proc)
|
|||
{
|
||||
proc->cpu_usage =
|
||||
(double) (proc->cpu_time - tmp->cpu_time_prev) /
|
||||
ui->settings.poll_delay;
|
||||
pd->ui->settings.poll_delay;
|
||||
}
|
||||
_proc_pid_cpu_time_save(ui, proc);
|
||||
_proc_pid_cpu_time_save(pd, proc);
|
||||
return;
|
||||
}
|
||||
}
|
||||
|
||||
_proc_pid_cpu_time_save(ui, proc);
|
||||
_proc_pid_cpu_time_save(pd, proc);
|
||||
}
|
||||
|
||||
static void
|
||||
|
@ -330,7 +326,7 @@ _item_unrealized_cb(void *data, Evas_Object *obj EINA_UNUSED,
|
|||
Ui_Data *pd;
|
||||
Eina_List *contents = NULL;
|
||||
|
||||
pd = _private_data;
|
||||
pd = data;
|
||||
|
||||
elm_genlist_item_all_contents_unset(event_info, &contents);
|
||||
|
||||
|
@ -616,14 +612,15 @@ _process_list_feedback_cb(void *data, Ecore_Thread *thread EINA_UNUSED,
|
|||
void *msg EINA_UNUSED)
|
||||
{
|
||||
Ui *ui;
|
||||
Ui_Data *pd = _private_data;
|
||||
Ui_Data *pd;
|
||||
Eina_List *list, *l, *l_next;
|
||||
Proc_Info *proc;
|
||||
Elm_Object_Item *it;
|
||||
int len = 0;
|
||||
list = NULL;
|
||||
|
||||
ui = data;
|
||||
pd = data;
|
||||
ui = pd->ui;
|
||||
|
||||
if (!eina_lock_take_try(&_lock))
|
||||
return;
|
||||
|
@ -674,7 +671,7 @@ _process_list_feedback_cb(void *data, Ecore_Thread *thread EINA_UNUSED,
|
|||
}
|
||||
else
|
||||
{
|
||||
_proc_pid_cpu_usage_get(ui, proc);
|
||||
_proc_pid_cpu_usage_get(pd, proc);
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -706,18 +703,20 @@ _process_list_feedback_cb(void *data, Ecore_Thread *thread EINA_UNUSED,
|
|||
}
|
||||
|
||||
static void
|
||||
_process_list_update(Ui *ui)
|
||||
_process_list_update(Ui_Data *pd)
|
||||
{
|
||||
_process_list_feedback_cb(ui, NULL, NULL);
|
||||
_process_list_feedback_cb(pd, NULL, NULL);
|
||||
}
|
||||
|
||||
static void
|
||||
_process_list(void *data, Ecore_Thread *thread)
|
||||
{
|
||||
Ui_Data *pd;
|
||||
Ui *ui;
|
||||
int delay = 1;
|
||||
|
||||
ui = data;
|
||||
pd = data;
|
||||
ui = pd->ui;
|
||||
|
||||
while (1)
|
||||
{
|
||||
|
@ -768,13 +767,15 @@ _btn_icon_state_init(Evas_Object *button, Eina_Bool reverse,
|
|||
}
|
||||
|
||||
static void
|
||||
_btn_clicked_state_save(Ui *ui, Evas_Object *btn)
|
||||
_btn_clicked_state_save(Ui_Data *pd, Evas_Object *btn)
|
||||
{
|
||||
Ui_Data *pd = _private_data;
|
||||
Ui *ui = pd->ui;
|
||||
|
||||
_btn_icon_state_update(btn, ui->settings.sort_reverse);
|
||||
|
||||
evisum_ui_config_save(ui);
|
||||
_process_list_update(ui);
|
||||
|
||||
_process_list_update(pd);
|
||||
|
||||
elm_scroller_page_bring_in(pd->scroller, 0, 0);
|
||||
}
|
||||
|
@ -783,105 +784,106 @@ static void
|
|||
_btn_pid_clicked_cb(void *data, Evas_Object *obj EINA_UNUSED,
|
||||
void *event_info EINA_UNUSED)
|
||||
{
|
||||
Ui *ui = data;
|
||||
Ui_Data *pd = _private_data;
|
||||
Ui_Data *pd = data;
|
||||
Ui *ui = pd->ui;
|
||||
|
||||
if (ui->settings.sort_type == SORT_BY_PID)
|
||||
ui->settings.sort_reverse = !ui->settings.sort_reverse;
|
||||
ui->settings.sort_type = SORT_BY_PID;
|
||||
|
||||
_btn_clicked_state_save(ui, pd->btn_pid);
|
||||
_btn_clicked_state_save(pd, pd->btn_pid);
|
||||
}
|
||||
|
||||
static void
|
||||
_btn_uid_clicked_cb(void *data, Evas_Object *obj EINA_UNUSED,
|
||||
void *event_info EINA_UNUSED)
|
||||
{
|
||||
Ui *ui = data;
|
||||
Ui_Data *pd = _private_data;
|
||||
Ui_Data *pd = data;
|
||||
Ui *ui = pd->ui;
|
||||
|
||||
if (ui->settings.sort_type == SORT_BY_UID)
|
||||
ui->settings.sort_reverse = !ui->settings.sort_reverse;
|
||||
ui->settings.sort_type = SORT_BY_UID;
|
||||
|
||||
_btn_clicked_state_save(ui, pd->btn_uid);
|
||||
_btn_clicked_state_save(pd, pd->btn_uid);
|
||||
}
|
||||
|
||||
static void
|
||||
_btn_cpu_usage_clicked_cb(void *data, Evas_Object *obj EINA_UNUSED,
|
||||
void *event_info EINA_UNUSED)
|
||||
{
|
||||
Ui *ui = data;
|
||||
Ui_Data *pd = _private_data;
|
||||
Ui_Data *pd = data;
|
||||
Ui *ui = pd->ui;
|
||||
|
||||
if (ui->settings.sort_type == SORT_BY_CPU_USAGE)
|
||||
ui->settings.sort_reverse = !ui->settings.sort_reverse;
|
||||
ui->settings.sort_type = SORT_BY_CPU_USAGE;
|
||||
|
||||
_btn_clicked_state_save(ui, pd->btn_cpu_usage);
|
||||
_btn_clicked_state_save(pd, pd->btn_cpu_usage);
|
||||
}
|
||||
|
||||
static void
|
||||
_btn_size_clicked_cb(void *data, Evas_Object *obj EINA_UNUSED,
|
||||
void *event_info EINA_UNUSED)
|
||||
{
|
||||
Ui *ui = data;
|
||||
Ui_Data *pd = _private_data;
|
||||
Ui_Data *pd = data;
|
||||
Ui *ui = pd->ui;
|
||||
|
||||
if (ui->settings.sort_type == SORT_BY_SIZE)
|
||||
ui->settings.sort_reverse = !ui->settings.sort_reverse;
|
||||
ui->settings.sort_type = SORT_BY_SIZE;
|
||||
|
||||
_btn_clicked_state_save(ui, pd->btn_size);
|
||||
_btn_clicked_state_save(pd, pd->btn_size);
|
||||
}
|
||||
|
||||
static void
|
||||
_btn_rss_clicked_cb(void *data, Evas_Object *obj EINA_UNUSED,
|
||||
void *event_info EINA_UNUSED)
|
||||
{
|
||||
Ui *ui = data;
|
||||
Ui_Data *pd = _private_data;
|
||||
Ui_Data *pd = data;
|
||||
Ui *ui = pd->ui;
|
||||
|
||||
if (ui->settings.sort_type == SORT_BY_RSS)
|
||||
ui->settings.sort_reverse = !ui->settings.sort_reverse;
|
||||
ui->settings.sort_type = SORT_BY_RSS;
|
||||
|
||||
_btn_clicked_state_save(ui, pd->btn_rss);
|
||||
_btn_clicked_state_save(pd, pd->btn_rss);
|
||||
}
|
||||
|
||||
static void
|
||||
_btn_cmd_clicked_cb(void *data, Evas_Object *obj EINA_UNUSED,
|
||||
void *event_info EINA_UNUSED)
|
||||
{
|
||||
Ui *ui = data;
|
||||
Ui_Data *pd = _private_data;
|
||||
Ui_Data *pd = data;
|
||||
Ui *ui = pd->ui;
|
||||
|
||||
if (ui->settings.sort_type == SORT_BY_CMD)
|
||||
ui->settings.sort_reverse = !ui->settings.sort_reverse;
|
||||
ui->settings.sort_type = SORT_BY_CMD;
|
||||
|
||||
_btn_clicked_state_save(ui, pd->btn_cmd);
|
||||
_btn_clicked_state_save(pd, pd->btn_cmd);
|
||||
}
|
||||
|
||||
static void
|
||||
_btn_state_clicked_cb(void *data, Evas_Object *obj EINA_UNUSED,
|
||||
void *event_info EINA_UNUSED)
|
||||
{
|
||||
Ui *ui = data;
|
||||
Ui_Data *pd = _private_data;
|
||||
Ui_Data *pd = data;
|
||||
Ui *ui = pd->ui;
|
||||
|
||||
if (ui->settings.sort_type == SORT_BY_STATE)
|
||||
ui->settings.sort_reverse = !ui->settings.sort_reverse;
|
||||
ui->settings.sort_type = SORT_BY_STATE;
|
||||
|
||||
_btn_clicked_state_save(ui, pd->btn_state);
|
||||
_btn_clicked_state_save(pd, pd->btn_state);
|
||||
}
|
||||
|
||||
static void
|
||||
_item_menu_dismissed_cb(void *data EINA_UNUSED, Evas_Object *obj,
|
||||
void *ev EINA_UNUSED)
|
||||
{
|
||||
Ui_Data *pd = _private_data;
|
||||
Ui_Data *pd = data;
|
||||
|
||||
evas_object_del(obj);
|
||||
|
||||
pd->menu = NULL;
|
||||
|
@ -891,7 +893,7 @@ static void
|
|||
_item_menu_start_cb(void *data, Evas_Object *obj EINA_UNUSED,
|
||||
void *event_info EINA_UNUSED)
|
||||
{
|
||||
Ui_Data *pd = _private_data;
|
||||
Ui_Data *pd = data;
|
||||
kill(pd->selected_pid, SIGCONT);
|
||||
}
|
||||
|
||||
|
@ -899,7 +901,7 @@ static void
|
|||
_item_menu_stop_cb(void *data, Evas_Object *obj EINA_UNUSED,
|
||||
void *event_info EINA_UNUSED)
|
||||
{
|
||||
Ui_Data *pd = _private_data;
|
||||
Ui_Data *pd = data;
|
||||
kill(pd->selected_pid, SIGSTOP);
|
||||
}
|
||||
|
||||
|
@ -907,7 +909,7 @@ static void
|
|||
_item_menu_kill_cb(void *data, Evas_Object *obj EINA_UNUSED,
|
||||
void *event_info EINA_UNUSED)
|
||||
{
|
||||
Ui_Data *pd = _private_data;
|
||||
Ui_Data *pd = data;
|
||||
kill(pd->selected_pid, SIGKILL);
|
||||
}
|
||||
|
||||
|
@ -915,7 +917,7 @@ static void
|
|||
_item_menu_cancel_cb(void *data, Evas_Object *obj EINA_UNUSED,
|
||||
void *event_info EINA_UNUSED)
|
||||
{
|
||||
Ui_Data *pd = _private_data;
|
||||
Ui_Data *pd = data;
|
||||
elm_menu_close(pd->menu);
|
||||
pd->menu = NULL;
|
||||
}
|
||||
|
@ -924,14 +926,11 @@ static void
|
|||
_item_menu_debug_cb(void *data, Evas_Object *obj EINA_UNUSED,
|
||||
void *event_info EINA_UNUSED)
|
||||
{
|
||||
Ui *ui;
|
||||
Proc_Info *proc;
|
||||
const char *terminal = "xterm";
|
||||
Ui_Data *pd = _private_data;
|
||||
Ui_Data *pd = data;
|
||||
|
||||
ui = data;
|
||||
|
||||
_item_menu_cancel_cb(ui, NULL, NULL);
|
||||
_item_menu_cancel_cb(pd, NULL, NULL);
|
||||
|
||||
proc = proc_info_by_pid(pd->selected_pid);
|
||||
if (!proc) return;
|
||||
|
@ -946,10 +945,10 @@ _item_menu_debug_cb(void *data, Evas_Object *obj EINA_UNUSED,
|
|||
}
|
||||
|
||||
static void
|
||||
_item_menu_actions_add(Evas_Object *menu, Elm_Object_Item *menu_it, Ui *ui)
|
||||
_item_menu_actions_add(Evas_Object *menu, Elm_Object_Item *menu_it, Ui_Data *pd)
|
||||
{
|
||||
elm_menu_item_add(menu, menu_it, evisum_icon_path_get("bug"),
|
||||
_("Debug"), _item_menu_debug_cb, ui);
|
||||
_("Debug"), _item_menu_debug_cb, pd);
|
||||
}
|
||||
|
||||
static void
|
||||
|
@ -970,22 +969,22 @@ _item_menu_properties_cb(void *data, Evas_Object *obj EINA_UNUSED,
|
|||
void *event_info EINA_UNUSED)
|
||||
{
|
||||
Ui *ui;
|
||||
Ui_Data *pd = _private_data;
|
||||
Ui_Data *pd = data;
|
||||
|
||||
ui = data;
|
||||
ui = pd->ui;
|
||||
|
||||
_item_menu_cancel_cb(ui, NULL, NULL);
|
||||
_item_menu_cancel_cb(pd, NULL, NULL);
|
||||
|
||||
_process_win_add(ui->win, pd->selected_pid, ui->settings.poll_delay);
|
||||
}
|
||||
|
||||
static Evas_Object *
|
||||
_item_menu_create(Ui *ui, Proc_Info *proc)
|
||||
_item_menu_create(Ui_Data *pd, Proc_Info *proc)
|
||||
{
|
||||
Elm_Object_Item *menu_it, *menu_it2;
|
||||
Evas_Object *menu;
|
||||
Eina_Bool stopped;
|
||||
Ui_Data *pd = _private_data;
|
||||
Ui *ui = pd->ui;
|
||||
|
||||
if (!proc) return NULL;
|
||||
|
||||
|
@ -995,7 +994,7 @@ _item_menu_create(Ui *ui, Proc_Info *proc)
|
|||
if (!menu) return NULL;
|
||||
|
||||
evas_object_smart_callback_add(menu, "dismissed",
|
||||
_item_menu_dismissed_cb, ui);
|
||||
_item_menu_dismissed_cb, pd);
|
||||
|
||||
stopped = !(!strcmp(proc->state, "stop"));
|
||||
|
||||
|
@ -1005,27 +1004,27 @@ _item_menu_create(Ui *ui, Proc_Info *proc)
|
|||
|
||||
menu_it2 = elm_menu_item_add(menu, menu_it, evisum_icon_path_get("window"),
|
||||
_("Actions"), NULL, NULL);
|
||||
_item_menu_actions_add(menu, menu_it2, ui);
|
||||
_item_menu_actions_add(menu, menu_it2, pd);
|
||||
elm_menu_item_separator_add(menu, menu_it);
|
||||
|
||||
menu_it2 = elm_menu_item_add(menu, menu_it, evisum_icon_path_get("start"),
|
||||
_("Start"), _item_menu_start_cb, ui);
|
||||
_("Start"), _item_menu_start_cb, pd);
|
||||
|
||||
elm_object_item_disabled_set(menu_it2, stopped);
|
||||
menu_it2 = elm_menu_item_add(menu, menu_it, evisum_icon_path_get("stop"),
|
||||
_("Stop"), _item_menu_stop_cb, ui);
|
||||
_("Stop"), _item_menu_stop_cb, pd);
|
||||
|
||||
elm_object_item_disabled_set(menu_it2, !stopped);
|
||||
elm_menu_item_add(menu, menu_it, evisum_icon_path_get("kill"), "Kill",
|
||||
_item_menu_kill_cb, ui);
|
||||
_item_menu_kill_cb, pd);
|
||||
|
||||
elm_menu_item_separator_add(menu, menu_it);
|
||||
menu_it2 = elm_menu_item_add(menu, menu_it, evisum_icon_path_get("info"),
|
||||
_("Properties"), _item_menu_properties_cb, ui);
|
||||
_("Properties"), _item_menu_properties_cb, pd);
|
||||
|
||||
elm_menu_item_separator_add(menu, menu_it);
|
||||
elm_menu_item_add(menu, menu_it, evisum_icon_path_get("cancel"),
|
||||
_("Cancel"), _item_menu_cancel_cb, ui);
|
||||
_("Cancel"), _item_menu_cancel_cb, pd);
|
||||
|
||||
return menu;
|
||||
}
|
||||
|
@ -1036,7 +1035,7 @@ _item_pid_secondary_clicked_cb(void *data EINA_UNUSED, Evas *e EINA_UNUSED,
|
|||
{
|
||||
Evas_Object *menu;
|
||||
Evas_Event_Mouse_Up *ev;
|
||||
Ui *ui;
|
||||
Ui_Data *pd;
|
||||
Elm_Object_Item *it;
|
||||
Proc_Info *proc;
|
||||
|
||||
|
@ -1047,9 +1046,9 @@ _item_pid_secondary_clicked_cb(void *data EINA_UNUSED, Evas *e EINA_UNUSED,
|
|||
proc = elm_object_item_data_get(it);
|
||||
if (!proc) return;
|
||||
|
||||
ui = data;
|
||||
pd = data;
|
||||
|
||||
menu = _item_menu_create(ui, proc);
|
||||
menu = _item_menu_create(pd, proc);
|
||||
if (!menu) return;
|
||||
|
||||
elm_menu_move(menu, ev->canvas.x, ev->canvas.y);
|
||||
|
@ -1062,9 +1061,9 @@ _item_pid_clicked_cb(void *data, Evas_Object *obj EINA_UNUSED, void *event_info)
|
|||
Ui *ui;
|
||||
Elm_Object_Item *it;
|
||||
Proc_Info *proc;
|
||||
Ui_Data *pd = _private_data;
|
||||
Ui_Data *pd = data;
|
||||
|
||||
ui = data;
|
||||
ui = pd->ui;
|
||||
it = event_info;
|
||||
|
||||
elm_genlist_item_selected_set(it, EINA_FALSE);
|
||||
|
@ -1136,10 +1135,8 @@ _btn_menu_clicked_cb(void *data, Evas_Object *obj,
|
|||
}
|
||||
|
||||
static void
|
||||
_evisum_process_filter(Ui *ui, const char *text)
|
||||
_evisum_process_filter(Ui_Data *pd, const char *text)
|
||||
{
|
||||
Ui_Data *pd = _private_data;
|
||||
|
||||
if (pd->search_text)
|
||||
free(pd->search_text);
|
||||
|
||||
|
@ -1150,15 +1147,17 @@ static void
|
|||
_evisum_search_keypress_cb(void *data, Evas *e EINA_UNUSED, Evas_Object *obj,
|
||||
void *event_info)
|
||||
{
|
||||
Ui * ui;
|
||||
Ui *ui;
|
||||
const char *markup;
|
||||
char *text;
|
||||
Evas_Object *entry;
|
||||
Evas_Event_Key_Down *event;
|
||||
Ui_Data *pd;
|
||||
|
||||
pd = data;
|
||||
ui = pd->ui;
|
||||
event = event_info;
|
||||
entry = obj;
|
||||
ui = data;
|
||||
|
||||
if (!event) return;
|
||||
|
||||
|
@ -1168,17 +1167,17 @@ _evisum_search_keypress_cb(void *data, Evas *e EINA_UNUSED, Evas_Object *obj,
|
|||
text = elm_entry_markup_to_utf8(markup);
|
||||
if (text)
|
||||
{
|
||||
_evisum_process_filter(ui, text);
|
||||
_evisum_process_filter(pd, text);
|
||||
free(text);
|
||||
}
|
||||
}
|
||||
|
||||
static Evas_Object *
|
||||
_ui_content_system_add(Ui *ui, Evas_Object *parent)
|
||||
_ui_content_system_add(Ui_Data *pd, Evas_Object *parent)
|
||||
{
|
||||
Evas_Object *box, *hbox, *frame, *table;
|
||||
Evas_Object *entry, *pb, *btn, *plist;
|
||||
Ui_Data *pd = _private_data;
|
||||
Ui *ui = pd->ui;
|
||||
int i = 0;
|
||||
|
||||
table = elm_table_add(parent);
|
||||
|
@ -1196,7 +1195,7 @@ _ui_content_system_add(Ui *ui, Evas_Object *parent)
|
|||
evas_object_show(btn);
|
||||
elm_table_pack(table, btn, i++, 1, 1, 1);
|
||||
evas_object_smart_callback_add(btn, "clicked",
|
||||
_btn_cmd_clicked_cb, ui);
|
||||
_btn_cmd_clicked_cb, pd);
|
||||
|
||||
pd->btn_uid = btn = elm_button_add(parent);
|
||||
_btn_icon_state_init(btn,
|
||||
|
@ -1208,7 +1207,7 @@ _ui_content_system_add(Ui *ui, Evas_Object *parent)
|
|||
evas_object_show(btn);
|
||||
elm_table_pack(table, btn, i++, 1, 1, 1);
|
||||
evas_object_smart_callback_add(btn, "clicked",
|
||||
_btn_uid_clicked_cb, ui);
|
||||
_btn_uid_clicked_cb, pd);
|
||||
|
||||
pd->btn_pid = btn = elm_button_add(parent);
|
||||
_btn_icon_state_init(btn,
|
||||
|
@ -1220,7 +1219,7 @@ _ui_content_system_add(Ui *ui, Evas_Object *parent)
|
|||
evas_object_show(btn);
|
||||
elm_table_pack(table, btn, i++, 1, 1, 1);
|
||||
evas_object_smart_callback_add(btn, "clicked",
|
||||
_btn_pid_clicked_cb, ui);
|
||||
_btn_pid_clicked_cb, pd);
|
||||
|
||||
pd->btn_size = btn = elm_button_add(parent);
|
||||
_btn_icon_state_init(btn,
|
||||
|
@ -1232,7 +1231,7 @@ _ui_content_system_add(Ui *ui, Evas_Object *parent)
|
|||
evas_object_show(btn);
|
||||
elm_table_pack(table, btn, i++, 1, 1, 1);
|
||||
evas_object_smart_callback_add(btn, "clicked",
|
||||
_btn_size_clicked_cb, ui);
|
||||
_btn_size_clicked_cb, pd);
|
||||
|
||||
pd->btn_rss = btn = elm_button_add(parent);
|
||||
_btn_icon_state_init(btn,
|
||||
|
@ -1244,7 +1243,7 @@ _ui_content_system_add(Ui *ui, Evas_Object *parent)
|
|||
evas_object_show(btn);
|
||||
elm_table_pack(table, btn, i++, 1, 1, 1);
|
||||
evas_object_smart_callback_add(btn, "clicked",
|
||||
_btn_rss_clicked_cb, ui);
|
||||
_btn_rss_clicked_cb, pd);
|
||||
|
||||
pd->btn_state = btn = elm_button_add(parent);
|
||||
_btn_icon_state_init(btn,
|
||||
|
@ -1256,7 +1255,7 @@ _ui_content_system_add(Ui *ui, Evas_Object *parent)
|
|||
evas_object_show(btn);
|
||||
elm_table_pack(table, btn, i++, 1, 1, 1);
|
||||
evas_object_smart_callback_add(btn, "clicked",
|
||||
_btn_state_clicked_cb, ui);
|
||||
_btn_state_clicked_cb, pd);
|
||||
|
||||
pd->btn_cpu_usage = btn = elm_button_add(parent);
|
||||
_btn_icon_state_init(btn,
|
||||
|
@ -1268,7 +1267,7 @@ _ui_content_system_add(Ui *ui, Evas_Object *parent)
|
|||
evas_object_show(btn);
|
||||
elm_table_pack(table, btn, i++, 1, 1, 1);
|
||||
evas_object_smart_callback_add(btn, "clicked",
|
||||
_btn_cpu_usage_clicked_cb, ui);
|
||||
_btn_cpu_usage_clicked_cb, pd);
|
||||
|
||||
pd->scroller = pd->genlist = plist = elm_genlist_add(parent);
|
||||
elm_scroller_gravity_set(pd->scroller, 0.0, 1.0);
|
||||
|
@ -1300,7 +1299,7 @@ _ui_content_system_add(Ui *ui, Evas_Object *parent)
|
|||
elm_entry_editable_set(entry, EINA_TRUE);
|
||||
evas_object_show(entry);
|
||||
evas_object_event_callback_add(pd->entry, EVAS_CALLBACK_KEY_DOWN,
|
||||
_evisum_search_keypress_cb, ui);
|
||||
_evisum_search_keypress_cb, pd);
|
||||
|
||||
elm_box_pack_end(hbox, entry);
|
||||
elm_table_pack(table, hbox, 0, 3, i, 1);
|
||||
|
@ -1363,11 +1362,11 @@ _ui_content_system_add(Ui *ui, Evas_Object *parent)
|
|||
elm_object_content_set(frame, pb);
|
||||
|
||||
evas_object_smart_callback_add(pd->genlist, "selected",
|
||||
_item_pid_clicked_cb, ui);
|
||||
_item_pid_clicked_cb, pd);
|
||||
evas_object_event_callback_add(pd->genlist, EVAS_CALLBACK_MOUSE_UP,
|
||||
_item_pid_secondary_clicked_cb, ui);
|
||||
_item_pid_secondary_clicked_cb, pd);
|
||||
evas_object_smart_callback_add(pd->genlist, "unrealized",
|
||||
_item_unrealized_cb, ui);
|
||||
_item_unrealized_cb, pd);
|
||||
|
||||
frame = elm_frame_add(parent);
|
||||
evas_object_size_hint_weight_set(frame, EXPAND, EXPAND);
|
||||
|
@ -1376,6 +1375,8 @@ _ui_content_system_add(Ui *ui, Evas_Object *parent)
|
|||
evas_object_show(frame);
|
||||
elm_object_content_set(frame, table);
|
||||
|
||||
ecore_timer_add(2.0, _bring_in, pd);
|
||||
|
||||
return frame;
|
||||
}
|
||||
|
||||
|
@ -1384,11 +1385,11 @@ _evisum_key_down_cb(void *data, Evas *e, Evas_Object *obj, void *event_info)
|
|||
{
|
||||
Evas_Event_Key_Down *ev;
|
||||
Ui *ui;
|
||||
Ui_Data *pd = _private_data;
|
||||
Ui_Data *pd = data;
|
||||
Eina_Bool control;
|
||||
|
||||
ev = event_info;
|
||||
ui = data;
|
||||
ui = pd->ui;
|
||||
|
||||
if (!ev || !ev->keyname)
|
||||
return;
|
||||
|
@ -1420,8 +1421,8 @@ _evisum_key_down_cb(void *data, Evas *e, Evas_Object *obj, void *event_info)
|
|||
static void
|
||||
_win_resize_cb(void *data, Evas *e, Evas_Object *obj, void *event_info)
|
||||
{
|
||||
Ui *ui = data;
|
||||
Ui_Data *pd = _private_data;
|
||||
Ui_Data *pd = data;
|
||||
Ui *ui = pd->ui;
|
||||
|
||||
if (eina_lock_take_try(&_lock))
|
||||
{
|
||||
|
@ -1462,12 +1463,11 @@ static void
|
|||
_system_info_all_poll_feedback_cb(void *data, Ecore_Thread *thread, void *msg)
|
||||
{
|
||||
Ui *ui;
|
||||
Evas_Object *pb;
|
||||
Sys_Info *info;
|
||||
double ratio, value, usage = 0.0;
|
||||
Ui_Data *pd = _private_data;
|
||||
Ui_Data *pd = data;
|
||||
|
||||
ui = data;
|
||||
ui = pd->ui;
|
||||
info = msg;
|
||||
|
||||
if (ecore_thread_check(thread))
|
||||
|
@ -1486,11 +1486,10 @@ _system_info_all_poll_feedback_cb(void *data, Ecore_Thread *thread, void *msg)
|
|||
if (ui->mem.zfs_mounted)
|
||||
info->memory.used += info->memory.zfs_arc_used;
|
||||
|
||||
pb = pd->pb_mem;
|
||||
ratio = info->memory.total / 100.0;
|
||||
value = info->memory.used / ratio;
|
||||
elm_progressbar_value_set(pb, value / 100);
|
||||
elm_progressbar_unit_format_set(pb, eina_slstr_printf("%s / %s",
|
||||
elm_progressbar_value_set(pd->pb_mem, value / 100);
|
||||
elm_progressbar_unit_format_set(pd->pb_mem, eina_slstr_printf("%s / %s",
|
||||
evisum_size_format(info->memory.used),
|
||||
evisum_size_format(info->memory.total)));
|
||||
usage = 0.0;
|
||||
|
@ -1517,11 +1516,10 @@ out:
|
|||
static Eina_Bool
|
||||
_elm_config_changed_cb(void *data, int type EINA_UNUSED, void *event EINA_UNUSED)
|
||||
{
|
||||
Ui *ui = data;
|
||||
Ui_Data *pd = _private_data;
|
||||
Ui_Data *pd = data;
|
||||
|
||||
elm_genlist_clear(pd->genlist);
|
||||
_process_list_update(ui);
|
||||
_process_list_update(pd);
|
||||
|
||||
return EINA_TRUE;
|
||||
}
|
||||
|
@ -1529,9 +1527,9 @@ _elm_config_changed_cb(void *data, int type EINA_UNUSED, void *event EINA_UNUSED
|
|||
static Eina_Bool
|
||||
_evisum_config_changed_cb(void *data, int type EINA_UNUSED, void *event EINA_UNUSED)
|
||||
{
|
||||
Ui *ui = data;
|
||||
Ui_Data *pd = data;
|
||||
|
||||
_proc_pid_cpu_times_reset(ui);
|
||||
_proc_pid_cpu_times_reset(pd);
|
||||
|
||||
return EINA_TRUE;
|
||||
}
|
||||
|
@ -1540,8 +1538,10 @@ static void
|
|||
_win_del_cb(void *data EINA_UNUSED, Evas_Object *obj EINA_UNUSED,
|
||||
void *event_info EINA_UNUSED)
|
||||
{
|
||||
Ui *ui = data;
|
||||
Ui_Data *pd = _private_data;
|
||||
Ui *ui;
|
||||
Ui_Data *pd = data;
|
||||
|
||||
ui = pd->ui;
|
||||
|
||||
evas_object_del(obj);
|
||||
|
||||
|
@ -1558,7 +1558,6 @@ _win_del_cb(void *data EINA_UNUSED, Evas_Object *obj EINA_UNUSED,
|
|||
ecore_thread_wait(pd->thread, 0.2);
|
||||
|
||||
ui->thread_system = pd->thread = NULL;
|
||||
|
||||
ui->win = NULL;
|
||||
|
||||
if (ui->processes.animator)
|
||||
|
@ -1569,7 +1568,7 @@ _win_del_cb(void *data EINA_UNUSED, Evas_Object *obj EINA_UNUSED,
|
|||
|
||||
if (pd->search_text) free(pd->search_text);
|
||||
|
||||
_proc_pid_cpu_times_free(ui);
|
||||
_proc_pid_cpu_times_free(pd);
|
||||
|
||||
eina_lock_free(&_lock);
|
||||
|
||||
|
@ -1595,59 +1594,51 @@ ui_process_list_win_add(Ui *ui)
|
|||
|
||||
Ui_Data *pd = _private_data = calloc(1, sizeof(Ui_Data));
|
||||
if (!pd) return;
|
||||
|
||||
pd->cpu_times = NULL;
|
||||
pd->cpu_list = NULL;
|
||||
pd->selected_pid = -1;
|
||||
pd->ui = ui;
|
||||
|
||||
elm_policy_set(ELM_POLICY_QUIT, ELM_POLICY_QUIT_LAST_WINDOW_CLOSED);
|
||||
ui->win = win = elm_win_util_standard_add("evisum", "evisum");
|
||||
elm_win_title_set(win, _("EFL System Monitor"));
|
||||
icon = elm_icon_add(win);
|
||||
elm_icon_standard_set(icon, "evisum");
|
||||
elm_win_icon_object_set(win, icon);
|
||||
evas_object_smart_callback_add(win, "delete,request", _win_del_cb, pd);
|
||||
|
||||
if (_evisum_config->width > 1 && _evisum_config->height > 1)
|
||||
evas_object_resize(win, _evisum_config->width, _evisum_config->height);
|
||||
else
|
||||
evas_object_resize(win, EVISUM_WIN_WIDTH * elm_config_scale_get(),
|
||||
EVISUM_WIN_HEIGHT * elm_config_scale_get());
|
||||
|
||||
elm_win_title_set(win, _("EFL System Monitor"));
|
||||
elm_win_center(win, EINA_TRUE, EINA_TRUE);
|
||||
evas_object_smart_callback_add(win, "delete,request", _win_del_cb, ui);
|
||||
evas_object_show(win);
|
||||
|
||||
ecore_timer_add(2.0, _bring_in, pd);
|
||||
|
||||
if (evisum_ui_effects_enabled_get() || evisum_ui_backgrounds_enabled_get())
|
||||
evisum_ui_background_random_add(ui->win, 1);
|
||||
|
||||
o = _ui_content_system_add(ui, win);
|
||||
o = _ui_content_system_add(pd, win);
|
||||
elm_object_content_set(win, o);
|
||||
pd->cache = evisum_ui_item_cache_new(pd->genlist, _item_create, 50);
|
||||
|
||||
if (evisum_ui_effects_enabled_get())
|
||||
evisum_ui_animate(ui);
|
||||
|
||||
pd->cache = evisum_ui_item_cache_new(pd->genlist, _item_create, 50);
|
||||
|
||||
ui->thread_system =
|
||||
ecore_thread_feedback_run(_system_info_all_poll,
|
||||
_system_info_all_poll_feedback_cb,
|
||||
NULL, NULL, ui, EINA_FALSE);
|
||||
NULL, NULL, pd, EINA_FALSE);
|
||||
pd->thread =
|
||||
ecore_thread_feedback_run(_process_list,
|
||||
_process_list_feedback_cb,
|
||||
NULL, NULL, ui, EINA_FALSE);
|
||||
_process_list_update(ui);
|
||||
NULL, NULL, pd, EINA_FALSE);
|
||||
_process_list_update(pd);
|
||||
|
||||
evas_object_event_callback_add(ui->win, EVAS_CALLBACK_RESIZE,
|
||||
_win_resize_cb, ui);
|
||||
_win_resize_cb, pd);
|
||||
evas_object_event_callback_add(o, EVAS_CALLBACK_KEY_DOWN,
|
||||
_evisum_key_down_cb, ui);
|
||||
_evisum_key_down_cb, pd);
|
||||
|
||||
ecore_event_handler_add(ELM_EVENT_CONFIG_ALL_CHANGED,
|
||||
_elm_config_changed_cb, ui);
|
||||
_elm_config_changed_cb, pd);
|
||||
ecore_event_handler_add(EVISUM_EVENT_CONFIG_CHANGED,
|
||||
_evisum_config_changed_cb, pd);
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue