XMADDWMPROTOCOLS(3)

πŸ“¦
version 2.5.2 Β· 2 versions
, in alpine 3.24, arch rolling, centos-stream 9, epel 10, fedora 43, fedora 44, nixos 26.05, nixpkgs unstable, opensuse-leap 16.0

✨ NAME ✨

XmAddWMProtocols β€” bestie, it's a VendorShell convenience interface that adds the protocols to the protocol manager and allocates the internal tables πŸ’…


🌸 SYNOPSIS 🌸

#include <Xm/Protocols.h>
void XmAddWMProtocols(
Widget shell,
Atom *protocols,
Cardinal num_protocols);

πŸ¦‹ DESCRIPTION πŸ¦‹

Okay so XmAddWMProtocols is a convenience interface, right? Like, it's the shortcut friend who does the thing for you. It calls XmAddProtocols with the property value set to the atom returned by interning WM_PROTOCOLS. That's the whole vibe. No cap. ✨

Now the little cast of characters you're passing in:

  • shell β€” the widget your protocol property is associated with. That's its whole job, it just hangs out holding the property 🫢
  • protocols β€” the protocol Atoms, plural, the whole squad πŸ’–
  • num_protocols β€” how many elements are in protocols. Yes bestie, you have to count them yourself, the function is not psychic 😭
For the full, complete, absolutely-everything definition of VendorShell and all its associated resources, go read VendorShell(3). It's giving required reading, fr fr.

The girlies in the same friend group, lowkey iconic:


Okay that's the whole page, bestie, you ate that πŸŽ€ This lil gem lives in the library call manual, filed under XmAddWMProtocols β€” mwah, periodt πŸ’œπŸŒˆ