aha, a cleaner way to do that

This commit is contained in:
Ben Fry
2015-01-22 11:16:52 -05:00
parent 378f43de44
commit 30a1c14beb
3 changed files with 6 additions and 10 deletions

View File

@@ -42,7 +42,7 @@ public class JavaEditor extends Editor {
protected JEditTextArea createTextArea() {
return new JEditTextArea(new PdeTextAreaDefaults(mode), new PdeKeyListener(this));
return new JEditTextArea(new PdeTextAreaDefaults(mode), new JavaInputHandler(this));
/*
return new JEditTextArea(new PdeTextAreaDefaults(mode), new PdeInputHandler()) {
// Forwards key events directly to the input handler. This is slightly

View File

@@ -39,16 +39,15 @@ import java.util.Arrays;
* that we'd love to replace with a smarter parser/formatter, rather than
* continuing to hack this class.
*/
public class PdeKeyListener extends PdeInputHandler {
public class JavaInputHandler extends PdeInputHandler {
private Editor editor;
private JEditTextArea textarea;
/** ctrl-alt on windows and linux, cmd-alt on mac os x */
static final int CTRL_ALT = ActionEvent.ALT_MASK |
Toolkit.getDefaultToolkit().getMenuShortcutKeyMask();
public PdeKeyListener(Editor editor) {
public JavaInputHandler(Editor editor) {
this.editor = editor;
}
@@ -79,14 +78,11 @@ public class PdeKeyListener extends PdeInputHandler {
* @return true if the event has been handled (to remove it from the queue)
*/
protected boolean pressed(KeyEvent event) {
if (textarea == null) {
textarea = editor.getTextArea();
}
char c = event.getKeyChar();
int code = event.getKeyCode();
Sketch sketch = editor.getSketch();
JEditTextArea textarea = editor.getTextArea();
if ((event.getModifiers() & InputEvent.META_MASK) != 0) {
//event.consume(); // does nothing

View File

@@ -81,7 +81,7 @@ import processing.app.syntax.JEditTextArea;
import processing.app.syntax.PdeTextAreaDefaults;
import processing.core.PApplet;
import processing.mode.java.JavaEditor;
import processing.mode.java.PdeKeyListener;
import processing.mode.java.JavaInputHandler;
import processing.mode.java.pdex.ErrorBar;
import processing.mode.java.pdex.ErrorCheckerService;
import processing.mode.java.pdex.ErrorMessageSimplifier;
@@ -1303,7 +1303,7 @@ public class DebugEditor extends JavaEditor implements ActionListener {
// return new TextArea(new PdeTextAreaDefaults(mode), this);
// }
protected JEditTextArea createTextArea() {
return new TextArea(new PdeTextAreaDefaults(mode), new PdeKeyListener(this), this);
return new TextArea(new PdeTextAreaDefaults(mode), new JavaInputHandler(this), this);
/*
return new TextArea(new PdeTextAreaDefaults(mode), new PdeInputHandler(), this) {
// Forwards key events directly to the input handler. This is slightly