IDLE: Simplify DynOptionsMenu __init__code#101371
Conversation
terryjreedy
left a comment
There was a problem hiding this comment.
#71942 proposes to eliminate this file, but I plan to apply this now with the change in the comment and replacement of the htest line with
dyn = DynOptionMenu(top,var, "old1","old2","old3", highlightthickness=0)
The efficiency gain I care about is in reading the code ;-)
Co-authored-by: Terry Jan Reedy <tjreedy@udel.edu>
|
Hi @terryjreedy, I've applied the patch you suggested. |
terryjreedy
left a comment
There was a problem hiding this comment.
I improved init docstring and added highlightthickness to htest and note as to why no unittests.
|
Thanks @JosephSBoyle for the PR, and @terryjreedy for merging it 🌮🎉.. I'm working now to backport this PR to: 3.10, 3.11. |
|
GH-102314 is a backport of this pull request to the 3.11 branch. |
|
GH-102315 is a backport of this pull request to the 3.10 branch. |
Refactor DynOptionMenu's initializer to not copy kwargs dict and use subscripting; improve its htest. (cherry picked from commit c41af81) Co-authored-by: JosephSBoyle <48555120+JosephSBoyle@users.noreply.github.com> Co-authored-by: Terry Jan Reedy <tjreedy@udel.edu>
Refactor DynOptionMenu's initializer to not copy kwargs dict and use subscripting; improve its htest. (cherry picked from commit c41af81) Co-authored-by: JosephSBoyle <48555120+JosephSBoyle@users.noreply.github.com> Co-authored-by: Terry Jan Reedy <tjreedy@udel.edu>
Refactor DynOptionMenu's initializer to not copy kwargs dict and use subscripting; improve its htest. (cherry picked from commit c41af81) Co-authored-by: JosephSBoyle <48555120+JosephSBoyle@users.noreply.github.com> Co-authored-by: Terry Jan Reedy <tjreedy@udel.edu>
Refactor DynOptionMenu's initializer to not copy kwargs dict and use subscripting; improve its htest. (cherry picked from commit c41af81) Co-authored-by: JosephSBoyle <48555120+JosephSBoyle@users.noreply.github.com> Co-authored-by: Terry Jan Reedy <tjreedy@udel.edu>
|
Backports merged. |
* main: (67 commits) pythongh-99108: Add missing md5/sha1 defines to Modules/Setup (python#102308) pythongh-100227: Move _str_replace_inf to PyInterpreterState (pythongh-102333) pythongh-100227: Move the dtoa State to PyInterpreterState (pythongh-102331) pythonGH-102305: Expand some macros in generated_cases.c.h (python#102309) Migrate to new PSF mailgun account (python#102284) pythongh-102192: Replace PyErr_Fetch/Restore etc by more efficient alternatives (in Python/) (python#102193) pythonGH-90744: Fix erroneous doc links in the sys module (python#101319) pythongh-87092: Make jump target label equal to the offset of the target in the instructions sequence (python#102093) pythongh-101101: Unstable C API tier (PEP 689) (pythonGH-101102) IDLE: Simplify DynOptionsMenu __init__code (python#101371) pythongh-101561: Add typing.override decorator (python#101564) pythongh-101825: Clarify that as_integer_ratio() output is always normalized (python#101843) pythongh-101773: Optimize creation of Fractions in private methods (python#101780) pythongh-102251: Updates to test_imp Toward Fixing Some Refleaks (pythongh-102254) pythongh-102296 Document that inspect.Parameter kinds support ordering (pythonGH-102297) pythongh-102250: Fix double-decref in COMPARE_AND_BRANCH error case (pythonGH-102287) pythongh-101100: Fix sphinx warnings in `types` module (python#102274) pythongh-91038: Change default argument value to `False` instead of `0` (python#31621) pythongh-101765: unicodeobject: use Py_XDECREF correctly (python#102283) [doc] Improve grammar/fix missing word (pythonGH-102060) ...
In dynoption.py, don't copy the kwargs dict and do use subscript syntax for config.
Testing
To test the changes don't break anything, simply set the 'highlightthickness' value:
and run the script: