Example usage for com.google.gwt.user.client.ui FormPanel setEncoding

List of usage examples for com.google.gwt.user.client.ui FormPanel setEncoding

Introduction

In this page you can find the example usage for com.google.gwt.user.client.ui FormPanel setEncoding.

Prototype

public void setEncoding(String encodingType) 

Source Link

Document

Sets the encoding used for submitting this form.

Usage

From source file:org.ow2.proactive_grid_cloud_portal.rm.client.nodesource.serialization.export.file.ExportToFileHandler.java

License:Open Source License

private void configureFormPanel(FormPanel formPanel) {
    formPanel.setEncoding(FormPanel.ENCODING_MULTIPART);
    formPanel.setMethod(FormPanel.METHOD_POST);
    formPanel.setAction(GWT.getModuleBaseURL() + getFormTarget());
}

From source file:org.ow2.proactive_grid_cloud_portal.scheduler.client.SubmitWindow.java

License:Open Source License

/**
 * internal layout creation/*from   w w  w  .  jav  a2s  .co  m*/
 * 
 * <pre>
 * +- Window ------------------+
 * |+- VLayout ---------------+|
 * ||+- Label --------+       || <-- error messages
 * ||+----------------+       ||     when applicable
 * ||+- Layout --------------+||
 * |||+- FormPanel ---------+|||
 * ||||+- VerticalPanel ---+||||
 * ||||| form fields       ||||| <-- GWT form wrapped
 * ||||+-------------------+||||     in SmartGWT layout
 * |||+---------------------+|||
 * ||+-----------------------+||
 * ||+- DynamicForm ---------+||     SmartGWT form, check
 * ||| form fields           ||| <-- to enable variable edition 
 * ||+-----------------------+||
 * ||           +- IButton --+|| <-- submit button
 * ||           +------------+||
 * |+-------------------------+|
 * +---------------------------+
 * </pre>
 * 
 * If the <code>Edit variables</code> checkbox is checked,
 * the {@link UploadServlet} called by the GWT form will return the content
 * of the job descriptor, and we will create a new form to edit the
 * variables so that we may submit the job to a second servlet, {@link SubmitEditServlet}.
 * If the {@link SubmitEditServlet} submission fails, we get back in the same state
 * as before the first click to Submit
 * 
 * 
 */
private void build() {

    /* mixing GWT's native FormPanel with SmartGWT containers,
     * because SmartGWT's form somehow sucks when not using the datasource stuff
     * as a result the layout is a bit messy */

    // root page of the window
    final VLayout layout = new VLayout();
    layout.setMargin(10);
    layout.setWidth100();
    layout.setHeight100();

    // buttons 
    final HLayout buttons = new HLayout();
    buttons.setMembersMargin(5);
    buttons.setHeight(20);
    buttons.setWidth100();
    buttons.setAlign(Alignment.RIGHT);

    final IButton uploadButton = new IButton("Submit");
    uploadButton.setIcon(Images.instance.ok_16().getSafeUri().asString());

    final IButton cancelButton = new IButton("Cancel");
    cancelButton.setIcon(Images.instance.cancel_16().getSafeUri().asString());
    cancelButton.addClickHandler(new ClickHandler() {
        @Override
        public void onClick(ClickEvent event) {
            SubmitWindow.this.window.hide();
            SubmitWindow.this.destroy();
        }
    });

    buttons.setMembers(uploadButton, cancelButton);

    // holds the form fields
    VerticalPanel formContent = new VerticalPanel();
    Hidden hiddenField = new Hidden();
    hiddenField.setName("sessionId");
    hiddenField.setValue(LoginModel.getInstance().getSessionId());
    formContent.add(hiddenField);

    final FileUpload fileUpload = new FileUpload();
    fileUpload.setName("job");
    final Hidden editField = new Hidden("edit");
    editField.setValue("0");

    formContent.add(fileUpload);
    formContent.add(editField);

    // actual form      
    final FormPanel formPanel = new FormPanel();
    formPanel.setEncoding(FormPanel.ENCODING_MULTIPART);
    formPanel.setMethod(FormPanel.METHOD_POST);
    formPanel.setAction(GWT.getModuleBaseURL() + "uploader");
    formPanel.add(formContent);
    formPanel.setWidth("350px");
    formPanel.setHeight("30px");

    // wraps the GWT component so that we may show/hide it
    final HLayout formWrapper = new HLayout();
    formWrapper.setAlign(Alignment.CENTER);
    formWrapper.setHeight(30);
    formWrapper.addChild(formPanel);

    // error messages when applicable
    final Label label = new Label("Submit an XML Job Descriptor:");
    label.setHeight(30);
    label.setWidth100();

    // shown during submission
    final Label waitLabel = new Label("Please wait...");
    waitLabel.setHeight(30);
    waitLabel.setIcon("loading.gif");
    waitLabel.setWidth100();
    waitLabel.setAlign(Alignment.CENTER);

    final CheckboxItem edit = new CheckboxItem("edit", "Edit variables definitions");
    final DynamicForm editForm = new DynamicForm();
    editForm.setHeight100();
    editForm.setColWidths(20, "*");
    editForm.setFields(edit);

    layout.addMember(label);
    layout.addMember(formWrapper);
    layout.addMember(editForm);
    layout.addMember(buttons);

    this.window = new Window();
    this.window.setTitle("Submit Job");
    this.window.setShowMinimizeButton(false);
    this.window.setIsModal(true);
    this.window.setShowModalMask(true);
    this.window.addItem(layout);
    this.window.setWidth(420);
    this.window.setHeight(180);
    this.window.centerInPage();
    this.window.setCanDragResize(true);

    // click the upload button :
    // hide the form, show a 'please wait' label,
    // wait for the form's callback
    uploadButton.addClickHandler(new com.smartgwt.client.widgets.events.ClickHandler() {
        public void onClick(ClickEvent e) {
            editField.setValue(edit.getValueAsBoolean() ? "1" : "0");

            formPanel.submit();

            layout.removeMember(label);
            layout.removeMember(formWrapper);
            layout.removeMember(editForm);
            layout.removeMember(buttons);

            layout.addMember(waitLabel);
        }
    });

    // form callback : silently close the window if no error,
    // else display message and allow new submission
    formPanel.addSubmitCompleteHandler(new SubmitCompleteHandler() {

        public void onSubmitComplete(SubmitCompleteEvent event) {
            String fn = fileUpload.getFilename();

            // chrome workaround
            final String fileName = fn.replace("C:\\fakepath\\", "");
            String res = event.getResults();
            boolean isError = false;

            try {
                JSONValue js = JSONParser.parseStrict(res);
                JSONObject obj = js.isObject();
                /* 
                 * submission with no edition successful, result is the job id 
                 */
                if (obj.get("id") != null && obj.get("id").isNumber() != null) {
                    int id = (int) obj.get("id").isNumber().doubleValue();
                    SubmitWindow.this.destroy();
                    LogModel.getInstance().logMessage("Successfully submitted job " + fileName + ": " + id);
                    controller.getExecutionController().getJobsController().addSubmittingJob(id, fileName);
                }
                /*
                 *  submission with edition:
                 */
                else if (obj.get("jobEdit") != null && obj.get("jobEdit").isString() != null) {
                    String val = obj.get("jobEdit").isString().stringValue();
                    String job = new String(
                            org.ow2.proactive_grid_cloud_portal.common.shared.Base64Utils.fromBase64(val));
                    final Map<String, String> variables = readVars(job);

                    // presentation form
                    final DynamicForm varForm = new DynamicForm();
                    final FormItem[] fields = new FormItem[variables.size()];
                    final Hidden[] _fields = new Hidden[variables.size()];
                    int i = 0;
                    final VerticalPanel hiddenPane = new VerticalPanel();
                    for (Entry<String, String> var : variables.entrySet()) {
                        TextItem t = new TextItem(var.getKey(), var.getKey());
                        t.setValue(var.getValue());
                        t.setWidth(240);

                        _fields[i] = new Hidden("var_" + var.getKey());
                        hiddenPane.add(_fields[i]);
                        fields[i] = t;
                        i++;
                    }
                    varForm.setFields(fields);
                    varForm.setWidth100();
                    varForm.setHeight100();

                    // actual form used to POST
                    final FormPanel fpanel = new FormPanel();
                    fpanel.setMethod(FormPanel.METHOD_POST);
                    fpanel.setAction(GWT.getModuleBaseURL() + "submitedit");
                    hiddenPane.add(new Hidden("job", job));
                    hiddenPane.add(new Hidden("sessionId", LoginModel.getInstance().getSessionId()));
                    fpanel.setWidget(hiddenPane);
                    final Layout fpanelWrapper = new Layout();
                    fpanelWrapper.addMember(fpanel);

                    label.setContents(
                            "Edit the variable definitions for job <strong>" + fileName + "</strong>");

                    final HLayout buttons2 = new HLayout();
                    buttons2.setWidth100();
                    buttons2.setHeight(20);
                    buttons2.setAlign(Alignment.RIGHT);
                    buttons2.setMembersMargin(5);
                    final IButton reset = new IButton("Reset");
                    reset.setIcon(Images.instance.clear_16().getSafeUri().asString());
                    reset.addClickHandler(new ClickHandler() {
                        public void onClick(ClickEvent event) {
                            for (FormItem it : fields) {
                                String key = it.getName();
                                String val = variables.get(key);
                                it.setValue(val);
                            }
                        }
                    });
                    final IButton submit2 = new IButton("Submit");
                    submit2.setIcon(Images.instance.ok_16().getSafeUri().asString());
                    submit2.addClickHandler(new ClickHandler() {
                        public void onClick(ClickEvent event) {
                            for (int i = 0; i < fields.length; i++) {
                                String val = "";
                                if (fields[i].getValue() != null) {
                                    val = fields[i].getValue().toString();
                                }
                                _fields[i].setValue(val);
                            }

                            fpanel.submit();

                            layout.removeMember(label);
                            layout.removeMember(varForm);
                            layout.removeMember(buttons2);
                            layout.removeMember(fpanelWrapper);

                            layout.addMember(waitLabel);
                            layout.reflow();
                        }
                    });
                    final IButton cancel2 = new IButton("Cancel");
                    cancel2.setIcon(Images.instance.cancel_16().getSafeUri().asString());
                    cancel2.addClickHandler(new ClickHandler() {
                        @Override
                        public void onClick(ClickEvent event) {
                            SubmitWindow.this.window.hide();
                            SubmitWindow.this.destroy();
                        }
                    });

                    buttons2.setMembers(reset, submit2, cancel2);

                    fpanel.addSubmitCompleteHandler(new SubmitCompleteHandler() {
                        public void onSubmitComplete(SubmitCompleteEvent event) {
                            String res = event.getResults();
                            boolean failure = false;
                            try {
                                JSONValue val = controller.parseJSON(res);
                                if (val.isObject() != null && val.isObject().containsKey("id")) {
                                    int id = (int) val.isObject().get("id").isNumber().doubleValue();
                                    SubmitWindow.this.destroy();
                                    LogModel.getInstance()
                                            .logMessage("Successfully submitted job " + fileName + ": " + id);
                                    controller.getExecutionController().getJobsController().addSubmittingJob(id,
                                            fileName);
                                } else {
                                    failure = true;
                                }
                            } catch (JSONException e) {
                                failure = true;
                            }

                            if (failure) {
                                String msg = JSONUtils.getJsonErrorMessage(res);
                                layout.removeMember(waitLabel);

                                label.setContents(
                                        "<span style='color:red; font-weight:bold'>Job submission failed:</span><br>"
                                                + "<span style=''>" + msg + "</span>");

                                layout.addMember(label);
                                layout.addMember(formWrapper);
                                layout.addMember(editForm);
                                layout.addMember(buttons);
                                layout.reflow();
                                LogModel.getInstance().logImportantMessage("Failed to submit job: " + msg);
                            }
                        }
                    });

                    layout.removeMember(waitLabel);
                    layout.addMember(label);
                    layout.addMember(varForm);
                    layout.addMember(fpanelWrapper);
                    layout.addMember(buttons2);
                    layout.setMargin(10);
                    layout.reflow();

                } else {
                    isError = true;
                }
            } catch (JSONException t) {
                isError = true;
            }

            /* 
             * submission failure 
             */
            if (isError) {
                String msg = JSONUtils.getJsonErrorMessage(res);
                layout.removeMember(waitLabel);

                label.setContents("<span style='color:red; font-weight:bold'>Job submission failed:</span><br>"
                        + "<span style=''>" + msg + "</span>");

                layout.addMember(label);
                layout.addMember(formWrapper);
                layout.addMember(editForm);
                layout.addMember(buttons);
                layout.reflow();
                LogModel.getInstance().logImportantMessage("Failed to submit job: " + msg);
            }
        }
    });
}

From source file:org.pentaho.pat.client.ui.panels.windows.ConnectMondrianPanel.java

License:Open Source License

/**
 * Run on panel initialize.//from   ww  w. j a  v a  2 s.c  om
 */
private void init() {

    final FormPanel formPanel = new FormPanel();
    formPanel.setAction(FORM_ACTION);
    formPanel.setMethod(FORM_METHOD);
    formPanel.setEncoding(FORM_ENCODING);
    formPanel.addSubmitCompleteHandler(new SubmitCompleteHandler() {

        public void onSubmitComplete(final SubmitCompleteEvent arg0) {
            if (arg0 != null && arg0.getResults() != null && arg0.getResults().length() > 0) {
                if (arg0.getResults().contains(VALIDATION_START)) {
                    final String tmp = arg0.getResults().substring(
                            arg0.getResults().indexOf(VALIDATION_START) + VALIDATION_START.length(),
                            arg0.getResults().indexOf(VALIDATION_END));
                    if (tmp != null && tmp.length() > 0) {
                        if (schemaValCheckbox.getValue()) {
                            MessageBox.info(Pat.CONSTANTS.warning(),
                                    MessageFactory.getInstance().schemaFileInvalid() + "<br>" + tmp); //$NON-NLS-1$
                        }
                    }
                }
                if (arg0.getResults().contains(SCHEMA_START)) {
                    final String tmp = arg0.getResults().substring(
                            arg0.getResults().indexOf(SCHEMA_START) + SCHEMA_START.length(),
                            arg0.getResults().indexOf(SCHEMA_END));
                    schemaData = decode(tmp);
                    saveButton.setEnabled(true);
                    viewSchemaButton.setEnabled(true);
                    viewSchemaButton.setText(Pat.CONSTANTS.viewSchema());
                    // TODO remove this later

                    Application.INSTANCE.showInfoPanel(Pat.CONSTANTS.fileUpload(), Pat.CONSTANTS.success());
                } else {
                    MessageBox.error(Pat.CONSTANTS.error(), Pat.CONSTANTS.fileUploadFailed());
                }
            } else {
                MessageBox.error(Pat.CONSTANTS.error(), Pat.CONSTANTS.checkErrorLog());
            }
        }
    });
    final FormLayout layout = new FormLayout("right:[40dlu,pref], 3dlu, 70dlu, 7dlu, " //$NON-NLS-1$
            + "right:[40dlu,pref], 3dlu, 70dlu", //$NON-NLS-1$
            "p, 3dlu, p, 3dlu,p, 3dlu,p, 3dlu,p, 3dlu,p, 3dlu,p, 3dlu,p, 3dlu,p, 3dlu,p"); //$NON-NLS-1$
    final PanelBuilder builder = new PanelBuilder(layout);
    builder.addLabel(Pat.CONSTANTS.name() + LABEL_SUFFIX, CellConstraints.xy(1, 1));
    builder.add(nameTextBox, CellConstraints.xyw(3, 1, 5));
    builder.addLabel(Pat.CONSTANTS.jdbcDriver() + LABEL_SUFFIX, CellConstraints.xy(1, 3));
    builder.add(driverListBox, CellConstraints.xyw(3, 3, 5));
    builder.addLabel(Pat.CONSTANTS.jdbcUrl() + LABEL_SUFFIX, CellConstraints.xy(1, 5));
    builder.add(urlTextBox, CellConstraints.xyw(3, 5, 5));
    builder.addLabel(Pat.CONSTANTS.username() + LABEL_SUFFIX, CellConstraints.xy(1, 7));
    builder.add(userTextBox, CellConstraints.xy(3, 7));
    builder.addLabel(Pat.CONSTANTS.password() + LABEL_SUFFIX, CellConstraints.xy(5, 7));
    builder.add(passwordTextBox, CellConstraints.xy(7, 7));
    builder.addLabel(Pat.CONSTANTS.schemaFile() + LABEL_SUFFIX, CellConstraints.xy(1, 9));
    fileUpload.setName(FORM_NAME_FILE);
    builder.add(fileUpload, CellConstraints.xyw(3, 9, 5));
    builder.add(schemaValCheckbox, CellConstraints.xyw(3, 11, 5));
    uploadButton.addClickHandler(new ClickHandler() {
        public void onClick(final ClickEvent event) {
            final String filename = fileUpload.getFilename();
            if (filename == null || filename.length() == 0) {
                MessageBox.error(Pat.CONSTANTS.error(), Pat.CONSTANTS.fileUploadNoFile());
            } else {
                formPanel.submit();
            }
        }
    });

    builder.add(uploadButton, CellConstraints.xy(3, 13));

    viewSchemaButton.addClickHandler(new ClickHandler() {

        public void onClick(ClickEvent arg0) {

            final WindowPanel winPanel = new WindowPanel(Pat.CONSTANTS.schemaFile());
            final LayoutPanel wpLayoutPanel = new LayoutPanel(new BoxLayout(Orientation.VERTICAL));
            wpLayoutPanel.setSize("450px", "200px"); //$NON-NLS-1$ //$NON-NLS-2$
            final RichTextArea schemaArea = new RichTextArea();
            String newStr = schemaData + "";
            newStr = newStr.replaceAll("\\<", "&lt;").replaceAll("\\>", "&gt;").replaceAll(" ", "&nbsp;");
            newStr = newStr.replaceAll("\t", "&nbsp;&nbsp;&nbsp;");
            newStr = newStr.replaceAll("(\r\n)", "<br>"); //$NON-NLS-1$ //$NON-NLS-2$
            //                newStr = newStr.replaceAll("[\r\n\t\f]", "<br>"); //$NON-NLS-1$ //$NON-NLS-2$
            schemaArea.setHTML(newStr + "");

            wpLayoutPanel.add(schemaArea, new BoxLayoutData(1, 0.9));
            final ToolButton saveBtn = new ToolButton(Pat.CONSTANTS.save());
            saveBtn.addClickHandler(new ClickHandler() {
                public void onClick(final ClickEvent arg0) {
                    String newStr = schemaArea.getHTML();
                    newStr = newStr.replaceAll("&lt;", "\\<").replaceAll("&gt;", "\\>").replaceAll("&nbsp;",
                            " ");
                    newStr = newStr.replaceAll("&nbsp;&nbsp;&nbsp;", "\t");
                    newStr = newStr.replaceAll("<br>", "\r\n"); //$NON-NLS-1$ //$NON-NLS-2$
                    schemaData = newStr;
                    winPanel.hide();
                    ConnectionManagerWindow.display(false);
                }

            });

            final ToolButton closeBtn = new ToolButton(Pat.CONSTANTS.close());
            closeBtn.addClickHandler(new ClickHandler() {
                public void onClick(final ClickEvent arg0) {
                    winPanel.hide();
                    ConnectionManagerWindow.display(false);
                }

            });
            final LayoutPanel wpButtonPanel = new LayoutPanel(new BoxLayout(Orientation.HORIZONTAL));

            wpButtonPanel.add(saveBtn);
            wpButtonPanel.add(closeBtn);
            wpLayoutPanel.add(wpButtonPanel);
            wpLayoutPanel.layout();
            winPanel.add(wpLayoutPanel);
            winPanel.layout();
            winPanel.pack();
            winPanel.setSize("700px", "520px"); //$NON-NLS-1$ //$NON-NLS-2$

            ConnectionManagerWindow.close();
            winPanel.center();

        }
    });
    viewSchemaButton.setEnabled(false);
    viewSchemaButton.setText(Pat.CONSTANTS.noSchema());
    builder.add(viewSchemaButton, CellConstraints.xy(7, 13));

    builder.addLabel(Pat.CONSTANTS.role() + LABEL_SUFFIX, CellConstraints.xy(1, 15));
    builder.add(roleTextBox, CellConstraints.xyw(3, 15, 5));

    builder.add(startupCheckbox, CellConstraints.xy(3, 17));

    saveButton.addClickHandler(new ClickHandler() {
        public void onClick(final ClickEvent event) {
            final CubeConnection cc = getCubeConnection();
            if (validateConnection(cc)) {

                saveButton.setEnabled(false);
                ServiceFactory.getSessionInstance().saveConnection(Pat.getSessionID(), cc,
                        new AsyncCallback<String>() {
                            public void onFailure(final Throwable arg0) {
                                MessageBox.error(Pat.CONSTANTS.error(), MessageFactory.getInstance()
                                        .failedLoadConnection(arg0.getLocalizedMessage()));
                                saveButton.setEnabled(true);
                            }

                            public void onSuccess(final String id) {
                                if (cc.isConnectOnStartup()) {
                                    ConnectionManagerPanel.connectEvent(id, cc.isConnected(), true);
                                }
                                ConnectionManagerWindow.closeTabs();
                            }
                        });

            }
        }
    });

    saveButton.setEnabled(false);

    builder.add(saveButton, CellConstraints.xy(3, 19));

    cancelButton.addClickHandler(new ClickHandler() {
        public void onClick(final ClickEvent event) {
            ConnectionManagerWindow.closeTabs();
        }
    });
    builder.add(cancelButton, CellConstraints.xy(7, 19));
    final LayoutPanel layoutPanel = builder.getPanel();
    layoutPanel.setPadding(15);
    formPanel.add(layoutPanel);
    this.getLayoutPanel().add(formPanel);
}

From source file:org.pentaho.platform.dataaccess.datasource.wizard.UploadFile.java

License:Open Source License

public void onModuleLoad() {
    // Create a FormPanel and point it at a service.
    final FormPanel uploadForm = new FormPanel();
    uploadForm.setAction(GWT.getModuleBaseURL() + "/UploadService");

    // Because we're going to add a FileUpload widget, we'll need to set the
    // form to use the POST method, and multipart MIME encoding.
    uploadForm.setEncoding(FormPanel.ENCODING_MULTIPART);
    uploadForm.setMethod(FormPanel.METHOD_POST);

    // Create a panel to hold all of the form widgets.
    VerticalPanel panel = new VerticalPanel();
    uploadForm.setWidget(panel);// w w  w.j  a va2 s.  com

    // Create a TextBox, giving it a name so that it will be submitted.
    final TextBox tb = new TextBox();
    tb.setName("textBoxFormElement");
    panel.add(tb);

    // Create a FileUpload widget.
    FileUpload upload = new FileUpload();
    upload.setName("uploadFormElement");
    panel.add(upload);

    // Add a 'Upload' button.
    Button uploadSubmitButton = new Button("Upload");
    panel.add(uploadSubmitButton);

    uploadSubmitButton.addClickListener(new ClickListener() {
        public void onClick(Widget sender) {
            uploadForm.submit();
        }
    });

    uploadForm.addFormHandler(new FormHandler() {
        public void onSubmit(FormSubmitEvent event) {
        }

        public void onSubmitComplete(FormSubmitCompleteEvent event) {
            Window.alert(event.getResults());
        }
    });

    RootPanel.get().add(uploadForm);
}

From source file:org.roda.wui.common.client.tools.RestUtils.java

public static <T extends IsIndexed> void requestCSVExport(Class<T> classToReturn, Filter filter, Sorter sorter,
        Sublist sublist, Facets facets, boolean onlyActive, boolean exportFacets, String filename) {
    // api/v1/index/findFORM?type=csv

    String url = RodaConstants.API_REST_V1_INDEX + "findFORM";
    FindRequest request = new FindRequest(classToReturn.getName(), filter, sorter, sublist, facets, onlyActive,
            exportFacets, filename);/*from  w  ww  . j  a  va 2s .c  om*/

    final FormPanel form = new FormPanel();
    form.setAction(URL.encode(url));
    form.setMethod(FormPanel.METHOD_POST);
    form.setEncoding(FormPanel.ENCODING_URLENCODED);
    FlowPanel layout = new FlowPanel();
    form.setWidget(layout);
    layout.add(new Hidden("findRequest", FIND_REQUEST_MAPPER.write(request)));
    layout.add(new Hidden("type", "csv"));

    form.setVisible(false);
    RootPanel.get().add(form);

    // using submit instead of submit completed because Chrome doesn't created
    // the other event
    form.addSubmitHandler(new SubmitHandler() {

        @Override
        public void onSubmit(SubmitEvent event) {

            Timer timer = new Timer() {

                @Override
                public void run() {
                    RootPanel.get().remove(form);
                }
            };

            // remove form 10 seconds in the future
            timer.schedule(10000);
        }
    });

    form.submit();
}

From source file:org.rstudio.core.client.widget.HtmlFormModalDialog.java

License:Open Source License

protected void setFormPanelEncodingAndMethod(FormPanel formPanel) {
    formPanel.setEncoding(FormPanel.ENCODING_URLENCODED);
    formPanel.setMethod(FormPanel.METHOD_POST);
}

From source file:org.rstudio.studio.client.server.remote.RemoteServerAuth.java

License:Open Source License

public void updateCredentials(final ServerRequestCallback<Integer> requestCallback) {
    // safely cleanup any previously active update credentials forms
    safeCleanupPreviousUpdateCredentials();

    // create a hidden form panel to submit the update credentials to
    // (we do this so GWT manages the trickiness associated with 
    // managing and reading the contents of a hidden iframe) 
    final FormPanel updateCredentialsForm = new FormPanel();
    updateCredentialsForm.setMethod(FormPanel.METHOD_GET);
    updateCredentialsForm.setEncoding(FormPanel.ENCODING_URLENCODED);

    // form url/* w w w.j av a  2 s  .  c  o m*/
    String url = remoteServer_.getApplicationURL("auth-update-credentials");
    updateCredentialsForm.setAction(url);

    // request log entry (fake up a json rpc method call to conform
    // to the data format expected by RequestLog
    String requestId = Integer.toString(Random.nextInt());
    String requestData = createRequestData();
    final RequestLogEntry logEntry = RequestLog.log(requestId, requestData);

    // form submit complete handler
    updateCredentialsForm.addSubmitCompleteHandler(new SubmitCompleteHandler() {

        public void onSubmitComplete(SubmitCompleteEvent event) {
            // parse the results
            String results = event.getResults();
            RpcResponse response = RpcResponse.parse(event.getResults());
            if (response != null) {
                logEntry.logResponse(ResponseType.Normal, results);

                // check for error
                RpcError rpcError = response.getError();
                if (rpcError != null) {
                    if (rpcError.getCode() == RpcError.METHOD_NOT_FOUND) {
                        requestCallback.onResponseReceived(new Integer(CREDENTIALS_UPDATE_UNSUPPORTED));
                    } else {
                        requestCallback.onError(new RemoteServerError(rpcError));
                    }
                } else // must be a valid response
                {
                    Bool authenticated = response.getResult();
                    if (authenticated.getValue()) {
                        requestCallback.onResponseReceived(new Integer(CREDENTIALS_UPDATE_SUCCESS));
                    } else {
                        requestCallback.onResponseReceived(new Integer(CREDENTIALS_UPDATE_FAILURE));
                    }
                }
            } else // error parsing results
            {
                logEntry.logResponse(ResponseType.Error, results);

                // form message
                String msg = "Error parsing results: " + (results != null ? results : "(null)");

                // we don't expect this so debug log to flag our attention
                Debug.log("UPDATE CREDENTIALS: " + msg);

                // return the error
                RpcError rpcError = RpcError.create(RpcError.PARSE_ERROR, msg);
                requestCallback.onError(new RemoteServerError(rpcError));
            }

            // remove the hidden form (from both last-ditch list and DOM)
            previousUpdateCredentialsForms_.remove(updateCredentialsForm);
            Scheduler.get().scheduleDeferred(new ScheduledCommand() {
                public void execute() {
                    RootPanel.get().remove(updateCredentialsForm);
                }
            });
        }
    });

    // add the (hidden) form panel to the document and last ditch list
    RootPanel.get().add(updateCredentialsForm, -1000, -1000);
    previousUpdateCredentialsForms_.add(updateCredentialsForm);

    // submit the form
    updateCredentialsForm.submit();
}

From source file:org.rstudio.studio.client.workbench.views.files.ui.FileUploadDialog.java

License:Open Source License

@Override
protected void setFormPanelEncodingAndMethod(FormPanel formPanel) {
    formPanel.setEncoding(FormPanel.ENCODING_MULTIPART);
    formPanel.setMethod(FormPanel.METHOD_POST);
}

From source file:org.utgenome.gwt.utgb.client.track.lib.NavigatorTrack.java

License:Apache License

public NavigatorTrack() {
    super("NavigatorTrack");
    panel.setStyleName("toolbox");
    panel.setWidth("100%");

    speciesBox.addChangeHandler(new PropertyChangeHandler(UTGBProperty.SPECIES, speciesBox));
    revisionBox.addChangeHandler(new PropertyChangeHandler(UTGBProperty.REVISION, revisionBox));
    regionBox.addKeyUpHandler(new SequenceRangeChangeListner());
    targetBox.addKeyUpHandler(new KeyUpHandler() {
        public void onKeyUp(KeyUpEvent e) {
            int keyCode = e.getNativeKeyCode();
            if (keyCode == KeyCodes.KEY_ENTER || keyCode == KeyCodes.KEY_TAB) {
                getTrackGroup().getPropertyWriter().setProperty(UTGBProperty.TARGET, targetBox.getText());
            }//from  w  ww .  ja v a2s .  c  om
        }
    });
    targetBox.setWidth("100px");
    // value selectors
    hp.setVerticalAlignment(HorizontalPanel.ALIGN_MIDDLE);
    hp.add(new FormLabel("Species"));
    hp.add(speciesBox);
    hp.add(new FormLabel("Ref."));
    hp.add(revisionBox);
    hp.add(new FormLabel("Chr."));
    hp.add(targetBox);
    // window locator
    regionBox.setWidth("160px");

    hp2.setVerticalAlignment(HorizontalPanel.ALIGN_MIDDLE);
    hp2.add(new FormLabel("Region"));
    hp2.add(regionBox);

    Button strandSwitch = new Button("reverse");
    Style.margin(strandSwitch, Style.LEFT, 2);
    Style.border(strandSwitch, 2, Style.BORDER_OUTSET, "white");
    strandSwitch.addClickHandler(new ClickHandler() {
        public void onClick(ClickEvent e) {
            isPlusStrand = !isPlusStrand;
            TrackWindow window = getTrackGroup().getTrackWindow();
            if (isPlusStrand) {
                getTrackGroup().setTrackWindowLocation(window.getEndOnGenome(), window.getStartOnGenome());
            } else {
                getTrackGroup().setTrackWindowLocation(window.getEndOnGenome(), window.getStartOnGenome());
            }
        }
    });
    // TODO reverse button
    //hp2.add(strandSwitch);
    hp2.add(new ScrollButtonSet());
    // save view
    final FormPanel saveViewForm = new FormPanel();
    saveViewForm.setAction(GWT.getModuleBaseURL() + "utgb-core/EchoBackView");
    saveViewForm.setEncoding(FormPanel.ENCODING_URLENCODED);
    saveViewForm.setMethod(FormPanel.METHOD_POST);
    final Hidden viewData = new Hidden("view");
    final Hidden time = new Hidden("time");
    final Button saveButton = new Button("save view");
    HorizontalPanel formLayout = new HorizontalPanel();
    formLayout.setVerticalAlignment(HorizontalPanel.ALIGN_MIDDLE);
    viewData.setVisible(false);
    formLayout.add(viewData);
    formLayout.add(time);
    formLayout.add(saveButton);
    saveButton.addClickHandler(new ClickHandler() {
        public void onClick(ClickEvent e) {
            XMLWriter xmlWriter = new XMLWriter();
            getTrackGroup().toXML(xmlWriter);
            String view = xmlWriter.toString();
            viewData.setValue(view);
            // send the time stamp
            Date today = new Date();
            time.setValue(Long.toString(today.getTime()));
            saveViewForm.submit();
        }
    });
    saveViewForm.add(formLayout);
    DOM.setStyleAttribute(saveViewForm.getElement(), "margin", "0");
    hp.add(saveViewForm);
    Button loadButton = new Button("load view");
    loadButton.addClickHandler(new ClickHandler() {
        public void onClick(ClickEvent e) {
            getTrackGroup().insertTrack(new ViewLoaderTrack(), getTrackGroup().getTrackIndex(_self) + 1);
        }
    });
    hp.add(loadButton);

}

From source file:org.utgenome.gwt.utgb.client.track.lib.ViewLoaderTrack.java

License:Apache License

public ViewLoaderTrack() {
    super("View Loader");
    // load view via HTTP
    HorizontalPanel hp = new HorizontalPanel();
    hp.setVerticalAlignment(HorizontalPanel.ALIGN_MIDDLE);
    hp.add(new FormLabel("View Silk URL: "));
    urlBox.setWidth("400px");
    urlBox.addKeyPressHandler(new KeyPressHandler() {
        public void onKeyPress(KeyPressEvent e) {
            if (e.getCharCode() == KeyCodes.KEY_ENTER) {
                downloadView(urlBox.getText());
            }/* w ww  .j a  v  a  2 s.c  om*/
        }
    });
    Button loadButton = new Button("load");
    loadButton.addClickHandler(new ClickHandler() {
        public void onClick(ClickEvent e) {
            downloadView(urlBox.getText());
        }
    });
    hp.add(urlBox);
    hp.add(loadButton);
    // load view from a file
    final FormPanel fileUploadForm = new FormPanel();
    fileUploadForm.setAction(GWT.getModuleBaseURL() + "utgb-core/loadview");
    fileUploadForm.setEncoding(FormPanel.ENCODING_MULTIPART);
    fileUploadForm.setMethod(FormPanel.METHOD_POST);
    HorizontalPanel formButtonPanel = new HorizontalPanel();
    FileUpload fileBox = new FileUpload();
    fileBox.setName("file");
    fileBox.setWidth("300px");
    Button uploadButton = new Button("submit");
    uploadButton.addClickHandler(new ClickHandler() {

        public void onClick(ClickEvent e) {
            fileUploadForm.submit();
        }
    });
    formButtonPanel.add(new FormLabel("View Silk File:"));
    formButtonPanel.add(fileBox);
    formButtonPanel.add(uploadButton);
    fileUploadForm.add(formButtonPanel);
    DOM.setStyleAttribute(fileUploadForm.getElement(), "margin", "0");
    fileUploadForm.addSubmitCompleteHandler(new SubmitCompleteHandler() {
        public void onSubmitComplete(SubmitCompleteEvent e) {

            getFrame().setNowLoading();
            String viewXML = extractEmbeddedSilkInComment(e.getResults());
            setViewSilk(viewXML);
        }
    });
    // set panes
    panel.setStyleName("toolbox");
    panel.add(hp);
    panel.add(fileUploadForm);
}