Merge branch 'master' of https://source.jalview.org/git/jalviewjs.git
[jalviewjs.git] / site / swingjs / j2s / javax / swing / text / FlowView.js
index eded68e..065212c 100644 (file)
-Clazz.declarePackage ("javax.swing.text");\r
-Clazz.load (["javax.swing.text.BoxView", "$.CompositeView"], "javax.swing.text.FlowView", ["java.util.Vector", "javax.swing.SizeRequirements", "javax.swing.text.ComponentView", "$.LabelView", "$.Position", "$.TabExpander", "$.TabableView"], function () {\r
-c$ = Clazz.decorateAsClass (function () {\r
-this.layoutSpan = 0;\r
-this.layoutPool = null;\r
-this.strategy = null;\r
-Clazz.instantialize (this, arguments);\r
-}, javax.swing.text, "FlowView", javax.swing.text.BoxView);\r
-Clazz.makeConstructor (c$, \r
-function (elem, axis) {\r
-Clazz.superConstructor (this, javax.swing.text.FlowView, [elem, axis]);\r
-this.layoutSpan = 2147483647;\r
-this.strategy =  new javax.swing.text.FlowView.FlowStrategy ();\r
-}, "javax.swing.text.Element,~N");\r
-Clazz.defineMethod (c$, "getFlowAxis", \r
-function () {\r
-if (this.getAxis () == 1) {\r
-return 0;\r
-}return 1;\r
-});\r
-Clazz.defineMethod (c$, "getFlowSpan", \r
-function (index) {\r
-return this.layoutSpan;\r
-}, "~N");\r
-Clazz.defineMethod (c$, "getFlowStart", \r
-function (index) {\r
-return 0;\r
-}, "~N");\r
-Clazz.defineMethod (c$, "loadChildren", \r
-function (f) {\r
-if (this.layoutPool == null) {\r
-this.layoutPool =  new javax.swing.text.FlowView.LogicalView (this.getElement ());\r
-}this.layoutPool.setParent (this);\r
-this.strategy.insertUpdate (this, null, null);\r
-}, "javax.swing.text.ViewFactory");\r
-Clazz.defineMethod (c$, "getViewIndexAtPosition", \r
-function (pos) {\r
-if (pos >= this.getStartOffset () && (pos < this.getEndOffset ())) {\r
-for (var counter = 0; counter < this.getViewCount (); counter++) {\r
-var v = this.getView (counter);\r
-if (pos >= v.getStartOffset () && pos < v.getEndOffset ()) {\r
-return counter;\r
-}}\r
-}return -1;\r
-}, "~N");\r
-Clazz.defineMethod (c$, "layout", \r
-function (width, height) {\r
-var faxis = this.getFlowAxis ();\r
-var newSpan;\r
-if (faxis == 0) {\r
-newSpan = width;\r
-} else {\r
-newSpan = height;\r
-}if (this.layoutSpan != newSpan) {\r
-this.layoutChanged (faxis);\r
-this.layoutChanged (this.getAxis ());\r
-this.layoutSpan = newSpan;\r
-}if (!this.isLayoutValid (faxis)) {\r
-var heightAxis = this.getAxis ();\r
-var oldFlowHeight = ((heightAxis == 0) ? this.getWidth () : this.getHeight ());\r
-this.strategy.layout (this);\r
-var newFlowHeight = Clazz.floatToInt (this.getPreferredSpan (heightAxis));\r
-if (oldFlowHeight != newFlowHeight) {\r
-var p = this.getParent ();\r
-if (p != null) {\r
-p.preferenceChanged (this, (heightAxis == 0), (heightAxis == 1));\r
-}var host = this.getContainer ();\r
-if (host != null) {\r
-host.repaint ();\r
-}}}Clazz.superCall (this, javax.swing.text.FlowView, "layout", [width, height]);\r
-}, "~N,~N");\r
-Clazz.overrideMethod (c$, "calculateMinorAxisRequirements", \r
-function (axis, r) {\r
-if (r == null) {\r
-r =  new javax.swing.SizeRequirements ();\r
-}var pref = this.layoutPool.getPreferredSpan (axis);\r
-var min = this.layoutPool.getMinimumSpan (axis);\r
-r.minimum = Clazz.floatToInt (min);\r
-r.preferred = Math.max (r.minimum, Clazz.floatToInt (pref));\r
-r.maximum = 2147483647;\r
-r.alignment = 0.5;\r
-return r;\r
-}, "~N,javax.swing.SizeRequirements");\r
-Clazz.defineMethod (c$, "insertUpdate", \r
-function (changes, a, f) {\r
-this.layoutPool.insertUpdate (changes, a, f);\r
-this.strategy.insertUpdate (this, changes, this.getInsideAllocation (a));\r
-}, "javax.swing.event.DocumentEvent,java.awt.Shape,javax.swing.text.ViewFactory");\r
-Clazz.defineMethod (c$, "removeUpdate", \r
-function (changes, a, f) {\r
-this.layoutPool.removeUpdate (changes, a, f);\r
-this.strategy.removeUpdate (this, changes, this.getInsideAllocation (a));\r
-}, "javax.swing.event.DocumentEvent,java.awt.Shape,javax.swing.text.ViewFactory");\r
-Clazz.defineMethod (c$, "changedUpdate", \r
-function (changes, a, f) {\r
-this.layoutPool.changedUpdate (changes, a, f);\r
-this.strategy.changedUpdate (this, changes, this.getInsideAllocation (a));\r
-}, "javax.swing.event.DocumentEvent,java.awt.Shape,javax.swing.text.ViewFactory");\r
-Clazz.defineMethod (c$, "setParent", \r
-function (parent) {\r
-Clazz.superCall (this, javax.swing.text.FlowView, "setParent", [parent]);\r
-if (parent == null && this.layoutPool != null) {\r
-this.layoutPool.setParent (null);\r
-}}, "javax.swing.text.View");\r
-Clazz.pu$h(self.c$);\r
-c$ = Clazz.decorateAsClass (function () {\r
-this.damageStart = 2147483647;\r
-this.viewBuffer = null;\r
-Clazz.instantialize (this, arguments);\r
-}, javax.swing.text.FlowView, "FlowStrategy");\r
-Clazz.defineMethod (c$, "addDamage", \r
-function (a, b) {\r
-if (b >= a.getStartOffset () && b < a.getEndOffset ()) {\r
-this.damageStart = Math.min (this.damageStart, b);\r
-}}, "javax.swing.text.FlowView,~N");\r
-Clazz.defineMethod (c$, "unsetDamage", \r
-function () {\r
-this.damageStart = 2147483647;\r
-});\r
-Clazz.defineMethod (c$, "insertUpdate", \r
-function (a, b, c) {\r
-if (b != null) {\r
-this.addDamage (a, b.getOffset ());\r
-}if (c != null) {\r
-var d = a.getContainer ();\r
-if (d != null) {\r
-d.repaint (c.x, c.y, c.width, c.height);\r
-}} else {\r
-a.preferenceChanged (null, true, true);\r
-}}, "javax.swing.text.FlowView,javax.swing.event.DocumentEvent,java.awt.Rectangle");\r
-Clazz.defineMethod (c$, "removeUpdate", \r
-function (a, b, c) {\r
-this.addDamage (a, b.getOffset ());\r
-if (c != null) {\r
-var d = a.getContainer ();\r
-if (d != null) {\r
-d.repaint (c.x, c.y, c.width, c.height);\r
-}} else {\r
-a.preferenceChanged (null, true, true);\r
-}}, "javax.swing.text.FlowView,javax.swing.event.DocumentEvent,java.awt.Rectangle");\r
-Clazz.defineMethod (c$, "changedUpdate", \r
-function (a, b, c) {\r
-this.addDamage (a, b.getOffset ());\r
-if (c != null) {\r
-var d = a.getContainer ();\r
-if (d != null) {\r
-d.repaint (c.x, c.y, c.width, c.height);\r
-}} else {\r
-a.preferenceChanged (null, true, true);\r
-}}, "javax.swing.text.FlowView,javax.swing.event.DocumentEvent,java.awt.Rectangle");\r
-Clazz.defineMethod (c$, "getLogicalView", \r
-function (a) {\r
-return a.layoutPool;\r
-}, "javax.swing.text.FlowView");\r
-Clazz.defineMethod (c$, "layout", \r
-function (a) {\r
-var b = this.getLogicalView (a);\r
-var c;\r
-var d;\r
-var e = a.getEndOffset ();\r
-if (a.majorAllocValid) {\r
-if (this.damageStart == 2147483647) {\r
-return;\r
-}while ((c = a.getViewIndexAtPosition (this.damageStart)) < 0) {\r
-this.damageStart--;\r
-}\r
-if (c > 0) {\r
-c--;\r
-}d = a.getView (c).getStartOffset ();\r
-} else {\r
-c = 0;\r
-d = a.getStartOffset ();\r
-}this.reparentViews (b, d);\r
-this.viewBuffer =  new java.util.Vector (10, 10);\r
-var f = a.getViewCount ();\r
-while (d < e) {\r
-var g;\r
-if (c >= f) {\r
-g = a.createRow ();\r
-a.append (g);\r
-} else {\r
-g = a.getView (c);\r
-}d = this.layoutRow (a, c, d);\r
-c++;\r
-}\r
-this.viewBuffer = null;\r
-if (c < f) {\r
-a.replace (c, f - c, null);\r
-}this.unsetDamage ();\r
-}, "javax.swing.text.FlowView");\r
-Clazz.defineMethod (c$, "layoutRow", \r
-function (a, b, c) {\r
-var d = a.getView (b);\r
-var e = a.getFlowStart (b);\r
-var f = a.getFlowSpan (b);\r
-var g = a.getEndOffset ();\r
-var h = (Clazz.instanceOf (a, javax.swing.text.TabExpander)) ? a : null;\r
-var i = a.getFlowAxis ();\r
-var j = 0;\r
-var k = 0;\r
-var l = 0;\r
-var m = -1;\r
-var n = 0;\r
-this.viewBuffer.clear ();\r
-while (c < g && f >= 0) {\r
-var o = this.createView (a, c, Clazz.floatToInt (f), b);\r
-if (o == null) {\r
-break;\r
-}var p = o.getBreakWeight (i, e, f);\r
-if (p >= 3000) {\r
-var q = o.breakView (i, c, e, f);\r
-if (q != null) {\r
-this.viewBuffer.add (q);\r
-} else if (n == 0) {\r
-this.viewBuffer.add (o);\r
-}break;\r
-} else if (p >= j && p > 0) {\r
-j = p;\r
-k = e;\r
-l = f;\r
-m = n;\r
-}var q;\r
-if (i == 0 && Clazz.instanceOf (o, javax.swing.text.TabableView)) {\r
-q = (o).getTabbedSpan (e, h);\r
-} else {\r
-q = o.getPreferredSpan (i);\r
-}if (q > f && m >= 0) {\r
-if (m < n) {\r
-o = this.viewBuffer.get (m);\r
-}for (var r = n - 1; r >= m; r--) {\r
-this.viewBuffer.remove (r);\r
-}\r
-o = o.breakView (i, o.getStartOffset (), k, l);\r
-}f -= q;\r
-e += q;\r
-this.viewBuffer.add (o);\r
-c = o.getEndOffset ();\r
-n++;\r
-}\r
-var o =  new Array (this.viewBuffer.size ());\r
-this.viewBuffer.toArray (o);\r
-d.replace (0, d.getViewCount (), o);\r
-return (o.length > 0 ? d.getEndOffset () : c);\r
-}, "javax.swing.text.FlowView,~N,~N");\r
-Clazz.defineMethod (c$, "adjustRow", \r
-function (a, b, c, d) {\r
-var e = a.getFlowAxis ();\r
-var f = a.getView (b);\r
-var g = f.getViewCount ();\r
-var h = 0;\r
-var i = 0;\r
-var j = 0;\r
-var k = -1;\r
-var l;\r
-for (var m = 0; m < g; m++) {\r
-l = f.getView (m);\r
-var n = c - h;\r
-var o = l.getBreakWeight (e, d + h, n);\r
-if ((o >= i) && (o > 0)) {\r
-i = o;\r
-k = m;\r
-j = h;\r
-if (o >= 3000) {\r
-break;\r
-}}h += l.getPreferredSpan (e);\r
-}\r
-if (k < 0) {\r
-return;\r
-}var n = c - j;\r
-l = f.getView (k);\r
-l = l.breakView (e, l.getStartOffset (), d + j, n);\r
-var o =  new Array (1);\r
-o[0] = l;\r
-var p = this.getLogicalView (a);\r
-var q = f.getView (k).getStartOffset ();\r
-var r = f.getEndOffset ();\r
-for (var s = 0; s < p.getViewCount (); s++) {\r
-var t = p.getView (s);\r
-if (t.getEndOffset () > r) {\r
-break;\r
-}if (t.getStartOffset () >= q) {\r
-t.setParent (p);\r
-}}\r
-f.replace (k, g - k, o);\r
-}, "javax.swing.text.FlowView,~N,~N,~N");\r
-Clazz.defineMethod (c$, "reparentViews", \r
-function (a, b) {\r
-var c = a.getViewIndex (b, javax.swing.text.Position.Bias.Forward);\r
-if (c >= 0) {\r
-for (var d = c; d < a.getViewCount (); d++) {\r
-a.getView (d).setParent (a);\r
-}\r
-}}, "javax.swing.text.View,~N");\r
-Clazz.defineMethod (c$, "createView", \r
-function (a, b, c, d) {\r
-var e = this.getLogicalView (a);\r
-var f = e.getViewIndex (b, javax.swing.text.Position.Bias.Forward);\r
-var g = e.getView (f);\r
-if (b == g.getStartOffset ()) {\r
-return g;\r
-}g = g.createFragment (b, g.getEndOffset ());\r
-return g;\r
-}, "javax.swing.text.FlowView,~N,~N,~N");\r
-c$ = Clazz.p0p ();\r
-Clazz.pu$h(self.c$);\r
-c$ = Clazz.declareType (javax.swing.text.FlowView, "LogicalView", javax.swing.text.CompositeView);\r
-Clazz.defineMethod (c$, "getViewIndexAtPosition", \r
-function (a) {\r
-var b = this.getElement ();\r
-if (b.isLeaf ()) {\r
-return 0;\r
-}return Clazz.superCall (this, javax.swing.text.FlowView.LogicalView, "getViewIndexAtPosition", [a]);\r
-}, "~N");\r
-Clazz.defineMethod (c$, "loadChildren", \r
-function (a) {\r
-var b = this.getElement ();\r
-if (b.isLeaf ()) {\r
-var c =  new javax.swing.text.LabelView (b);\r
-this.append (c);\r
-} else {\r
-Clazz.superCall (this, javax.swing.text.FlowView.LogicalView, "loadChildren", [a]);\r
-}}, "javax.swing.text.ViewFactory");\r
-Clazz.defineMethod (c$, "getAttributes", \r
-function () {\r
-var a = this.getParent ();\r
-return (a != null) ? a.getAttributes () : null;\r
-});\r
-Clazz.defineMethod (c$, "getPreferredSpan", \r
-function (a) {\r
-var b = 0;\r
-var c = 0;\r
-var d = this.getViewCount ();\r
-for (var e = 0; e < d; e++) {\r
-var f = this.getView (e);\r
-c += f.getPreferredSpan (a);\r
-if (f.getBreakWeight (a, 0, 2147483647) >= 3000) {\r
-b = Math.max (b, c);\r
-c = 0;\r
-}}\r
-b = Math.max (b, c);\r
-return b;\r
-}, "~N");\r
-Clazz.defineMethod (c$, "getMinimumSpan", \r
-function (a) {\r
-var b = 0;\r
-var c = 0;\r
-var d = false;\r
-var e = this.getViewCount ();\r
-for (var f = 0; f < e; f++) {\r
-var g = this.getView (f);\r
-if (g.getBreakWeight (a, 0, 2147483647) == 0) {\r
-c += g.getPreferredSpan (a);\r
-d = true;\r
-} else if (d) {\r
-b = Math.max (c, b);\r
-d = false;\r
-c = 0;\r
-}if (Clazz.instanceOf (g, javax.swing.text.ComponentView)) {\r
-b = Math.max (b, g.getMinimumSpan (a));\r
-}}\r
-b = Math.max (b, c);\r
-return b;\r
-}, "~N");\r
-Clazz.defineMethod (c$, "forwardUpdateToView", \r
-function (a, b, c, d) {\r
-var e = a.getParent ();\r
-a.setParent (this);\r
-Clazz.superCall (this, javax.swing.text.FlowView.LogicalView, "forwardUpdateToView", [a, b, c, d]);\r
-a.setParent (e);\r
-}, "javax.swing.text.View,javax.swing.event.DocumentEvent,java.awt.Shape,javax.swing.text.ViewFactory");\r
-Clazz.overrideMethod (c$, "paint", \r
-function (a, b) {\r
-}, "java.awt.Graphics,java.awt.Shape");\r
-Clazz.overrideMethod (c$, "isBefore", \r
-function (a, b, c) {\r
-return false;\r
-}, "~N,~N,java.awt.Rectangle");\r
-Clazz.overrideMethod (c$, "isAfter", \r
-function (a, b, c) {\r
-return false;\r
-}, "~N,~N,java.awt.Rectangle");\r
-Clazz.overrideMethod (c$, "getViewAtPoint", \r
-function (a, b, c) {\r
-return null;\r
-}, "~N,~N,java.awt.Rectangle");\r
-Clazz.overrideMethod (c$, "childAllocation", \r
-function (a, b) {\r
-}, "~N,java.awt.Rectangle");\r
-c$ = Clazz.p0p ();\r
-});\r
+Clazz.declarePackage ("javax.swing.text");
+Clazz.load (["javax.swing.text.BoxView", "$.CompositeView"], "javax.swing.text.FlowView", ["java.util.Vector", "javax.swing.SizeRequirements", "javax.swing.text.ComponentView", "$.LabelView", "$.Position", "$.TabExpander", "$.TabableView"], function () {
+c$ = Clazz.decorateAsClass (function () {
+this.layoutSpan = 0;
+this.layoutPool = null;
+this.strategy = null;
+Clazz.instantialize (this, arguments);
+}, javax.swing.text, "FlowView", javax.swing.text.BoxView);
+Clazz.makeConstructor (c$, 
+function (elem, axis) {
+Clazz.superConstructor (this, javax.swing.text.FlowView, [elem, axis]);
+this.layoutSpan = 2147483647;
+this.strategy =  new javax.swing.text.FlowView.FlowStrategy ();
+}, "javax.swing.text.Element,~N");
+Clazz.defineMethod (c$, "getFlowAxis", 
+function () {
+if (this.getAxis () == 1) {
+return 0;
+}return 1;
+});
+Clazz.defineMethod (c$, "getFlowSpan", 
+function (index) {
+return this.layoutSpan;
+}, "~N");
+Clazz.defineMethod (c$, "getFlowStart", 
+function (index) {
+return 0;
+}, "~N");
+Clazz.defineMethod (c$, "loadChildren", 
+function (f) {
+if (this.layoutPool == null) {
+this.layoutPool =  new javax.swing.text.FlowView.LogicalView (this.getElement ());
+}this.layoutPool.setParent (this);
+this.strategy.insertUpdate (this, null, null);
+}, "javax.swing.text.ViewFactory");
+Clazz.defineMethod (c$, "getViewIndexAtPosition", 
+function (pos) {
+if (pos >= this.getStartOffset () && (pos < this.getEndOffset ())) {
+for (var counter = 0; counter < this.getViewCount (); counter++) {
+var v = this.getView (counter);
+if (pos >= v.getStartOffset () && pos < v.getEndOffset ()) {
+return counter;
+}}
+}return -1;
+}, "~N");
+Clazz.defineMethod (c$, "layout", 
+function (width, height) {
+var faxis = this.getFlowAxis ();
+var newSpan;
+if (faxis == 0) {
+newSpan = width;
+} else {
+newSpan = height;
+}if (this.layoutSpan != newSpan) {
+this.layoutChanged (faxis);
+this.layoutChanged (this.getAxis ());
+this.layoutSpan = newSpan;
+}if (!this.isLayoutValid (faxis)) {
+var heightAxis = this.getAxis ();
+var oldFlowHeight = ((heightAxis == 0) ? this.getWidth () : this.getHeight ());
+this.strategy.layout (this);
+var newFlowHeight = Clazz.floatToInt (this.getPreferredSpan (heightAxis));
+if (oldFlowHeight != newFlowHeight) {
+var p = this.getParent ();
+if (p != null) {
+p.preferenceChanged (this, (heightAxis == 0), (heightAxis == 1));
+}var host = this.getContainer ();
+if (host != null) {
+host.repaint ();
+}}}Clazz.superCall (this, javax.swing.text.FlowView, "layout", [width, height]);
+}, "~N,~N");
+Clazz.overrideMethod (c$, "calculateMinorAxisRequirements", 
+function (axis, r) {
+if (r == null) {
+r =  new javax.swing.SizeRequirements ();
+}var pref = this.layoutPool.getPreferredSpan (axis);
+var min = this.layoutPool.getMinimumSpan (axis);
+r.minimum = Clazz.floatToInt (min);
+r.preferred = Math.max (r.minimum, Clazz.floatToInt (pref));
+r.maximum = 2147483647;
+r.alignment = 0.5;
+return r;
+}, "~N,javax.swing.SizeRequirements");
+Clazz.defineMethod (c$, "insertUpdate", 
+function (changes, a, f) {
+this.layoutPool.insertUpdate (changes, a, f);
+this.strategy.insertUpdate (this, changes, this.getInsideAllocation (a));
+}, "javax.swing.event.DocumentEvent,java.awt.Shape,javax.swing.text.ViewFactory");
+Clazz.defineMethod (c$, "removeUpdate", 
+function (changes, a, f) {
+this.layoutPool.removeUpdate (changes, a, f);
+this.strategy.removeUpdate (this, changes, this.getInsideAllocation (a));
+}, "javax.swing.event.DocumentEvent,java.awt.Shape,javax.swing.text.ViewFactory");
+Clazz.defineMethod (c$, "changedUpdate", 
+function (changes, a, f) {
+this.layoutPool.changedUpdate (changes, a, f);
+this.strategy.changedUpdate (this, changes, this.getInsideAllocation (a));
+}, "javax.swing.event.DocumentEvent,java.awt.Shape,javax.swing.text.ViewFactory");
+Clazz.defineMethod (c$, "setParent", 
+function (parent) {
+Clazz.superCall (this, javax.swing.text.FlowView, "setParent", [parent]);
+if (parent == null && this.layoutPool != null) {
+this.layoutPool.setParent (null);
+}}, "javax.swing.text.View");
+Clazz.pu$h(self.c$);
+c$ = Clazz.decorateAsClass (function () {
+this.damageStart = 2147483647;
+this.viewBuffer = null;
+Clazz.instantialize (this, arguments);
+}, javax.swing.text.FlowView, "FlowStrategy");
+Clazz.defineMethod (c$, "addDamage", 
+function (a, b) {
+if (b >= a.getStartOffset () && b < a.getEndOffset ()) {
+this.damageStart = Math.min (this.damageStart, b);
+}}, "javax.swing.text.FlowView,~N");
+Clazz.defineMethod (c$, "unsetDamage", 
+function () {
+this.damageStart = 2147483647;
+});
+Clazz.defineMethod (c$, "insertUpdate", 
+function (a, b, c) {
+if (b != null) {
+this.addDamage (a, b.getOffset ());
+}if (c != null) {
+var d = a.getContainer ();
+if (d != null) {
+d.repaint (c.x, c.y, c.width, c.height);
+}} else {
+a.preferenceChanged (null, true, true);
+}}, "javax.swing.text.FlowView,javax.swing.event.DocumentEvent,java.awt.Rectangle");
+Clazz.defineMethod (c$, "removeUpdate", 
+function (a, b, c) {
+this.addDamage (a, b.getOffset ());
+if (c != null) {
+var d = a.getContainer ();
+if (d != null) {
+d.repaint (c.x, c.y, c.width, c.height);
+}} else {
+a.preferenceChanged (null, true, true);
+}}, "javax.swing.text.FlowView,javax.swing.event.DocumentEvent,java.awt.Rectangle");
+Clazz.defineMethod (c$, "changedUpdate", 
+function (a, b, c) {
+this.addDamage (a, b.getOffset ());
+if (c != null) {
+var d = a.getContainer ();
+if (d != null) {
+d.repaint (c.x, c.y, c.width, c.height);
+}} else {
+a.preferenceChanged (null, true, true);
+}}, "javax.swing.text.FlowView,javax.swing.event.DocumentEvent,java.awt.Rectangle");
+Clazz.defineMethod (c$, "getLogicalView", 
+function (a) {
+return a.layoutPool;
+}, "javax.swing.text.FlowView");
+Clazz.defineMethod (c$, "layout", 
+function (a) {
+var b = this.getLogicalView (a);
+var c;
+var d;
+var e = a.getEndOffset ();
+if (a.majorAllocValid) {
+if (this.damageStart == 2147483647) {
+return;
+}while ((c = a.getViewIndexAtPosition (this.damageStart)) < 0) {
+this.damageStart--;
+}
+if (c > 0) {
+c--;
+}d = a.getView (c).getStartOffset ();
+} else {
+c = 0;
+d = a.getStartOffset ();
+}this.reparentViews (b, d);
+this.viewBuffer =  new java.util.Vector (10, 10);
+var f = a.getViewCount ();
+while (d < e) {
+var g;
+if (c >= f) {
+g = a.createRow ();
+a.append (g);
+} else {
+g = a.getView (c);
+}d = this.layoutRow (a, c, d);
+c++;
+}
+this.viewBuffer = null;
+if (c < f) {
+a.replace (c, f - c, null);
+}this.unsetDamage ();
+}, "javax.swing.text.FlowView");
+Clazz.defineMethod (c$, "layoutRow", 
+function (a, b, c) {
+var d = a.getView (b);
+var e = a.getFlowStart (b);
+var f = a.getFlowSpan (b);
+var g = a.getEndOffset ();
+var h = (Clazz.instanceOf (a, javax.swing.text.TabExpander)) ? a : null;
+var i = a.getFlowAxis ();
+var j = 0;
+var k = 0;
+var l = 0;
+var m = -1;
+var n = 0;
+this.viewBuffer.clear ();
+while (c < g && f >= 0) {
+var o = this.createView (a, c, Clazz.floatToInt (f), b);
+if (o == null) {
+break;
+}var p = o.getBreakWeight (i, e, f);
+if (p >= 3000) {
+var q = o.breakView (i, c, e, f);
+if (q != null) {
+this.viewBuffer.add (q);
+} else if (n == 0) {
+this.viewBuffer.add (o);
+}break;
+} else if (p >= j && p > 0) {
+j = p;
+k = e;
+l = f;
+m = n;
+}var q;
+if (i == 0 && Clazz.instanceOf (o, javax.swing.text.TabableView)) {
+q = (o).getTabbedSpan (e, h);
+} else {
+q = o.getPreferredSpan (i);
+}if (q > f && m >= 0) {
+if (m < n) {
+o = this.viewBuffer.get (m);
+}for (var r = n - 1; r >= m; r--) {
+this.viewBuffer.remove (r);
+}
+o = o.breakView (i, o.getStartOffset (), k, l);
+}f -= q;
+e += q;
+this.viewBuffer.add (o);
+c = o.getEndOffset ();
+n++;
+}
+var o =  new Array (this.viewBuffer.size ());
+this.viewBuffer.toArray (o);
+d.replace (0, d.getViewCount (), o);
+return (o.length > 0 ? d.getEndOffset () : c);
+}, "javax.swing.text.FlowView,~N,~N");
+Clazz.defineMethod (c$, "adjustRow", 
+function (a, b, c, d) {
+var e = a.getFlowAxis ();
+var f = a.getView (b);
+var g = f.getViewCount ();
+var h = 0;
+var i = 0;
+var j = 0;
+var k = -1;
+var l;
+for (var m = 0; m < g; m++) {
+l = f.getView (m);
+var n = c - h;
+var o = l.getBreakWeight (e, d + h, n);
+if ((o >= i) && (o > 0)) {
+i = o;
+k = m;
+j = h;
+if (o >= 3000) {
+break;
+}}h += l.getPreferredSpan (e);
+}
+if (k < 0) {
+return;
+}var n = c - j;
+l = f.getView (k);
+l = l.breakView (e, l.getStartOffset (), d + j, n);
+var o =  new Array (1);
+o[0] = l;
+var p = this.getLogicalView (a);
+var q = f.getView (k).getStartOffset ();
+var r = f.getEndOffset ();
+for (var s = 0; s < p.getViewCount (); s++) {
+var t = p.getView (s);
+if (t.getEndOffset () > r) {
+break;
+}if (t.getStartOffset () >= q) {
+t.setParent (p);
+}}
+f.replace (k, g - k, o);
+}, "javax.swing.text.FlowView,~N,~N,~N");
+Clazz.defineMethod (c$, "reparentViews", 
+function (a, b) {
+var c = a.getViewIndex (b, javax.swing.text.Position.Bias.Forward);
+if (c >= 0) {
+for (var d = c; d < a.getViewCount (); d++) {
+a.getView (d).setParent (a);
+}
+}}, "javax.swing.text.View,~N");
+Clazz.defineMethod (c$, "createView", 
+function (a, b, c, d) {
+var e = this.getLogicalView (a);
+var f = e.getViewIndex (b, javax.swing.text.Position.Bias.Forward);
+var g = e.getView (f);
+if (b == g.getStartOffset ()) {
+return g;
+}g = g.createFragment (b, g.getEndOffset ());
+return g;
+}, "javax.swing.text.FlowView,~N,~N,~N");
+c$ = Clazz.p0p ();
+Clazz.pu$h(self.c$);
+c$ = Clazz.declareType (javax.swing.text.FlowView, "LogicalView", javax.swing.text.CompositeView);
+Clazz.defineMethod (c$, "getViewIndexAtPosition", 
+function (a) {
+var b = this.getElement ();
+if (b.isLeaf ()) {
+return 0;
+}return Clazz.superCall (this, javax.swing.text.FlowView.LogicalView, "getViewIndexAtPosition", [a]);
+}, "~N");
+Clazz.defineMethod (c$, "loadChildren", 
+function (a) {
+var b = this.getElement ();
+if (b.isLeaf ()) {
+var c =  new javax.swing.text.LabelView (b);
+this.append (c);
+} else {
+Clazz.superCall (this, javax.swing.text.FlowView.LogicalView, "loadChildren", [a]);
+}}, "javax.swing.text.ViewFactory");
+Clazz.defineMethod (c$, "getAttributes", 
+function () {
+var a = this.getParent ();
+return (a != null) ? a.getAttributes () : null;
+});
+Clazz.defineMethod (c$, "getPreferredSpan", 
+function (a) {
+var b = 0;
+var c = 0;
+var d = this.getViewCount ();
+for (var e = 0; e < d; e++) {
+var f = this.getView (e);
+c += f.getPreferredSpan (a);
+if (f.getBreakWeight (a, 0, 2147483647) >= 3000) {
+b = Math.max (b, c);
+c = 0;
+}}
+b = Math.max (b, c);
+return b;
+}, "~N");
+Clazz.defineMethod (c$, "getMinimumSpan", 
+function (a) {
+var b = 0;
+var c = 0;
+var d = false;
+var e = this.getViewCount ();
+for (var f = 0; f < e; f++) {
+var g = this.getView (f);
+if (g.getBreakWeight (a, 0, 2147483647) == 0) {
+c += g.getPreferredSpan (a);
+d = true;
+} else if (d) {
+b = Math.max (c, b);
+d = false;
+c = 0;
+}if (Clazz.instanceOf (g, javax.swing.text.ComponentView)) {
+b = Math.max (b, g.getMinimumSpan (a));
+}}
+b = Math.max (b, c);
+return b;
+}, "~N");
+Clazz.defineMethod (c$, "forwardUpdateToView", 
+function (a, b, c, d) {
+var e = a.getParent ();
+a.setParent (this);
+Clazz.superCall (this, javax.swing.text.FlowView.LogicalView, "forwardUpdateToView", [a, b, c, d]);
+a.setParent (e);
+}, "javax.swing.text.View,javax.swing.event.DocumentEvent,java.awt.Shape,javax.swing.text.ViewFactory");
+Clazz.overrideMethod (c$, "paint", 
+function (a, b) {
+}, "java.awt.Graphics,java.awt.Shape");
+Clazz.overrideMethod (c$, "isBefore", 
+function (a, b, c) {
+return false;
+}, "~N,~N,java.awt.Rectangle");
+Clazz.overrideMethod (c$, "isAfter", 
+function (a, b, c) {
+return false;
+}, "~N,~N,java.awt.Rectangle");
+Clazz.overrideMethod (c$, "getViewAtPoint", 
+function (a, b, c) {
+return null;
+}, "~N,~N,java.awt.Rectangle");
+Clazz.overrideMethod (c$, "childAllocation", 
+function (a, b) {
+}, "~N,java.awt.Rectangle");
+c$ = Clazz.p0p ();
+});