Tk Source Code

View Ticket
Login
Ticket UUID: fecc86e5e05d1892ff2893fe6013d3ed9d7fb682
Title: ttk::checkbutton and ttk::radiobutton indicators of the clam theme need improvement
Type: Bug Version: trunk
Submitter: nemethi Created on: 2023-02-15 12:04:00
Subsystem: 88. Themed Tk Assigned To: nobody
Priority: 5 Medium Severity: Minor
Status: Closed Last Modified: 2023-02-20 16:10:52
Resolution: Fixed Closed By: nemethi
    Closed on: 2023-02-20 16:10:52
Description:
The indicators of the ttk::checkbutton and ttk::radiobutton widgets of the clam theme are scalable, due to the -indicatorsize option of the styles TCheckbutton and TRadiobutton.  However, the C code responsible for drawing these indicators produces images that don't look really good, especially on a scaled screen, as shown by the attachment "clam_old.png", which is a screenshot made on a display having a scaling percentage of 150.  To be frank, I find the result rather unsatisfactory.

Really professional-looking and properly scaling indicators can only be drawn by using SVG images.  I have done this in the branch "better_indicators", with the result shown by the attachment "clam_new.png".  The implementation in this branch uses the same technique as in the case of the alt theme.  If we adopt this SVG-based method for the clam theme too then its -indicatorsize option for the styles TCheckbutton and TRadiobutton becomes useless, hence it should be removed, as already done in that branch.  (In the rather rare case that an older application sets this option, no error would be thrown, it would just have no effect.)

It would be fine if this improvement could be incorporated in Tk 8.7b1, which will be released soon.  The implementation is completed and fully tested, hence the only missing step is to merge the branch "better_indicators" into trunk.  Before doing this, I would like to see the opinion of the Community.

Any comments are welcome!
User Comments: nemethi (claiming to be Csaba Nemethi) added on 2023-02-20 16:10:52:
Nicolas, many thanks for your positive feedback!

I have already merged the branch into trunk, and now I am closing this ticket with the resolution "Fixed".

nab added on 2023-02-15 13:04:28:
Hi Csaba,
I'm all in favor of merging "better-indicators" to trunk. 

++
Nicolas

nemethi (claiming to be Csaba Nemethi) added on 2023-02-15 12:09:19:
CORRECTION: The branch name is "better-indicators", sorry!

Attachments: