frontend: add a line editor for shell input
This commit is contained in:
21
frontend/line-ed/refresh.h
Normal file
21
frontend/line-ed/refresh.h
Normal file
@@ -0,0 +1,21 @@
|
||||
#ifndef LINE_ED_REFRESH_H_
|
||||
#define LINE_ED_REFRESH_H_
|
||||
|
||||
struct line_ed;
|
||||
|
||||
struct refresh_state {
|
||||
/* cursor position before the update was performed (excluding the prompt) */
|
||||
unsigned int r_prev_cursor_x, r_prev_cursor_y;
|
||||
/* when a backspace results in two separate lines being combined,
|
||||
* this property contains the length of the first of the two combined
|
||||
* lines BEFORE the concotenation was performed */
|
||||
unsigned int r_prev_line_len;
|
||||
};
|
||||
|
||||
extern void print_text(struct line_ed *ed, unsigned int x, unsigned int y, const char *s);
|
||||
extern void print_buffer(struct line_ed *ed);
|
||||
extern void put_refresh(struct line_ed *ed, struct refresh_state *state);
|
||||
extern void backspace_nl_refresh(struct line_ed *ed, struct refresh_state *state);
|
||||
extern void backspace_simple_refresh(struct line_ed *ed, struct refresh_state *state);
|
||||
|
||||
#endif
|
||||
Reference in New Issue
Block a user