List of usage examples for com.google.gwt.user.client.ui FormPanel ENCODING_MULTIPART
String ENCODING_MULTIPART
To view the source code for com.google.gwt.user.client.ui FormPanel ENCODING_MULTIPART.
Click Source Link
From source file:com.ponysdk.ui.terminal.ui.PTFileUpload.java
License:Apache License
@Override public void create(final PTInstruction create, final UIService uiService) { wrappedFormPanel = new FormPanel(); init(create, uiService, wrappedFormPanel); wrappedFormPanel.setEncoding(FormPanel.ENCODING_MULTIPART); wrappedFormPanel.setMethod(FormPanel.METHOD_POST); final VerticalPanel panel = new VerticalPanel(); panel.setSize("100%", "100%"); wrappedFormPanel.setWidget(panel);//from ww w .j a va 2 s .com panel.add(fileUpload); wrappedFormPanel.addSubmitCompleteHandler(new SubmitCompleteHandler() { @Override public void onSubmitComplete(final SubmitCompleteEvent event) { final PTInstruction eventInstruction = new PTInstruction(); eventInstruction.setObjectID(create.getObjectID()); eventInstruction.put(TYPE.KEY, TYPE.KEY_.EVENT); eventInstruction.put(HANDLER.KEY, HANDLER.KEY_.SUBMIT_COMPLETE_HANDLER); uiService.triggerEvent(eventInstruction); } }); }
From source file:com.qualogy.qafe.gwt.client.component.QPagingScrollTableOperation.java
License:Apache License
/** * Constructor./* w ww . ja v a 2 s . c om*/ * * @param table * the table being affected * @param images * the images to use */ // CHECKSTYLE.OFF: CyclomaticComplexity public QPagingScrollTableOperation(final QPagingScrollTable table, ScrollTableOperationImages images) { this.table = table; if (this.table instanceof QPagingScrollTable) { ((QPagingScrollTable) this.table).setScrollTableOperations(this); } // Create the main widget HorizontalPanel hPanel = new HorizontalPanel(); initWidget(hPanel); hPanel.setVerticalAlignment(HasVerticalAlignment.ALIGN_MIDDLE); setStyleName(DEFAULT_STYLENAME); // Create the paging image buttons createPageButtons(images); // Create the error label errorLabel = new HTML(); errorLabel.setStylePrimaryName("errorMessage"); // Add the widgets to the panel hPanel.add(createSpacer()); if (hasAddControl(table)) { hPanel.add(addImage); hPanel.add(createSpacer()); } if (hasDeleteControl(table)) { hPanel.add(deleteImage); hPanel.add(createSpacer()); } if (isEditableDatagrid(table) || hasDeleteControl(table) || hasAddControl(table)) { if (saveDatagrid(table)) { hPanel.add(saveImage); hPanel.add(createSpacer()); } if (refreshDatagrid(table)) { hPanel.add(refreshImage); hPanel.add(createSpacer()); } if (cancelDatagrid(table)) { hPanel.add(cancelImage); hPanel.add(createSpacer()); } } hPanel.add(errorLabel); if (table.getSource().getImportEnabled() != null && table.getSource().getImportEnabled().booleanValue()) { final DisclosurePanel importPanel = new DisclosurePanel("Upload data"); hPanel.add(importPanel); final FormPanel formPanel = new FormPanel(); formPanel.setAction(GWT.getModuleBaseURL() + "/rpc.datagridupload"); formPanel.setEncoding(FormPanel.ENCODING_MULTIPART); formPanel.setMethod(FormPanel.METHOD_POST); FileUpload fileUploadComponent = new FileUpload(); fileUploadComponent.setName("uploadElement"); Button uploadButtonComponent = new Button("Upload"); uploadButtonComponent.addClickHandler(new ClickHandler() { public void onClick(ClickEvent event) { formPanel.submit(); } }); CheckBox isFirstLineHeader = new CheckBox("Is first row header ?"); isFirstLineHeader.setName("isFirstLineHeader"); isFirstLineHeader.setTitle( "Check wheter or not the first line of the uploaded file is a header/column definition"); HorizontalPanel hp = new HorizontalPanel(); Label label = new Label("Delimeter"); final TextBox delimiter = new TextBox(); delimiter.setValue(","); delimiter.setTitle("Insert the delimeter (can be any value, as long it's length 1)"); delimiter.setName("delimiter"); delimiter.setWidth("15px"); hp.setSpacing(10); hp.add(label); hp.add(delimiter); Grid gridPanel = new Grid(2, 4); gridPanel.setWidget(0, 0, fileUploadComponent); gridPanel.setWidget(0, 1, uploadButtonComponent); gridPanel.setWidget(1, 0, isFirstLineHeader); gridPanel.setWidget(1, 1, hp); formPanel.add(gridPanel); formPanel.addSubmitHandler(new FormPanel.SubmitHandler() { public void onSubmit(SubmitEvent event) { // This event is fired just before the form is submitted. We can // take // this opportunity to perform validation. if (delimiter.getText().length() == 0 || delimiter.getText().length() > 1) { ClientApplicationContext.getInstance().log("Ooops...Delimeter invalid", "Make sure there is valid delimeter value.One character only (current value ='" + delimiter.getText() + "'", true); event.cancel(); } } }); formPanel.addSubmitCompleteHandler(new SubmitCompleteHandler() { public void onSubmitComplete(SubmitCompleteEvent event) { String uuId = event.getResults(); if (uuId != null && uuId.indexOf("=") > 0) { uuId = uuId.substring(uuId.indexOf("=") + 1); processData(uuId); importPanel.setOpen(false); } else { ClientApplicationContext.getInstance().log("Upload failed", event.getResults(), true); } } }); importPanel.add(formPanel); } if (table.getSource() != null && table.getSource().getExport() != null && table.getSource().getExport().booleanValue()) { createExportLabelsAndImages(); final DisclosurePanel exportPanel = new DisclosurePanel("Export"); String[] labels = getExportLabels(table.getSource().getExportFormats()); Image[] exportImages = getExportImages(labels); FlexTable gridExportPanel = new FlexTable(); hPanel.add(exportPanel); exportPanel.add(gridExportPanel); final Frame frame = new Frame(); frame.setHeight("0"); frame.setWidth("0"); frame.setVisible(false); final String moduleRelativeURL = GWT.getModuleBaseURL() + "/rpc.export"; gridExportPanel.setWidget(0, 0, frame); final CheckBox generateColumnHeaderBox = new CheckBox("Generate Column Header"); gridExportPanel.getFlexCellFormatter().setColSpan(1, 1, 7); gridExportPanel.setWidget(2, 1, generateColumnHeaderBox); gridExportPanel.getFlexCellFormatter().setColSpan(2, 1, 6); for (int i = 0; i < labels.length; i++) { exportImages[i].setStylePrimaryName("datagridexportlabel"); exportImages[i].setTitle(labels[i]); gridExportPanel.setWidget(0, i + 1, exportImages[i]); exportImages[i].addClickHandler(new ClickHandler() { public void onClick(ClickEvent event) { if (event.getSource() instanceof Image) { Image image = (Image) (event.getSource()); final String exportCode = image.getTitle(); RPCServiceAsync service = MainFactoryActions.createService(); AsyncCallback<?> callback = new AsyncCallback<Object>() { public void onSuccess(Object result) { String uuid = (String) result; // set frame frame.setUrl(moduleRelativeURL + "?uuid=" + uuid); ClientApplicationContext.getInstance().setBusy(false); } public void onFailure(Throwable caught) { ClientApplicationContext.getInstance().log("Export failed", "Export failed for " + exportCode + " ", true, true, caught); ClientApplicationContext.getInstance().setBusy(false); FunctionsExecutor.setProcessedBuiltIn(true); } }; List<DataContainerGVO> dList = new ArrayList<DataContainerGVO>(); // following loop is to maintain the order of rows while exporting. for (int i = 0; i < (table.getAbsoluteLastRowIndex() + 1); i++) { dList.add(table.getRowValue(i)); } service.prepareForExport(dList, exportCode, null, generateColumnHeaderBox.getValue().booleanValue(), callback); } } }); } } }
From source file:com.qualogy.qafe.gwt.client.factory.MainFactory.java
License:Apache License
public static void createTryMeWindow(String subwindow) { final WindowPanel w = new WindowPanel("Try me!"); w.setResizable(true);/*from ww w . jav a 2s . c o m*/ w.setAnimationEnabled(true); w.setSize("800px", "500px"); VerticalPanel verticalPanel = new VerticalPanel(); final ScrollLayoutPanel vp = new ScrollLayoutPanel(); vp.setAlwaysShowScrollBars(false); vp.setWidth("800px"); vp.setHeight("500px"); w.setWidget(verticalPanel); // vp.setSpacing(5); // vp.setWidth("100%"); final TabPanel tabPanel = new TabPanel(); tabPanel.setAnimationEnabled(true); tabPanel.setWidth("580px"); tabPanel.setHeight("500px"); DockPanel dockPanel = new DockPanel(); dockPanel.setWidth("580px"); dockPanel.setHeight("500px"); tabPanel.add(dockPanel, "Insert code!"); final TextArea textArea = new TextArea(); textArea.setVisibleLines(30); textArea.setHeight("auto"); textArea.setWidth("580px"); DOM.setElementAttribute(textArea.getElement(), "font-size", "10pt"); dockPanel.add(textArea, DockPanel.CENTER); final MenuBar menu = new MenuBar(); MenuBar renderMenu = new MenuBar(true); w.addResizeHandler(new ResizeHandler() { public void onResize(ResizeEvent event) { int height = event.getHeight(); int width = event.getWidth(); if (w.getWidget() != null) { w.setHeight((height) + "px"); w.setWidth((width) + "px"); vp.setHeight((height - 20) + "px"); vp.setWidth((width - 20) + "px"); tabPanel.setHeight((height - 20) + "px"); tabPanel.setWidth((width - 20) + "px"); menu.setWidth((width) + "px"); textArea.setWidth((width - 20) + "px"); } } }); MenuItem gwtMenuItem = new MenuItem("GWT output", new Command() { public void execute() { String xml = textArea.getText(); if (xml == null || xml.length() == 0) { MessageBox.error("Try me:Error", "There is no input"); } else { MainFactoryActions.processUIXml(xml); } } }); MenuItem flexMenuItem = new MenuItem("Flex output", new Command() { public void execute() { String xml = textArea.getText(); if (xml == null || xml.length() == 0) { MessageBox.error("Try me:Error", "There is no input"); } else { MainFactoryActions.processUIXmlFlex(xml); } } }); renderMenu.addItem(gwtMenuItem); renderMenu.addItem(flexMenuItem); MenuBar codeMenu = new MenuBar(true); MenuItem clearXmlInput = new MenuItem("Clear", new Command() { public void execute() { textArea.setText(""); } }); MenuItem createHeaderButton = new MenuItem("Create Header", new Command() { public void execute() { final String headerText = "<?xml version=\"1.0\" encoding=\"UTF-8\"?> \n" + "<application-mapping xmlns=\"http://qafe.com/schema\" xmlns:xsi=\"http://www.w3.org/2001/XMLSchema-instance\" xsi:schemaLocation=\"http://qafe.com/schema http://www.qafe.com/schema/2.2/application-mapping.xsd\"> \n" + " <!-- PLEASE ENTER YOUR CODE HERE --> \n" + "</application-mapping> \n"; textArea.setText(headerText); } }); MenuItem createSampleAppButton = new MenuItem("Create Sample Application", new Command() { public void execute() { final String sampleText = "<?xml version=\"1.0\" encoding=\"UTF-8\"?> \n" + "<application-mapping xmlns=\"http://qafe.com/schema\" xmlns:xsi=\"http://www.w3.org/2001/XMLSchema-instance\" xsi:schemaLocation=\"http://qafe.com/schema http://www.qafe.com/schema/2.2/application-mapping.xsd\"> \n" + "<presentation-tier>\n" + " <view>\n" + " <window id=\"window1\" displayname=\"Hello World\" width=\"200\" height=\"200\">\n" + " <rootpanel id=\"myRootPanel\"> \n" + " <verticallayout>\n\n" + " <!-- PLEASE ENTER HERE YOUR CODE -->\n\n" + " <label id=\"mylabel\" displayname=\"Hello World\" />\n\n" + " </verticallayout>\n" + " </rootpanel>\n" + " </window>\n" + " </view>\n" + "</presentation-tier>\n" + "</application-mapping> \n"; textArea.setText(sampleText); } }); codeMenu.addItem(clearXmlInput); codeMenu.addItem(createHeaderButton); codeMenu.addItem(createSampleAppButton); menu.addItem("Render", renderMenu); menu.addItem("Code", codeMenu); if (menu != null) { verticalPanel.add(menu); } verticalPanel.add(vp); // w.setWidget(tabPanel); /* * FMB Upload */ final FormPanel fmbForm = new FormPanel(); fmbForm.setAction(GWT.getModuleBaseURL() + "/rpc.fmbupload"); // 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. fmbForm.setEncoding(FormPanel.ENCODING_MULTIPART); fmbForm.setMethod(FormPanel.METHOD_POST); // Create a panel to hold all of the form widgets. VerticalPanel panelFmbUpload = new VerticalPanel(); panelFmbUpload.setWidth("580px"); panelFmbUpload.setHeight("500px"); // panelFmbUpload.setHeight("100%"); final FileUpload fmbFile = new FileUpload(); final TextBox emailBox = new TextBox(); final TextBox phoneBox = new TextBox(); fmbFile.setName("fmbUploadElement"); // Add an event handler to the form. fmbForm.addSubmitCompleteHandler(new FormPanel.SubmitCompleteHandler() { public void onSubmitComplete(SubmitCompleteEvent event) { if (event.getResults() != null) { if (event.getResults().startsWith("Conversion failed")) { ClientApplicationContext.getInstance().log("Conversion failed", "The file doesn't seem to be a valid Oracle Forms file. If you still want it to be converted for demo purpose, you can also send it to info@qafe.com", true); } else if (event.getResults().startsWith("UUID")) { String[] split = event.getResults().split("="); if (split.length == 2) { String uuid = split[1]; MainFactoryActions.processUIByUUID(uuid, textArea); MainFactoryActions.notify("FMB uploaded with filename [" + fmbFile.getFilename() + "]", "The message was sent by " + emailBox.getText() + " with optional phonenr: " + phoneBox.getText()); tabPanel.selectTab(0); } } else { // firefox workaround String[] split = event.getResults().split("="); if (split.length == 2) { String uuid = split[1]; uuid = uuid.replaceAll("</pre>", ""); MainFactoryActions.processUIByUUID(uuid, textArea); MainFactoryActions.notify("FMB uploaded with filename [" + fmbFile.getFilename() + "]", "The message was sent by " + emailBox.getText() + " with optional phonenr: " + phoneBox.getText()); tabPanel.selectTab(0); } else { ClientApplicationContext.getInstance().log(event.getResults()); } } } else { ClientApplicationContext.getInstance().log( "The Forms Conversion process could not handle this file. Please check the file.", "Check whether or not this file is an FMB (not an FMX)", true); } } }); FlexTable tempFmbPanel = new FlexTable(); tempFmbPanel.setWidget(0, 1, fmbFile); tempFmbPanel.setWidget(0, 0, new Label("Input for FMB")); tempFmbPanel.setWidget(1, 0, new HTML( "<p>Note: the FMB you are uploading is only for <span style=\"color:red;\">demo</span> purpose.</p>" + "<p>FMB's can have external dependencies like <span style=\"color:red;\">PLL, OLB's, images</span>,etc. Since they are <span style=\"color:red;\">not</span> included in the upload, the output might not appear correct.</p>" + "<p>For a more detailed conversion of your FMB's please contact us at <span style=\"color:red;\">info@qafe.com </span></p> <p/>" + "<p>Please fill in the information below, so that we can contact you for more information</p> ")); tempFmbPanel.getFlexCellFormatter().setColSpan(1, 0, 2); tempFmbPanel.setWidget(2, 0, new Label("E-mail: (required)")); emailBox.setName("fmbEmail"); emailBox.addBlurHandler(new BlurHandler() { public void onBlur(BlurEvent event) { String textValue = ((TextBoxBase) event.getSource()).getText(); if (textValue != null) { if (textValue.replaceFirst(TextFieldGVO.REGEXP_TYPE_EMAIL_VALUE, "").length() > 0) { ClientApplicationContext.getInstance().log("Email validation error", TextFieldGVO.TYPE_EMAIL_DEFAULT_MESSAGE, true); } } } }); tempFmbPanel.setWidget(2, 1, emailBox); tempFmbPanel.setWidget(3, 0, new Label("Phonenr:")); phoneBox.setName("fmbPhone"); phoneBox.addBlurHandler(new BlurHandler() { public void onBlur(BlurEvent event) { } }); tempFmbPanel.setWidget(3, 1, phoneBox); fmbForm.add(tempFmbPanel); panelFmbUpload.add(fmbForm); // Add a 'submit' button. panelFmbUpload.add(new Button("Generate", new ClickHandler() { public void onClick(ClickEvent event) { fmbForm.submit(); } })); // Add an event handler to the form. fmbForm.addSubmitHandler(new FormPanel.SubmitHandler() { public void onSubmit(SubmitEvent event) { // This event is fired just before the form is submitted. We can take // this opportunity to perform validation. if (emailBox.getText().length() == 0) { ClientApplicationContext.getInstance().log("Email validation error", "Please fill in your email address", true); event.cancel(); } else if (fmbFile.getFilename() == null || fmbFile.getFilename().length() == 0) { ClientApplicationContext.getInstance().log("Uploaded file validation error", "There is no file selected. Please select one to continue", true); event.cancel(); } } }); tabPanel.add(panelFmbUpload, "Forms Conversion"); vp.add(tabPanel); w.center(); if (QAFEKeywordsGVO.SYSTEM_MENUITEM_TRYME_FORMS.equals(subwindow)) { tabPanel.selectTab(1); } else { tabPanel.selectTab(0); } }
From source file:com.qualogy.qafe.gwt.client.ui.renderer.FileUploadRenderer.java
License:Apache License
public UIObject render(ComponentGVO component, String uuid, String parent, String context) { HorizontalPanel uiObject = null;//from w ww . j a v a2 s . c o m final String finalParent = parent; if (component != null) { if (component instanceof FileUploadGVO) { if (component.getMenu() != null) { final ComponentGVO finalComponentGVO = component; final String finalUuid = uuid; uiObject = new HorizontalPanel() { @Override public void onBrowserEvent(Event event) { if (event.getTypeInt() == Event.ONCONTEXTMENU) { DOM.eventPreventDefault(event); applyContextMenu(event, finalComponentGVO, finalUuid, finalParent); } super.onBrowserEvent(event); } @Override protected void setElement(Element elem) { super.setElement(elem); sinkEvents(Event.ONCONTEXTMENU); } }; } else { uiObject = new HorizontalPanel(); } final FormPanel formPanel = new FormPanel(); formPanel.setAction(GWT.getModuleBaseURL() + "/rpc.upload"); formPanel.setEncoding(FormPanel.ENCODING_MULTIPART); formPanel.setMethod(FormPanel.METHOD_POST); final Button uploadButtonComponent = new Button("Upload"); uploadButtonComponent.addClickHandler(new ClickHandler() { public void onClick(ClickEvent event) { formPanel.submit(); } }); final FileUpload fileUploadComponent = new FileUpload(); fileUploadComponent.setName("uploadElement"); fileUploadComponent.addChangeHandler(new ChangeHandler() { public void onChange(ChangeEvent event) { String filename = fileUploadComponent.getFilename(); boolean enabled = (filename != null) && (filename.length() > 0); uploadButtonComponent.setEnabled(enabled); } }); Hidden appId = new Hidden(); final String appID = ClientApplicationContext.getInstance().getWindowSession(); appId.setName("APPUUID=" + appID); Hidden windowId = new Hidden(); windowId.setName("WINDOWID=" + parent); Grid gridPanel = new Grid(2, 4); gridPanel.setWidget(0, 0, fileUploadComponent); gridPanel.setWidget(0, 1, uploadButtonComponent); gridPanel.setWidget(0, 2, appId); gridPanel.setWidget(0, 3, windowId); formPanel.add(gridPanel); RendererHelper.fillIn(component, formPanel, uuid, parent, context); formPanel.addSubmitCompleteHandler(new SubmitCompleteHandler() { public void onSubmitComplete(SubmitCompleteEvent event) { String uuId = event.getResults(); boolean success = false; if (uuId != null && uuId.indexOf("=") > 0) { uuId = uuId.substring(uuId.indexOf("=") + 1); success = true; } if (formPanel instanceof HasWidgets) { HasWidgets hasWidgets = (HasWidgets) formPanel; Iterator<Widget> itr = hasWidgets.iterator(); while (itr.hasNext()) { Widget widget = itr.next(); if (widget instanceof Grid) { Grid gridPanel = (Grid) widget; final FileUpload fileUpload = (FileUpload) gridPanel.getWidget(0, 0); final Button uploadButton = (Button) gridPanel.getWidget(0, 1); if (success) { fileUpload.setVisible(false); uploadButton.setVisible(false); String fileName = event.getResults().substring(0, event.getResults().indexOf("#")); final String viewUrl = GWT.getModuleBaseURL() + "/rpc.view?APPUUID=" + appID + "&WINDOWID=" + finalParent + "&VIEW=" + uuId; final Label fileNameLabel = new Label(fileName); DOM.setStyleAttribute(fileNameLabel.getElement(), "textDecoration", "underline"); DOM.setStyleAttribute(fileNameLabel.getElement(), "cursor", "hand"); fileNameLabel.addClickHandler(new ClickHandler() { public void onClick(ClickEvent event) { Window.open(viewUrl, "UploadedFile", null); } }); fileNameLabel.setVisible(true); final Label clearLabel = new Label("Clear"); clearLabel.setVisible(true); final String finalUuId = uuId; DOM.setStyleAttribute(clearLabel.getElement(), "textDecoration", "underline"); DOM.setStyleAttribute(clearLabel.getElement(), "cursor", "hand"); clearLabel.addClickHandler(new ClickHandler() { public void onClick(ClickEvent event) { MainFactoryActions.removeUploadedFile(appID, finalParent, finalUuId); DOM.setElementAttribute(fileUpload.getElement(), "fu-uuid", ""); fileNameLabel.setVisible(false); clearLabel.setVisible(false); fileUpload.setVisible(true); uploadButton.setVisible(true); init(fileUpload, uploadButton); } }); gridPanel.setWidget(1, 0, fileNameLabel); gridPanel.setWidget(1, 1, clearLabel); DOM.setElementAttribute(fileUpload.getElement(), "fu-uuid", uuId); CallbackHandler.createCallBack(formPanel, "onfinish", null, null); } else { Hyperlink fileNameLabel = (Hyperlink) gridPanel.getWidget(1, 0); fileNameLabel.setText("Uploading unsuccessfull."); fileNameLabel.setVisible(true); } } } } } }); uiObject.add(formPanel); init(fileUploadComponent, uploadButtonComponent); } } return uiObject; }
From source file:com.qualogy.qafe.mgwt.client.ui.renderer.FileUploadRenderer.java
License:Apache License
public UIObject render(ComponentGVO component, String owner, String uuid, String parent, String context, AbstractActivity activity) {//from w w w . j a v a 2 s .c om HorizontalPanel uiObject = null; final String finalParent = parent; if (component != null) { if (component instanceof FileUploadGVO) { if (component.getMenu() != null) { final ComponentGVO finalComponentGVO = component; final String finalUuid = uuid; uiObject = new HorizontalPanel() { @Override public void onBrowserEvent(Event event) { if (event.getTypeInt() == Event.ONCONTEXTMENU) { DOM.eventPreventDefault(event); applyContextMenu(event, finalComponentGVO, finalUuid, finalParent); } super.onBrowserEvent(event); } @Override protected void setElement(Element elem) { super.setElement(elem); sinkEvents(Event.ONCONTEXTMENU); } }; } else { uiObject = new HorizontalPanel(); } final FormPanel formPanel = new FormPanel(); formPanel.setAction(GWT.getModuleBaseURL() + "/rpc.upload"); formPanel.setEncoding(FormPanel.ENCODING_MULTIPART); formPanel.setMethod(FormPanel.METHOD_POST); FileUpload fileUploadComponent = new FileUpload(); fileUploadComponent.setName("uploadElement"); Button uploadButtonComponent = new Button("Upload"); uploadButtonComponent.addClickHandler(new ClickHandler() { public void onClick(ClickEvent event) { formPanel.submit(); } }); Hidden appId = new Hidden(); appId.setName("APPUUID=" + uuid); final String appID = uuid; Hidden windowId = new Hidden(); windowId.setName("WINDOWID=" + parent); Grid gridPanel = new Grid(2, 4); gridPanel.setWidget(0, 0, fileUploadComponent); gridPanel.setWidget(0, 1, uploadButtonComponent); gridPanel.setWidget(0, 2, appId); gridPanel.setWidget(0, 3, windowId); formPanel.add(gridPanel); RendererHelper.fillIn(component, formPanel, uuid, parent, context); formPanel.addSubmitCompleteHandler(new SubmitCompleteHandler() { public void onSubmitComplete(SubmitCompleteEvent event) { String uuId = event.getResults(); boolean success = false; if (uuId != null && uuId.indexOf("=") > 0) { uuId = uuId.substring(uuId.indexOf("=") + 1); success = true; } if (formPanel instanceof HasWidgets) { HasWidgets hasWidgets = (HasWidgets) formPanel; Iterator<Widget> itr = hasWidgets.iterator(); while (itr.hasNext()) { Widget widget = itr.next(); if (widget instanceof Grid) { Grid gridPanel = (Grid) widget; final FileUpload fileUpload = (FileUpload) gridPanel.getWidget(0, 0); final Button uploadButton = (Button) gridPanel.getWidget(0, 1); if (success) { fileUpload.setVisible(false); uploadButton.setVisible(false); String fileName = event.getResults().substring(0, event.getResults().indexOf("#")); final String viewUrl = GWT.getModuleBaseURL() + "/rpc.view?APPUUID=" + appID + "&WINDOWID=" + finalParent + "&VIEW=" + uuId; final Label fileNameLabel = new Label(fileName); DOM.setStyleAttribute(fileNameLabel.getElement(), "textDecoration", "underline"); DOM.setStyleAttribute(fileNameLabel.getElement(), "cursor", "hand"); fileNameLabel.addClickHandler(new ClickHandler() { public void onClick(ClickEvent event) { Window.open(viewUrl, "UploadedFile", null); } }); fileNameLabel.setVisible(true); final Label removeLabel = new Label("Remove"); removeLabel.setVisible(true); final String finalUuId = uuId; DOM.setStyleAttribute(removeLabel.getElement(), "textDecoration", "underline"); DOM.setStyleAttribute(removeLabel.getElement(), "cursor", "hand"); removeLabel.addClickHandler(new ClickHandler() { public void onClick(ClickEvent event) { MainFactoryActions.removeUploadedFile(appID, finalParent, finalUuId); DOM.setElementAttribute(fileUpload.getElement(), "fu-uuid", ""); fileNameLabel.setVisible(false); removeLabel.setVisible(false); fileUpload.setVisible(true); uploadButton.setVisible(true); } }); gridPanel.setWidget(1, 0, fileNameLabel); gridPanel.setWidget(1, 1, removeLabel); DOM.setElementAttribute(fileUpload.getElement(), "fu-uuid", uuId); CallbackHandler.createCallBack(formPanel, "onfinish", null, null); } else { Hyperlink fileNameLabel = (Hyperlink) gridPanel.getWidget(1, 0); fileNameLabel.setText("Uploading unsuccessfull."); fileNameLabel.setVisible(true); } } } } } }); uiObject.add(formPanel); } } return uiObject; }
From source file:com.sciencegadgets.client.UploadButton.java
License:Open Source License
public UploadButton() { uploadButton.setEncoding(FormPanel.ENCODING_MULTIPART); uploadButton.setMethod(FormPanel.METHOD_POST); DataModerator.database.getBlobURL(new AsyncCallback<String>() { @Override// w w w . ja v a2 s.c o m public void onSuccess(String url) { url = url.replace("Silverado", "localhost"); uploadButton.setAction(url); } @Override public void onFailure(Throwable caught) { Window.alert("Upload failed :("); } }); initWidget(contentPanel); shadowUpload.getElement().getStyle().setDisplay(Display.NONE); shadowUpload.setName("upload"); // shadowUpload.getElement().setAttribute("multiple", "multiple"); shadowUpload.addChangeHandler(new ChangeHandler() { @Override public void onChange(ChangeEvent event) { shadowForm.submit(); shadowForm.reset(); } }); shadowForm.addSubmitHandler(new SubmitHandler() { @Override public void onSubmit(SubmitEvent event) { // setLoadingFace(); } }); shadowForm.addSubmitCompleteHandler(new SubmitCompleteHandler() { @Override public void onSubmitComplete(SubmitCompleteEvent event) { String newUrl = event.getResults(); setAction(newUrl); } }); // Add the visible button uploadFace.addDomHandler(new ClickHandler() { @Override public void onClick(ClickEvent event) { shadowUpload.getElement().<InputElement>cast().click(); uploadFace.addStyleName("shakes"); new Timer() { @Override public void run() { uploadFace.removeStyleName("shakes"); } }.schedule(700); } }, ClickEvent.getType()); shadowForm.add(shadowUpload); contentPanel.add(uploadFace); contentPanel.add(shadowForm); }
From source file:com.siderakis.upload4gwt.client.UploadFormPanel.java
License:Apache License
public UploadFormPanel(final Boolean prefetchId) { super();// w w w . ja va2 s. com if (prefetchId) { progressSyncer.getNextId(new AsyncCallback<String>() { @Override public void onFailure(final Throwable caught) { } @Override public void onSuccess(final String result) { uploadId = result; setAction(actionBase); } }); } // 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. setEncoding(FormPanel.ENCODING_MULTIPART); setMethod(FormPanel.METHOD_POST); addSubmitHandler(new FormPanel.SubmitHandler() { @Override public void onSubmit(final SubmitEvent event) { // This event is fired just before the form is submitted. We can // take this opportunity to perform validation. if (uploadId == null) { event.cancel(); GWT.log("UploadId is null"); // try to get an id progressSyncer.getNextId(new AsyncCallback<String>() { @Override public void onFailure(final Throwable caught) { } @Override public void onSuccess(final String result) { // after id is received set it on form uploadId = result; setAction(actionBase); // then resubmit submit(); } }); } else { progressSyncer.addStatusDisplay(uploadId, statusDisplay); progressSyncer.start(uploadId); } } }); addSubmitCompleteHandler(new FormPanel.SubmitCompleteHandler() { @Override public void onSubmitComplete(final SubmitCompleteEvent event) { // When the form submission is successfully completed, this // event is fired. Assuming the service returned a response of // type // text/html, we can get the result text here (see the FormPanel // documentation for further explanation). // Window.alert(event.getResults()); // progressSyncer.stop(); } }); }
From source file:com.sneakyxpress.webapp.client.pages.truckclaim.TruckClaimContent.java
@Override public void getAndChangeContent(final String input) { HTMLPanel content = new HTMLPanel(""); // The base panel to hold all // content/*w ww . ja v a 2 s . c o m*/ content.addStyleName("row-fluid"); // The left side will hold the form HTMLPanel leftSide = new HTMLPanel(""); leftSide.addStyleName("span6"); // 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. form.setEncoding(FormPanel.ENCODING_MULTIPART); form.setMethod(FormPanel.METHOD_POST); System.out.println(GWT.getModuleBaseURL()); form.setAction(GWT.getModuleBaseURL() + "claimFormReq"); // Create TextBoxes, giving it a name so that it will be submitted. // Vendor Id textbox - used to add to form vendorIdBox = createTextBox("Vendor Key"); vendorIdBox.setName("vendorId"); vendorIdBox.setVisible(false); vendorIdBox.setText(input); // Facebook Id textbox - used to add to form fbIdBox = createTextBox("Vendor Key"); fbIdBox.setName("fbId"); fbIdBox.setVisible(false); // Name textbox nameBox = createTextBox("Name On Business License"); nameBox.setName("nameBoxInput"); nameBox.setStyleName("input-block-level"); // Email textbox emailBox = createTextBox("Contact Email"); emailBox.setName("emailBoxInput"); emailBox.setStyleName("input-block-level"); // Phone textbox phoneBox = createTextBox("Contact Number"); phoneBox.setName("phoneBoxInput"); phoneBox.setStyleName("input-block-level"); // Terms and agreement checkbox checkTerms = new CheckBox("I have read and agree to the Terms of Service."); checkTerms.setName("checkTerms"); checkTerms.setValue(false); checkTerms.setWidth("400px"); // Widget to set as form since can only add one widget to a form. VerticalPanel componentPanel = new VerticalPanel(); // Add text boxes and checkbox componentPanel.add(fbIdBox); componentPanel.add(vendorIdBox); componentPanel.add(nameBox); componentPanel.add(emailBox); componentPanel.add(phoneBox); componentPanel.add(checkTerms); // Add a 'submit' button. submitButton = new Button("Submit Request"); submitButton.addStyleName("btn btn-primary"); submitButton.addClickHandler(new ClickHandler() { @Override public void onClick(ClickEvent event) { form.submit(); } }); // Add an event handler to the form. Form validation checks form.addSubmitHandler(new FormPanel.SubmitHandler() { public void onSubmit(SubmitEvent event) { String name = nameBox.getText().trim(); String email = emailBox.getText().trim(); String number = phoneBox.getText().trim(); String facebookId = ""; // Check to make sure logged in user is making request if (!FacebookTools.isLoggedIn()) { String errorMsg = "Sorry you're not logged in. Login or register a new account. "; module.addMessage(true, errorMsg); // Re-enable button to allow user to resubmit form with // changes submitButton.setEnabled(true); event.cancel(); } // Check for empty strings else if (name.length() == 0 || email.length() == 0 || number.length() == 0) { String errorMsg = "Sorry some of your inputs are empty. Please enter something."; module.addMessage(true, errorMsg); // if/else to detect and find a bug (can't submit multiple // forms) if (name.length() == 0) { logger.log(Level.INFO, "Name Empty. Contents of TextBox: " + nameBox.getText()); nameBox.setFocus(true); } else if (email.length() == 0) { logger.log(Level.INFO, "Email Empty. Contents of TextBox: " + emailBox.getText()); emailBox.setFocus(true); } else if (number.length() == 0) { logger.log(Level.INFO, "Number Empty. Contents of TextBox: " + phoneBox.getText()); phoneBox.setFocus(true); } else { logger.log(Level.SEVERE, "Unfound bug"); } // Re-enable button to allow user to resubmit form with // changes submitButton.setEnabled(true); event.cancel(); } // Check name length does not exceed 70 else if (name.length() > STANDARD_MAX_FULL_NAME_LENGTH) { String errorMsg = "Sorry, " + name + " is too long. " + "Please ensure your full name input is within " + STANDARD_MAX_FULL_NAME_LENGTH + " characters"; module.addMessage(true, errorMsg); // Re-enable button to allow user to resubmit form with // changes submitButton.setEnabled(true); event.cancel(); } else if (!name.matches(NAME_PATTERN)) { String errorMsg = "Sorry, \"" + name + "\" contains invalid characters. " + "Only letters and spaces are allowed. Please check your name input and try again."; module.addMessage(true, errorMsg); // Re-enable button to allow user to resubmit form with // changes submitButton.setEnabled(true); event.cancel(); } // Check email length does not exceed 255 else if (email.length() > STANDARD_MAX_EMAIL_LENGTH) { String errorMsg = "Sorry, " + email + " is too long. " + "Please ensure your email input is within " + STANDARD_MAX_EMAIL_LENGTH + " characters"; module.addMessage(true, errorMsg); // Re-enable button to allow user to resubmit form with // changes submitButton.setEnabled(true); event.cancel(); } else if (!email.matches(EMAIL_PATTERN)) { String errorMsg = "Sorry, \"" + email + "\" contains invalid characters. " + "Please check your email input and try again."; module.addMessage(true, errorMsg); // Re-enable button to allow user to resubmit form with // changes submitButton.setEnabled(true); event.cancel(); } // Check phone number input only contains numbers else if (!number.matches(PHONE_PATTERN)) { String errorMsg = "Sorry, \"" + number + "\" contains invalid characters. " + "Only numbers are allowed. Please check your phone number input and try again."; module.addMessage(true, errorMsg); // Re-enable button to allow user to resubmit form with // changes submitButton.setEnabled(true); event.cancel(); } // Phone number must have 10 digits else if (number.length() > STANDARD_PHONE_NUMBER_LENGTH || number.length() < STANDARD_PHONE_NUMBER_LENGTH) { String errorMsg = "Please ensure your phone number input " + number + " contains " + STANDARD_PHONE_NUMBER_LENGTH + " numbers."; module.addMessage(true, errorMsg); // Re-enable button to allow user to resubmit form with // changes submitButton.setEnabled(true); event.cancel(); } else if (!checkTerms.getValue()) { String errorMsg = "Sorry, please check off terms and agreement box and retry submitting your request again"; module.addMessage(true, errorMsg); // Re-enable button to allow user to resubmit form with // changes submitButton.setEnabled(true); event.cancel(); } else { // All checks passed, grab user's ID facebookId = FacebookTools.getUserId(); fbIdBox.setText(facebookId); // Disable button to disallow users to resubmit same form // twice submitButton.setEnabled(false); } } }); form.addSubmitCompleteHandler(new FormPanel.SubmitCompleteHandler() { public void onSubmitComplete(SubmitCompleteEvent event) { // When the form submission is successfully completed, this // event is // fired. Assuming the service returned a response of type // text/html, // we can get the result text here (see the FormPanel // documentation for // further explanation). if (event.getResults().equals("true")) { // Display message to user module.addMessage(false, "Your request has been submitted to our administrators."); } else { module.addMessage(true, "Error in submitting your request in submitting your requestion. you may have sent a claim form for this truck already."); } // Clear form form.reset(); // Re-direct to home page since it's faster than re-directing to // user profile page History.newItem(new GreetingContent(module).getPageStub()); } }); componentPanel.add(getButtonWidget(submitButton)); form.setWidget(componentPanel); leftSide.add(form); // The right side will hold the ToS HTMLPanel rightSide = new HTMLPanel( "<p class=\"well\"><strong>Terms of Service:</strong> " + TERMS_OF_SERVICE + "</p>"); rightSide.addStyleName("span6"); // Put it all together content.add(leftSide); content.add(rightSide); // Change the content module.changeContent(content); }
From source file:com.square.composant.envoi.email.square.client.composant.FichierUpload.java
License:Open Source License
/** Initialisation du formulaire. */ private void initForm() { // Action appeler lors du submit this.setAction("uploadFichierEnvoiEmail"); // Encodage//from www .ja v a 2s . c om this.setEncoding(FormPanel.ENCODING_MULTIPART); // Mthode de soumission this.setMethod(FormPanel.METHOD_POST); // Ajout du handler pour la soumission du formulaire this.addSubmitHandler(this); this.addSubmitCompleteHandler(this); }
From source file:com.tasktop.c2c.server.tasks.client.widgets.AttachmentsEditorView.java
License:Open Source License
public AttachmentsEditorView() { initWidget(uiBinder.createAndBindUi(this)); attachmentForm.setEncoding(FormPanel.ENCODING_MULTIPART); attachmentForm.setMethod(FormPanel.METHOD_POST); attachment.setName("attachment0"); attachmentDescription.setName("description0"); hiddenTaskHandle.setName(AttachmentUploadUtil.TASK_HANDLE_FORM_NAME); attachmentSubmitButton.addClickHandler(new ClickHandler() { @Override//from ww w .j av a2 s.c om public void onClick(ClickEvent event) { attachmentForm.submit(); } }); }