Normand Briere
2019-11-21 ddb10cb84dddfeef1ef9946f2e13cef3c93e6cc4
cButton.java
....@@ -1,5 +1,8 @@
11 public class cButton extends javax.swing.JButton
22 {
3
+ String iconname;
4
+ boolean fit;
5
+
36 cButton(String name)
47 {
58 super(name);
....@@ -7,4 +10,81 @@
710 //setBorder(new javax.swing.border.EmptyBorder(0,0,0,0));
811 setBorder(new javax.swing.border.EtchedBorder());
912 }
13
+
14
+ cButton(String name, boolean border)
15
+ {
16
+ super(name);
17
+
18
+ setMargin(new java.awt.Insets(1, -1, 1, -1));
19
+
20
+ if (border)
21
+ setBorder(new javax.swing.border.EtchedBorder());
22
+ else
23
+ {
24
+ //setBorder(null); //new javax.swing.border.EmptyBorder(0,0,0,0));
25
+ }
26
+ }
27
+
28
+ cButton(//javax.swing.ImageIcon icon,
29
+ String iconname,
30
+ boolean border, boolean fit)
31
+ {
32
+ //super(icon);
33
+ this.iconname = iconname;
34
+ this.fit = fit;
35
+
36
+ assert(border);
37
+
38
+ //setMargin(new java.awt.Insets(1, 10, 1, 10)); // ??
39
+
40
+// if (icon != null && fit)
41
+// this.image = icon.getImage();
42
+
43
+//result = new JButton( icon );
44
+//result.setBorderPainted( false );
45
+//result.setContentAreaFilled( false );
46
+//
47
+//width = icon.getIconWidth();
48
+//height = icon.getIconHeight();
49
+//result.setPreferredSize( new Dimension( width, height ) );
50
+ if (border)
51
+ setBorder(new javax.swing.border.EtchedBorder());
52
+ else
53
+ {
54
+ //setBorder(null); //new javax.swing.border.EmptyBorder(0,0,0,0));
55
+ }
56
+ }
57
+
58
+ private java.awt.Image image;
59
+
60
+ //@Override
61
+ protected void paintComponent(java.awt.Graphics g)
62
+ {
63
+ if (iconname != null)
64
+ {
65
+ javax.swing.ImageIcon icon = ObjEditor.GetIcon(iconname);
66
+
67
+ if (icon == null)
68
+ setName(iconname);
69
+ else
70
+ {
71
+ if (fit)
72
+ this.image = icon.getImage();
73
+ else
74
+ setIcon(icon);
75
+ }
76
+
77
+ iconname = null;
78
+ }
79
+
80
+ if (image != null)
81
+ {
82
+ //if (getWidth() > image.getWidth(null) + 8)
83
+ {
84
+ g.drawImage(image, 0,0, this.getWidth()-1, this.getHeight()-1, this);
85
+ }
86
+ }
87
+ else
88
+ super.paintComponent(g);
89
+ }
1090 }