Normand Briere
2019-09-30 3966454055db8e04700e881a091c2d33dcfda232
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);
....@@ -12,9 +15,76 @@
1215 {
1316 super(name);
1417
18
+ setMargin(new java.awt.Insets(1, -1, 1, -1));
19
+
1520 if (border)
1621 setBorder(new javax.swing.border.EtchedBorder());
1722 else
18
- setBorder(new javax.swing.border.EmptyBorder(0,0,0,0));
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);
1989 }
2090 }