netstar pushed a commit to branch master. http://git.enlightenment.org/apps/evisum.git/commit/?id=edd8923326c22960f83e82665f8ffdeb62aeca4a
commit edd8923326c22960f83e82665f8ffdeb62aeca4a Author: Alastair Poole <[email protected]> Date: Wed Jun 17 11:06:45 2020 +0100 ui: track proc state properly --- src/bin/ui/ui.c | 6 +++--- src/bin/ui/ui_misc.c | 5 +++-- src/bin/ui/ui_process_view.c | 20 +++++++++++++++++--- src/bin/ui/ui_process_view.h | 3 +++ 4 files changed, 26 insertions(+), 8 deletions(-) diff --git a/src/bin/ui/ui.c b/src/bin/ui/ui.c index efa2ea2..d1761b6 100644 --- a/src/bin/ui/ui.c +++ b/src/bin/ui/ui.c @@ -828,7 +828,7 @@ _item_menu_create(Ui *ui, Proc_Info *proc) evas_object_smart_callback_add(menu, "dismissed", _item_menu_dismissed_cb, ui); - stopped = !!strcmp(proc->state, "stop"); + stopped = !(!strcmp(proc->state, "stop")); menu_it = elm_menu_item_add(menu, NULL, evisum_icon_path_get("window"), proc->command, NULL, NULL); @@ -841,11 +841,11 @@ _item_menu_create(Ui *ui, Proc_Info *proc) menu_it2 = elm_menu_item_add(menu, menu_it, evisum_icon_path_get("start"), _("Start"), _item_menu_start_cb, proc); - if (stopped) elm_object_item_disabled_set(menu_it2, EINA_TRUE); + 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, proc); - if (!stopped) elm_object_item_disabled_set(menu_it2, EINA_TRUE); + 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, proc); diff --git a/src/bin/ui/ui_misc.c b/src/bin/ui/ui_misc.c index e978041..9a4cf27 100644 --- a/src/bin/ui/ui_misc.c +++ b/src/bin/ui/ui_misc.c @@ -289,12 +289,13 @@ ui_tab_misc_update(Ui *ui, Sys_Info *sysinfo) evas_object_size_hint_weight_set(box, EXPAND, EXPAND); evas_object_show(box); + _network_usage_add(ui, box, sysinfo->incoming, EINA_TRUE); + _network_usage_add(ui, box, sysinfo->outgoing, EINA_FALSE); + _separator_add(box); if (_battery_usage_add(box, &sysinfo->power)) _separator_add(box); if (_sensor_usage_add(box, sysinfo)) _separator_add(box); - _network_usage_add(ui, box, sysinfo->incoming, EINA_TRUE); - _network_usage_add(ui, box, sysinfo->outgoing, EINA_FALSE); frame = elm_frame_add(ui->misc_activity); evas_object_size_hint_align_set(frame, FILL, FILL); diff --git a/src/bin/ui/ui_process_view.c b/src/bin/ui/ui_process_view.c index 1099592..7c8f4ec 100644 --- a/src/bin/ui/ui_process_view.c +++ b/src/bin/ui/ui_process_view.c @@ -360,9 +360,23 @@ _proc_info_update(void *data) _win_title_set(ui->win, _("%s (%d) - Not running"), ui->selected_cmd, ui->selected_pid); + elm_object_disabled_set(ui->btn_start, EINA_TRUE); + elm_object_disabled_set(ui->btn_stop, EINA_TRUE); + elm_object_disabled_set(ui->btn_kill, EINA_TRUE); return ECORE_CALLBACK_CANCEL; } + if (!strcmp(proc->state, "stop")) + { + elm_object_disabled_set(ui->btn_stop, EINA_TRUE); + elm_object_disabled_set(ui->btn_start, EINA_FALSE); + } + else + { + elm_object_disabled_set(ui->btn_stop, EINA_FALSE); + elm_object_disabled_set(ui->btn_start, EINA_TRUE); + } + elm_object_text_set(ui->entry_pid_cmd, proc->command); pwd_entry = getpwuid(proc->uid); if (pwd_entry) @@ -587,7 +601,7 @@ _process_tab_add(Evas_Object *parent, Ui_Process *ui) elm_object_style_set(border, "pad_small"); evas_object_show(border); - button = elm_button_add(parent); + ui->btn_stop = button = elm_button_add(parent); evas_object_size_hint_weight_set(button, EXPAND, EXPAND); evas_object_size_hint_align_set(button, FILL, FILL); elm_object_text_set(button, _("Stop")); @@ -602,7 +616,7 @@ _process_tab_add(Evas_Object *parent, Ui_Process *ui) elm_object_style_set(border, "pad_small"); evas_object_show(border); - button = elm_button_add(parent); + ui->btn_start = button = elm_button_add(parent); evas_object_size_hint_weight_set(button, EXPAND, EXPAND); evas_object_size_hint_align_set(button, FILL, FILL); elm_object_text_set(button, _("Start")); @@ -617,7 +631,7 @@ _process_tab_add(Evas_Object *parent, Ui_Process *ui) elm_object_style_set(border, "pad_small"); evas_object_show(border); - button = elm_button_add(parent); + ui->btn_kill = button = elm_button_add(parent); evas_object_size_hint_weight_set(button, EXPAND, EXPAND); evas_object_size_hint_align_set(button, FILL, FILL); elm_object_text_set(button, _("Kill")); diff --git a/src/bin/ui/ui_process_view.h b/src/bin/ui/ui_process_view.h index e382a4a..19a3876 100644 --- a/src/bin/ui/ui_process_view.h +++ b/src/bin/ui/ui_process_view.h @@ -36,6 +36,9 @@ typedef struct _Ui_Process { Evas_Object *entry_pid_pri; Evas_Object *entry_pid_state; Evas_Object *entry_pid_cpu_usage; + Evas_Object *btn_start; + Evas_Object *btn_stop; + Evas_Object *btn_kill; Evas_Object *btn_thread_id; Evas_Object *btn_thread_name; --
