evisum/src/bin/ui/evisum_ui.h

148 lines
2.9 KiB
C
Raw Normal View History

#ifndef __EVISUM_UI_H__
#define __EVISUM_UI_H__
2018-06-04 03:11:21 -07:00
#include <Elementary.h>
2020-04-23 04:28:07 -07:00
#include "gettext.h"
2020-11-09 06:28:55 -08:00
#include "evisum_actions.h"
#include "system/machine.h"
#include "system/process.h"
#include "ui/ui_util.h"
#include "ui/ui_cache.h"
2018-06-04 03:11:21 -07:00
2020-04-23 04:28:07 -07:00
#define _(STR) gettext(STR)
#define EVISUM_WIN_WIDTH 900
2020-06-28 12:04:03 -07:00
#define EVISUM_WIN_HEIGHT 600
2019-08-24 08:28:56 -07:00
typedef struct _Evisum_Ui
2018-06-04 03:11:21 -07:00
{
2020-12-24 02:16:19 -08:00
pid_t program_pid;
Ecore_Event_Handler *handler_sig;
2021-03-31 07:05:07 -07:00
Ecore_Thread *background_poll_thread;
2021-03-12 08:59:27 -08:00
Eina_Bool effects;
double cpu_usage;
uint64_t mem_total;
uint64_t mem_used;
2021-04-01 03:10:28 -07:00
Eina_List *batteries;
Eina_Bool have_power;
Eina_Bool kthreads_has_rss;
2020-11-09 06:28:55 -08:00
struct
{
Evas_Object *win;
int width;
int height;
int x, y;
Eina_Bool restart;
Eina_Bool has_kthreads;
Eina_Bool has_wchan;
int poll_delay;
int sort_type;
2021-02-24 03:32:21 -08:00
unsigned int fields;
Eina_Bool sort_reverse;
Eina_Bool show_self;
Eina_Bool show_kthreads;
Eina_Bool show_user;
2021-02-09 11:10:03 -08:00
unsigned char alpha;
2021-03-11 12:41:47 -08:00
Eina_Bool transparent;
Eina_Bool show_scroller;
Eina_Bool show_statusbar;
} proc;
2020-11-09 06:28:55 -08:00
Evas_Object *win_about;
2020-10-03 07:44:32 -07:00
struct
{
Evas_Object *win;
int width;
int height;
int x, y;
Eina_Bool restart;
} cpu;
struct
{
2020-12-15 09:23:32 -08:00
Evas_Object *win;
int width;
int height;
int x, y;
Eina_Bool restart;
2020-12-15 09:23:32 -08:00
Eina_Bool zfs_mounted;
} mem;
struct
{
Evas_Object *win;
int width;
int height;
int x, y;
Eina_Bool restart;
} disk;
struct
{
Evas_Object *win;
int width;
int height;
int x, y;
Eina_Bool restart;
2020-10-05 08:11:26 -07:00
} sensors;
2021-03-10 04:51:21 -08:00
struct
{
Evas_Object *win;
int width;
int height;
int x, y;
Eina_Bool restart;
} network;
} Evisum_Ui;
2018-06-04 03:11:21 -07:00
2021-04-01 03:10:28 -07:00
typedef struct _Battery
{
int index;
double usage;
char model[256];
char vendor[256];
Evas_Object *pb;
} Battery;
Evisum_Ui *
evisum_ui_init(void);
2018-06-04 03:11:21 -07:00
void
evisum_ui_shutdown(Evisum_Ui *ui);
2020-12-31 14:58:25 -08:00
Evas_Object *
evisum_ui_main_menu_create(Evisum_Ui *ui, Evas_Object *parent, Evas_Object *obj);
2020-11-09 05:40:00 -08:00
void
evisum_ui_activate(Evisum_Ui *ui, Evisum_Action action, int pid);
2020-10-29 06:26:31 -07:00
const char *
evisum_ui_icon_cache_find(Evisum_Ui *ui, const char *cmd);
2020-10-29 06:26:31 -07:00
2020-11-09 05:40:00 -08:00
void
evisum_ui_config_load(Evisum_Ui *ui);
2020-11-09 05:40:00 -08:00
void
evisum_ui_config_save(Evisum_Ui *ui);
2020-11-09 05:40:00 -08:00
void
evisum_ui_restart(Evisum_Ui *ui);
2021-03-12 08:59:27 -08:00
Eina_Bool
evisum_ui_effects_enabled_get(Evisum_Ui *ui);
void
evisum_ui_effects_enabled_set(Evisum_Ui *ui, Eina_Bool enabled);
2018-06-04 03:11:21 -07:00
#endif