Mercurial > libervia-web
comparison src/browser/sat_browser/base_widget.py @ 632:c2abadf31afb frontends_multi_profiles
browser side (menu): minor improvments:
- use of new style class for MenuCmd and PluginMenuCmd (useless for pyjamas, but can be useful in the future)
- use of try/except instead of hasattr
- do not use "None" for WidgetMenuBar's __init__
author | Goffi <goffi@goffi.org> |
---|---|
date | Mon, 23 Feb 2015 18:43:08 +0100 |
parents | 5baca9d46c34 |
children | 40c3c6aaafaa |
comparison
equal
deleted
inserted
replaced
631:e287a4b431c1 | 632:c2abadf31afb |
---|---|
221 menu_styles = {'menu_bar': 'widgetHeader_buttonGroup'} | 221 menu_styles = {'menu_bar': 'widgetHeader_buttonGroup'} |
222 if styles: | 222 if styles: |
223 menu_styles.update(styles) | 223 menu_styles.update(styles) |
224 base_menu.GenericMenuBar.__init__(self, host, vertical=vertical, styles=menu_styles) | 224 base_menu.GenericMenuBar.__init__(self, host, vertical=vertical, styles=menu_styles) |
225 | 225 |
226 if hasattr(parent, 'addMenus'): | 226 # regroup all the dynamic menu categories in a sub-menu |
227 # regroup all the dynamic menu categories in a sub-menu | 227 sub_menu = WidgetSubMenuBar(host, vertical=True) |
228 sub_menu = WidgetSubMenuBar(host, vertical=True) | 228 try: |
229 parent.addMenus(sub_menu) | 229 parent.addMenus(sub_menu) |
230 except (AttributeError, TypeError): # FIXME: pyjamas can throw a TypeError depending on compilation options | |
231 pass | |
232 else: | |
230 if len(sub_menu.getCategories()) > 0: | 233 if len(sub_menu.getCategories()) > 0: |
231 self.addCategory('', '', 'plugins', sub_menu) | 234 self.addCategory('', '', 'plugins', sub_menu) |
232 | 235 |
233 @classmethod | 236 @classmethod |
234 def getCategoryHTML(cls, menu_name_i18n, type_): | 237 def getCategoryHTML(cls, menu_name_i18n, type_): |