xref: /minix3/lib/libcurses/getyx.c (revision 51ffecc181005cb45a40108612ee28d1daaeeb86)
1 /*	$NetBSD: getyx.c,v 1.5 2008/04/28 20:23:01 martin Exp $	*/
2 
3 /*
4  * Copyright (c) 2000 The NetBSD Foundation, Inc.
5  * All rights reserved.
6  *
7  * This code is derived from software contributed to The NetBSD Foundation
8  * by Julian Coleman.
9  *
10  * Redistribution and use in source and binary forms, with or without
11  * modification, are permitted provided that the following conditions
12  * are met:
13  * 1. Redistributions of source code must retain the above copyright
14  *    notice, this list of conditions and the following disclaimer.
15  * 2. Redistributions in binary form must reproduce the above copyright
16  *    notice, this list of conditions and the following disclaimer in the
17  *    documentation and/or other materials provided with the distribution.
18  *
19  * THIS SOFTWARE IS PROVIDED BY THE NETBSD FOUNDATION, INC. AND CONTRIBUTORS
20  * ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED
21  * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
22  * PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE FOUNDATION OR CONTRIBUTORS
23  * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
24  * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
25  * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
26  * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
27  * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
28  * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
29  * POSSIBILITY OF SUCH DAMAGE.
30  */
31 
32 #include <sys/cdefs.h>
33 #ifndef lint
34 __RCSID("$NetBSD: getyx.c,v 1.5 2008/04/28 20:23:01 martin Exp $");
35 #endif				/* not lint */
36 
37 #include <stdlib.h>
38 
39 #include "curses.h"
40 #include "curses_private.h"
41 
42 /*
43  * getpary --
44  *      Get the y postion of the window relative to the parent window
45  * return -1 if not a subwindow.
46  */
47 int
getpary(WINDOW * win)48 getpary(WINDOW *win)
49 {
50 	if (win == NULL)
51 		return -1;
52 
53 	if (win->orig == NULL)
54 		return -1;
55 
56 	return (win->begy - win->orig->begy);
57 }
58 
59 /*
60  * getparx --
61  *      Get the x postion of the window relative to the parent window
62  * return -1 if not a subwindow.
63  */
64 int
getparx(WINDOW * win)65 getparx(WINDOW *win)
66 {
67 	if (win == NULL)
68 		return -1;
69 
70 	if (win->orig == NULL)
71 		return -1;
72 
73 	return (win->begx - win->orig->begx);
74 }
75 
76 /*
77  * getcury --
78  *	Get current y position on window.
79  */
80 int
getcury(WINDOW * win)81 getcury(WINDOW *win)
82 {
83 	return(win->cury);
84 }
85 
86 /*
87  * getcurx --
88  *	Get current x position on window.
89  */
90 int
getcurx(WINDOW * win)91 getcurx(WINDOW *win)
92 {
93 	return(win->curx);
94 }
95 
96 /*
97  * getbegy --
98  *	Get begin y position on window.
99  */
100 int
getbegy(WINDOW * win)101 getbegy(WINDOW *win)
102 {
103 	return(win->begy);
104 }
105 
106 /*
107  * getbegx --
108  *	Get begin x position on window.
109  */
110 int
getbegx(WINDOW * win)111 getbegx(WINDOW *win)
112 {
113 	return(win->begx);
114 }
115 
116 /*
117  * getmaxy --
118  *	Get maximum y position on window.
119  */
120 int
getmaxy(WINDOW * win)121 getmaxy(WINDOW *win)
122 {
123 	return(win->maxy);
124 }
125 
126 /*
127  * getmaxx --
128  *	Get maximum x position on window.
129  */
130 int
getmaxx(WINDOW * win)131 getmaxx(WINDOW *win)
132 {
133 	return(win->maxx);
134 }
135