Docjar: A Java Source and Docuemnt Enginecom.*    java.*    javax.*    org.*    all    new    plug-in

Quick Search    Search Deep

Source code: com/memoire/bu/BuColorIcon.java


1   /**
2    * @modification $Date: 2003/01/02 18:32:03 $
3    * @statut       unstable
4    * @file         BuColorIcon.java
5    * @version      0.36
6    * @author       Guillaume Desnoix
7    * @email        guillaume@desnoix.com
8    * @license      GNU General Public License 2 (GPL2)
9    * @copyright    1998-2001 Guillaume Desnoix
10   */
11  
12  package com.memoire.bu;
13  
14  import com.memoire.bu.*;
15  import com.memoire.dnd.*;
16  import com.memoire.fu.*;
17  import com.memoire.re.*;
18  
19  
20  import java.awt.*;
21  import javax.swing.*;
22  
23  /**
24   * A simple icon which displays a 16x16 rect filled with
25   * a given color.
26   */
27  
28  public class BuColorIcon
29         implements Icon
30  {
31    private Color color_;
32    private Dimension size_;
33  
34    public BuColorIcon(Color _color)
35    {
36      this(_color,null);
37    }
38  
39    public BuColorIcon(Color _color, Dimension _size)
40    {
41      super();
42      color_=_color;
43      size_ =_size;
44    }
45  
46    public int getIconHeight()
47    {
48      return (size_==null ? BuResource.BU.getDefaultMenuSize() : size_.height);
49    }
50  
51    public int getIconWidth()
52    {
53      return (size_==null ? BuResource.BU.getDefaultMenuSize() : size_.width);
54    } 
55                  
56    public void paintIcon(Component _c, Graphics _g, int _x, int _y)
57    {
58      if(color_!=null)
59      {
60        Color old=_g.getColor();
61        //BuLib.setColor(_g,color_);
62        _g.setColor(color_);
63        _g.fillRect(_x+3,_y+3,getIconWidth()-6,getIconHeight()-6);
64        Color bg=UIManager.getColor("MenuItem.background");
65        if(!Color.white.equals(bg))
66        {
67          _g.draw3DRect(_x+2,_y+2,getIconWidth()-5,getIconHeight()-5,true );
68          _g.setColor(bg);
69          _g.draw3DRect(_x+1,_y+1,getIconWidth()-3,getIconHeight()-3,false);
70        }
71        else
72        {
73          _g.setColor(Color.white);
74          _g.drawRect(_x+1,_y+1,getIconWidth()-3,getIconHeight()-3);
75          _g.setColor(Color.black);
76          _g.drawRect(_x+2,_y+2,getIconWidth()-5,getIconHeight()-5);
77        }
78        _g.setColor(old);
79      }
80    }
81  }