mirror of
https://github.com/ipxe/ipxe
synced 2025-12-22 21:11:03 +03:00
Don't automatically redraw the edit box; this allows better inheritance.
This commit is contained in:
@@ -94,22 +94,3 @@ void draw_editbox ( struct edit_box *box ) {
|
|||||||
mvwprintw ( box->win, box->row, box->col, "%s", buf );
|
mvwprintw ( box->win, box->row, box->col, "%s", buf );
|
||||||
wmove ( box->win, box->row, ( box->col + cursor_offset ) );
|
wmove ( box->win, box->row, ( box->col + cursor_offset ) );
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
|
||||||
* Edit text box widget
|
|
||||||
*
|
|
||||||
* @v box Editable text box widget
|
|
||||||
* @v key Key pressed by user
|
|
||||||
* @ret key Key returned to application, or zero
|
|
||||||
*
|
|
||||||
*/
|
|
||||||
int edit_editbox ( struct edit_box *box, int key ) {
|
|
||||||
|
|
||||||
/* Update the string itself */
|
|
||||||
key = edit_string ( &box->string, key );
|
|
||||||
|
|
||||||
/* Update the display */
|
|
||||||
draw_editbox ( box );
|
|
||||||
|
|
||||||
return key;
|
|
||||||
}
|
|
||||||
|
|||||||
@@ -30,6 +30,20 @@ extern void init_editbox ( struct edit_box *box, char *buf, size_t len,
|
|||||||
WINDOW *win, unsigned int row, unsigned int col,
|
WINDOW *win, unsigned int row, unsigned int col,
|
||||||
unsigned int width );
|
unsigned int width );
|
||||||
extern void draw_editbox ( struct edit_box *box );
|
extern void draw_editbox ( struct edit_box *box );
|
||||||
extern int edit_editbox ( struct edit_box *box, int key );
|
|
||||||
|
/**
|
||||||
|
* Edit text box widget
|
||||||
|
*
|
||||||
|
* @v box Editable text box widget
|
||||||
|
* @v key Key pressed by user
|
||||||
|
* @ret key Key returned to application, or zero
|
||||||
|
*
|
||||||
|
* You must call draw_editbox() to update the display after calling
|
||||||
|
* edit_editbox().
|
||||||
|
*
|
||||||
|
*/
|
||||||
|
static inline int edit_editbox ( struct edit_box *box, int key ) {
|
||||||
|
return edit_string ( &box->string, key );
|
||||||
|
}
|
||||||
|
|
||||||
#endif /* _GPXE_EDITBOX_H */
|
#endif /* _GPXE_EDITBOX_H */
|
||||||
|
|||||||
Reference in New Issue
Block a user