diff options
| -rw-r--r-- | config.h | 1 | ||||
| -rw-r--r-- | main.c | 16 |
2 files changed, 10 insertions, 7 deletions
@@ -19,5 +19,6 @@ #define CURSOR_CHAR_2 '>' #define FILENAME_BUF_SIZE 128 +#define FILENAME_PROMPT "Filename:" #endif /*CONFIG_H_ */ @@ -147,7 +147,6 @@ int main(int argc, char **argv) { draw_map(map, width, height, start_pos, end_pos, NULL, path, visited, NULL); int c = getch(); /* TODO: add a keybinding to calculate the path again, or maybe do it on 'a' */ - /* TODO: maybe a kbng to move to start/end? */ switch (c) { case 'h': map_offset_x += 2; break; case 'l': map_offset_x -= 2; break; @@ -206,15 +205,18 @@ int main(int argc, char **argv) { break; case 's': - message(height, "Filename: "); - /* TODO: figure out how to show the cursor and echo the characters */ - curs_set(2); /* Hide the cursor */ - echo(); /* Don't echo characters */ + curs_set(2); /* Show the cursor */ + echo(); /* Echo characters */ + + message(height, FILENAME_PROMPT); char filename[FILENAME_BUF_SIZE] = "out.bmp"; + mvgetnstr(height + map_offset_y + 1, map_offset_x - 2 + sizeof(FILENAME_PROMPT), filename, FILENAME_BUF_SIZE - 1); + + map_to_bmp(map, width, height, start_pos, end_pos, path, visited, filename); + curs_set(0); /* Hide the cursor */ noecho(); /* Don't echo characters */ - mvgetnstr(height + map_offset_y + 1, map_offset_x - 2, filename, FILENAME_BUF_SIZE - 1); - map_to_bmp(map, width, height, start_pos, end_pos, path, visited, filename); + message(height, "Saved to %s", filename); getch(); break; |
