/** Update raw data after change in for editor. */ void updateRaw() { updateHeadersRawData(""); ArrayList<RequestHeader> list = new ArrayList<RequestHeader>(); for (HeadersFormRow row : rows) { list.add(new RequestHeader(row.nameBox.getValue(), row.valueBox.getValue())); } updateHeadersRawData(RequestHeadersParser.headersListToString(list)); headersRawInput.setValue(headersData, true); }
/** Clear form editor with all data. */ public void clear() { // clear form panel headersFormPanel.clear(); // clear form inputs list rows.clear(); // clear current value updateHeadersRawData(""); // clear raw input headersRawInput.setValue(null, true); if (headersCodeMirror != null) { headersCodeMirror.setValue(""); } loadCodeMirrorForHeaders(); }
/** * Set raw headers data into textarea. If CodeMirror is running refresh it's instance. * * @param data */ private void updateHeadersRawData(final String data) { headersData = data; if (headersCodeMirror != null) { headersCodeMirror.setValue(data); Scheduler.get() .scheduleDeferred( new ScheduledCommand() { @Override public void execute() { headersCodeMirror.refresh(); if (RestClient.isDebug()) { Log.info("Updated headers value: " + data); } } }); } headersRawInput.setValue(headersData, true); rawEditorChanged(headersData); }
@Override public void onClick(ClickEvent event) { if (event.getSource() == includeDbScriptBox) { if (includeDbScriptBox.getValue()) { dbInstructionArea.setValue(""); dbInstructionArea.setVisible(true); } else { dbInstructionArea.setValue(""); dbInstructionArea.setVisible(false); } } else if (event.getSource() == addSurveyButton) { String group = selectionWidget.getSelectedSurveyGroupName(); List<String> name = selectionWidget.getSelectedSurveyNames(); List<Long> ids = selectionWidget.getSelectedSurveyIds(); for (int i = 0; i < name.size(); i++) { boolean alreadyThere = false; for (int j = 0; j < selectionListbox.getItemCount(); j++) { if (selectionListbox.getValue(j).equals(ids.get(i).toString())) { alreadyThere = true; break; } } if (!alreadyThere) { selectionListbox.addItem(group + ": " + name.get(i), ids.get(i).toString()); } } } else if (event.getSource() == removeButton) { List<Integer> victimList = new ArrayList<Integer>(); for (int i = 0; i < selectionListbox.getItemCount(); i++) { if (selectionListbox.isItemSelected(i)) { victimList.add(i); } } if (victimList.size() > 0) { // remove the items in descending order so we don't have to // worry about adjusting indexes as we remove Collections.sort(victimList); for (int i = victimList.size() - 1; i >= 0; i--) { selectionListbox.removeItem(victimList.get(i)); } } } else if (event.getSource() == generateFileButton) { List<Long> idList = new ArrayList<Long>(); for (int i = 0; i < selectionListbox.getItemCount(); i++) { idList.add(new Long(selectionListbox.getValue(i))); } List<String> errors = validate(); if (errors.size() == 0) { surveyService.generateBootstrapFile( idList, dbInstructionArea.getText(), notificationEmailBox.getText(), new AsyncCallback<Void>() { @Override public void onFailure(Throwable caught) { MessageDialog errDia = new MessageDialog( TEXT_CONSTANTS.error(), TEXT_CONSTANTS.errorTracePrefix() + " " + caught.getLocalizedMessage()); errDia.showCentered(); } @Override public void onSuccess(Void result) { MessageDialog dia = new MessageDialog( TEXT_CONSTANTS.requestSubmitted(), TEXT_CONSTANTS.emailWillBeSent()); dia.showCentered(); resetUI(); } }); } else { StringBuilder builder = new StringBuilder(TEXT_CONSTANTS.pleaseCorrect() + "<br><ul>"); for (String e : errors) { builder.append("<li>").append(e).append("</li>"); } builder.append("</ul>"); MessageDialog dia = new MessageDialog(TEXT_CONSTANTS.inputError(), builder.toString()); dia.showCentered(); } } }
public FunctionPlotterExample() { presets.put("id", new String[] {"-10", "10", "function(x) {\n return x;\n}"}); presets.put("sine", new String[] {"-10", "10", "function(x) {\n return Math.sin(x);\n}"}); presets.put( "taylor", new String[] { "-3", "3", "function(x) {\n return [Math.cos(x), 1 - x*x/2 + x*x*x*x/24];\n}" }); presets.put( "sawtooth", new String[] { "-10", "10", "function(x) {\n var y = 0;\n for (var i = 1; i < 20; i+=2) {\n y += Math.sin(i * x)/i;\n }\n var final = 1 - 2*(Math.abs(Math.floor(x / Math.PI)) % 2);\n return [4/Math.PI * y, final];\n}" }); initWidget(panel); panel.add(new HTML("<p><b>Equation: </b><br>")); textArea.setVisibleLines(10); textArea.setCharacterWidth(80); textArea.setValue( "function(x) {\n" + " return [0.1 * x, 0.1 * x + Math.sin(x), 0.1*x + Math.cos(x)];\n" + "}"); panel.add(textArea); presetsDD.addItem("(custom)", "custom"); presetsDD.addItem("Identity", "id"); presetsDD.addItem("Sine Wave", "sine"); presetsDD.addItem("Taylor series", "taylor"); presetsDD.addItem("Sawtooth", "sawtooth"); presetsDD.setSelectedIndex(0); presetsDD.getElement().getStyle().setDisplay(Style.Display.INLINE_BLOCK); presetsDD.addChangeHandler( (event) -> { String value = presetsDD.getSelectedValue(); if (value.equalsIgnoreCase("custom")) { return; } String[] preset = presets.get(value); fromTb.setValue(preset[0]); toTb.setValue(preset[1]); textArea.setValue(preset[2]); plot(); }); HorizontalPanel presetContainer = new HorizontalPanel(); presetContainer.add(new HTML("<b>Preset functions:</b>")); presetContainer.add(presetsDD); panel.add(presetContainer); panel.add(new HTML("<p></p>")); HorizontalPanel rangeContainer = new HorizontalPanel(); rangeContainer.add(new HTML("<b>x range:</b>")); fromTb.setVisibleLength(5); fromTb.setValue("-10"); toTb.setVisibleLength(5); toTb.setValue("10"); rangeContainer.add(fromTb); rangeContainer.add(new InlineLabel("to")); rangeContainer.add(toTb); panel.add(rangeContainer); Button plotBtn = new Button("Plot"); plotBtn.addClickHandler((ev) -> plot()); panel.add(new HTML("<p></p>")); panel.add(plotBtn); plot(); }