package GKA.GUI; import java.awt.Color; import GKA.Graph.GKAGraphInterface; public class GKAGraphMenuPanel extends GKAPanel{ /** * */ private static final long serialVersionUID = 5691021885027802967L; private GKAAddVertexButton addVertex; private GKAAddEdgeButton addEdge; private GKAResetLayoutButton resetLayout; private GKARemoveButton removeButton; private GKAShortestPathBroadButton broadButton; private GKACancelButton cancelButton; private GKADijkstraButton dijkstraButton; private GKAFloydWarshallButton floydWarshallButton; private GKAFordFulkersonButton fordFulkersonButton; private GKAEdmondKarpButton edmondKarpButton; private GenerateRandomButton generateRandomButton; private GenerateRandomTourGraphButton generateRandomTourButton; private GKAMinimumSpanningTreeButton minimumSpanningTreeButton; private GKAMSTHeuristicTreeButton mstHeuristicTreeButton; private GKANearestNeighbourButton nearestNeighbourButton; public GKAGraphMenuPanel(int width, int height, int posX, int posY, GKAGraphInterface graph) { super(width, height, posX, posY, Color.GREEN); setLayout(null); resetLayout = new GKAResetLayoutButton(width - 10, 25, 5, 5); add(resetLayout); addVertex = new GKAAddVertexButton(width - 10, 25, 5, 35); add(addVertex); addEdge = new GKAAddEdgeButton(width - 10, 25, 5, 65); add(addEdge); removeButton = new GKARemoveButton(width - 10, 25, 5, 95); add(removeButton); broadButton = new GKAShortestPathBroadButton(width - 10, 25, 5, 125); add(broadButton); if (graph.isWeighted()){ dijkstraButton = new GKADijkstraButton(width - 10, 25, 5, 155); add(dijkstraButton); floydWarshallButton = new GKAFloydWarshallButton(width - 10, 25, 5, 185); add(floydWarshallButton); if(graph.isDirected()){ fordFulkersonButton = new GKAFordFulkersonButton(width - 10, 25, 5, 215); add(fordFulkersonButton); edmondKarpButton = new GKAEdmondKarpButton(width -10, 25, 5, 245); add(edmondKarpButton); }else{ minimumSpanningTreeButton = new GKAMinimumSpanningTreeButton(width - 10, 25, 5, 215); add(minimumSpanningTreeButton); mstHeuristicTreeButton = new GKAMSTHeuristicTreeButton(width - 10, 25, 5, 245); add(mstHeuristicTreeButton); nearestNeighbourButton = new GKANearestNeighbourButton(width - 10, 25, 5, 275); add(nearestNeighbourButton); } } generateRandomButton = new GenerateRandomButton(width - 10, 25, 5, height-70); add(generateRandomButton); generateRandomTourButton = new GenerateRandomTourGraphButton(width - 10, 25, 5, height -100); add(generateRandomTourButton); cancelButton = new GKACancelButton(width - 10, 25, 5, height-40); add(cancelButton); } }