Package jade.imtp.leap.sms

Source Code of jade.imtp.leap.sms.SMSManagerGui

package jade.imtp.leap.sms;

//#J2ME_EXCLUDE_FILE

import java.awt.*;
import java.awt.event.*;
import javax.swing.*;

import jade.util.leap.Properties;
import java.io.IOException;

/**
   @author Giovanni Caire - TILAB
*/
public class SMSManagerGui extends JFrame {
 
  private JTextField msisdnTF, portTF;
  private JTextArea textTA;
 
  private SMSManager theSMSManager;
   
  public SMSManagerGui() {
    super("SMS Manager GUI");
  }
 
  public void init(Properties pp) {   
    theSMSManager = SMSManager.getInstance(pp);
   
    if (theSMSManager != null) {
      setSize(getProperSize(320, 400));
      setResizable(false);

      JPanel main = new JPanel();
      main.setLayout(new GridLayout(2, 1));
     
      JPanel p = new JPanel();
      p.setLayout(new GridLayout(5, 1));
      // MSISDN
      p.add(new JLabel("Telephon number:"));
      msisdnTF = new JTextField();
      p.add(msisdnTF);
      // PORT
      p.add(new JLabel("Port:"));
      portTF = new JTextField();
      p.add(portTF);
      // TEXT
      p.add(new JLabel("Message text:"));

      main.add(p);
     
      p = new JPanel();
      p.setLayout(new GridLayout(1, 1));
      textTA = new JTextArea();
      p.add(textTA);
     
      main.add(p);
     
      getContentPane().add(main, BorderLayout.CENTER);
     
      // Command buttons
      p = new JPanel();
      JButton b = new JButton("Send");
      b.addActionListener(new ActionListener() {
        public void actionPerformed(ActionEvent e) {
          try {
            String msisdn = msisdnTF.getText().trim();
            String tmp = portTF.getText();
            int port = -1;
            if (tmp != null && tmp.trim().length() > 0) {
              port = Integer.parseInt(portTF.getText());
            }
            String txt = textTA.getText();
            theSMSManager.sendTextMessage(msisdn, port, txt);
          }
          catch (Exception ex) {
            ex.printStackTrace();
          }
        }
      } );
      p.add(b);
      getContentPane().add(p, BorderLayout.SOUTH);
     
      showCorrect();
    }
    else {
      System.out.println("Cannot retrieve the SMS Manager");
    }     
  }
 
  private void showCorrect(){
    // Get the size of the default screen
    Dimension dim = Toolkit.getDefaultToolkit().getScreenSize();
    int scrH = (int) dim.getHeight();
    int scrW = (int) dim.getWidth();
    setLocation((int) (scrW * 0.2), (int) (scrH * 0.1) );
    setVisible(true);
  }

  private Dimension getProperSize(int maxX, int maxY) {
    Dimension screenSize = Toolkit.getDefaultToolkit().getScreenSize();
    int x = (screenSize.width < maxX ? screenSize.width : maxX);
    int y = (screenSize.height < maxY ? screenSize.height : maxY);
    return new Dimension(x, y);
  }
 
  public static void main(String[] args) {
    if (args != null && args.length == 1) {
      try {
        Properties pp = new Properties();
        pp.load(args[0]);
        SMSManagerGui gui = new SMSManagerGui();
        gui.init(pp);
      }
      catch(IOException ioe) {
        ioe.printStackTrace();
      }
    }
    else {
      System.out.println("USAGE: java SMSManagerGui <properties-file>");
    }
  }
}
 
TOP

Related Classes of jade.imtp.leap.sms.SMSManagerGui

TOP
Copyright © 2018 www.massapi.com. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.