[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Antiright-devel] antiright/src/arshell update.c
From: |
Jeffrey Bedard |
Subject: |
[Antiright-devel] antiright/src/arshell update.c |
Date: |
Tue, 21 Dec 2004 21:34:29 -0500 |
CVSROOT: /cvsroot/antiright
Module name: antiright
Branch:
Changes by: Jeffrey Bedard <address@hidden> 04/12/22 02:22:43
Modified files:
src/arshell : update.c
Log message:
Clockload applet now works.
CVSWeb URLs:
http://savannah.gnu.org/cgi-bin/viewcvs/antiright/antiright/src/arshell/update.c.diff?tr1=1.3&tr2=1.4&r1=text&r2=text
Patches:
Index: antiright/src/arshell/update.c
diff -u antiright/src/arshell/update.c:1.3 antiright/src/arshell/update.c:1.4
--- antiright/src/arshell/update.c:1.3 Mon Aug 23 01:15:56 2004
+++ antiright/src/arshell/update.c Wed Dec 22 02:22:43 2004
@@ -21,6 +21,7 @@
*/
#include "arshell.h"
+#include <time.h>
void
arshell_update()
@@ -30,17 +31,76 @@
{
char *input_string;
iterator=iterator->next;
- input_string=antiright_pipe_read(iterator->command_string);
- input_string[strlen(input_string)-1]='\0';
-
- if(XmIsLabel(iterator->widget))
+
+ if(iterator->widget==arshell.gui.clockload.clockload)
+ {
+ char *clockload_label_string;
+ char *time_string;
+ time_t time_date;
+ double load[3];
+
+ getloadavg(load, 3);
+ (void)time(&time_date);
+ time_string=ctime(&time_date);
+ time_string[strlen(time_string)-1]=' ';
+ asprintf(&clockload_label_string, " %s %d%%", time_string,
+ (int)(load[1]*100));
+ antiright_label_string(iterator->widget, clockload_label_string);
+ free(clockload_label_string);
+
+ }
+ else if(iterator->widget == arshell.gui.clockload.mailuser)
+ {
+ char *user=getenv("USER");
+ char *maildir="/var/mail";
+ char *mailfile;
+ Boolean have_mail;
+ struct stat mailfile_stat;
+
+ asprintf(&mailfile, "%s/%s", maildir, user);
+
+ stat(mailfile, &mailfile_stat);
+ free(mailfile);
+ fflush(stdout);
+ if(mailfile_stat.st_size > 0)
+ have_mail=True;
+ else
+ have_mail=False;
+
+
+ if(have_mail)
+ {
+ char *icon;
+ asprintf(&icon, "%s/havemail.xbm", (char*)ICONDIR);
+ antiright_set_bitmap_from_file(iterator->widget, icon);
+ free(icon);
+ }
+ else
+ {
+ ARCLARG;
+ antiright_set(XmNlabelType, XmSTRING);
+ antiright_set_values(iterator->widget);
+ antiright_label_string(iterator->widget, "");
+ }
+
+ }
+ else if(XmIsLabel(iterator->widget))
{
+
+ input_string=antiright_pipe_read(iterator->command_string);
+ input_string[strlen(input_string)-1]='\0';
antiright_label_string(iterator->widget,
input_string);
+ free(input_string);
+
}
else if(XmIsScrollBar(iterator->widget))
{
- int value_int=atoi(input_string);
+ int value_int;
+ input_string=antiright_pipe_read(iterator->command_string);
+ input_string[strlen(input_string)-1]='\0';
+ value_int=atoi(input_string);
+ free(input_string);
if((value_int>0)&(value_int<=100))
{
XtVaSetValues(iterator->widget,
@@ -52,20 +112,25 @@
{
assert(arshell.gui.widgets.work != NULL);
assert(iterator->widget != NULL);
+ input_string=antiright_pipe_read(iterator->command_string);
+ input_string[strlen(input_string)-1]='\0';
/* Append input_string to the work area. */
XmTextInsert(arshell.gui.widgets.work,
XmTextGetLastPosition(arshell.gui.widgets.work),
input_string);
+ free(input_string);
XmTextInsert(arshell.gui.widgets.work,
XmTextGetLastPosition(arshell.gui.widgets.work),
"\n");
}
else if(iterator->widget==antiright.parent_widget)
{
+ input_string=antiright_pipe_read(iterator->command_string);
+ input_string[strlen(input_string)-1]='\0';
/* Set the title to input_string. */
antiright_set_title(input_string);
+ free(input_string);
}
- free(input_string);
}
}
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- [Antiright-devel] antiright/src/arshell update.c,
Jeffrey Bedard <=