Changeset 1291

Show
Ignore:
Timestamp:
05/21/07 20:52:12 (1 year ago)
Author:
arj..@yirdis.nl
Message:

removed obsolete action files
toggle sensitivity of some actions
removed MainWindow?'s get_model() and get_tree_view() (use properties)

Files:

Legend:

Unmodified
Added
Removed
Modified
Copied
Moved
  • gaphor/trunk/TODO

    r1262 r1291  
    77 Use a more recent version 
    88 
    9  - Placement actions should be instantiated on a per-view basis. the view's 
    10    action_group should be added/removed when visible/hidden. 
    11  
    12  - Toolbox should proxy gtk.Action in stead of using the Menu Factory. 
    13  
    14  - fix settings for new actions (PlacementEvent?) by using subscribtions or handlers. 
    15  
    16  - filename should not be part of the main window 
    17    Is it a transient property? 
     9 - Popups for diagram items should be aranged through 
     10   <popup action='<class>-item-popup'>..</>. 
     11     - popups is a UI thing. Create adapters? 
     12     - Separate service for stereotype handling  
     13     - popups should be aware of the cursor position (e.g. near the end of a 
     14       line). (+1 for adapters) 
     15     - ... 
    1816 
    1917 - Load / save regression testing 
  • gaphor/trunk/gaphor/services/filemanager.py

    r1280 r1291  
    160160            # Let this be handled by the main window itself: 
    161161            #self._window.set_message('Model loaded successfully') 
    162             model = main_window.get_model() 
    163             view = main_window.get_tree_view() 
     162            model = main_window.tree_model 
     163            view = main_window.tree_view 
    164164 
    165165            self.filename = filename 
  • gaphor/trunk/gaphor/ui/diagramtools.py

    r1283 r1291  
    8989            return True 
    9090        elif handle and handle.connected_to: 
    91             #adapter = component.queryMultiAdapter((handle.connected_to, item), IConnect) 
    92             #adapter.disconnect(handle) 
    9391            handle.disconnect() 
    9492        return False 
     
    196194 
    197195    def _on_key_press_event(self, widget, event, buffer, editor): 
    198         #self. 
    199196        if event.keyval == gtk.keysyms.Return: 
    200197            pass 
     
    221218                                           handle_index=handle_index) 
    222219        self.after_handler = after_handler 
    223         self.is_released = False 
    224220        self._tx = None 
    225221 
    226222    def on_button_press(self, context, event): 
    227223        self._tx = Transaction() 
    228         self.is_released = False 
    229224        view = context.view 
    230225        view.unselect_all() 
     
    243238             
    244239    def on_button_release(self, context, event): 
    245         self.is_released = True 
    246240        try: 
    247241            if self.after_handler: 
  • gaphor/trunk/gaphor/ui/mainwindow.py

    r1290 r1291  
    6767          </menu> 
    6868          <menu action="diagram"> 
     69            <menuitem action="tree-view-create-diagram" /> 
     70            <menuitem action="tree-view-delete-diagram" /> 
     71            <separator /> 
    6972            <placeholder name="primary" /> 
    7073            <placeholder name="secondary" /> 
     
    123126        self._tab_ui_settings = None 
    124127 
    125     def get_model(self): 
    126         """ 
    127         Return the gtk.TreeModel associated with the main window 
    128         (shown on the left side in a TreeView). 
    129         """ 
    130         return self._tree_view.get_model() 
    131  
    132128    tree_model = property(lambda s: s.tree_view.get_model()) 
    133  
    134     def get_tree_view(self): 
    135         """ 
    136         Get the gtk.TreeView widget that visualized the TreeModel. 
    137         See also get_model(). 
    138         """ 
    139         return self._tree_view 
    140129 
    141130    tree_view = property(lambda s: s._tree_view) 
     
    231220        view.connect_after('event-after', self._on_view_event) 
    232221        view.connect('row-activated', self._on_view_row_activated) 
    233         #view.connect_after('cursor-changed', self._on_view_cursor_changed) 
     222        view.connect_after('cursor-changed', self._on_view_cursor_changed) 
    234223 
    235224        vbox = gtk.VBox() 
     
    247236 
    248237        notebook.connect_after('switch-page', self._on_notebook_switch_page) 
     238        notebook.connect_after('page-removed', self._on_notebook_page_removed) 
    249239 
    250240        self.objectInspector = ObjectInspector() 
     
    370360        a Diagram). 
    371361        """ 
    372         path = self.get_model().path_from_element(element) 
    373         #log.debug("PATH = %s" % path) 
     362        path = self.tree_model.path_from_element(element) 
    374363        # Expand the first row: 
    375         self.get_tree_view().expand_row(path[:-1], False) 
    376         # Select the diagram, so it can be opened by the OpenModelElement action 
    377         selection = self.get_tree_view().get_selection() 
     364        self._tree_view.expand_row(path[:-1], False) 
     365        selection = self._tree_view.get_selection() 
    378366        selection.select_path(path) 
    379         #self.action_manager.execute('SelectRow') 
    380  
     367        self._on_view_cursor_changed(self._tree_view) 
    381368 
    382369    # Signal callbacks: 
     
    414401        self.action_manager.execute('tree-view-open') 
    415402 
    416     #def _on_view_cursor_changed(self, view): 
    417     #    """ 
    418     #    Another row is selected, execute a dummy action. 
    419     #    """ 
    420     #    #self.action_manager.execute('SelectRow') 
    421     #    pass 
     403    def _on_view_cursor_changed(self, view): 
     404        """ 
     405        Another row is selected, execute a dummy action. 
     406        """ 
     407        element = view.get_selected_element() 
     408        self.action_group.get_action('tree-view-create-diagram').props.sensitive = isinstance(element, UML.Package) 
     409        self.action_group.get_action('tree-view-open').props.sensitive = isinstance(element, UML.Diagram) 
    422410 
    423411    def _insensivate_toolbox(self): 
     
    425413            button.set_property('sensitive', False) 
    426414 
    427     def _on_notebook_switch_page(self, notebook, tab, page_num): 
    428         """ 
    429         Another page (tab) is put on the front of the diagram notebook. 
    430         A dummy action is executed. 
    431         """ 
    432         log.debug('Switching page to %d' % page_num) 
     415    def _on_notebook_page_removed(self, notebook, tab, page_num): 
    433416        if self._tab_ui_settings: 
    434417            action_group, ui_id = self._tab_ui_settings 
     
    436419            self.ui_manager.remove_ui(ui_id) 
    437420            self._insensivate_toolbox() 
     421            self._tab_ui_settings = None 
     422 
     423    def _on_notebook_switch_page(self, notebook, tab, page_num): 
     424        """ 
     425        Another page (tab) is put on the front of the diagram notebook. 
     426        A dummy action is executed. 
     427        """ 
     428        if self._tab_ui_settings: 
     429            action_group, ui_id = self._tab_ui_settings 
     430            self.ui_manager.remove_action_group(action_group) 
     431            self.ui_manager.remove_ui(ui_id) 
     432            self._tab_ui_settings = None 
    438433 
    439434        content = self.notebook.get_nth_page(page_num) 
     
    473468    @action(name='tree-view-rename', label=_('Rename')) 
    474469    def tree_view_rename_selected(self): 
    475         view = self.get_tree_view() 
     470        view = self._tree_view 
    476471        element = view.get_selected_element() 
    477         path = view.get_model().path_from_element(element) 
     472        path = view.tree_model.path_from_element(element) 
    478473        column = view.get_column(0) 
    479474        cell = column.get_cell_renderers()[1] 
     
    512507    @action(name='tree-view-refresh', label=_('_Refresh')) 
    513508    def tree_view_refresh(self): 
    514         self._tree_view.get_model().refresh() 
     509        self._tree_model.refresh() 
    515510 
    516511