/** * */ package lampiro.screens; import java.util.Enumeration; import lampiro.screens.RosterScreen.UIContact; import lampiro.screens.RosterScreen.UIGroup; import it.yup.ui.UIItem; import it.yup.ui.UIMenu; import it.yup.util.ResourceIDs; import it.yup.xmpp.Contact; import it.yup.xmpp.XMPPClient; import it.yup.xmpp.packets.Message; import it.yup.xmpp.packets.Stanza; /** * @author luca * */ public class GrpMessageComposerScreen extends MessageComposerScreen { /* * The group to send the message to */ private UIGroup uiGroup; /** * @param user * @param preferredResource * @param default_type */ public GrpMessageComposerScreen(UIGroup group, int default_type) { super(XMPPClient.getInstance().getMyContact(), "", default_type); this.uiGroup = group; setTitle(rm.getString(ResourceIDs.STR_MESSAGE_TO) + " " + group.name); } public void menuAction(UIMenu menu, UIItem cmd) { if(cmd == cmd_send) { Message msg; Enumeration en = this.uiGroup.contacts.elements(); String body = tf_body.getText(); if(body == null) body = ""; XMPPClient xmppClient = XMPPClient.getInstance(); while (en.hasMoreElements()) { UIContact ithUIContact = (UIContact) en.nextElement(); Contact ithContact = ithUIContact.c; String to= ithContact.jid; if(cg_type.getSelectedIndex() == 0) { msg = new Message(to, null); String subject = tf_subject.getText(); if(subject != null && !"".equals(subject)) { msg.addElement(Stanza.NS_JABBER_CLIENT, Message.SUBJECT).addText(subject); } } else { msg = new Message(to, "chat"); } msg.setBody(body); xmppClient.sendPacket(msg); ithContact.addMessageToHistory(null,msg); } RosterScreen.closeAndOpenRoster(this); } else { super.menuAction(menu, cmd); } } }