List of usage examples for com.google.gwt.event.dom.client DragLeaveHandler DragLeaveHandler
DragLeaveHandler
From source file:org.openelis.ui.widget.Browser.java
License:Open Source License
/** * Constructor that takes an arguments if the browser should auto-size to the window, * and the number of allowed screens to show at once. * @param size/* w w w.j a va 2 s. com*/ * @param limit */ @UiConstructor public Browser(int limit) { browser = new AbsolutePanel(); browser.setWidth("100%"); browser.setHeight("100%"); layout = new LayoutPanel(); windows = new HashMap<WindowInt, WindowValues>(); windowsByKey = new HashMap<String, WindowInt>(); dragController = new PickupDragController(browser, true); dropController = new AbsolutePositionDropController(browser) { @Override public void onDrop(DragContext context) { super.onDrop(context); ((WindowInt) context.draggable).positionGlass(); } }; this.limit = limit; layout.add(browser); initWidget(layout); dragController.setBehaviorDragProxy(true); dragController.registerDropController(dropController); DOM.setStyleAttribute(browser.getElement(), "overflow", "auto"); setKeyHandling(); setCSS(UIResources.INSTANCE.window()); // These handlers are added to prevent the default drag/drop from happening addDomHandler(new DropHandler() { @Override public void onDrop(DropEvent event) { event.preventDefault(); event.stopPropagation(); } }, DropEvent.getType()); addDomHandler(new DragEnterHandler() { @Override public void onDragEnter(DragEnterEvent event) { event.preventDefault(); event.stopPropagation(); } }, DragEnterEvent.getType()); addDomHandler(new DragLeaveHandler() { @Override public void onDragLeave(DragLeaveEvent event) { event.preventDefault(); event.stopPropagation(); } }, DragLeaveEvent.getType()); addDomHandler(new DragOverHandler() { @Override public void onDragOver(DragOverEvent event) { event.stopPropagation(); event.preventDefault(); } }, DragOverEvent.getType()); }
From source file:org.roda.wui.client.ingest.transfer.TransferUpload.java
private void updateUploadForm() { String uploadUrl = getUploadUrl(); if (uploadUrl != null) { SafeHtml html = SafeHtmlUtils.fromSafeConstant( "<form id='upload' method='post' action='" + uploadUrl + "' enctype='multipart/form-data'>" + "<div id='drop'><h4>" + messages.ingestTransferUploadDropHere() + "</h4><a>" + messages.ingestTransferUploadBrowseFiles() + "</a>" + "<input title='" + RodaConstants.API_PARAM_UPLOAD + "' type='file' name='" + RodaConstants.API_PARAM_UPLOAD + "' multiple='true' />" + " </div>" + "<input title='hiddenSubmit' type='submit' hidden/> </form>"); uploadForm.setHTML(html);// w w w . j a va2s . co m uploadList.setHTML(SafeHtmlUtils.fromSafeConstant("<ul id='upload-list'></ul>")); uploadForm.addDomHandler(new DragOverHandler() { @Override public void onDragOver(DragOverEvent event) { uploadForm.addStyleName(DRAGOVER); } }, DragOverEvent.getType()); uploadForm.addDomHandler(new DragLeaveHandler() { @Override public void onDragLeave(DragLeaveEvent event) { uploadForm.removeStyleName(DRAGOVER); } }, DragLeaveEvent.getType()); uploadForm.addDomHandler(new DropHandler() { @Override public void onDrop(DropEvent event) { uploadForm.removeStyleName(DRAGOVER); } }, DropEvent.getType()); JavascriptUtils.runMiniUploadForm(); } else { uploadForm.setHTML(SafeHtmlUtils.EMPTY_SAFE_HTML); } }
From source file:org.uberfire.ext.layout.editor.client.dnd.DropColumnPanel.java
License:Apache License
public DropColumnPanel(final ColumnEditorWidget parent) { super();// www. jav a2 s.c o m this.parent = parent; Label label = GWT.create(Label.class); label.setText(CommonConstants.INSTANCE.Column()); this.add(label); addCSSClass(WebAppResource.INSTANCE.CSS().dropInactive()); addDragOverHandler(new DragOverHandler() { @Override public void onDragOver(DragOverEvent event) { dragOverHandler(); } }); addDragLeaveHandler(new DragLeaveHandler() { @Override public void onDragLeave(DragLeaveEvent event) { dragLeaveHandler(); } }); addDropHandler(new DropHandler() { @Override public void onDrop(DropEvent event) { dropHandler(event); } }); }
From source file:org.uberfire.ext.layout.editor.client.dnd.DropRowPanel.java
License:Apache License
public DropRowPanel(final LayoutEditorWidget parent) { this.parent = parent; Label label = GWT.create(Label.class); label.setText(CommonConstants.INSTANCE.NewRow()); this.add(label); addCSSClass(WebAppResource.INSTANCE.CSS().dropInactive()); addDragOverHandler(new DragOverHandler() { @Override/*from w w w. j a v a 2s. c o m*/ public void onDragOver(DragOverEvent event) { dragOverHandler(); } }); addDragLeaveHandler(new DragLeaveHandler() { @Override public void onDragLeave(DragLeaveEvent event) { dragLeaveHandler(); } }); addDropHandler(new DropHandler() { @Override public void onDrop(DropEvent event) { dropHandler(event); } }); }
From source file:org.vectomatic.svg.edit.client.command.edit.EditImageGeometryManipulator.java
License:Open Source License
/** * Binds this manipulator to the specified SVG rect. * @param element// www .j a v a2s . c o m * The SVG rect this manipulator is applied to. * @return The root element of the manipulator */ @Override public OMSVGElement bind(Record record) { this.record = record; SVGElementModel model = (SVGElementModel) record.getModel(); mode = Mode.PASSIVE; // Create the graphical representations for the manipulator // The manipulator has the following SVG structure // <g> // <rect/> position // <g> // <rect/> top-left corner // <rect/> bottom-right corner // </g> // </g> svg = model.getOwner().getSvgElement(); g = new OMSVGGElement(); g.setClassNameBaseVal(AppBundle.INSTANCE.css().imageGeometryManipulator()); posHandle = new OMSVGRectElement(); OMSVGGElement handleGroup = new OMSVGGElement(); topLeftHandle = new OMSVGRectElement(); bottomRightHandle = new OMSVGRectElement(); g.appendChild(posHandle); g.appendChild(handleGroup); handleGroup.appendChild(topLeftHandle); handleGroup.appendChild(bottomRightHandle); monitorModel = true; model.addChangeListener(this); scheduleInit(); g.addDragEnterHandler(new DragEnterHandler() { @Override public void onDragEnter(DragEnterEvent event) { g.getElement().setAttribute(ATT_ACCEPT, ATT_ACCEPT_YES); event.stopPropagation(); event.preventDefault(); } }); g.addDragLeaveHandler(new DragLeaveHandler() { @Override public void onDragLeave(DragLeaveEvent event) { g.getElement().setAttribute(ATT_ACCEPT, ATT_ACCEPT_NO); event.stopPropagation(); event.preventDefault(); } }); g.addDragOverHandler(new DragOverHandler() { @Override public void onDragOver(DragOverEvent event) { event.stopPropagation(); event.preventDefault(); } }); g.addDropHandler(new DropHandler() { @Override public void onDrop(DropEvent event) { g.getElement().setAttribute(ATT_ACCEPT, ATT_ACCEPT_NO); processFiles(event.getDataTransfer().<DataTransferExt>cast().getFiles()); event.stopPropagation(); event.preventDefault(); } }); return g; }
From source file:org.wisepersist.gwt.uploader.demo.client.MultiUploadWithProgressBarAndDragAndDrop.java
License:Apache License
@Override public Widget getUploaderPanel() { final VerticalPanel progressBarPanel = new VerticalPanel(); final Map<String, ProgressBar> progressBars = new LinkedHashMap<String, ProgressBar>(); final Map<String, Image> cancelButtons = new LinkedHashMap<String, Image>(); uploader.setUploadURL("/upload").setButtonImageURL(AppResources.INSTANCE.upload().getSafeUri().asString()) .setButtonWidth(133).setButtonHeight(22).setFileSizeLimit("50 MB") .setButtonCursor(Uploader.Cursor.HAND).setButtonAction(Uploader.ButtonAction.SELECT_FILES) .setFileQueuedHandler(new FileQueuedHandler() { public boolean onFileQueued(final FileQueuedEvent fileQueuedEvent) { // Create a Progress Bar for this file final ProgressBar progressBar = new ProgressBar(0.0, 1.0, 0.0, new CancelProgressBarTextFormatter()); progressBar.setTitle(fileQueuedEvent.getFile().getName()); progressBar.setHeight("18px"); progressBar.setWidth("200px"); progressBars.put(fileQueuedEvent.getFile().getId(), progressBar); // Add Cancel Button Image final Image cancelButton = new Image( AppResources.INSTANCE.cancel().getSafeUri().asString()); cancelButton.setStyleName("cancelButton"); cancelButton.addClickHandler(new ClickHandler() { public void onClick(ClickEvent event) { uploader.cancelUpload(fileQueuedEvent.getFile().getId(), false); progressBars.get(fileQueuedEvent.getFile().getId()).setProgress(-1.0d); cancelButton.removeFromParent(); }/* w w w .j a v a2 s . c o m*/ }); cancelButtons.put(fileQueuedEvent.getFile().getId(), cancelButton); // Add the Bar and Button to the interface HorizontalPanel progressBarAndButtonPanel = new HorizontalPanel(); progressBarAndButtonPanel.add(progressBar); progressBarAndButtonPanel.add(cancelButton); progressBarPanel.add(progressBarAndButtonPanel); return true; } }).setUploadProgressHandler(new UploadProgressHandler() { public boolean onUploadProgress(UploadProgressEvent uploadProgressEvent) { ProgressBar progressBar = progressBars.get(uploadProgressEvent.getFile().getId()); progressBar.setProgress((double) uploadProgressEvent.getBytesComplete() / uploadProgressEvent.getBytesTotal()); return true; } }).setUploadCompleteHandler(new UploadCompleteHandler() { public boolean onUploadComplete(UploadCompleteEvent uploadCompleteEvent) { cancelButtons.get(uploadCompleteEvent.getFile().getId()).removeFromParent(); uploader.startUpload(); return true; } }).setFileDialogStartHandler(new FileDialogStartHandler() { public boolean onFileDialogStartEvent(FileDialogStartEvent fileDialogStartEvent) { if (uploader.getStats().getUploadsInProgress() <= 0) { // Clear the uploads that have completed, if none are in process progressBarPanel.clear(); progressBars.clear(); cancelButtons.clear(); } return true; } }).setFileDialogCompleteHandler(new FileDialogCompleteHandler() { public boolean onFileDialogComplete(FileDialogCompleteEvent fileDialogCompleteEvent) { if (fileDialogCompleteEvent.getTotalFilesInQueue() > 0) { if (uploader.getStats().getUploadsInProgress() <= 0) { uploader.startUpload(); } } return true; } }).setFileQueueErrorHandler(new FileQueueErrorHandler() { public boolean onFileQueueError(FileQueueErrorEvent fileQueueErrorEvent) { Window.alert("Upload of file " + fileQueueErrorEvent.getFile().getName() + " failed due to [" + fileQueueErrorEvent.getErrorCode().toString() + "]: " + fileQueueErrorEvent.getMessage()); return true; } }).setUploadErrorHandler(new UploadErrorHandler() { public boolean onUploadError(UploadErrorEvent uploadErrorEvent) { cancelButtons.get(uploadErrorEvent.getFile().getId()).removeFromParent(); Window.alert("Upload of file " + uploadErrorEvent.getFile().getName() + " failed due to [" + uploadErrorEvent.getErrorCode().toString() + "]: " + uploadErrorEvent.getMessage()); return true; } }); VerticalPanel verticalPanel = new VerticalPanel(); verticalPanel.add(uploader); if (Uploader.isAjaxUploadWithProgressEventsSupported()) { final Label dropFilesLabel = new Label("Drop Files Here"); dropFilesLabel.setStyleName("dropFilesLabel"); dropFilesLabel.addDragOverHandler(new DragOverHandler() { public void onDragOver(DragOverEvent event) { if (!uploader.getButtonDisabled()) { dropFilesLabel.addStyleName("dropFilesLabelHover"); } } }); dropFilesLabel.addDragLeaveHandler(new DragLeaveHandler() { public void onDragLeave(DragLeaveEvent event) { dropFilesLabel.removeStyleName("dropFilesLabelHover"); } }); dropFilesLabel.addDropHandler(new DropHandler() { public void onDrop(DropEvent event) { dropFilesLabel.removeStyleName("dropFilesLabelHover"); if (uploader.getStats().getUploadsInProgress() <= 0) { progressBarPanel.clear(); progressBars.clear(); cancelButtons.clear(); } uploader.addFilesToQueue(Uploader.getDroppedFiles(event.getNativeEvent())); event.preventDefault(); } }); verticalPanel.add(dropFilesLabel); } HorizontalPanel horizontalPanel = new HorizontalPanel(); horizontalPanel.add(verticalPanel); horizontalPanel.add(progressBarPanel); horizontalPanel.setVerticalAlignment(HorizontalPanel.ALIGN_MIDDLE); horizontalPanel.setCellHorizontalAlignment(uploader, HorizontalPanel.ALIGN_LEFT); horizontalPanel.setCellHorizontalAlignment(progressBarPanel, HorizontalPanel.ALIGN_RIGHT); return horizontalPanel; }