Changeset 2233
- Timestamp:
- 03/02/08 02:39:10 (2 months ago)
- Files:
-
- gaphor/trunk/gaphor/UML/diagram.py (modified) (1 diff)
- gaphor/trunk/gaphor/adapters/propertypages.py (modified) (2 diffs)
- gaphor/trunk/gaphor/ui/diagramtoolbox.py (modified) (2 diffs)
- gaphor/trunk/gaphor/ui/propertyeditor.py (modified) (3 diffs)
Legend:
- Unmodified
- Added
- Removed
- Modified
- Copied
- Moved
gaphor/trunk/gaphor/UML/diagram.py
r2230 r2233 88 88 self.canvas.add(obj, parent) 89 89 print 'send event', obj 90 component.handle(DiagramItemCreateEvent(obj))91 90 return obj 92 91 gaphor/trunk/gaphor/adapters/propertypages.py
r2202 r2233 505 505 text_view.show() 506 506 page.pack_start(text_view) 507 page.set_data('default', text_view) 507 508 508 509 changed_id = buffer.connect('changed', self._on_body_change) … … 551 552 entry.set_text(subject and subject.name or '') 552 553 hbox.pack_start(entry) 554 page.set_data('default', entry) 553 555 554 556 # monitor subject.name attribute gaphor/trunk/gaphor/ui/diagramtoolbox.py
r2232 r2233 7 7 """ 8 8 9 from zope import component 10 from gaphor.UML.event import DiagramItemCreateEvent 9 11 from gaphor import UML 10 12 from gaphor.diagram import items … … 134 136 if self.properties('reset-tool-after-create', False): 135 137 self.action_group.get_action('toolbox-pointer').activate() 136 # TODO: if the item is a NamedItem, start the EditTool. 137 if isinstance(new_item, items.DiagramItem) and \ 138 isinstance(new_item.subject, UML.NamedElement): 139 print 'start edit tool from after tool handler' 138 component.handle(DiagramItemCreateEvent(new_item)) 140 139 141 140 gaphor/trunk/gaphor/ui/propertyeditor.py
r2230 r2233 23 23 self._default_tab = _('Properties') 24 24 self._last_tab = self._default_tab 25 self._new_item = False26 25 27 26 def construct(self): … … 46 45 for name, adapter in component.getAdapters([item,], IPropertyPage): 47 46 try: 48 self.notebook.prepend_page(adapter.construct(), gtk.Label(name)) 47 page = adapter.construct() 48 self.notebook.prepend_page(page, gtk.Label(name)) 49 49 except Exception, e: 50 50 log.error('Could not construct property page for ' + name, e) 51 51 self.notebook.show_all() 52 52 53 self._last_tab = self._new_item and self._default_tab or last_tab 54 53 self.select_tab(last_tab) 54 55 56 def select_tab(self, name): 55 57 # Show the last selected tab again. 56 58 for page_num in range(0, self.notebook.get_n_pages()): 57 59 page = self.notebook.get_nth_page(page_num) 58 60 label_text = self.notebook.get_tab_label_text(page) 59 if label_text == self._last_tab:61 if label_text == name: 60 62 self.notebook.set_current_page(page_num) 63 self._last_tab = name 61 64 break 62 65 63 if self._new_item: 64 #self.notebook.grab_focus() 65 self._new_item = False 66 67 66 68 67 def clear_all_tabs(self): 69 68 """ … … 108 107 @component.adapter(Presentation, IElementCreateEvent) 109 108 def _new_item_on_diagram(self, item, event): 110 self._new_item = True 111 self.notebook.set_current_page(0) 112 109 if self.notebook.get_n_pages() > 0: 110 self.select_tab(self._default_tab) 111 page = self.notebook.get_nth_page(self.notebook.get_current_page()) 112 default = page.get_data('default') 113 if default: 114 default.grab_focus() 115 113 116 114 117 # vim:sw=4:et:ai
