Browse Source

Fixes Connections/Ports showing in multiple NetworkTree branches

Andreas T. Meyer-Berg 6 years ago
parent
commit
ed9c5b7d8b

+ 1 - 0
src/main/java/de/tu_darmstadt/tk/SmartHomeNetworkSim/view/VisualisationInteractor.java

@@ -446,6 +446,7 @@ public class VisualisationInteractor implements MouseInputListener,
 			connectionFrom.addPort(p1);
 			l.addConnection(c);
 			model.addConnection(c);
+			model.addConnectionNetwork(l);
 			
 		}
 		connectionFrom = null;

+ 5 - 2
src/main/java/de/tu_darmstadt/tk/SmartHomeNetworkSim/view/popups/NetworkTreePanel.java

@@ -8,6 +8,7 @@ import javax.swing.tree.DefaultMutableTreeNode;
 import de.tu_darmstadt.tk.SmartHomeNetworkSim.control.Controller;
 import de.tu_darmstadt.tk.SmartHomeNetworkSim.core.Connection;
 import de.tu_darmstadt.tk.SmartHomeNetworkSim.core.Link;
+import de.tu_darmstadt.tk.SmartHomeNetworkSim.core.Port;
 
 import java.awt.Dimension;
 
@@ -26,11 +27,13 @@ public class NetworkTreePanel extends JPanel {
 		for(Link l: c.getLinks()){
 			DefaultMutableTreeNode link = new DefaultMutableTreeNode(l.getName());
 			for(Connection con: c.getConnections()){
-				DefaultMutableTreeNode connection = new DefaultMutableTreeNode(con.getName());/*
+				if(!l.getConnections().contains(con))continue;
+				DefaultMutableTreeNode connection = new DefaultMutableTreeNode(con.getName());
 				for(Port p:con.getParticipants()){
+					if(!l.getDevices().contains(p.getOwner())||!con.getParticipants().contains(p))continue;
 					DefaultMutableTreeNode port = new DefaultMutableTreeNode(p.getOwner().getName());
 					connection.add(port);
-				}*/
+				}
 				link.add(connection);
 			}
 			root.add(link);

+ 1 - 3
src/main/java/de/tu_darmstadt/tk/SmartHomeNetworkSim/view/popups/NetworkTreeWindow.java

@@ -15,10 +15,8 @@ public class NetworkTreeWindow extends JFrame {
 	private static final long serialVersionUID = -4052775416023427170L;
 
 	public NetworkTreeWindow(Controller c) {
-		setBounds(new Rectangle(0, 0, 460, 300));
+		setBounds(new Rectangle(0, 0, 800, 600));
 		setResizable(false);
 		this.setContentPane(new NetworkTreePanel(c));
-		
-		// TODO Auto-generated constructor stub
 	}
 }