Changeset 1186:469f4d29219f

Show
Ignore:
Timestamp:
06/18/08 00:09:25 (3 months ago)
Author:
Ali Afshar <aafshar@…>
Message:

Updated python browser to use rope.

Location:
pida-plugins/python
Files:
1 added
1 modified

Legend:

Unmodified
Added
Removed
  • pida-plugins/python/python.py

    r1185 r1186  
    169169        self.source_tree.set_columns( 
    170170            [ 
    171                 Column('linenumber'), 
    172                 Column('ctype_markup', use_markup=True), 
    173                 Column('nodename_markup', use_markup=True), 
     171                #Column('linenumber'), 
     172                #Column('ctype_markup', use_markup=True), 
     173                #Column('nodename_markup', use_markup=True), 
     174                Column('rendered', use_markup=True, expand=True), 
     175                Column('sort_hack', visible=False), 
     176                Column('line_sort_hack', visible=False), 
    174177            ] 
    175178        ) 
     
    178181            self.source_tree, 
    179182            [ 
    180                 ('linenumber', _('Line Number')), 
    181                 ('nodename', _('Name')), 
    182                 ('nodetype', _('Type')), 
     183                ('sort_hack', _('Alphabetical by type')), 
     184                ('line_sort_hack', _('Line Number')), 
     185                ('name', _('Name')), 
    183186            ], 
    184             'linenumber' 
     187            'sort_hack' 
    185188        ) 
    186189        self.sort_box.show() 
     
    197200 
    198201    def on_source_tree__double_click(self, tv, item): 
     202        if item.linenumber is None: 
     203            return 
     204        if item.filename is not None: 
     205            self.svc.boss.cmd('buffer', 'open_file', file_name=item.filename) 
    199206        self.svc.boss.editor.cmd('goto_line', line=item.linenumber) 
    200  
     207        self.svc.boss.editor.cmd('grab_focus') 
     208 
     209 
     210from ropebrowser import ModuleParser 
    201211 
    202212class PythonBrowser(object): 
     
    223233 
    224234    def check_current(self): 
    225         root_node = self.check(self._current) 
    226         for child, parent in root_node.get_recursive_children(): 
    227             if parent is root_node: 
    228                 parent = None 
    229             yield (child, parent) 
     235        for node, parent in self.check(self._current): 
     236            yield (node, parent) 
    230237 
    231238    def check(self, document): 
    232         return pythonparser.get_nodes_from_string(document.content) 
     239        mp = ModuleParser(document.filename) 
     240        return mp.get_nodes() 
    233241 
    234242    def add_view_node(self, node, parent): 
     
    237245    def get_view(self): 
    238246        return self._view 
     247 
     248 
     249 
     250 
    239251 
    240252