public abstract float getSpan(GlyphView var1, int var2, int var3, TabExpander var4, float var5);
public abstract float getHeight(GlyphView var1);
public abstract float getAscent(GlyphView var1);
public abstract float getDescent(GlyphView var1);
public abstract void paint(GlyphView var1, Graphics var2, Shape var3, int var4, int var5);
public abstract Shape modelToView(GlyphView var1, int var2, Position.Bias var3, Shape var4) throws BadLocationException;
public abstract int viewToModel(GlyphView var1, float var2, float var3, Shape var4, Position.Bias[] var5);
public abstract int getBoundedPosition(GlyphView var1, int var2, float var3, float var4);
public GlyphView$GlyphPainter getPainter(GlyphView var1, int var2, int var3) {
return this;
}
public int getNextVisualPositionFrom(GlyphView var1, int var2, Position.Bias var3, Shape var4, int var5, Position.Bias[] var6) throws BadLocationException {
int var7 = var1.getStartOffset();
int var8 = var1.getEndOffset();
switch (var5) {
case 1:
case 5:
return var2;
case 2:
case 4:
case 6:
default:
throw new IllegalArgumentException("Bad direction: " + var5);
case 3:
if (var7 == ((View)var1).getDocument().getLength()) {
if (var2 == -1) {
var6[0] = Bias.Forward;
return var7;
}
return -1;
} else if (var2 == -1) {
var6[0] = Bias.Forward;
return var7;
} else if (var2 == var8) {
return -1;
} else {
++var2;
if (var2 == var8) {
Segment var11 = var1.getText(var8 - 1, var8);
if (var11.array[var11.offset] == '\n') {
return -1;
}
var6[0] = Bias.Backward;
} else {
var6[0] = Bias.Forward;
}
return var2;
}
case 7:
if (var7 == ((View)var1).getDocument().getLength()) {