X-Git-Url: http://vcs.maemo.org/git/?a=blobdiff_plain;f=src%2Ftext_object.h;h=b7a6806d769e28f07fb878520a7125310b9c13e0;hb=refs%2Fheads%2Fmaster;hp=492ab44662ac156ad5a89592ae53a88506825154;hpb=1171ab38a505e56261842f09b942c06fe41e3561;p=monky diff --git a/src/text_object.h b/src/text_object.h index 492ab44..b7a6806 100644 --- a/src/text_object.h +++ b/src/text_object.h @@ -1,4 +1,6 @@ -/* Conky, a system monitor, based on torsmo +/* -*- mode: c; c-basic-offset: 4; tab-width: 4; indent-tabs-mode: t -*- + * + * Conky, a system monitor, based on torsmo * * Any original torsmo code is licensed under the BSD license * @@ -7,7 +9,7 @@ * Please see COPYING for details * * Copyright (c) 2004, Hannu Saransaari and Lauri Hakkarainen - * Copyright (c) 2005-2009 Brenden Matthews, Philip Kovacs, et. al. + * Copyright (c) 2005-2010 Brenden Matthews, Philip Kovacs, et. al. * (see AUTHORS) * All rights reserved. * @@ -28,18 +30,7 @@ #define _TEXT_OBJECT_H #include "config.h" /* for the defines */ -#include "timed_thread.h" /* timed_thread */ - -#ifdef TCP_PORT_MONITOR -#include "tcp-portmon.h" /* tcp_port_monitor_data */ -#endif - -#include "mail.h" /* local_mail_s */ -#include "fs.h" /* struct fs_stat */ - -#ifdef NVIDIA -#include "nvidia.h" /* nvidia_s */ -#endif +#include "specials.h" /* enum special_types */ enum text_object_type { OBJ_read_tcp, @@ -49,15 +40,18 @@ enum text_object_type { #endif /* __linux__ */ #ifndef __OpenBSD__ OBJ_acpiacadapter, - OBJ_adt746xcpu, - OBJ_adt746xfan, OBJ_acpifan, OBJ_acpitemp, OBJ_battery, OBJ_battery_time, + OBJ_battery_temp, + OBJ_battery_volts, OBJ_battery_percent, OBJ_battery_bar, OBJ_battery_short, + OBJ_battery_rate, + OBJ_cell_radio_dbm, + OBJ_cell_radio_percent, #endif /* !__OpenBSD__ */ OBJ_buffers, OBJ_cached, @@ -78,8 +72,8 @@ enum text_object_type { OBJ_font, OBJ_cpu, OBJ_cpubar, -#ifdef X11 OBJ_cpugauge, +#ifdef X11 OBJ_cpugraph, OBJ_loadgraph, #endif /* X11 */ @@ -105,11 +99,11 @@ enum text_object_type { OBJ_texeci, OBJ_execbar, OBJ_execibar, -#ifdef X11 OBJ_execgauge, + OBJ_execigauge, +#ifdef X11 OBJ_execgraph, OBJ_execigraph, - OBJ_execigauge, #endif /* X11 */ OBJ_execp, OBJ_execpi, @@ -151,9 +145,7 @@ enum text_object_type { OBJ_ibm_volume, OBJ_ibm_brightness, OBJ_smapi, -#ifdef X11 OBJ_smapi_bat_bar, -#endif /* X11 */ OBJ_smapi_bat_perc, OBJ_smapi_bat_temp, OBJ_smapi_bat_power, @@ -207,6 +199,7 @@ enum text_object_type { OBJ_unseen_mails, OBJ_flagged_mails, OBJ_unflagged_mails, + OBJ_format_time, OBJ_forwarded_mails, OBJ_unforwarded_mails, OBJ_replied_mails, @@ -217,8 +210,8 @@ enum text_object_type { OBJ_mem, OBJ_memeasyfree, OBJ_memfree, -#ifdef X11 OBJ_memgauge, +#ifdef X11 OBJ_memgraph, #endif /* X11 */ OBJ_membar, @@ -227,31 +220,79 @@ enum text_object_type { OBJ_mixer, OBJ_mixerl, OBJ_mixerr, -#ifdef X11 OBJ_mixerbar, OBJ_mixerlbar, OBJ_mixerrbar, -#endif /* X11 */ OBJ_if_mixer_mute, #ifdef X11 OBJ_monitor, OBJ_monitor_number, + OBJ_desktop, + OBJ_desktop_number, + OBJ_desktop_name, #endif /* X11 */ OBJ_nameserver, OBJ_nodename, + OBJ_nodename_short, OBJ_nvidia, OBJ_pre_exec, + OBJ_cmdline_to_pid, + OBJ_pid_chroot, + OBJ_pid_cmdline, + OBJ_pid_cwd, + OBJ_pid_environ, + OBJ_pid_environ_list, + OBJ_pid_exe, + OBJ_pid_nice, + OBJ_pid_openfiles, + OBJ_pid_parent, + OBJ_pid_priority, + OBJ_pid_state, + OBJ_pid_state_short, + OBJ_pid_stderr, + OBJ_pid_stdin, + OBJ_pid_stdout, + OBJ_pid_threads, + OBJ_pid_thread_list, + OBJ_pid_time_kernelmode, + OBJ_pid_time_usermode, + OBJ_pid_time, + OBJ_pid_uid, + OBJ_pid_euid, + OBJ_pid_suid, + OBJ_pid_fsuid, + OBJ_pid_gid, + OBJ_pid_egid, + OBJ_pid_sgid, + OBJ_pid_fsgid, + OBJ_pid_read, + OBJ_pid_vmpeak, + OBJ_pid_vmsize, + OBJ_pid_vmlck, + OBJ_pid_vmhwm, + OBJ_pid_vmrss, + OBJ_pid_vmdata, + OBJ_pid_vmstk, + OBJ_pid_vmexe, + OBJ_pid_vmlib, + OBJ_pid_vmpte, + OBJ_pid_write, + OBJ_gid_name, + OBJ_uid_name, OBJ_processes, OBJ_running_processes, OBJ_shadecolor, OBJ_outlinecolor, OBJ_stippled_hr, OBJ_swap, + OBJ_swapfree, OBJ_swapbar, OBJ_swapmax, OBJ_swapperc, OBJ_sysname, OBJ_text, + OBJ_threads, + OBJ_running_threads, OBJ_time, OBJ_utime, OBJ_tztime, @@ -268,6 +309,7 @@ enum text_object_type { OBJ_user_names, OBJ_user_terms, OBJ_user_times, + OBJ_user_time, OBJ_user_number, OBJ_imap_messages, OBJ_imap_unseen, @@ -371,20 +413,25 @@ enum text_object_type { #ifdef EVE OBJ_eve, #endif /* EVE */ +#ifdef HAVE_CURL + OBJ_curl, +#endif /* HAVE_CURL */ #ifdef RSS OBJ_rss, #endif /* RSS */ #ifdef WEATHER OBJ_weather, #endif /* WEATHER */ +#ifdef XOAP + OBJ_weather_forecast, +#endif /* XOAP */ #ifdef HAVE_LUA OBJ_lua, OBJ_lua_parse, - OBJ_lua_read_parse, OBJ_lua_bar, + OBJ_lua_gauge, #ifdef X11 OBJ_lua_graph, - OBJ_lua_gauge, #endif /* X11 */ #endif /* HAVE_LUA */ #ifdef TCP_PORT_MONITOR @@ -397,6 +444,7 @@ enum text_object_type { #ifdef HDDTEMP OBJ_hddtemp, #endif /* HDDTEMP */ + OBJ_include, OBJ_blink, OBJ_to_bytes, OBJ_scroll, @@ -415,9 +463,9 @@ enum text_object_type { OBJ_apcupsd_linev, OBJ_apcupsd_load, OBJ_apcupsd_loadbar, + OBJ_apcupsd_loadgauge, #ifdef X11 OBJ_apcupsd_loadgraph, - OBJ_apcupsd_loadgauge, #endif /* X11 */ OBJ_apcupsd_charge, OBJ_apcupsd_timeleft, @@ -429,158 +477,17 @@ enum text_object_type { struct text_object { struct text_object *next, *prev; /* doubly linked list of text objects */ struct text_object *sub; /* for objects parsing text into objects */ + struct text_object *ifblock_next; /* jump target for ifblock objects */ union { + void *opaque; /* new style generic per object data */ char *s; /* some string */ int i; /* some integer */ - long l; /* some other integer */ - unsigned int sensor; - struct net_stat *net; - struct fs_stat *fs; - struct diskio_stat *diskio; - unsigned char loadavg[3]; - unsigned int cpu_index; - struct mail_s *mail; - - struct { - char *args; - char *output; - } mboxscan; - - struct { - char *tz; /* timezone variable */ - char *fmt; /* time display formatting */ - } tztime; - - struct { - struct fs_stat *fs; - int w, h; - } fsbar; /* 3 */ - -#ifdef X11 - struct { - int l; - int w, h; - } mixerbar; /* 3 */ -#endif - - struct { - int fd; - int arg; - char devtype[256]; - char type[64]; - float factor, offset; - } sysfs; - - struct { - struct text_object *next; - char *s; - int i; - char *str; - } ifblock; - - struct { - int num; - int type; - int was_parsed; - char *s; - } top; - - struct { - int wantedlines; - int readlines; - char *logfile; - double last_update; - float interval; - char *buffer; - /* If not -1, a file descriptor to read from when - * logfile is a FIFO. */ - int fd; - } tail; - - struct { - double last_update; - float interval; - char *cmd; - char *buffer; - double data; - } execi; /* 5 */ - - struct { - float interval; - char *cmd; - char *buffer; - double data; - timed_thread *p_timed_thread; - } texeci; - - struct { - int a, b; - } pair; /* 2 */ -#ifdef TCP_PORT_MONITOR - struct tcp_port_monitor_data tcp_port_monitor; -#endif -#ifdef HDDTEMP - struct { - char *addr; - int port; - char *dev; - double update_time; - char *temp; - } hddtemp; /* 2 */ -#endif -#ifdef EVE - struct { - char *apikey; - char *charid; - char *userid; - } eve; -#endif -#ifdef RSS - struct { - char *uri; - char *action; - int act_par; - int delay; - unsigned int nrspaces; - } rss; -#endif -#ifdef WEATHER - struct { - char *uri; - char *data_type; - int delay; - } weather; -#endif - struct { - char *text; - unsigned int show; - unsigned int step; - unsigned int start; - } scroll; - - struct { - char *left; - char *seperation; - char *right; - } combine; - - struct { - char *host; - unsigned int port; - } read_tcp; - - struct local_mail_s local_mail; -#ifdef NVIDIA - struct nvidia_s nvidia; -#endif /* NVIDIA */ - + long l; /* some long integer */ } data; + + void *special_data; int type; - int a, b; long line; - unsigned int c, d, e; - float f; - char char_a, char_b; }; /* text object list helpers */