mirror of
https://github.com/Llewellynvdm/conky.git
synced 2025-02-05 13:38:33 +00:00
update machinery: let CALLBACK() die again
There are no INFO_* variables any more, so the argument passed to OBJ() is always a function pointer or zero. By checking the argument passed in add_update_callback(), the branch in the OBJ() macro can be dropped, too.
This commit is contained in:
parent
e83fb84c55
commit
d32879faaa
@ -391,6 +391,9 @@ void add_update_callback(void (*func)(void))
|
|||||||
{
|
{
|
||||||
struct update_cb *uc = &update_cb_head;
|
struct update_cb *uc = &update_cb_head;
|
||||||
|
|
||||||
|
if (!func)
|
||||||
|
return;
|
||||||
|
|
||||||
while (uc->next) {
|
while (uc->next) {
|
||||||
if (uc->next->func == func)
|
if (uc->next->func == func)
|
||||||
return;
|
return;
|
||||||
|
349
src/core.c
349
src/core.c
@ -220,16 +220,11 @@ struct text_object *construct_text_object(const char *s, const char *arg, long
|
|||||||
|
|
||||||
obj->line = line;
|
obj->line = line;
|
||||||
|
|
||||||
#define CALLBACK(x) (-(long)x)
|
|
||||||
|
|
||||||
#define OBJ(a, n) if (strcmp(s, #a) == 0) { \
|
#define OBJ(a, n) if (strcmp(s, #a) == 0) { \
|
||||||
obj->type = OBJ_##a; \
|
obj->type = OBJ_##a; add_update_callback(n); {
|
||||||
if (n > 0) { need_mask |= (1ULL << n); } \
|
|
||||||
else if (n < 0) { add_update_callback((void (*)(void))CALLBACK(n)); } {
|
|
||||||
#define OBJ_IF(a, n) if (strcmp(s, #a) == 0) { \
|
#define OBJ_IF(a, n) if (strcmp(s, #a) == 0) { \
|
||||||
obj->type = OBJ_##a; obj_be_ifblock_if(ifblock_opaque, obj); \
|
obj->type = OBJ_##a; obj_be_ifblock_if(ifblock_opaque, obj); \
|
||||||
if (n > 0) { need_mask |= (1ULL << n); } \
|
add_update_callback(n); {
|
||||||
else if (n < 0) { add_update_callback((void (*)(void))CALLBACK(n)); } {
|
|
||||||
#define END } } else
|
#define END } } else
|
||||||
|
|
||||||
#define SIZE_DEFAULTS(arg) { \
|
#define SIZE_DEFAULTS(arg) { \
|
||||||
@ -313,7 +308,7 @@ struct text_object *construct_text_object(const char *s, const char *arg, long
|
|||||||
obj->a = 1;
|
obj->a = 1;
|
||||||
|
|
||||||
#ifdef HAVE_IWLIB
|
#ifdef HAVE_IWLIB
|
||||||
END OBJ(wireless_essid, CALLBACK(&update_net_stats))
|
END OBJ(wireless_essid, &update_net_stats)
|
||||||
if (arg) {
|
if (arg) {
|
||||||
obj->data.net = get_net_stat(arg, obj, free_at_crash);
|
obj->data.net = get_net_stat(arg, obj, free_at_crash);
|
||||||
} else {
|
} else {
|
||||||
@ -322,7 +317,7 @@ struct text_object *construct_text_object(const char *s, const char *arg, long
|
|||||||
obj->data.net = get_net_stat(buf, obj, free_at_crash);
|
obj->data.net = get_net_stat(buf, obj, free_at_crash);
|
||||||
free(buf);
|
free(buf);
|
||||||
}
|
}
|
||||||
END OBJ(wireless_mode, CALLBACK(&update_net_stats))
|
END OBJ(wireless_mode, &update_net_stats)
|
||||||
if (arg) {
|
if (arg) {
|
||||||
obj->data.net = get_net_stat(arg, obj, free_at_crash);
|
obj->data.net = get_net_stat(arg, obj, free_at_crash);
|
||||||
} else {
|
} else {
|
||||||
@ -331,7 +326,7 @@ struct text_object *construct_text_object(const char *s, const char *arg, long
|
|||||||
obj->data.net = get_net_stat(buf, obj, free_at_crash);
|
obj->data.net = get_net_stat(buf, obj, free_at_crash);
|
||||||
free(buf);
|
free(buf);
|
||||||
}
|
}
|
||||||
END OBJ(wireless_bitrate, CALLBACK(&update_net_stats))
|
END OBJ(wireless_bitrate, &update_net_stats)
|
||||||
if (arg) {
|
if (arg) {
|
||||||
obj->data.net = get_net_stat(arg, obj, free_at_crash);
|
obj->data.net = get_net_stat(arg, obj, free_at_crash);
|
||||||
} else {
|
} else {
|
||||||
@ -340,7 +335,7 @@ struct text_object *construct_text_object(const char *s, const char *arg, long
|
|||||||
obj->data.net = get_net_stat(buf, obj, free_at_crash);
|
obj->data.net = get_net_stat(buf, obj, free_at_crash);
|
||||||
free(buf);
|
free(buf);
|
||||||
}
|
}
|
||||||
END OBJ(wireless_ap, CALLBACK(&update_net_stats))
|
END OBJ(wireless_ap, &update_net_stats)
|
||||||
if (arg) {
|
if (arg) {
|
||||||
obj->data.net = get_net_stat(arg, obj, free_at_crash);
|
obj->data.net = get_net_stat(arg, obj, free_at_crash);
|
||||||
} else {
|
} else {
|
||||||
@ -349,7 +344,7 @@ struct text_object *construct_text_object(const char *s, const char *arg, long
|
|||||||
obj->data.net = get_net_stat(buf, obj, free_at_crash);
|
obj->data.net = get_net_stat(buf, obj, free_at_crash);
|
||||||
free(buf);
|
free(buf);
|
||||||
}
|
}
|
||||||
END OBJ(wireless_link_qual, CALLBACK(&update_net_stats))
|
END OBJ(wireless_link_qual, &update_net_stats)
|
||||||
if (arg) {
|
if (arg) {
|
||||||
obj->data.net = get_net_stat(arg, obj, free_at_crash);
|
obj->data.net = get_net_stat(arg, obj, free_at_crash);
|
||||||
} else {
|
} else {
|
||||||
@ -358,7 +353,7 @@ struct text_object *construct_text_object(const char *s, const char *arg, long
|
|||||||
obj->data.net = get_net_stat(buf, obj, free_at_crash);
|
obj->data.net = get_net_stat(buf, obj, free_at_crash);
|
||||||
free(buf);
|
free(buf);
|
||||||
}
|
}
|
||||||
END OBJ(wireless_link_qual_max, CALLBACK(&update_net_stats))
|
END OBJ(wireless_link_qual_max, &update_net_stats)
|
||||||
if (arg) {
|
if (arg) {
|
||||||
obj->data.net = get_net_stat(arg, obj, free_at_crash);
|
obj->data.net = get_net_stat(arg, obj, free_at_crash);
|
||||||
} else {
|
} else {
|
||||||
@ -367,7 +362,7 @@ struct text_object *construct_text_object(const char *s, const char *arg, long
|
|||||||
obj->data.net = get_net_stat(buf, obj, free_at_crash);
|
obj->data.net = get_net_stat(buf, obj, free_at_crash);
|
||||||
free(buf);
|
free(buf);
|
||||||
}
|
}
|
||||||
END OBJ(wireless_link_qual_perc, CALLBACK(&update_net_stats))
|
END OBJ(wireless_link_qual_perc, &update_net_stats)
|
||||||
if (arg) {
|
if (arg) {
|
||||||
obj->data.net = get_net_stat(arg, obj, free_at_crash);
|
obj->data.net = get_net_stat(arg, obj, free_at_crash);
|
||||||
} else {
|
} else {
|
||||||
@ -376,7 +371,7 @@ struct text_object *construct_text_object(const char *s, const char *arg, long
|
|||||||
obj->data.net = get_net_stat(buf, obj, free_at_crash);
|
obj->data.net = get_net_stat(buf, obj, free_at_crash);
|
||||||
free(buf);
|
free(buf);
|
||||||
}
|
}
|
||||||
END OBJ(wireless_link_bar, CALLBACK(&update_net_stats))
|
END OBJ(wireless_link_bar, &update_net_stats)
|
||||||
SIZE_DEFAULTS(bar);
|
SIZE_DEFAULTS(bar);
|
||||||
if (arg) {
|
if (arg) {
|
||||||
arg = scan_bar(arg, &obj->a, &obj->b);
|
arg = scan_bar(arg, &obj->a, &obj->b);
|
||||||
@ -448,16 +443,16 @@ struct text_object *construct_text_object(const char *s, const char *arg, long
|
|||||||
obj->data.s = strndup(dev_name(arg), text_buffer_size);
|
obj->data.s = strndup(dev_name(arg), text_buffer_size);
|
||||||
else
|
else
|
||||||
CRIT_ERR(obj, free_at_crash, "disk_protect needs an argument");
|
CRIT_ERR(obj, free_at_crash, "disk_protect needs an argument");
|
||||||
END OBJ(i8k_version, CALLBACK(&update_i8k))
|
END OBJ(i8k_version, &update_i8k)
|
||||||
END OBJ(i8k_bios, CALLBACK(&update_i8k))
|
END OBJ(i8k_bios, &update_i8k)
|
||||||
END OBJ(i8k_serial, CALLBACK(&update_i8k))
|
END OBJ(i8k_serial, &update_i8k)
|
||||||
END OBJ(i8k_cpu_temp, CALLBACK(&update_i8k))
|
END OBJ(i8k_cpu_temp, &update_i8k)
|
||||||
END OBJ(i8k_left_fan_status, CALLBACK(&update_i8k))
|
END OBJ(i8k_left_fan_status, &update_i8k)
|
||||||
END OBJ(i8k_right_fan_status, CALLBACK(&update_i8k))
|
END OBJ(i8k_right_fan_status, &update_i8k)
|
||||||
END OBJ(i8k_left_fan_rpm, CALLBACK(&update_i8k))
|
END OBJ(i8k_left_fan_rpm, &update_i8k)
|
||||||
END OBJ(i8k_right_fan_rpm, CALLBACK(&update_i8k))
|
END OBJ(i8k_right_fan_rpm, &update_i8k)
|
||||||
END OBJ(i8k_ac_status, CALLBACK(&update_i8k))
|
END OBJ(i8k_ac_status, &update_i8k)
|
||||||
END OBJ(i8k_buttons_status, CALLBACK(&update_i8k))
|
END OBJ(i8k_buttons_status, &update_i8k)
|
||||||
#if defined(IBM)
|
#if defined(IBM)
|
||||||
END OBJ(ibm_fan, 0)
|
END OBJ(ibm_fan, 0)
|
||||||
END OBJ(ibm_temps, 0)
|
END OBJ(ibm_temps, 0)
|
||||||
@ -476,7 +471,7 @@ struct text_object *construct_text_object(const char *s, const char *arg, long
|
|||||||
/* information from sony_laptop kernel module
|
/* information from sony_laptop kernel module
|
||||||
* /sys/devices/platform/sony-laptop */
|
* /sys/devices/platform/sony-laptop */
|
||||||
END OBJ(sony_fanspeed, 0)
|
END OBJ(sony_fanspeed, 0)
|
||||||
END OBJ_IF(if_gw, CALLBACK(&update_gateway_info))
|
END OBJ_IF(if_gw, &update_gateway_info)
|
||||||
END OBJ(ioscheduler, 0)
|
END OBJ(ioscheduler, 0)
|
||||||
if (!arg) {
|
if (!arg) {
|
||||||
CRIT_ERR(obj, free_at_crash, "get_ioscheduler needs an argument (e.g. hda)");
|
CRIT_ERR(obj, free_at_crash, "get_ioscheduler needs an argument (e.g. hda)");
|
||||||
@ -543,8 +538,8 @@ struct text_object *construct_text_object(const char *s, const char *arg, long
|
|||||||
END OBJ(obsd_vendor, 0)
|
END OBJ(obsd_vendor, 0)
|
||||||
END OBJ(obsd_product, 0)
|
END OBJ(obsd_product, 0)
|
||||||
#endif /* __OpenBSD__ */
|
#endif /* __OpenBSD__ */
|
||||||
END OBJ(buffers, CALLBACK(&update_meminfo))
|
END OBJ(buffers, &update_meminfo)
|
||||||
END OBJ(cached, CALLBACK(&update_meminfo))
|
END OBJ(cached, &update_meminfo)
|
||||||
#define SCAN_CPU(__arg, __var) { \
|
#define SCAN_CPU(__arg, __var) { \
|
||||||
int __offset = 0; \
|
int __offset = 0; \
|
||||||
if (__arg && sscanf(__arg, " cpu%u %n", &__var, &__offset) > 0) \
|
if (__arg && sscanf(__arg, " cpu%u %n", &__var, &__offset) > 0) \
|
||||||
@ -552,23 +547,23 @@ struct text_object *construct_text_object(const char *s, const char *arg, long
|
|||||||
else \
|
else \
|
||||||
__var = 0; \
|
__var = 0; \
|
||||||
}
|
}
|
||||||
END OBJ(cpu, CALLBACK(&update_cpu_usage))
|
END OBJ(cpu, &update_cpu_usage)
|
||||||
SCAN_CPU(arg, obj->data.cpu_index);
|
SCAN_CPU(arg, obj->data.cpu_index);
|
||||||
DBGP2("Adding $cpu for CPU %d", obj->data.cpu_index);
|
DBGP2("Adding $cpu for CPU %d", obj->data.cpu_index);
|
||||||
#ifdef X11
|
#ifdef X11
|
||||||
END OBJ(cpugauge, CALLBACK(&update_cpu_usage))
|
END OBJ(cpugauge, &update_cpu_usage)
|
||||||
SIZE_DEFAULTS(gauge);
|
SIZE_DEFAULTS(gauge);
|
||||||
SCAN_CPU(arg, obj->data.cpu_index);
|
SCAN_CPU(arg, obj->data.cpu_index);
|
||||||
scan_gauge(arg, &obj->a, &obj->b);
|
scan_gauge(arg, &obj->a, &obj->b);
|
||||||
DBGP2("Adding $cpugauge for CPU %d", obj->data.cpu_index);
|
DBGP2("Adding $cpugauge for CPU %d", obj->data.cpu_index);
|
||||||
#endif /* X11 */
|
#endif /* X11 */
|
||||||
END OBJ(cpubar, CALLBACK(&update_cpu_usage))
|
END OBJ(cpubar, &update_cpu_usage)
|
||||||
SIZE_DEFAULTS(bar);
|
SIZE_DEFAULTS(bar);
|
||||||
SCAN_CPU(arg, obj->data.cpu_index);
|
SCAN_CPU(arg, obj->data.cpu_index);
|
||||||
scan_bar(arg, &obj->a, &obj->b);
|
scan_bar(arg, &obj->a, &obj->b);
|
||||||
DBGP2("Adding $cpubar for CPU %d", obj->data.cpu_index);
|
DBGP2("Adding $cpubar for CPU %d", obj->data.cpu_index);
|
||||||
#ifdef X11
|
#ifdef X11
|
||||||
END OBJ(cpugraph, CALLBACK(&update_cpu_usage))
|
END OBJ(cpugraph, &update_cpu_usage)
|
||||||
char *buf = 0;
|
char *buf = 0;
|
||||||
SIZE_DEFAULTS(graph);
|
SIZE_DEFAULTS(graph);
|
||||||
SCAN_CPU(arg, obj->data.cpu_index);
|
SCAN_CPU(arg, obj->data.cpu_index);
|
||||||
@ -576,7 +571,7 @@ struct text_object *construct_text_object(const char *s, const char *arg, long
|
|||||||
&obj->e, &obj->char_a, &obj->char_b);
|
&obj->e, &obj->char_a, &obj->char_b);
|
||||||
DBGP2("Adding $cpugraph for CPU %d", obj->data.cpu_index);
|
DBGP2("Adding $cpugraph for CPU %d", obj->data.cpu_index);
|
||||||
if (buf) free(buf);
|
if (buf) free(buf);
|
||||||
END OBJ(loadgraph, CALLBACK(&update_load_average))
|
END OBJ(loadgraph, &update_load_average)
|
||||||
char *buf = 0;
|
char *buf = 0;
|
||||||
SIZE_DEFAULTS(graph);
|
SIZE_DEFAULTS(graph);
|
||||||
buf = scan_graph(arg, &obj->a, &obj->b, &obj->c, &obj->d,
|
buf = scan_graph(arg, &obj->a, &obj->b, &obj->c, &obj->d,
|
||||||
@ -590,14 +585,14 @@ struct text_object *construct_text_object(const char *s, const char *arg, long
|
|||||||
free(buf);
|
free(buf);
|
||||||
}
|
}
|
||||||
#endif /* X11 */
|
#endif /* X11 */
|
||||||
END OBJ(diskio, CALLBACK(&update_diskio))
|
END OBJ(diskio, &update_diskio)
|
||||||
obj->data.diskio = prepare_diskio_stat(dev_name(arg));
|
obj->data.diskio = prepare_diskio_stat(dev_name(arg));
|
||||||
END OBJ(diskio_read, CALLBACK(&update_diskio))
|
END OBJ(diskio_read, &update_diskio)
|
||||||
obj->data.diskio = prepare_diskio_stat(dev_name(arg));
|
obj->data.diskio = prepare_diskio_stat(dev_name(arg));
|
||||||
END OBJ(diskio_write, CALLBACK(&update_diskio))
|
END OBJ(diskio_write, &update_diskio)
|
||||||
obj->data.diskio = prepare_diskio_stat(dev_name(arg));
|
obj->data.diskio = prepare_diskio_stat(dev_name(arg));
|
||||||
#ifdef X11
|
#ifdef X11
|
||||||
END OBJ(diskiograph, CALLBACK(&update_diskio))
|
END OBJ(diskiograph, &update_diskio)
|
||||||
char *buf = 0;
|
char *buf = 0;
|
||||||
SIZE_DEFAULTS(graph);
|
SIZE_DEFAULTS(graph);
|
||||||
buf = scan_graph(arg, &obj->a, &obj->b, &obj->c, &obj->d,
|
buf = scan_graph(arg, &obj->a, &obj->b, &obj->c, &obj->d,
|
||||||
@ -605,7 +600,7 @@ struct text_object *construct_text_object(const char *s, const char *arg, long
|
|||||||
|
|
||||||
obj->data.diskio = prepare_diskio_stat(dev_name(buf));
|
obj->data.diskio = prepare_diskio_stat(dev_name(buf));
|
||||||
if (buf) free(buf);
|
if (buf) free(buf);
|
||||||
END OBJ(diskiograph_read, CALLBACK(&update_diskio))
|
END OBJ(diskiograph_read, &update_diskio)
|
||||||
char *buf = 0;
|
char *buf = 0;
|
||||||
SIZE_DEFAULTS(graph);
|
SIZE_DEFAULTS(graph);
|
||||||
buf = scan_graph(arg, &obj->a, &obj->b, &obj->c, &obj->d,
|
buf = scan_graph(arg, &obj->a, &obj->b, &obj->c, &obj->d,
|
||||||
@ -613,7 +608,7 @@ struct text_object *construct_text_object(const char *s, const char *arg, long
|
|||||||
|
|
||||||
obj->data.diskio = prepare_diskio_stat(dev_name(buf));
|
obj->data.diskio = prepare_diskio_stat(dev_name(buf));
|
||||||
if (buf) free(buf);
|
if (buf) free(buf);
|
||||||
END OBJ(diskiograph_write, CALLBACK(&update_diskio))
|
END OBJ(diskiograph_write, &update_diskio)
|
||||||
char *buf = 0;
|
char *buf = 0;
|
||||||
SIZE_DEFAULTS(graph);
|
SIZE_DEFAULTS(graph);
|
||||||
buf = scan_graph(arg, &obj->a, &obj->b, &obj->c, &obj->d,
|
buf = scan_graph(arg, &obj->a, &obj->b, &obj->c, &obj->d,
|
||||||
@ -690,7 +685,7 @@ struct text_object *construct_text_object(const char *s, const char *arg, long
|
|||||||
END OBJ(conky_version, 0)
|
END OBJ(conky_version, 0)
|
||||||
END OBJ(conky_build_date, 0)
|
END OBJ(conky_build_date, 0)
|
||||||
END OBJ(conky_build_arch, 0)
|
END OBJ(conky_build_arch, 0)
|
||||||
END OBJ(downspeed, CALLBACK(&update_net_stats))
|
END OBJ(downspeed, &update_net_stats)
|
||||||
if (arg) {
|
if (arg) {
|
||||||
obj->data.net = get_net_stat(arg, obj, free_at_crash);
|
obj->data.net = get_net_stat(arg, obj, free_at_crash);
|
||||||
} else {
|
} else {
|
||||||
@ -699,7 +694,7 @@ struct text_object *construct_text_object(const char *s, const char *arg, long
|
|||||||
obj->data.net = get_net_stat(buf, obj, free_at_crash);
|
obj->data.net = get_net_stat(buf, obj, free_at_crash);
|
||||||
free(buf);
|
free(buf);
|
||||||
}
|
}
|
||||||
END OBJ(downspeedf, CALLBACK(&update_net_stats))
|
END OBJ(downspeedf, &update_net_stats)
|
||||||
if (arg) {
|
if (arg) {
|
||||||
obj->data.net = get_net_stat(arg, obj, free_at_crash);
|
obj->data.net = get_net_stat(arg, obj, free_at_crash);
|
||||||
} else {
|
} else {
|
||||||
@ -709,7 +704,7 @@ struct text_object *construct_text_object(const char *s, const char *arg, long
|
|||||||
free(buf);
|
free(buf);
|
||||||
}
|
}
|
||||||
#ifdef X11
|
#ifdef X11
|
||||||
END OBJ(downspeedgraph, CALLBACK(&update_net_stats))
|
END OBJ(downspeedgraph, &update_net_stats)
|
||||||
char *buf = 0;
|
char *buf = 0;
|
||||||
SIZE_DEFAULTS(graph);
|
SIZE_DEFAULTS(graph);
|
||||||
buf = scan_graph(arg, &obj->a, &obj->b, &obj->c, &obj->d,
|
buf = scan_graph(arg, &obj->a, &obj->b, &obj->c, &obj->d,
|
||||||
@ -840,7 +835,7 @@ struct text_object *construct_text_object(const char *s, const char *arg, long
|
|||||||
} else {
|
} else {
|
||||||
obj->data.s = strndup("", text_buffer_size);
|
obj->data.s = strndup("", text_buffer_size);
|
||||||
}
|
}
|
||||||
END OBJ(fs_bar, CALLBACK(&update_fs_stats))
|
END OBJ(fs_bar, &update_fs_stats)
|
||||||
SIZE_DEFAULTS(bar);
|
SIZE_DEFAULTS(bar);
|
||||||
arg = scan_bar(arg, &obj->data.fsbar.w, &obj->data.fsbar.h);
|
arg = scan_bar(arg, &obj->data.fsbar.w, &obj->data.fsbar.h);
|
||||||
if (arg) {
|
if (arg) {
|
||||||
@ -854,7 +849,7 @@ struct text_object *construct_text_object(const char *s, const char *arg, long
|
|||||||
arg = "/";
|
arg = "/";
|
||||||
}
|
}
|
||||||
obj->data.fsbar.fs = prepare_fs_stat(arg);
|
obj->data.fsbar.fs = prepare_fs_stat(arg);
|
||||||
END OBJ(fs_bar_free, CALLBACK(&update_fs_stats))
|
END OBJ(fs_bar_free, &update_fs_stats)
|
||||||
SIZE_DEFAULTS(bar);
|
SIZE_DEFAULTS(bar);
|
||||||
arg = scan_bar(arg, &obj->data.fsbar.w, &obj->data.fsbar.h);
|
arg = scan_bar(arg, &obj->data.fsbar.w, &obj->data.fsbar.h);
|
||||||
if (arg) {
|
if (arg) {
|
||||||
@ -869,39 +864,39 @@ struct text_object *construct_text_object(const char *s, const char *arg, long
|
|||||||
}
|
}
|
||||||
|
|
||||||
obj->data.fsbar.fs = prepare_fs_stat(arg);
|
obj->data.fsbar.fs = prepare_fs_stat(arg);
|
||||||
END OBJ(fs_free, CALLBACK(&update_fs_stats))
|
END OBJ(fs_free, &update_fs_stats)
|
||||||
if (!arg) {
|
if (!arg) {
|
||||||
arg = "/";
|
arg = "/";
|
||||||
}
|
}
|
||||||
obj->data.fs = prepare_fs_stat(arg);
|
obj->data.fs = prepare_fs_stat(arg);
|
||||||
END OBJ(fs_used_perc, CALLBACK(&update_fs_stats))
|
END OBJ(fs_used_perc, &update_fs_stats)
|
||||||
if (!arg) {
|
if (!arg) {
|
||||||
arg = "/";
|
arg = "/";
|
||||||
}
|
}
|
||||||
obj->data.fs = prepare_fs_stat(arg);
|
obj->data.fs = prepare_fs_stat(arg);
|
||||||
END OBJ(fs_free_perc, CALLBACK(&update_fs_stats))
|
END OBJ(fs_free_perc, &update_fs_stats)
|
||||||
if (!arg) {
|
if (!arg) {
|
||||||
arg = "/";
|
arg = "/";
|
||||||
}
|
}
|
||||||
obj->data.fs = prepare_fs_stat(arg);
|
obj->data.fs = prepare_fs_stat(arg);
|
||||||
END OBJ(fs_size, CALLBACK(&update_fs_stats))
|
END OBJ(fs_size, &update_fs_stats)
|
||||||
if (!arg) {
|
if (!arg) {
|
||||||
arg = "/";
|
arg = "/";
|
||||||
}
|
}
|
||||||
obj->data.fs = prepare_fs_stat(arg);
|
obj->data.fs = prepare_fs_stat(arg);
|
||||||
END OBJ(fs_type, CALLBACK(&update_fs_stats))
|
END OBJ(fs_type, &update_fs_stats)
|
||||||
if (!arg) {
|
if (!arg) {
|
||||||
arg = "/";
|
arg = "/";
|
||||||
}
|
}
|
||||||
obj->data.fs = prepare_fs_stat(arg);
|
obj->data.fs = prepare_fs_stat(arg);
|
||||||
END OBJ(fs_used, CALLBACK(&update_fs_stats))
|
END OBJ(fs_used, &update_fs_stats)
|
||||||
if (!arg) {
|
if (!arg) {
|
||||||
arg = "/";
|
arg = "/";
|
||||||
}
|
}
|
||||||
obj->data.fs = prepare_fs_stat(arg);
|
obj->data.fs = prepare_fs_stat(arg);
|
||||||
END OBJ(hr, 0)
|
END OBJ(hr, 0)
|
||||||
obj->data.i = arg ? atoi(arg) : 1;
|
obj->data.i = arg ? atoi(arg) : 1;
|
||||||
END OBJ(nameserver, CALLBACK(&update_dns_data))
|
END OBJ(nameserver, &update_dns_data)
|
||||||
obj->data.i = arg ? atoi(arg) : 0;
|
obj->data.i = arg ? atoi(arg) : 0;
|
||||||
END OBJ(offset, 0)
|
END OBJ(offset, 0)
|
||||||
obj->data.i = arg ? atoi(arg) : 1;
|
obj->data.i = arg ? atoi(arg) : 1;
|
||||||
@ -1036,7 +1031,7 @@ struct text_object *construct_text_object(const char *s, const char *arg, long
|
|||||||
if (!parse_top_args(s, arg, obj)) {
|
if (!parse_top_args(s, arg, obj)) {
|
||||||
return NULL;
|
return NULL;
|
||||||
}
|
}
|
||||||
} else OBJ(addr, CALLBACK(&update_net_stats))
|
} else OBJ(addr, &update_net_stats)
|
||||||
if (arg) {
|
if (arg) {
|
||||||
obj->data.net = get_net_stat(arg, obj, free_at_crash);
|
obj->data.net = get_net_stat(arg, obj, free_at_crash);
|
||||||
} else {
|
} else {
|
||||||
@ -1046,7 +1041,7 @@ struct text_object *construct_text_object(const char *s, const char *arg, long
|
|||||||
free(buf);
|
free(buf);
|
||||||
}
|
}
|
||||||
#if defined(__linux__)
|
#if defined(__linux__)
|
||||||
END OBJ(addrs, CALLBACK(&update_net_stats))
|
END OBJ(addrs, &update_net_stats)
|
||||||
if (arg) {
|
if (arg) {
|
||||||
obj->data.net = get_net_stat(arg, obj, free_at_crash);
|
obj->data.net = get_net_stat(arg, obj, free_at_crash);
|
||||||
} else {
|
} else {
|
||||||
@ -1072,7 +1067,7 @@ struct text_object *construct_text_object(const char *s, const char *arg, long
|
|||||||
}else{
|
}else{
|
||||||
CRIT_ERR(obj, free_at_crash, "words needs a argument");
|
CRIT_ERR(obj, free_at_crash, "words needs a argument");
|
||||||
}
|
}
|
||||||
END OBJ(loadavg, CALLBACK(&update_load_average))
|
END OBJ(loadavg, &update_load_average)
|
||||||
int a = 1, b = 2, c = 3, r = 3;
|
int a = 1, b = 2, c = 3, r = 3;
|
||||||
|
|
||||||
if (arg) {
|
if (arg) {
|
||||||
@ -1136,7 +1131,7 @@ struct text_object *construct_text_object(const char *s, const char *arg, long
|
|||||||
obj->data.ifblock.s = strndup(arg, text_buffer_size);
|
obj->data.ifblock.s = strndup(arg, text_buffer_size);
|
||||||
}
|
}
|
||||||
#ifdef __linux__
|
#ifdef __linux__
|
||||||
END OBJ_IF(if_running, CALLBACK(&update_top))
|
END OBJ_IF(if_running, &update_top)
|
||||||
if (arg) {
|
if (arg) {
|
||||||
top_running = 1;
|
top_running = 1;
|
||||||
obj->data.ifblock.s = strndup(arg, text_buffer_size);
|
obj->data.ifblock.s = strndup(arg, text_buffer_size);
|
||||||
@ -1369,21 +1364,21 @@ struct text_object *construct_text_object(const char *s, const char *arg, long
|
|||||||
/* if '1' (in mboxscan.c) then there was SIGUSR1, hmm */
|
/* if '1' (in mboxscan.c) then there was SIGUSR1, hmm */
|
||||||
obj->data.mboxscan.output[0] = 1;
|
obj->data.mboxscan.output[0] = 1;
|
||||||
strncpy(obj->data.mboxscan.args, arg, text_buffer_size);
|
strncpy(obj->data.mboxscan.args, arg, text_buffer_size);
|
||||||
END OBJ(mem, CALLBACK(&update_meminfo))
|
END OBJ(mem, &update_meminfo)
|
||||||
END OBJ(memeasyfree, CALLBACK(&update_meminfo))
|
END OBJ(memeasyfree, &update_meminfo)
|
||||||
END OBJ(memfree, CALLBACK(&update_meminfo))
|
END OBJ(memfree, &update_meminfo)
|
||||||
END OBJ(memmax, CALLBACK(&update_meminfo))
|
END OBJ(memmax, &update_meminfo)
|
||||||
END OBJ(memperc, CALLBACK(&update_meminfo))
|
END OBJ(memperc, &update_meminfo)
|
||||||
#ifdef X11
|
#ifdef X11
|
||||||
END OBJ(memgauge, CALLBACK(&update_meminfo))
|
END OBJ(memgauge, &update_meminfo)
|
||||||
SIZE_DEFAULTS(gauge);
|
SIZE_DEFAULTS(gauge);
|
||||||
scan_gauge(arg, &obj->data.pair.a, &obj->data.pair.b);
|
scan_gauge(arg, &obj->data.pair.a, &obj->data.pair.b);
|
||||||
#endif /* X11*/
|
#endif /* X11*/
|
||||||
END OBJ(membar, CALLBACK(&update_meminfo))
|
END OBJ(membar, &update_meminfo)
|
||||||
SIZE_DEFAULTS(bar);
|
SIZE_DEFAULTS(bar);
|
||||||
scan_bar(arg, &obj->data.pair.a, &obj->data.pair.b);
|
scan_bar(arg, &obj->data.pair.a, &obj->data.pair.b);
|
||||||
#ifdef X11
|
#ifdef X11
|
||||||
END OBJ(memgraph, CALLBACK(&update_meminfo))
|
END OBJ(memgraph, &update_meminfo)
|
||||||
char *buf = 0;
|
char *buf = 0;
|
||||||
SIZE_DEFAULTS(graph);
|
SIZE_DEFAULTS(graph);
|
||||||
buf = scan_graph(arg, &obj->a, &obj->b, &obj->c, &obj->d,
|
buf = scan_graph(arg, &obj->a, &obj->b, &obj->c, &obj->d,
|
||||||
@ -1414,15 +1409,15 @@ struct text_object *construct_text_object(const char *s, const char *arg, long
|
|||||||
END OBJ_IF(if_mixer_mute, 0)
|
END OBJ_IF(if_mixer_mute, 0)
|
||||||
obj->data.ifblock.i = mixer_init(arg);
|
obj->data.ifblock.i = mixer_init(arg);
|
||||||
#ifdef X11
|
#ifdef X11
|
||||||
END OBJ(monitor, CALLBACK(&update_x11info))
|
END OBJ(monitor, &update_x11info)
|
||||||
END OBJ(monitor_number, CALLBACK(&update_x11info))
|
END OBJ(monitor_number, &update_x11info)
|
||||||
END OBJ(desktop, CALLBACK(&update_x11info))
|
END OBJ(desktop, &update_x11info)
|
||||||
END OBJ(desktop_number, CALLBACK(&update_x11info))
|
END OBJ(desktop_number, &update_x11info)
|
||||||
END OBJ(desktop_name, CALLBACK(&update_x11info))
|
END OBJ(desktop_name, &update_x11info)
|
||||||
#endif
|
#endif
|
||||||
END OBJ(nodename, 0)
|
END OBJ(nodename, 0)
|
||||||
END OBJ(processes, CALLBACK(&update_total_processes))
|
END OBJ(processes, &update_total_processes)
|
||||||
END OBJ(running_processes, CALLBACK(&update_running_processes))
|
END OBJ(running_processes, &update_running_processes)
|
||||||
END OBJ(shadecolor, 0)
|
END OBJ(shadecolor, 0)
|
||||||
#ifdef X11
|
#ifdef X11
|
||||||
obj->data.l = arg ? get_x11_color(arg) : default_bg_color;
|
obj->data.l = arg ? get_x11_color(arg) : default_bg_color;
|
||||||
@ -1446,11 +1441,11 @@ struct text_object *construct_text_object(const char *s, const char *arg, long
|
|||||||
obj->data.pair.a = a;
|
obj->data.pair.a = a;
|
||||||
obj->data.pair.b = b;
|
obj->data.pair.b = b;
|
||||||
#endif /* X11 */
|
#endif /* X11 */
|
||||||
END OBJ(swap, CALLBACK(&update_meminfo))
|
END OBJ(swap, &update_meminfo)
|
||||||
END OBJ(swapfree, CALLBACK(&update_meminfo))
|
END OBJ(swapfree, &update_meminfo)
|
||||||
END OBJ(swapmax, CALLBACK(&update_meminfo))
|
END OBJ(swapmax, &update_meminfo)
|
||||||
END OBJ(swapperc, CALLBACK(&update_meminfo))
|
END OBJ(swapperc, &update_meminfo)
|
||||||
END OBJ(swapbar, CALLBACK(&update_meminfo))
|
END OBJ(swapbar, &update_meminfo)
|
||||||
SIZE_DEFAULTS(bar);
|
SIZE_DEFAULTS(bar);
|
||||||
scan_bar(arg, &obj->data.pair.a, &obj->data.pair.b);
|
scan_bar(arg, &obj->data.pair.a, &obj->data.pair.b);
|
||||||
END OBJ(sysname, 0)
|
END OBJ(sysname, 0)
|
||||||
@ -1505,7 +1500,7 @@ struct text_object *construct_text_object(const char *s, const char *arg, long
|
|||||||
set_iconv_converting(0);
|
set_iconv_converting(0);
|
||||||
|
|
||||||
#endif
|
#endif
|
||||||
END OBJ(totaldown, CALLBACK(&update_net_stats))
|
END OBJ(totaldown, &update_net_stats)
|
||||||
if (arg) {
|
if (arg) {
|
||||||
obj->data.net = get_net_stat(arg, obj, free_at_crash);
|
obj->data.net = get_net_stat(arg, obj, free_at_crash);
|
||||||
} else {
|
} else {
|
||||||
@ -1514,7 +1509,7 @@ struct text_object *construct_text_object(const char *s, const char *arg, long
|
|||||||
obj->data.net = get_net_stat(buf, obj, free_at_crash);
|
obj->data.net = get_net_stat(buf, obj, free_at_crash);
|
||||||
free(buf);
|
free(buf);
|
||||||
}
|
}
|
||||||
END OBJ(totalup, CALLBACK(&update_net_stats))
|
END OBJ(totalup, &update_net_stats)
|
||||||
obj->data.net = get_net_stat(arg, obj, free_at_crash);
|
obj->data.net = get_net_stat(arg, obj, free_at_crash);
|
||||||
if (arg) {
|
if (arg) {
|
||||||
obj->data.net = get_net_stat(arg, obj, free_at_crash);
|
obj->data.net = get_net_stat(arg, obj, free_at_crash);
|
||||||
@ -1533,7 +1528,7 @@ struct text_object *construct_text_object(const char *s, const char *arg, long
|
|||||||
obj->data.i = arg ? atoi(arg) : 0;
|
obj->data.i = arg ? atoi(arg) : 0;
|
||||||
END OBJ(alignc, 0)
|
END OBJ(alignc, 0)
|
||||||
obj->data.i = arg ? atoi(arg) : 0;
|
obj->data.i = arg ? atoi(arg) : 0;
|
||||||
END OBJ(upspeed, CALLBACK(&update_net_stats))
|
END OBJ(upspeed, &update_net_stats)
|
||||||
if (arg) {
|
if (arg) {
|
||||||
obj->data.net = get_net_stat(arg, obj, free_at_crash);
|
obj->data.net = get_net_stat(arg, obj, free_at_crash);
|
||||||
} else {
|
} else {
|
||||||
@ -1542,7 +1537,7 @@ struct text_object *construct_text_object(const char *s, const char *arg, long
|
|||||||
obj->data.net = get_net_stat(buf, obj, free_at_crash);
|
obj->data.net = get_net_stat(buf, obj, free_at_crash);
|
||||||
free(buf);
|
free(buf);
|
||||||
}
|
}
|
||||||
END OBJ(upspeedf, CALLBACK(&update_net_stats))
|
END OBJ(upspeedf, &update_net_stats)
|
||||||
if (arg) {
|
if (arg) {
|
||||||
obj->data.net = get_net_stat(arg, obj, free_at_crash);
|
obj->data.net = get_net_stat(arg, obj, free_at_crash);
|
||||||
} else {
|
} else {
|
||||||
@ -1553,7 +1548,7 @@ struct text_object *construct_text_object(const char *s, const char *arg, long
|
|||||||
}
|
}
|
||||||
|
|
||||||
#ifdef X11
|
#ifdef X11
|
||||||
END OBJ(upspeedgraph, CALLBACK(&update_net_stats))
|
END OBJ(upspeedgraph, &update_net_stats)
|
||||||
char *buf = 0;
|
char *buf = 0;
|
||||||
SIZE_DEFAULTS(graph);
|
SIZE_DEFAULTS(graph);
|
||||||
buf = scan_graph(arg, &obj->a, &obj->b, &obj->c, &obj->d,
|
buf = scan_graph(arg, &obj->a, &obj->b, &obj->c, &obj->d,
|
||||||
@ -1564,15 +1559,15 @@ struct text_object *construct_text_object(const char *s, const char *arg, long
|
|||||||
obj->data.net = get_net_stat(buf, obj, free_at_crash);
|
obj->data.net = get_net_stat(buf, obj, free_at_crash);
|
||||||
free(buf);
|
free(buf);
|
||||||
#endif
|
#endif
|
||||||
END OBJ(uptime_short, CALLBACK(&update_uptime))
|
END OBJ(uptime_short, &update_uptime)
|
||||||
END OBJ(uptime, CALLBACK(&update_uptime))
|
END OBJ(uptime, &update_uptime)
|
||||||
END OBJ(user_names, CALLBACK(&update_users))
|
END OBJ(user_names, &update_users)
|
||||||
END OBJ(user_times, CALLBACK(&update_users))
|
END OBJ(user_times, &update_users)
|
||||||
END OBJ(user_terms, CALLBACK(&update_users))
|
END OBJ(user_terms, &update_users)
|
||||||
END OBJ(user_number, CALLBACK(&update_users))
|
END OBJ(user_number, &update_users)
|
||||||
#if defined(__linux__)
|
#if defined(__linux__)
|
||||||
END OBJ(gw_iface, CALLBACK(&update_gateway_info))
|
END OBJ(gw_iface, &update_gateway_info)
|
||||||
END OBJ(gw_ip, CALLBACK(&update_gateway_info))
|
END OBJ(gw_ip, &update_gateway_info)
|
||||||
#endif /* !__linux__ */
|
#endif /* !__linux__ */
|
||||||
#ifndef __OpenBSD__
|
#ifndef __OpenBSD__
|
||||||
END OBJ(adt746xcpu, 0)
|
END OBJ(adt746xcpu, 0)
|
||||||
@ -1669,85 +1664,85 @@ struct text_object *construct_text_object(const char *s, const char *arg, long
|
|||||||
else \
|
else \
|
||||||
NORM_ERR(#name ": invalid length argument"); \
|
NORM_ERR(#name ": invalid length argument"); \
|
||||||
}
|
}
|
||||||
END OBJ(mpd_artist, CALLBACK(&update_mpd))
|
END OBJ(mpd_artist, &update_mpd)
|
||||||
mpd_set_maxlen(mpd_artist);
|
mpd_set_maxlen(mpd_artist);
|
||||||
init_mpd();
|
init_mpd();
|
||||||
END OBJ(mpd_title, CALLBACK(&update_mpd))
|
END OBJ(mpd_title, &update_mpd)
|
||||||
mpd_set_maxlen(mpd_title);
|
mpd_set_maxlen(mpd_title);
|
||||||
init_mpd();
|
init_mpd();
|
||||||
END OBJ(mpd_random, CALLBACK(&update_mpd)) init_mpd();
|
END OBJ(mpd_random, &update_mpd) init_mpd();
|
||||||
END OBJ(mpd_repeat, CALLBACK(&update_mpd)) init_mpd();
|
END OBJ(mpd_repeat, &update_mpd) init_mpd();
|
||||||
END OBJ(mpd_elapsed, CALLBACK(&update_mpd)) init_mpd();
|
END OBJ(mpd_elapsed, &update_mpd) init_mpd();
|
||||||
END OBJ(mpd_length, CALLBACK(&update_mpd)) init_mpd();
|
END OBJ(mpd_length, &update_mpd) init_mpd();
|
||||||
END OBJ(mpd_track, CALLBACK(&update_mpd))
|
END OBJ(mpd_track, &update_mpd)
|
||||||
mpd_set_maxlen(mpd_track);
|
mpd_set_maxlen(mpd_track);
|
||||||
init_mpd();
|
init_mpd();
|
||||||
END OBJ(mpd_name, CALLBACK(&update_mpd))
|
END OBJ(mpd_name, &update_mpd)
|
||||||
mpd_set_maxlen(mpd_name);
|
mpd_set_maxlen(mpd_name);
|
||||||
init_mpd();
|
init_mpd();
|
||||||
END OBJ(mpd_file, CALLBACK(&update_mpd))
|
END OBJ(mpd_file, &update_mpd)
|
||||||
mpd_set_maxlen(mpd_file);
|
mpd_set_maxlen(mpd_file);
|
||||||
init_mpd();
|
init_mpd();
|
||||||
END OBJ(mpd_percent, CALLBACK(&update_mpd)) init_mpd();
|
END OBJ(mpd_percent, &update_mpd) init_mpd();
|
||||||
END OBJ(mpd_album, CALLBACK(&update_mpd))
|
END OBJ(mpd_album, &update_mpd)
|
||||||
mpd_set_maxlen(mpd_album);
|
mpd_set_maxlen(mpd_album);
|
||||||
init_mpd();
|
init_mpd();
|
||||||
END OBJ(mpd_vol, CALLBACK(&update_mpd)) init_mpd();
|
END OBJ(mpd_vol, &update_mpd) init_mpd();
|
||||||
END OBJ(mpd_bitrate, CALLBACK(&update_mpd)) init_mpd();
|
END OBJ(mpd_bitrate, &update_mpd) init_mpd();
|
||||||
END OBJ(mpd_status, CALLBACK(&update_mpd)) init_mpd();
|
END OBJ(mpd_status, &update_mpd) init_mpd();
|
||||||
END OBJ(mpd_bar, CALLBACK(&update_mpd))
|
END OBJ(mpd_bar, &update_mpd)
|
||||||
SIZE_DEFAULTS(bar);
|
SIZE_DEFAULTS(bar);
|
||||||
scan_bar(arg, &obj->data.pair.a, &obj->data.pair.b);
|
scan_bar(arg, &obj->data.pair.a, &obj->data.pair.b);
|
||||||
init_mpd();
|
init_mpd();
|
||||||
END OBJ(mpd_smart, CALLBACK(&update_mpd))
|
END OBJ(mpd_smart, &update_mpd)
|
||||||
mpd_set_maxlen(mpd_smart);
|
mpd_set_maxlen(mpd_smart);
|
||||||
init_mpd();
|
init_mpd();
|
||||||
END OBJ_IF(if_mpd_playing, CALLBACK(&update_mpd))
|
END OBJ_IF(if_mpd_playing, &update_mpd)
|
||||||
init_mpd();
|
init_mpd();
|
||||||
#undef mpd_set_maxlen
|
#undef mpd_set_maxlen
|
||||||
#endif /* MPD */
|
#endif /* MPD */
|
||||||
#ifdef MOC
|
#ifdef MOC
|
||||||
END OBJ(moc_state, CALLBACK(&update_moc))
|
END OBJ(moc_state, &update_moc)
|
||||||
END OBJ(moc_file, CALLBACK(&update_moc))
|
END OBJ(moc_file, &update_moc)
|
||||||
END OBJ(moc_title, CALLBACK(&update_moc))
|
END OBJ(moc_title, &update_moc)
|
||||||
END OBJ(moc_artist, CALLBACK(&update_moc))
|
END OBJ(moc_artist, &update_moc)
|
||||||
END OBJ(moc_song, CALLBACK(&update_moc))
|
END OBJ(moc_song, &update_moc)
|
||||||
END OBJ(moc_album, CALLBACK(&update_moc))
|
END OBJ(moc_album, &update_moc)
|
||||||
END OBJ(moc_totaltime, CALLBACK(&update_moc))
|
END OBJ(moc_totaltime, &update_moc)
|
||||||
END OBJ(moc_timeleft, CALLBACK(&update_moc))
|
END OBJ(moc_timeleft, &update_moc)
|
||||||
END OBJ(moc_curtime, CALLBACK(&update_moc))
|
END OBJ(moc_curtime, &update_moc)
|
||||||
END OBJ(moc_bitrate, CALLBACK(&update_moc))
|
END OBJ(moc_bitrate, &update_moc)
|
||||||
END OBJ(moc_rate, CALLBACK(&update_moc))
|
END OBJ(moc_rate, &update_moc)
|
||||||
#endif /* MOC */
|
#endif /* MOC */
|
||||||
#ifdef XMMS2
|
#ifdef XMMS2
|
||||||
END OBJ(xmms2_artist, CALLBACK(&update_xmms2))
|
END OBJ(xmms2_artist, &update_xmms2)
|
||||||
END OBJ(xmms2_album, CALLBACK(&update_xmms2))
|
END OBJ(xmms2_album, &update_xmms2)
|
||||||
END OBJ(xmms2_title, CALLBACK(&update_xmms2))
|
END OBJ(xmms2_title, &update_xmms2)
|
||||||
END OBJ(xmms2_genre, CALLBACK(&update_xmms2))
|
END OBJ(xmms2_genre, &update_xmms2)
|
||||||
END OBJ(xmms2_comment, CALLBACK(&update_xmms2))
|
END OBJ(xmms2_comment, &update_xmms2)
|
||||||
END OBJ(xmms2_url, CALLBACK(&update_xmms2))
|
END OBJ(xmms2_url, &update_xmms2)
|
||||||
END OBJ(xmms2_tracknr, CALLBACK(&update_xmms2))
|
END OBJ(xmms2_tracknr, &update_xmms2)
|
||||||
END OBJ(xmms2_bitrate, CALLBACK(&update_xmms2))
|
END OBJ(xmms2_bitrate, &update_xmms2)
|
||||||
END OBJ(xmms2_date, CALLBACK(&update_xmms2))
|
END OBJ(xmms2_date, &update_xmms2)
|
||||||
END OBJ(xmms2_id, CALLBACK(&update_xmms2))
|
END OBJ(xmms2_id, &update_xmms2)
|
||||||
END OBJ(xmms2_duration, CALLBACK(&update_xmms2))
|
END OBJ(xmms2_duration, &update_xmms2)
|
||||||
END OBJ(xmms2_elapsed, CALLBACK(&update_xmms2))
|
END OBJ(xmms2_elapsed, &update_xmms2)
|
||||||
END OBJ(xmms2_size, CALLBACK(&update_xmms2))
|
END OBJ(xmms2_size, &update_xmms2)
|
||||||
END OBJ(xmms2_status, CALLBACK(&update_xmms2))
|
END OBJ(xmms2_status, &update_xmms2)
|
||||||
END OBJ(xmms2_percent, CALLBACK(&update_xmms2))
|
END OBJ(xmms2_percent, &update_xmms2)
|
||||||
#ifdef X11
|
#ifdef X11
|
||||||
END OBJ(xmms2_bar, CALLBACK(&update_xmms2))
|
END OBJ(xmms2_bar, &update_xmms2)
|
||||||
SIZE_DEFAULTS(bar);
|
SIZE_DEFAULTS(bar);
|
||||||
scan_bar(arg, &obj->data.pair.a, &obj->data.pair.b);
|
scan_bar(arg, &obj->data.pair.a, &obj->data.pair.b);
|
||||||
#endif /* X11 */
|
#endif /* X11 */
|
||||||
END OBJ(xmms2_smart, CALLBACK(&update_xmms2))
|
END OBJ(xmms2_smart, &update_xmms2)
|
||||||
END OBJ(xmms2_playlist, CALLBACK(&update_xmms2))
|
END OBJ(xmms2_playlist, &update_xmms2)
|
||||||
END OBJ(xmms2_timesplayed, CALLBACK(&update_xmms2))
|
END OBJ(xmms2_timesplayed, &update_xmms2)
|
||||||
END OBJ_IF(if_xmms2_connected, CALLBACK(&update_xmms2))
|
END OBJ_IF(if_xmms2_connected, &update_xmms2)
|
||||||
#endif
|
#endif
|
||||||
#ifdef AUDACIOUS
|
#ifdef AUDACIOUS
|
||||||
END OBJ(audacious_status, CALLBACK(&update_audacious))
|
END OBJ(audacious_status, &update_audacious)
|
||||||
END OBJ(audacious_title, CALLBACK(&update_audacious))
|
END OBJ(audacious_title, &update_audacious)
|
||||||
if (arg) {
|
if (arg) {
|
||||||
sscanf(arg, "%d", &info.audacious.max_title_len);
|
sscanf(arg, "%d", &info.audacious.max_title_len);
|
||||||
if (info.audacious.max_title_len > 0) {
|
if (info.audacious.max_title_len > 0) {
|
||||||
@ -1756,35 +1751,35 @@ struct text_object *construct_text_object(const char *s, const char *arg, long
|
|||||||
CRIT_ERR(obj, free_at_crash, "audacious_title: invalid length argument");
|
CRIT_ERR(obj, free_at_crash, "audacious_title: invalid length argument");
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
END OBJ(audacious_length, CALLBACK(&update_audacious))
|
END OBJ(audacious_length, &update_audacious)
|
||||||
END OBJ(audacious_length_seconds, CALLBACK(&update_audacious))
|
END OBJ(audacious_length_seconds, &update_audacious)
|
||||||
END OBJ(audacious_position, CALLBACK(&update_audacious))
|
END OBJ(audacious_position, &update_audacious)
|
||||||
END OBJ(audacious_position_seconds, CALLBACK(&update_audacious))
|
END OBJ(audacious_position_seconds, &update_audacious)
|
||||||
END OBJ(audacious_bitrate, CALLBACK(&update_audacious))
|
END OBJ(audacious_bitrate, &update_audacious)
|
||||||
END OBJ(audacious_frequency, CALLBACK(&update_audacious))
|
END OBJ(audacious_frequency, &update_audacious)
|
||||||
END OBJ(audacious_channels, CALLBACK(&update_audacious))
|
END OBJ(audacious_channels, &update_audacious)
|
||||||
END OBJ(audacious_filename, CALLBACK(&update_audacious))
|
END OBJ(audacious_filename, &update_audacious)
|
||||||
END OBJ(audacious_playlist_length, CALLBACK(&update_audacious))
|
END OBJ(audacious_playlist_length, &update_audacious)
|
||||||
END OBJ(audacious_playlist_position, CALLBACK(&update_audacious))
|
END OBJ(audacious_playlist_position, &update_audacious)
|
||||||
END OBJ(audacious_main_volume, CALLBACK(&update_audacious))
|
END OBJ(audacious_main_volume, &update_audacious)
|
||||||
#ifdef X11
|
#ifdef X11
|
||||||
END OBJ(audacious_bar, CALLBACK(&update_audacious))
|
END OBJ(audacious_bar, &update_audacious)
|
||||||
SIZE_DEFAULTS(bar);
|
SIZE_DEFAULTS(bar);
|
||||||
scan_bar(arg, &obj->a, &obj->b);
|
scan_bar(arg, &obj->a, &obj->b);
|
||||||
#endif /* X11 */
|
#endif /* X11 */
|
||||||
#endif
|
#endif
|
||||||
#ifdef BMPX
|
#ifdef BMPX
|
||||||
END OBJ(bmpx_title, CALLBACK(&update_bmpx))
|
END OBJ(bmpx_title, &update_bmpx)
|
||||||
memset(&(info.bmpx), 0, sizeof(struct bmpx_s));
|
memset(&(info.bmpx), 0, sizeof(struct bmpx_s));
|
||||||
END OBJ(bmpx_artist, CALLBACK(&update_bmpx))
|
END OBJ(bmpx_artist, &update_bmpx)
|
||||||
memset(&(info.bmpx), 0, sizeof(struct bmpx_s));
|
memset(&(info.bmpx), 0, sizeof(struct bmpx_s));
|
||||||
END OBJ(bmpx_album, CALLBACK(&update_bmpx))
|
END OBJ(bmpx_album, &update_bmpx)
|
||||||
memset(&(info.bmpx), 0, sizeof(struct bmpx_s));
|
memset(&(info.bmpx), 0, sizeof(struct bmpx_s));
|
||||||
END OBJ(bmpx_track, CALLBACK(&update_bmpx))
|
END OBJ(bmpx_track, &update_bmpx)
|
||||||
memset(&(info.bmpx), 0, sizeof(struct bmpx_s));
|
memset(&(info.bmpx), 0, sizeof(struct bmpx_s));
|
||||||
END OBJ(bmpx_uri, CALLBACK(&update_bmpx))
|
END OBJ(bmpx_uri, &update_bmpx)
|
||||||
memset(&(info.bmpx), 0, sizeof(struct bmpx_s));
|
memset(&(info.bmpx), 0, sizeof(struct bmpx_s));
|
||||||
END OBJ(bmpx_bitrate, CALLBACK(&update_bmpx))
|
END OBJ(bmpx_bitrate, &update_bmpx)
|
||||||
memset(&(info.bmpx), 0, sizeof(struct bmpx_s));
|
memset(&(info.bmpx), 0, sizeof(struct bmpx_s));
|
||||||
#endif
|
#endif
|
||||||
#ifdef EVE
|
#ifdef EVE
|
||||||
@ -1998,18 +1993,18 @@ struct text_object *construct_text_object(const char *s, const char *arg, long
|
|||||||
#endif /* X11 */
|
#endif /* X11 */
|
||||||
#endif /* HAVE_LUA */
|
#endif /* HAVE_LUA */
|
||||||
#ifdef HDDTEMP
|
#ifdef HDDTEMP
|
||||||
END OBJ(hddtemp, CALLBACK(&update_hddtemp))
|
END OBJ(hddtemp, &update_hddtemp)
|
||||||
if (arg)
|
if (arg)
|
||||||
obj->data.s = strndup(arg, text_buffer_size);
|
obj->data.s = strndup(arg, text_buffer_size);
|
||||||
#endif /* HDDTEMP */
|
#endif /* HDDTEMP */
|
||||||
#ifdef TCP_PORT_MONITOR
|
#ifdef TCP_PORT_MONITOR
|
||||||
END OBJ(tcp_portmon, CALLBACK(&tcp_portmon_update))
|
END OBJ(tcp_portmon, &tcp_portmon_update)
|
||||||
tcp_portmon_init(arg, &obj->data.tcp_port_monitor);
|
tcp_portmon_init(arg, &obj->data.tcp_port_monitor);
|
||||||
#endif /* TCP_PORT_MONITOR */
|
#endif /* TCP_PORT_MONITOR */
|
||||||
END OBJ(entropy_avail, CALLBACK(&update_entropy))
|
END OBJ(entropy_avail, &update_entropy)
|
||||||
END OBJ(entropy_perc, CALLBACK(&update_entropy))
|
END OBJ(entropy_perc, &update_entropy)
|
||||||
END OBJ(entropy_poolsize, CALLBACK(&update_entropy))
|
END OBJ(entropy_poolsize, &update_entropy)
|
||||||
END OBJ(entropy_bar, CALLBACK(&update_entropy))
|
END OBJ(entropy_bar, &update_entropy)
|
||||||
SIZE_DEFAULTS(bar);
|
SIZE_DEFAULTS(bar);
|
||||||
scan_bar(arg, &obj->a, &obj->b);
|
scan_bar(arg, &obj->a, &obj->b);
|
||||||
END OBJ(include, 0)
|
END OBJ(include, 0)
|
||||||
@ -2129,7 +2124,7 @@ struct text_object *construct_text_object(const char *s, const char *arg, long
|
|||||||
#endif /* NVIDIA */
|
#endif /* NVIDIA */
|
||||||
#ifdef APCUPSD
|
#ifdef APCUPSD
|
||||||
init_apcupsd();
|
init_apcupsd();
|
||||||
END OBJ(apcupsd, CALLBACK(&update_apcupsd))
|
END OBJ(apcupsd, &update_apcupsd)
|
||||||
if (arg) {
|
if (arg) {
|
||||||
char host[64];
|
char host[64];
|
||||||
int port;
|
int port;
|
||||||
@ -2142,31 +2137,31 @@ struct text_object *construct_text_object(const char *s, const char *arg, long
|
|||||||
} else {
|
} else {
|
||||||
CRIT_ERR(obj, free_at_crash, "apcupsd needs arguments: <host> <port>");
|
CRIT_ERR(obj, free_at_crash, "apcupsd needs arguments: <host> <port>");
|
||||||
}
|
}
|
||||||
END OBJ(apcupsd_name, CALLBACK(&update_apcupsd))
|
END OBJ(apcupsd_name, &update_apcupsd)
|
||||||
END OBJ(apcupsd_model, CALLBACK(&update_apcupsd))
|
END OBJ(apcupsd_model, &update_apcupsd)
|
||||||
END OBJ(apcupsd_upsmode, CALLBACK(&update_apcupsd))
|
END OBJ(apcupsd_upsmode, &update_apcupsd)
|
||||||
END OBJ(apcupsd_cable, CALLBACK(&update_apcupsd))
|
END OBJ(apcupsd_cable, &update_apcupsd)
|
||||||
END OBJ(apcupsd_status, CALLBACK(&update_apcupsd))
|
END OBJ(apcupsd_status, &update_apcupsd)
|
||||||
END OBJ(apcupsd_linev, CALLBACK(&update_apcupsd))
|
END OBJ(apcupsd_linev, &update_apcupsd)
|
||||||
END OBJ(apcupsd_load, CALLBACK(&update_apcupsd))
|
END OBJ(apcupsd_load, &update_apcupsd)
|
||||||
END OBJ(apcupsd_loadbar, CALLBACK(&update_apcupsd))
|
END OBJ(apcupsd_loadbar, &update_apcupsd)
|
||||||
SIZE_DEFAULTS(bar);
|
SIZE_DEFAULTS(bar);
|
||||||
scan_bar(arg, &obj->a, &obj->b);
|
scan_bar(arg, &obj->a, &obj->b);
|
||||||
#ifdef X11
|
#ifdef X11
|
||||||
END OBJ(apcupsd_loadgraph, CALLBACK(&update_apcupsd))
|
END OBJ(apcupsd_loadgraph, &update_apcupsd)
|
||||||
char* buf = 0;
|
char* buf = 0;
|
||||||
SIZE_DEFAULTS(graph);
|
SIZE_DEFAULTS(graph);
|
||||||
buf = scan_graph(arg, &obj->a, &obj->b, &obj->c, &obj->d,
|
buf = scan_graph(arg, &obj->a, &obj->b, &obj->c, &obj->d,
|
||||||
&obj->e, &obj->char_a, &obj->char_b);
|
&obj->e, &obj->char_a, &obj->char_b);
|
||||||
if (buf) free(buf);
|
if (buf) free(buf);
|
||||||
END OBJ(apcupsd_loadgauge, CALLBACK(&update_apcupsd))
|
END OBJ(apcupsd_loadgauge, &update_apcupsd)
|
||||||
SIZE_DEFAULTS(gauge);
|
SIZE_DEFAULTS(gauge);
|
||||||
scan_gauge(arg, &obj->a, &obj->b);
|
scan_gauge(arg, &obj->a, &obj->b);
|
||||||
#endif /* X11 */
|
#endif /* X11 */
|
||||||
END OBJ(apcupsd_charge, CALLBACK(&update_apcupsd))
|
END OBJ(apcupsd_charge, &update_apcupsd)
|
||||||
END OBJ(apcupsd_timeleft, CALLBACK(&update_apcupsd))
|
END OBJ(apcupsd_timeleft, &update_apcupsd)
|
||||||
END OBJ(apcupsd_temp, CALLBACK(&update_apcupsd))
|
END OBJ(apcupsd_temp, &update_apcupsd)
|
||||||
END OBJ(apcupsd_lastxfer, CALLBACK(&update_apcupsd))
|
END OBJ(apcupsd_lastxfer, &update_apcupsd)
|
||||||
#endif /* APCUPSD */
|
#endif /* APCUPSD */
|
||||||
END {
|
END {
|
||||||
char buf[256];
|
char buf[256];
|
||||||
|
Loading…
x
Reference in New Issue
Block a user