Skip to content

Commit a5aa691

Browse files
committed
Merge?
2 parents aadc7e9 + a24705e commit a5aa691

File tree

1 file changed

+38
-4
lines changed

1 file changed

+38
-4
lines changed

bpython/gtk_.py

Lines changed: 38 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -109,6 +109,9 @@ def __exit__(self, exc_type, exc_value, traceback):
109109
dialog.run()
110110
dialog.destroy()
111111

112+
class MenuBar(gtk.MenuBar):
113+
def __init__(self):
114+
gtk.MenuBar.__init__(self)
112115

113116
class Nested(object):
114117
"""
@@ -128,6 +131,14 @@ def __exit__(self, exc_type, exc_value, exc_tb):
128131
def __nonzero__(self):
129132
return bool(self.counter)
130133

134+
class Statusbar(gtk.Statusbar):
135+
"""Contains feedback messages"""
136+
def __init__(self):
137+
gtk.Statusbar.__init__(self)
138+
139+
context_id = self.get_context_id('StatusBar')
140+
# self.push(context_id, text)
141+
131142

132143
class SuggestionWindow(gtk.Window):
133144
"""
@@ -145,7 +156,7 @@ def __init__(self):
145156
self.set_name('gtk-tooltips')
146157
self.argspec_formatter = ArgspecFormatter()
147158

148-
vbox = gtk.VBox()
159+
vbox = gtk.VBox(homogeneous=False)
149160
vbox.set_style(self.get_style())
150161

151162
self.argspec_label = gtk.Label()
@@ -655,7 +666,7 @@ def main(args=None):
655666
bpython.args.exec_code(interpreter, exec_args)
656667
return 0
657668

658-
sys.stderr = repl_widget
669+
# sys.stderr = repl_widget
659670
sys.stdout = repl_widget
660671

661672
if not options.socket_id:
@@ -674,12 +685,35 @@ def main(args=None):
674685
parent = gtk.Plug(options.socket_id)
675686
parent.connect('destroy', gtk.main_quit)
676687

677-
# read from config
688+
container = gtk.VBox()
689+
parent.add(container)
690+
691+
mb = gtk.MenuBar()
692+
filemenu = gtk.Menu()
693+
694+
filem = gtk.MenuItem("File")
695+
filem.set_submenu(filemenu)
696+
697+
exit = gtk.MenuItem("Exit")
698+
exit.connect("activate", gtk.main_quit)
699+
filemenu.append(exit)
678700

701+
mb.append(filem)
702+
vbox = gtk.VBox(False, 2)
703+
vbox.pack_start(mb, False, False, 0)
704+
705+
container.pack_start(vbox, expand=False)
706+
707+
708+
# read from config
679709
sw = gtk.ScrolledWindow()
680710
sw.set_policy(gtk.POLICY_NEVER, gtk.POLICY_AUTOMATIC)
681711
sw.add(repl_widget)
682-
parent.add(sw)
712+
container.add(sw)
713+
714+
sb = Statusbar()
715+
container.pack_end(sb, expand=False)
716+
683717
parent.show_all()
684718
parent.connect('delete-event', lambda widget, event: gtk.main_quit())
685719

0 commit comments

Comments
 (0)