Title: bpo-42560: rewrite of Tkinter docs "life preserver" by roseman · Pull Request #27842 · python/cpython · GitHub
Open Graph Title: bpo-42560: rewrite of Tkinter docs "life preserver" by roseman · Pull Request #27842 · python/cpython
X Title: bpo-42560: rewrite of Tkinter docs "life preserver" by roseman · Pull Request #27842 · python/cpython
Description: This PR is effectively a complete rewrite and reorganization of the existing 'Life Preserver' section, and as such it's more useful to compare them in their entirety rather than trying to parse line-by-line diffs. Realistically, I don't think it would be useful to try to break this up into smaller PR's. The goals, as stated in the new intro: quick orientation to what Tkinter app looks like identify foundational concepts explain structure of Tkinter wrapper how to identify classes, methods, etc. you'll need how to find detailed documentation elsewhere To summarize the changes: drop credits section replace specific reference to man page sections, old Ousterhout book, Tkinter source code with pointer back to previous list of external references hello world: replaced class-based (so much shorter, more direct) now uses ttk and grid added line-by-line walkthrough important tk(inter) concepts new section some of this was muddled in the previous Tcl-oriented sections, but most not there understanding how tkinter wraps tcl/tk made shorter, more descriptive, less indirect/illustrative explanation of concepts less walking through actual Tcl syntax emphasizes important points of difference how do I ... / what option... this was previously dispersed across several sections, now more task-oriented assumption is that external documentation will be used, and knowing the right term to search for is key remind about introspection facilities for methods and objects, and also identifying those unique to a particular widget navigating tcl/tk reference manual solves the problem of given name of method, where to go find it in man pages? explains that while in tkinter everything is a method, in Tcl/Tk some are widget-specific methods, others are toplevel commands (e.g. grid) points to pages for common options and methods describes where to find docs on methods with compound names, e.g. "winfo_..." notes gotcha that some things that look like methods for a specific widget actually don't operate on the widget https://bugs.python.org/issue42560
Open Graph Description: This PR is effectively a complete rewrite and reorganization of the existing 'Life Preserver' section, and as such it's more useful to compare them in their entirety rather than trying ...
X Description: This PR is effectively a complete rewrite and reorganization of the existing 'Life Preserver' section, and as such it's more useful to compare them in their entirety rather ...
Opengraph URL: https://github.com/python/cpython/pull/27842
X: @github
Domain: github.com
| route-pattern | /:user_id/:repository/pull/:id/files(.:format) |
| route-controller | pull_requests |
| route-action | files |
| fetch-nonce | v2:02f17a98-2b79-7708-6a65-73aa8decad41 |
| current-catalog-service-hash | ae870bc5e265a340912cde392f23dad3671a0a881730ffdadd82f2f57d81641b |
| request-id | D7DC:24C7F8:34B8F4:4A8473:6A53736B |
| html-safe-nonce | d6bc7a75b4dceede7a0c9e138d188e1de929908c63a7c58eb5325f1fd46c212b |
| visitor-payload | eyJyZWZlcnJlciI6IiIsInJlcXVlc3RfaWQiOiJEN0RDOjI0QzdGODozNEI4RjQ6NEE4NDczOjZBNTM3MzZCIiwidmlzaXRvcl9pZCI6Ijc4MDAxMTkxMTUxMzMzODczMSIsInJlZ2lvbl9lZGdlIjoiaWFkIiwicmVnaW9uX3JlbmRlciI6ImlhZCJ9 |
| visitor-hmac | 114b7703895fbc57ae15a4d463c54de293f8e8903c557b4193f5191ed00c11b0 |
| hovercard-subject-tag | pull_request:716178360 |
| github-keyboard-shortcuts | repository,pull-request-list,pull-request-conversation,pull-request-files-changed,copilot |
| google-site-verification | Apib7-x98H0j5cPqHWwSMm6dNU4GmODRoqxLiDzdx9I |
| octolytics-url | https://collector.github.com/github/collect |
| analytics-location | / |
| fb:app_id | 1401488693436528 |
| apple-itunes-app | app-id=1477376905, app-argument=https://github.com/python/cpython/pull/27842/files |
| twitter:image | https://avatars.githubusercontent.com/u/1229065?s=400&v=4 |
| twitter:card | summary_large_image |
| og:image | https://avatars.githubusercontent.com/u/1229065?s=400&v=4 |
| og:image:alt | This PR is effectively a complete rewrite and reorganization of the existing 'Life Preserver' section, and as such it's more useful to compare them in their entirety rather than trying ... |
| og:site_name | GitHub |
| og:type | object |
| hostname | github.com |
| expected-hostname | github.com |
| None | b9a586c06a05a7a86fc7e3f4dbd03e42f6869085879aa184aa6369456dbd50fb |
| turbo-cache-control | no-preview |
| diff-view | unified |
| go-import | github.com/python/cpython git https://github.com/python/cpython.git |
| octolytics-dimension-user_id | 1525981 |
| octolytics-dimension-user_login | python |
| octolytics-dimension-repository_id | 81598961 |
| octolytics-dimension-repository_nwo | python/cpython |
| octolytics-dimension-repository_public | true |
| octolytics-dimension-repository_is_fork | false |
| octolytics-dimension-repository_network_root_id | 81598961 |
| octolytics-dimension-repository_network_root_nwo | python/cpython |
| turbo-body-classes | logged-out env-production page-responsive full-width |
| disable-turbo | true |
| browser-stats-url | https://api.github.com/_private/browser/stats |
| browser-errors-url | https://api.github.com/_private/browser/errors |
| release | 07a982c1d40157c619b364352b704c3ce66bb332 |
| ui-target | full |
| theme-color | #1e2327 |
| color-scheme | light dark |
Links:
Viewport: width=device-width