summaryrefslogtreecommitdiff
path: root/test/point.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'test/point.cpp')
-rw-r--r--test/point.cpp76
1 files changed, 0 insertions, 76 deletions
diff --git a/test/point.cpp b/test/point.cpp
deleted file mode 100644
index edf4492..0000000
--- a/test/point.cpp
+++ /dev/null
@@ -1,76 +0,0 @@
-#include <curses.h>
-
-#define PAGE_SIZE 16
-#include "../page.cpp"
-#include "../point.cpp"
-
-int main() {
- int exit = 0;
- Page *page = new Page();
- Point point = Point(page);
-
- initscr();
- start_color();
- cbreak();
- noecho();
- nonl();
- intrflush(stdscr, FALSE);
- keypad(stdscr, TRUE);
-
-#define black 20
-#define red 21
-#define green 22
- init_color(black, 0, 0, 0);
- init_color(red, 1000, 0, 0);
- init_color(green, 0, 1000, 0);
- init_pair(1, red, black);
- init_pair(2, green, black);
-
- while (!exit) {
- clear();
-
- Page *iter = page;
- while (iter) {
- if (iter == point.page && iter->gap_end == point.index_to_offset()) {
- attron(COLOR_PAIR(1));
- } else {
- attron(COLOR_PAIR(2));
- }
- for (int i = 0; i < iter->gap_start; i++) {
- addch(iter->elements[i]);
- }
- for (int i = iter->gap_start; i < iter->gap_end; i++) {
- addch('_');
- }
- for (int i = iter->gap_end; i < PAGE_SIZE; i++) {
- addch(iter->elements[i]);
- }
- iter = iter->next;
- attroff(COLOR_PAIR(1));
- attroff(COLOR_PAIR(2));
- }
-
- int input = getch();
- switch (input) {
- case '':
- exit = 1;
- break;
- case KEY_LEFT:
- point--;
- point.align_gap();
- break;
- case KEY_RIGHT:
- point++;
- point.align_gap();
- break;
- case KEY_BACKSPACE:
- point.pop();
- break;
- default:
- point.push(input);
- }
- }
-
- endwin();
- return 0;
-}