def display(self, txt, **kwargs):
self.empty()
r = re.compile("(\{\w+\})") # Unicode??
self.set_size_request(-1, -1)
for child in r.split(txt):
m = r.match(child)
if m:
varname = child[1:][:-1]
from solfege import lessonfilegui
if isinstance(kwargs[varname], basestring):
w = Gtk.Label(label=kwargs[varname])
w.set_name("FlashBarLabel")
else:
w = lessonfilegui.new_labelobject(kwargs[varname])
elif child: # don't create label for empty string
w = Gtk.Label(label=child)
w.set_name("FlashBarLabel")
self.__content.pack_start(w, False, False, 0)
w.show()
self.m_sx = max(self.size_request().width, self.m_sx)
self.m_sy = max(self.size_request().height, self.m_sy)
self.set_size_request(self.m_sx, self.m_sy)
if self.__timeout:
GObject.source_remove(self.__timeout)
self.__timeout = None
评论列表
文章目录