@@ -226,8 +226,8 @@ public boolean test(SketchController sketch) {
226
226
Runnable presentHandler ;
227
227
private Runnable runAndSaveHandler ;
228
228
private Runnable presentAndSaveHandler ;
229
- Runnable exportHandler ;
230
- private Runnable exportAppHandler ;
229
+ private UploadHandler uploadHandler ;
230
+ private UploadHandler uploadUsingProgrammerHandler ;
231
231
private Runnable timeoutUploadHandler ;
232
232
233
233
private Map <String , Tool > internalToolCache = new HashMap <String , Tool >();
@@ -1376,8 +1376,10 @@ private void resetHandlers() {
1376
1376
presentHandler = new BuildHandler (true );
1377
1377
runAndSaveHandler = new BuildHandler (false , true );
1378
1378
presentAndSaveHandler = new BuildHandler (true , true );
1379
- exportHandler = new DefaultExportHandler ();
1380
- exportAppHandler = new DefaultExportAppHandler ();
1379
+ uploadHandler = new UploadHandler ();
1380
+ uploadHandler .setUsingProgrammer (false );
1381
+ uploadUsingProgrammerHandler = new UploadHandler ();
1382
+ uploadUsingProgrammerHandler .setUsingProgrammer (true );
1381
1383
timeoutUploadHandler = new TimeoutUploadHandler ();
1382
1384
}
1383
1385
@@ -2007,13 +2009,17 @@ synchronized public void handleExport(final boolean usingProgrammer) {
2007
2009
avoidMultipleOperations = true ;
2008
2010
2009
2011
new Thread (timeoutUploadHandler ).start ();
2010
- new Thread (usingProgrammer ? exportAppHandler : exportHandler ).start ();
2012
+ new Thread (usingProgrammer ? uploadUsingProgrammerHandler : uploadHandler ).start ();
2011
2013
}
2012
2014
2013
- // DAM: in Arduino, this is upload
2014
- class DefaultExportHandler implements Runnable {
2015
- public void run () {
2015
+ class UploadHandler implements Runnable {
2016
+ boolean usingProgrammer = false ;
2017
+
2018
+ public void setUsingProgrammer (boolean usingProgrammer ) {
2019
+ this .usingProgrammer = usingProgrammer ;
2020
+ }
2016
2021
2022
+ public void run () {
2017
2023
try {
2018
2024
removeAllLineHighlights ();
2019
2025
if (serialMonitor != null ) {
@@ -2025,7 +2031,7 @@ public void run() {
2025
2031
2026
2032
uploading = true ;
2027
2033
2028
- boolean success = sketchController .exportApplet (false );
2034
+ boolean success = sketchController .exportApplet (usingProgrammer );
2029
2035
if (success ) {
2030
2036
statusNotice (tr ("Done uploading." ));
2031
2037
}
@@ -2108,55 +2114,6 @@ private void resumeOrCloseSerialPlotter() {
2108
2114
}
2109
2115
}
2110
2116
2111
- // DAM: in Arduino, this is upload (with verbose output)
2112
- class DefaultExportAppHandler implements Runnable {
2113
- public void run () {
2114
-
2115
- try {
2116
- if (serialMonitor != null ) {
2117
- serialMonitor .suspend ();
2118
- }
2119
- if (serialPlotter != null ) {
2120
- serialPlotter .suspend ();
2121
- }
2122
-
2123
- uploading = true ;
2124
-
2125
- boolean success = sketchController .exportApplet (true );
2126
- if (success ) {
2127
- statusNotice (tr ("Done uploading." ));
2128
- }
2129
- } catch (SerialNotFoundException e ) {
2130
- if (portMenu .getItemCount () == 0 ) statusError (e );
2131
- else if (serialPrompt ()) run ();
2132
- else statusNotice (tr ("Upload canceled." ));
2133
- } catch (PreferencesMapException e ) {
2134
- statusError (I18n .format (
2135
- tr ("Error while uploading: missing '{0}' configuration parameter" ),
2136
- e .getMessage ()));
2137
- } catch (RunnerException e ) {
2138
- //statusError("Error during upload.");
2139
- //e.printStackTrace();
2140
- status .unprogress ();
2141
- statusError (e );
2142
- } catch (Exception e ) {
2143
- e .printStackTrace ();
2144
- } finally {
2145
- avoidMultipleOperations = false ;
2146
- populatePortMenu ();
2147
- }
2148
- status .unprogress ();
2149
- uploading = false ;
2150
- //toolbar.clear();
2151
- toolbar .deactivateExport ();
2152
-
2153
- resumeOrCloseSerialMonitor ();
2154
- resumeOrCloseSerialPlotter ();
2155
-
2156
- base .onBoardOrPortChange ();
2157
- }
2158
- }
2159
-
2160
2117
class TimeoutUploadHandler implements Runnable {
2161
2118
2162
2119
public void run () {
0 commit comments