Changeset 1186:469f4d29219f
- 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:
-
Legend:
- Unmodified
- Added
- Removed
-
|
r1185
|
r1186
|
|
| 169 | 169 | self.source_tree.set_columns( |
| 170 | 170 | [ |
| 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), |
| 174 | 177 | ] |
| 175 | 178 | ) |
| … |
… |
|
| 178 | 181 | self.source_tree, |
| 179 | 182 | [ |
| 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')), |
| 183 | 186 | ], |
| 184 | | 'linenumber' |
| | 187 | 'sort_hack' |
| 185 | 188 | ) |
| 186 | 189 | self.sort_box.show() |
| … |
… |
|
| 197 | 200 | |
| 198 | 201 | 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) |
| 199 | 206 | self.svc.boss.editor.cmd('goto_line', line=item.linenumber) |
| 200 | | |
| | 207 | self.svc.boss.editor.cmd('grab_focus') |
| | 208 | |
| | 209 | |
| | 210 | from ropebrowser import ModuleParser |
| 201 | 211 | |
| 202 | 212 | class PythonBrowser(object): |
| … |
… |
|
| 223 | 233 | |
| 224 | 234 | 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) |
| 230 | 237 | |
| 231 | 238 | def check(self, document): |
| 232 | | return pythonparser.get_nodes_from_string(document.content) |
| | 239 | mp = ModuleParser(document.filename) |
| | 240 | return mp.get_nodes() |
| 233 | 241 | |
| 234 | 242 | def add_view_node(self, node, parent): |
| … |
… |
|
| 237 | 245 | def get_view(self): |
| 238 | 246 | return self._view |
| | 247 | |
| | 248 | |
| | 249 | |
| | 250 | |
| 239 | 251 | |
| 240 | 252 | |