Tk_InternAtom(3)

πŸ’… Tk_InternAtom(3) β€” Tk Library Procedures πŸ’…

okay so this is the Tk Library Procedures page for Tk_InternAtom and Tk_GetAtomName, and it's literally all about managing the cache of X atoms. bestie, it's giving "small API, big cache energy" ✨


🌸 NAME 🌸

Tk_InternAtom, Tk_GetAtomName β€” manage cache of X atoms πŸŽ€


✨ SYNOPSIS ✨

#include <tk.h>

Atom
Tk_InternAtom(tkwin, name)

const char *
Tk_GetAtomName(tkwin, atom)

πŸŽ€ ARGUMENTS πŸŽ€

  • Tk_Window tkwin (in) β€” token for window. Used to map atom or name relative to a particular display.
  • const char *name (in) β€” string name for which atom is desired.
  • Atom atom (in) β€” atom for which corresponding string name is desired.

πŸ¦‹ DESCRIPTION πŸ¦‹

These procedures are similar to the Xlib procedures XInternAtom and XGetAtomName. Tk_InternAtom returns the atom identifier associated with string given by name; the atom identifier is only valid for the display associated with tkwin. Tk_GetAtomName returns the string associated with atom on tkwin's display. The string returned by Tk_GetAtomName is in Tk's storage: the caller need not free this space when finished with the string, and the caller should not modify the contents of the returned string. If there is no atom atom on tkwin's display, then Tk_GetAtomName returns the string ?bad atom?.

okay important bestie: the returned string lives in Tk's storage πŸ’– the caller does not need to free that space when done, and the caller should not modify the contents of the returned string. also if the atom isn't there, you get ?bad atom? β€” iconic little error string, ngl 😭

Tk caches the information returned by Tk_InternAtom and Tk_GetAtomName so that future calls for the same information can be serviced from the cache without contacting the server. Thus Tk_InternAtom and Tk_GetAtomName are generally much faster than their Xlib counterparts, and they should be used in place of the Xlib procedures. πŸ”₯


πŸ’œ KEYWORDS πŸ’œ

  • atom
  • cache
  • display

signed off by source/version Tk Β· page Tk_InternAtom(3) Β· date: not listed in the footer πŸ«ΆπŸ’–

πŸ“¦ where this page comes from