2 # Copyright 2009 Free Software Foundation, Inc.
4 # This file is part of GNU Radio
6 # GNU Radio is free software; you can redistribute it and/or modify
7 # it under the terms of the GNU General Public License as published by
8 # the Free Software Foundation; either version 3, or (at your option)
11 # GNU Radio is distributed in the hope that it will be useful,
12 # but WITHOUT ANY WARRANTY; without even the implied warranty of
13 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14 # GNU General Public License for more details.
16 # You should have received a copy of the GNU General Public License
17 # along with GNU Radio; see the file COPYING. If not, write to
18 # the Free Software Foundation, Inc., 51 Franklin Street,
19 # Boston, MA 02110-1301, USA.
24 DEFAULT_WIN_SIZE = (600, 300)
25 APPEND_EVENT = wx.NewEventType()
26 EVT_APPEND_EVENT = wx.PyEventBinder(APPEND_EVENT, 0)
28 class AppendEvent(wx.PyEvent):
29 def __init__(self, text):
30 wx.PyEvent.__init__(self)
31 self.SetEventType(APPEND_EVENT)
35 self.__class__(self.GetId())
38 class term_window(wx.Panel):
44 wx.Panel.__init__(self,
47 style=wx.SIMPLE_BORDER,
50 self.text_ctrl = wx.TextCtrl(self,
54 style=wx.TE_MULTILINE|wx.TE_READONLY,
57 main_sizer = wx.BoxSizer(wx.VERTICAL)
58 main_sizer.Add(self.text_ctrl, 1, wx.EXPAND)
59 self.SetSizerAndFit(main_sizer)
61 EVT_APPEND_EVENT(self, self.evt_append)
63 def append_text(self, text):
64 evt = AppendEvent(text)
65 wx.PostEvent(self, evt)
68 def evt_append(self, evt):
69 print "appending", len(evt.text), "bytes"
70 self.text_ctrl.AppendText(evt.text)