Example usage for com.google.gwt.user.client.ui FileUpload FileUpload

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

Introduction

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

Prototype

public FileUpload() 

Source Link

Document

Constructs a new file upload widget.

Usage

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

License:Open Source License

@Override
protected Widget createMainWidget() {
    VerticalPanel panel = new VerticalPanel();
    panel.setStyleName(ThemeStyles.INSTANCE.fileUploadPanel());

    // directory panel
    HorizontalPanel directoryPanel = new HorizontalPanel();
    directoryPanel.setWidth("100%");
    directoryPanel.setStyleName(ThemeStyles.INSTANCE.fileUploadField());

    // directory name (informational field)
    panel.add(new Label("Target directory:"));
    directoryNameWidget_ = new DirectoryNameWidget();
    directoryNameWidget_.setDirectory(targetDirectory_);
    directoryPanel.add(directoryNameWidget_);

    // browse directory button
    // JJA: removed browse button (was causing confusion for users who
    // thought it was what they should press to browse local files)
    /*//from www. j a v a2  s.c  om
    Button browseButton = new Button("Browse...", 
                               new BrowseDirectoryClickHandler());
    browseButton.getElement().getStyle().setMarginRight(5, Unit.PX);
    directoryPanel.add(browseButton);
    directoryPanel.setCellHorizontalAlignment(
                                  browseButton, 
                                  HasHorizontalAlignment.ALIGN_RIGHT);
    */
    panel.add(directoryPanel);

    // filename field
    panel.add(new Label("File to upload:"));
    fileUpload_ = new FileUpload();
    fileUpload_.setStyleName(ThemeStyles.INSTANCE.fileUploadField());
    fileUpload_.setName("file");
    panel.add(fileUpload_);

    // zip file tip field
    HTML tip = new HTML("<b>TIP</b>: To upload multiple files or a "
            + "directory, create a zip file. The zip file will " + "be automatically expanded after upload.");
    tip.addStyleName(ThemeStyles.INSTANCE.fileUploadField());
    tip.addStyleName(ThemeStyles.INSTANCE.fileUploadTipLabel());
    panel.add(tip);

    // target directory hidden field
    targetDirectoryHidden_ = new Hidden("targetDirectory", targetDirectory_.getPath());
    panel.add(targetDirectoryHidden_);

    return panel;
}

From source file:org.ssgwt.client.ui.fileInput.SSFileSelector.java

License:Apache License

/**
 * Class constructor./*from   ww  w .  j av  a  2 s .com*/
 * 
 * @author Alec Erasmus <alec.erasmus@a24group.com>
 * @since  04 Feb 2013
 * 
 * @param label The label to display on the button
 */
public SSFileSelector(String label) {
    FlowPanel mainContainer = new FlowPanel();
    fileUpload = new FileUpload();
    button = new Button(label);
    mainContainer.add(fileUpload);
    mainContainer.add(button);
    initWidget(mainContainer);
}

From source file:org.ssgwt.client.ui.SSFileSelector.java

License:Apache License

/**
 * Class constructor/* w ww  . j  a v  a  2s.  co m*/
 * 
 * @param label The label to display on the button
 */
public SSFileSelector(String label) {
    FlowPanel mainContainer = new FlowPanel();
    fileUpload = new FileUpload();
    fileUpload.setWidth("0px");
    fileUpload.setHeight("0px");
    mainContainer.add(fileUpload);

    button = new Button(label);
    button.addClickHandler(new ClickHandler() {

        /**
         * The event that fires once you click on the button
         * 
         * @param event - The event that fires
         */
        @Override
        public void onClick(ClickEvent event) {
            SSFileSelector.clickOnInputFile(fileUpload.getElement());
            if (isForm) {

                /**
                 * Timer to delay
                 */
                Timer timer = new Timer() {

                    /**
                     * This method will be called when a timer fires.
                     */
                    public void run() {
                        if (!getFileSelectedComplete()) {
                            this.schedule(500);
                        } else {
                            if (isValidation) {
                                error = null;
                                int x = getFileName().lastIndexOf(".");
                                if (x == -1) {
                                    setError();
                                } else {
                                    String extension = getFileName().substring(x + 1);
                                    if (allowedFiles.contains(extension)) {
                                        form.submit();
                                    } else {
                                        setError();
                                    }
                                }
                            } else {
                                form.submit();
                            }
                        }
                    }
                };
                timer.run();
            }
        }
    });
    mainContainer.add(button);
    initWidget(mainContainer);
}

From source file:org.uberfire.ext.widgets.common.client.common.FileInputButton.java

License:Apache License

public FileInputButton() {
    wrapper = new Span();
    wrapper.addStyleName(Styles.BTN);/*from w  w w .  j av  a  2 s.co  m*/
    upload = new FileUpload();

    upload.addChangeHandler(new ChangeHandler() {
        @Override
        public void onChange(ChangeEvent event) {
            fireChanged();
        }
    });

    wrapper.add(upload);
    wrapper.addStyleName("btn-file");
    initWidget(wrapper);
}

From source file:org.unitime.timetable.gwt.client.widgets.UniTimeFileUpload.java

License:Apache License

public UniTimeFileUpload() {
    setEncoding(ENCODING_MULTIPART);/* w  w  w  .  ja  v a 2s  .  c o  m*/
    setMethod(METHOD_POST);
    setAction(GWT.getHostPageBaseURL() + "upload");

    iUpload = new FileUpload();
    iUpload.setName("file");
    setWidget(iUpload);

    iUpload.addChangeHandler(new ChangeHandler() {
        @Override
        public void onChange(ChangeEvent event) {
            submit();
        }
    });

    addSubmitCompleteHandler(new SubmitCompleteHandler() {
        @Override
        public void onSubmitComplete(SubmitCompleteEvent event) {
            String message = event.getResults();
            if (message.startsWith("ERROR:")) {
                UniTimeNotifications.error(message.substring("ERROR:".length()));
                reset();
            } else {
                UniTimeNotifications.info(message);
            }
        }
    });

    addSubmitHandler(new SubmitHandler() {
        @Override
        public void onSubmit(SubmitEvent event) {
            String name = iUpload.getFilename();
            if (name.indexOf('/') >= 0)
                name = name.substring(name.lastIndexOf('/') + 1);
            if (name.indexOf('\\') >= 0)
                name = name.substring(name.lastIndexOf('\\') + 1);
            if (!name.isEmpty())
                UniTimeNotifications.info("Uploading " + name + " ...");
        }
    });
}

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 w w. ja  va  2s  .co m
        }
    });
    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);
}

From source file:org.wisepersist.gwt.uploader.client.Uploader.java

License:Apache License

private FileUpload createFileUpload() {
    fileUpload = new FileUpload();
    fileUpload.getElement().getStyle().setDisplay(Style.Display.NONE);

    if (fileTypes != null) {
        // Convert the format that the SWFUpload/Flash parameter expects to the W3C DOM standard
        // See: http://dev.w3.org/html5/spec/states-of-the-type-attribute.html#attr-input-accept
        fileUpload.getElement().setAttribute("accept",
                this.fileTypes.replaceAll("\\;", ",").replaceAll("\\*\\.", "."));

        // TODO(jake): Need to consider validation of this in the file queued handler as well,
        // as the browsers don't appear to consistently support the "accept" attribute
    }//from  w w w  .j a va  2s .  c  o m

    final AbsolutePanel panel = this;

    fileUpload.addChangeHandler(new ChangeHandler() {
        public void onChange(ChangeEvent event) {

            JsArray<?> selectedFiles = nativeGetSelectedFiles(fileUpload.getElement());

            // Every time a file is selected replace the FileUpload component running in the DOM so that
            // the user can continue to attempt uploading the same file multiple times (otherwise the
            // "ChangeHandler" never fires)
            panel.remove(fileUpload);
            panel.add(createFileUpload());

            addFilesToQueue(selectedFiles);

        }
    });
    return fileUpload;
}