+ // always do this
+ sh.initParamStore(Desktop.getUserParameterStore());
+
+ WsJobParameters jobParams = (preset == null && paramset != null
+ && paramset.size() > 0)
+ ? new WsJobParameters((ParamDatastoreI) null, sh,
+ (WsParamSetI) null, paramset)
+ : new WsJobParameters((ParamDatastoreI) null, sh,
+ preset, (List<ArgumentI>) null);
+ if (adjustingExisting)
+ {
+ jobParams.setName(MessageManager
+ .getString("label.adjusting_parameters_for_calculation"));
+ }
+ var stage = jobParams.showRunDialog();
+ return stage.thenApply((startJob) -> {
+ if (startJob)
+ {
+ WsParamSetI prset = jobParams.getPreset();
+ if (prset == null)
+ {
+ paramset = jobParams.isServiceDefaults() ? null
+ : jobParams.getJobParams();
+ this.preset = null;
+ }
+ else
+ {
+ this.preset = prset; // ((JabaPreset) prset).p;
+ paramset = null; // no user supplied parameters.
+ }
+ }
+ return startJob;
+ });
+