aboutsummaryrefslogtreecommitdiffstats
path: root/gadgets/gdbar.c
diff options
context:
space:
mode:
authorgotmor <gotmor@f2baff5b-bf2c-0410-a398-912abdc3d8b2>2007-08-18 00:42:39 +0000
committergotmor <gotmor@f2baff5b-bf2c-0410-a398-912abdc3d8b2>2007-08-18 00:42:39 +0000
commit8ba334942e6d28505dbe256e231d562b279f0998 (patch)
tree7ee0924724170619f3c18b4b330c72b1d7a14b9e /gadgets/gdbar.c
parentf2454aab13a7c08b11ab67f53201fc17802c6bf8 (diff)
downloaddzen-8ba334942e6d28505dbe256e231d562b279f0998.tar.gz
dzen-8ba334942e6d28505dbe256e231d562b279f0998.zip
conky style progressmeters for gdbar and gcpubar
git-svn-id: http://dzen.googlecode.com/svn/trunk@158 f2baff5b-bf2c-0410-a398-912abdc3d8b2
Diffstat (limited to 'gadgets/gdbar.c')
-rw-r--r--gadgets/gdbar.c29
1 files changed, 20 insertions, 9 deletions
diff --git a/gadgets/gdbar.c b/gadgets/gdbar.c
index 918caf0..3466b4f 100644
--- a/gadgets/gdbar.c
+++ b/gadgets/gdbar.c
@@ -31,13 +31,13 @@ THE SOFTWARE.
#define MAXLEN 512
-static void pbar (const char *, double, int, int, int);
+static void pbar (const char *, double, int, int, int, int);
char *bg, *fg;
static void
-pbar(const char* label, double perc, int maxc, int height, int pnl) {
+pbar(const char* label, double perc, int maxc, int height, int pnl, int mode) {
int i, rp;
double l;
@@ -51,11 +51,18 @@ pbar(const char* label, double perc, int maxc, int height, int pnl) {
else
rp = (int)perc;
- printf("%s %3d%% ^fg(%s)^r(%dx%d)^fg(%s)^r(%dx%d)^fg()%s",
- label ? label : "", rp,
- fg, (int)l, height,
- bg, maxc-(int)l, height,
- pnl ? "\n" : "");
+ if(mode)
+ printf("%s %3d%% ^ib(1)^fg(%s)^ro(%dx%d)^p(%d)^fg(%s)^r(%dx%d)^p(%d)^ib(0)^fg()%s",
+ label ? label : "", rp,
+ bg, (int)maxc, height, -1*(maxc-1),
+ fg, (int)l, height-2,
+ maxc-(int)l-1, pnl ? "\n" : "");
+ else
+ printf("%s %3d%% ^fg(%s)^r(%dx%d)^fg(%s)^r(%dx%d)^fg()%s",
+ label ? label : "", rp,
+ fg, (int)l, height,
+ bg, maxc-(int)l, height,
+ pnl ? "\n" : "");
fflush(stdout);
}
@@ -68,6 +75,7 @@ main(int argc, char *argv[])
char aval[MAXLEN], *endptr;
/* defaults */
+ int mode = 0;
int barwidth = 80;
int barheight = 10;
double minval = 0;
@@ -85,6 +93,9 @@ main(int argc, char *argv[])
if(++i < argc)
barheight = atoi(argv[i]);
}
+ else if(!strncmp(argv[i], "-o", 3)) {
+ mode = 1;
+ }
else if(!strncmp(argv[i], "-fg", 4)) {
if(++i < argc)
fg = argv[i];
@@ -127,7 +138,7 @@ main(int argc, char *argv[])
print_nl = 0;
}
else {
- fprintf(stderr, "usage: dbar [-w <pixel>] [-h <pixel>] [-fg <color>] [-bg <color>] [-min <minvalue>] [-max <maxvalue>] [-l <string>] [-nonl]\n");
+ fprintf(stderr, "usage: dbar [-w <pixel>] [-h <pixel>] [-fg <color>] [-bg <color>] [-min <minvalue>] [-max <maxvalue>] [-l <string>] [-nonl] [-o]\n");
return EXIT_FAILURE;
}
}
@@ -148,7 +159,7 @@ main(int argc, char *argv[])
minval = 0;
}
- pbar(label, (100*(val-minval))/(maxval-minval), barwidth, barheight, print_nl);
+ pbar(label, (100*(val-minval))/(maxval-minval), barwidth, barheight, print_nl, mode);
}
return EXIT_SUCCESS;