package Simulator; //import javax.swing.JTabbedPane; import javax.swing.BorderFactory; import javax.swing.border.Border; import javax.swing.JLabel; import javax.swing.JPanel; import javax.swing.JFrame; import javax.swing.JTextField; import javax.swing.JButton; import java.awt.*; import java.awt.event.*; import java.io.*; import java.util.*; public class CprobArguments extends JFrame implements ActionListener { JPanel Arguments = new JPanel(); JPanel chart = new JPanel(); JLabel label1; JLabel label2; JLabel label3; JLabel label4; JLabel label5; JLabel label6; JLabel label7; JTextField text1 = new JTextField(20); JTextField text2 = new JTextField(20); JTextField text3 = new JTextField(20); JTextField text4 = new JTextField(20); JTextField text5 = new JTextField(20); JTextField text6 = new JTextField(20); JTextField text7 = new JTextField(20); JButton button1 = new JButton("Show me"); int argu1; int argu2; float argu3; int argu4; int argu5; int argu6; int argu7; public CprobArguments(int i) { Arguments.setLayout(new GridLayout(6,3,5,5)); Arguments.setBorder(BorderFactory.createTitledBorder("Arguments Setting")); text7.setText("4"); // give it a default value switch (i) { case 1: { label1 = new JLabel("Min Size : ",JLabel.RIGHT); label2 = new JLabel("Max Size : ",JLabel.RIGHT); label3 = new JLabel("Increment Size : ",JLabel.RIGHT); label4 = new JLabel("Message Quantity : ",JLabel.RIGHT); label5 = new JLabel("Link Length : ",JLabel.RIGHT); label6 = new JLabel("Hop Number : ",JLabel.RIGHT); text1.setText("100"); text2.setText("1000"); text3.setText("100"); text4.setText("10"); text5.setText("1000"); text6.setText("4"); Arguments.add(label1); Arguments.add(text1); Arguments.add(new JLabel("[1 -- 1500] Bytes")); Arguments.add(label2); Arguments.add(text2); Arguments.add(new JLabel("[1 -- 1500] Bytes")); Arguments.add(label3); Arguments.add(text3); Arguments.add(new JLabel("[1 -- 500] Bytes")); Arguments.add(label4); Arguments.add(text4); Arguments.add(new JLabel("[1 -- 500]")); Arguments.add(label5); Arguments.add(text5); Arguments.add(new JLabel("[1 -- 100000] Meters")); Arguments.add(label6); Arguments.add(text6); Arguments.add(button1); button1.addActionListener(this); button1.setActionCommand("MessSize"); break; } case 2: { label1 = new JLabel("Min Quantity : ",JLabel.RIGHT); label2 = new JLabel("Max Quantity : ",JLabel.RIGHT); label3 = new JLabel("Increment : ",JLabel.RIGHT); label4 = new JLabel("Message Size : ",JLabel.RIGHT); label5 = new JLabel("Link Length : ",JLabel.RIGHT); label6 = new JLabel("Hop Number : ",JLabel.RIGHT); text1.setText("5"); text2.setText("30"); text3.setText("3"); text4.setText("1000"); text5.setText("1000"); text6.setText("4"); Arguments.add(label1); Arguments.add(text1); Arguments.add(new JLabel("[1 -- 1000]")); Arguments.add(label2); Arguments.add(text2); Arguments.add(new JLabel("[1 -- 1000]")); Arguments.add(label3); Arguments.add(text3); Arguments.add(new JLabel("[1 -- 200]")); Arguments.add(label4); Arguments.add(text4); Arguments.add(new JLabel("[1 -- 1500] Bytes")); Arguments.add(label5); Arguments.add(text5); Arguments.add(new JLabel("[1 -- 100000] Meters")); Arguments.add(label6); Arguments.add(text6); Arguments.add(button1); button1.addActionListener(this); button1.setActionCommand("MessQuantity"); break; } case 3: { label1 = new JLabel("Min Link Length : ",JLabel.RIGHT); label2 = new JLabel("Max Link Length : ",JLabel.RIGHT); label3 = new JLabel("Increment : ",JLabel.RIGHT); label4 = new JLabel("Message Size : ",JLabel.RIGHT); label5 = new JLabel("Message Quantity : ",JLabel.RIGHT); label6 = new JLabel("Hop Number : ",JLabel.RIGHT); text1.setText("500"); text2.setText("10000"); text3.setText("500"); text4.setText("1000"); text5.setText("15"); text6.setText("4"); Arguments.add(label1); Arguments.add(text1); Arguments.add(new JLabel("[1 -- 100000] Meters")); Arguments.add(label2); Arguments.add(text2); Arguments.add(new JLabel("[1 -- 100000] Meters")); Arguments.add(label3); Arguments.add(text3); Arguments.add(new JLabel("[1 -- 10000] Meters")); Arguments.add(label4); Arguments.add(text4); Arguments.add(new JLabel("[1 -- 1500] Bytes")); Arguments.add(label5); Arguments.add(text5); Arguments.add(new JLabel("[1 -- 500]")); Arguments.add(label6); Arguments.add(text6); Arguments.add(button1); button1.addActionListener(this); button1.setActionCommand("LinkLength"); break; } case 4: { Arguments.setLayout(new GridLayout(7,3,5,5)); label1 = new JLabel("Min Router Speed : ",JLabel.RIGHT); label2 = new JLabel("Max Router Speed : ",JLabel.RIGHT); label3 = new JLabel("Increment : ",JLabel.RIGHT); label4 = new JLabel("Message Size : ",JLabel.RIGHT); label5 = new JLabel("Link Length : ",JLabel.RIGHT); label6 = new JLabel("Message Quantity : ",JLabel.RIGHT); label7 = new JLabel("Hop Number : ",JLabel.RIGHT); text1.setText("5"); text2.setText("1000"); text3.setText("10"); text4.setText("1000"); text5.setText("1000"); text6.setText("15"); Arguments.add(label1); Arguments.add(text1); Arguments.add(new JLabel("[1 -- 1000] MBps")); Arguments.add(label2); Arguments.add(text2); Arguments.add(new JLabel("[1 -- 1000] MBps")); Arguments.add(label3); Arguments.add(text3); Arguments.add(new JLabel("[1 -- 200] MBps")); Arguments.add(label4); Arguments.add(text4); Arguments.add(new JLabel("[1 -- 1500] Bytes")); Arguments.add(label5); Arguments.add(text5); Arguments.add(new JLabel("[1 -- 100000] Meters")); Arguments.add(label6); Arguments.add(text6); Arguments.add(new JLabel("[1 -- 500]")); Arguments.add(label7); Arguments.add(text7); Arguments.add(button1); button1.addActionListener(this); button1.setActionCommand("RouterSpeed"); break; } case 5: { label1 = new JLabel("Min Hop Quantity : ",JLabel.RIGHT); label2 = new JLabel("Max Hop Quantity : ",JLabel.RIGHT); label3 = new JLabel("Increment : ",JLabel.RIGHT); label4 = new JLabel("Message Size : ",JLabel.RIGHT); label5 = new JLabel("Link Length : ",JLabel.RIGHT); label6 = new JLabel("Message Quantity : ",JLabel.RIGHT); text1.setText("4"); text2.setText("20"); text3.setText("1"); text4.setText("1000"); text5.setText("1000"); text6.setText("15"); Arguments.add(label1); Arguments.add(text1); Arguments.add(new JLabel("[1 -- 50]")); Arguments.add(label2); Arguments.add(text2); Arguments.add(new JLabel("[1 -- 50]")); Arguments.add(label3); Arguments.add(text3); Arguments.add(new JLabel("[1 -- 10]")); Arguments.add(label4); Arguments.add(text4); Arguments.add(new JLabel("[1 -- 1500] Bytes")); Arguments.add(label5); Arguments.add(text5); Arguments.add(new JLabel("[1 -- 100000] Meters")); Arguments.add(label6); Arguments.add(text6); Arguments.add(button1); button1.addActionListener(this); button1.setActionCommand("HopNumber"); } } // end of switch Arguments.setSize(450,200); this.getContentPane().add(Arguments,BorderLayout.NORTH); chart.setSize(450,300); this.getContentPane().add(chart,BorderLayout.CENTER); this.addWindowListener(new WindowAdapter() { public void windowClosing(WindowEvent e) { } //this.setDefaultCloseOperation(DISPOSE_ON_CLOSE);} //System.exit(0);} }); this.setSize(456,550); show(); } public void actionPerformed (ActionEvent e) { Integer inte = Integer.valueOf(text1.getText()); argu1 = inte.intValue(); inte = Integer.valueOf(text2.getText()); argu2 = inte.intValue(); Float floating = Float.valueOf(text3.getText()); argu3 = floating.floatValue(); inte = Integer.valueOf(text4.getText()); argu4 = inte.intValue(); inte = Integer.valueOf(text5.getText()); argu5 = inte.intValue(); inte = Integer.valueOf(text6.getText()); argu6 = inte.intValue(); inte = Integer.valueOf(text7.getText()); argu7 = inte.intValue(); //this.resize(456,550); CprobStatistic CS = new CprobStatistic (e.getActionCommand(),argu1,argu2,argu3,argu4,argu5,argu6,argu7,chart); /* try { System.in.read(); } catch (IOException d) { System.out.print("Error" + d); System.exit(0); } */ } /* public static void main(String[] args) { JFrame frame = new CprobArguments(2); frame.setTitle("Cprobing Statistics form"); // center the window Dimension screenSize = Toolkit.getDefaultToolkit().getScreenSize(); Dimension frameSize = frame.getSize(); if (frameSize.height > screenSize.height) frameSize.height = screenSize.height; if (frameSize.width > screenSize.width) frameSize.width = screenSize.width; frame.setLocation((screenSize.width - frameSize.width)/2,(screenSize.height - frameSize.height)/2); } */ }