Add autocomplete for shell input

master
skylarmt 10 years ago
parent c5e1f7e02a
commit 853451cedc

@ -33,6 +33,8 @@ import java.awt.event.KeyEvent;
import javax.swing.JOptionPane; import javax.swing.JOptionPane;
import javax.swing.SwingUtilities; import javax.swing.SwingUtilities;
import javax.swing.text.DefaultCaret; import javax.swing.text.DefaultCaret;
import org.fife.ui.autocomplete.AutoCompletion;
import org.fife.ui.autocomplete.CompletionProvider;
/** /**
* *
@ -45,6 +47,11 @@ public class Interpreter extends javax.swing.JInternalFrame {
private int historyIndex = 0; // For going back in time and keeping things straight private int historyIndex = 0; // For going back in time and keeping things straight
private String lang = "javascript"; private String lang = "javascript";
private Object ans = 0; private Object ans = 0;
private CompletionProvider jscomp = new CodeCompleter("js").getProvider();
private CompletionProvider pycomp = new CodeCompleter("py").getProvider();
private AutoCompletion jsac = new AutoCompletion(jscomp);
private AutoCompletion pyac = new AutoCompletion(pycomp);
/** /**
* Creates new form Interpreter * Creates new form Interpreter
@ -62,10 +69,13 @@ public class Interpreter extends javax.swing.JInternalFrame {
} }
cr = new CodeRunner(lang, true); cr = new CodeRunner(lang, true);
// Set selected lang menu // Setup language
if (lang.equals("python")) { if (lang.equals("python")) {
javascriptMenu.setSelected(false); javascriptMenu.setSelected(false);
pythonMenu.setSelected(true); pythonMenu.setSelected(true);
pyac.install(inputBox);
} else {
jsac.install(inputBox);
} }
// Set font // Set font

Loading…
Cancel
Save