From 4f85a1eb76d1e7109bcc60ba6f3262a5654ac61b Mon Sep 17 00:00:00 2001 From: Stefan Reinauer Date: Tue, 10 Nov 2015 09:00:41 -0800 Subject: libpayload: Rename PDCurses-3.4 to PDCurses Change-Id: If881ec130833c7e7e62caa3d31e350a531f5bc8e Signed-off-by: Stefan Reinauer Reviewed-on: http://review.coreboot.org/12398 Tested-by: build bot (Jenkins) Reviewed-by: Patrick Georgi --- payloads/libpayload/curses/PDCurses/x11/sb.c | 152 +++++++++++++++++++++++++++ 1 file changed, 152 insertions(+) create mode 100644 payloads/libpayload/curses/PDCurses/x11/sb.c (limited to 'payloads/libpayload/curses/PDCurses/x11/sb.c') diff --git a/payloads/libpayload/curses/PDCurses/x11/sb.c b/payloads/libpayload/curses/PDCurses/x11/sb.c new file mode 100644 index 0000000000..95b0292169 --- /dev/null +++ b/payloads/libpayload/curses/PDCurses/x11/sb.c @@ -0,0 +1,152 @@ +/* Public Domain Curses */ + +#include "pdcx11.h" + +RCSID("$Id: sb.c,v 1.27 2008/07/14 04:24:52 wmcbrine Exp $") + +/*man-start************************************************************** + + Name: sb + + Synopsis: + int sb_init(void) + int sb_set_horz(int total, int viewport, int cur) + int sb_set_vert(int total, int viewport, int cur) + int sb_get_horz(int *total, int *viewport, int *cur) + int sb_get_vert(int *total, int *viewport, int *cur) + int sb_refresh(void); + + Description: + These functions manipulate the scrollbar. + + Return Value: + All functions return OK on success and ERR on error. + + Portability X/Open BSD SYS V + sb_init - - - + sb_set_horz - - - + sb_set_vert - - - + sb_get_horz - - - + sb_get_vert - - - + sb_refresh - - - + +**man-end****************************************************************/ + +bool sb_started = FALSE; + +/* sb_init() is the sb initialization routine. + This must be called before initscr(). */ + +int sb_init(void) +{ + PDC_LOG(("sb_init() - called\n")); + + if (SP) + return ERR; + + sb_started = TRUE; + + return OK; +} + +/* sb_set_horz() - Used to set horizontal scrollbar. + + total = total number of columns + viewport = size of viewport in columns + cur = current column in total */ + +int sb_set_horz(int total, int viewport, int cur) +{ + PDC_LOG(("sb_set_horz() - called: total %d viewport %d cur %d\n", + total, viewport, cur)); + + if (!SP) + return ERR; + + SP->sb_total_x = total; + SP->sb_viewport_x = viewport; + SP->sb_cur_x = cur; + + return OK; +} + +/* sb_set_vert() - Used to set vertical scrollbar. + + total = total number of columns on line + viewport = size of viewport in columns + cur = current column in total */ + +int sb_set_vert(int total, int viewport, int cur) +{ + PDC_LOG(("sb_set_vert() - called: total %d viewport %d cur %d\n", + total, viewport, cur)); + + if (!SP) + return ERR; + + SP->sb_total_y = total; + SP->sb_viewport_y = viewport; + SP->sb_cur_y = cur; + + return OK; +} + +/* sb_get_horz() - Used to get horizontal scrollbar. + + total = total number of lines + viewport = size of viewport in lines + cur = current line in total */ + +int sb_get_horz(int *total, int *viewport, int *cur) +{ + PDC_LOG(("sb_get_horz() - called\n")); + + if (!SP) + return ERR; + + if (total) + *total = SP->sb_total_x; + if (viewport) + *viewport = SP->sb_viewport_x; + if (cur) + *cur = SP->sb_cur_x; + + return OK; +} + +/* sb_get_vert() - Used to get vertical scrollbar. + + total = total number of lines + viewport = size of viewport in lines + cur = current line in total */ + +int sb_get_vert(int *total, int *viewport, int *cur) +{ + PDC_LOG(("sb_get_vert() - called\n")); + + if (!SP) + return ERR; + + if (total) + *total = SP->sb_total_y; + if (viewport) + *viewport = SP->sb_viewport_y; + if (cur) + *cur = SP->sb_cur_y; + + return OK; +} + +/* sb_refresh() - Used to draw the scrollbars. */ + +int sb_refresh(void) +{ + PDC_LOG(("sb_refresh() - called\n")); + + if (!SP) + return ERR; + + XCursesInstruct(CURSES_REFRESH_SCROLLBAR); + + return OK; +} -- cgit v1.2.3