Path: ...!eternal-september.org!feeder3.eternal-september.org!news.eternal-september.org!eternal-september.org!.POSTED!not-for-mail From: Eric Brunel Newsgroups: comp.lang.tcl Subject: Re: Treeview item indicators in image-based themes vs Tk 9 Date: Tue, 4 Feb 2025 09:38:49 -0000 (UTC) Organization: A noiseless patient Spider Lines: 40 Message-ID: References: <67a11e00$0$424$426a74cc@news.free.fr> MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Injection-Date: Tue, 04 Feb 2025 10:38:49 +0100 (CET) Injection-Info: dont-email.me; posting-host="2d1b12fa804bd2bfe1ef1c850f166bed"; logging-data="1895389"; mail-complaints-to="abuse@eternal-september.org"; posting-account="U2FsdGVkX18Mgbx9z+xhuIhSxyabzWNmUu4FgD4xflk=" User-Agent: Pan/0.146 (Hic habitat felicitas; 8107378 git@gitlab.gnome.org:GNOME/pan.git) Cancel-Lock: sha1:TOEWyEvs5LwpuD+iL7MoORZk9sk= Bytes: 2673 On Mon, 3 Feb 2025 20:50:23 +0100, Francois Vogel wrote: > Le 03/02/2025 à 11:22, Eric Brunel a écrit : >> In tcl/tk 8.6, the styling for these indicators are usually done via >> something like this: >> >> ttk::style element create Treeitem.indicator \ >> image [list $image_for_closed \ >> user1 $image_for_open \ >> user2 $image_for_no_children \ >> ] ... >> >> But this doesn't seem to work in tk 9: now all items have an indicator >> showing the image_for_closed whether they have children or not, and >> whether the item is opened or not. >> >> I suspect a change in the names for the states "user1" and "user2" - >> which were admittedly not very user-friendly - but I just can't find >> any reference for these, and by what I should replace them in tk 9 if >> that's indeed the problem. > > I think [527cb3cd5d] could shed light on this: > > https://core.tcl-lang.org/tk/info/527cb3cd5d > > Regards, > Francois Thanks for that. I've seen the argument about not using internally states that are supposed to be user-defined, and I can understand that, especially considering this never seemed to be correctly documented. Now no more being able to do in themes what was possible in tk 8.6 is a bit of a shame. Which brings the question: why have internal states at all? The states 'open', 'leaf', 'first' and 'last' are indeed very specific to some elements, but as long as they can be used in themes, it might be nice to actually have them named and usable... Thanks again! Eric