1 2 /** 3 * Copyright 2004 Juan Heyns. All rights reserved. 4 * 5 * Redistribution and use in source and binary forms, with or without modification, are 6 * permitted provided that the following conditions are met: 7 * 8 * 1. Redistributions of source code must retain the above copyright notice, this list of 9 * conditions and the following disclaimer. 10 * 11 * 2. Redistributions in binary form must reproduce the above copyright notice, this list 12 * of conditions and the following disclaimer in the documentation and/or other materials 13 * provided with the distribution. 14 * 15 * THIS SOFTWARE IS PROVIDED BY JUAN HEYNS ``AS IS'' AND ANY EXPRESS OR IMPLIED 16 * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND 17 * FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL JUAN HEYNS OR 18 * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR 19 * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR 20 * SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON 21 * ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING 22 * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF 23 * ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 24 * 25 * The views and conclusions contained in the software and documentation are those of the 26 * authors and should not be interpreted as representing official policies, either expressed 27 * or implied, of Juan Heyns. 28 */ 29 package org.jdatepicker; 30 31 /* 32 * #%L 33 * Reef DB :: UI 34 * $Id:$ 35 * $HeadURL:$ 36 * %% 37 * Copyright (C) 2014 - 2015 Ifremer 38 * %% 39 * This program is free software: you can redistribute it and/or modify 40 * it under the terms of the GNU Affero General Public License as published by 41 * the Free Software Foundation, either version 3 of the License, or 42 * (at your option) any later version. 43 * 44 * This program is distributed in the hope that it will be useful, 45 * but WITHOUT ANY WARRANTY; without even the implied warranty of 46 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 47 * GNU General Public License for more details. 48 * 49 * You should have received a copy of the GNU Affero General Public License 50 * along with this program. If not, see <http://www.gnu.org/licenses/>. 51 * #L% 52 */ 53 54 import java.awt.*; 55 public final class ComponentColorDefaults extends AbstractComponentColor implements Cloneable { 56 57 private static ComponentColorDefaults instance; 58 59 /** 60 * <p>Getter for the field <code>instance</code>.</p> 61 * 62 * @return a {@link org.jdatepicker.ComponentColorDefaults} object. 63 */ 64 public static ComponentColorDefaults getInstance() { 65 if (instance == null) { 66 instance = new ComponentColorDefaults(); 67 } 68 return instance; 69 } 70 71 72 private ComponentColorDefaults() { 73 74 colors.put(Key.FG_MONTH_SELECTOR, SystemColor.activeCaptionText); 75 colors.put(Key.BG_MONTH_SELECTOR, SystemColor.activeCaption); 76 77 colors.put(Key.FG_GRID_HEADER, new Color(10, 36, 106)); 78 colors.put(Key.BG_GRID_HEADER, Color.LIGHT_GRAY); 79 80 colors.put(Key.FG_GRID_THIS_MONTH, Color.BLACK); 81 colors.put(Key.FG_GRID_OTHER_MONTH, Color.LIGHT_GRAY); 82 colors.put(Key.FG_GRID_TODAY, Color.RED); 83 colors.put(Key.BG_GRID, Color.WHITE); 84 colors.put(Key.BG_GRID_NOT_SELECTABLE, new Color(240, 240, 240)); 85 86 colors.put(Key.FG_GRID_SELECTED, Color.WHITE); 87 colors.put(Key.BG_GRID_SELECTED, new Color(10, 36, 106)); 88 89 colors.put(Key.FG_GRID_TODAY_SELECTED, Color.RED); 90 colors.put(Key.BG_GRID_TODAY_SELECTED, new Color(10, 36, 106)); 91 92 colors.put(Key.FG_TODAY_SELECTOR_ENABLED, Color.BLACK); 93 colors.put(Key.FG_TODAY_SELECTOR_DISABLED, Color.LIGHT_GRAY); 94 colors.put(Key.BG_TODAY_SELECTOR, Color.WHITE); 95 96 colors.put(Key.POPUP_BORDER, Color.BLACK); 97 } 98 99 /** {@inheritDoc} */ 100 @Override 101 protected ComponentColorDefaults clone() throws CloneNotSupportedException { 102 return (ComponentColorDefaults) super.clone(); 103 } 104 }