42 |
import java.awt.ComponentOrientation; |
import java.awt.ComponentOrientation; |
43 |
import java.awt.Container; |
import java.awt.Container; |
44 |
import java.awt.Dimension; |
import java.awt.Dimension; |
45 |
|
import java.awt.Insets; |
46 |
import java.awt.LayoutManager2; |
import java.awt.LayoutManager2; |
47 |
|
import java.awt.Rectangle; |
48 |
import java.io.Serializable; |
import java.io.Serializable; |
49 |
|
|
50 |
/** |
/** |
221 |
int[] vSpans = new int[children.length]; |
int[] vSpans = new int[children.length]; |
222 |
int[] vOffsets = new int[children.length]; |
int[] vOffsets = new int[children.length]; |
223 |
|
|
224 |
|
Insets insets = container.getInsets(); |
225 |
|
int width = container.getWidth() - insets.left - insets.right - 1; |
226 |
|
int height = container.getHeight() - insets.top - insets.bottom - 1; |
227 |
if (isHorizontalIn(container)) |
if (isHorizontalIn(container)) |
228 |
{ |
{ |
229 |
SizeRequirements.calculateTiledPositions(container.getWidth(), null, |
SizeRequirements.calculateTiledPositions(width, null, |
230 |
hSizeReqs, hOffsets, hSpans); |
hSizeReqs, hOffsets, hSpans); |
231 |
SizeRequirements.calculateAlignedPositions(container.getHeight(), null, |
SizeRequirements.calculateAlignedPositions(height, null, |
232 |
vSizeReqs, vOffsets, vSpans); |
vSizeReqs, vOffsets, vSpans); |
233 |
} |
} |
234 |
else |
else |
235 |
{ |
{ |
236 |
SizeRequirements.calculateTiledPositions(container.getHeight(), null, |
SizeRequirements.calculateTiledPositions(height, null, |
237 |
vSizeReqs, vOffsets, vSpans); |
vSizeReqs, vOffsets, vSpans); |
238 |
SizeRequirements.calculateAlignedPositions(container.getWidth(), null, |
SizeRequirements.calculateAlignedPositions(width, null, |
239 |
hSizeReqs, hOffsets, hSpans); |
hSizeReqs, hOffsets, hSpans); |
240 |
} |
} |
241 |
|
|
243 |
for (int i = 0; i < children.length; i++) |
for (int i = 0; i < children.length; i++) |
244 |
{ |
{ |
245 |
Component child = children[i]; |
Component child = children[i]; |
246 |
child.setBounds(hOffsets[i], vOffsets[i], hSpans[i], vSpans[i]); |
child.setBounds(hOffsets[i] + insets.left, vOffsets[i] + insets.top, |
247 |
|
hSpans[i], vSpans[i]); |
248 |
} |
} |
249 |
} |
} |
250 |
|
|
251 |
/** |
/** |
252 |
* Adds a component to the layout. Not used in BoxLayout |
* Adds a component to the layout. Not used in BoxLayout |
253 |
* |
* |