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

  1. package com.sun.java.swing.border;
  2.  
  3. import java.awt.Component;
  4. import java.awt.Graphics;
  5. import java.awt.Insets;
  6.  
  7. public class CompoundBorder extends AbstractBorder {
  8.    protected Border outsideBorder;
  9.    protected Border insideBorder;
  10.  
  11.    public CompoundBorder() {
  12.       this.outsideBorder = null;
  13.       this.insideBorder = null;
  14.    }
  15.  
  16.    public CompoundBorder(Border var1, Border var2) {
  17.       this.outsideBorder = var1;
  18.       this.insideBorder = var2;
  19.    }
  20.  
  21.    public boolean isBorderOpaque() {
  22.       return this.outsideBorder != null && this.outsideBorder.isBorderOpaque() && this.insideBorder != null && this.insideBorder.isBorderOpaque();
  23.    }
  24.  
  25.    public void paintBorder(Component var1, Graphics var2, int var3, int var4, int var5, int var6) {
  26.       int var8 = var3;
  27.       int var9 = var4;
  28.       int var10 = var5;
  29.       int var11 = var6;
  30.       if (this.outsideBorder != null) {
  31.          this.outsideBorder.paintBorder(var1, var2, var3, var4, var5, var6);
  32.          Insets var7 = this.outsideBorder.getBorderInsets(var1);
  33.          var8 = var3 + var7.left;
  34.          var9 = var4 + var7.top;
  35.          var10 = var5 - var7.right - var7.left;
  36.          var11 = var6 - var7.bottom - var7.top;
  37.       }
  38.  
  39.       if (this.insideBorder != null) {
  40.          this.insideBorder.paintBorder(var1, var2, var8, var9, var10, var11);
  41.       }
  42.  
  43.    }
  44.  
  45.    public Insets getBorderInsets(Component var1) {
  46.       int var4 = 0;
  47.       int var5 = 0;
  48.       int var3 = 0;
  49.       int var2 = 0;
  50.       if (this.outsideBorder != null) {
  51.          Insets var6 = this.outsideBorder.getBorderInsets(var1);
  52.          var2 += var6.top;
  53.          var3 += var6.left;
  54.          var5 += var6.right;
  55.          var4 += var6.bottom;
  56.       }
  57.  
  58.       if (this.insideBorder != null) {
  59.          Insets var7 = this.insideBorder.getBorderInsets(var1);
  60.          var2 += var7.top;
  61.          var3 += var7.left;
  62.          var5 += var7.right;
  63.          var4 += var7.bottom;
  64.       }
  65.  
  66.       return new Insets(var2, var3, var4, var5);
  67.    }
  68.  
  69.    public Border getOutsideBorder() {
  70.       return this.outsideBorder;
  71.    }
  72.  
  73.    public Border getInsideBorder() {
  74.       return this.insideBorder;
  75.    }
  76. }
  77.