summaryrefslogtreecommitdiffstats
path: root/Lib/idlelib/PyShell.py
diff options
context:
space:
mode:
authorTerry Jan Reedy <tjreedy@udel.edu>2014-02-08 14:05:20 (GMT)
committerTerry Jan Reedy <tjreedy@udel.edu>2014-02-08 14:05:20 (GMT)
commitc03027054d1ca43b6ef2d815107c4e8d9dfdd8c1 (patch)
treed73e63bba558fe6a466d0407bc4ae62123cb2453 /Lib/idlelib/PyShell.py
parent4a7668adca60a75fb41c87781caa5672871f65cf (diff)
parenta7c07d320b528dbc991f5ef2a8791026e784ea1f (diff)
downloadcpython-c03027054d1ca43b6ef2d815107c4e8d9dfdd8c1.zip
cpython-c03027054d1ca43b6ef2d815107c4e8d9dfdd8c1.tar.gz
cpython-c03027054d1ca43b6ef2d815107c4e8d9dfdd8c1.tar.bz2
Issue #20406: Use Python application icons for Idle window title bars.
Patch mostly by Serhiy Storchaka.
Diffstat (limited to 'Lib/idlelib/PyShell.py')
-rwxr-xr-xLib/idlelib/PyShell.py14
1 files changed, 13 insertions, 1 deletions
diff --git a/Lib/idlelib/PyShell.py b/Lib/idlelib/PyShell.py
index 106e32b..e8890d1 100755
--- a/Lib/idlelib/PyShell.py
+++ b/Lib/idlelib/PyShell.py
@@ -16,7 +16,7 @@ import io
import linecache
from code import InteractiveInterpreter
-from platform import python_version
+from platform import python_version, system
try:
from tkinter import *
@@ -1530,6 +1530,18 @@ def main():
# start editor and/or shell windows:
root = Tk(className="Idle")
+ # set application icon
+ icondir = os.path.join(os.path.dirname(__file__), 'Icons')
+ if system() == 'Windows':
+ iconfile = os.path.join(icondir, 'idle.ico')
+ root.wm_iconbitmap(default=iconfile)
+ elif TkVersion >= 8.5:
+ ext = '.png' if TkVersion >= 8.6 else '.gif'
+ iconfiles = [os.path.join(icondir, 'idle_%d%s' % (size, ext))
+ for size in (16, 32, 48)]
+ icons = [PhotoImage(file=iconfile) for iconfile in iconfiles]
+ root.wm_iconphoto(True, *icons)
+
fixwordbreaks(root)
root.withdraw()
flist = PyShellFileList(root)