1*b89261baSDavid van Moolenbroek /* 2*b89261baSDavid van Moolenbroek * Copyright (c) 1984 through 2008, William LeFebvre 3*b89261baSDavid van Moolenbroek * All rights reserved. 4*b89261baSDavid van Moolenbroek * 5*b89261baSDavid van Moolenbroek * Redistribution and use in source and binary forms, with or without 6*b89261baSDavid van Moolenbroek * modification, are permitted provided that the following conditions are met: 7*b89261baSDavid van Moolenbroek * 8*b89261baSDavid van Moolenbroek * * Redistributions of source code must retain the above copyright 9*b89261baSDavid van Moolenbroek * notice, this list of conditions and the following disclaimer. 10*b89261baSDavid van Moolenbroek * 11*b89261baSDavid van Moolenbroek * * Redistributions in binary form must reproduce the above 12*b89261baSDavid van Moolenbroek * copyright notice, this list of conditions and the following disclaimer 13*b89261baSDavid van Moolenbroek * in the documentation and/or other materials provided with the 14*b89261baSDavid van Moolenbroek * distribution. 15*b89261baSDavid van Moolenbroek * 16*b89261baSDavid van Moolenbroek * * Neither the name of William LeFebvre nor the names of other 17*b89261baSDavid van Moolenbroek * contributors may be used to endorse or promote products derived from 18*b89261baSDavid van Moolenbroek * this software without specific prior written permission. 19*b89261baSDavid van Moolenbroek * 20*b89261baSDavid van Moolenbroek * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS 21*b89261baSDavid van Moolenbroek * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT 22*b89261baSDavid van Moolenbroek * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR 23*b89261baSDavid van Moolenbroek * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT 24*b89261baSDavid van Moolenbroek * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, 25*b89261baSDavid van Moolenbroek * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT 26*b89261baSDavid van Moolenbroek * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, 27*b89261baSDavid van Moolenbroek * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY 28*b89261baSDavid van Moolenbroek * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT 29*b89261baSDavid van Moolenbroek * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE 30*b89261baSDavid van Moolenbroek * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 31*b89261baSDavid van Moolenbroek */ 32*b89261baSDavid van Moolenbroek 33*b89261baSDavid van Moolenbroek /* 34*b89261baSDavid van Moolenbroek * Top - a top users display for Unix 35*b89261baSDavid van Moolenbroek * 36*b89261baSDavid van Moolenbroek * Definition of the color interface. 37*b89261baSDavid van Moolenbroek */ 38*b89261baSDavid van Moolenbroek 39*b89261baSDavid van Moolenbroek #ifndef _COLOR_H_ 40*b89261baSDavid van Moolenbroek #define _COLOR_H_ 41*b89261baSDavid van Moolenbroek 42*b89261baSDavid van Moolenbroek #define COLOR_ANSI_SLOTS 20 43*b89261baSDavid van Moolenbroek 44*b89261baSDavid van Moolenbroek int color_env_parse(char *env); 45*b89261baSDavid van Moolenbroek int color_tag(const char *tag); 46*b89261baSDavid van Moolenbroek int color_test(int tagidx, int value); 47*b89261baSDavid van Moolenbroek char *color_setstr(int color); 48*b89261baSDavid van Moolenbroek void color_dump(FILE *f); 49*b89261baSDavid van Moolenbroek int color_activate(int i); 50*b89261baSDavid van Moolenbroek 51*b89261baSDavid van Moolenbroek 52*b89261baSDavid van Moolenbroek /* 53*b89261baSDavid van Moolenbroek * These color tag names are currently in use 54*b89261baSDavid van Moolenbroek * (or reserved for future use): 55*b89261baSDavid van Moolenbroek * 56*b89261baSDavid van Moolenbroek * cpu, size, res, time, 1min, 5min, 15min, host 57*b89261baSDavid van Moolenbroek */ 58*b89261baSDavid van Moolenbroek 59*b89261baSDavid van Moolenbroek /* 60*b89261baSDavid van Moolenbroek * Valid ANSI values for colors are: 61*b89261baSDavid van Moolenbroek * 62*b89261baSDavid van Moolenbroek * 0 Reset all attributes 63*b89261baSDavid van Moolenbroek * 1 Bright 64*b89261baSDavid van Moolenbroek * 2 Dim 65*b89261baSDavid van Moolenbroek * 4 Underscore 66*b89261baSDavid van Moolenbroek * 5 Blink 67*b89261baSDavid van Moolenbroek * 7 Reverse 68*b89261baSDavid van Moolenbroek * 8 Hidden 69*b89261baSDavid van Moolenbroek * 70*b89261baSDavid van Moolenbroek * Foreground Colours 71*b89261baSDavid van Moolenbroek * 30 Black 72*b89261baSDavid van Moolenbroek * 31 Red 73*b89261baSDavid van Moolenbroek * 32 Green 74*b89261baSDavid van Moolenbroek * 33 Yellow 75*b89261baSDavid van Moolenbroek * 34 Blue 76*b89261baSDavid van Moolenbroek * 35 Magenta 77*b89261baSDavid van Moolenbroek * 36 Cyan 78*b89261baSDavid van Moolenbroek * 37 White 79*b89261baSDavid van Moolenbroek * 80*b89261baSDavid van Moolenbroek * Background Colours 81*b89261baSDavid van Moolenbroek * 40 Black 82*b89261baSDavid van Moolenbroek * 41 Red 83*b89261baSDavid van Moolenbroek * 42 Green 84*b89261baSDavid van Moolenbroek * 43 Yellow 85*b89261baSDavid van Moolenbroek * 44 Blue 86*b89261baSDavid van Moolenbroek * 45 Magenta 87*b89261baSDavid van Moolenbroek * 46 Cyan 88*b89261baSDavid van Moolenbroek * 47 White 89*b89261baSDavid van Moolenbroek */ 90*b89261baSDavid van Moolenbroek 91*b89261baSDavid van Moolenbroek #endif /*_COLOR_H_ */ 92