Source code: com/memoire/bu/BuComposedIcon.java
1 /**
2 * @modification $Date: 2001/12/03 16:28:07 $
3 * @statut unstable
4 * @file BuComposedIcon.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 java.util.*;
22 import javax.swing.*;
23
24 /**
25 * An icon composer which overlays other icons.
26 */
27
28 public class BuComposedIcon
29 implements Icon
30 {
31 private Icon[] icons_;
32
33 public BuComposedIcon(Icon _icon1, Icon _icon2)
34 {
35 icons_=new Icon[2];
36 icons_[0]=_icon1;
37 icons_[1]=_icon2;
38 }
39
40 public BuComposedIcon(Icon[] _icons)
41 {
42 if(_icons==null) _icons=new Icon[0];
43 icons_=_icons;
44 }
45
46 public int getIconHeight()
47 {
48 int h=0;
49 for(int i=0;i<icons_.length;i++)
50 h=Math.max(h,icons_[i].getIconHeight());
51 return h;
52 }
53
54 public int getIconWidth()
55 {
56 int w=0;
57 for(int i=0;i<icons_.length;i++)
58 w=Math.max(w,icons_[i].getIconWidth());
59 return w;
60 }
61
62 public void paintIcon(Component _c, Graphics _g, int _x, int _y)
63 {
64 for(int i=0;i<icons_.length;i++)
65 icons_[i].paintIcon(_c,_g,_x,_y);
66 }
67 }