home *** CD-ROM | disk | FTP | other *** search
- package hhapplet;
-
- import java.awt.AWTEvent;
- import java.awt.Component;
- import java.awt.FontMetrics;
- import java.awt.Rectangle;
- import java.awt.TextArea;
-
- public class BsscTextArea extends TextArea {
- private String m_text = "";
-
- protected void processEvent(AWTEvent var1) {
- if (var1.getID() == 101 || var1.getID() == 102) {
- super.setText(this.parseText());
- }
-
- }
-
- public BsscTextArea() {
- ((Component)this).enableEvents(1L);
- }
-
- private String parseText() {
- Rectangle var1 = ((Component)this).getBounds();
- int var2 = var1.width - 20;
- FontMetrics var3 = ((Component)this).getGraphics().getFontMetrics();
- String var4 = new String(this.m_text);
- StringBuffer var5 = new StringBuffer();
- StringBuffer var6 = new StringBuffer();
- StringBuffer var7 = new StringBuffer();
- int var8 = var3.charWidth(' ');
- int var9 = 0;
- int var10 = -1;
-
- do {
- var10 = var4.indexOf(10, var9);
- Object var11 = null;
- String var19;
- if (var10 != -1) {
- var19 = var4.substring(var9, var10);
- var9 = var10 + 1;
- } else {
- var19 = var4.substring(var9);
- var9 = -1;
- }
-
- boolean var12 = true;
- int var13 = 0;
- int var14 = -1;
- int var15 = 0;
-
- do {
- var14 = var19.indexOf(32, var15);
- Object var16 = null;
- String var21;
- if (var14 != -1) {
- var21 = var19.substring(var15, var14);
- var15 = var14 + 1;
- } else {
- var21 = var19.substring(var15);
- var15 = -1;
- }
-
- int var17 = var3.charsWidth(var21.toCharArray(), 0, var21.length());
- if (var12) {
- var13 = var17;
- var7.append(var21);
- var12 = false;
- } else if (var13 != 0 && var13 + var17 + var8 >= var2) {
- var6.append(var7);
- var6.append("\n");
- var7.setLength(0);
- var13 = var17;
- var7.append(var21);
- } else {
- var13 += var17 + var8;
- var7.append(' ');
- var7.append(var21);
- }
- } while(var15 != -1);
-
- if (var7.length() != 0) {
- var6.append(var7);
- var7.setLength(0);
- }
-
- var5.append(var6);
- var6.setLength(0);
- var5.append("\n");
- } while(var9 != -1);
-
- return var5.toString();
- }
-
- public void setText(String var1) {
- this.m_text = var1;
- super.setText(this.parseText());
- }
- }
-