def gui_layout(self, layoutNow=True): assert wx.IsMainThread() elems = ['status', 'blist', 'clist', 'slist', 'elist'] searching = self.Searching panel_order = pref('buddylist.order', elems) email_view = pref('buddylist.show_email_as', 'panel') in ('panel', 'both') and len( self.elist.active) social_view = pref('buddylist.show_social_as', 'panel') in ('panel', 'both') and len( self.slist.active) status_view = searching or pref('buddylist.show_status', True) viewable = Storage() with self.Frozen(): self.Sizer.Clear() # remove all children, but don't delete. show_menu = pref('buddylist.show_menubar', True) if not config.platform == 'mac': if show_menu: self.Sizer.Add(self.menubar.SizableWindow, 0, EXPAND) self.menubar.Show(show_menu) if searching or (hasattr(self, 'status') and status_view): viewable.status = (self.status, 0, EXPAND) viewable.blist = (self.blist, 1, EXPAND) viewable.clist = (self.clist, 0, EXPAND) if email_view: viewable.elist = (self.elist, 0, EXPAND) if social_view: viewable.slist = (self.slist, 0, EXPAND) AddInOrder(self.Sizer, *panel_order, **viewable) self.status.Show(status_view) self.elist.Show(email_view) self.slist.Show(social_view) if layoutNow: self.Layout()
def gui_layout(self, layoutNow = True): assert wx.IsMainThread() elems = ['status', 'blist','clist', 'slist', 'elist'] searching = self.Searching panel_order = pref('buddylist.order', elems) email_view = pref('buddylist.show_email_as', 'panel') in ('panel', 'both') and len(self.elist.active) social_view = pref('buddylist.show_social_as', 'panel') in ('panel', 'both') and len(self.slist.active) status_view = searching or pref('buddylist.show_status', True) viewable = Storage() with self.Frozen(): self.Sizer.Clear() # remove all children, but don't delete. show_menu = pref('buddylist.show_menubar', True) if not config.platform == 'mac': if show_menu: self.Sizer.Add(self.menubar.SizableWindow, 0, EXPAND) self.menubar.Show(show_menu) if searching or (hasattr(self, 'status') and status_view): viewable.status = (self.status, 0, EXPAND) viewable.blist = (self.blist, 1, EXPAND) viewable.clist = (self.clist, 0, EXPAND) if email_view: viewable.elist = (self.elist, 0, EXPAND) if social_view: viewable.slist = (self.slist, 0, EXPAND) AddInOrder(self.Sizer, *panel_order, **viewable) self.status.Show(status_view) self.elist.Show(email_view) self.slist.Show(social_view) if layoutNow: self.Layout()