From dbf5d92605a9db10e3e3cb154d03a515c5d5c5af Mon Sep 17 00:00:00 2001 From: reinelt Date: Sun, 8 May 2005 04:32:45 +0000 Subject: [lcd4linux @ 2005-05-08 04:32:43 by reinelt] CodingStyle added and applied git-svn-id: https://ssl.bulix.org/svn/lcd4linux/trunk@547 3ae390bd-cb1e-0410-b409-cd5a39f66f1f --- drv_Curses.c | 360 ++++++++++++++++++++++++++++++----------------------------- 1 file changed, 184 insertions(+), 176 deletions(-) (limited to 'drv_Curses.c') diff --git a/drv_Curses.c b/drv_Curses.c index d70b750..31d018b 100644 --- a/drv_Curses.c +++ b/drv_Curses.c @@ -1,4 +1,4 @@ -/* $Id: drv_Curses.c,v 1.9 2005/01/18 06:30:22 reinelt Exp $ +/* $Id: drv_Curses.c,v 1.10 2005/05/08 04:32:44 reinelt Exp $ * * pure ncurses based text driver * @@ -26,6 +26,9 @@ * * * $Log: drv_Curses.c,v $ + * Revision 1.10 2005/05/08 04:32:44 reinelt + * CodingStyle added and applied + * * Revision 1.9 2005/01/18 06:30:22 reinelt * added (C) to all copyright statements * @@ -93,7 +96,7 @@ #include "drv_generic_text.h" -static char Name[]="Curses"; +static char Name[] = "Curses"; static WINDOW *w = NULL; static WINDOW *e = NULL; @@ -105,133 +108,138 @@ static int EROWS; /*** hardware dependant functions ***/ /****************************************/ -static void drv_Curs_clear (void) +static void drv_Curs_clear(void) { - werase (w); - box (w, 0, 0); - wrefresh (w); + werase(w); + box(w, 0, 0); + wrefresh(w); } -static void drv_Curs_write (const int row, const int col, const char *data, const int len) +static void drv_Curs_write(const int row, const int col, const char *data, const int len) { - int l = len; - char *p; - - while ((p = strpbrk(data, "\r\n")) != NULL) { - *p = '\0'; - } - - if (col < DCOLS) { - if (DCOLS-col < l ) l = DCOLS-col; - mvwprintw(w, row+1 , col+1, "%.*s", l, data); - wmove(w, DROWS+1, 0); - wrefresh(w); - } + int l = len; + char *p; + + while ((p = strpbrk(data, "\r\n")) != NULL) { + *p = '\0'; + } + + if (col < DCOLS) { + if (DCOLS - col < l) + l = DCOLS - col; + mvwprintw(w, row + 1, col + 1, "%.*s", l, data); + wmove(w, DROWS + 1, 0); + wrefresh(w); + } } -static void drv_Curs_defchar (const __attribute__((unused)) int ascii, - const __attribute__((unused)) unsigned char *buffer) +static void drv_Curs_defchar(const __attribute__ ((unused)) + int ascii, const __attribute__ ((unused)) + unsigned char *buffer) { - /* empty */ + /* empty */ } /* ncures scroll SIGSEGVs on my system, so this is a workaroud */ -int curses_error(char *buffer) +int curses_error(char *buffer) { - static int lines = 0; - static char *lb[100]; - int start, i; - char *p; - - if (e == NULL) return 0; - - /* replace \r, \n with underscores */ - while ((p = strpbrk(buffer, "\r\n")) != NULL) { - *p='_'; - } - - if (lines >= EROWS) { - free(lb[0]); - for (i = 1; i <= EROWS; i++) { - lb[i-1] = lb[i]; + static int lines = 0; + static char *lb[100]; + int start, i; + char *p; + + if (e == NULL) + return 0; + + /* replace \r, \n with underscores */ + while ((p = strpbrk(buffer, "\r\n")) != NULL) { + *p = '_'; + } + + if (lines >= EROWS) { + free(lb[0]); + for (i = 1; i <= EROWS; i++) { + lb[i - 1] = lb[i]; + } + start = 0; + } else { + start = lines; + } + + lb[lines] = strdup(buffer); + for (i = start; i <= lines; i++) { + mvwprintw(e, i + 1, 1, "%s", lb[i]); + wclrtoeol(e); } - start = 0; - } else { - start = lines; - } - - lb[lines] = strdup(buffer); - for (i = start; i <= lines; i++) { - mvwprintw(e, i+1, 1, "%s", lb[i]); - wclrtoeol(e); - } - - box(e, 0, 0); - mvwprintw(e, 0, 3, "Stderr:"); - wrefresh(e); - - if (lines < EROWS) lines++; - - return 1; + + box(e, 0, 0); + mvwprintw(e, 0, 3, "Stderr:"); + wrefresh(e); + + if (lines < EROWS) + lines++; + + return 1; } -static int drv_Curs_start (const char *section, const int quiet) +static int drv_Curs_start(const char *section, const int quiet) { - char *s; - - if (!running_foreground) { - error("%s: You want me to display on /dev/null? Sorry, I can't ...", Name); - error("%s: Maybe you want me to run in foreground? Try '-F'", Name); - return -1; - } - - s = cfg_get(section, "Size", "20x4"); - if (s == NULL || *s == '\0') { - error ("%s: no '%s.Size' entry from %s", Name, section, cfg_source()); - free(s); - return -1; - } - if (sscanf(s, "%dx%d", &DCOLS, &DROWS) != 2 || DROWS < 1 || DCOLS < 1) { - error ("%s: bad %s.Size '%s' from %s", Name, section, s, cfg_source); + char *s; + + if (!running_foreground) { + error("%s: You want me to display on /dev/null? Sorry, I can't ...", Name); + error("%s: Maybe you want me to run in foreground? Try '-F'", Name); + return -1; + } + + s = cfg_get(section, "Size", "20x4"); + if (s == NULL || *s == '\0') { + error("%s: no '%s.Size' entry from %s", Name, section, cfg_source()); + free(s); + return -1; + } + if (sscanf(s, "%dx%d", &DCOLS, &DROWS) != 2 || DROWS < 1 || DCOLS < 1) { + error("%s: bad %s.Size '%s' from %s", Name, section, s, cfg_source); + free(s); + return -1; + } free(s); - return -1; - } - free (s); - - initscr(); - debug ("%s: curses thinks that COLS=%d LINES=%d", Name, COLS, LINES); - w = newwin(DROWS+2, DCOLS+2, 0, 0); - - EROWS = LINES-DROWS-3; - if (EROWS > 99) EROWS = 99; - debug ("EROWS=%d", EROWS); - - if (EROWS >= 4) { - e = newwin (EROWS, COLS, DROWS+3, 0); - EROWS -= 3; - box(e, 0, 0); - mvwprintw (e, 0, 3, "Stderr:"); - wmove(e, 1 , 0); - wrefresh(e); - } - drv_Curs_clear(); + initscr(); + debug("%s: curses thinks that COLS=%d LINES=%d", Name, COLS, LINES); + w = newwin(DROWS + 2, DCOLS + 2, 0, 0); + + EROWS = LINES - DROWS - 3; + if (EROWS > 99) + EROWS = 99; + debug("EROWS=%d", EROWS); + + if (EROWS >= 4) { + e = newwin(EROWS, COLS, DROWS + 3, 0); + EROWS -= 3; + box(e, 0, 0); + mvwprintw(e, 0, 3, "Stderr:"); + wmove(e, 1, 0); + wrefresh(e); + } + + drv_Curs_clear(); - if (!quiet) { - char buffer[40]; - qprintf(buffer, sizeof(buffer), "%s %dx%d", Name, DCOLS, DROWS); - if (drv_generic_text_greet (buffer, NULL)) { - sleep (3); - drv_Curs_clear(); + if (!quiet) { + char buffer[40]; + qprintf(buffer, sizeof(buffer), "%s %dx%d", Name, DCOLS, DROWS); + if (drv_generic_text_greet(buffer, NULL)) { + sleep(3); + drv_Curs_clear(); + } } - } - - return 0; + + return 0; } @@ -256,89 +264,89 @@ static int drv_Curs_start (const char *section, const int quiet) /* list models */ -int drv_Curs_list (void) +int drv_Curs_list(void) { - printf ("any"); - return 0; + printf("any"); + return 0; } /* initialize driver & display */ -int drv_Curs_init (const char *section, const int quiet) +int drv_Curs_init(const char *section, const int quiet) { - WIDGET_CLASS wc; - int ret; - - /* display preferences */ - XRES = 1; /* pixel width of one char */ - YRES = 1; /* pixel height of one char */ - CHARS = 0; /* number of user-defineable characters */ - CHAR0 = 0; /* ASCII of first user-defineable char */ - GOTO_COST = 0; /* number of bytes a goto command requires */ - - /* real worker functions */ - drv_generic_text_real_write = drv_Curs_write; - drv_generic_text_real_defchar = drv_Curs_defchar; - - /* start display */ - if ((ret = drv_Curs_start (section, quiet)) != 0) { - return ret; - } - - /* initialize generic text driver */ - if ((ret = drv_generic_text_init(section, Name)) != 0) - return ret; - - /* initialize generic bar driver */ - if ((ret = drv_generic_text_bar_init(1)) != 0) - return ret; - - /* add fixed chars to the bar driver */ - drv_generic_text_bar_add_segment ( 0, 0,255, 32); /* ASCII 32 = blank */ - drv_generic_text_bar_add_segment (255,255,255,'*'); /* asterisk */ - - /* register text widget */ - wc = Widget_Text; - wc.draw = drv_generic_text_draw; - widget_register(&wc); - - /* register bar widget */ - wc = Widget_Bar; - wc.draw = drv_generic_text_bar_draw; - widget_register(&wc); - - /* register plugins */ - /* none at the moment... */ - - return 0; + WIDGET_CLASS wc; + int ret; + + /* display preferences */ + XRES = 1; /* pixel width of one char */ + YRES = 1; /* pixel height of one char */ + CHARS = 0; /* number of user-defineable characters */ + CHAR0 = 0; /* ASCII of first user-defineable char */ + GOTO_COST = 0; /* number of bytes a goto command requires */ + + /* real worker functions */ + drv_generic_text_real_write = drv_Curs_write; + drv_generic_text_real_defchar = drv_Curs_defchar; + + /* start display */ + if ((ret = drv_Curs_start(section, quiet)) != 0) { + return ret; + } + + /* initialize generic text driver */ + if ((ret = drv_generic_text_init(section, Name)) != 0) + return ret; + + /* initialize generic bar driver */ + if ((ret = drv_generic_text_bar_init(1)) != 0) + return ret; + + /* add fixed chars to the bar driver */ + drv_generic_text_bar_add_segment(0, 0, 255, 32); /* ASCII 32 = blank */ + drv_generic_text_bar_add_segment(255, 255, 255, '*'); /* asterisk */ + + /* register text widget */ + wc = Widget_Text; + wc.draw = drv_generic_text_draw; + widget_register(&wc); + + /* register bar widget */ + wc = Widget_Bar; + wc.draw = drv_generic_text_bar_draw; + widget_register(&wc); + + /* register plugins */ + /* none at the moment... */ + + return 0; } /* close driver & display */ -int drv_Curs_quit (const int quiet) { - - info("%s: shutting down.", Name); - - drv_generic_text_quit(); - - /* clear display */ - drv_Curs_clear(); - - /* say goodbye... */ - if (!quiet) { - drv_generic_text_greet ("goodbye!", NULL); - } - - endwin(); - - return (0); +int drv_Curs_quit(const int quiet) +{ + + info("%s: shutting down.", Name); + + drv_generic_text_quit(); + + /* clear display */ + drv_Curs_clear(); + + /* say goodbye... */ + if (!quiet) { + drv_generic_text_greet("goodbye!", NULL); + } + + endwin(); + + return (0); } DRIVER drv_Curses = { - name: Name, - list: drv_Curs_list, - init: drv_Curs_init, - quit: drv_Curs_quit, + name:Name, + list:drv_Curs_list, + init:drv_Curs_init, + quit:drv_Curs_quit, }; - -- cgit v1.2.3