protected void destroyNestedComponents() {
    gridPanel.removePropertyChangeListener(componentListener);
    modernPanel.removePropertyChangeListener(componentListener);
    classicPanel.removePropertyChangeListener(componentListener);
    auxPanel.removePropertyChangeListener(componentListener);
    componentListener = null;

    for (int i = 0; i < focusableComponents.size(); i++)
      ((JComponent) focusableComponents.toArray()[i])
          .removeFocusListener(componentListener);
    focusableComponents.clear();

    classicPanel = null;
    modernPanel = null;
    headerPanel = null;
    auxPanel = null;
    gridPanel = null;
    numberOfWeekPanel = null;

  }
protected void destroyNestedComponents()