Пример #1
0
def parsetext(win, editor):
    if editor.edittype == 'edit' and editor.languagename == 'ruby':
        import RbParse as Parser
        nodes = Parser.parseString(editor.GetText())

        imports = nodes['import']
        for i, v in enumerate(imports):
            info, lineno = v
            win.replacenode(None, i, info, win.get_image_id('MODULE'), None, {'data':lineno}, win.get_image_id('MODULE'))
        functions = nodes['function'].values()
        functions.sort()
        for i, v in enumerate(functions):
            info, lineno = v
            win.replacenode(None, i, info, win.get_image_id('METHOD'), None,  {'data':lineno}, win.get_image_id('METHOD'))
        classes = nodes['class'].values()
        classes.sort()
        for i, c in enumerate(classes):
            _id, node = win.replacenode(None, i, c.info, win.get_image_id('CLASS_CLOSE'), win.get_image_id('CLASS_OPEN'), {'data':c.lineno},
                win.get_image_id('CLASS_CLOSE'))
            functions = c.methods.values()
            functions.sort()
            for j, v in enumerate(functions):
                info, lineno = v
                win.replacenode(node, j, info, win.get_image_id('METHOD'), None,  {'data':lineno}, win.get_image_id('METHOD'))
            win.tree.Expand(node)
Пример #2
0
def parsetext(win, editor):
    if editor.edittype == 'edit' and editor.languagename == 'ruby':
        import RbParse as Parser
        nodes = Parser.parseString(editor.GetText())

        imports = nodes['import']
        for i, v in enumerate(imports):
            info, lineno = v
            win.replacenode(None, i, info, win.get_image_id('MODULE'), None,
                            {'data': lineno}, win.get_image_id('MODULE'))
        functions = nodes['function'].values()
        functions.sort()
        for i, v in enumerate(functions):
            info, lineno = v
            win.replacenode(None, i, info, win.get_image_id('METHOD'), None,
                            {'data': lineno}, win.get_image_id('METHOD'))
        classes = nodes['class'].values()
        classes.sort()
        for i, c in enumerate(classes):
            _id, node = win.replacenode(None, i, c.info,
                                        win.get_image_id('CLASS_CLOSE'),
                                        win.get_image_id('CLASS_OPEN'),
                                        {'data': c.lineno},
                                        win.get_image_id('CLASS_CLOSE'))
            functions = c.methods.values()
            functions.sort()
            for j, v in enumerate(functions):
                info, lineno = v
                win.replacenode(node, j, info, win.get_image_id('METHOD'),
                                None, {'data': lineno},
                                win.get_image_id('METHOD'))
            win.tree.Expand(node)
Пример #3
0
def parsetext(win, editor):
    if editor.edittype == 'edit' and editor.languagename == 'ruby':
        import RbParse as Parser
        nodes = Parser.parseString(editor.GetText())

        imports = nodes['import']
        for info, lineno in imports:
            win.addnode(None, info, win.get_image_id('MODULE'), None, lineno)
        functions = nodes['function'].values()
        functions.sort()
        for info, lineno in functions:
            win.addnode(None, info, win.get_image_id('METHOD'), None,  lineno)
        classes = nodes['class'].values()
        classes.sort()
        for c in classes:
            _id, node = win.addnode(None, c.info, win.get_image_id('CLASS_CLOSE'), win.get_image_id('CLASS_OPEN'), c.lineno)
            functions = c.methods.values()
            functions.sort()
            for info, lineno in functions:
                win.addnode(node, info, win.get_image_id('METHOD'), None,  lineno)
            win.tree.Expand(node)