mirror of
https://github.com/processing/processing4.git
synced 2026-02-12 18:10:43 +01:00
grab contents of edit area before run
This commit is contained in:
@@ -64,7 +64,8 @@ class AndroidBuild extends JavaBuild {
|
||||
|
||||
manifest = new Manifest(sketch);
|
||||
// grab code from current editing window (GUI only)
|
||||
sketch.prepareBuild(null);
|
||||
// prepareExport(null);
|
||||
|
||||
// build the preproc and get to work
|
||||
AndroidPreprocessor preproc = new AndroidPreprocessor(sketch, getPackageName());
|
||||
if (!preproc.parseSketchSize()) {
|
||||
|
||||
@@ -510,6 +510,7 @@ public class AndroidEditor extends JavaEditor implements DeviceListener {
|
||||
* Build the sketch and run it inside an emulator with the debugger.
|
||||
*/
|
||||
public void handleRunEmulator() {
|
||||
prepareRun();
|
||||
AVD.ensureEclairAVD(sdk);
|
||||
try {
|
||||
runSketchOnDevice(Environment.getInstance().getEmulator(), "debug");
|
||||
|
||||
@@ -48,6 +48,7 @@ public class JavaBuild {
|
||||
"(?:^|\\s|;)package\\s+(\\S+)\\;";
|
||||
|
||||
protected Sketch sketch;
|
||||
protected Mode mode;
|
||||
|
||||
// what happens in the build, stays in the build.
|
||||
// (which is to say that everything below this line, stays within this class)
|
||||
@@ -82,6 +83,7 @@ public class JavaBuild {
|
||||
|
||||
public JavaBuild(Sketch sketch) {
|
||||
this.sketch = sketch;
|
||||
this.mode = sketch.getMode();
|
||||
}
|
||||
|
||||
|
||||
@@ -383,7 +385,7 @@ public class JavaBuild {
|
||||
int dot = item.lastIndexOf('.');
|
||||
// http://dev.processing.org/bugs/show_bug.cgi?id=1145
|
||||
String entry = (dot == -1) ? item : item.substring(0, dot);
|
||||
Library library = sketch.getMode().getLibrary(entry);
|
||||
Library library = mode.getLibrary(entry);
|
||||
|
||||
if (library != null) {
|
||||
if (!importedLibraries.contains(library)) {
|
||||
@@ -658,7 +660,8 @@ public class JavaBuild {
|
||||
* Handle export to applet.
|
||||
*/
|
||||
public boolean exportApplet(File appletFolder) throws SketchException, IOException {
|
||||
sketch.prepareBuild(appletFolder);
|
||||
mode.prepareExportFolder(appletFolder);
|
||||
|
||||
srcFolder = sketch.makeTempFolder();
|
||||
binFolder = sketch.makeTempFolder();
|
||||
String foundName = build(srcFolder, binFolder);
|
||||
@@ -926,7 +929,6 @@ public class JavaBuild {
|
||||
if (renderer.equals("OPENGL")) {
|
||||
openglApplet = true;
|
||||
}
|
||||
Mode mode = sketch.getMode();
|
||||
if (is == null) {
|
||||
if (openglApplet) {
|
||||
is = mode.getContentStream("applet/template-opengl.html");
|
||||
@@ -1070,7 +1072,8 @@ public class JavaBuild {
|
||||
int exportPlatform,
|
||||
int exportBits) throws IOException, SketchException {
|
||||
File destFolder = new File(destPath);
|
||||
sketch.prepareBuild(destFolder);
|
||||
// sketch.prepareBuild(destFolder);
|
||||
mode.prepareExportFolder(destFolder);
|
||||
|
||||
// build the sketch
|
||||
File srcFolder = sketch.makeTempFolder();
|
||||
@@ -1097,8 +1100,6 @@ public class JavaBuild {
|
||||
|
||||
/// where all the skeleton info lives
|
||||
|
||||
Mode mode = sketch.getMode();
|
||||
|
||||
/// on macosx, need to copy .app skeleton since that's
|
||||
/// also where the jar files will be placed
|
||||
File dotAppFolder = null;
|
||||
|
||||
@@ -1,37 +1,15 @@
|
||||
package processing.mode.java;
|
||||
|
||||
import java.awt.Component;
|
||||
import java.awt.Dimension;
|
||||
import java.awt.Rectangle;
|
||||
import java.awt.event.ActionEvent;
|
||||
import java.awt.event.ActionListener;
|
||||
import java.awt.event.ItemEvent;
|
||||
import java.awt.event.ItemListener;
|
||||
import java.beans.PropertyChangeEvent;
|
||||
import java.beans.PropertyChangeListener;
|
||||
import java.io.File;
|
||||
import java.io.IOException;
|
||||
import java.awt.*;
|
||||
import java.awt.event.*;
|
||||
import java.beans.*;
|
||||
import java.io.*;
|
||||
|
||||
import javax.swing.Box;
|
||||
import javax.swing.BoxLayout;
|
||||
import javax.swing.JCheckBox;
|
||||
import javax.swing.JDialog;
|
||||
import javax.swing.JLabel;
|
||||
import javax.swing.JMenu;
|
||||
import javax.swing.JMenuItem;
|
||||
import javax.swing.JOptionPane;
|
||||
import javax.swing.JPanel;
|
||||
import javax.swing.SwingConstants;
|
||||
import javax.swing.border.EmptyBorder;
|
||||
import javax.swing.border.TitledBorder;
|
||||
import javax.swing.*;
|
||||
import javax.swing.border.*;
|
||||
|
||||
import processing.app.*;
|
||||
|
||||
import processing.app.Base;
|
||||
import processing.app.Editor;
|
||||
import processing.app.EditorToolbar;
|
||||
import processing.app.Formatter;
|
||||
import processing.app.Mode;
|
||||
import processing.app.Preferences;
|
||||
import processing.app.SketchException;
|
||||
|
||||
public class JavaEditor extends Editor {
|
||||
JavaMode jmode;
|
||||
@@ -481,24 +459,11 @@ public class JavaEditor extends Editor {
|
||||
}
|
||||
return true;
|
||||
}
|
||||
|
||||
|
||||
protected void prepareRun() {
|
||||
internalCloseRunner();
|
||||
toolbar.activate(JavaToolbar.RUN);
|
||||
statusEmpty();
|
||||
|
||||
// do this to advance/clear the terminal window / dos prompt / etc
|
||||
for (int i = 0; i < 10; i++) System.out.println();
|
||||
|
||||
// clear the console on each run, unless the user doesn't want to
|
||||
if (Preferences.getBoolean("console.auto_clear")) {
|
||||
console.clear();
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
public void handleRun() {
|
||||
toolbar.activate(JavaToolbar.RUN);
|
||||
|
||||
prepareRun();
|
||||
try {
|
||||
jmode.handleRun(sketch, this);
|
||||
@@ -509,6 +474,8 @@ public class JavaEditor extends Editor {
|
||||
|
||||
|
||||
public void handlePresent() {
|
||||
toolbar.activate(JavaToolbar.RUN);
|
||||
|
||||
prepareRun();
|
||||
try {
|
||||
jmode.handlePresent(sketch, this);
|
||||
|
||||
Reference in New Issue
Block a user