Re: dev: question about glist_isvisible() and gobj_shouldvis()
Alexandre Torres Porres <[email protected]>
| Newsgroups | gmane.comp.multimedia.puredata.general |
|---|---|
| Message-ID | <CAEAsFmhMKgu2mHVDzM0Ho592Os7VBfjBG90LKZKnb7Bwyx4TRA@mail.gmail.com> |
Not sure what you're facing, but when I need to update a GUI I just check for both and do things when both flags are true... but I never bothered to go deeper, it just works for me. What exactly is your problem? cheers Em qua., 20 de ago. de 2025 às 08:49, Pierre Alexandre Tremblay < [email protected]> escreveu: > … which makes me think that I need to find a similar tutorial to move away > from the deprecated ‘sys_vgui’ towards 'pdgui_vmess()’… yet as I use arrays > and other data structures in the TK, I feel it might require a full > refactor... > > Again pointers welcome again > > > On 20 Aug 2025, at 13:34, Pierre Alexandre Tremblay <[email protected]> > wrote: > > > > Hello > > > > Thanks for this. Sadly, that flag stays 1 when the [pd] subpatch window > containing my GUI is closed. I must be missing something. > > > > What is the simplest GUI source code I can read, ideally with loads of > comments, to see the best practices? At the moment, when the subpatcher > window is closed its ‘pdtk_canvas' is destroyed ("pd -d 5” helped a lot to > understand the ‘dance’)… > > > > To reiterate: > > - glist_isvisible() is 0 when subpatcher is opened > > - gobj_shouldvis() is always on, subpatcher opened or not > > > > Thanks all and sorry for the newb questions! > > > >> On 20 Aug 2025, at 00:13, Miller Puckette via Pd-list < > [email protected]> wrote: > >> > >> It's my belief that gobj_shouldvis() is true if the object should be > visible on the screen, > >> and that glist_isvisible() is on if the glist has actually been drawn > (which is not yet true > >> while the glist is first being drawn). So I think you should check > gobj_shouldvis() and > >> not glist_isvisible(). > >> > >> cheers > >> Miller > >> > >> On 8/19/25 12:06 PM, Pierre Alexandre Tremblay wrote: > >>> Hello > >>> > >>> I am struggling with a real understanding of when to redraw my 2 > flucoma GUI objects. At the moment, I get them to behave most of the time… > >>> > >>> Tldr: why is glist_isvisible 0 when a window hosting my gui is in the > background at load time? > >>> > >>> Any help/good practice/tutorial welcome. > >>> > >>> p > >>> > >>> === > >>> > >>> The long read: > >>> > >>> At the moment I check the status of glist_isvisible && gobj_shouldvis > and print when both are on (&& vis flag of my own object) > >>> > >>> It works all the time, except: > >>> > >>> 1. When I load the patch saved with a [pd patcher] with the gui on > (that window opens, but the gui doesn’t draw, by opposition to native ones) > >>> > >>> 2. When I close that subpatch window and reopen it, it is not drawn. > >>> > >>> 3. When I zoom in/out > >>> > >>> In both cases it calls my _draw method but the flag glist_isvisible is > 0 (with the added ‘fun’ of calling the draw function twice when I zoom in > or out, once with the flag 1 and right after with the flag 0 > >>> > >>> What have I done wrong? The source code is online, I can send a link…. > >>> > >>> > >>> > >>> --- > >>> [email protected] - the Pure Data mailinglist > >>> > https://urldefense.com/v3/__https://lists.iem.at/hyperkitty/list/[email protected]/message/Q3LT3SPTKG3JV33YFBSYFDV6HOLZU5OM/__;!!Mih3wA!BBIsbtoRUuYYTra_j5mFpGWnUOpOrFo1lHdxVmbyxGyhX15BNKJt4GJNABFir-x2XUT-c4kM2zO8$ > >>> > >>> To unsubscribe send an email to [email protected] mailing > list > >>> UNSUBSCRIBE and account-management -> > https://urldefense.com/v3/__https://lists.iem.at/__;!!Mih3wA!BBIsbtoRUuYYTra_j5mFpGWnUOpOrFo1lHdxVmbyxGyhX15BNKJt4GJNABFir-x2XUT-c83W2Dzg$ > >> > >> > >> --- > >> [email protected] - the Pure Data mailinglist > >> > https://lists.iem.at/hyperkitty/list/[email protected]/message/LPJGGHQ7PHZ62HMVFRPM3VOSYHE6QOM2/ > >> > >> To unsubscribe send an email to [email protected] mailing list > >> UNSUBSCRIBE and account-management -> https://lists.iem.at/ > > > > > --- > [email protected] - the Pure Data mailinglist > > https://lists.iem.at/hyperkitty/list/[email protected]/message/ZU5OPWAWD5XHCTWKAXJVFX5JOHHREVJ4/ > > To unsubscribe send an email to [email protected] mailing list > UNSUBSCRIBE and account-management -> https://lists.iem.at/ --- [email protected] - the Pure Data mailinglist https://lists.iem.at/hyperkitty/list/[email protected]/message/MCDQ5OTIZOHDQWXRV2MGPKIQISF6HTWD/ To unsubscribe send an email to [email protected] mailing list UNSUBSCRIBE and account-management -> https://lists.iem.at/