1 /* $NetBSD: attributes.c,v 1.4 1999/12/22 14:38:12 kleink Exp $ */ 2 3 /*- 4 * Copyright (c) 1998-1999 Brett Lymn (blymn@baea.com.au, brett_lymn@yahoo.com.au) 5 * All rights reserved. 6 * 7 * Redistribution and use in source and binary forms, with or without 8 * modification, are permitted provided that the following conditions 9 * are met: 10 * 1. Redistributions of source code must retain the above copyright 11 * notice, this list of conditions and the following disclaimer. 12 * 2. The name of the author may not be used to endorse or promote products 13 * derived from this software withough specific prior written permission 14 * 15 * THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR 16 * IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES 17 * OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. 18 * IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, 19 * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT 20 * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, 21 * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY 22 * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT 23 * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF 24 * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 25 * 26 * 27 */ 28 29 #include <menu.h> 30 31 /* defined in menu.c - the default menu struct */ 32 extern MENU _menui_default_menu; 33 34 /* 35 * Set the menu foreground attribute 36 */ 37 int 38 set_menu_fore(menu, attr) 39 MENU *menu; 40 attr_t attr; 41 { 42 if (menu == NULL) 43 _menui_default_menu.fore = attr; 44 else 45 menu->fore = attr; 46 return E_OK; 47 } 48 49 /* 50 * Return the menu foreground attribute 51 */ 52 char 53 menu_fore(menu) 54 MENU *menu; 55 { 56 if (menu == NULL) 57 return _menui_default_menu.fore; 58 else 59 return menu->fore; 60 } 61 62 /* 63 * Set the menu background attribute 64 */ 65 int 66 set_menu_back(menu, attr) 67 MENU *menu; 68 attr_t attr; 69 { 70 if (menu == NULL) 71 _menui_default_menu.back = attr; 72 else 73 menu->back = attr; 74 return E_OK; 75 } 76 77 /* 78 * Return the menu background attribute 79 */ 80 char 81 menu_back(menu) 82 MENU *menu; 83 { 84 if (menu == NULL) 85 return _menui_default_menu.back; 86 else 87 return menu->back; 88 } 89 90 /* 91 * Set the menu greyed out attribute 92 */ 93 int 94 set_menu_grey(menu, attr) 95 MENU *menu; 96 attr_t attr; 97 { 98 if (menu == NULL) 99 _menui_default_menu.grey = attr; 100 else 101 menu->grey = attr; 102 return E_OK; 103 } 104 105 /* 106 * Return the menu greyed out attribute 107 */ 108 char 109 menu_grey(menu) 110 MENU *menu; 111 { 112 if (menu == NULL) 113 return _menui_default_menu.grey; 114 else 115 return menu->grey; 116 } 117 118 /* 119 * Set the menu pad character - the filler char between name and description 120 */ 121 int 122 set_menu_pad(menu, pad) 123 MENU *menu; 124 int pad; 125 { 126 if (menu == NULL) 127 _menui_default_menu.pad = pad; 128 else 129 menu->pad = pad; 130 return E_OK; 131 } 132 133 /* 134 * Return the menu pad character 135 */ 136 int 137 menu_pad(menu) 138 MENU *menu; 139 { 140 if (menu == NULL) 141 return _menui_default_menu.pad; 142 else 143 return menu->pad; 144 } 145