XpEndDoc(3Xp)

okay so you clicked on the XpEndDoc(3Xp) page, and honestly? iconic. This is the XPRINT FUNCTIONS manual page, and we’re gonna get you from β€œwhat is this” to β€œperiodt, I understand” without losing a single detail. πŸ’–


✨ NAME ✨

XpEndDoc β€” Indicates the ending of a print document.


🌸 SYNOPSIS 🌸

cc [ flag... ] file... -lXp [ library... ]
#include <X11/extensions/Print.h>

void XpEndDoc ( display )
      Display *display;

πŸ¦‹ ARGUMENTS πŸ¦‹

  • display β€” Specifies a pointer to the Display structure; returned from XOpenDisplay.

πŸ’… DESCRIPTION πŸ’…

okay so XpEndDoc signals the end of a print document. That’s the main-character move: it says the doc is done. ✨

All resulting document data is assembled and combined with data previously sent by XpPutDocumentData. So the data you already sent gets gathered up and combined, no cap. 🫢

For clients selecting XPPrintMask (see XpSelectInput), the event XPPrintNotify is generated with its detail field set to XPEndDocNotify. The way that detail field is literally XPEndDocNotify? obsessed. πŸ’–


πŸ”₯ DIAGNOSTICS πŸ”₯

  • XPBadContext β€” A valid print context-id has not been set prior to making this call. So if there’s no valid print context-id set before you call it, that’s the vibe check failing. 😭
  • XPBadSequence β€” The function was not called in the proper order with respect to the other X Print Service Extension calls. (Example, XpEndDoc prior to XpStartDoc). Like, order matters bestie β€” XpEndDoc before XpStartDoc is the example of doing it out of sequence. πŸ’€

πŸ‘‘ SEE ALSO πŸ‘‘

  • XpPutDocumentData(3Xp)
  • XpSelectInput(3Xp)
  • XpStartDoc(3Xp)

<cute>bye bestie</cute> πŸ’‹ this page is X Version 11, libXp 1.0.4, XpEndDoc(3Xp) β€” slay and stay hydrated πŸ“

πŸ“¦ where this page comes from