home *** CD-ROM | disk | FTP | other *** search
/ Symantec Visual Cafe for Java 2.5 / symantec-visual-cafe-2.5-database-dev-edition.iso / VCafe / WDESAMPL.BIN / HighlightFilter.class (.txt) < prev    next >
Encoding:
Java Class File  |  1996-11-19  |  770 b   |  54 lines

  1. import java.awt.image.RGBImageFilter;
  2.  
  3. class HighlightFilter extends RGBImageFilter {
  4.    boolean brighter;
  5.    int percent;
  6.  
  7.    public HighlightFilter(boolean var1, int var2) {
  8.       this.brighter = var1;
  9.       this.percent = var2;
  10.       super.canFilterIndexColorModel = true;
  11.    }
  12.  
  13.    public int filterRGB(int var1, int var2, int var3) {
  14.       int var4 = var3 >> 16 & 255;
  15.       int var5 = var3 >> 8 & 255;
  16.       int var6 = var3 & 255;
  17.       if (this.brighter) {
  18.          var4 = 255 - (255 - var4) * (100 - this.percent) / 100;
  19.          var5 = 255 - (255 - var5) * (100 - this.percent) / 100;
  20.          var6 = 255 - (255 - var6) * (100 - this.percent) / 100;
  21.       } else {
  22.          var4 = var4 * (100 - this.percent) / 100;
  23.          var5 = var5 * (100 - this.percent) / 100;
  24.          var6 = var6 * (100 - this.percent) / 100;
  25.       }
  26.  
  27.       if (var4 < 0) {
  28.          var4 = 0;
  29.       }
  30.  
  31.       if (var4 > 255) {
  32.          var4 = 255;
  33.       }
  34.  
  35.       if (var5 < 0) {
  36.          var5 = 0;
  37.       }
  38.  
  39.       if (var5 > 255) {
  40.          var5 = 255;
  41.       }
  42.  
  43.       if (var6 < 0) {
  44.          var6 = 0;
  45.       }
  46.  
  47.       if (var6 > 255) {
  48.          var6 = 255;
  49.       }
  50.  
  51.       return var3 & -16777216 | var4 << 16 | var5 << 8 | var6;
  52.    }
  53. }
  54.