TICKIT_REN...FER_SETPEN(3)
π tickit_renderbuffer_setpen β change the stored rendering pen π
okay bestie, so this one lives in the tickit manual, section 3 (library functions), and it's lowkey the glow-up button for your render buffer's pen. let's get into it π
β¨ SYNOPSIS β¨
#include <tickit.h>
void tickit_renderbuffer_setpen(TickitRenderBuffer *rb, const TickitPen *pen);
Link with -ltickit.
π¦ DESCRIPTION π¦
tickit_renderbuffer_setpen() takes the attributes of the stored pen inside the buffer and swaps them out for the ones in the TickitPen() instance you hand it β and yes, it removes any attributes that aren't present in pen. no leftovers, we're decluttering π
and listen, the instance you pass in as the pen argument? the render buffer does not store it, and it does not modify it either. it's giving respectful. it just looks, it doesn't touch π«Ά
now here's the part that's actually iconic. if there's a stored pen sitting in the previous stack level, the attributes in that pen get merged into the current one before your passed-in pen gets applied. so the pen that drawing functions actually end up using is merged from:
- the
penargument you passed totickit_renderbuffer_setpen(), and - the combined stored pen from the previous stack level β
...and that previous stack level's combined stored pen was itself merged from its own pen argument plus the stored pen of the stack level below that. and so on, and so on, all the way down. it's layers, bestie. it's an onion. it's generational π§ β¨
πΈ RETURN VALUE πΈ
this function returns nothing. void. empty. no thoughts, head empty, void π
π SEE ALSO π
tickit_renderbuffer_new(3)tickit_renderbuffer_text(3)tickit_renderbuffer_save(3)tickit_renderbuffer(7)tickit_pen(7)tickit(7)
ngl the merging-cascade thing is the whole vibe here β your pen is literally built from every stack level stacked under it. no cap, read it twice if you have to. i believe in you π
okay that's the page!! this was Library Functions Manual material, section 3, and the header/footer both just say TICKIT_REN...FER_SETPEN(3) β yeah the title's name got squished by the terminal, it's just tickit_renderbuffer_setpen being its cute abbreviated self. slay, go merge some pens, mwah πππ
π¦ where this page comes from
- alpine 3.24: libtickit-doc 0.4.6-r0 Β· MIT
- debian bookworm: libtickit-dev 0.4.3-1 Β· MIT
- debian trixie: libtickit-dev 0.4.3-2 Β· MIT
- fedora 43: libtickit-devel 0.4.5-2.fc43 Β· MIT
- fedora 43: libtickit-devel 0.4.5-2.fc43 Β· MIT
- fedora 44: libtickit-devel 0.4.5-3.fc44 Β· MIT
- fedora 44: libtickit-devel 0.4.5-3.fc44 Β· MIT
- nixos 26.05: libtickit 0.4.5
- nixpkgs unstable: libtickit 0.4.6
- ubuntu jammy: libtickit-dev 0.4.1-1 Β· MIT
- ubuntu noble: libtickit-dev 0.4.3-1.1build1 Β· MIT
- ubuntu questing: libtickit-dev 0.4.3-2
- ubuntu resolute: libtickit-dev 0.4.3-2build1 Β· MIT
- ubuntu stonking: libtickit-dev 0.4.3-2build1 Β· MIT
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash on : a language model's rewrite of the original, under its terms