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

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

Introduction

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

Prototype

public String getFilename() 

Source Link

Document

Gets the filename selected by the user.

Usage

From source file:com.dingziran.effective.client.content.widgets.CwFileUpload.java

License:Apache License

/**
 * Constructor./*from   w w  w  . j  ava2  s. c  om*/
 *
 * @param constants the constants
 */
public CwFileUpload(CwConstants constants) {
    super(constants.cwFileUploadName(), constants.cwFileUploadDescription());
    this.constants = constants;
    view = new ContentWidgetView(hasMargins(), hasScrollableContent());
    view.setName(getName());
    view.setDescription(getDescription());
    setWidget(view);
    // Create a vertical panel to align the content
    VerticalPanel vPanel = new VerticalPanel();

    // Add a label
    vPanel.add(new HTML(constants.cwFileUploadSelectFile()));

    // Add a file upload widget
    final FileUpload fileUpload = new FileUpload();
    fileUpload.ensureDebugId("cwFileUpload");
    vPanel.add(fileUpload);
    final String msg1 = constants.cwFileUploadNoFileError();
    final String msg2 = constants.cwFileUploadSuccessful();

    // Add a button to upload the file
    Button uploadButton = new Button(constants.cwFileUploadButton());
    uploadButton.addClickHandler(new ClickHandler() {
        public void onClick(ClickEvent event) {
            String filename = fileUpload.getFilename();
            if (filename.length() == 0) {
                Window.alert(msg1);
            } else {
                Window.alert(msg2);
            }
        }
    });
    vPanel.add(new HTML("<br>"));
    vPanel.add(uploadButton);

    view.setExample(vPanel);
}

From source file:com.eduworks.russel.ui.client.pagebuilder.screen.EditScreen.java

License:Apache License

/**
 * buildEmptyUploadTile0 Initiates a tile in the EditScreen to represent a file that is uploading
 * @param idPrefix String id assigned to the new tile
 *///www.  j  a v  a  2s .c o m
private void buildEmptyUploadTile0(final String idPrefix) {
    final FormPanel formPanel = (FormPanel) PageAssembler.elementToWidget("addFileForm", PageAssembler.FORM);
    final FileUpload fileUpload = (FileUpload) PageAssembler.elementToWidget("addFileData", PageAssembler.FILE);
    formPanel.setEncoding(FormPanel.ENCODING_MULTIPART);
    formPanel.setAction(RusselApi.getESBActionURL("addResource") + "?inline=true");
    FileHandler.pendingFileUploads++;
    final StatusRecord status = StatusHandler.createMessage(StatusHandler.getFileMessageBusy(""),
            StatusRecord.ALERT_BUSY);
    formPanel.addSubmitCompleteHandler(new SubmitCompleteHandler() {
        @Override
        public void onSubmitComplete(SubmitCompleteEvent event) {
            ESBPacket node = new ESBPacket(event.getResults());
            RUSSELFileRecord fr = new RUSSELFileRecord();
            fr.setGuid(node.getPayloadString());
            String filename = fileUpload.getFilename();
            final String justFileName = filename.substring(filename.lastIndexOf("\\") + 1);
            fr.setFilename(justFileName);
            if (DOM.getElementById(idPrefix + "-objectDescription") != null) {
                RootPanel.get(idPrefix + "-objectDescription").getElement().setInnerText("");
                fillTemplateDetails0(fr, idPrefix);
                DOM.getElementById(idPrefix + "-objectDetailButton").removeAttribute("hidden");
            }
            FileHandler.pendingFileUploads--;
            status.setState(StatusRecord.ALERT_SUCCESS);
            status.setMessage(StatusHandler.getFileMessageDone(justFileName));
            StatusHandler.alterMessage(status);
            //                                       if (justFileName.substring(justFileName.lastIndexOf(".")+1).equalsIgnoreCase("rpf"))
            //                                          ProjectRecord.updatePfmNodeId(fr);

            thumbIDs.put(idPrefix + "-object", fr);
            //checkIEAndPromptServerDisaggregation0(fr);
            refreshInformation0();
        }
    });
    formPanel.addSubmitHandler(new SubmitHandler() {
        @Override
        public void onSubmit(SubmitEvent event) {
            String fn = fileUpload.getFilename();
            String justFileName = fn.substring(fn.lastIndexOf("\\") + 1);
            PageAssembler.attachHandler(idPrefix + "-objectDetail", Event.ONCLICK, new EventCallback() {
                @Override
                public void onEvent(Event event) {
                    toggleSelection0(idPrefix + "-object");
                }
            });
            if (fn == "") {
                status.setState(StatusRecord.ALERT_WARNING);
                status.setMessage(StatusHandler.INVALID_FILENAME);
                StatusHandler.alterMessage(status);
                fileUpload.setName("data");
                DOM.getElementById(idPrefix + "-object").removeFromParent();
                FileHandler.pendingFileUploads--;
                event.cancel();
            } else {
                DOM.getElementById(idPrefix + "-objectDetailButton").setAttribute("hidden", "hidden");
                status.setMessage(StatusHandler.getFileMessageBusy(justFileName));
                StatusHandler.alterMessage(status);
                DOM.getElementById("addFileData").setAttribute("name", justFileName);
                DOM.getElementById("session").setAttribute("value",
                        "{ \"sessionid\":\"" + RusselApi.sessionId + "\" }");
                if (justFileName.indexOf(".") != -1 && justFileName.substring(justFileName.lastIndexOf(".") + 1)
                        .toLowerCase().equals("zip")) {
                    if (!Browser.isBadIE()) {
                        File file = BlobUtils.getFile("addFileData");
                        String filename = file.getName();
                        if (filename.substring(filename.lastIndexOf(".") + 1).equalsIgnoreCase("zip") && Window
                                .confirm("Do you wish to disaggregate the zip " + filename + " package?")) {
                            Zip.grabEntries(file, new AsyncCallback<Vector<ZipRecord>>() {
                                @Override
                                public void onFailure(Throwable caught) {
                                }

                                @Override
                                public void onSuccess(Vector<ZipRecord> zipRecords) {
                                    for (int x = 0; x < zipRecords.size(); x++) {
                                        FileHandler.pendingZipUploads.add(zipRecords.get(x));
                                    }
                                    doPendingUploads0();
                                }
                            });
                        }
                    }
                }
                RootPanel.get(idPrefix + "-objectDescription").add(new Image("images/orbit/loading.gif"));
                DOM.getElementById(idPrefix + "-objectTitle").setInnerText(justFileName);
                DOM.getElementById(idPrefix + "-objectDescription").setAttribute("style", "text-align:center");
            }
        }
    });
    formPanel.submit();
    refreshInformation0();
}

From source file:com.google.appinventor.client.wizards.ComponentImportWizard.java

License:Open Source License

public ComponentImportWizard() {
    super(MESSAGES.componentImportWizardCaption(), true, false);

    final CellTable compTable = createCompTable();
    final FileUpload fileUpload = createFileUpload();
    final Grid urlGrid = createUrlGrid();
    final TabPanel tabPanel = new TabPanel();
    tabPanel.add(fileUpload, "From my computer");
    tabPanel.add(urlGrid, "URL");
    tabPanel.selectTab(FROM_MY_COMPUTER_TAB);
    tabPanel.addStyleName("ode-Tabpanel");

    VerticalPanel panel = new VerticalPanel();
    panel.add(tabPanel);//from w  w w  . j av  a 2  s  . com

    addPage(panel);

    getConfirmButton().setText("Import");

    setPagePanelHeight(150);
    setPixelSize(200, 150);
    setStylePrimaryName("ode-DialogBox");

    initFinishCommand(new Command() {
        @Override
        public void execute() {
            final long projectId = ode.getCurrentYoungAndroidProjectId();
            final Project project = ode.getProjectManager().getProject(projectId);
            final YoungAndroidAssetsFolder assetsFolderNode = ((YoungAndroidProjectNode) project.getRootNode())
                    .getAssetsFolder();

            if (tabPanel.getTabBar().getSelectedTab() == URL_TAB) {
                TextBox urlTextBox = (TextBox) urlGrid.getWidget(1, 0);
                String url = urlTextBox.getText();

                if (url.trim().isEmpty()) {
                    Window.alert(MESSAGES.noUrlError());
                    return;
                }

                ode.getComponentService().importComponentToProject(url, projectId, assetsFolderNode.getFileId(),
                        new ImportComponentCallback());
            } else if (tabPanel.getTabBar().getSelectedTab() == FROM_MY_COMPUTER_TAB) {
                if (!fileUpload.getFilename().endsWith(COMPONENT_ARCHIVE_EXTENSION)) {
                    Window.alert(MESSAGES.notComponentArchiveError());
                    return;
                }

                String url = GWT.getModuleBaseURL() + ServerLayout.UPLOAD_SERVLET + "/"
                        + ServerLayout.UPLOAD_COMPONENT + "/" + trimLeadingPath(fileUpload.getFilename());

                Uploader.getInstance().upload(fileUpload, url, new OdeAsyncCallback<UploadResponse>() {
                    @Override
                    public void onSuccess(UploadResponse uploadResponse) {
                        String toImport = uploadResponse.getInfo();
                        ode.getComponentService().importComponentToProject(toImport, projectId,
                                assetsFolderNode.getFileId(), new ImportComponentCallback());
                    }
                });
                return;
            }
        }

        private String trimLeadingPath(String filename) {
            // Strip leading path off filename.
            // We need to support both Unix ('/') and Windows ('\\') separators.
            return filename.substring(Math.max(filename.lastIndexOf('/'), filename.lastIndexOf('\\')) + 1);
        }
    });
}

From source file:com.google.appinventor.client.wizards.ComponentUploadWizard.java

License:Open Source License

public ComponentUploadWizard() {
    super(MESSAGES.componentUploadWizardCaption(), true, false);

    final FileUpload uploadWiget = new FileUpload();
    uploadWiget.setName(ServerLayout.UPLOAD_COMPONENT_ARCHIVE_FORM_ELEMENT);

    VerticalPanel panel = new VerticalPanel();
    panel.setVerticalAlignment(VerticalPanel.ALIGN_MIDDLE);
    panel.add(uploadWiget);//from   w w w .jav a 2s . c o m

    addPage(panel);

    setStylePrimaryName("ode-DialogBox");

    initFinishCommand(new Command() {
        @Override
        public void execute() {
            if (!uploadWiget.getFilename().endsWith(COMPONENT_ARCHIVE_EXTENSION)) {
                Window.alert(MESSAGES.notComponentArchiveError());
                return;
            }

            String url = GWT.getModuleBaseURL() + ServerLayout.UPLOAD_SERVLET + "/"
                    + ServerLayout.UPLOAD_COMPONENT + "/" + trimLeadingPath(uploadWiget.getFilename());

            Uploader.getInstance().upload(uploadWiget, url, new OdeAsyncCallback<UploadResponse>() {
                @Override
                public void onSuccess(UploadResponse uploadResponse) {
                    Component component = Component.valueOf(uploadResponse.getInfo());
                    ErrorReporter.reportInfo("Uploaded successfully");
                }
            });
        }

        private String trimLeadingPath(String filename) {
            // Strip leading path off filename.
            // We need to support both Unix ('/') and Windows ('\\') separators.
            return filename.substring(Math.max(filename.lastIndexOf('/'), filename.lastIndexOf('\\')) + 1);
        }
    });
}

From source file:com.google.appinventor.client.wizards.FileUploadWizard.java

License:Open Source License

/**
 * Creates a new file upload wizard./*from  ww w  .jav  a 2 s .  c  o m*/
 *
 * @param folderNode the upload destination folder
 * @param fileUploadedCallback callback to be executed after upload
 */
public FileUploadWizard(final FolderNode folderNode, final FileUploadedCallback fileUploadedCallback) {
    super(MESSAGES.fileUploadWizardCaption(), true, false);

    // Initialize UI
    final FileUpload upload = new FileUpload();
    upload.setName(ServerLayout.UPLOAD_FILE_FORM_ELEMENT);
    setStylePrimaryName("ode-DialogBox");
    VerticalPanel panel = new VerticalPanel();
    panel.setVerticalAlignment(VerticalPanel.ALIGN_MIDDLE);
    panel.add(upload);
    addPage(panel);

    // Create finish command (upload a file)
    initFinishCommand(new Command() {
        @Override
        public void execute() {
            String uploadFilename = upload.getFilename();
            if (!uploadFilename.isEmpty()) {
                final String filename = makeValidFilename(uploadFilename);
                if (!TextValidators.isValidCharFilename(filename)) {
                    createErrorDialog(MESSAGES.malformedFilenameTitle(), MESSAGES.malformedFilename(),
                            Error.NOFILESELECETED, folderNode, fileUploadedCallback);
                    return;
                } else if (!TextValidators.isValidLengthFilename(filename)) {
                    createErrorDialog(MESSAGES.filenameBadSizeTitle(), MESSAGES.filenameBadSize(),
                            Error.FILENAMEBADSIZE, folderNode, fileUploadedCallback);
                    return;
                }
                int nameLength = uploadFilename.length();
                String fileEnd = uploadFilename.substring(nameLength - 4, nameLength);

                if (".aia".equals(fileEnd.toLowerCase())) {
                    createErrorDialog(MESSAGES.aiaMediaAssetTitle(), MESSAGES.aiaMediaAsset(),
                            Error.AIAMEDIAASSET, folderNode, fileUploadedCallback);
                    return;
                }
                String fn = conflictingExistingFile(folderNode, filename);
                if (fn != null && !confirmOverwrite(folderNode, fn, filename)) {
                    return;
                } else {
                    String fileId = folderNode.getFileId() + "/" + filename;
                    // We delete all the conflicting files.
                    for (ProjectNode child : folderNode.getChildren()) {
                        if (fileId.equalsIgnoreCase(child.getFileId()) && !fileId.equals(child.getFileId())) {
                            final ProjectNode node = child;
                            String filesToClose[] = { node.getFileId() };
                            Ode ode = Ode.getInstance();
                            ode.getEditorManager().closeFileEditors(node.getProjectId(), filesToClose);
                            ode.getProjectService().deleteFile(ode.getSessionId(), node.getProjectId(),
                                    node.getFileId(), new OdeAsyncCallback<Long>(
                                            // message on failure
                                            MESSAGES.deleteFileError()) {
                                        @Override
                                        public void onSuccess(Long date) {
                                            Ode.getInstance().getProjectManager().getProject(node)
                                                    .deleteNode(node);
                                            Ode.getInstance().updateModificationDate(node.getProjectId(), date);

                                        }
                                    });
                        }
                    }
                }
                ErrorReporter.reportInfo(MESSAGES.fileUploadingMessage(filename));

                // Use the folderNode's project id and file id in the upload URL so that the file is
                // uploaded into that project and that folder in our back-end storage.
                String uploadUrl = GWT.getModuleBaseURL() + ServerLayout.UPLOAD_SERVLET + "/"
                        + ServerLayout.UPLOAD_FILE + "/" + folderNode.getProjectId() + "/"
                        + folderNode.getFileId() + "/" + filename;
                Uploader.getInstance().upload(upload, uploadUrl,
                        new OdeAsyncCallback<UploadResponse>(MESSAGES.fileUploadError()) {
                            @Override
                            public void onSuccess(UploadResponse uploadResponse) {
                                switch (uploadResponse.getStatus()) {
                                case SUCCESS:
                                    ErrorReporter.hide();
                                    onUploadSuccess(folderNode, filename, uploadResponse.getModificationDate(),
                                            fileUploadedCallback);
                                    break;
                                case FILE_TOO_LARGE:
                                    // The user can resolve the problem by
                                    // uploading a smaller file.
                                    ErrorReporter.reportInfo(MESSAGES.fileTooLargeError());
                                    break;
                                default:
                                    ErrorReporter.reportError(MESSAGES.fileUploadError());
                                    break;
                                }
                            }
                        });
            } else {
                createErrorDialog(MESSAGES.noFileSelectedTitle(), MESSAGES.noFileSelected(),
                        Error.NOFILESELECETED, folderNode, fileUploadedCallback);
            }
        }
    });
}

From source file:com.google.appinventor.client.wizards.KeystoreUploadWizard.java

License:Open Source License

/**
 * Creates a new keystore upload wizard.
 *///from   w w  w  . java2s  . co  m
public KeystoreUploadWizard(final Command callbackAfterUpload) {
    super(MESSAGES.keystoreUploadWizardCaption(), true, false);

    // Initialize UI
    final FileUpload upload = new FileUpload();
    upload.setName(ServerLayout.UPLOAD_USERFILE_FORM_ELEMENT);
    setStylePrimaryName("ode-DialogBox");
    VerticalPanel panel = new VerticalPanel();
    panel.setVerticalAlignment(VerticalPanel.ALIGN_MIDDLE);
    panel.add(upload);
    addPage(panel);

    // Create finish command (upload a keystore)
    initFinishCommand(new Command() {
        @Override
        public void execute() {
            String filename = upload.getFilename();
            if (filename.endsWith(KEYSTORE_EXTENSION)) {
                String uploadUrl = GWT.getModuleBaseURL() + ServerLayout.UPLOAD_SERVLET + "/"
                        + ServerLayout.UPLOAD_USERFILE + "/" + StorageUtil.ANDROID_KEYSTORE_FILENAME;
                Uploader.getInstance().upload(upload, uploadUrl, new OdeAsyncCallback<UploadResponse>(
                        // failure message
                        MESSAGES.keystoreUploadError()) {
                    @Override
                    public void onSuccess(UploadResponse uploadResponse) {
                        switch (uploadResponse.getStatus()) {
                        case SUCCESS:
                            if (callbackAfterUpload != null) {
                                callbackAfterUpload.execute();
                            }
                            break;
                        default:
                            ErrorReporter.reportError(MESSAGES.keystoreUploadError());
                            break;
                        }
                    }
                });
            } else {
                Window.alert(MESSAGES.notKeystoreError());
                center();
            }
        }
    });
}

From source file:com.google.appinventor.client.wizards.ProjectUploadWizard.java

License:Open Source License

/**
 * Creates a new project upload wizard.//from   ww w  .  ja  v  a2  s  .  co  m
 */
public ProjectUploadWizard() {
    super(MESSAGES.projectUploadWizardCaption(), true, false);

    // Initialize UI
    final FileUpload upload = new FileUpload();
    upload.setName(ServerLayout.UPLOAD_PROJECT_ARCHIVE_FORM_ELEMENT);
    setStylePrimaryName("ode-DialogBox");
    VerticalPanel panel = new VerticalPanel();
    panel.setVerticalAlignment(VerticalPanel.ALIGN_MIDDLE);
    panel.add(upload);
    addPage(panel);

    // Create finish command (upload a project archive)
    initFinishCommand(new Command() {
        @Override
        public void execute() {
            String filename = upload.getFilename();
            if (filename.endsWith(PROJECT_ARCHIVE_EXTENSION)) {
                // Strip extension and leading path off filename. We need to support both Unix ('/') and
                // Windows ('\\') path separators. File.pathSeparator is not available in GWT.
                filename = filename.substring(0, filename.length() - PROJECT_ARCHIVE_EXTENSION.length())
                        .substring(Math.max(filename.lastIndexOf('/'), filename.lastIndexOf('\\')) + 1);

                // Make sure the project name is legal and unique.
                if (!TextValidators.checkNewProjectName(filename)) {
                    return;
                }

                String uploadUrl = GWT.getModuleBaseURL() + ServerLayout.UPLOAD_SERVLET + "/"
                        + ServerLayout.UPLOAD_PROJECT + "/" + filename;
                Uploader.getInstance().upload(upload, uploadUrl, new OdeAsyncCallback<UploadResponse>(
                        // failure message
                        MESSAGES.projectUploadError()) {
                    @Override
                    public void onSuccess(UploadResponse uploadResponse) {
                        switch (uploadResponse.getStatus()) {
                        case SUCCESS:
                            String info = uploadResponse.getInfo();
                            UserProject userProject = UserProject.valueOf(info);
                            Ode ode = Ode.getInstance();
                            Project uploadedProject = ode.getProjectManager().addProject(userProject);
                            ode.openYoungAndroidProjectInDesigner(uploadedProject);
                            break;
                        case NOT_PROJECT_ARCHIVE:
                            // This may be a "severe" error; but in the
                            // interest of reducing the number of red errors, the 
                            // line has been changed to report info not an error.
                            // This error is triggered when the user attempts to
                            // upload a zip file that is not a project.
                            ErrorReporter.reportInfo(MESSAGES.notProjectArchiveError());
                            break;
                        default:
                            ErrorReporter.reportError(MESSAGES.projectUploadError());
                            break;
                        }
                    }
                });
            } else {
                Window.alert(MESSAGES.notProjectArchiveError());
                center();
            }
        }
    });
}

From source file:com.google.gwt.sample.showcase.client.content.widgets.CwFileUpload.java

License:Apache License

/**
 * Initialize this example./*from ww w. j  av a 2s  .c o m*/
 */
@ShowcaseSource
@Override
public Widget onInitialize() {
    // Create a vertical panel to align the content
    VerticalPanel vPanel = new VerticalPanel();

    // Add a label
    vPanel.add(new HTML(constants.cwFileUploadSelectFile()));

    // Add a file upload widget
    final FileUpload fileUpload = new FileUpload();
    fileUpload.ensureDebugId("cwFileUpload");
    vPanel.add(fileUpload);

    // Add a button to upload the file
    Button uploadButton = new Button(constants.cwFileUploadButton());
    uploadButton.addClickHandler(new ClickHandler() {
        public void onClick(ClickEvent event) {
            String filename = fileUpload.getFilename();
            if (filename.length() == 0) {
                Window.alert(constants.cwFileUploadNoFileError());
            } else {
                Window.alert(constants.cwFileUploadSuccessful());
            }
        }
    });
    vPanel.add(new HTML("<br>"));
    vPanel.add(uploadButton);

    // Return the layout panel
    return vPanel;
}

From source file:com.GTDF.client.GWT_Transxchange2GoogleTransit.java

License:Apache License

public void onModuleLoad() {

    String wikiUserName = readUsername();

    //Service Start
    final TextBox textBoxServiceStartGz = new TextBox();

    TabPanel tabs = new TabPanel();
    tabs.setStyleName(".gwt-TabBar");

    tabs.setWidth("100%");
    tabs.setHeight("100%");

    //-------------------------EDJ ----------------
    DockPanel dock = new DockPanel();
    dock.setSize("663px", "220px");
    dock.setStyleName("gwt-TabBar");
    VerticalPanel TransformWindow = new VerticalPanel();
    TransformWindow.setStyleName("weather-input-panel");

    //Agency URL/*from   ww w.  java  2 s  . com*/
    HorizontalPanel AgencyURL = new HorizontalPanel();
    Label url_lbl = new Label("Agency URL:");
    url_lbl.setWidth("90");
    final TextBox textBoxUrl = new TextBox();
    textBoxUrl.setText("http://www.agency.org");
    textBoxUrl.setVisibleLength(40);
    AgencyURL.add(url_lbl);
    AgencyURL.add(textBoxUrl);
    //-----------

    //Route Type
    HorizontalPanel RType = new HorizontalPanel();
    Label rt_lbl = new Label("Route Type:");
    rt_lbl.setWidth("90");
    final ListBox listBoxDefaultRouteType = new ListBox();
    listBoxDefaultRouteType.setVisibleItemCount(1);
    listBoxDefaultRouteType.addItem("Tram");
    listBoxDefaultRouteType.addItem("Subway");
    listBoxDefaultRouteType.addItem("Rail");
    listBoxDefaultRouteType.addItem("Bus");
    listBoxDefaultRouteType.addItem("Ferry");
    listBoxDefaultRouteType.addItem("Cable car");
    listBoxDefaultRouteType.addItem("Gondola");
    listBoxDefaultRouteType.addItem("Funicular");
    listBoxDefaultRouteType.setSelectedIndex(0);
    RType.add(rt_lbl);
    RType.add(listBoxDefaultRouteType);
    //-----------

    //Time Zone
    VerticalPanel TZ = new VerticalPanel();
    Label tz_lbl = new Label("Time Zone:");
    tz_lbl.setWidth("90");

    HorizontalPanel Continent = new HorizontalPanel();
    Label continent_lbl = new Label("Continent:");
    continent_lbl.setWidth("90");
    final ListBox listBoxTimezoneP = new ListBox();
    listBoxTimezoneP.addItem("Africa");
    listBoxTimezoneP.addItem("America");
    listBoxTimezoneP.addItem("Antarctica");
    listBoxTimezoneP.addItem("Artic");
    listBoxTimezoneP.addItem("Asia");
    listBoxTimezoneP.addItem("Atlantic");
    listBoxTimezoneP.addItem("Australia");
    listBoxTimezoneP.addItem("Europe");
    listBoxTimezoneP.addItem("Indian");
    listBoxTimezoneP.addItem("Pacific");
    listBoxTimezoneP.setVisibleItemCount(1);
    listBoxTimezoneP.setSelectedIndex(0);

    Continent.add(continent_lbl);
    Continent.add(listBoxTimezoneP);

    HorizontalPanel Region = new HorizontalPanel();
    Label region_lbl = new Label("Region:");
    region_lbl.setWidth("90");
    final ListBox listBoxTimezoneS = new ListBox();
    switchTimezone(listBoxTimezoneS, 0);
    Region.add(region_lbl);
    Region.add(listBoxTimezoneS);

    TZ.add(tz_lbl);
    TZ.add(Continent);
    TZ.add(Region);
    //-----------

    Button dialogButton = new Button("Show Dialog", new ClickListener() {
        public void onClick(Widget sender) {
            //EDJ
            DialogBox dlg = new MyDialog();
            int left = 120;
            int top = 300;
            dlg.setPopupPosition(left, top);
            dlg.show();
        }
    });

    final Label labelOutdir = new Label(); // Displays wikiuser
    final Label labelResultGz = new Label();
    final Label labelResult = new Label();
    final Label labelResultUser = new Label();

    final FormPanel uploadFormGz = new FormPanel();
    uploadFormGz.setAction(GWT.getModuleBaseURL() + "upload");
    uploadFormGz.setEncoding(FormPanel.ENCODING_MULTIPART);
    uploadFormGz.setMethod(FormPanel.METHOD_POST);
    //Upload
    final HorizontalPanel uploadPanelGz = new HorizontalPanel();
    Label upload_lbl = new Label("Upload File:");
    upload_lbl.setWidth("90");
    uploadPanelGz.add(upload_lbl);
    //uploadPanelGz.add(upload_tb);
    //uploadPanelGz.add(upload_btn);
    //--------------

    // Add hidden widget to pass user name to FileUploadServlet for verification against wiki user table
    final Hidden hwGz = new Hidden("username", wikiUserName);
    uploadPanelGz.add(hwGz);

    // Add hidden widget to pass service start to FileUploadServlet
    final Hidden ssGz = new Hidden("prefix");
    uploadPanelGz.add(ssGz);

    final FileUpload uploadGz = new FileUpload();
    uploadGz.setName("uploadFormElement");
    uploadPanelGz.add(uploadGz);

    //final VerticalPanel uploadPanelGz = new VerticalPanel();
    uploadFormGz.setWidget(uploadPanelGz);

    /*
     * Add Transxchange2GoogleTransit file upload
     */
    final FormPanel uploadForm = new FormPanel();
    uploadForm.setAction(GWT.getModuleBaseURL() + "upload");
    uploadForm.setEncoding(FormPanel.ENCODING_MULTIPART);
    uploadForm.setMethod(FormPanel.METHOD_POST);
    final VerticalPanel uploadPanel = new VerticalPanel();
    uploadForm.setWidget(uploadPanel);

    // Add hidden widget to pass user name to FileUploadServlet for verification against wiki user table
    final Hidden hw = new Hidden("username", wikiUserName);
    uploadPanel.add(hw);

    final FileUpload upload = new FileUpload();
    upload.setName("uploadFormElement");
    uploadPanel.add(upload);

    /*
    * Verify user and enable action buttons if user exists
    */
    WikiUserServiceAsync wikiUserService = (WikiUserServiceAsync) GWT.create(WikiUserService.class);

    ServiceDefTarget endpoint = (ServiceDefTarget) wikiUserService;
    String moduleRelativeURL = GWT.getModuleBaseURL() + "WikiUser";
    endpoint.setServiceEntryPoint(moduleRelativeURL);

    AsyncCallback callback = new AsyncCallback() {
        public void onSuccess(Object result) {
            Button buttonGz = new Button("Upload", new ClickListener() {
                public void onClick(Widget sender) {
                    // Extract service start and pass as prefix
                    String serviceStart = textBoxServiceStartGz.getText();
                    ssGz.setValue(serviceStart);
                    // Upload selected infile to server
                    uploadFormGz.submit();

                    //EDJ
                    DialogBox dlg = new MyDialog();
                    int left = 120;
                    int top = 300;
                    dlg.setPopupPosition(left, top);
                    dlg.show();
                }
            });
            Button button = new Button("Transform", new ClickListener() {
                public void onClick(Widget sender) {
                    // Upload selected infile to server
                    uploadForm.submit();
                }
            });

            if (result != "LOGGED") {
                button.setEnabled(false);
                buttonGz.setEnabled(false);
                labelResultUser.setText((String) result);
            }
            uploadPanel.add(button);
            uploadPanelGz.add(buttonGz);
        }

        public void onFailure(Throwable caught) {
            try {
                throw caught;
            } catch (InvocationException e) {
                labelResult.setText("InvocationException: " + e.getMessage());
            } catch (Throwable e) {
                labelResult.setText("callback failed: " + e.getMessage());
            }
        }
    };
    wikiUserService.wikiUserVerify(wikiUserName, callback);

    /*
     * Upload google_transit.zip file
     */
    uploadFormGz.addFormHandler(new FormHandler() {
        public void onSubmitComplete(FormSubmitCompleteEvent event) {

            labelResultGz.setText((String) event.getResults());

        }

        public void onSubmit(FormSubmitEvent event) {
            // Upload infile to server
            String inFilename = uploadGz.getFilename();
            if (inFilename.length() == 0) {
                Window.alert("Infile required");
                return;
            }
        }
    });

    /*
     * Upload TransXChange file and call Transxchange2GoogleTransit servlet when "transform" button is pushed
     */
    uploadForm.addFormHandler(new FormHandler() {
        public void onSubmitComplete(FormSubmitCompleteEvent event) {

            labelResult.setText((String) event.getResults());

            // Start transformation
            String parseArgs = upload.getFilename();
            parseArgs = parseArgs + " " + textBoxUrl.getText();
            parseArgs = parseArgs + " " + listBoxTimezoneP.getItemText(listBoxTimezoneP.getSelectedIndex());
            String helpString = listBoxTimezoneS.getItemText(listBoxTimezoneS.getSelectedIndex());
            parseArgs = parseArgs + "/" + helpString.substring(0, helpString.indexOf(' '));
            parseArgs = parseArgs + " " + listBoxDefaultRouteType.getSelectedIndex();
            parseArgs = parseArgs + " " + labelOutdir.getText();

            // call server through GWT asynchronous RPC
            Transxchange2GoogleTransitServiceAsync transxchange2GoogleTransitService = (Transxchange2GoogleTransitServiceAsync) GWT
                    .create(Transxchange2GoogleTransitService.class);

            ServiceDefTarget endpoint = (ServiceDefTarget) transxchange2GoogleTransitService;
            String moduleRelativeURL = GWT.getModuleBaseURL() + "GTDF";
            endpoint.setServiceEntryPoint(moduleRelativeURL);

            AsyncCallback callback = new AsyncCallback() {
                public void onSuccess(Object result) {
                    labelResult.setText((String) result);
                }

                public void onFailure(Throwable caught) {
                    try {
                        throw caught;
                    } catch (InvocationException e) {
                        labelResult.setText("InvocationException: " + e.getMessage());
                    } catch (Throwable e) {
                        labelResult.setText("callback failed: " + e.getMessage());
                    }
                }
            };
            transxchange2GoogleTransitService.transxchange2GoogleTransit_transform(parseArgs, callback);
        }

        public void onSubmit(FormSubmitEvent event) {
            // Upload infile to server
            String inFilename = upload.getFilename();
            if (inFilename.length() == 0) {
                Window.alert("Infile required");
                return;
            }
        }
    });

    /*
     * Add UI elements
     *       Better practice (for future reference): use CSS
     */
    TransformWindow.add(AgencyURL);
    TransformWindow.add(RType);
    TransformWindow.add(TZ);
    TransformWindow.add(uploadPanelGz);
    TransformWindow.add(uploadPanel);
    TransformWindow.add(dialogButton);
    tabs.add(TransformWindow, "TransXChange");
    //tabs.add(TZ, "Transformation2");
    tabs.selectTab(0);
    dock.add(tabs, DockPanel.CENTER);
    RootPanel.get("tab_area").add(dock);

    /*
    RootPanel.get("gz_servicestart").add(textBoxServiceStartGz);    
     RootPanel.get("gz_infile").add(uploadFormGz);    
    RootPanel.get("url").add(textBoxUrl);
    RootPanel.get("timezoneP").add(listBoxTimezoneP);
    RootPanel.get("timezoneS").add(listBoxTimezoneS);
    RootPanel.get("defaultroutetype").add(listBoxDefaultRouteType);
    RootPanel.get("outdir").add(labelOutdir);
    labelOutdir.setText(wikiUserName);
    RootPanel.get("user_result").add(labelResultUser);
    RootPanel.get("gz_result").add(labelResultGz);
    RootPanel.get("result").add(labelResult);
     RootPanel.get("infile").add(uploadForm);    */

    // Primary time zone (Africa, Europe, ...) selected
    listBoxTimezoneP.addChangeListener(new ChangeListener() {
        public void onChange(Widget sender) {
            switchTimezone(listBoxTimezoneS, listBoxTimezoneP.getSelectedIndex());
        }
    });

    //----------------------------------------------------------------------------------------------
    //----------------------------------------EDJ---------------------------------------------------

}

From source file:com.ikon.frontend.client.widget.form.FormManager.java

License:Open Source License

/**
 * hasFileUploadFormElement/*  ww  w.ja  v  a  2s.com*/
 */
public boolean hasFileUploadFormElement() {
    boolean found = false;

    for (GWTFormElement formElement : formElementList) {
        if (formElement instanceof GWTUpload) {
            HorizontalPanel hPanel = (HorizontalPanel) hWidgetProperties.get(formElement.getName());
            FileUpload fileUpload = (FileUpload) hPanel.getWidget(1);

            if (!fileUpload.getFilename().equals("")) {
                found = true;
            }

            break;
        }
    }

    return found;
}