home *** CD-ROM | disk | FTP | other *** search
/ PC Plus SuperCD (UK) 2000 March / pcp161a.iso / handson / files / copyjava.exe / com / sun / java / swing / JTextPane.class (.txt) < prev    next >
Encoding:
Java Class File  |  1998-02-26  |  4.8 KB  |  174 lines

  1. package com.sun.java.swing;
  2.  
  3. import com.sun.java.swing.text.AttributeSet;
  4. import com.sun.java.swing.text.BadLocationException;
  5. import com.sun.java.swing.text.Caret;
  6. import com.sun.java.swing.text.Document;
  7. import com.sun.java.swing.text.EditorKit;
  8. import com.sun.java.swing.text.Element;
  9. import com.sun.java.swing.text.JTextComponent;
  10. import com.sun.java.swing.text.MutableAttributeSet;
  11. import com.sun.java.swing.text.Style;
  12. import com.sun.java.swing.text.StyleConstants;
  13. import com.sun.java.swing.text.StyledDocument;
  14. import com.sun.java.swing.text.StyledEditorKit;
  15. import java.awt.Component;
  16.  
  17. public class JTextPane extends JEditorPane {
  18.    public JTextPane() {
  19.       this.setEditorKit(new StyledEditorKit());
  20.    }
  21.  
  22.    public JTextPane(StyledDocument var1) {
  23.       this();
  24.       this.setStyledDocument(var1);
  25.    }
  26.  
  27.    public String getUIClassID() {
  28.       return "TextPaneUI";
  29.    }
  30.  
  31.    public void setDocument(Document var1) {
  32.       if (var1 instanceof StyledDocument) {
  33.          super.setDocument(var1);
  34.       } else {
  35.          throw new IllegalArgumentException("Model must be StyledDocument");
  36.       }
  37.    }
  38.  
  39.    public void setStyledDocument(StyledDocument var1) {
  40.       super.setDocument(var1);
  41.    }
  42.  
  43.    public StyledDocument getStyledDocument() {
  44.       return (StyledDocument)((JTextComponent)this).getDocument();
  45.    }
  46.  
  47.    public void replaceSelection(String var1) {
  48.       if (!((JTextComponent)this).isEditable()) {
  49.          ((Component)this).getToolkit().beep();
  50.       } else {
  51.          StyledDocument var2 = this.getStyledDocument();
  52.          if (var2 != null) {
  53.             try {
  54.                Caret var3 = ((JTextComponent)this).getCaret();
  55.                int var4 = Math.min(var3.getDot(), var3.getMark());
  56.                int var5 = Math.max(var3.getDot(), var3.getMark());
  57.                if (var4 != var5) {
  58.                   var2.remove(var4, var5 - var4);
  59.                }
  60.  
  61.                if (var1 != null && var1.length() > 0) {
  62.                   var2.insertString(var4, var1, this.getInputAttributes());
  63.                   return;
  64.                }
  65.             } catch (BadLocationException var6) {
  66.                ((Component)this).getToolkit().beep();
  67.                return;
  68.             }
  69.          }
  70.  
  71.       }
  72.    }
  73.  
  74.    public void insertComponent(Component var1) {
  75.       MutableAttributeSet var2 = this.getInputAttributes();
  76.       var2.removeAttributes(var2);
  77.       StyleConstants.setComponent(var2, var1);
  78.       this.replaceSelection(" ");
  79.       var2.removeAttributes(var2);
  80.    }
  81.  
  82.    public void insertIcon(Icon var1) {
  83.       MutableAttributeSet var2 = this.getInputAttributes();
  84.       var2.removeAttributes(var2);
  85.       StyleConstants.setIcon(var2, var1);
  86.       this.replaceSelection(" ");
  87.       var2.removeAttributes(var2);
  88.    }
  89.  
  90.    public Style addStyle(String var1, Style var2) {
  91.       StyledDocument var3 = this.getStyledDocument();
  92.       return var3.addStyle(var1, var2);
  93.    }
  94.  
  95.    public void removeStyle(String var1) {
  96.       StyledDocument var2 = this.getStyledDocument();
  97.       var2.removeStyle(var1);
  98.    }
  99.  
  100.    public Style getStyle(String var1) {
  101.       StyledDocument var2 = this.getStyledDocument();
  102.       return var2.getStyle(var1);
  103.    }
  104.  
  105.    public void setLogicalStyle(Style var1) {
  106.       StyledDocument var2 = this.getStyledDocument();
  107.       var2.setLogicalStyle(((JTextComponent)this).getCaretPosition(), var1);
  108.    }
  109.  
  110.    public Style getLogicalStyle() {
  111.       StyledDocument var1 = this.getStyledDocument();
  112.       return var1.getLogicalStyle(((JTextComponent)this).getCaretPosition());
  113.    }
  114.  
  115.    public AttributeSet getCharacterAttributes() {
  116.       StyledDocument var1 = this.getStyledDocument();
  117.       Element var2 = var1.getCharacterElement(((JTextComponent)this).getCaretPosition());
  118.       return var2 != null ? var2.getAttributes() : null;
  119.    }
  120.  
  121.    public void setCharacterAttributes(AttributeSet var1, boolean var2) {
  122.       int var3 = ((JTextComponent)this).getSelectionStart();
  123.       int var4 = ((JTextComponent)this).getSelectionEnd();
  124.       if (var3 != var4) {
  125.          StyledDocument var6 = this.getStyledDocument();
  126.          var6.setCharacterAttributes(var3, var4 - var3, var1, var2);
  127.       } else {
  128.          MutableAttributeSet var5 = this.getInputAttributes();
  129.          if (var2) {
  130.             var5.removeAttributes(var5);
  131.          }
  132.  
  133.          var5.addAttributes(var1);
  134.       }
  135.    }
  136.  
  137.    public AttributeSet getParagraphAttributes() {
  138.       StyledDocument var1 = this.getStyledDocument();
  139.       Element var2 = var1.getParagraphElement(((JTextComponent)this).getCaretPosition());
  140.       return var2 != null ? var2.getAttributes() : null;
  141.    }
  142.  
  143.    public void setParagraphAttributes(AttributeSet var1, boolean var2) {
  144.       int var3 = ((JTextComponent)this).getSelectionStart();
  145.       int var4 = ((JTextComponent)this).getSelectionEnd();
  146.       StyledDocument var5 = this.getStyledDocument();
  147.       var5.setParagraphAttributes(var3, var4 - var3, var1, var2);
  148.    }
  149.  
  150.    public MutableAttributeSet getInputAttributes() {
  151.       return this.getStyledEditorKit().getInputAttributes();
  152.    }
  153.  
  154.    protected final StyledEditorKit getStyledEditorKit() {
  155.       return (StyledEditorKit)((JEditorPane)this).getEditorKit();
  156.    }
  157.  
  158.    protected EditorKit createDefaultEditorKit() {
  159.       return new StyledEditorKit();
  160.    }
  161.  
  162.    public final void setEditorKit(EditorKit var1) {
  163.       if (var1 instanceof StyledEditorKit) {
  164.          super.setEditorKit(var1);
  165.       } else {
  166.          throw new IllegalArgumentException("Must be StyledEditorKit");
  167.       }
  168.    }
  169.  
  170.    public boolean getScrollableTracksViewportWidth() {
  171.       return true;
  172.    }
  173. }
  174.