home *** CD-ROM | disk | FTP | other *** search
- package javax.swing.text.html;
-
- import javax.swing.text.BoxView;
- import javax.swing.text.CompositeView;
- import javax.swing.text.View;
-
- class TableView$RowIterator implements CSS.LayoutIterator {
- private int row;
- private int[] adjustments;
- private int[] offsets;
- private int[] spans;
- // $FF: synthetic field
- private final TableView this$0;
-
- TableView$RowIterator(TableView var1) {
- this.this$0 = var1;
- }
-
- void updateAdjustments() {
- byte var1 = 1;
- if (TableView.access$200(this.this$0)) {
- int var2 = this.this$0.getRowCount();
- this.adjustments = new int[var2];
-
- for(int var3 = 0; var3 < var2; ++var3) {
- TableView.RowView var4 = this.this$0.getRow(var3);
- if (var4.multiRowCells) {
- int var5 = ((CompositeView)var4).getViewCount();
-
- for(int var6 = 0; var6 < var5; ++var6) {
- View var7 = ((CompositeView)var4).getView(var6);
- int var8 = this.this$0.getRowsOccupied(var7);
- if (var8 > 1) {
- int var9 = (int)var7.getPreferredSpan(var1);
- this.adjustMultiRowSpan(var9, var8, var3);
- }
- }
- }
- }
- } else {
- this.adjustments = null;
- }
-
- }
-
- void adjustMultiRowSpan(int var1, int var2, int var3) {
- if (var3 + var2 > this.getCount()) {
- var2 = this.getCount() - var3;
- if (var2 < 1) {
- return;
- }
- }
-
- int var4 = 0;
-
- for(int var5 = 0; var5 < var2; ++var5) {
- TableView.RowView var6 = this.this$0.getRow(var3 + var5);
- var4 = (int)((float)var4 + ((BoxView)var6).getPreferredSpan(1));
- }
-
- if (var1 > var4) {
- int var11 = var1 - var4;
- int var7 = var11 / var2;
- int var8 = var7 + (var11 - var7 * var2);
- this.this$0.getRow(var3);
- int[] var10000 = this.adjustments;
- var10000[var3] += var8;
-
- for(int var10 = 1; var10 < var2; ++var10) {
- var10000 = this.adjustments;
- var10000[var3 + var10] += var7;
- }
- }
-
- }
-
- void setLayoutArrays(int[] var1, int[] var2) {
- this.offsets = var1;
- this.spans = var2;
- }
-
- public void setOffset(int var1) {
- TableView.RowView var2 = this.this$0.getRow(this.row);
- if (var2 != null) {
- this.offsets[var2.viewIndex] = var1;
- }
-
- }
-
- public int getOffset() {
- TableView.RowView var1 = this.this$0.getRow(this.row);
- return var1 != null ? this.offsets[var1.viewIndex] : 0;
- }
-
- public void setSpan(int var1) {
- TableView.RowView var2 = this.this$0.getRow(this.row);
- if (var2 != null) {
- this.spans[var2.viewIndex] = var1;
- }
-
- }
-
- public int getSpan() {
- TableView.RowView var1 = this.this$0.getRow(this.row);
- return var1 != null ? this.spans[var1.viewIndex] : 0;
- }
-
- public int getCount() {
- return this.this$0.rows.size();
- }
-
- public void setIndex(int var1) {
- this.row = var1;
- }
-
- public float getMinimumSpan(float var1) {
- return this.getPreferredSpan(var1);
- }
-
- public float getPreferredSpan(float var1) {
- TableView.RowView var2 = this.this$0.getRow(this.row);
- if (var2 != null) {
- int var3 = this.adjustments != null ? this.adjustments[this.row] : 0;
- var3 += 2 * TableView.access$100(this.this$0);
- return ((BoxView)var2).getPreferredSpan(this.this$0.getAxis()) + (float)var3;
- } else {
- return 0.0F;
- }
- }
-
- public float getMaximumSpan(float var1) {
- return this.getPreferredSpan(var1);
- }
-
- public float getLeadingCollapseSpan() {
- return (float)TableView.access$100(this.this$0);
- }
-
- public float getTrailingCollapseSpan() {
- return (float)TableView.access$100(this.this$0);
- }
- }
-