mirror of
https://github.com/processing/processing4.git
synced 2026-06-16 04:26:26 +02:00
more ErrorTable into processing.app.ui
This commit is contained in:
@@ -110,7 +110,7 @@ public abstract class Editor extends JFrame implements RunnerListener {
|
||||
protected JSplitPane splitPane;
|
||||
protected EditorFooter footer;
|
||||
protected EditorConsole console;
|
||||
// protected EditorLineStatus lineStatus;
|
||||
protected ErrorTable errorTable;
|
||||
|
||||
// currently opened program
|
||||
protected Sketch sketch;
|
||||
@@ -433,8 +433,7 @@ public abstract class Editor extends JFrame implements RunnerListener {
|
||||
|
||||
public EditorFooter createFooter() {
|
||||
EditorFooter ef = new EditorFooter(this);
|
||||
console = new EditorConsole(this);
|
||||
ef.addPanel(console, Language.text("editor.footer.console"), "/lib/footer/console");
|
||||
addConsole(); // console is required
|
||||
return ef;
|
||||
|
||||
/*
|
||||
@@ -457,6 +456,21 @@ public abstract class Editor extends JFrame implements RunnerListener {
|
||||
}
|
||||
|
||||
|
||||
public void addConsole() {
|
||||
console = new EditorConsole(this);
|
||||
footer.addPanel(console, Language.text("editor.footer.console"), "/lib/footer/console");
|
||||
}
|
||||
|
||||
|
||||
public void addErrorTable() {
|
||||
JScrollPane errorTableScrollPane = new JScrollPane();
|
||||
errorTable = new ErrorTable(this);
|
||||
errorTableScrollPane.setBorder(BorderFactory.createEmptyBorder());
|
||||
errorTableScrollPane.setViewportView(errorTable);
|
||||
footer.addPanel(errorTableScrollPane, Language.text("editor.footer.errors"), "/lib/footer/error");
|
||||
}
|
||||
|
||||
|
||||
public EditorState getEditorState() {
|
||||
return state;
|
||||
}
|
||||
@@ -2900,6 +2914,11 @@ public abstract class Editor extends JFrame implements RunnerListener {
|
||||
// . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
|
||||
|
||||
|
||||
public ErrorTable getErrorTable() {
|
||||
return errorTable;
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* Called by ErrorTable when a row is selected. Action taken is specific
|
||||
* to each Mode, based on the object passed in.
|
||||
|
||||
+16
-25
@@ -18,7 +18,7 @@
|
||||
51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
|
||||
*/
|
||||
|
||||
package processing.mode.java.pdex;
|
||||
package processing.app.ui;
|
||||
|
||||
import java.awt.Color;
|
||||
import java.awt.Component;
|
||||
@@ -43,7 +43,7 @@ import processing.app.Mode;
|
||||
import processing.app.ui.Editor;
|
||||
|
||||
|
||||
public class XQErrorTable extends JTable {
|
||||
public class ErrorTable extends JTable {
|
||||
Editor editor;
|
||||
|
||||
static final String[] columnNames = {
|
||||
@@ -67,28 +67,7 @@ public class XQErrorTable extends JTable {
|
||||
Color rowBgColor;
|
||||
|
||||
|
||||
/*
|
||||
class Item {
|
||||
String message;
|
||||
String filename;
|
||||
int line;
|
||||
}
|
||||
*/
|
||||
|
||||
|
||||
public void clear() {
|
||||
DefaultTableModel dtm = (DefaultTableModel) getModel();
|
||||
dtm.setRowCount(0);
|
||||
}
|
||||
|
||||
|
||||
public void append(Object data, String message, String filename, String line) {
|
||||
DefaultTableModel dtm = (DefaultTableModel) getModel();
|
||||
dtm.addRow(new Object[] { data, message, filename, line });
|
||||
}
|
||||
|
||||
|
||||
public XQErrorTable(final Editor editor) {
|
||||
public ErrorTable(final Editor editor) {
|
||||
super(new DefaultTableModel(columnNames, 0));
|
||||
|
||||
this.editor = editor;
|
||||
@@ -114,7 +93,7 @@ public class XQErrorTable extends JTable {
|
||||
@Override
|
||||
synchronized public void mouseClicked(MouseEvent e) {
|
||||
try {
|
||||
int row = ((XQErrorTable) e.getSource()).getSelectedRow();
|
||||
int row = ((ErrorTable) e.getSource()).getSelectedRow();
|
||||
Object data = getModel().getValueAt(row, 0);
|
||||
int clickCount = e.getClickCount();
|
||||
if (clickCount == 1) {
|
||||
@@ -190,6 +169,18 @@ public class XQErrorTable extends JTable {
|
||||
}
|
||||
|
||||
|
||||
public void clearRows() {
|
||||
DefaultTableModel dtm = (DefaultTableModel) getModel();
|
||||
dtm.setRowCount(0);
|
||||
}
|
||||
|
||||
|
||||
public void addRow(Object data, String message, String filename, String line) {
|
||||
DefaultTableModel dtm = (DefaultTableModel) getModel();
|
||||
dtm.addRow(new Object[] { data, message, filename, line });
|
||||
}
|
||||
|
||||
|
||||
@Override
|
||||
public boolean isCellEditable(int rowIndex, int colIndex) {
|
||||
return false; // Disallow the editing of any cell
|
||||
@@ -14,10 +14,7 @@ import java.util.logging.Logger;
|
||||
|
||||
import javax.swing.*;
|
||||
import javax.swing.border.*;
|
||||
import javax.swing.event.ListSelectionEvent;
|
||||
import javax.swing.event.ListSelectionListener;
|
||||
import javax.swing.event.MenuEvent;
|
||||
import javax.swing.event.MenuListener;
|
||||
import javax.swing.event.*;
|
||||
import javax.swing.text.BadLocationException;
|
||||
import javax.swing.text.Document;
|
||||
|
||||
@@ -26,23 +23,11 @@ import org.eclipse.jdt.core.compiler.IProblem;
|
||||
import processing.core.PApplet;
|
||||
import processing.data.StringList;
|
||||
import processing.app.*;
|
||||
import processing.app.contrib.AvailableContribution;
|
||||
import processing.app.contrib.Contribution;
|
||||
import processing.app.contrib.ContributionListing;
|
||||
import processing.app.contrib.ContributionManager;
|
||||
import processing.app.contrib.ToolContribution;
|
||||
import processing.app.contrib.*;
|
||||
import processing.app.syntax.JEditTextArea;
|
||||
import processing.app.syntax.PdeTextAreaDefaults;
|
||||
import processing.app.ui.About;
|
||||
import processing.app.ui.ColorChooser;
|
||||
import processing.app.ui.Editor;
|
||||
import processing.app.ui.EditorException;
|
||||
import processing.app.ui.EditorFooter;
|
||||
import processing.app.ui.EditorHeader;
|
||||
import processing.app.ui.EditorState;
|
||||
import processing.app.ui.EditorToolbar;
|
||||
import processing.app.ui.*;
|
||||
import processing.app.ui.Toolkit;
|
||||
import processing.app.ui.Welcome;
|
||||
import processing.mode.java.debug.LineBreakpoint;
|
||||
import processing.mode.java.debug.LineHighlight;
|
||||
import processing.mode.java.debug.LineID;
|
||||
@@ -51,7 +36,6 @@ import processing.mode.java.pdex.LineMarker;
|
||||
import processing.mode.java.pdex.ErrorMessageSimplifier;
|
||||
import processing.mode.java.pdex.JavaTextArea;
|
||||
import processing.mode.java.pdex.Problem;
|
||||
import processing.mode.java.pdex.XQErrorTable;
|
||||
import processing.mode.java.runner.Runner;
|
||||
import processing.mode.java.tweak.ColorControlBox;
|
||||
import processing.mode.java.tweak.Handle;
|
||||
@@ -87,8 +71,6 @@ public class JavaEditor extends Editor {
|
||||
|
||||
private MarkerColumn errorColumn;
|
||||
|
||||
protected JScrollPane errorTableScrollPane;
|
||||
protected XQErrorTable errorTable;
|
||||
static final int ERROR_TAB_INDEX = 0;
|
||||
|
||||
private boolean hasJavaTabs;
|
||||
@@ -212,17 +194,7 @@ public class JavaEditor extends Editor {
|
||||
@Override
|
||||
public EditorFooter createFooter() {
|
||||
EditorFooter footer = super.createFooter();
|
||||
|
||||
// Adding Error Table in a scroll pane
|
||||
errorTableScrollPane = new JScrollPane();
|
||||
errorTable = new XQErrorTable(this);
|
||||
// errorTableScrollPane.setBorder(new EmptyBorder(2, 2, 2, 2));
|
||||
// errorTableScrollPane.setBorder(new EtchedBorder());
|
||||
errorTableScrollPane.setBorder(BorderFactory.createEmptyBorder());
|
||||
// errorTableScrollPane.setBorder(new EmptyBorder(0, Editor.LEFT_GUTTER, 0, 0));
|
||||
errorTableScrollPane.setViewportView(errorTable);
|
||||
footer.addPanel(errorTableScrollPane, Language.text("editor.footer.errors"), "/lib/footer/error");
|
||||
|
||||
addErrorTable();
|
||||
return footer;
|
||||
}
|
||||
|
||||
@@ -2561,11 +2533,6 @@ public class JavaEditor extends Editor {
|
||||
// }
|
||||
|
||||
|
||||
public XQErrorTable getErrorTable() {
|
||||
return errorTable;
|
||||
}
|
||||
|
||||
|
||||
public void errorTableClick(Object item) {
|
||||
Problem p = (Problem) item;
|
||||
errorCheckerService.scrollToErrorLine(p);
|
||||
@@ -2680,7 +2647,7 @@ public class JavaEditor extends Editor {
|
||||
* the error button at the bottom of the PDE
|
||||
*/
|
||||
public void updateErrorToggle() {
|
||||
footer.setNotification(errorTableScrollPane,
|
||||
footer.setNotification(errorTable.getParent(), //errorTableScrollPane,
|
||||
JavaMode.errorCheckEnabled &&
|
||||
errorCheckerService.hasErrors());
|
||||
// String title = Language.text("editor.footer.errors");
|
||||
|
||||
@@ -56,6 +56,7 @@ import processing.app.Util;
|
||||
import processing.app.syntax.SyntaxDocument;
|
||||
import processing.app.ui.Editor;
|
||||
import processing.app.ui.EditorStatus;
|
||||
import processing.app.ui.ErrorTable;
|
||||
import processing.core.PApplet;
|
||||
import processing.mode.java.JavaMode;
|
||||
import processing.mode.java.JavaEditor;
|
||||
@@ -918,8 +919,8 @@ public class ErrorCheckerService implements Runnable {
|
||||
*/
|
||||
public void updateErrorTable() {
|
||||
try {
|
||||
XQErrorTable table = editor.getErrorTable();
|
||||
table.clear();
|
||||
ErrorTable table = editor.getErrorTable();
|
||||
table.clearRows();
|
||||
|
||||
// String[][] errorData = new String[problemsList.size()][3];
|
||||
// int index = 0;
|
||||
@@ -943,7 +944,7 @@ public class ErrorCheckerService implements Runnable {
|
||||
}
|
||||
}
|
||||
|
||||
table.append(p, message,
|
||||
table.addRow(p, message,
|
||||
sketch.getCode(p.getTabIndex()).getPrettyName(),
|
||||
Integer.toString(p.getLineNumber() + 1));
|
||||
// Added +1 because lineNumbers internally are 0-indexed
|
||||
|
||||
Reference in New Issue
Block a user