/usr/include/tcl8.6/tk-private/generic/tkColor.h is in tk8.6-dev 8.6.2-1.
This file is owned by root:root, with mode 0o644.
The actual contents of the file can be viewed below.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 | /*
* tkColor.h --
*
* Declarations of data types and functions used by the Tk color module.
*
* Copyright (c) 1996-1997 by Sun Microsystems, Inc.
*
* See the file "license.terms" for information on usage and redistribution of
* this file, and for a DISCLAIMER OF ALL WARRANTIES.
*/
#ifndef _TKCOLOR
#define _TKCOLOR
#include "tkInt.h"
/*
* One of the following data structures is used to keep track of each color
* that is being used by the application; typically there is a colormap entry
* allocated for each of these colors.
*/
#define TK_COLOR_BY_NAME 1
#define TK_COLOR_BY_VALUE 2
#define COLOR_MAGIC ((unsigned int) 0x46140277)
typedef struct TkColor {
XColor color; /* Information about this color. */
unsigned int magic; /* Used for quick integrity check on this
* structure. Must always have the value
* COLOR_MAGIC. */
GC gc; /* Simple gc with this color as foreground
* color and all other fields defaulted. May
* be None. */
Screen *screen; /* Screen where this color is valid. Used to
* delete it, and to find its display. */
Colormap colormap; /* Colormap from which this entry was
* allocated. */
Visual *visual; /* Visual associated with colormap. */
int resourceRefCount; /* Number of active uses of this color (each
* active use corresponds to a call to
* Tk_AllocColorFromObj or Tk_GetColor). If
* this count is 0, then this TkColor
* structure is no longer valid and it isn't
* present in a hash table: it is being kept
* around only because there are objects
* referring to it. The structure is freed
* when resourceRefCount and objRefCount are
* both 0. */
int objRefCount; /* The number of Tcl objects that reference
* this structure. */
int type; /* TK_COLOR_BY_NAME or TK_COLOR_BY_VALUE. */
Tcl_HashEntry *hashPtr; /* Pointer to hash table entry for this
* structure. (for use in deleting entry). */
struct TkColor *nextPtr; /* Points to the next TkColor structure with
* the same color name. Colors with the same
* name but different screens or colormaps are
* chained together off a single entry in
* nameTable. For colors in valueTable (those
* allocated by Tk_GetColorByValue) this field
* is always NULL. */
} TkColor;
/*
* Common APIs exported from all platform-specific implementations.
*/
#ifndef TkpFreeColor
MODULE_SCOPE void TkpFreeColor(TkColor *tkColPtr);
#endif
MODULE_SCOPE TkColor * TkpGetColor(Tk_Window tkwin, Tk_Uid name);
MODULE_SCOPE TkColor * TkpGetColorByValue(Tk_Window tkwin, XColor *colorPtr);
#endif /* _TKCOLOR */
|