home *** CD-ROM | disk | FTP | other *** search
/ PC Plus SuperCD (UK) 2000 March / pcp161a.iso / handson / files / copyjava.exe / com / sun / java / swing / text / rtf / RTFReader$TextHandlingDestination.class (.txt) < prev   
Encoding:
Java Class File  |  1998-02-26  |  2.1 KB  |  67 lines

  1. package com.sun.java.swing.text.rtf;
  2.  
  3. import com.sun.java.swing.text.AttributeSet;
  4. import com.sun.java.swing.text.MutableAttributeSet;
  5.  
  6. abstract class RTFReader$TextHandlingDestination extends RTFReader.AttributeTrackingDestination implements RTFReader.Destination {
  7.    // $FF: synthetic field
  8.    private final RTFReader this$0;
  9.    boolean inParagraph;
  10.  
  11.    public RTFReader$TextHandlingDestination(RTFReader var1) {
  12.       super(var1);
  13.       this.this$0 = var1;
  14.       this.this$0 = var1;
  15.       this.inParagraph = false;
  16.    }
  17.  
  18.    public void handleText(String var1) {
  19.       if (!this.inParagraph) {
  20.          this.beginParagraph();
  21.       }
  22.  
  23.       this.deliverText(var1, ((RTFReader.AttributeTrackingDestination)this).currentTextAttributes());
  24.    }
  25.  
  26.    abstract void deliverText(String var1, AttributeSet var2);
  27.  
  28.    public void close() {
  29.       if (this.inParagraph) {
  30.          this.endParagraph();
  31.       }
  32.  
  33.       super.close();
  34.    }
  35.  
  36.    public boolean handleKeyword(String var1) {
  37.       if (var1.equals("\r") || var1.equals("\n")) {
  38.          var1 = "par";
  39.       }
  40.  
  41.       if (var1.equals("par")) {
  42.          this.endParagraph();
  43.          return true;
  44.       } else if (var1.equals("sect")) {
  45.          this.endSection();
  46.          return true;
  47.       } else {
  48.          return super.handleKeyword(var1);
  49.       }
  50.    }
  51.  
  52.    protected void beginParagraph() {
  53.       this.inParagraph = true;
  54.    }
  55.  
  56.    protected void endParagraph() {
  57.       MutableAttributeSet var1 = ((RTFReader.AttributeTrackingDestination)this).currentParagraphAttributes();
  58.       MutableAttributeSet var2 = ((RTFReader.AttributeTrackingDestination)this).currentTextAttributes();
  59.       this.finishParagraph(var1, var2);
  60.       this.inParagraph = false;
  61.    }
  62.  
  63.    abstract void finishParagraph(AttributeSet var1, AttributeSet var2);
  64.  
  65.    abstract void endSection();
  66. }
  67.