44import os
55from sys import version
66
7- from tkinter import Toplevel , Frame , Label , Button
8- from tkinter import SUNKEN , TOP , BOTTOM , LEFT , X , BOTH , W , EW , NSEW
7+ from tkinter import Toplevel , Frame , Label , Button , PhotoImage
8+ from tkinter import SUNKEN , TOP , BOTTOM , LEFT , X , BOTH , W , EW , NSEW , E
99
1010from idlelib import textview
1111
@@ -62,7 +62,16 @@ def create_widgets(self):
6262
6363 header = Label (frame_background , text = 'IDLE' , fg = self .fg ,
6464 bg = self .bg , font = ('courier' , 24 , 'bold' ))
65- header .grid (row = 0 , column = 0 , sticky = W , padx = 10 , pady = 10 )
65+ header .grid (row = 0 , column = 0 , sticky = E , padx = 10 , pady = 10 )
66+
67+ tk_patchlevel = self .tk .call ('info' , 'patchlevel' )
68+ ext = '.png' if tk_patchlevel >= '8.6' else '.gif'
69+ icon = os .path .join (os .path .abspath (os .path .dirname (__file__ )),
70+ 'Icons' , f'idle_48{ ext } ' )
71+ self .icon_image = PhotoImage (master = self ._root (), file = icon )
72+ logo = Label (frame_background , image = self .icon_image , bg = self .bg )
73+ logo .grid (row = 0 , column = 0 , sticky = W , rowspan = 2 , padx = 10 , pady = 10 )
74+
6675 byline_text = "Python's Integrated DeveLopment Environment" + 5 * '\n '
6776 byline = Label (frame_background , text = byline_text , justify = LEFT ,
6877 fg = self .fg , bg = self .bg )
@@ -82,7 +91,6 @@ def create_widgets(self):
8291 pyver = Label (frame_background , text = 'Python version: ' + release ,
8392 fg = self .fg , bg = self .bg )
8493 pyver .grid (row = 9 , column = 0 , sticky = W , padx = 10 , pady = 0 )
85- tk_patchlevel = self .tk .call ('info' , 'patchlevel' )
8694 tkver = Label (frame_background , text = 'Tk version: ' + tk_patchlevel ,
8795 fg = self .fg , bg = self .bg )
8896 tkver .grid (row = 9 , column = 1 , sticky = W , padx = 2 , pady = 0 )
0 commit comments