public void actionPerformed(ActionEvent arg0) {
            if (!JDatePanel.this.isEnabled()) {
                return;
            }

            if (arg0.getSource() == internalView.getNextMonthButton()) {
                internalModel.getModel().addMonth(1);
            } else if (arg0.getSource() == internalView.getPreviousMonthButton()) {
                internalModel.getModel().addMonth(-1);
            } else if (arg0.getSource() == internalView.getNextYearButton()) {
                internalModel.getModel().addYear(1);
            } else if (arg0.getSource() == internalView.getPreviousYearButton()) {
                internalModel.getModel().addYear(-1);
            } else {
                for (int month = 0; month < internalView.getMonthPopupMenuItems().length; month++) {
                    if (arg0.getSource() == internalView.getMonthPopupMenuItems()[month]) {
                        internalModel.getModel().setMonth(month);
                    }
                }
            }
        }