home *** CD-ROM | disk | FTP | other *** search
- package java.awt;
-
- import java.io.Serializable;
-
- public class GridLayout implements LayoutManager, Serializable {
- int hgap;
- int vgap;
- int rows;
- int cols;
-
- public GridLayout() {
- this(1, 0, 0, 0);
- }
-
- public GridLayout(int var1, int var2) {
- this(var1, var2, 0, 0);
- }
-
- public GridLayout(int var1, int var2, int var3, int var4) {
- if (var1 == 0 && var2 == 0) {
- throw new IllegalArgumentException("rows and cols cannot both be zero");
- } else {
- this.rows = var1;
- this.cols = var2;
- this.hgap = var3;
- this.vgap = var4;
- }
- }
-
- public int getRows() {
- return this.rows;
- }
-
- public void setRows(int var1) {
- if (var1 == 0 && this.cols == 0) {
- throw new IllegalArgumentException("rows and cols cannot both be zero");
- } else {
- this.rows = var1;
- }
- }
-
- public int getColumns() {
- return this.cols;
- }
-
- public void setColumns(int var1) {
- if (var1 == 0 && this.rows == 0) {
- throw new IllegalArgumentException("rows and cols cannot both be zero");
- } else {
- this.cols = var1;
- }
- }
-
- public int getHgap() {
- return this.hgap;
- }
-
- public void setHgap(int var1) {
- this.hgap = var1;
- }
-
- public int getVgap() {
- return this.vgap;
- }
-
- public void setVgap(int var1) {
- this.vgap = var1;
- }
-
- public void addLayoutComponent(String var1, Component var2) {
- }
-
- public void removeLayoutComponent(Component var1) {
- }
-
- public Dimension preferredLayoutSize(Container var1) {
- Object var2 = ((Component)var1).getTreeLock();
- synchronized(var2) {
- Insets var3 = var1.getInsets();
- int var4 = var1.getComponentCount();
- int var5 = this.rows;
- int var6 = this.cols;
- if (var5 > 0) {
- var6 = (var4 + var5 - 1) / var5;
- } else {
- var5 = (var4 + var6 - 1) / var6;
- }
-
- int var7 = 0;
- int var8 = 0;
-
- for(int var9 = 0; var9 < var4; ++var9) {
- Component var10 = var1.getComponent(var9);
- Dimension var11 = var10.getPreferredSize();
- if (var7 < var11.width) {
- var7 = var11.width;
- }
-
- if (var8 < var11.height) {
- var8 = var11.height;
- }
- }
-
- Dimension var14 = new Dimension(var3.left + var3.right + var6 * var7 + (var6 - 1) * this.hgap, var3.top + var3.bottom + var5 * var8 + (var5 - 1) * this.vgap);
- return var14;
- }
- }
-
- public Dimension minimumLayoutSize(Container var1) {
- Object var2 = ((Component)var1).getTreeLock();
- synchronized(var2) {
- Insets var3 = var1.getInsets();
- int var4 = var1.getComponentCount();
- int var5 = this.rows;
- int var6 = this.cols;
- if (var5 > 0) {
- var6 = (var4 + var5 - 1) / var5;
- } else {
- var5 = (var4 + var6 - 1) / var6;
- }
-
- int var7 = 0;
- int var8 = 0;
-
- for(int var9 = 0; var9 < var4; ++var9) {
- Component var10 = var1.getComponent(var9);
- Dimension var11 = var10.getMinimumSize();
- if (var7 < var11.width) {
- var7 = var11.width;
- }
-
- if (var8 < var11.height) {
- var8 = var11.height;
- }
- }
-
- Dimension var14 = new Dimension(var3.left + var3.right + var6 * var7 + (var6 - 1) * this.hgap, var3.top + var3.bottom + var5 * var8 + (var5 - 1) * this.vgap);
- return var14;
- }
- }
-
- public void layoutContainer(Container var1) {
- Object var2 = ((Component)var1).getTreeLock();
- synchronized(var2) {
- Insets var3 = var1.getInsets();
- int var4 = var1.getComponentCount();
- int var5 = this.rows;
- int var6 = this.cols;
- if (var4 != 0) {
- if (var5 > 0) {
- var6 = (var4 + var5 - 1) / var5;
- } else {
- var5 = (var4 + var6 - 1) / var6;
- }
-
- int var7 = var1.width - (var3.left + var3.right);
- int var8 = var1.height - (var3.top + var3.bottom);
- var7 = (var7 - (var6 - 1) * this.hgap) / var6;
- var8 = (var8 - (var5 - 1) * this.vgap) / var5;
- int var9 = 0;
-
- for(int var10 = var3.left; var9 < var6; var10 += var7 + this.hgap) {
- int var11 = 0;
-
- for(int var12 = var3.top; var11 < var5; var12 += var8 + this.vgap) {
- int var13 = var11 * var6 + var9;
- if (var13 < var4) {
- var1.getComponent(var13).setBounds(var10, var12, var7, var8);
- }
-
- ++var11;
- }
-
- ++var9;
- }
-
- }
- }
- }
-
- public String toString() {
- return this.getClass().getName() + "[hgap=" + this.hgap + ",vgap=" + this.vgap + ",rows=" + this.rows + ",cols=" + this.cols + "]";
- }
- }
-