
import java.awt.*;
import java.awt.event.*;
import javax.swing.*;

public class Neerslaggegevens extends JFrame implements ActionListener {

    private JButton button,somBut,kleinsteWaardeBut,indexGrootsteWaardeBut;
    private JTextField day,somTxt,kleinsteWaardeTxt,indexGrootsteWaardeTxt;
    private JLabel label,somLbl,kleinsteWaardeLbl,indexGrootsteWaardeLbl;
    private JTextField amount;
    private JTextArea data;
    private JTextField stats;

    private int[] rain = {
        7, 8, 0, 4, 3, 8, 1                            };

    public static void main(String[] args) {
        Neerslaggegevens frame = new Neerslaggegevens();
        frame.setSize(250,500);
        frame.createGUI();
        frame.show();
    }

    private void createGUI() {
        setDefaultCloseOperation(EXIT_ON_CLOSE);
        Container window = getContentPane();
        window.setLayout(new FlowLayout());

        button = new JButton("change value at");
        window.add(button);
        button.addActionListener(this);

        day = new JTextField(1);
        window.add(day);

        label = new JLabel("to");
        window.add(label);

        amount = new JTextField(2);
        window.add(amount);

        data = new JTextArea(10, 10);
        window.add(data);

        stats = new JTextField(12);
        window.add(stats);
        
        somLbl = new JLabel("De som van alle waarden:");
        window.add(somLbl);
        
        somTxt = new JTextField(12);
        window.add(somTxt);
        
        somBut = new JButton("De som van alle waarden");
        window.add(somBut);
        somBut.addActionListener(this);
        
        kleinsteWaardeLbl = new JLabel("De kleinste waarde van het array:");
        window.add(kleinsteWaardeLbl);
        
        kleinsteWaardeTxt = new JTextField(12);
        window.add(kleinsteWaardeTxt);
        
        kleinsteWaardeBut = new JButton("De kleinste waarde");
        window.add(kleinsteWaardeBut);
        kleinsteWaardeBut.addActionListener(this);
        
        indexGrootsteWaardeLbl = new JLabel("De index van de grootste waarde:");
        window.add(indexGrootsteWaardeLbl);
        
        indexGrootsteWaardeTxt = new JTextField(12);
        window.add(indexGrootsteWaardeTxt);
        
        indexGrootsteWaardeBut = new JButton("De index van de grootste waarde");
        window.add(indexGrootsteWaardeBut);
        indexGrootsteWaardeBut.addActionListener(this);

        display();
        largest();
    }

    public void actionPerformed(ActionEvent event) {
        
        if (event.getSource() == button) {
        	
        	newValue();
        }
        
        
        if (event.getSource() == somBut) {
        	
        	//toon de som van het array rain in het tekstveld somTxt
        	
        
        }
        
        if (event.getSource() == kleinsteWaardeBut) {
        	
        	//toon de kleinste waarde van het array rain in het tekstveld kleinsteWaardeTxt
        	
        	
        	
        	
        }
        
        if (event.getSource() == indexGrootsteWaardeBut) {
        	
        	//toon de index van de grootste waarde in het tekstveld indexGrootsteWaardeTxt
        	
        
        	
        	
        }
        
        
        
    }

    private void display() {
        data.setText("");
        for (int dayNumber = 0; dayNumber <= 6; dayNumber++) {
            data.append("day " + Integer.toString(dayNumber)
                + " rain " + Integer.toString(rain[dayNumber])
                + "\r\n");
        }
    }

    private void newValue() {
        int index; 
        int data; 
        index = Integer.parseInt(day.getText());
        data = Integer.parseInt(amount.getText());
        rain[index] = data;
        display();
        largest();
    }

    private void largest() {
        int highest; 

        highest = rain[0];
        for (int index = 0; index <= 6; index++) {
            if (highest < rain[index]) {
                highest = rain[index];
            }
        }
        stats.setText("largest value is " + Integer.toString(highest));
    }


    private void weekTotal() {
        int total = 0;

        for (int index = 0; index <= 6; index++) {
            total = total + rain[index];
        }
        stats.setText("total is " + Integer.toString(total));
    }


}

