|
@@ -17,9 +17,11 @@ import de.tu_darmstadt.tk.SmartHomeNetworkSim.core.PacketCollector;
|
|
|
import de.tu_darmstadt.tk.SmartHomeNetworkSim.core.PacketSniffer;
|
|
|
import de.tu_darmstadt.tk.SmartHomeNetworkSim.core.SmartDevice;
|
|
|
import de.tu_darmstadt.tk.SmartHomeNetworkSim.view.util.Utility;
|
|
|
+import weka.classifiers.functions.supportVector.RBFKernel;
|
|
|
|
|
|
import java.awt.Container;
|
|
|
|
|
|
+import javax.swing.ButtonGroup;
|
|
|
import javax.swing.JButton;
|
|
|
import javax.swing.JLabel;
|
|
|
|
|
@@ -30,6 +32,8 @@ import java.util.Iterator;
|
|
|
import java.util.Observable;
|
|
|
import java.util.Observer;
|
|
|
import java.awt.event.ActionEvent;
|
|
|
+import javax.swing.JRadioButton;
|
|
|
+import javax.swing.JCheckBox;
|
|
|
|
|
|
|
|
|
/**
|
|
@@ -95,6 +99,19 @@ public class EditPacketSniffer extends JDialog implements Observer {
|
|
|
* True if the collector is being edited
|
|
|
*/
|
|
|
private boolean edit;
|
|
|
+ /**
|
|
|
+ * RadioButton marked, if in testing mode
|
|
|
+ */
|
|
|
+ private JRadioButton rdbtnTesting;
|
|
|
+ /**
|
|
|
+ * RadioButton for training mode
|
|
|
+ */
|
|
|
+ private JRadioButton rdbtnTraining;
|
|
|
+ /**
|
|
|
+ * Checkbox, which is checked if enabled
|
|
|
+ */
|
|
|
+ private JCheckBox chckbxEnabled;
|
|
|
+
|
|
|
/**
|
|
|
* Creates and shows a new EditAlgorithmPopUp
|
|
|
* @param controller controller
|
|
@@ -230,6 +247,33 @@ public class EditPacketSniffer extends JDialog implements Observer {
|
|
|
|
|
|
btnCreatePacketCollector.setBounds(180, 310, 210, 30);
|
|
|
getContentPane().add(btnCreatePacketCollector);
|
|
|
+
|
|
|
+ chckbxEnabled = new JCheckBox("Enabled");
|
|
|
+ chckbxEnabled.setBounds(190, 50, 113, 25);
|
|
|
+ getContentPane().add(chckbxEnabled);
|
|
|
+ chckbxEnabled.addActionListener(a->{
|
|
|
+ if(mutex)return;
|
|
|
+ boolean active = chckbxEnabled.isSelected();
|
|
|
+ captureController.setActive(collector, active);
|
|
|
+ });
|
|
|
+
|
|
|
+
|
|
|
+ rdbtnTraining = new JRadioButton("Training");
|
|
|
+ rdbtnTraining.setBounds(185, 82, 127, 25);
|
|
|
+ getContentPane().add(rdbtnTraining);
|
|
|
+ rdbtnTraining.addActionListener(a->{
|
|
|
+ if(mutex)return;
|
|
|
+ captureController.setMode(collector, !rdbtnTraining.isSelected());
|
|
|
+ });
|
|
|
+
|
|
|
+ rdbtnTesting = new JRadioButton("Testing");
|
|
|
+ rdbtnTesting.setBounds(185, 112, 127, 25);
|
|
|
+ getContentPane().add(rdbtnTesting);
|
|
|
+ rdbtnTesting.addActionListener(a->{
|
|
|
+ if(mutex)return;
|
|
|
+ captureController.setMode(collector, rdbtnTesting.isSelected());
|
|
|
+ });
|
|
|
+
|
|
|
|
|
|
this.addWindowListener(new WindowAdapter() {
|
|
|
//Remove Observer, if window is closing
|
|
@@ -242,7 +286,9 @@ public class EditPacketSniffer extends JDialog implements Observer {
|
|
|
update(null, null);
|
|
|
this.setLocationRelativeTo(parent);
|
|
|
|
|
|
-
|
|
|
+ ButtonGroup group = new ButtonGroup();
|
|
|
+ group.add(rdbtnTesting);
|
|
|
+ group.add(rdbtnTraining);
|
|
|
}
|
|
|
|
|
|
@Override
|
|
@@ -332,6 +378,15 @@ public class EditPacketSniffer extends JDialog implements Observer {
|
|
|
scrollPaneDevices.getVerticalScrollBar().setValue(pos);
|
|
|
listDevices = newList;
|
|
|
|
|
|
+ /**
|
|
|
+ * Manage checkboxes
|
|
|
+ */
|
|
|
+ chckbxEnabled.setSelected(collector.isActive());
|
|
|
+ rdbtnTesting.setEnabled(collector.isActive());
|
|
|
+ rdbtnTesting.setSelected(collector.getMode());
|
|
|
+ rdbtnTraining.setEnabled(collector.isActive());
|
|
|
+ rdbtnTraining.setSelected(!collector.getMode());
|
|
|
+
|
|
|
if(this.edit&&!captureController.getPacketCollectors().contains(collector)){
|
|
|
/**
|
|
|
* If Collector was removed -> Close PopUp
|