#include "display.h"
-#define LIBWIDTH 11
-
typedef enum {
white = 1,
red,
return j;
}
-void librarywindow (char *msg, int xoffset, int yoffset)
-{
- _dobound (LIBWIDTH, 2, xoffset, yoffset);
- mvaddstr (yoffset, xoffset + (LIBWIDTH - 7) / 2, "Library");
- set_color (black);
-
- int i;
- for (i = 0; i < LIBWIDTH; i++) {
- mvaddch (yoffset + 1, xoffset + i, ' ');
- }
-
- char str[LIBWIDTH + 1] = {0};
- strncpy (str, msg, LIBWIDTH);
- mvaddstr (yoffset + 1, xoffset + (LIBWIDTH - (int)strlen (str)) / 2, str);
- set_color (white);
-}
-
-void boardwindow (board_t *board, int xoffset, int yoffset, int bound)
+void boardwindow (board_t *board, int xoffset, int yoffset)
{
int i, j;
- if (bound) {
- _dobound (board->xsize, board->ysize, xoffset, yoffset);
- }
+ set_color (black);
+ _dobound (board->xsize, board->ysize, xoffset, yoffset);
+ set_color (white);
for (i = 0; i < board->xsize; i++) {
for (j = 0; j < board->ysize; j++) {
+ int element = ' ';
char cell = *getcell (board, i, j);
switch (cell) {
- case '1':
- set_color (yellow);
- break;
- case 'N':
+ case 'H':
+ element = ACS_DIAMOND;
set_color (green);
break;
- case 'O':
+ case 'P':
+ element = ACS_DIAMOND;
set_color (red);
break;
+ case 'O':
+ set_color (white);
+ break;
case 'X':
- set_color (black);
+ element = ACS_DIAMOND;
break;
case ' ':
- set_color (white);
+ set_color (black);
break;
default:
VERBOSE (WARNING, printf ("unknown code '%c'\n", cell));
}
- mvaddch (yoffset + j, xoffset + i, ' ');
+ mvaddch (yoffset + j, xoffset + i, element);
set_color (white);
}
}
int helpwindow (char *msg, int xoffset, int yoffset);
-void librarywindow (char *msg, int xoffset, int yoffset);
-
-void boardwindow (board_t *board, int xboard, int yboard, int bound);
-
-void elementwindow (board_t *board, int xoffset, int yoffset, board_t *element, int x, int y);
+void boardwindow (board_t *board, int xboard, int yboard);
char *savewindow (int length, int xoffset, int yoffset);