protected void updateScreen(Calendar c) {
   if (navPanel == null) navPanel = new NavigatePanel(this);
   // navPanel.setLabel(c);
   navPanel.setCurrentMonth(c);
   setMonthPanel(c);
   screen.pack();
 }
 public void actionPerformed(ActionEvent e) {
   Object src = e.getSource();
   Calendar c = new GregorianCalendar();
   c.setTime(parent.getCalendar().getTime());
   if (src instanceof JButton) {
     if (e.getSource() == premon) c.add(Calendar.MONTH, -1);
     else if (e.getSource() == nextmon) c.add(Calendar.MONTH, 1);
     else if (e.getSource() == nextyear) c.add(Calendar.YEAR, 1);
     if (e.getSource() == preyear) c.add(Calendar.YEAR, -1);
     // System.out.println(c.getTime());
     parent.updateScreen(c);
   } else if (src instanceof JComboBox) {
     JComboBox jcb = (JComboBox) src;
     if (src == monthBox) {
       c.set(Calendar.MONTH, jcb.getSelectedIndex());
     } else if (e.getSource() == yearBox) {
       c.set(Calendar.YEAR, years[jcb.getSelectedIndex()].intValue());
       setYearComboBox(c);
     }
     parent.setMonthPanel(c);
     parent.screen.pack();
   }
 }