1 package org.antlr.works.debugger.panels; 2 3 import org.antlr.runtime.Token; 4 import org.antlr.works.debugger.Debugger; 5 import org.antlr.works.debugger.input.DBInputProcessor; 6 import org.antlr.works.debugger.input.DBInputProcessorToken; 7 import org.antlr.works.debugger.input.DBInputTextTokenInfo; 8 import org.antlr.works.prefs.AWPrefs; 9 import org.antlr.works.utils.TextPane; 10 import org.antlr.works.utils.TextUtils; 11 12 import javax.swing.*; 13 import java.awt.*; 14 44 45 public class DBInputTokenPanel implements DBInputConcretePanel { 46 47 protected TextPane inputTextPane; 48 protected JScrollPane textScrollPane; 49 protected DBInputProcessorToken processorToken; 50 51 public DBInputTokenPanel(Debugger debugger) { 52 inputTextPane = new TextPane(); 53 inputTextPane.setBackground(Color.white); 54 inputTextPane.setBorder(null); 55 inputTextPane.setFont(new Font(AWPrefs.getEditorFont(), Font.PLAIN, AWPrefs.getEditorFontSize())); 56 inputTextPane.setText(""); 57 inputTextPane.setEditable(false); 58 59 TextUtils.createTabs(inputTextPane); 60 61 processorToken = new DBInputProcessorToken(debugger, inputTextPane); 62 63 textScrollPane = new JScrollPane(inputTextPane); 64 textScrollPane.setWheelScrollingEnabled(true); 65 } 66 67 public void close() { 68 processorToken.close(); 69 } 70 71 public void stop() { 72 processorToken.stop(); 73 } 74 75 public JComponent getComponent() { 76 return textScrollPane; 77 } 78 79 public DBInputProcessor getInputProcessor() { 80 return processorToken; 81 } 82 83 public void toggleInputTextTokensBox() { 84 processorToken.setDrawTokensBox(!processorToken.isTokensBoxVisible()); 85 } 86 87 public boolean isInputTokensBoxVisible() { 88 return processorToken.isTokensBoxVisible(); 89 } 90 91 public boolean isBreakpointAtToken(Token token) { 92 return processorToken.isBreakpointAtToken(token); 93 } 94 95 public void selectToken(Token token) { 96 processorToken.selectToken(token); 97 } 98 99 public DBInputTextTokenInfo getTokenInfoForToken(Token token) { 100 return processorToken.getTokenInfoForToken(token); 101 } 102 103 public void updateOnBreakEvent() { 104 processorToken.updateOnBreakEvent(); 105 } 106 107 } 108 | Popular Tags |