~brian-thomason/+junk/jasperreports3.7

« back to all changes in this revision

Viewing changes to src/net/sf/jasperreports/engine/util/JRColorUtil.java

  • Committer: Brian Thomason
  • Date: 2011-12-20 17:51:16 UTC
  • Revision ID: brian.thomason@canonical.com-20111220175116-apwo6unuaedvgzo3
Initial import

Show diffs side-by-side

added added

removed removed

Lines of Context:
 
1
/*
 
2
 * JasperReports - Free Java Reporting Library.
 
3
 * Copyright (C) 2001 - 2009 Jaspersoft Corporation. All rights reserved.
 
4
 * http://www.jaspersoft.com
 
5
 *
 
6
 * Unless you have purchased a commercial license agreement from Jaspersoft,
 
7
 * the following license terms apply:
 
8
 *
 
9
 * This program is part of JasperReports.
 
10
 *
 
11
 * JasperReports is free software: you can redistribute it and/or modify
 
12
 * it under the terms of the GNU Lesser General Public License as published by
 
13
 * the Free Software Foundation, either version 3 of the License, or
 
14
 * (at your option) any later version.
 
15
 *
 
16
 * JasperReports is distributed in the hope that it will be useful,
 
17
 * but WITHOUT ANY WARRANTY; without even the implied warranty of
 
18
 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
 
19
 * GNU Lesser General Public License for more details.
 
20
 * 
 
21
 * You should have received a copy of the GNU Lesser General Public License
 
22
 * along with JasperReports. If not, see <http://www.gnu.org/licenses/>.
 
23
 */
 
24
package net.sf.jasperreports.engine.util;
 
25
 
 
26
import java.awt.Color;
 
27
 
 
28
import net.sf.jasperreports.engine.type.ColorEnum;
 
29
 
 
30
 
 
31
/**
 
32
 * @author Teodor Danciu (teodord@users.sourceforge.net)
 
33
 * @version $Id: JRColorUtil.java 3712 2010-04-08 09:53:09Z teodord $
 
34
 */
 
35
public final class JRColorUtil
 
36
{
 
37
 
 
38
        /**
 
39
         *
 
40
         */
 
41
        public static final int COLOR_MASK = Integer.parseInt("FFFFFF", 16);
 
42
 
 
43
        /**
 
44
         *
 
45
         */
 
46
        public static String getColorHexa(Color color)
 
47
        {
 
48
                String hexa = Integer.toHexString(color.getRGB() & COLOR_MASK).toUpperCase();
 
49
                return ("000000" + hexa).substring(hexa.length());
 
50
        }
 
51
 
 
52
        /**
 
53
         *
 
54
         */
 
55
        public static Color getColor(String strColor, Color defaultColor)
 
56
        {
 
57
                Color color = null;
 
58
 
 
59
                if (strColor != null && strColor.length() > 0)
 
60
                {
 
61
                        char firstChar = strColor.charAt(0);
 
62
                        if (firstChar == '#')
 
63
                        {
 
64
                                color = new Color(Integer.parseInt(strColor.substring(1), 16));
 
65
                        }
 
66
                        else if ('0' <= firstChar && firstChar <= '9')
 
67
                        {
 
68
                                color = new Color(Integer.parseInt(strColor));
 
69
                        }
 
70
                        else
 
71
                        {
 
72
                                ColorEnum colorEnum = ColorEnum.getByName(strColor);
 
73
                                if (colorEnum == null)
 
74
                                {
 
75
                                        color = defaultColor;
 
76
                                }
 
77
                                else
 
78
                                {
 
79
                                        color = colorEnum.getColor();
 
80
                                }
 
81
                        }
 
82
                }
 
83
 
 
84
                return color;
 
85
        }
 
86
 
 
87
 
 
88
        private JRColorUtil()
 
89
        {
 
90
        }
 
91
}