X-Git-Url: https://git.piment-noir.org/?a=blobdiff_plain;f=lib%2Fui.c;h=80a188b79c0a56a00b1bcd79bba580b9fe8cd6e5;hb=a80646b74eca11c71696dedeb674870437c5bb6f;hp=c75e3b01ca69f981a1544455fc6aaf51494968b3;hpb=54f1c58cef6764fdd611eedc267e7491e777c09b;p=Project_algorithmic_C.git diff --git a/lib/ui.c b/lib/ui.c index c75e3b0..80a188b 100644 --- a/lib/ui.c +++ b/lib/ui.c @@ -56,6 +56,12 @@ void print_board(int y, int x) { mvprintw(y+25, x, " -----+----+----+----+----+----+----+-----"); } +static void set_default_colors() { + + init_pair(1, COLOR_WHITE, COLOR_BLACK); + attron(COLOR_PAIR(1)); +} + static void print_o(int y, int x, unsigned int type) { if (type == black) { @@ -69,8 +75,7 @@ static void print_o(int y, int x, unsigned int type) { mvprintw(y, x, "/\\"); mvprintw(y+1, x, "\\/"); /* reset to default */ - init_pair(1, COLOR_WHITE, COLOR_BLACK); - attron(COLOR_PAIR(1)); + set_default_colors(); } /* will be used for pawn placement hints */ @@ -86,8 +91,7 @@ static void print_x(int y, int x, unsigned int type) { mvprintw(y, x, "\\/"); mvprintw(y+1, x,"/\\"); /* reset to default */ - init_pair(1, COLOR_WHITE, COLOR_BLACK); - attron(COLOR_PAIR(1)); + set_default_colors(); } /* y = 1: y -> 0 x = 1: 1 -> 1 @@ -116,8 +120,8 @@ static int remap_x(int x) { void print_pawns(int base_y, int base_x, unsigned int pawn_array[board_size][board_size]) { - for (unsigned int i = 1; i <= board_size; i++) { - for (unsigned int j = 1; j <= board_size; j++) { + for (int i = 1; i <= board_size; i++) { + for (int j = 1; j <= board_size; j++) { if (!is_box_type(i, j, pawn_array, empty)) { print_o(base_y + remap_y(i), base_x + remap_x(j), get_box_value(i, j, pawn_array)); } @@ -125,7 +129,7 @@ void print_pawns(int base_y, int base_x, unsigned int pawn_array[board_size][boa } } -int map_col_letter_to_int(char c) { +int map_col_letter_to_index(char c) { if (c == 'a' || c == 'A') { return 1; @@ -148,8 +152,32 @@ int map_col_letter_to_int(char c) { } } +/* return capital letters */ +char map_col_index_to_letter(int index) { + + if (index == 1) { + return 'A'; + } else if (index == 2) { + return 'B'; + } else if (index == 3) { + return 'C'; + } else if (index == 4) { + return 'D'; + } else if (index == 5) { + return 'E'; + } else if (index == 6) { + return 'F'; + } else if (index == 7) { + return 'G'; + } else if (index == 9) { + return 'H'; + } else { + return -1; + } +} + int prompt_values(WINDOW* windows, int base_y, int base_x, const char* msg, int* y, char* x) { mvwprintw(windows, base_y, base_x, "%s\n", msg); - int retVal = mvwscanw(windows, base_y + 1, base_x + strlen(msg)/2, "%d%c", y, x); - return (retVal == 1) ? 0 : 1; + int retval = mvwscanw(windows, base_y + 1, base_x + strlen(msg)/2, "%d%c", y, x); + return (retval == 1) ? 0 : 1; }