X-Git-Url: http://vcs.maemo.org/git/?a=blobdiff_plain;f=src%2Fconky.c;h=34a24b2331b1ba3cf43ee4270778bf53e5ac5c9b;hb=a3e81ae59fbc9268bcdded007748a3f2336681e0;hp=876bc2765ab4224f58b969650a38be5289635218;hpb=43f30219e956a46fb2e6843f210812610df61426;p=monky diff --git a/src/conky.c b/src/conky.c index 876bc27..34a24b2 100644 --- a/src/conky.c +++ b/src/conky.c @@ -1001,6 +1001,13 @@ enum text_object_type { OBJ_pb_battery, OBJ_voltage_mv, OBJ_voltage_v, + OBJ_wireless_essid, + OBJ_wireless_mode, + OBJ_wireless_bitrate, + OBJ_wireless_link_qual, + OBJ_wireless_link_qual_max, + OBJ_wireless_link_bar, + OBJ_wireless_ap, #endif /* __linux__ */ OBJ_if_empty, OBJ_if_existing, @@ -2165,6 +2172,46 @@ static struct text_object *construct_text_object(const char *s, const char *arg, obj->data.cpu_index=atoi(&arg[0]); } obj->a = 1; + +#ifdef HAVE_IWLIB + END OBJ(wireless_essid, INFO_NET) + if(arg) + obj->data.net = get_net_stat(arg); + else + CRIT_ERR("wireless_essid: needs an argument"); + END OBJ(wireless_mode, INFO_NET) + if(arg) + obj->data.net = get_net_stat(arg); + else + CRIT_ERR("wireless_mode: needs an argument"); + END OBJ(wireless_ap, INFO_NET) + if(arg) + obj->data.net = get_net_stat(arg); + else + CRIT_ERR("wireless_ap: needs an argument"); + END OBJ(wireless_bitrate, INFO_NET) + if(arg) + obj->data.net = get_net_stat(arg); + else + CRIT_ERR("wireless_bitrate: needs an argument"); + END OBJ(wireless_link_qual, INFO_NET) + if(arg) + obj->data.net = get_net_stat(arg); + else + CRIT_ERR("wireless_link_qual: needs an argument"); + END OBJ(wireless_link_qual_max, INFO_NET) + if(arg) + obj->data.net = get_net_stat(arg); + else + CRIT_ERR("wireless_link_qual_max: needs an argument"); + END OBJ(wireless_link_bar, INFO_NET) + if(arg) { + arg = scan_bar(arg, &obj->a, &obj->b); + obj->data.net = get_net_stat(arg); + } else + CRIT_ERR("wireless_link_bar: needs an argument"); +#endif /* HAVE_IWLIB */ + #endif /* __linux__ */ END OBJ(freq_dyn, 0); END OBJ(freq_dyn_g, 0); @@ -3482,6 +3529,30 @@ static void generate_text_internal(char *p, int p_max_size, struct text_object * obj->a = get_voltage(p, p_max_size, "%'.3f", 1000, obj->data.cpu_index); } } +#ifdef HAVE_IWLIB + OBJ(wireless_essid) { + snprintf(p, p_max_size, "%s", obj->data.net->essid); + } + OBJ(wireless_mode) { + snprintf(p, p_max_size, "%s", obj->data.net->mode); + } + OBJ(wireless_bitrate) { + snprintf(p, p_max_size, "%s", obj->data.net->bitrate); + } + OBJ(wireless_ap) { + snprintf(p, p_max_size, "%s", obj->data.net->ap); + } + OBJ(wireless_link_qual) { + snprintf(p, p_max_size, "%d", obj->data.net->link_qual); + } + OBJ(wireless_link_qual_max) { + snprintf(p, p_max_size, "%d", obj->data.net->link_qual_max); + } + OBJ(wireless_link_bar) { + new_bar(p, obj->a, obj->b, ((double)obj->data.net->link_qual/obj->data.net->link_qual_max)*255.0); + } +#endif /* HAVE_IWLIB */ + #endif /* __linux__ */ OBJ(freq_dyn) {