[issue22155] Out of date code example for tkinter's createfilehandle
New submission from Martin Panter: The only documentation on “createfilehandle” and friends that I can find looks like it needs updating: https://docs.python.org/release/3.4.0/faq/gui.html#can-i-have-tk-events-hand... I have been using the equivalent of this instead, for both Python 2 and 3: import tkinter widget = tkinter.Tk() widget.tk.createfilehandler(file, tkinter.READABLE | tkinter.WRITABLE, callback) ... widget.tk.deletefilehandler(file) However I have no idea if this is a supported, proper way, if one even still exists. The old way was removed by Issue 3638. BTW, there is a link to release/3.4.1 documentation but that returned a 404 error for me, so I linked to the 3.4.0 doc instead. ---------- assignee: docs@python components: Documentation, Tkinter messages: 224922 nosy: docs@python, vadmium priority: normal severity: normal status: open title: Out of date code example for tkinter's createfilehandle versions: Python 3.4, Python 3.5 _______________________________________ Python tracker <report@bugs.python.org> <http://bugs.python.org/issue22155> _______________________________________
Changes by Martin Panter <vadmium+py@gmail.com>: ---------- title: Out of date code example for tkinter's createfilehandle -> Out of date code example for tkinter's createfilehandler _______________________________________ Python tracker <report@bugs.python.org> <http://bugs.python.org/issue22155> _______________________________________
Changes by Serhiy Storchaka <storchaka@gmail.com>: ---------- stage: -> needs patch versions: +Python 2.7 _______________________________________ Python tracker <report@bugs.python.org> <http://bugs.python.org/issue22155> _______________________________________
Terry J. Reedy added the comment: The latest x.y docs are available at docs.python.org/x.y, such as https://docs.python.org/3.4/faq/gui.html I was not aware of this undocumented method of the undocumented tkapp class. It is not available on Windows, and the FAQ should say so. From Modules/_tkinter.c: /* Tcl_CreateFileHandler() changed several times; these macros deal with the messiness. In Tcl 8.0 and later, it is not available on Windows (and on Unix, only because Jack added it back); when available on Windows, it only applies to sockets. */ Current _tkinter only supports 8.4+. The messiness still appears in the asyncio design. 'createfile' does not appear on the pydoc page for tkinter; directly using createfilehandle seems to be the only access. ---------- nosy: +serhiy.storchaka, terry.reedy _______________________________________ Python tracker <report@bugs.python.org> <http://bugs.python.org/issue22155> _______________________________________
Martin Panter added the comment: Just about the broken docs link: I was trying to find a permanent version of the docs to link to. The usual docs page links to “Old versions” <https://www.python.org/doc/versions/>, but top link there, 3.4.1, does not seem to be available. ---------- _______________________________________ Python tracker <report@bugs.python.org> <http://bugs.python.org/issue22155> _______________________________________
Martin Panter added the comment: Here is a patch which moves the documentation from the FAQ into a new section at the bottom of the main “tkinter” reference manual page, and updates it. I also mentioned lack of Windows support. Let me know what you think! ---------- keywords: +patch stage: needs patch -> patch review Added file: http://bugs.python.org/file39402/file-handlers.patch _______________________________________ Python tracker <report@bugs.python.org> <http://bugs.python.org/issue22155> _______________________________________
Terry J. Reedy added the comment: Assuming that the details are correct, which I cannot check on Windows :-(, this looks good to me. If the tkinter doc is expanded and reorganized, that section might move but I cannot see a better place for it now. Martin, have you used that code (with Tkinter/tkinter) on both 2.7 and 3.x? Serhiy, if you want me to apply this, after you check it, I will. ---------- _______________________________________ Python tracker <report@bugs.python.org> <http://bugs.python.org/issue22155> _______________________________________
Serhiy Storchaka added the comment: I'm not sure that this is right place to document these functions (they are methods of undocumented class), but the patch looks correct to me. If you will commit the patch, Terry, note that tkinter should be replaced with Tkinter in 2.7. ---------- _______________________________________ Python tracker <report@bugs.python.org> <http://bugs.python.org/issue22155> _______________________________________
Roundup Robot added the comment: New changeset e8dd65c7fb6b by Terry Jan Reedy in branch '2.7': Issue #22155: Add File Handlers subsection with createfilehandler to Tkinter https://hg.python.org/cpython/rev/e8dd65c7fb6b New changeset 1efcb7b6ec8a by Terry Jan Reedy in branch '3.4': Issue #22155: Add File Handlers subsection with createfilehandler to tkinter https://hg.python.org/cpython/rev/1efcb7b6ec8a ---------- nosy: +python-dev _______________________________________ Python tracker <report@bugs.python.org> <http://bugs.python.org/issue22155> _______________________________________
Roundup Robot added the comment: New changeset 8bd9da5635fe by Terry Jan Reedy in branch '3.4': Issue #22155: News entry. https://hg.python.org/cpython/rev/8bd9da5635fe New changeset 850cbd54cc73 by Terry Jan Reedy in branch 'default': Issue #22155: News entry. https://hg.python.org/cpython/rev/850cbd54cc73 ---------- _______________________________________ Python tracker <report@bugs.python.org> <http://bugs.python.org/issue22155> _______________________________________
Terry J. Reedy added the comment: Martin, thanks for the nice patch. ---------- assignee: docs@python -> terry.reedy resolution: -> fixed stage: patch review -> resolved status: open -> closed type: -> behavior _______________________________________ Python tracker <report@bugs.python.org> <http://bugs.python.org/issue22155> _______________________________________
Martin Panter added the comment: For the record, I have used this code in 2.7 in the past (though I mainly use Python 3). The Python 2 version of the changes look fine to me. ---------- _______________________________________ Python tracker <report@bugs.python.org> <http://bugs.python.org/issue22155> _______________________________________
participants (4)
-
Martin Panter -
Roundup Robot -
Serhiy Storchaka -
Terry J. Reedy