1 package org.lucane.applications.reunion.ui; 2 3 import java.awt.BorderLayout ; 4 import java.awt.event.ActionEvent ; 5 import java.awt.event.ActionListener ; 6 import java.awt.event.KeyEvent ; 7 import java.awt.event.KeyListener ; 8 9 import javax.swing.JButton ; 10 import javax.swing.JLabel ; 11 import javax.swing.JTextField ; 12 13 import org.lucane.applications.reunion.Reunion; 14 import org.lucane.client.widgets.ManagedWindow; 15 import org.lucane.common.ConnectInfo; 16 17 public class SubjectDialog extends ManagedWindow 18 implements KeyListener , ActionListener 19 { 20 private Reunion plugin; 21 private ConnectInfo[] friends; 22 23 private JTextField txtSubject; 24 private JButton btnOk; 25 private boolean starter; 26 27 public SubjectDialog(Reunion plugin, ConnectInfo[] friends) 28 { 29 super(plugin, plugin.getTitle()); 30 this.plugin = plugin; 31 this.friends = friends; 32 33 init(plugin.tr("subject"), true); 34 } 35 36 public SubjectDialog(Reunion plugin, ConnectInfo coordinator) 37 { 38 super(plugin, plugin.getTitle()); 39 this.plugin = plugin; 40 init("[" + coordinator.getName() + "]", false); 41 } 42 43 public void init(String label, boolean starter) 44 { 45 setName("dialog"); 46 setExitPluginOnClose(true); 47 48 this.starter = starter; 49 50 this.txtSubject = new JTextField (50); 51 if(!starter) 52 { 53 this.txtSubject.setText(plugin.getSubject()); 54 this.txtSubject.setEditable(false); 55 this.btnOk = new JButton (plugin.tr("accept")); 56 } 57 else 58 this.btnOk = new JButton (plugin.tr("send")); 59 60 getContentPane().setLayout(new BorderLayout ()); 61 getContentPane().add(new JLabel (plugin.tr("subject")), BorderLayout.WEST); 62 getContentPane().add(txtSubject, BorderLayout.CENTER); 63 getContentPane().add(btnOk, BorderLayout.EAST); 64 65 getContentPane().addKeyListener(this); 66 txtSubject.addKeyListener(this); 67 btnOk.addActionListener(this); 68 } 69 70 public void actionPerformed(ActionEvent ae) 71 { 72 if(this.starter) 73 { 74 plugin.setSubject(txtSubject.getText()); 75 plugin.showMainWindow(); 76 for(int i=0;i<friends.length;i++) 77 { 78 ConnectInfo friend = friends[i]; 79 plugin.inviteUser(friend); 80 } 81 } 82 else 83 { 84 plugin.showMainWindow(); 85 plugin.joinMeeting(); 86 } 87 88 dispose(); 89 } 90 91 public void keyReleased(KeyEvent ke) {} 92 public void keyTyped(KeyEvent ke) {} 93 public void keyPressed(KeyEvent ke) 94 { 95 if(ke.getKeyCode() == KeyEvent.VK_ENTER) 96 { 97 ke.consume(); 98 btnOk.doClick(); 99 } 100 } 101 } | Popular Tags |