Merge banan dev
This commit is contained in:
@@ -0,0 +1,100 @@
|
||||
package Applicatie;
|
||||
|
||||
import java.awt.BorderLayout;
|
||||
import java.awt.Color;
|
||||
import java.awt.Dimension;
|
||||
import java.awt.event.ActionEvent;
|
||||
import java.awt.event.ActionListener;
|
||||
import java.awt.event.KeyEvent;
|
||||
import java.awt.event.KeyListener;
|
||||
|
||||
import javax.swing.JButton;
|
||||
import javax.swing.JFrame;
|
||||
import javax.swing.JLabel;
|
||||
import javax.swing.JOptionPane;
|
||||
import javax.swing.JPanel;
|
||||
import javax.swing.JTextField;
|
||||
|
||||
public class AddPeoplePanel extends JFrame {
|
||||
|
||||
public AddPeoplePanel(Panel topPanel) {
|
||||
super("Adding people");
|
||||
setDefaultCloseOperation(HIDE_ON_CLOSE);
|
||||
setResizable(false);
|
||||
|
||||
JPanel mainPanel = new JPanel(new BorderLayout());
|
||||
JLabel label;
|
||||
JButton button;
|
||||
|
||||
//Top:
|
||||
JPanel panel = new JPanel();
|
||||
label = new JLabel("Enter the amount of people you want to add: ");
|
||||
panel.add(label);
|
||||
mainPanel.add(panel,BorderLayout.NORTH);
|
||||
//Center:
|
||||
panel = new JPanel();
|
||||
JTextField amountOfPeopleField = new JTextField("0");
|
||||
amountOfPeopleField.setPreferredSize(new Dimension(100,20));
|
||||
amountOfPeopleField.addKeyListener(new KeyListener() {
|
||||
|
||||
@Override
|
||||
public void keyTyped(KeyEvent e) {
|
||||
}
|
||||
|
||||
@Override
|
||||
public void keyReleased(KeyEvent e) {
|
||||
try {
|
||||
amountOfPeopleField.setBackground(Color.WHITE);
|
||||
int amountOfPeople = Integer.parseInt(amountOfPeopleField.getText());
|
||||
amountOfPeopleField.setText(amountOfPeople + "");
|
||||
}
|
||||
catch(NumberFormatException nf) {
|
||||
amountOfPeopleField.setBackground(Color.RED);
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
public void keyPressed(KeyEvent e) {
|
||||
}
|
||||
});
|
||||
|
||||
label = new JLabel("people ");
|
||||
panel.add(amountOfPeopleField);
|
||||
panel.add(label);
|
||||
mainPanel.add(panel,BorderLayout.CENTER);
|
||||
//Bottom:
|
||||
panel = new JPanel();
|
||||
button = new JButton("Cancel");
|
||||
button.addActionListener(new ActionListener() {
|
||||
|
||||
@Override
|
||||
public void actionPerformed(ActionEvent e) {
|
||||
AddPeoplePanel.this.dispose();
|
||||
}
|
||||
});
|
||||
panel.add(button);
|
||||
button = new JButton("Apply");
|
||||
button.addActionListener(new ActionListener() {
|
||||
|
||||
@Override
|
||||
public void actionPerformed(ActionEvent e) {
|
||||
if(amountOfPeopleField.getBackground() != Color.RED) {
|
||||
topPanel.addVisitors(Integer.parseInt(amountOfPeopleField.getText()));
|
||||
AddPeoplePanel.this.dispose();
|
||||
}
|
||||
else
|
||||
JOptionPane.showMessageDialog(topPanel, "Only numbers are accepted");
|
||||
}
|
||||
});
|
||||
panel.add(button);
|
||||
mainPanel.add(panel,BorderLayout.SOUTH);
|
||||
|
||||
add(mainPanel);
|
||||
|
||||
//Finishing off
|
||||
pack();
|
||||
setSize(290,150);
|
||||
setLocationRelativeTo(null);
|
||||
setVisible(true);
|
||||
}
|
||||
}
|
||||
@@ -19,13 +19,16 @@ public class ControlPanel extends JPanel
|
||||
private static final long serialVersionUID = 6805244250902524351L;
|
||||
|
||||
private Panel p;
|
||||
private int people;
|
||||
JLabel timeLabel;
|
||||
JLabel peopleLabel;
|
||||
|
||||
public ControlPanel()
|
||||
{
|
||||
super();
|
||||
BoxLayout box = new BoxLayout(this, BoxLayout.X_AXIS);
|
||||
setLayout(box);
|
||||
people = 0;
|
||||
|
||||
setPreferredSize(new Dimension(0,50));
|
||||
setBorder(BorderFactory.createLineBorder(new Color(180, 180, 180)));
|
||||
@@ -105,7 +108,7 @@ public class ControlPanel extends JPanel
|
||||
peoplePanel.setMaximumSize(new Dimension(285,50));
|
||||
add(peoplePanel);
|
||||
{
|
||||
JLabel peopleLabel = new JLabel("0/0 People");
|
||||
peopleLabel = new JLabel(people + " People");
|
||||
peopleLabel.setFont(new Font("Segoe UI", Font.PLAIN, 20));
|
||||
peoplePanel.add(peopleLabel);
|
||||
|
||||
@@ -115,7 +118,7 @@ public class ControlPanel extends JPanel
|
||||
peopleButton.addActionListener(new ActionListener(){
|
||||
public void actionPerformed(ActionEvent e)
|
||||
{
|
||||
p.addVisitors();
|
||||
new AddPeoplePanel(p);
|
||||
}
|
||||
});
|
||||
peoplePanel.add(peopleButton);
|
||||
@@ -147,6 +150,7 @@ public class ControlPanel extends JPanel
|
||||
|
||||
public void setPeople(int people)
|
||||
{
|
||||
|
||||
this.people = people;
|
||||
peopleLabel.setText(people + " People");
|
||||
}
|
||||
}
|
||||
|
||||
+17
-14
@@ -229,7 +229,16 @@ public class Panel extends JPanel implements ActionListener
|
||||
return waypoints;
|
||||
}
|
||||
|
||||
public void addVisitors()
|
||||
public void addVisitors(ArrayList<DrawObject> entrances)
|
||||
{
|
||||
|
||||
DrawObject entrance = entrances.get((int) Math.floor(Math.random()*entrances.size()));
|
||||
Point point = new Point((int)entrance.getPosition().getX(),(int)entrance.getPosition().getY());
|
||||
visitors.add(new Visitor("visitor",point, agenda, objects, waypoints, date));
|
||||
|
||||
}
|
||||
|
||||
public void addVisitors(int count)
|
||||
{
|
||||
ArrayList<DrawObject> entrances = new ArrayList<>();
|
||||
for(DrawObject object : objects) {
|
||||
@@ -238,21 +247,14 @@ public class Panel extends JPanel implements ActionListener
|
||||
}
|
||||
}
|
||||
if(!entrances.isEmpty()) {
|
||||
DrawObject entrance = entrances.get((int) Math.floor(Math.random()*entrances.size()));
|
||||
Point point = new Point((int)entrance.getPosition().getX(),(int)entrance.getPosition().getY());
|
||||
visitors.add(new Visitor("visitor",point, agenda, objects, waypoints, date));
|
||||
for (int i = 0; i < count; i++)
|
||||
{
|
||||
addVisitors(entrances);
|
||||
}
|
||||
}
|
||||
else {
|
||||
else
|
||||
JOptionPane.showMessageDialog(this, "You don't have an entrance");
|
||||
}
|
||||
}
|
||||
|
||||
public void addVisitors(int count)
|
||||
{
|
||||
for (int i = 0; i < count; i++)
|
||||
{
|
||||
addVisitors();
|
||||
}
|
||||
cp.setPeople(visitors.size());
|
||||
}
|
||||
|
||||
public void paintComponent(Graphics g)
|
||||
@@ -668,6 +670,7 @@ public class Panel extends JPanel implements ActionListener
|
||||
this.height = height;
|
||||
paths.clear();
|
||||
objects.clear();
|
||||
visitors.clear();
|
||||
cameraScale = 1;
|
||||
switch (terrainIndex)
|
||||
{
|
||||
|
||||
@@ -94,7 +94,6 @@ public class Visitor
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
// moveToTarget(target, objects, visitors, paths);
|
||||
move(target, panel);
|
||||
}
|
||||
@@ -177,7 +176,6 @@ public class Visitor
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
public boolean checkIfOnWaypoint(Panel panel)
|
||||
|
||||
@@ -4,7 +4,6 @@ import java.awt.Color;
|
||||
import java.awt.event.MouseAdapter;
|
||||
import java.awt.event.MouseEvent;
|
||||
import java.awt.geom.Point2D;
|
||||
import java.awt.geom.Rectangle2D;
|
||||
import java.awt.image.BufferedImage;
|
||||
|
||||
import javax.swing.SwingUtilities;
|
||||
@@ -16,7 +15,6 @@ import Applicatie.Waypoint;
|
||||
import Applicatie.WaypointPopup;
|
||||
import Objects.DrawObject;
|
||||
import Objects.Path;
|
||||
import Objects.Entrance;
|
||||
|
||||
public class Mouse extends MouseAdapter
|
||||
{
|
||||
@@ -130,7 +128,7 @@ public class Mouse extends MouseAdapter
|
||||
{
|
||||
if (SwingUtilities.isRightMouseButton(e))
|
||||
{
|
||||
new PathPopup(clickedPath, panel);
|
||||
//new PathPopup(clickedPath, panel);
|
||||
}
|
||||
}
|
||||
else
|
||||
|
||||
Reference in New Issue
Block a user