Home | History | Annotate | Line # | Download | only in libmenu
attributes.c revision 1.6
      1 /*	$NetBSD: attributes.c,v 1.6 2001/06/13 10:45:59 wiz Exp $	*/
      2 
      3 /*-
      4  * Copyright (c) 1998-1999 Brett Lymn (blymn (at) baea.com.au, brett_lymn (at) 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 without 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 *menu, attr_t attr)
     39 {
     40 	if (menu == NULL)
     41 		_menui_default_menu.fore = attr;
     42 	else
     43 		menu->fore = attr;
     44         return E_OK;
     45 }
     46 
     47 /*
     48  * Return the menu foreground attribute
     49  */
     50 char
     51 menu_fore(MENU *menu)
     52 {
     53 	if (menu == NULL)
     54 		return _menui_default_menu.fore;
     55 	else
     56 		return menu->fore;
     57 }
     58 
     59 /*
     60  * Set the menu background attribute
     61  */
     62 int
     63 set_menu_back(MENU *menu, attr_t attr)
     64 {
     65 	if (menu == NULL)
     66 		_menui_default_menu.back = attr;
     67 	else
     68 		menu->back = attr;
     69         return E_OK;
     70 }
     71 
     72 /*
     73  * Return the menu background attribute
     74  */
     75 char
     76 menu_back(MENU *menu)
     77 {
     78 	if (menu == NULL)
     79 		return _menui_default_menu.back;
     80 	else
     81 		return menu->back;
     82 }
     83 
     84 /*
     85  * Set the menu greyed out attribute
     86  */
     87 int
     88 set_menu_grey(MENU *menu, attr_t attr)
     89 {
     90 	if (menu == NULL)
     91 		_menui_default_menu.grey = attr;
     92 	else
     93 		menu->grey = attr;
     94         return E_OK;
     95 }
     96 
     97 /*
     98  * Return the menu greyed out attribute
     99  */
    100 char
    101 menu_grey(MENU *menu)
    102 {
    103 	if (menu == NULL)
    104 		return _menui_default_menu.grey;
    105 	else
    106 		return menu->grey;
    107 }
    108 
    109 /*
    110  * Set the menu pad character - the filler char between name and description
    111  */
    112 int
    113 set_menu_pad(MENU *menu, int pad)
    114 {
    115 	if (menu == NULL)
    116 		_menui_default_menu.pad = pad;
    117 	else
    118 		menu->pad = pad;
    119         return E_OK;
    120 }
    121 
    122 /*
    123  * Return the menu pad character
    124  */
    125 int
    126 menu_pad(MENU *menu)
    127 {
    128 	if (menu == NULL)
    129 		return _menui_default_menu.pad;
    130 	else
    131 		return menu->pad;
    132 }
    133