Changeset 1268
- Timestamp:
- 05/11/07 02:56:45 (2 years ago)
- Files:
-
- gaphor/trunk/gaphor/action.py (modified) (1 diff)
- gaphor/trunk/gaphor/application.py (modified) (1 diff)
- gaphor/trunk/gaphor/services/actionmanager.py (modified) (3 diffs)
- gaphor/trunk/gaphor/services/filemanager.py (modified) (3 diffs)
- gaphor/trunk/gaphor/services/undomanager.py (modified) (1 diff)
- gaphor/trunk/gaphor/ui/consolewindow.py (modified) (1 diff)
- gaphor/trunk/gaphor/ui/mainwindow.py (modified) (3 diffs)
Legend:
- Unmodified
- Added
- Removed
- Modified
- Copied
- Moved
gaphor/trunk/gaphor/action.py
r1264 r1268 94 94 """ 95 95 import gtk 96 group = gtk.ActionGroup(name )96 group = gtk.ActionGroup(name or obj) 97 97 98 98 for attrname in dir(obj): gaphor/trunk/gaphor/application.py
r1264 r1268 65 65 log.info('initializing service service.%s' % name) 66 66 # TODO: do init() before provideUtility! 67 srv.init(self) 67 68 component.provideUtility(srv, IService, name) 68 srv.init(self)69 69 component.handle(ServiceInitializedEvent(name, srv)) 70 70 return srv gaphor/trunk/gaphor/services/actionmanager.py
r1267 r1268 21 21 def init(self, app): 22 22 self.ui_manager = gtk.UIManager() 23 log.info('Loading not yet registered action provider services') 24 for name, service in component.getUtilitiesFor(IService): 25 if IActionProvider.providedBy(service): 26 log.debug('Loading already registered service %s' % str(service)) 27 self.register_action_provider(service) 28 23 29 component.provideHandler(self._service_initialized_handler) 24 30 … … 43 49 44 50 def register_action_provider(self, action_provider): 45 log.debug('Registering actions for %s' % str(action_provider))46 51 action_provider = IActionProvider(action_provider) 47 52 try: … … 49 54 action_provider.__ui_merge_id 50 55 except AttributeError: 56 log.debug('Registering actions for %s' % str(action_provider)) 51 57 52 58 assert action_provider.action_group 53 self.ui_manager.insert_action_group(action_provider.action_group, -1)54 59 if action_provider.menu_xml: 55 60 action_provider.__ui_merge_id = \ 56 61 self.ui_manager.add_ui_from_string(action_provider.menu_xml) 62 log.debug('Added menu xml %d' % action_provider.__ui_merge_id) 63 self.ui_manager.insert_action_group(action_provider.action_group, -1) 64 self.update_actions() 57 65 58 66 @component.adapter(ServiceInitializedEvent) 59 67 def _service_initialized_handler(self, event): 60 68 if IActionProvider.providedBy(event.service): 69 log.debug('Loading registered service %s' % str(event.service)) 61 70 self.register_action_provider(event.service) 62 71 # Only start registring already registered services once the GUI 63 72 # is in order (e.i. menu structure is correctly set up) 64 if event.name == 'gui_manager': 65 log.info('Loading not yet registered action provider services') 66 for name, service in component.getUtilitiesFor(IService): 67 if IActionProvider.providedBy(service): 68 self.register_action_provider(service) 73 # if event.name == 'gui_manager': 74 # log.info('Loading not yet registered action provider services') 75 # for name, service in component.getUtilitiesFor(IService): 76 # if IActionProvider.providedBy(service): 77 # log.debug('Loading already registered service %s' % str(service)) 78 # self.register_action_provider(service) 69 79 70 80 # vim:sw=4:et:ai gaphor/trunk/gaphor/services/filemanager.py
r1267 r1268 23 23 <ui> 24 24 <menubar name="mainwindow"> 25 <menu name="file">26 <placeholder name="primary">25 <menu action="file"> 26 <placeholder name="primary"> 27 27 <menuitem action="file-new" /> 28 28 <menuitem action="file-open" /> 29 <menu name="recent" action="file-recent-files">30 </menu>31 29 <separator /> 32 30 <menuitem action="file-save" /> 33 31 <menuitem action="file-save-as" /> 34 32 <separator /> 35 </placeholder>33 </placeholder> 36 34 </menu> 37 35 </menubar> 38 36 </ui> 39 37 """ 38 # <menu name="recent" action="file-recent-files"> 39 # </menu> 40 40 41 41 def __init__(self): … … 47 47 def shutdown(self): 48 48 pass 49 49 50 50 @action(name='file-new', stock_id='gtk-new') 51 51 def new(self): 52 52 element_factory = self.element_factory 53 main_window = self.gui_manager.main_window53 main_window = self.gui_manager.main_window 54 54 if element_factory.size(): 55 55 dialog = gtk.MessageDialog(main_window.window, … … 89 89 @action(name='file-recent-files', label=_('Recent files'), stock_id='gtk-recent') 90 90 def recent_files(self): 91 pass91 pass 92 92 93 93 gaphor/trunk/gaphor/services/undomanager.py
r1264 r1268 86 86 <ui> 87 87 <menubar name="mainwindow"> 88 <menu name="edit"> 89 <menuitem action="edit-undo" /> 90 <menuitem action="edit-redo" /> 91 <separator /> 88 <menu action="edit"> 89 <placeholder name="primary"> 90 <menuitem action="edit-undo" /> 91 <menuitem action="edit-redo" /> 92 <separator /> 93 </placeholder> 92 94 </menu> 93 95 </menubar> gaphor/trunk/gaphor/ui/consolewindow.py
r1267 r1268 20 20 <ui> 21 21 <menubar name="mainwindow"> 22 <menu name="window"action="window">22 <menu action="window"> 23 23 <menuitem action="ConsoleWindow:open" /> 24 24 </menu> 25 25 </menubar> 26 26 <menubar name="consolewindow"> 27 <menu name="file"action="file">27 <menu action="file"> 28 28 <menuitem action="ConsoleWindow:close" /> 29 29 </menu> gaphor/trunk/gaphor/ui/mainwindow.py
r1267 r1268 174 174 <ui> 175 175 <menubar name="mainwindow"> 176 <menu name="file" action="file" >176 <menu name="file" action="file"> 177 177 <placeholder name="primary" /> 178 178 <placeholder name="secondary" /> … … 206 206 <toolbar action="tools"> 207 207 </toolbar> 208 <popup action="NamespacePopup">209 <menuitem action="RenameModelElement" />210 <menuitem action="OpenModelElement" />211 <separator />212 <menuitem action="CreateDiagram" />213 <menuitem action="DeleteDiagram" />214 <separator />215 <menuitem action="RefreshNamespaceModel" />216 <placeholder action="namespacePopupSlot" />217 </popup>218 208 </ui> 219 209 """ … … 252 242 # <toolitem action="ViewZoom100" /> 253 243 244 # <popup action="NamespacePopup"> 245 # <menuitem action="RenameModelElement" /> 246 # <menuitem action="OpenModelElement" /> 247 # <separator /> 248 # <menuitem action="CreateDiagram" /> 249 # <menuitem action="DeleteDiagram" /> 250 # <separator /> 251 # <menuitem action="RefreshNamespaceModel" /> 252 # <placeholder action="namespacePopupSlot" /> 253 # </popup> 254 254 255 255 def __init__(self):
