home *** CD-ROM | disk | FTP | other *** search
/ S283 Planetary Science &n…he Search for Life DVD 2 / DVD-ROM.iso / install / jre1_3 / lib / rt.jar / javax / swing / JScrollPane.class (.txt) < prev    next >
Encoding:
Java Class File  |  1979-12-31  |  7.8 KB  |  390 lines

  1. package javax.swing;
  2.  
  3. import java.awt.Component;
  4. import java.awt.ComponentOrientation;
  5. import java.awt.Container;
  6. import java.awt.Insets;
  7. import java.awt.LayoutManager;
  8. import java.awt.Rectangle;
  9. import java.io.IOException;
  10. import java.io.ObjectOutputStream;
  11. import javax.accessibility.Accessible;
  12. import javax.accessibility.AccessibleContext;
  13. import javax.swing.border.Border;
  14. import javax.swing.plaf.ScrollPaneUI;
  15.  
  16. public class JScrollPane extends JComponent implements ScrollPaneConstants, Accessible {
  17.    private Border viewportBorder;
  18.    private static final String uiClassID = "ScrollPaneUI";
  19.    protected int verticalScrollBarPolicy;
  20.    protected int horizontalScrollBarPolicy;
  21.    protected JViewport viewport;
  22.    protected JScrollBar verticalScrollBar;
  23.    protected JScrollBar horizontalScrollBar;
  24.    protected JViewport rowHeader;
  25.    protected JViewport columnHeader;
  26.    protected Component lowerLeft;
  27.    protected Component lowerRight;
  28.    protected Component upperLeft;
  29.    protected Component upperRight;
  30.  
  31.    public JScrollPane(Component var1, int var2, int var3) {
  32.       this.verticalScrollBarPolicy = 20;
  33.       this.horizontalScrollBarPolicy = 30;
  34.       this.setLayout(new ScrollPaneLayout.UIResource());
  35.       this.setVerticalScrollBarPolicy(var2);
  36.       this.setHorizontalScrollBarPolicy(var3);
  37.       this.setViewport(this.createViewport());
  38.       this.setVerticalScrollBar(this.createVerticalScrollBar());
  39.       this.setHorizontalScrollBar(this.createHorizontalScrollBar());
  40.       if (var1 != null) {
  41.          this.setViewportView(var1);
  42.       }
  43.  
  44.       ((JComponent)this).setOpaque(true);
  45.       this.updateUI();
  46.    }
  47.  
  48.    public JScrollPane(Component var1) {
  49.       this(var1, 20, 30);
  50.    }
  51.  
  52.    public JScrollPane(int var1, int var2) {
  53.       this((Component)null, var1, var2);
  54.    }
  55.  
  56.    public JScrollPane() {
  57.       this((Component)null, 20, 30);
  58.    }
  59.  
  60.    public ScrollPaneUI getUI() {
  61.       return (ScrollPaneUI)super.ui;
  62.    }
  63.  
  64.    public void setUI(ScrollPaneUI var1) {
  65.       super.setUI(var1);
  66.    }
  67.  
  68.    public void updateUI() {
  69.       this.setUI((ScrollPaneUI)UIManager.getUI(this));
  70.    }
  71.  
  72.    public String getUIClassID() {
  73.       return "ScrollPaneUI";
  74.    }
  75.  
  76.    public void setLayout(LayoutManager var1) {
  77.       if (var1 != null && !(var1 instanceof ScrollPaneLayout)) {
  78.          String var2 = "layout of JScrollPane must be a ScrollPaneLayout";
  79.          throw new ClassCastException(var2);
  80.       } else {
  81.          super.setLayout(var1);
  82.       }
  83.    }
  84.  
  85.    public boolean isValidateRoot() {
  86.       return true;
  87.    }
  88.  
  89.    public int getVerticalScrollBarPolicy() {
  90.       return this.verticalScrollBarPolicy;
  91.    }
  92.  
  93.    public void setVerticalScrollBarPolicy(int var1) {
  94.       switch (var1) {
  95.          case 20:
  96.          case 21:
  97.          case 22:
  98.             int var2 = this.verticalScrollBarPolicy;
  99.             this.verticalScrollBarPolicy = var1;
  100.             ((JComponent)this).firePropertyChange("verticalScrollBarPolicy", var2, var1);
  101.             return;
  102.          default:
  103.             throw new IllegalArgumentException("invalid verticalScrollBarPolicy");
  104.       }
  105.    }
  106.  
  107.    public int getHorizontalScrollBarPolicy() {
  108.       return this.horizontalScrollBarPolicy;
  109.    }
  110.  
  111.    public void setHorizontalScrollBarPolicy(int var1) {
  112.       switch (var1) {
  113.          case 30:
  114.          case 31:
  115.          case 32:
  116.             int var2 = this.horizontalScrollBarPolicy;
  117.             this.horizontalScrollBarPolicy = var1;
  118.             ((JComponent)this).firePropertyChange("horizontalScrollBarPolicy", var2, var1);
  119.             return;
  120.          default:
  121.             throw new IllegalArgumentException("invalid horizontalScrollBarPolicy");
  122.       }
  123.    }
  124.  
  125.    public Border getViewportBorder() {
  126.       return this.viewportBorder;
  127.    }
  128.  
  129.    public void setViewportBorder(Border var1) {
  130.       Border var2 = this.viewportBorder;
  131.       this.viewportBorder = var1;
  132.       ((JComponent)this).firePropertyChange("viewportBorder", var2, var1);
  133.    }
  134.  
  135.    public Rectangle getViewportBorderBounds() {
  136.       Rectangle var1 = new Rectangle(((Component)this).getSize());
  137.       Insets var2 = ((JComponent)this).getInsets();
  138.       var1.x = var2.left;
  139.       var1.y = var2.top;
  140.       var1.width -= var2.left + var2.right;
  141.       var1.height -= var2.top + var2.bottom;
  142.       boolean var3 = SwingUtilities.isLeftToRight(this);
  143.       JViewport var4 = this.getColumnHeader();
  144.       if (var4 != null && ((Component)var4).isVisible()) {
  145.          int var5 = ((JComponent)var4).getHeight();
  146.          var1.y += var5;
  147.          var1.height -= var5;
  148.       }
  149.  
  150.       JViewport var8 = this.getRowHeader();
  151.       if (var8 != null && ((Component)var8).isVisible()) {
  152.          int var6 = ((JComponent)var8).getWidth();
  153.          if (var3) {
  154.             var1.x += var6;
  155.          }
  156.  
  157.          var1.width -= var6;
  158.       }
  159.  
  160.       JScrollBar var9 = this.getVerticalScrollBar();
  161.       if (var9 != null && ((Component)var9).isVisible()) {
  162.          int var7 = ((JComponent)var9).getWidth();
  163.          if (!var3) {
  164.             var1.x += var7;
  165.          }
  166.  
  167.          var1.width -= var7;
  168.       }
  169.  
  170.       JScrollBar var10 = this.getHorizontalScrollBar();
  171.       if (var10 != null && ((Component)var10).isVisible()) {
  172.          var1.height -= ((JComponent)var10).getHeight();
  173.       }
  174.  
  175.       return var1;
  176.    }
  177.  
  178.    public JScrollBar createHorizontalScrollBar() {
  179.       return new ScrollBar(this, 0);
  180.    }
  181.  
  182.    public JScrollBar getHorizontalScrollBar() {
  183.       return this.horizontalScrollBar;
  184.    }
  185.  
  186.    public void setHorizontalScrollBar(JScrollBar var1) {
  187.       JScrollBar var2 = this.getHorizontalScrollBar();
  188.       this.horizontalScrollBar = var1;
  189.       ((Container)this).add(var1, "HORIZONTAL_SCROLLBAR");
  190.       ((JComponent)this).firePropertyChange("horizontalScrollBar", var2, var1);
  191.       ((JComponent)this).revalidate();
  192.       ((Component)this).repaint();
  193.    }
  194.  
  195.    public JScrollBar createVerticalScrollBar() {
  196.       return new ScrollBar(this, 1);
  197.    }
  198.  
  199.    public JScrollBar getVerticalScrollBar() {
  200.       return this.verticalScrollBar;
  201.    }
  202.  
  203.    public void setVerticalScrollBar(JScrollBar var1) {
  204.       JScrollBar var2 = this.getVerticalScrollBar();
  205.       this.verticalScrollBar = var1;
  206.       ((Container)this).add(var1, "VERTICAL_SCROLLBAR");
  207.       ((JComponent)this).firePropertyChange("verticalScrollBar", var2, var1);
  208.       ((JComponent)this).revalidate();
  209.       ((Component)this).repaint();
  210.    }
  211.  
  212.    protected JViewport createViewport() {
  213.       return new JViewport();
  214.    }
  215.  
  216.    public JViewport getViewport() {
  217.       return this.viewport;
  218.    }
  219.  
  220.    public void setViewport(JViewport var1) {
  221.       JViewport var2 = this.getViewport();
  222.       this.viewport = var1;
  223.       if (var1 != null) {
  224.          ((Container)this).add(var1, "VIEWPORT");
  225.       } else if (var2 != null) {
  226.          ((Container)this).remove(var2);
  227.       }
  228.  
  229.       ((JComponent)this).firePropertyChange("viewport", var2, var1);
  230.       if (super.accessibleContext != null) {
  231.          ((AccessibleJScrollPane)super.accessibleContext).resetViewPort();
  232.       }
  233.  
  234.       ((JComponent)this).revalidate();
  235.       ((Component)this).repaint();
  236.    }
  237.  
  238.    public void setViewportView(Component var1) {
  239.       if (this.getViewport() == null) {
  240.          this.setViewport(this.createViewport());
  241.       }
  242.  
  243.       this.getViewport().setView(var1);
  244.    }
  245.  
  246.    public JViewport getRowHeader() {
  247.       return this.rowHeader;
  248.    }
  249.  
  250.    public void setRowHeader(JViewport var1) {
  251.       JViewport var2 = this.getRowHeader();
  252.       this.rowHeader = var1;
  253.       if (var1 != null) {
  254.          ((Container)this).add(var1, "ROW_HEADER");
  255.       } else if (var2 != null) {
  256.          ((Container)this).remove(var2);
  257.       }
  258.  
  259.       ((JComponent)this).firePropertyChange("rowHeader", var2, var1);
  260.    }
  261.  
  262.    public void setRowHeaderView(Component var1) {
  263.       if (this.getRowHeader() == null) {
  264.          this.setRowHeader(this.createViewport());
  265.       }
  266.  
  267.       this.getRowHeader().setView(var1);
  268.    }
  269.  
  270.    public JViewport getColumnHeader() {
  271.       return this.columnHeader;
  272.    }
  273.  
  274.    public void setColumnHeader(JViewport var1) {
  275.       JViewport var2 = this.getColumnHeader();
  276.       this.columnHeader = var1;
  277.       if (var1 != null) {
  278.          ((Container)this).add(var1, "COLUMN_HEADER");
  279.       } else if (var2 != null) {
  280.          ((Container)this).remove(var2);
  281.       }
  282.  
  283.       ((JComponent)this).firePropertyChange("columnHeader", var2, var1);
  284.       ((JComponent)this).revalidate();
  285.       ((Component)this).repaint();
  286.    }
  287.  
  288.    public void setColumnHeaderView(Component var1) {
  289.       if (this.getColumnHeader() == null) {
  290.          this.setColumnHeader(this.createViewport());
  291.       }
  292.  
  293.       this.getColumnHeader().setView(var1);
  294.    }
  295.  
  296.    public Component getCorner(String var1) {
  297.       if (var1.equals("LOWER_LEFT_CORNER")) {
  298.          return this.lowerLeft;
  299.       } else if (var1.equals("LOWER_RIGHT_CORNER")) {
  300.          return this.lowerRight;
  301.       } else if (var1.equals("UPPER_LEFT_CORNER")) {
  302.          return this.upperLeft;
  303.       } else {
  304.          return var1.equals("UPPER_RIGHT_CORNER") ? this.upperRight : null;
  305.       }
  306.    }
  307.  
  308.    public void setCorner(String var1, Component var2) {
  309.       Component var3;
  310.       if (var1.equals("LOWER_LEFT_CORNER")) {
  311.          var3 = this.lowerLeft;
  312.          this.lowerLeft = var2;
  313.       } else if (var1.equals("LOWER_RIGHT_CORNER")) {
  314.          var3 = this.lowerRight;
  315.          this.lowerRight = var2;
  316.       } else if (var1.equals("UPPER_LEFT_CORNER")) {
  317.          var3 = this.upperLeft;
  318.          this.upperLeft = var2;
  319.       } else {
  320.          if (!var1.equals("UPPER_RIGHT_CORNER")) {
  321.             throw new IllegalArgumentException("invalid corner key");
  322.          }
  323.  
  324.          var3 = this.upperRight;
  325.          this.upperRight = var2;
  326.       }
  327.  
  328.       ((Container)this).add(var2, var1);
  329.       ((JComponent)this).firePropertyChange(var1, var3, var2);
  330.    }
  331.  
  332.    public void setComponentOrientation(ComponentOrientation var1) {
  333.       super.setComponentOrientation(var1);
  334.       this.verticalScrollBar.setComponentOrientation(var1);
  335.       this.horizontalScrollBar.setComponentOrientation(var1);
  336.    }
  337.  
  338.    private void writeObject(ObjectOutputStream var1) throws IOException {
  339.       var1.defaultWriteObject();
  340.       if (super.ui != null && this.getUIClassID().equals("ScrollPaneUI")) {
  341.          super.ui.installUI(this);
  342.       }
  343.  
  344.    }
  345.  
  346.    protected String paramString() {
  347.       String var1 = this.viewportBorder != null ? this.viewportBorder.toString() : "";
  348.       String var2 = this.viewport != null ? this.viewport.toString() : "";
  349.       String var3;
  350.       if (this.verticalScrollBarPolicy == 20) {
  351.          var3 = "VERTICAL_SCROLLBAR_AS_NEEDED";
  352.       } else if (this.verticalScrollBarPolicy == 21) {
  353.          var3 = "VERTICAL_SCROLLBAR_NEVER";
  354.       } else if (this.verticalScrollBarPolicy == 22) {
  355.          var3 = "VERTICAL_SCROLLBAR_ALWAYS";
  356.       } else {
  357.          var3 = "";
  358.       }
  359.  
  360.       String var4;
  361.       if (this.horizontalScrollBarPolicy == 30) {
  362.          var4 = "HORIZONTAL_SCROLLBAR_AS_NEEDED";
  363.       } else if (this.horizontalScrollBarPolicy == 31) {
  364.          var4 = "HORIZONTAL_SCROLLBAR_NEVER";
  365.       } else if (this.horizontalScrollBarPolicy == 32) {
  366.          var4 = "HORIZONTAL_SCROLLBAR_ALWAYS";
  367.       } else {
  368.          var4 = "";
  369.       }
  370.  
  371.       String var5 = this.horizontalScrollBar != null ? this.horizontalScrollBar.toString() : "";
  372.       String var6 = this.verticalScrollBar != null ? this.verticalScrollBar.toString() : "";
  373.       String var7 = this.columnHeader != null ? this.columnHeader.toString() : "";
  374.       String var8 = this.rowHeader != null ? this.rowHeader.toString() : "";
  375.       String var9 = this.lowerLeft != null ? this.lowerLeft.toString() : "";
  376.       String var10 = this.lowerRight != null ? this.lowerRight.toString() : "";
  377.       String var11 = this.upperLeft != null ? this.upperLeft.toString() : "";
  378.       String var12 = this.upperRight != null ? this.upperRight.toString() : "";
  379.       return super.paramString() + ",columnHeader=" + var7 + ",horizontalScrollBar=" + var5 + ",horizontalScrollBarPolicy=" + var4 + ",lowerLeft=" + var9 + ",lowerRight=" + var10 + ",rowHeader=" + var8 + ",upperLeft=" + var11 + ",upperRight=" + var12 + ",verticalScrollBar=" + var6 + ",verticalScrollBarPolicy=" + var3 + ",viewport=" + var2 + ",viewportBorder=" + var1;
  380.    }
  381.  
  382.    public AccessibleContext getAccessibleContext() {
  383.       if (super.accessibleContext == null) {
  384.          super.accessibleContext = new AccessibleJScrollPane(this);
  385.       }
  386.  
  387.       return super.accessibleContext;
  388.    }
  389. }
  390.