import java.applet.Applet;  // java applet sinifini cagir
import java.awt.*;          // java pencere kullanma sinifini cagir
import java.awt.event.*;    //  java pencereyi dinleme sinifini cagir
import dortislemhesapmakinasi;

public class H4AL1 extends Applet implements ActionListener
{
    // Dört işlem hesap makinası

    TextField sonucgirdisi;
    TextField kutugirdisi;
    Button Gir,Arti,Eksi,Carpi,Bolu,M,MR,MArti,MEksi,Isaret,C;
    //Button sinifi degiskenleri
    double sayi; 
    dortislemhesapmakinasi D;
    // pencereyi baslatma metodu
    public void init()
    {
    D=new dortislemhesapmakinasi(); 
    sonucgirdisi=new TextField(30);
    sonucgirdisi.setEditable(false);
    add(sonucgirdisi);
    kutugirdisi=new TextField(30);
    add(kutugirdisi);//kutuyu pencereye yerlestir
    Gir=new Button("gir");
    Arti=new Button("+");
    Eksi=new Button("-");
    Carpi=new Button("*");
    Bolu=new Button("/");
    M=new Button("M");
    MR=new Button("MR");
    MArti=new Button("M+");
    MEksi=new Button("M-");
    Isaret=new Button("+/-");
    C=new Button("C");
    add(Gir);
    add(Arti);
    add(Eksi);
    add(Carpi);
    add(Bolu);
    add(M);
    add(MR);
    add(MArti);
    add(MEksi);
    add(Isaret);
    add(C);
    Gir.addActionListener(this);
    Arti.addActionListener(this); 
    Eksi.addActionListener(this);
    Carpi.addActionListener(this);    
    Bolu.addActionListener(this);
    M.addActionListener(this); 
    MR.addActionListener(this);
    MArti.addActionListener(this);        
    MEksi.addActionListener(this);
    Isaret.addActionListener(this); 
    C.addActionListener(this);   
}
    
    // girdi alanindaki olan olaylari dinleme metodu
    public void actionPerformed(ActionEvent e)
    {
    String ss=kutugirdisi.getText();
    if(ss.equals("")) sayi=0.0;
    else
    {  
      Double sayi1=new Double(kutugirdisi.getText() );
      sayi=sayi1.doubleValue();
    }
    if(e.getSource()==Gir)         D.gir(sayi);
    else if(e.getSource()==Arti)   D.topla(sayi);
    else if(e.getSource()==Eksi)   D.cikar(sayi);  
    else if(e.getSource()==Carpi)  D.carp(sayi);  
    else if(e.getSource()==Bolu)   D.bol(sayi);  
    else if(e.getSource()==M)      D.M(sayi);  
    else if(e.getSource()==MR)     D.MR();
    else if(e.getSource()==MArti)  D.MTopla(sayi);  
    else if(e.getSource()==MEksi)  D.Mcikar(sayi);
    else if(e.getSource()==Isaret) D.isaretdegistir();  
    else if(e.getSource()==C)      D.C();
    sonucgirdisi.setText(D.toString());
    if(e.getSource()==MR|| e.getSource()==M ||e.getSource()==MArti ||e.getSource()==MEksi)      
       kutugirdisi.setText(D.MtoString());
    else
       kutugirdisi.setText("");

    }
    
}
