]> granicus.if.org Git - python/commitdiff
Issue #24750: Improve appearance of IDLE editor window status bar.
authorTerry Jan Reedy <tjreedy@udel.edu>
Mon, 16 Nov 2015 12:32:26 +0000 (07:32 -0500)
committerTerry Jan Reedy <tjreedy@udel.edu>
Mon, 16 Nov 2015 12:32:26 +0000 (07:32 -0500)
Patch by Mark Roseman.

Lib/idlelib/EditorWindow.py
Lib/idlelib/MultiStatusBar.py

index 58a01dc1a2318791265defd4780d328178b7705b..b5868be3fb839c1c96df13112ef37a4f8822d87e 100644 (file)
@@ -156,6 +156,7 @@ class EditorWindow(object):
                 'name': 'text',
                 'padx': 5,
                 'wrap': 'none',
+                'highlightthickness': 0,
                 'width': self.width,
                 'height': idleConf.GetOption('main', 'EditorWindow',
                                              'height', type='int')}
@@ -380,6 +381,7 @@ class EditorWindow(object):
 
     def set_status_bar(self):
         self.status_bar = self.MultiStatusBar(self.top)
+        sep = Frame(self.top, height=1, borderwidth=1, background='grey75')
         if sys.platform == "darwin":
             # Insert some padding to avoid obscuring some of the statusbar
             # by the resize widget.
@@ -387,6 +389,7 @@ class EditorWindow(object):
         self.status_bar.set_label('column', 'Col: ?', side=RIGHT)
         self.status_bar.set_label('line', 'Ln: ?', side=RIGHT)
         self.status_bar.pack(side=BOTTOM, fill=X)
+        sep.pack(side=BOTTOM, fill=X)
         self.text.bind("<<set-line-and-column>>", self.set_line_and_column)
         self.text.event_add("<<set-line-and-column>>",
                             "<KeyRelease>", "<ButtonRelease>")
index f44b6a860221f75050f0b408e51935a12a6bbdfc..ac290a186557ed89cd6af4746ded5190431b6bcb 100644 (file)
@@ -8,13 +8,15 @@ class MultiStatusBar(Frame):
         Frame.__init__(self, master, **kw)
         self.labels = {}
 
-    def set_label(self, name, text='', side=LEFT):
+    def set_label(self, name, text='', side=LEFT, width=0):
         if name not in self.labels:
-            label = Label(self, bd=1, relief=SUNKEN, anchor=W)
-            label.pack(side=side)
+            label = Label(self, borderwidth=0, anchor=W)
+            label.pack(side=side, pady=0, padx=4)
             self.labels[name] = label
         else:
             label = self.labels[name]
+        if width != 0: 
+            label.config(width=width)
         label.config(text=text)
 
 def _multistatus_bar(parent):