set_color (white);
_dobound (board->xsize, board->ysize, board->xoffset, board->yoffset);
+ if (board->title) {
+ _displaytitle (board->title, board->xoffset, board->yoffset - 1);
+ }
- for (i = 0; i < board->width; i++) {
+ for (i = 0; i < board->width; i++) {
for (j = 0; j < board->height; j++) {
_element (board, i, j, getvalue (board, i, j));
}
board->tab = (char *) calloc (1, width * height + 1);
CHECKALLOC (board->tab);
memset (board->tab, ' ', width * height);
+ board->title = NULL;
board->scale = 0;
board->xsize = board->width = width;
board->ysize = board->height = height;
CHECKALLOC (board);
memcpy (newboard, board, sizeof (board_t));
newboard->tab = (char *) calloc (1, board->width * board->height + 1);
+ if (board->title) {
+ newboard->title = strdup (board->title);
+ }
CHECKALLOC (newboard->tab);
memcpy (newboard->tab, board->tab, board->width * board->height + 1);
return newboard;
{
if (board) {
free (board->tab);
+ free (board->title);
}
free (board);
}
int width = 0;
int height = 0;
char *tab = NULL;
+ char *title = NULL;
char *saveptr1, *saveptr2;
height = atoi (value);
} else if (strcmp (keyword, "tab") == 0) {
tab = atos (value);
+ } else if (strcmp (keyword, "title") == 0) {
+ title = atos (value);
} else if (strcmp (keyword, "rem") == 0) {
/* nothing to do with remark */
} else {
if ((tab) && (strlen (tab) == (size_t)(width * height))) {
board = initboard (width, height);
memcpy (board->tab, tab, width * height);
+ if (title) {
+ board->title = strdup (title);
+ }
}
return board;