From 5a6af2cf02dbfb14f3b44ffeaeebe6d77c790a89 Mon Sep 17 00:00:00 2001 From: Fulvio Ieva Date: Thu, 24 Jul 2014 16:31:06 +0200 Subject: [PATCH 1/3] add save when verifyng and uploading #1934 --- app/src/processing/app/Editor.java | 11 ++++++++++- app/src/processing/app/Preferences.java | 16 +++++++++++++++- 2 files changed, 25 insertions(+), 2 deletions(-) diff --git a/app/src/processing/app/Editor.java b/app/src/processing/app/Editor.java index 0451e2010..fddceb83a 100644 --- a/app/src/processing/app/Editor.java +++ b/app/src/processing/app/Editor.java @@ -1887,6 +1887,11 @@ public class Editor extends JFrame implements RunnerListener { */ public void handleRun(final boolean verbose) { internalCloseRunner(); + if (Preferences.getBoolean("save.verifyUpload")) { + if (sketch.isModified()) { + handleSave(true); + } + } running = true; toolbar.activate(EditorToolbar.RUN); status.progress(_("Compiling sketch...")); @@ -2369,7 +2374,11 @@ public class Editor extends JFrame implements RunnerListener { * hitting export twice, quickly, and horking things up. */ synchronized public void handleExport(final boolean usingProgrammer) { - //if (!handleExportCheckModified()) return; + if (Preferences.getBoolean("save.verifyUpload")) { + if (sketch.isModified()) { + handleSave(true); + } + } toolbar.activate(EditorToolbar.EXPORT); console.clear(); status.progress(_("Uploading to I/O Board...")); diff --git a/app/src/processing/app/Preferences.java b/app/src/processing/app/Preferences.java index dc2b04b99..c2a1f993c 100644 --- a/app/src/processing/app/Preferences.java +++ b/app/src/processing/app/Preferences.java @@ -208,6 +208,7 @@ public class Preferences { JCheckBox updateExtensionBox; JCheckBox autoAssociateBox; JComboBox comboLanguage; + JCheckBox saveVerifyUploadBox; // the calling editor, so updates can be applied @@ -478,6 +479,15 @@ public class Preferences { autoAssociateBox.setEnabled(false); } + // [ ] save when verifying or uploading + + saveVerifyUploadBox = new JCheckBox(_("Save when verifying or uploading")); + pain.add(saveVerifyUploadBox); + d = saveVerifyUploadBox.getPreferredSize(); + saveVerifyUploadBox.setBounds(left, top, d.width + 10, d.height); + right = Math.max(right, left + d.width); + top += d.height + GUI_BETWEEN; + // More preferences are in the ... label = new JLabel(_("More preferences can be edited directly in the file")); @@ -620,7 +630,8 @@ public class Preferences { setBoolean("upload.verbose", verboseUploadBox.isSelected()); setBoolean("editor.linenumbers", displayLineNumbersBox.isSelected()); setBoolean("upload.verify", verifyUploadBox.isSelected()); - + setBoolean("save.verifyUpload", saveVerifyUploadBox.isSelected()); + // setBoolean("sketchbook.closing_last_window_quits", // closingLastQuitsBox.isSelected()); //setBoolean("sketchbook.prompt", sketchPromptBox.isSelected()); @@ -642,6 +653,7 @@ public class Preferences { setBoolean("editor.external", externalEditorBox.isSelected()); setBoolean("update.check", checkUpdatesBox.isSelected()); + setBoolean("save.verifyUpload", saveVerifyUploadBox.isSelected()); /* // was gonna use this to check memory settings, @@ -703,6 +715,8 @@ public class Preferences { setSelected(getBoolean("editor.external")); checkUpdatesBox. setSelected(getBoolean("update.check")); + saveVerifyUploadBox. + setSelected(getBoolean("save.verifyUpload")); if (autoAssociateBox != null) { autoAssociateBox. From 9a441d6dae80095a109845f80c5afb3e6beb488d Mon Sep 17 00:00:00 2001 From: Cristian Maglie Date: Sun, 9 Nov 2014 20:38:16 +0100 Subject: [PATCH 2/3] Do not auto-save on verify/upload if sketch is readonly --- app/src/processing/app/Editor.java | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/app/src/processing/app/Editor.java b/app/src/processing/app/Editor.java index fddceb83a..5791c6264 100644 --- a/app/src/processing/app/Editor.java +++ b/app/src/processing/app/Editor.java @@ -1888,7 +1888,7 @@ public class Editor extends JFrame implements RunnerListener { public void handleRun(final boolean verbose) { internalCloseRunner(); if (Preferences.getBoolean("save.verifyUpload")) { - if (sketch.isModified()) { + if (sketch.isModified() && !sketch.isReadOnly()) { handleSave(true); } } @@ -2375,7 +2375,7 @@ public class Editor extends JFrame implements RunnerListener { */ synchronized public void handleExport(final boolean usingProgrammer) { if (Preferences.getBoolean("save.verifyUpload")) { - if (sketch.isModified()) { + if (sketch.isModified() && !sketch.isReadOnly()) { handleSave(true); } } From 9a9fef808c8b384c40bb91b06d2cd88fd1574e16 Mon Sep 17 00:00:00 2001 From: Cristian Maglie Date: Sun, 9 Nov 2014 20:44:12 +0100 Subject: [PATCH 3/3] Renamed preferences 'save.verifyUpload' to 'editor.save_on_verify' --- app/src/processing/app/Editor.java | 4 ++-- app/src/processing/app/Preferences.java | 6 +++--- build/shared/lib/preferences.txt | 3 +++ 3 files changed, 8 insertions(+), 5 deletions(-) diff --git a/app/src/processing/app/Editor.java b/app/src/processing/app/Editor.java index 5791c6264..0e83ec62d 100644 --- a/app/src/processing/app/Editor.java +++ b/app/src/processing/app/Editor.java @@ -1887,7 +1887,7 @@ public class Editor extends JFrame implements RunnerListener { */ public void handleRun(final boolean verbose) { internalCloseRunner(); - if (Preferences.getBoolean("save.verifyUpload")) { + if (Preferences.getBoolean("editor.save_on_verify")) { if (sketch.isModified() && !sketch.isReadOnly()) { handleSave(true); } @@ -2374,7 +2374,7 @@ public class Editor extends JFrame implements RunnerListener { * hitting export twice, quickly, and horking things up. */ synchronized public void handleExport(final boolean usingProgrammer) { - if (Preferences.getBoolean("save.verifyUpload")) { + if (Preferences.getBoolean("editor.save_on_verify")) { if (sketch.isModified() && !sketch.isReadOnly()) { handleSave(true); } diff --git a/app/src/processing/app/Preferences.java b/app/src/processing/app/Preferences.java index c2a1f993c..8e89ba62b 100644 --- a/app/src/processing/app/Preferences.java +++ b/app/src/processing/app/Preferences.java @@ -630,7 +630,7 @@ public class Preferences { setBoolean("upload.verbose", verboseUploadBox.isSelected()); setBoolean("editor.linenumbers", displayLineNumbersBox.isSelected()); setBoolean("upload.verify", verifyUploadBox.isSelected()); - setBoolean("save.verifyUpload", saveVerifyUploadBox.isSelected()); + setBoolean("editor.save_on_verify", saveVerifyUploadBox.isSelected()); // setBoolean("sketchbook.closing_last_window_quits", // closingLastQuitsBox.isSelected()); @@ -653,7 +653,7 @@ public class Preferences { setBoolean("editor.external", externalEditorBox.isSelected()); setBoolean("update.check", checkUpdatesBox.isSelected()); - setBoolean("save.verifyUpload", saveVerifyUploadBox.isSelected()); + setBoolean("editor.save_on_verify", saveVerifyUploadBox.isSelected()); /* // was gonna use this to check memory settings, @@ -716,7 +716,7 @@ public class Preferences { checkUpdatesBox. setSelected(getBoolean("update.check")); saveVerifyUploadBox. - setSelected(getBoolean("save.verifyUpload")); + setSelected(getBoolean("editor.save_on_verify")); if (autoAssociateBox != null) { autoAssociateBox. diff --git a/build/shared/lib/preferences.txt b/build/shared/lib/preferences.txt index 784565aaa..5dfde1ce2 100644 --- a/build/shared/lib/preferences.txt +++ b/build/shared/lib/preferences.txt @@ -149,6 +149,9 @@ editor.divider.size = 0 # but keeps it from being annoyingly obtrusive editor.divider.size.windows = 2 +# automatically save sketch when verifying or uploading +editor.save_on_verify = true + # any additional java options when running externally # (for applets that are run external to the environment... # those with a code folder, or using any libraries)