This is a gadget using the new api that has separate gadgets for battery, temperature, net status, cpu load, mem usage, cpu frequency, and one gadget called sysinfo that combines all of the above.devs/bu5hm4n/mixer_fix_range
parent
501ea95e2c
commit
cd24662e9f
5 changed files with 555 additions and 0 deletions
Binary file not shown.
@ -0,0 +1,181 @@ |
||||
#include "sysinfo.h" |
||||
|
||||
static E_Config_DD *conf_edd = NULL; |
||||
static E_Config_DD *conf_item_edd = NULL; |
||||
Eina_List *sysinfo_instances = NULL; |
||||
E_Module *module = NULL; |
||||
Config *sysinfo_config = NULL; |
||||
|
||||
EINTERN void |
||||
sysinfo_init(void) |
||||
{ |
||||
conf_item_edd = E_CONFIG_DD_NEW("Sysinfo_Config_Item", Config_Item); |
||||
#undef T |
||||
#undef D |
||||
#define T Config_Item |
||||
#define D conf_item_edd |
||||
E_CONFIG_VAL(D, T, id, INT); |
||||
E_CONFIG_VAL(D, T, esm, INT); |
||||
E_CONFIG_VAL(D, T, batman.poll_interval, INT); |
||||
E_CONFIG_VAL(D, T, batman.alert, INT); |
||||
E_CONFIG_VAL(D, T, batman.alert_p, INT); |
||||
E_CONFIG_VAL(D, T, batman.alert_timeout, INT); |
||||
E_CONFIG_VAL(D, T, batman.suspend_below, INT); |
||||
E_CONFIG_VAL(D, T, batman.force_mode, INT); |
||||
#if defined HAVE_EEZE || defined __OpenBSD__ || defined __NetBSD__ |
||||
E_CONFIG_VAL(D, T, batman.fuzzy, INT); |
||||
#endif |
||||
E_CONFIG_VAL(D, T, batman.desktop_notifications, INT); |
||||
E_CONFIG_VAL(D, T, thermal.poll_interval, INT); |
||||
E_CONFIG_VAL(D, T, thermal.low, INT); |
||||
E_CONFIG_VAL(D, T, thermal.high, INT); |
||||
E_CONFIG_VAL(D, T, thermal.sensor_type, INT); |
||||
E_CONFIG_VAL(D, T, thermal.sensor_name, STR); |
||||
E_CONFIG_VAL(D, T, thermal.units, INT); |
||||
E_CONFIG_VAL(D, T, cpuclock.poll_interval, INT); |
||||
E_CONFIG_VAL(D, T, cpuclock.restore_governor, INT); |
||||
E_CONFIG_VAL(D, T, cpuclock.auto_powersave, INT); |
||||
E_CONFIG_VAL(D, T, cpuclock.powersave_governor, STR); |
||||
E_CONFIG_VAL(D, T, cpuclock.governor, STR); |
||||
E_CONFIG_VAL(D, T, cpuclock.pstate_min, INT); |
||||
E_CONFIG_VAL(D, T, cpuclock.pstate_max, INT); |
||||
E_CONFIG_VAL(D, T, cpumonitor.poll_interval, INT); |
||||
E_CONFIG_VAL(D, T, memusage.poll_interval, INT); |
||||
E_CONFIG_VAL(D, T, netstatus.poll_interval, INT); |
||||
|
||||
conf_edd = E_CONFIG_DD_NEW("Sysinfo_Config", Config); |
||||
#undef T |
||||
#undef D |
||||
#define T Config |
||||
#define D conf_edd |
||||
E_CONFIG_LIST(D, T, items, conf_item_edd); |
||||
|
||||
sysinfo_config = e_config_domain_load("module.sysinfo", conf_edd); |
||||
|
||||
if (!sysinfo_config) |
||||
{ |
||||
Config_Item *ci; |
||||
|
||||
sysinfo_config = E_NEW(Config, 1); |
||||
ci = E_NEW(Config_Item, 1); |
||||
ci->id = 0; |
||||
ci->esm = E_SYSINFO_MODULE_NONE; |
||||
|
||||
ci->batman.poll_interval = 512; |
||||
ci->batman.alert = 30; |
||||
ci->batman.alert_p = 10; |
||||
ci->batman.alert_timeout = 0; |
||||
ci->batman.suspend_below = 0; |
||||
ci->batman.force_mode = 0; |
||||
ci->batman.full = -2; |
||||
ci->batman.time_left = -2; |
||||
ci->batman.time_full = -2; |
||||
ci->batman.have_battery = -2; |
||||
ci->batman.have_power = -2; |
||||
#if defined HAVE_EEZE || defined __OpenBSD__ || defined __NetBSD__ |
||||
ci->batman.fuzzy = 0; |
||||
#endif |
||||
ci->batman.desktop_notifications = 0; |
||||
ci->thermal.poll_interval = 128; |
||||
ci->thermal.low = 30; |
||||
ci->thermal.high = 80; |
||||
ci->thermal.sensor_type = SENSOR_TYPE_NONE; |
||||
ci->thermal.sensor_name = NULL; |
||||
ci->thermal.temp = -900; |
||||
ci->thermal.units = CELSIUS; |
||||
ci->cpuclock.poll_interval = 32; |
||||
ci->cpuclock.restore_governor = 0; |
||||
ci->cpuclock.auto_powersave = 1; |
||||
ci->cpuclock.powersave_governor = NULL; |
||||
ci->cpuclock.governor = NULL; |
||||
ci->cpuclock.pstate_min = 1; |
||||
ci->cpuclock.pstate_max = 101; |
||||
ci->cpumonitor.poll_interval = 32; |
||||
ci->cpumonitor.total = 0; |
||||
ci->cpumonitor.idle = 0; |
||||
ci->memusage.poll_interval = 32; |
||||
ci->netstatus.poll_interval = 32; |
||||
ci->netstatus.in = 0; |
||||
ci->netstatus.out = 0; |
||||
|
||||
E_CONFIG_LIMIT(ci->batman.poll_interval, 4, 4096); |
||||
E_CONFIG_LIMIT(ci->batman.alert, 0, 60); |
||||
E_CONFIG_LIMIT(ci->batman.alert_p, 0, 100); |
||||
E_CONFIG_LIMIT(ci->batman.alert_timeout, 0, 300); |
||||
E_CONFIG_LIMIT(ci->batman.suspend_below, 0, 50); |
||||
E_CONFIG_LIMIT(ci->batman.force_mode, 0, 2); |
||||
E_CONFIG_LIMIT(ci->batman.desktop_notifications, 0, 1); |
||||
E_CONFIG_LIMIT(ci->thermal.poll_interval, 1, 1024); |
||||
E_CONFIG_LIMIT(ci->thermal.low, 0, 100); |
||||
E_CONFIG_LIMIT(ci->thermal.high, 0, 220); |
||||
E_CONFIG_LIMIT(ci->thermal.units, CELSIUS, FAHRENHEIT); |
||||
E_CONFIG_LIMIT(ci->cpuclock.poll_interval, 1, 1024); |
||||
E_CONFIG_LIMIT(ci->cpumonitor.poll_interval, 1, 1024); |
||||
E_CONFIG_LIMIT(ci->memusage.poll_interval, 1, 1024); |
||||
E_CONFIG_LIMIT(ci->netstatus.poll_interval, 1, 1024); |
||||
|
||||
sysinfo_config->items = eina_list_append(sysinfo_config->items, ci); |
||||
} |
||||
e_gadget_type_add("Batman", batman_create, NULL); |
||||
e_gadget_type_add("Thermal", thermal_create, NULL); |
||||
e_gadget_type_add("CpuClock", cpuclock_create, NULL); |
||||
e_gadget_type_add("CpuMonitor", cpumonitor_create, NULL); |
||||
e_gadget_type_add("MemUsage", memusage_create, NULL); |
||||
e_gadget_type_add("NetStatus", netstatus_create, NULL); |
||||
e_gadget_type_add("SysInfo", sysinfo_create, NULL); |
||||
} |
||||
|
||||
EINTERN void |
||||
sysinfo_shutdown(void) |
||||
{ |
||||
if (sysinfo_config) |
||||
{ |
||||
Config_Item *ci; |
||||
EINA_LIST_FREE(sysinfo_config->items, ci) |
||||
{ |
||||
free(ci); |
||||
} |
||||
E_FREE(sysinfo_config); |
||||
} |
||||
E_CONFIG_DD_FREE(conf_edd); |
||||
E_CONFIG_DD_FREE(conf_item_edd); |
||||
|
||||
e_gadget_type_del("Batman"); |
||||
e_gadget_type_del("Thermal"); |
||||
e_gadget_type_del("CpuClock"); |
||||
e_gadget_type_del("CpuMonitor"); |
||||
e_gadget_type_del("MemUsage"); |
||||
e_gadget_type_del("NetStatus"); |
||||
e_gadget_type_del("SysInfo"); |
||||
} |
||||
|
||||
E_API E_Module_Api e_modapi = |
||||
{ |
||||
E_MODULE_API_VERSION, |
||||
"Sysinfo" |
||||
}; |
||||
|
||||
E_API void * |
||||
e_modapi_init(E_Module *m) |
||||
{ |
||||
sysinfo_init(); |
||||
|
||||
module = m; |
||||
sysinfo_config->module = m; |
||||
return m; |
||||
} |
||||
|
||||
E_API int |
||||
e_modapi_shutdown(E_Module *m EINA_UNUSED) |
||||
{ |
||||
sysinfo_shutdown(); |
||||
return 1; |
||||
} |
||||
|
||||
E_API int |
||||
e_modapi_save(E_Module *m EINA_UNUSED) |
||||
{ |
||||
e_config_domain_save("module.sysinfo", conf_edd, sysinfo_config); |
||||
return 1; |
||||
} |
||||
|
@ -0,0 +1,7 @@ |
||||
[Desktop Entry] |
||||
Encoding=UTF-8 |
||||
Type=Link |
||||
Name=Sysinfo |
||||
Comment=A gadget to visualize your system info |
||||
Icon=e-module-sysinfo |
||||
X-Enlightenment-ModuleType=system |
@ -0,0 +1,129 @@ |
||||
#include "sysinfo.h" |
||||
|
||||
static void |
||||
_sysinfo_removed_cb(void *data, Evas_Object *obj EINA_UNUSED, void *event_data) |
||||
{ |
||||
Instance *inst = data; |
||||
|
||||
if (inst->o_main != event_data) return; |
||||
|
||||
sysinfo_batman_remove(inst); |
||||
sysinfo_thermal_remove(inst); |
||||
sysinfo_cpuclock_remove(inst); |
||||
sysinfo_cpumonitor_remove(inst); |
||||
sysinfo_memusage_remove(inst); |
||||
sysinfo_netstatus_remove(inst); |
||||
|
||||
sysinfo_config->items = eina_list_remove(sysinfo_config->items, inst->cfg); |
||||
E_FREE(inst->cfg); |
||||
} |
||||
|
||||
static void |
||||
_sysinfo_created_cb(void *data, Evas_Object *obj, void *event_data EINA_UNUSED) |
||||
{ |
||||
Instance *inst = data; |
||||
|
||||
inst->cfg->sysinfo.o_batman = sysinfo_batman_create(inst->o_main, inst); |
||||
elm_table_pack(inst->o_main, inst->cfg->sysinfo.o_batman, 0, 0, 1, 1); |
||||
inst->cfg->sysinfo.o_thermal = sysinfo_thermal_create(inst->o_main, inst); |
||||
elm_table_pack(inst->o_main, inst->cfg->sysinfo.o_thermal, 1, 0, 1, 1); |
||||
inst->cfg->sysinfo.o_cpuclock = sysinfo_cpuclock_create(inst->o_main, inst); |
||||
elm_table_pack(inst->o_main, inst->cfg->sysinfo.o_cpuclock, 0, 1, 1, 1); |
||||
inst->cfg->sysinfo.o_cpumonitor = sysinfo_cpumonitor_create(inst->o_main, inst); |
||||
elm_table_pack(inst->o_main, inst->cfg->sysinfo.o_cpumonitor, 1, 1, 1, 1); |
||||
inst->cfg->sysinfo.o_memusage = sysinfo_memusage_create(inst->o_main, inst); |
||||
elm_table_pack(inst->o_main, inst->cfg->sysinfo.o_memusage, 0, 2, 1, 1); |
||||
inst->cfg->sysinfo.o_netstatus = sysinfo_netstatus_create(inst->o_main, inst); |
||||
elm_table_pack(inst->o_main, inst->cfg->sysinfo.o_netstatus, 1, 2, 1, 1); |
||||
|
||||
E_EXPAND(inst->o_main); |
||||
E_FILL(inst->o_main); |
||||
|
||||
evas_object_smart_callback_del_full(obj, "gadget_created", _sysinfo_created_cb, data); |
||||
} |
||||
|
||||
static Config_Item * |
||||
_conf_item_get(int *id) |
||||
{ |
||||
Config_Item *ci; |
||||
Eina_List *l; |
||||
|
||||
if (*id > 0) |
||||
{ |
||||
EINA_LIST_FOREACH(sysinfo_config->items, l, ci) |
||||
if (*id == ci->id && ci->esm == E_SYSINFO_MODULE_SYSINFO) return ci; |
||||
} |
||||
|
||||
ci = E_NEW(Config_Item, 1); |
||||
|
||||
if (*id != -1) |
||||
ci->id = eina_list_count(sysinfo_config->items)+1; |
||||
else |
||||
ci->id = -1; |
||||
|
||||
ci->esm = E_SYSINFO_MODULE_SYSINFO; |
||||
ci->batman.poll_interval = 512; |
||||
ci->batman.alert = 30; |
||||
ci->batman.alert_p = 10; |
||||
ci->batman.alert_timeout = 0; |
||||
ci->batman.suspend_below = 0; |
||||
ci->batman.force_mode = 0; |
||||
ci->batman.full = -2; |
||||
ci->batman.time_left = -2; |
||||
ci->batman.time_full = -2; |
||||
ci->batman.have_battery = -2; |
||||
ci->batman.have_power = -2; |
||||
#if defined HAVE_EEZE || defined __OpenBSD__ || defined __NetBSD__ |
||||
ci->batman.fuzzy = 0; |
||||
#endif |
||||
ci->batman.desktop_notifications = 0; |
||||
ci->thermal.poll_interval = 128; |
||||
ci->thermal.low = 30; |
||||
ci->thermal.high = 80; |
||||
ci->thermal.sensor_type = SENSOR_TYPE_NONE; |
||||
ci->thermal.sensor_name = NULL; |
||||
ci->thermal.units = CELSIUS; |
||||
ci->cpuclock.poll_interval = 32; |
||||
ci->cpuclock.restore_governor = 0; |
||||
ci->cpuclock.auto_powersave = 1; |
||||
ci->cpuclock.powersave_governor = NULL; |
||||
ci->cpuclock.governor = NULL; |
||||
ci->cpuclock.pstate_min = 1; |
||||
ci->cpuclock.pstate_max = 101; |
||||
ci->cpumonitor.poll_interval = 32; |
||||
ci->cpumonitor.total = 0; |
||||
ci->cpumonitor.idle = 0; |
||||
ci->memusage.poll_interval = 32; |
||||
ci->netstatus.poll_interval = 32; |
||||
ci->netstatus.in = 0; |
||||
ci->netstatus.out = 0; |
||||
|
||||
sysinfo_config->items = eina_list_append(sysinfo_config->items, ci); |
||||
|
||||
return ci; |
||||
} |
||||
|
||||
Evas_Object * |
||||
sysinfo_create(Evas_Object *parent, int *id, E_Gadget_Site_Orient orient EINA_UNUSED) |
||||
{ |
||||
Instance *inst; |
||||
|
||||
inst = E_NEW(Instance, 1); |
||||
inst->cfg = _conf_item_get(id); |
||||
*id = inst->cfg->id; |
||||
inst->o_main = elm_table_add(parent); |
||||
elm_table_homogeneous_set(inst->o_main, EINA_TRUE); |
||||
E_EXPAND(inst->o_main); |
||||
evas_object_size_hint_aspect_set(inst->o_main, EVAS_ASPECT_CONTROL_BOTH, 1, 1); |
||||
evas_object_smart_callback_add(parent, "gadget_created", _sysinfo_created_cb, inst); |
||||
evas_object_smart_callback_add(parent, "gadget_removed", _sysinfo_removed_cb, inst); |
||||
evas_object_show(inst->o_main); |
||||
|
||||
if (inst->cfg->id < 0) return inst->o_main; |
||||
|
||||
sysinfo_instances = |
||||
eina_list_append(sysinfo_instances, inst); |
||||
|
||||
return inst->o_main; |
||||
} |
||||
|
@ -0,0 +1,238 @@ |
||||
#ifndef SYSINFO_H |
||||
#define SYSINFO_H |
||||
|
||||
#include "e.h" |
||||
#ifdef HAVE_EEZE |
||||
# include <Eeze.h> |
||||
#else |
||||
# include <Eldbus.h> |
||||
#endif |
||||
|
||||
E_API extern E_Module_Api e_modapi; |
||||
|
||||
E_API void *e_modapi_init (E_Module *m); |
||||
E_API int e_modapi_shutdown (E_Module *m); |
||||
E_API int e_modapi_save (E_Module *m); |
||||
|
||||
typedef enum _E_Sysinfo_Module E_Sysinfo_Module; |
||||
enum _E_Sysinfo_Module |
||||
{ |
||||
E_SYSINFO_MODULE_NONE = 0, |
||||
E_SYSINFO_MODULE_BATMAN , |
||||
E_SYSINFO_MODULE_THERMAL, |
||||
E_SYSINFO_MODULE_CPUCLOCK, |
||||
E_SYSINFO_MODULE_CPUMONITOR, |
||||
E_SYSINFO_MODULE_MEMUSAGE, |
||||
E_SYSINFO_MODULE_NETSTATUS, |
||||
E_SYSINFO_MODULE_SYSINFO |
||||
}; |
||||
|
||||
typedef enum _Sensor_Type |
||||
{ |
||||
SENSOR_TYPE_NONE, |
||||
#if defined __FreeBSD__ || defined __OpenBSD__ || defined __DragonflyBSD__ |
||||
SENSOR_TYPE_FREEBSD, |
||||
SENSOR_TYPE_OPENBSD, |
||||
#else |
||||
SENSOR_TYPE_OMNIBOOK, |
||||
SENSOR_TYPE_LINUX_MACMINI, |
||||
SENSOR_TYPE_LINUX_I2C, |
||||
SENSOR_TYPE_LINUX_ACPI, |
||||
SENSOR_TYPE_LINUX_PCI, |
||||
SENSOR_TYPE_LINUX_PBOOK, |
||||
SENSOR_TYPE_LINUX_INTELCORETEMP, |
||||
SENSOR_TYPE_LINUX_THINKPAD, |
||||
SENSOR_TYPE_LINUX_SYS |
||||
#endif |
||||
} Sensor_Type; |
||||
|
||||
typedef enum _Unit |
||||
{ |
||||
CELSIUS, |
||||
FAHRENHEIT |
||||
} Unit; |
||||
|
||||
typedef struct _Tempthread Tempthread; |
||||
typedef struct _Cpu_Status Cpu_Status; |
||||
typedef struct _Config Config; |
||||
typedef struct _Config_Item Config_Item; |
||||
typedef struct _Instance Instance; |
||||
|
||||
struct _Tempthread |
||||
{ |
||||
Instance *inst; |
||||
int poll_interval; |
||||
Sensor_Type sensor_type; |
||||
const char *sensor_name; |
||||
const char *sensor_path; |
||||
void *extn; |
||||
#ifdef HAVE_EEZE |
||||
Eina_List *tempdevs; |
||||
#endif |
||||
Eina_Bool initted : 1; |
||||
}; |
||||
|
||||
struct _Cpu_Status |
||||
{ |
||||
Eina_List *frequencies; |
||||
Eina_List *governors; |
||||
int cur_frequency; |
||||
#ifdef __OpenBSD__ |
||||
int cur_percent; |
||||
#endif |
||||
int cur_min_frequency; |
||||
int cur_max_frequency; |
||||
int can_set_frequency; |
||||
int pstate_min; |
||||
int pstate_max; |
||||
char *cur_governor; |
||||
const char *orig_governor; |
||||
unsigned char active; |
||||
unsigned char pstate; |
||||
unsigned char pstate_turbo; |
||||
}; |
||||
|
||||
struct _Config |
||||
{ |
||||
Eina_List *items; |
||||
|
||||
E_Module *module; |
||||
Evas_Object *config_dialog; |
||||
}; |
||||
|
||||
struct _Config_Item |
||||
{ |
||||
int id; |
||||
E_Sysinfo_Module esm; |
||||
struct |
||||
{ |
||||
Evas_Object *o_gadget; |
||||
/* saved * loaded config values */ |
||||
int poll_interval; |
||||
int alert; /* Alert on minutes remaining */ |
||||
int alert_p; /* Alert on percentage remaining */ |
||||
int alert_timeout; /* Popup dismissal timeout */ |
||||
int suspend_below; /* Suspend if battery drops below this level */ |
||||
int suspend_method; /* Method used to suspend the machine */ |
||||
int force_mode; /* force use of batget or hal */ |
||||
/* just config state */ |
||||
Ecore_Exe *batget_exe; |
||||
Ecore_Event_Handler *batget_data_handler; |
||||
Ecore_Event_Handler *batget_del_handler; |
||||
Ecore_Timer *alert_timer; |
||||
int full; |
||||
int time_left; |
||||
int time_full; |
||||
int have_battery; |
||||
int have_power; |
||||
int desktop_notifications; |
||||
#ifdef HAVE_EEZE |
||||
Eeze_Udev_Watch *acwatch; |
||||
Eeze_Udev_Watch *batwatch; |
||||
#endif |
||||
#if defined HAVE_EEZE || defined __OpenBSD__ || defined __NetBSD__ |
||||
Eina_Bool fuzzy; |
||||
int fuzzcount; |
||||
#endif |
||||
} batman; |
||||
struct |
||||
{ |
||||
Evas_Object *o_gadget; |
||||
int poll_interval; |
||||
int low, high; |
||||
int sensor_type; |
||||
int temp; |
||||
const char *sensor_name; |
||||
Unit units; |
||||
#ifdef HAVE_EEZE |
||||
Ecore_Poller *poller; |
||||
Tempthread *tth; |
||||
#endif |
||||
Ecore_Thread *th; |
||||
|
||||
Eina_Bool have_temp:1; |
||||
} thermal; |
||||
struct |
||||
{ |
||||
Evas_Object *o_gadget; |
||||
int poll_interval; |
||||
int restore_governor; |
||||
int auto_powersave; |
||||
const char *powersave_governor; |
||||
const char *governor; |
||||
int pstate_min; |
||||
int pstate_max; |
||||
Cpu_Status *status; |
||||
Ecore_Thread *frequency_check_thread; |
||||
Ecore_Event_Handler *handler; |
||||
} cpuclock; |
||||
struct |
||||
{ |
||||
Evas_Object *o_gadget; |
||||
int poll_interval; |
||||
long total; |
||||
long idle; |
||||
Ecore_Thread *usage_check_thread; |
||||
} cpumonitor; |
||||
struct |
||||
{ |
||||
Evas_Object *o_gadget; |
||||
int poll_interval; |
||||
Ecore_Thread *usage_check_thread; |
||||
} memusage; |
||||
struct |
||||
{ |
||||
Evas_Object *o_gadget; |
||||
int poll_interval; |
||||
long in; |
||||
long out; |
||||
Ecore_Thread *usage_check_thread; |
||||
} netstatus; |
||||
struct { |
||||
Evas_Object *o_batman; |
||||
Evas_Object *o_thermal; |
||||
Evas_Object *o_cpuclock; |
||||
Evas_Object *o_cpumonitor; |
||||
Evas_Object *o_memusage; |
||||
Evas_Object *o_netstatus; |
||||
} sysinfo; |
||||
}; |
||||
|
||||
struct _Instance |
||||
{ |
||||
Evas_Object *o_main; |
||||
Evas_Object *popup_battery; |
||||
Evas_Object *warning; |
||||
Config_Item *cfg; |
||||
unsigned int notification_id; |
||||
}; |
||||
|
||||
EINTERN Evas_Object *config_sysinfo(E_Zone *zone, Instance *inst, E_Sysinfo_Module esm); |
||||
EINTERN Evas_Object *batman_create(Evas_Object *parent, int *id, E_Gadget_Site_Orient orient); |
||||
EINTERN Evas_Object *thermal_create(Evas_Object *parent, int *id, E_Gadget_Site_Orient orient); |
||||
EINTERN Evas_Object *cpuclock_create(Evas_Object *parent, int *id, E_Gadget_Site_Orient orient); |
||||
EINTERN Evas_Object *cpumonitor_create(Evas_Object *parent, int *id, E_Gadget_Site_Orient orient); |
||||
EINTERN Evas_Object *memusage_create(Evas_Object *parent, int *id, E_Gadget_Site_Orient orient); |
||||
EINTERN Evas_Object *netstatus_create(Evas_Object *parent, int *id, E_Gadget_Site_Orient orient); |
||||
EINTERN Evas_Object *sysinfo_create(Evas_Object *parent, int *id, E_Gadget_Site_Orient orient); |
||||
|
||||
EINTERN Evas_Object *config_sysinfo(E_Zone *zone, Instance *inst, E_Sysinfo_Module esm); |
||||
EINTERN Evas_Object *sysinfo_batman_create(Evas_Object *parent, Instance *inst); |
||||
EINTERN Evas_Object *sysinfo_thermal_create(Evas_Object *parent, Instance *inst); |
||||
EINTERN Evas_Object *sysinfo_cpuclock_create(Evas_Object *parent, Instance *inst); |
||||
EINTERN Evas_Object *sysinfo_cpumonitor_create(Evas_Object *parent, Instance *inst); |
||||
EINTERN Evas_Object *sysinfo_memusage_create(Evas_Object *parent, Instance *inst); |
||||
EINTERN Evas_Object *sysinfo_netstatus_create(Evas_Object *parent, Instance *inst); |
||||
|
||||
EINTERN void sysinfo_batman_remove(Instance *inst); |
||||
EINTERN void sysinfo_thermal_remove(Instance *inst); |
||||
EINTERN void sysinfo_cpuclock_remove(Instance *inst); |
||||
EINTERN void sysinfo_cpumonitor_remove(Instance *inst); |
||||
EINTERN void sysinfo_memusage_remove(Instance *inst); |
||||
EINTERN void sysinfo_netstatus_remove(Instance *inst); |
||||
|
||||
extern Config *sysinfo_config; |
||||
extern Eina_List *sysinfo_instances; |
||||
extern E_Module *module; |
||||
|
||||
#endif |
Loading…
Reference in new issue