Beispiel #1
0
    def _service_initialized_handler(self, event):

        self.logger.debug('Handling ServiceInitializedEvent')
        self.logger.debug('Service is %s' % event.service)

        if IActionProvider.providedBy(event.service):
            self.logger.debug('Loading registered service %s' % event.service)

            self.register_action_provider(event.service)
Beispiel #2
0
 def _service_initialized_handler(self, event):
     
     self.logger.debug('Handling ServiceInitializedEvent')
     self.logger.debug('Service is %s' % event.service)
     
     if IActionProvider.providedBy(event.service):
         
         self.logger.debug('Loading registered service %s' % event.service)
         
         self.register_action_provider(event.service)
Beispiel #3
0
 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)
Beispiel #4
0
    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)
Beispiel #5
0
    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
Beispiel #6
0
 def init_ui_components(self):
     component_registry = self.component_registry
     for ep in pkg_resources.iter_entry_points('gaphor.uicomponents'):
         log.debug('found entry point uicomponent.%s' % ep.name)
         cls = ep.load()
         if not IUIComponent.implementedBy(cls):
             raise NameError, 'Entry point %s doesn''t provide IUIComponent' % ep.name
         uicomp = cls()
         uicomp.ui_name = ep.name
         component_registry.register_utility(uicomp, IUIComponent, ep.name)
         if IActionProvider.providedBy(uicomp):
             self.action_manager.register_action_provider(uicomp)
Beispiel #7
0
 def init_ui_components(self):
     component_registry = self.component_registry
     for ep in pkg_resources.iter_entry_points('gaphor.uicomponents'):
         log.debug('found entry point uicomponent.%s' % ep.name)
         cls = ep.load()
         if not IUIComponent.implementedBy(cls):
             raise NameError('Entry point %s doesn''t provide IUIComponent' % ep.name)
         uicomp = cls()
         uicomp.ui_name = ep.name
         component_registry.register_utility(uicomp, IUIComponent, ep.name)
         if IActionProvider.providedBy(uicomp):
             self.action_manager.register_action_provider(uicomp)