aboutsummaryrefslogtreecommitdiff
path: root/payloads/libpayload/curses/PDCurses-3.4/x11/sb.c
diff options
context:
space:
mode:
Diffstat (limited to 'payloads/libpayload/curses/PDCurses-3.4/x11/sb.c')
-rw-r--r--payloads/libpayload/curses/PDCurses-3.4/x11/sb.c153
1 files changed, 153 insertions, 0 deletions
diff --git a/payloads/libpayload/curses/PDCurses-3.4/x11/sb.c b/payloads/libpayload/curses/PDCurses-3.4/x11/sb.c
new file mode 100644
index 0000000000..a34f502b24
--- /dev/null
+++ b/payloads/libpayload/curses/PDCurses-3.4/x11/sb.c
@@ -0,0 +1,153 @@
+/* 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;
+}
+