Tk_SetClass(3)

okay bestie, welcome to the Tk_SetClass(3) page from the Tk Library Procedures manual β€” this one is short, iconic, and all about giving a window its class ✨

🌸 NAME 🌸

Tk_SetClass, Tk_Class β€” set or retrieve a window's class πŸ’…


✨ SYNOPSIS ✨

#include <tk.h>

Tk_SetClass(tkwin, class)

Tk_Uid
Tk_Class(tkwin)

πŸŽ€ ARGUMENTS πŸŽ€

  • Tk_Window tkwin (in) β€” token for window πŸͺŸ
  • char *class (in) β€” new class name for window 🏷️

πŸ’– DESCRIPTION πŸ’–

Tk_SetClass is the function you call to associate a class with a particular window. The class string identifies the type of the window; all windows with the same general class of behavior (button, menu, etc.) should have the same class. By convention, all class names start with a capital letter, and there exists a Tcl command with the same name as each class (except all in lower-case) which can be used to create and manipulate windows of that class. A window's class string is initialized to NULL when the window is created.

For main windows, Tk automatically propagates the name and class to the WM_CLASS property used by window managers. This happens either when a main window is actually created (e.g. in Tk_MakeWindowExist), or when Tk_SetClass is called, whichever occurs later. If a main window has not been assigned a class then Tk will not set the WM_CLASS property for the window.

Tk_Class is a macro that returns the current value of tkwin's class. The value is returned as a Tk_Uid, which may be used just like a string pointer but also has the properties of a unique identifier (see the manual entry for Tk_GetUid for details). If tkwin has not yet been given a class, then Tk_Class will return NULL.

lowkey important: a fresh window starts with its class as NULL until you set it β€” no cap 🫢

πŸ”‘ KEYWORDS πŸ”‘

  • class
  • unique identifier
  • window
  • window manager

That’s the whole vibe β€” source/version Tk, manual page Tk_SetClass(3), and the original footer doesn’t show a date, so we’re not inventing one πŸ’–βœ¨

πŸ“¦ where this page comes from