ui: yeh rewrite
This commit is contained in:
parent
7abca40be8
commit
6cc91568e7
|
@ -115,6 +115,7 @@ system_info_basic_get(void)
|
|||
info->cores = system_cpu_usage_get(&info->cpu_count);
|
||||
|
||||
system_memory_usage_get(&info->memory);
|
||||
system_power_state_get(&info->power);
|
||||
|
||||
return info;
|
||||
}
|
||||
|
|
|
@ -42,12 +42,17 @@ typedef struct Ui
|
|||
Evas_Object *win;
|
||||
Evas_Object *bg;
|
||||
Evas_Object *menu;
|
||||
|
||||
Evas_Object *summary_box;
|
||||
Evas_Object *summary_bat;
|
||||
|
||||
Evas_Object *scroller;
|
||||
|
||||
Ecore_Thread *thread;
|
||||
|
||||
Evas_Object *progress_cpu;
|
||||
Evas_Object *progress_mem;
|
||||
Evas_Object *progress_bat;
|
||||
|
||||
Evas_Object *btn_pid;
|
||||
Evas_Object *btn_uid;
|
||||
|
|
|
@ -1200,7 +1200,7 @@ _ui_content_system_add(Ui *ui, Evas_Object *parent)
|
|||
evas_object_show(box);
|
||||
elm_table_pack(table, box, 0, 0, i, 1);
|
||||
|
||||
hbox = elm_box_add(box);
|
||||
ui->processes.summary_box = hbox = elm_box_add(box);
|
||||
evas_object_size_hint_weight_set(hbox, EXPAND, 0);
|
||||
evas_object_size_hint_align_set(hbox, FILL, 0);
|
||||
elm_box_horizontal_set(hbox, EINA_TRUE);
|
||||
|
@ -1236,6 +1236,19 @@ _ui_content_system_add(Ui *ui, Evas_Object *parent)
|
|||
evas_object_show(pb);
|
||||
elm_object_content_set(frame, pb);
|
||||
|
||||
ui->processes.summary_bat = frame = elm_frame_add(hbox);
|
||||
evas_object_size_hint_weight_set(frame, EXPAND, EXPAND);
|
||||
evas_object_size_hint_align_set(frame, FILL, FILL);
|
||||
elm_object_style_set(frame, "pad_small");
|
||||
evas_object_show(frame);
|
||||
elm_box_pack_end(hbox, frame);
|
||||
|
||||
ui->processes.progress_bat = pb = elm_progressbar_add(parent);
|
||||
evas_object_size_hint_align_set(pb, FILL, FILL);
|
||||
evas_object_size_hint_weight_set(pb, EXPAND, EXPAND);
|
||||
evas_object_show(pb);
|
||||
elm_object_content_set(frame, pb);
|
||||
|
||||
evas_object_smart_callback_add(ui->processes.btn_pid, "clicked",
|
||||
_btn_pid_clicked_cb, ui);
|
||||
evas_object_smart_callback_add(ui->processes.btn_uid, "clicked",
|
||||
|
@ -1385,7 +1398,7 @@ _system_info_all_poll_feedback_cb(void *data, Ecore_Thread *thread, void *msg)
|
|||
Ui *ui;
|
||||
Evas_Object *pb;
|
||||
Sys_Info *info;
|
||||
double ratio, value, cpu_usage = 0.0;
|
||||
double ratio, value, usage = 0.0;
|
||||
|
||||
ui = data;
|
||||
info = msg;
|
||||
|
@ -1394,13 +1407,13 @@ _system_info_all_poll_feedback_cb(void *data, Ecore_Thread *thread, void *msg)
|
|||
goto out;
|
||||
|
||||
for (int i = 0; i < info->cpu_count; i++)
|
||||
cpu_usage += info->cores[i]->percent;
|
||||
usage += info->cores[i]->percent;
|
||||
|
||||
cpu_usage /= system_cpu_online_count_get();
|
||||
usage /= system_cpu_online_count_get();
|
||||
|
||||
elm_progressbar_value_set(ui->processes.progress_cpu, cpu_usage / 100);
|
||||
elm_progressbar_value_set(ui->processes.progress_cpu, usage / 100);
|
||||
|
||||
ui->cpu_usage = cpu_usage;
|
||||
ui->cpu_usage = usage;
|
||||
|
||||
if (ui->mem.zfs_mounted)
|
||||
info->memory.used += info->memory.zfs_arc_used;
|
||||
|
@ -1412,6 +1425,19 @@ _system_info_all_poll_feedback_cb(void *data, Ecore_Thread *thread, void *msg)
|
|||
elm_progressbar_unit_format_set(pb, eina_slstr_printf("%s / %s",
|
||||
evisum_size_format(info->memory.used),
|
||||
evisum_size_format(info->memory.total)));
|
||||
usage = 0.0;
|
||||
|
||||
if (info->power.battery_count)
|
||||
{
|
||||
for (int i = 0; i < info->power.battery_count; i++)
|
||||
usage += info->power.batteries[i]->percent;
|
||||
elm_progressbar_value_set(ui->processes.progress_bat, (usage / info->power.battery_count) / 100);
|
||||
}
|
||||
else if (!info->power.battery_count)
|
||||
{
|
||||
elm_box_unpack(ui->processes.summary_box, ui->processes.summary_bat);
|
||||
evas_object_hide(ui->processes.summary_bat);
|
||||
}
|
||||
out:
|
||||
system_info_all_free(info);
|
||||
}
|
||||
|
@ -1458,7 +1484,7 @@ _win_del_cb(void *data EINA_UNUSED, Evas_Object *obj EINA_UNUSED,
|
|||
evisum_ui_item_cache_free(ui->processes.cache);
|
||||
|
||||
_proc_pid_cpu_times_free(ui);
|
||||
|
||||
|
||||
eina_lock_free(&_lock);
|
||||
|
||||
if (evisum_ui_can_exit(ui))
|
||||
|
|
Loading…
Reference in New Issue