// Path: Project/src/main/java/com/github/lgooddatepicker/zinternaltools/Pair.java
// public class Pair<A, B> {
// 
//   public A first;
//   public B second;
// 
//   public Pair(A first, B second) {
//     this.first = first;
//     this.second = second;
//   }
// }


import java.beans.PropertyDescriptor;
import java.beans.SimpleBeanInfo;
import java.util.Arrays;
import java.util.HashMap;
import java.util.HashSet;
import com.github.lgooddatepicker.zinternaltools.Pair;
import java.awt.Image;
import java.beans.BeanDescriptor;
import java.beans.BeanInfo;
import java.beans.EventSetDescriptor;
import java.beans.IntrospectionException;
import java.beans.Introspector;
import java.beans.MethodDescriptor;
/*
 * The MIT License
 *
 *
 * Permission is hereby granted, free of charge, to any person obtaining a copy
 * of this software and associated documentation files (the "Software"), to deal
 * in the Software without restriction, including without limitation the rights
 * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
 * copies of the Software, and to permit persons to whom the Software is
 * furnished to do so, subject to the following conditions:
 *
 * The above copyright notice and this permission notice shall be included in
 * all copies or substantial portions of the Software.
 *
 * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
 * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
 * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
 * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
 * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
 * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
 * THE SOFTWARE.
 */
package com.github.lgooddatepicker.components;


/**
 * CalendarPanelBeanInfo, This class returns JavaBean information for the matching bean class.
 *
 * <p>The class methods will return default BeanInfo Introspector information for properties,
 * methods, and events, plus any customizations that are applied on top of the default Introspector
 * data set.
 */
public class CalendarPanelBeanInfo extends SimpleBeanInfo {

  ///////////////////////////////////////////////////////////////////////////////////////////////
  // Start: Custom settings.
  ///////////////////////////////////////////////////////////////////////////////////////////////
  /**
   * iconInformation, This holds all the information for the image icons. The map key is the
   * BeanInfo icon type. The pair string is the path to the matching icon resource. The pair image
   * will hold the matching icon image, if it has been loaded. (The image will be null until the
   * first time it is loaded.)
   */
  private static HashMap<Integer, Pair<String, Image>> iconInformation =
      new HashMap<Integer, Pair<String, Image>>() {
        {
// Path: Project/src/main/java/com/github/lgooddatepicker/zinternaltools/Pair.java
// public class Pair<A, B> {
// 
//   public A first;
//   public B second;
// 
//   public Pair(A first, B second) {
//     this.first = first;
//     this.second = second;
//   }
// }


// Path: Project/src/main/java/com/github/lgooddatepicker/components/CalendarPanelBeanInfo.java
import java.beans.PropertyDescriptor;
import java.beans.SimpleBeanInfo;
import java.util.Arrays;
import java.util.HashMap;
import java.util.HashSet;
import com.github.lgooddatepicker.zinternaltools.Pair;
import java.awt.Image;
import java.beans.BeanDescriptor;
import java.beans.BeanInfo;
import java.beans.EventSetDescriptor;
import java.beans.IntrospectionException;
import java.beans.Introspector;
import java.beans.MethodDescriptor;

/*
 * The MIT License
 *
 *
 * Permission is hereby granted, free of charge, to any person obtaining a copy
 * of this software and associated documentation files (the "Software"), to deal
 * in the Software without restriction, including without limitation the rights
 * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
 * copies of the Software, and to permit persons to whom the Software is
 * furnished to do so, subject to the following conditions:
 *
 * The above copyright notice and this permission notice shall be included in
 * all copies or substantial portions of the Software.
 *
 * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
 * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
 * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
 * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
 * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
 * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
 * THE SOFTWARE.
 */
package com.github.lgooddatepicker.components;


/**
 * CalendarPanelBeanInfo, This class returns JavaBean information for the matching bean class.
 *
 * <p>The class methods will return default BeanInfo Introspector information for properties,
 * methods, and events, plus any customizations that are applied on top of the default Introspector
 * data set.
 */
public class CalendarPanelBeanInfo extends SimpleBeanInfo {

  ///////////////////////////////////////////////////////////////////////////////////////////////
  // Start: Custom settings.
  ///////////////////////////////////////////////////////////////////////////////////////////////
  /**
   * iconInformation, This holds all the information for the image icons. The map key is the
   * BeanInfo icon type. The pair string is the path to the matching icon resource. The pair image
   * will hold the matching icon image, if it has been loaded. (The image will be null until the
   * first time it is loaded.)
   */
  private static HashMap<Integer, Pair<String, Image>> iconInformation =
      new HashMap<Integer, Pair<String, Image>>() {
        {
          put(ICON_MONO_16x16, new Pair<>("/images/CalendarPanelIcon 16x16.png", null));