head	1.13;
access;
symbols
	core-8-5-9:1.7
	core-8-5-8:1.7
	macosx-cocoa-merge:1.11
	macosx-cocoa-premerge:1.11
	macosx-carbon-freeze:1.11
	core-8-5-7:1.7
	core-8-5-6:1.7
	core-8-6-b1:1.11
	core-8-6-a3:1.8
	core-8-5-5:1.7
	core-8-6-a2:1.8
	core-8-5-4:1.7
	core-8-5-3:1.7
	core-8-6-a1:1.8
	core-8-4-19:1.3
	core-8-5-branch:1.7.0.2
	core-8-5-2:1.7
	core-8-4-18:1.3
	core-8-5-1:1.7
	core-8-4-17:1.3
	core-8-5-0:1.7
	core-8-5-b3:1.6
	core-8-5-b2:1.6
	core-8-4-16:1.3
	core-8-5-b1:1.6
	core-stablilizer-merge:1.5
	core-stabilizer-branch:1.5.0.2
	core-stabilizer-merge:1.7
	core-8-4-15:1.3
	core-8-5-a6:1.5
	core-8-5-a5:1.5
	core-8-4-14:1.3
	core-8-5-a4:1.5
	core-8-4-13:1.3
	core-8-4-12:1.3
	core-8-4-11:1.3
	core-8-5-a3:1.3
	core-8-4-10:1.3
	core-8-4-9-branch:1.3.0.6
	core-8-5-a2:1.3
	core-8-4-9:1.3
	core-8-4-8:1.3
	core-8-4-7:1.3
	core-8-5-a1:1.3
	core-8-4-6:1.3
	core-8-4-5:1.3
	mistachkin-dev-branch:1.3.0.4
	core-8-4-4:1.3
	core-8-4-3:1.3
	core-8-4-branch:1.3.0.2
	core-8-4-2:1.3
	core-8-4-1:1.3
	core-8-3-5:1.2
	core-8-4-0:1.3
	macosx-8-4-merge-2002-08-31-trunk:1.3
	macosx-8-4-premerge-2002-08-31-branch:1.2.24.1
	macosx-8-4-premerge-2002-08-31-trunk:1.3
	macosx-8-4-merge-2002-08-30-branch:1.2.24.1
	macosx-8-4-merge-2002-08-30-trunk:1.3
	macosx-8-4-merge-2002-08-20-branch:1.2.24.1
	macosx-8-4-merge-2002-08-20-trunk:1.3
	core-8-4-b2:1.3
	core-8-4-b1:1.2
	macosx-premerge-6-9-02:1.2
	core-8-4-a4:1.2
	core-8-3-4:1.2
	macosx-8-4-branch:1.2.0.24
	macosx-8-4-branchpoint:1.2
	core-8-4-a3:1.2
	core-8-3-3:1.2
	dgp-privates-into-namespace:1.2.0.22
	tclpro-1-5-0:1.2
	core-8-4-win-speedup:1.2.0.20
	core-8-4-a2:1.2
	tclpro-1-4-1:1.2
	tclpro-1-4-0:1.2
	core-8-3-2:1.2
	ajuba-ajuba2-2-1-base:1.2
	ajuba-ajuba2-2-0:1.2
	core-8-4-a1:1.2
	core-8-3-1-branch:1.2.0.18
	core-8-3-1:1.2
	scriptics-sc-2-0-b5:1.2
	scriptics-sc-2-0-fixed:1.2
	scriptics-sc-2-0-b2:1.2
	scriptics-sc-2-0-b1:1.2
	core-8-3-0:1.2
	core-8-3-b2:1.2
	core-8-3-b1:1.2
	scriptics-sc-1-1:1.2
	scriptics-sc-1-1-b1:1.2
	core-8-2-3:1.2
	scriptics-sc-1-1-branch:1.2.0.16
	scriptics-sc-1-1-base:1.2
	scriptics-sc-1-0:1.2
	scriptics-sc-1-0-branch:1.2.0.14
	scriptics-sc-1-0-base:1.2
	core-8-2-2:1.2
	core-8-2-1:1.2
	scriptics-bc-1-0-b1:1.2
	core-8-2-1-branch:1.2.0.12
	scriptics-tclpro-1-3-0:1.2
	core-8-2-0:1.2
	core-8-2-b3-branch:1.2.0.10
	core-8-2-b3-base:1.2
	scriptics-tclpro-1-3-b4:1.2
	core-8-2-b2:1.2
	scriptics-tclpro-1-3-b3:1.2
	core-8-2-b1:1.2
	scriptics-tclpro-1-3-b2:1.2
	merge-to-mainline-5/21/99:1.2
	scriptics-tclpro-1-3-b2-branch:1.2.0.8
	core-8-1-1:1.2
	scriptics-tclpro-1-3-b1:1.2
	core-8-1-1-base:1.2
	core-8-1-0:1.2
	merge-to-mainline-4-29-99:1.2
	merge-to-mainline-4-23-99:1.2
	core-8-1-branch-old:1.1.0.4
	core-8-0-6-branch:1.2.0.6
	core-8-0-6-base:1.2
	core-8-0-5:1.2
	core-8-1-b3:1.1.4.1
	core-8-1-b2:1.1.4.1
	dev-8-1-stubs-branch:1.1.4.1.0.2
	dev-stubs-branch:1.2.0.4
	scriptics-tclpro-1-2:1.2
	scriptics-tclpro-1-2-b2:1.2
	core-8-1-merge-2/10/99:1.2
	core-8-0-5-branch:1.2.0.2
	core-8-0-5-base:1.2
	scriptics-tclpro-1-2-b1:1.2
	scriptics-tclpro-1-2-a1:1.2
	core-8-1-b1:1.1.4.1
	core-8-0-4:1.2
	core-8-1-a2:1.1
	core-8-0-2:1.1
	core-8-0-3:1.2;
locks; strict;
comment	@ * @;


1.13
date	2010.11.29.09.07.13;	author nijtmans;	state Exp;
branches;
next	1.12;

1.12
date	2010.01.02.22.52.38;	author dkf;	state Exp;
branches;
next	1.11;

1.11
date	2008.10.30.23.18.59;	author nijtmans;	state Exp;
branches;
next	1.10;

1.10
date	2008.10.29.23.31.55;	author jenglish;	state Exp;
branches;
next	1.9;

1.9
date	2008.10.28.22.33.06;	author nijtmans;	state Exp;
branches;
next	1.8;

1.8
date	2008.04.27.22.38.55;	author dkf;	state Exp;
branches;
next	1.7;

1.7
date	2007.12.13.15.24.13;	author dgp;	state Exp;
branches;
next	1.6;

1.6
date	2007.09.07.00.34.51;	author dgp;	state Exp;
branches;
next	1.5;

1.5
date	2005.11.17.10.57.35;	author dkf;	state Exp;
branches
	1.5.2.1;
next	1.4;

1.4
date	2005.11.04.11.52.50;	author dkf;	state Exp;
branches;
next	1.3;

1.3
date	2002.08.05.04.30.38;	author dgp;	state Exp;
branches;
next	1.2;

1.2
date	98.09.14.18.23.03;	author stanton;	state Exp;
branches
	1.2.24.1;
next	1.1;

1.1
date	98.04.01.09.51.50;	author rjohnson;	state Exp;
branches
	1.1.4.1;
next	;

1.1.4.1
date	98.09.30.02.16.38;	author stanton;	state Exp;
branches;
next	;

1.2.24.1
date	2002.08.20.20.27.01;	author das;	state Exp;
branches;
next	;

1.5.2.1
date	2007.09.07.01.25.33;	author dgp;	state Exp;
branches;
next	;


desc
@@


1.13
log
@Fix various 64-bit gcc(-4.5.2) warnings: cast from pointer to integer of different size
@
text
@/*
 * tkAtom.c --
 *
 *	This file manages a cache of X Atoms in order to avoid interactions
 *	with the X server. It's much like the Xmu routines, except it has a
 *	cleaner interface (caller doesn't have to provide permanent storage
 *	for atom names, for example).
 *
 * Copyright (c) 1990-1994 The Regents of the University of California.
 * Copyright (c) 1994 Sun Microsystems, Inc.
 *
 * See the file "license.terms" for information on usage and redistribution of
 * this file, and for a DISCLAIMER OF ALL WARRANTIES.
 *
 * RCS: @@(#) $Id: tkAtom.c,v 1.12 2010/01/02 22:52:38 dkf Exp $
 */

#include "tkInt.h"

/*
 * The following are a list of the predefined atom strings. They should match
 * those found in xatom.h
 */

static const char *const atomNameArray[] = {
    "PRIMARY",		"SECONDARY",		"ARC",
    "ATOM",		"BITMAP",		"CARDINAL",
    "COLORMAP",		"CURSOR",		"CUT_BUFFER0",
    "CUT_BUFFER1",	"CUT_BUFFER2",		"CUT_BUFFER3",
    "CUT_BUFFER4",	"CUT_BUFFER5",		"CUT_BUFFER6",
    "CUT_BUFFER7",	"DRAWABLE",		"FONT",
    "INTEGER",		"PIXMAP",		"POINT",
    "RECTANGLE",	"RESOURCE_MANAGER",	"RGB_COLOR_MAP",
    "RGB_BEST_MAP",	"RGB_BLUE_MAP",		"RGB_DEFAULT_MAP",
    "RGB_GRAY_MAP",	"RGB_GREEN_MAP",	"RGB_RED_MAP",
    "STRING",		"VISUALID",		"WINDOW",
    "WM_COMMAND",	"WM_HINTS",		"WM_CLIENT_MACHINE",
    "WM_ICON_NAME",	"WM_ICON_SIZE",		"WM_NAME",
    "WM_NORMAL_HINTS",	"WM_SIZE_HINTS",	"WM_ZOOM_HINTS",
    "MIN_SPACE",	"NORM_SPACE",		"MAX_SPACE",
    "END_SPACE",	"SUPERSCRIPT_X",	"SUPERSCRIPT_Y",
    "SUBSCRIPT_X",	"SUBSCRIPT_Y",		"UNDERLINE_POSITION",
    "UNDERLINE_THICKNESS", "STRIKEOUT_ASCENT",	"STRIKEOUT_DESCENT",
    "ITALIC_ANGLE",	"X_HEIGHT",		"QUAD_WIDTH",
    "WEIGHT",		"POINT_SIZE",		"RESOLUTION",
    "COPYRIGHT",	"NOTICE",		"FONT_NAME",
    "FAMILY_NAME",	"FULL_NAME",		"CAP_HEIGHT",
    "WM_CLASS",		"WM_TRANSIENT_FOR",
    NULL
};

/*
 * Forward references to functions defined in this file:
 */

static void	AtomInit(TkDisplay *dispPtr);

/*
 *--------------------------------------------------------------
 *
 * Tk_InternAtom --
 *
 *	Given a string, produce the equivalent X atom. This function is
 *	equivalent to XInternAtom, except that it keeps a local cache of
 *	atoms. Once a name is known, the server need not be contacted again
 *	for that name.
 *
 * Results:
 *	The return value is the Atom corresponding to name.
 *
 * Side effects:
 *	A new entry may be added to the local atom cache.
 *
 *--------------------------------------------------------------
 */

Atom
Tk_InternAtom(
    Tk_Window tkwin,		/* Window token; map name to atom for this
				 * window's display. */
    const char *name)		/* Name to turn into atom. */
{
    TkDisplay *dispPtr;
    Tcl_HashEntry *hPtr;
    int isNew;

    dispPtr = ((TkWindow *) tkwin)->dispPtr;
    if (!dispPtr->atomInit) {
	AtomInit(dispPtr);
    }

    hPtr = Tcl_CreateHashEntry(&dispPtr->nameTable, name, &isNew);
    if (isNew) {
	Tcl_HashEntry *hPtr2;
	Atom atom;

	atom = XInternAtom(dispPtr->display, name, False);
	Tcl_SetHashValue(hPtr, INT2PTR(atom));
	hPtr2 = Tcl_CreateHashEntry(&dispPtr->atomTable, INT2PTR(atom), &isNew);
	Tcl_SetHashValue(hPtr2, Tcl_GetHashKey(&dispPtr->nameTable, hPtr));
    }
    return (Atom)PTR2INT(Tcl_GetHashValue(hPtr));
}

/*
 *--------------------------------------------------------------
 *
 * Tk_GetAtomName --
 *
 *	This function is equivalent to XGetAtomName except that it uses the
 *	local atom cache to avoid contacting the server.
 *
 * Results:
 *	The return value is a character string corresponding to the atom given
 *	by "atom". This string's storage space is static: it need not be freed
 *	by the caller, and should not be modified by the caller. If "atom"
 *	doesn't exist on tkwin's display, then the string "?bad atom?"  is
 *	returned.
 *
 * Side effects:
 *	None.
 *
 *--------------------------------------------------------------
 */

const char *
Tk_GetAtomName(
    Tk_Window tkwin,		/* Window token; map atom to name relative to
				 * this window's display. */
    Atom atom)			/* Atom whose name is wanted. */
{
    TkDisplay *dispPtr;
    Tcl_HashEntry *hPtr;

    dispPtr = ((TkWindow *) tkwin)->dispPtr;
    if (!dispPtr->atomInit) {
	AtomInit(dispPtr);
    }

    hPtr = Tcl_FindHashEntry(&dispPtr->atomTable, INT2PTR(atom));
    if (hPtr == NULL) {
	const char *name;
	Tk_ErrorHandler handler;
	int isNew;
	char *mustFree = NULL;

	handler = Tk_CreateErrorHandler(dispPtr->display, BadAtom, -1, -1,
		NULL, NULL);
	name = mustFree = XGetAtomName(dispPtr->display, atom);
	if (name == NULL) {
	    name = "?bad atom?";
	}
	Tk_DeleteErrorHandler(handler);
	hPtr = Tcl_CreateHashEntry(&dispPtr->nameTable, name, &isNew);
	Tcl_SetHashValue(hPtr, INT2PTR(atom));
	if (mustFree) {
	    XFree(mustFree);
	}
	name = Tcl_GetHashKey(&dispPtr->nameTable, hPtr);
	hPtr = Tcl_CreateHashEntry(&dispPtr->atomTable, INT2PTR(atom), &isNew);
	Tcl_SetHashValue(hPtr, name);
    }
    return Tcl_GetHashValue(hPtr);
}

/*
 *--------------------------------------------------------------
 *
 * AtomInit --
 *
 *	Initialize atom-related information for a display.
 *
 * Results:
 *	None.
 *
 * Side effects:
 *	Tables get initialized, etc. etc..
 *
 *--------------------------------------------------------------
 */

static void
AtomInit(
    TkDisplay *dispPtr)/* Display to initialize. */
{
    Tcl_HashEntry *hPtr;
    Atom atom;

    dispPtr->atomInit = 1;
    Tcl_InitHashTable(&dispPtr->nameTable, TCL_STRING_KEYS);
    Tcl_InitHashTable(&dispPtr->atomTable, TCL_ONE_WORD_KEYS);

    for (atom = 1; atom <= XA_LAST_PREDEFINED; atom++) {
	const char *name;
	int isNew;

	hPtr = Tcl_FindHashEntry(&dispPtr->atomTable, INT2PTR(atom));
	if (hPtr != NULL) {
	    continue;
	}

	name = atomNameArray[atom - 1];
	hPtr = Tcl_CreateHashEntry(&dispPtr->nameTable, name, &isNew);
	Tcl_SetHashValue(hPtr, INT2PTR(atom));
	name = Tcl_GetHashKey(&dispPtr->nameTable, hPtr);
	hPtr = Tcl_CreateHashEntry(&dispPtr->atomTable, INT2PTR(atom), &isNew);
	Tcl_SetHashValue(hPtr, name);
    }
}

/*
 * Local Variables:
 * mode: c
 * c-basic-offset: 4
 * fill-column: 78
 * End:
 */
@


1.12
log
@SMALL FIX: Remove useless explicit casts now that we require C89 or later.
@
text
@d15 1
a15 1
 * RCS: @@(#) $Id: tkAtom.c,v 1.11 2008/10/30 23:18:59 nijtmans Exp $
d98 2
a99 2
	Tcl_SetHashValue(hPtr, atom);
	hPtr2 = Tcl_CreateHashEntry(&dispPtr->atomTable, (char*) atom, &isNew);
d102 1
a102 1
    return (Atom) Tcl_GetHashValue(hPtr);
d140 1
a140 1
    hPtr = Tcl_FindHashEntry(&dispPtr->atomTable, (char *) atom);
d155 1
a155 1
	Tcl_SetHashValue(hPtr, atom);
d160 1
a160 1
	hPtr = Tcl_CreateHashEntry(&dispPtr->atomTable, (char *) atom, &isNew);
d197 1
a197 1
	hPtr = Tcl_FindHashEntry(&dispPtr->atomTable, (char *) atom);
d204 1
a204 1
	Tcl_SetHashValue(hPtr, atom);
d206 1
a206 1
	hPtr = Tcl_CreateHashEntry(&dispPtr->atomTable, (char *) atom, &isNew);
@


1.11
log
@more internal -Wwrite-strings warning fixes
@
text
@d15 1
a15 1
 * RCS: @@(#) $Id: tkAtom.c,v 1.10 2008/10/29 23:31:55 jenglish Exp $
d148 1
a148 1
		NULL, (ClientData) NULL);
@


1.10
log
@Remove incorrect 'const' qualifier.
Remove useless 'register' declarations too, while we're at it.
@
text
@d15 1
a15 1
 * RCS: @@(#) $Id: tkAtom.c,v 1.9 2008/10/28 22:33:06 nijtmans Exp $
d25 1
a25 1
static const char * atomNameArray[] = {
d142 1
a142 1
	char *name;
d144 2
a145 1
	int isNew, mustFree;
d149 1
a149 2
	name = XGetAtomName(dispPtr->display, atom);
	mustFree = 1;
a151 1
	    mustFree = 0;
d157 1
a157 1
	    XFree(name);
@


1.9
log
@CONSTify TkPrintPadAmount, TkCreateFrame, TkCreateMainWindow
and Tk_ParseArgv. move TkSelGetSelection to internal stub table
(needed in tkWinTest.c)
@
text
@d15 1
a15 1
 * RCS: @@(#) $Id: tkAtom.c,v 1.8 2008/04/27 22:38:55 dkf Exp $
d83 2
a84 2
    register TkDisplay *dispPtr;
    register Tcl_HashEntry *hPtr;
d132 2
a133 2
    register TkDisplay *dispPtr;
    register Tcl_HashEntry *hPtr;
d142 1
a142 1
	const char *name;
d185 1
a185 1
    register TkDisplay *dispPtr)/* Display to initialize. */
@


1.8
log
@Get rid of pre-C89-isms (esp. CONST vs const).
@
text
@d15 1
a15 1
 * RCS: @@(#) $Id: tkAtom.c,v 1.7 2007/12/13 15:24:13 dgp Exp $
d25 1
a25 1
static char * atomNameArray[] = {
d142 1
a142 1
	char *name;
d195 1
a195 1
	char *name;
@


1.7
log
@merge stable branch onto HEAD
@
text
@d15 1
a15 1
 * RCS: @@(#) $Id: tkAtom.c,v 1.5.2.1 2007/09/07 01:25:33 dgp Exp $
d81 1
a81 1
    CONST char *name)		/* Name to turn into atom. */
d126 1
a126 1
CONST char *
@


1.6
log
@header cleanup
@
text
@d15 1
a15 1
 * RCS: @@(#) $Id: tkAtom.c,v 1.5 2005/11/17 10:57:35 dkf Exp $
@


1.5
log
@Lots of ANSIfying of function decls.
Also a few spots where code has been cleaned up more completely.
@
text
@d15 1
a15 1
 * RCS: @@(#) $Id: tkAtom.c,v 1.4 2005/11/04 11:52:50 dkf Exp $
a17 1
#include "tkPort.h"
@


1.5.2.1
log
@merge updates from HEAD
@
text
@d15 1
a15 1
 * RCS: @@(#) $Id: tkAtom.c,v 1.5 2005/11/17 10:57:35 dkf Exp $
d18 1
@


1.4
log
@ANSIfy
@
text
@d15 1
a15 1
 * RCS: @@(#) $Id: tkAtom.c,v 1.3 2002/08/05 04:30:38 dgp Exp $
d86 1
a86 1
    int new;
d93 2
a94 2
    hPtr = Tcl_CreateHashEntry(&dispPtr->nameTable, name, &new);
    if (new) {
d100 1
a100 1
	hPtr2 = Tcl_CreateHashEntry(&dispPtr->atomTable, (char *) atom, &new);
d145 1
a145 1
	int new, mustFree;
d156 1
a156 1
	hPtr = Tcl_CreateHashEntry(&dispPtr->nameTable, name, &new);
d162 1
a162 1
	hPtr = Tcl_CreateHashEntry(&dispPtr->atomTable, (char *) atom, &new);
d197 1
a197 1
	int new;
d205 1
a205 1
	hPtr = Tcl_CreateHashEntry(&dispPtr->nameTable, name, &new);
d208 1
a208 1
	hPtr = Tcl_CreateHashEntry(&dispPtr->atomTable, (char *) atom, &new);
@


1.3
log
@Applied companion patch for Tcl Patch 585105,
updating Tk to use Tcl 8.4's fully CONST-ified
interface, and fully CONSTifying Tk at the
same time.

This patch includes purging Tk of its last
direct access to interp->result.  [Bug 589853]

The substantial changes include copying
event sequence strings into Tcl_DStrings
in tkBind.c, and copying [text] indices into
Tcl_DStrings because parsing them involved
overwriting them.  If this causes performance
trouble, that can be resolved by further
converting them to Tcl_Obj's.

The #defines USE_NON_CONST and USE_COMPAT_CONST
have the same effect for Tk as they do for Tcl.
(They actually change tcl.h)
@
text
@d1 1
a1 1
/* 
d4 4
a7 5
 *	This file manages a cache of X Atoms in order to avoid
 *	interactions with the X server.  It's much like the Xmu
 *	routines, except it has a cleaner interface (caller
 *	doesn't have to provide permanent storage for atom names,
 *	for example).
d12 2
a13 2
 * See the file "license.terms" for information on usage and redistribution
 * of this file, and for a DISCLAIMER OF ALL WARRANTIES.
d15 1
a15 1
 * RCS: @@(#) $Id: tkAtom.c,v 1.2 1998/09/14 18:23:03 stanton Exp $
d22 2
a23 2
 * The following are a list of the predefined atom strings.
 * They should match those found in xatom.h
d50 1
a50 1
    (char *) NULL
d54 1
a54 1
 * Forward references to procedures defined in this file:
d57 1
a57 1
static void	AtomInit _ANSI_ARGS_((TkDisplay *dispPtr));
d64 4
a67 4
 *	Given a string, produce the equivalent X atom.  This
 *	procedure is equivalent to XInternAtom, except that it
 *	keeps a local cache of atoms.  Once a name is known,
 *	the server need not be contacted again for that name.
d79 4
a82 4
Tk_InternAtom(tkwin, name)
    Tk_Window tkwin;		/* Window token;  map name to atom
				 * for this window's display. */
    CONST char *name;		/* Name to turn into atom. */
d100 1
a100 2
	hPtr2 = Tcl_CreateHashEntry(&dispPtr->atomTable, (char *) atom,
		&new);
d111 2
a112 3
 *	This procedure is equivalent to XGetAtomName except that
 *	it uses the local atom cache to avoid contacting the
 *	server.
d115 5
a119 5
 *	The return value is a character string corresponding to
 *	the atom given by "atom".  This string's storage space
 *	is static:  it need not be freed by the caller, and should
 *	not be modified by the caller.  If "atom" doesn't exist
 *	on tkwin's display, then the string "?bad atom?" is returned.
d128 4
a131 5
Tk_GetAtomName(tkwin, atom)
    Tk_Window tkwin;		/* Window token;  map atom to name
				 * relative to this window's
				 * display. */
    Atom atom;			/* Atom whose name is wanted. */
d147 2
a148 2
	handler= Tk_CreateErrorHandler(dispPtr->display, BadAtom,
		-1, -1, (Tk_ErrorProc *) NULL, (ClientData) NULL);
d156 1
a156 2
	hPtr = Tcl_CreateHashEntry(&dispPtr->nameTable, (char *) name,
		&new);
d162 1
a162 2
	hPtr = Tcl_CreateHashEntry(&dispPtr->atomTable, (char *) atom,
		&new);
d185 2
a186 2
AtomInit(dispPtr)
    register TkDisplay *dispPtr;	/* Display to initialize. */
d196 3
d200 2
a201 12
	if (hPtr == NULL) {
	    char *name;
	    int new;

	    name = atomNameArray[atom - 1];
	    hPtr = Tcl_CreateHashEntry(&dispPtr->nameTable, (char *) name,
		&new);
	    Tcl_SetHashValue(hPtr, atom);
	    name = Tcl_GetHashKey(&dispPtr->nameTable, hPtr);
	    hPtr = Tcl_CreateHashEntry(&dispPtr->atomTable, (char *) atom,
		&new);
	    Tcl_SetHashValue(hPtr, name);
d203 7
d212 8
@


1.2
log
@Replaced SCCS strings, fixed binary files
@
text
@d16 1
a16 1
 * RCS: @@(#) $Id$
d83 1
a83 1
    char *name;			/* Name to turn into atom. */
d130 1
a130 1
char *
d171 1
a171 1
    return (char *) Tcl_GetHashValue(hPtr);
@


1.2.24.1
log
@merged with trunk at tag macosx-8-4-merge-2002-08-20-trunk
@
text
@d83 1
a83 1
    CONST char *name;		/* Name to turn into atom. */
d130 1
a130 1
CONST char *
d171 1
a171 1
    return Tcl_GetHashValue(hPtr);
@


1.1
log
@Initial revision
@
text
@d16 1
a16 1
 * SCCS: @@(#) tkAtom.c 1.13 96/02/15 18:51:34
@


1.1.4.1
log
@Merged 8.0.3 changes into 8.1
@
text
@d16 1
a16 1
 * RCS: @@(#) $Id: tkAtom.c,v 1.2 1998/09/14 18:23:03 stanton Exp $
@


