aboutsummaryrefslogtreecommitdiffstats
path: root/drv_Curses.c
diff options
context:
space:
mode:
authorreinelt <reinelt@3ae390bd-cb1e-0410-b409-cd5a39f66f1f>2005-05-08 04:32:45 +0000
committerreinelt <reinelt@3ae390bd-cb1e-0410-b409-cd5a39f66f1f>2005-05-08 04:32:45 +0000
commitdbf5d92605a9db10e3e3cb154d03a515c5d5c5af (patch)
tree501d5dda3ce90fe924b893e487d9ef9f0683382b /drv_Curses.c
parenta1c471e9fb7cadb68bb182ab2e9715a0aa092386 (diff)
downloadlcd4linux-dbf5d92605a9db10e3e3cb154d03a515c5d5c5af.tar.gz
[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
Diffstat (limited to 'drv_Curses.c')
-rw-r--r--drv_Curses.c360
1 files changed, 184 insertions, 176 deletions
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,
};
-