1 /* $NetBSD: getyx.c,v 1.4 2001/10/14 12:36:09 blymn 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 * 3. All advertising materials mentioning features or use of this software 19 * must display the following acknowledgement: 20 * This product includes software developed by the NetBSD 21 * Foundation, Inc. and its contributors. 22 * 4. Neither the name of The NetBSD Foundation nor the names of its 23 * contributors may be used to endorse or promote products derived 24 * from this software without specific prior written permission. 25 * 26 * THIS SOFTWARE IS PROVIDED BY THE NETBSD FOUNDATION, INC. AND CONTRIBUTORS 27 * ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED 28 * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR 29 * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE FOUNDATION OR CONTRIBUTORS 30 * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR 31 * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF 32 * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS 33 * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN 34 * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) 35 * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE 36 * POSSIBILITY OF SUCH DAMAGE. 37 */ 38 39 #include <sys/cdefs.h> 40 #ifndef lint 41 __RCSID("$NetBSD: getyx.c,v 1.4 2001/10/14 12:36:09 blymn Exp $"); 42 #endif /* not lint */ 43 44 #include <stdlib.h> 45 46 #include "curses.h" 47 #include "curses_private.h" 48 49 /* 50 * getpary -- 51 * Get the y postion of the window relative to the parent window 52 * return -1 if not a subwindow. 53 */ 54 int 55 getpary(WINDOW *win) 56 { 57 if (win == NULL) 58 return -1; 59 60 if (win->orig == NULL) 61 return -1; 62 63 return (win->begy - win->orig->begy); 64 } 65 66 /* 67 * getparx -- 68 * Get the x postion of the window relative to the parent window 69 * return -1 if not a subwindow. 70 */ 71 int 72 getparx(WINDOW *win) 73 { 74 if (win == NULL) 75 return -1; 76 77 if (win->orig == NULL) 78 return -1; 79 80 return (win->begx - win->orig->begx); 81 } 82 83 /* 84 * getcury -- 85 * Get current y position on window. 86 */ 87 int 88 getcury(WINDOW *win) 89 { 90 return(win->cury); 91 } 92 93 /* 94 * getcurx -- 95 * Get current x position on window. 96 */ 97 int 98 getcurx(WINDOW *win) 99 { 100 return(win->curx); 101 } 102 103 /* 104 * getbegy -- 105 * Get begin y position on window. 106 */ 107 int 108 getbegy(WINDOW *win) 109 { 110 return(win->begy); 111 } 112 113 /* 114 * getbegx -- 115 * Get begin x position on window. 116 */ 117 int 118 getbegx(WINDOW *win) 119 { 120 return(win->begx); 121 } 122 123 /* 124 * getmaxy -- 125 * Get maximum y position on window. 126 */ 127 int 128 getmaxy(WINDOW *win) 129 { 130 return(win->maxy); 131 } 132 133 /* 134 * getmaxx -- 135 * Get maximum x position on window. 136 */ 137 int 138 getmaxx(WINDOW *win) 139 { 140 return(win->maxx); 141 } 142