Skip to content

Commit 394e7a6

Browse files
author
jossonsmith
committed
1. Re-implement Table to get a decent layout
2. Packed icons into a large image file
1 parent d7c5c65 commit 394e7a6

File tree

11 files changed

+491
-198
lines changed

11 files changed

+491
-198
lines changed

sources/net.sf.j2s.java.org.eclipse.swt/src/org/eclipse/swt/graphics/Image.java

Lines changed: 31 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -66,7 +66,28 @@
6666
*/
6767

6868
public class Image extends Resource implements Drawable {
69-
public String url;
69+
/**
70+
* Only used inside SWT package for JavaScript.
71+
*/
72+
public String url;
73+
74+
/**
75+
* This field will be used to store packed image's order.
76+
* 0: not packed 3x3 image<br>
77+
* 1: top left image<br>
78+
* 2: top center image<br>
79+
* 3: top right image<br>
80+
* 4: middle left image<br>
81+
* 5: middle center image<br>
82+
* 6: middle right image<br>
83+
* 7: bottom left image<br>
84+
* 8: bottom center image<br>
85+
* 9: bottom right image<br>
86+
*
87+
* Only used inside SWT package for JavaScript
88+
*/
89+
public int hash;
90+
7091
public int width;
7192
public int height;
7293
private Element imgHandle;
@@ -525,6 +546,9 @@ public Image(Device device, Image srcImage, int flag) {
525546
}
526547
*/
527548
this.url = srcImage.url;
549+
this.hash = srcImage.hash;
550+
this.width = srcImage.width;
551+
this.height = srcImage.height;
528552
}
529553

530554
/**
@@ -591,6 +615,9 @@ public Image(Device device, ImageData data) {
591615
// init(device, data);
592616
// if (device.tracking) device.new_Object(this);
593617
url = data.url;
618+
hash = data.hash;
619+
width = data.width;
620+
height = data.height;
594621
}
595622

596623
/**
@@ -630,6 +657,9 @@ public Image(Device device, ImageData source, ImageData mask) {
630657
// init(device, this, source, mask);
631658
// if (device.tracking) device.new_Object(this);
632659
url = source.url;
660+
hash = source.hash;
661+
width = source.width;
662+
height = source.height;
633663
}
634664

635665
/**

sources/net.sf.j2s.java.org.eclipse.swt/src/org/eclipse/swt/graphics/ImageData.java

Lines changed: 20 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -198,7 +198,27 @@ public class ImageData implements CloneableCompatibility {
198198
*/
199199
public int disposalMethod;
200200

201+
/**
202+
* Only used inside SWT package for JavaScript.
203+
*/
201204
public String url;
205+
206+
/**
207+
* This field will be used to store packed image's order.
208+
* 0: not packed 3x3 image<br>
209+
* 1: top left image<br>
210+
* 2: top center image<br>
211+
* 3: top right image<br>
212+
* 4: middle left image<br>
213+
* 5: middle center image<br>
214+
* 6: middle right image<br>
215+
* 7: bottom left image<br>
216+
* 8: bottom center image<br>
217+
* 9: bottom right image<br>
218+
*
219+
* Only used inside SWT package for JavaScript
220+
*/
221+
public int hash;
202222

203223
/**
204224
* The time to delay before displaying the next image

sources/net.sf.j2s.java.org.eclipse.swt/src/org/eclipse/swt/widgets/Composite.css

Lines changed: 70 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -16,3 +16,73 @@
1616
border-width:2px 1px 1px 2px;
1717
border-color:black white white black;
1818
}
19+
20+
.image-icon, .image-n-1, .image-n-2, .image-n-3, .image-n-4, .image-n-5, .image-n-6, .image-n-7, .image-n-8, .image-n-9 {
21+
border:0 none transparent;
22+
padding:0;
23+
margin:0;
24+
line-height:0;
25+
background-repeat:no-repeat;
26+
}
27+
.image-n-1 {
28+
background-position:left top;
29+
}
30+
.image-n-2 {
31+
background-position:center top;
32+
}
33+
.image-n-3 {
34+
background-position:right top;
35+
}
36+
.image-n-4 {
37+
background-position:left center;
38+
}
39+
.image-n-5 {
40+
background-position:center center;
41+
}
42+
.image-n-6 {
43+
background-position:right center;
44+
}
45+
.image-n-7 {
46+
background-position:left bottom;
47+
}
48+
.image-n-8 {
49+
background-position:center bottom;
50+
}
51+
.image-n-9 {
52+
background-position:right bottom;
53+
}
54+
55+
.image-p-1, .image-p-2, .image-p-3, .image-p-4, .image-p-5, .image-p-6, .image-p-7, .image-p-8, .image-p-9 {
56+
position:absolute;
57+
}
58+
.image-p-1, .image-p-2, .image-p-3 {
59+
top:0;
60+
}
61+
.image-p-4, .image-p-5, .image-p-6 {
62+
/*top:50%;
63+
margin-top:-0.5em;
64+
*/
65+
bottom:50%;
66+
margin-bottom:-0.5em;
67+
}
68+
.image-p-7, .image-p-8, .image-p-9 {
69+
bottom:0;
70+
}
71+
.image-p-1, .image-p-4, .image-p-7 {
72+
left:0;
73+
}
74+
.image-p-2, .image-p-5, .image-p-8 {
75+
left:50%;
76+
margin-left:-0.5em;
77+
}
78+
.image-p-3, .image-p-6, .image-p-9 {
79+
right:0;
80+
}
81+
/* default icon size 16x16 */
82+
.image-icon, .image-n-1, .image-n-2, .image-n-3, .image-n-4, .image-n-5, .image-n-6, .image-n-7, .image-n-8, .image-n-9 {
83+
width:16px;
84+
height:16px;
85+
font-size:16px;
86+
_font-size:14px;
87+
overflow:hidden;
88+
}

sources/net.sf.j2s.java.org.eclipse.swt/src/org/eclipse/swt/widgets/Menu.css

Lines changed: 6 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -125,13 +125,16 @@
125125
background-color:gray;
126126
}
127127
.menu-item-checked {
128-
background-image:url('images/menu-checked.gif');
128+
background-image:url('images/menu-packed.gif');
129+
background-position:left top;
129130
}
130131
.menu-item-hover .menu-item-checked {
131-
background-image:url('images/menu-checked-hl.gif');
132+
background-image:url('images/menu-packed.gif');
133+
background-position:center top;
132134
}
133135
.menu-item-disabled .menu-item-checked {
134-
background-image:url('images/menu-checked-gray.gif');
136+
background-image:url('images/menu-packed.gif');
137+
background-position:right top;
135138
}
136139

137140
.menu-enable-image .menu-item-status {

sources/net.sf.j2s.java.org.eclipse.swt/src/org/eclipse/swt/widgets/Shell.css

Lines changed: 10 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -168,19 +168,24 @@
168168
}
169169

170170
.shell-title-icon {
171-
background-image:url('images/z-logo.gif');
171+
background-image:url('images/shell-packed.gif');
172+
background-position:center center;
172173
}
173174
.shell-title-min {
174-
background-image:url('images/min_view.gif');
175+
background-image:url('images/shell-packed.gif');
176+
background-position:left center;
175177
}
176178
.shell-title-normal-max {
177-
background-image:url('images/max_view.gif');
179+
background-image:url('images/shell-packed.gif');
180+
background-position:center top;
178181
}
179182
.shell-maximized .shell-title-normal-max {
180-
background-image:url('images/restore_view.gif');
183+
background-image:url('images/shell-packed.gif');
184+
background-position:right top;
181185
}
182186
.shell-title-close {
183-
background-image:url('images/close_view.gif');
187+
background-image:url('images/shell-packed.gif');
188+
background-position:left top;
184189
}
185190

186191
.shell-modal-block {

0 commit comments

Comments
 (0)