You are viewing a plain text version of this content. The canonical link for it is here.
Posted to server-dev@james.apache.org by do...@apache.org on 2013/09/12 06:09:09 UTC
svn commit: r1522303 - in
/james/hupa/trunk/client/src/main/java/org/apache/hupa/client:
activity/ComposeActivity.java ui/ComposeContentView.ui.xml
ui/ComposeHeaderView.ui.xml ui/ComposeStatusView.ui.xml ui/ComposeView.java
ui/ComposeView.ui.xml
Author: dongxu
Date: Thu Sep 12 04:09:09 2013
New Revision: 1522303
URL: http://svn.apache.org/r1522303
Log:
make attachments sending work as expected
Removed:
james/hupa/trunk/client/src/main/java/org/apache/hupa/client/ui/ComposeContentView.ui.xml
james/hupa/trunk/client/src/main/java/org/apache/hupa/client/ui/ComposeHeaderView.ui.xml
james/hupa/trunk/client/src/main/java/org/apache/hupa/client/ui/ComposeStatusView.ui.xml
Modified:
james/hupa/trunk/client/src/main/java/org/apache/hupa/client/activity/ComposeActivity.java
james/hupa/trunk/client/src/main/java/org/apache/hupa/client/ui/ComposeView.java
james/hupa/trunk/client/src/main/java/org/apache/hupa/client/ui/ComposeView.ui.xml
Modified: james/hupa/trunk/client/src/main/java/org/apache/hupa/client/activity/ComposeActivity.java
URL: http://svn.apache.org/viewvc/james/hupa/trunk/client/src/main/java/org/apache/hupa/client/activity/ComposeActivity.java?rev=1522303&r1=1522302&r2=1522303&view=diff
==============================================================================
--- james/hupa/trunk/client/src/main/java/org/apache/hupa/client/activity/ComposeActivity.java (original)
+++ james/hupa/trunk/client/src/main/java/org/apache/hupa/client/activity/ComposeActivity.java Thu Sep 12 04:09:09 2013
@@ -20,12 +20,16 @@
package org.apache.hupa.client.activity;
<<<<<<< HEAD
+<<<<<<< HEAD
+=======
+>>>>>>> make attachments sending work as expected
import gwtupload.client.IUploadStatus.Status;
import gwtupload.client.IUploader;
import gwtupload.client.IUploader.OnCancelUploaderHandler;
import gwtupload.client.IUploader.OnFinishUploaderHandler;
import gwtupload.client.IUploader.OnStatusChangedHandler;
+<<<<<<< HEAD
import java.util.ArrayList;
import java.util.Iterator;
import java.util.List;
@@ -56,6 +60,8 @@ import org.apache.hupa.shared.events.Mai
import com.google.gwt.activity.shared.Activity;
=======
+=======
+>>>>>>> make attachments sending work as expected
import java.util.ArrayList;
import java.util.List;
@@ -63,6 +69,7 @@ import org.apache.hupa.client.activity.M
import org.apache.hupa.client.rf.SendMessageRequest;
import org.apache.hupa.client.ui.WidgetDisplayable;
import org.apache.hupa.client.validation.EmailListValidator;
+import org.apache.hupa.shared.data.MessageAttachmentImpl;
import org.apache.hupa.shared.domain.GenericResult;
import org.apache.hupa.shared.domain.MessageAttachment;
import org.apache.hupa.shared.domain.SendMessageAction;
@@ -388,9 +395,40 @@ public class ComposeActivity extends App
}
});
registerHandler(display.getSendClick().addClickHandler(sendClickHandler));
+ display.getUploader().addOnStatusChangedHandler(onStatusChangedHandler);
+ display.getUploader().addOnFinishUploadHandler(onFinishUploadHandler);
+ display.getUploader().addOnCancelUploadHandler(onCancelUploadHandler);
}
+<<<<<<< HEAD
>>>>>>> make send text mail work excellently
+=======
+ private OnFinishUploaderHandler onFinishUploadHandler = new OnFinishUploaderHandler() {
+ public void onFinish(IUploader uploader) {
+ if (uploader.getStatus() == Status.SUCCESS) {
+ String name = uploader.getInputName();
+ MessageAttachment attachment = new MessageAttachmentImpl();
+ attachment.setName(name);
+ attachments.add(attachment);
+ }
+ }
+ };
+
+ private OnStatusChangedHandler onStatusChangedHandler = new OnStatusChangedHandler() {
+ public void onStatusChanged(IUploader uploader) {
+ Status stat = display.getUploader().getStatus();
+ }
+ };
+
+ private OnCancelUploaderHandler onCancelUploadHandler = new OnCancelUploaderHandler() {
+ public void onCancel(IUploader uploader) {
+ for (MessageAttachment attachment : attachments) {
+ if (attachment.getName().equals(uploader.getInputName()))
+ attachments.remove(attachment);
+ }
+ }
+ };
+>>>>>>> make attachments sending work as expected
protected ClickHandler sendClickHandler = new ClickHandler() {
public void onClick(ClickEvent event) {
if (!validate())
@@ -416,6 +454,7 @@ public class ComposeActivity extends App
attachMent.setSize(attach.getSize());
attachMent.setContentType(attach.getContentType());
attaches.add(attachMent);
+ System.out.println("++++++-----");
}
message.setFrom(display.getFromText());
message.setSubject(display.getSubjectText().getText());
@@ -613,6 +652,11 @@ public class ComposeActivity extends App
=======
ListBox getFromList();
+<<<<<<< HEAD
>>>>>>> add user label, yet issue46 occur
+=======
+
+ IUploader getUploader();
+>>>>>>> make attachments sending work as expected
}
}
Modified: james/hupa/trunk/client/src/main/java/org/apache/hupa/client/ui/ComposeView.java
URL: http://svn.apache.org/viewvc/james/hupa/trunk/client/src/main/java/org/apache/hupa/client/ui/ComposeView.java?rev=1522303&r1=1522302&r2=1522303&view=diff
==============================================================================
--- james/hupa/trunk/client/src/main/java/org/apache/hupa/client/ui/ComposeView.java (original)
+++ james/hupa/trunk/client/src/main/java/org/apache/hupa/client/ui/ComposeView.java Thu Sep 12 04:09:09 2013
@@ -20,12 +20,14 @@
package org.apache.hupa.client.ui;
import org.apache.hupa.client.HupaCSS;
+import org.apache.hupa.client.HupaConstants;
import org.apache.hupa.client.HupaMessages;
import org.apache.hupa.client.activity.ComposeActivity;
import org.apache.hupa.client.validation.AddStyleAction;
import org.apache.hupa.client.validation.EmailListValidator;
import org.apache.hupa.client.validation.NotEmptyValidator;
import org.apache.hupa.client.validation.SetFocusAction;
+import org.apache.hupa.shared.SConsts;
import org.apache.hupa.widgets.editor.Editor;
import org.apache.hupa.widgets.ui.MultiValueSuggestArea;
@@ -96,7 +98,9 @@ import com.google.gwt.user.client.ui.But
import com.google.gwt.user.client.ui.Composite;
import com.google.gwt.user.client.ui.DockLayoutPanel;
import com.google.gwt.user.client.ui.FlexTable;
+import com.google.gwt.user.client.ui.FlexTable.FlexCellFormatter;
import com.google.gwt.user.client.ui.FlowPanel;
+import com.google.gwt.user.client.ui.HTMLTable.RowFormatter;
import com.google.gwt.user.client.ui.HasHTML;
import com.google.gwt.user.client.ui.HasText;
import com.google.gwt.user.client.ui.Label;
@@ -104,19 +108,22 @@ import com.google.gwt.user.client.ui.Lis
import com.google.gwt.user.client.ui.SimplePanel;
import com.google.gwt.user.client.ui.TextArea;
import com.google.gwt.user.client.ui.TextBox;
-import com.google.gwt.user.client.ui.FlexTable.FlexCellFormatter;
-import com.google.gwt.user.client.ui.HTMLTable.RowFormatter;
import com.google.inject.Inject;
import eu.maydu.gwt.validation.client.DefaultValidationProcessor;
import eu.maydu.gwt.validation.client.ValidationProcessor;
import eu.maydu.gwt.validation.client.i18n.ValidationMessages;
+import gwtupload.client.BaseUploadStatus;
+import gwtupload.client.IFileInput.FileInputType;
+import gwtupload.client.IUploadStatus;
+import gwtupload.client.IUploader;
+import gwtupload.client.MultiUploader;
public class ComposeView extends Composite implements ComposeActivity.Displayable {
-
@UiField protected FlexTable headerTable;
@UiField protected SimplePanel composeEditor;
+ @UiField protected FlowPanel attach;
@UiField protected Style style;
private ListBox selectFrom;
// we only need one instance for all suggestion-boxes
@@ -132,6 +139,7 @@ public class ComposeView extends Composi
private Editor editor;
private ValidationProcessor validator;
+ private MultiUploader uploader = null;
private static final int ROW_FROM = 0;
private static final int ROW_TO = 1;
@@ -159,7 +167,7 @@ public class ComposeView extends Composi
}
@Inject
- public ComposeView(HupaMessages messages) {
+ public ComposeView(HupaConstants constants, HupaMessages messages) {
initWidget(binder.createAndBindUi(this));
FlexCellFormatter cellFormatter = headerTable.getFlexCellFormatter();
RowFormatter rowFormatter = headerTable.getRowFormatter();
@@ -238,6 +246,14 @@ public class ComposeView extends Composi
.addActionForFailure(fAction), new NotEmptyValidator(getToText()).addActionForFailure(sAction)
.addActionForFailure(fAction));
editor = new Editor();
+
+ BaseUploadStatus uploadStatus = new BaseUploadStatus();
+ uploadStatus.setCancelConfiguration(IUploadStatus.GMAIL_CANCEL_CFG);
+ uploader = new MultiUploader(FileInputType.ANCHOR, uploadStatus);
+ uploader.setServletPath(GWT.getModuleBaseURL() + SConsts.SERVLET_UPLOAD);
+ uploader.avoidRepeatFiles(true);
+ uploader.setI18Constants(constants);
+ attach.add(uploader);
composeEditor.add(editor);
}
@@ -276,13 +292,12 @@ public class ComposeView extends Composi
// TODO hardcode to the first identifier
return selectFrom.getItemText(0);
}
-
+
@Override
- public ListBox getFromList(){
+ public ListBox getFromList() {
return selectFrom;
}
-
@Override
public HasText getMessageText() {
return editor;
@@ -293,11 +308,17 @@ public class ComposeView extends Composi
return editor;
}
+ @Override
+ public IUploader getUploader() {
+ return uploader;
+ }
+
// TODO
private TextArea create() {
TextArea t = new TextArea();
return t;
}
+
interface ComposeUiBinder extends UiBinder<DockLayoutPanel, ComposeView> {
}
Modified: james/hupa/trunk/client/src/main/java/org/apache/hupa/client/ui/ComposeView.ui.xml
URL: http://svn.apache.org/viewvc/james/hupa/trunk/client/src/main/java/org/apache/hupa/client/ui/ComposeView.ui.xml?rev=1522303&r1=1522302&r2=1522303&view=diff
==============================================================================
--- james/hupa/trunk/client/src/main/java/org/apache/hupa/client/ui/ComposeView.ui.xml (original)
+++ james/hupa/trunk/client/src/main/java/org/apache/hupa/client/ui/ComposeView.ui.xml Thu Sep 12 04:09:09 2013
@@ -282,8 +282,8 @@
<g:HTMLPanel addStyleNames="{style.composeoptionsbox}">composeOption</g:HTMLPanel>
</g:north>
<g:east size="257">
- <g:HTMLPanel addStyleNames="{style.composeattachments}">composeAttachment
- </g:HTMLPanel>
+ <g:FlowPanel ui:field="attach" addStyleNames="{style.composeattachments}">
+ </g:FlowPanel>
</g:east>
<g:center>
<g:SimplePanel ui:field="composeEditor"
---------------------------------------------------------------------
To unsubscribe, e-mail: server-dev-unsubscribe@james.apache.org
For additional commands, e-mail: server-dev-help@james.apache.org