/*
* Katica.java
*/
package ladyb;
import javax.swing.*;
import java.awt.*;
import java.awt.event.*;
public class Katica extends JApplet{
protected Szoba szoba;
protected InfoSav info;
private JButton fel,le,jobbra,balra;
private JButton bForgat;
protected Action furulyaAction,navigAction;
public Katica() {
getRootPane().putClientProperty("defeatSystemEventQueueCheck",Boolean.TRUE);
}
public void init() {
Container cp = getContentPane();
// cp.setLayout(new BorderLayout());
szoba=new Szoba();
info =new InfoSav(this);
szoba.lady.addKaticaListener(info);
cp.add(szoba);
cp.add(BorderLayout.SOUTH,info);
cp.setFocusable(true);
//billentyuk regisztralasa
furulyaAction=new AbstractAction(){
public void actionPerformed(ActionEvent e) {
szoba.furulya.furulyaz();
}
};
szoba.getInputMap(szoba.WHEN_IN_FOCUSED_WINDOW).put(KeyStroke.getKeyStroke(KeyEvent.VK_F,0),"furulyaAction");
szoba.getActionMap().put("furulyaAction",furulyaAction);
navigAction=new NavigAction();
szoba.getInputMap(szoba.WHEN_IN_FOCUSED_WINDOW).put(KeyStroke.getKeyStroke("Q"),"navigAction");
szoba.getInputMap(szoba.WHEN_IN_FOCUSED_WINDOW).put(KeyStroke.getKeyStroke("W"),"navigAction");
szoba.getInputMap(szoba.WHEN_IN_FOCUSED_WINDOW).put(KeyStroke.getKeyStroke("K"),"navigAction");
szoba.getActionMap().put("navigAction",navigAction);
szoba.setFocusable(true);
}
class NavigAction extends AbstractAction{
public void actionPerformed(ActionEvent e) {
if (e.getActionCommand().equalsIgnoreCase("q")) szoba.zsebi.forog(Math.PI/64);
if (e.getActionCommand().equalsIgnoreCase("w")) szoba.zsebi.forog(-Math.PI/64);
if (e.getActionCommand().equalsIgnoreCase("k")) szoba.zsebi.kapcsol();
}
};
public void start() {
szoba.lady.start();
}
public void stop() {
szoba.stop();
info.stop();
}
public static void main(String[] args) {
Katica kati=new Katica();
Console.run(kati, 800, 550);
}
}