def unregister_action_provider(self, action_provider): action_provider = IActionProvider(action_provider) try: # Check if the action provider is registered action_provider.__ui_merge_id except AttributeError: pass else: self.ui_manager.remove_ui(action_provider.__ui_merge_id) self.ui_manager.remove_action_group(action_provider.action_group) del action_provider.__ui_merge_id
def register_action_provider(self, action_provider): self.logger.debug('Registering action provider %s' % action_provider) action_provider = IActionProvider(action_provider) try: # Check if the action provider is not already registered action_provider.__ui_merge_id except AttributeError: assert action_provider.action_group self.ui_manager.insert_action_group(action_provider.action_group, -1) try: menu_xml = action_provider.menu_xml except AttributeError: pass else: action_provider.__ui_merge_id = \ self.ui_manager.add_ui_from_string(menu_xml)