@Override public void start(){
  frame=new JFrame();
  ActionListener listener=new CustomActionListener();
  frame.setLayout(new BorderLayout());
  JButton up=new BasicArrowButton(SwingConstants.NORTH);
  up.addActionListener(listener);
  frame.add(up,BorderLayout.NORTH);
  JButton west=new BasicArrowButton(SwingConstants.WEST);
  west.addActionListener(listener);
  frame.add(west,BorderLayout.WEST);
  frame.add(new JLabel("  "),BorderLayout.CENTER);
  JButton east=new BasicArrowButton(SwingConstants.EAST);
  east.addActionListener(listener);
  frame.add(east,BorderLayout.EAST);
  JButton south=new BasicArrowButton(SwingConstants.SOUTH);
  south.addActionListener(listener);
  frame.add(south,BorderLayout.SOUTH);
  frame.setSize(50,100);
  frame.setLocation(600,600);
  paused=false;
  frame.setVisible(true);
}

@ Override public void start ( ) { frame = new JFrame ( ) ; ActionListener listener = new CustomActionListener ( ) ; frame . setLayout ( new BorderLayout ( ) ) ; JButton up = new BasicArrowButton ( SwingConstants . NORTH ) ; up . addActionListener ( listener ) ; frame . add ( up , BorderLayout . NORTH ) ; JButton west = new BasicArrowButton ( SwingConstants . WEST ) ; west . addActionListener ( listener ) ; frame . add ( west , BorderLayout . WEST ) ; frame . add ( new JLabel ( "  " ) , BorderLayout . CENTER ) ; JButton east = new BasicArrowButton ( SwingConstants . EAST ) ; east . addActionListener ( listener ) ; frame . add ( east , BorderLayout . EAST ) ; JButton south = new BasicArrowButton ( SwingConstants . SOUTH ) ; south . addActionListener ( listener ) ; frame . add ( south , BorderLayout . SOUTH ) ; frame . setSize ( 50 , 100 ) ; frame . setLocation ( 600 , 600 ) ; paused = false ; frame . setVisible ( true ) ; }
creates a small control window with 4 arrow buttons . when clicked , each button will create a new dialogue act corresponding to the instruction to perform , and add it to the dialogue state .
