pypreviousmethod.java

来自「Python Development Environment (Python I」· Java 代码 · 共 47 行

JAVA
47
字号
/*
 * @author: fabioz
 * Created: February 2004
 * License: Common Public License v1.0
 */

package org.python.pydev.editor.actions;

import java.util.Iterator;

import org.python.pydev.parser.jython.SimpleNode;
import org.python.pydev.parser.visitors.scope.ASTEntry;
import org.python.pydev.parser.visitors.scope.EasyASTIteratorVisitor;


/**
 * @author Fabio Zadrozny
 */
public class PyPreviousMethod extends PyMethodNavigation {

	// me is the last node w
    public ASTEntry getSelect(SimpleNode ast, int line) {
        EasyASTIteratorVisitor visitor = EasyASTIteratorVisitor.create(ast);
        Iterator<ASTEntry> classesAndMethodsIterator = visitor.getClassesAndMethodsIterator();
        ASTEntry last = null;
        
        while(classesAndMethodsIterator.hasNext()){
            ASTEntry entry = classesAndMethodsIterator.next();
            SimpleNode nameNode = getNameNode(entry);
            if(nameNode.beginLine-1 < line ){
                last = entry;
            }
        }
        return last;
    }

    @Override
    protected boolean goToEndOfFile() {
        return false;
    }

    @Override
    protected boolean goToStartOfFile() {
        return true;
    }
}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?