Package org.eclipse.swt.graphics

Examples of org.eclipse.swt.graphics.PaletteData


      return;
    }

    if (!selected && (theme.isShowToolImageShadow() && GraphicsUtil.checkGdip())) {
      ImageData shadowImage = image.getImageData();
      PaletteData palette = new PaletteData(new RGB[] { new RGB(0, 0, 0), new RGB(154, 156, 146) });
      ImageData data = new ImageData(shadowImage.width, shadowImage.height, 1, palette);
      data.transparentPixel = shadowImage.transparentPixel;
      if (shadowImage.getTransparencyType() == SWT.TRANSPARENCY_PIXEL) {
        for (int pixelX = 0; pixelX < shadowImage.width; pixelX++) {
          for (int pixelY = 0; pixelY < shadowImage.width; pixelY++) {
            int dstPixel = shadowImage.getPixel(pixelX, pixelY);
            if (dstPixel != shadowImage.transparentPixel) {
              data.setPixel(pixelX, pixelY, 1);
            } else {
              data.setPixel(pixelX, pixelY, 0);
            }
          }
        }

        gc.setAdvanced(true);

        Image tempImage = new Image(gc.getDevice(), data);
        gc.drawImage(tempImage, x + 1, y + 1);
        tempImage.dispose();
        gc.setAdvanced(false);
        gc.drawImage(image, x - 1, y - 1);
        return;
      }
      gc.drawImage(image, x, y);
      return;
    }

    if (!GraphicsUtil.checkGdip() || !theme.isShowToolImageShadow()) {
      gc.drawImage(image, x, y);
      return;
    }

    RGB[] rgbs = image.getImageData().palette.getRGBs();
    if (rgbs == null) return;

    for (int i = 0; i < rgbs.length; i++) {
      RGB rgb = rgbs[i];
      rgb.red = (rgb.red + 76) - (((rgb.red + 32) / 64) * 19);
      rgb.green = (rgb.green + 76) - (((rgb.green + 32) / 64) * 19);
      rgb.blue = (rgb.blue + 76) - (((rgb.blue + 32) / 64) * 19);
    }

    ImageData shadowImage = image.getImageData();
    ImageData data = new ImageData(shadowImage.width,
        shadowImage.height, shadowImage.depth, new PaletteData(rgbs));
    data.transparentPixel = shadowImage.transparentPixel;

    for (int pixelX = 0; pixelX < shadowImage.width; pixelX++) {
      for (int pixelY = 0; pixelY < shadowImage.width; pixelY++) {
        int dstPixel = shadowImage.getPixel(pixelX, pixelY);
View Full Code Here


      {
        if (tracked && !selected
            && (theme.isShowToolImageShadow() && GraphicsUtil.checkGdip()))
        {
          ImageData shadowImage = image.getImageData();
          PaletteData palette = new PaletteData(new RGB[] { new RGB(0, 0, 0),
              new RGB(154, 156, 146) });
          ImageData data = new ImageData(shadowImage.width, shadowImage.height, 1,
              palette);
          data.transparentPixel = shadowImage.transparentPixel;
          if (shadowImage.getTransparencyType() == SWT.TRANSPARENCY_PIXEL)
          {
            for (int pixelX = 0; pixelX < shadowImage.width; pixelX++)
            {
              for (int pixelY = 0; pixelY < shadowImage.width; pixelY++)
              {
                int dstPixel = shadowImage.getPixel(pixelX, pixelY);
                if (dstPixel != shadowImage.transparentPixel)
                {
                  data.setPixel(pixelX, pixelY, 1);
                }
                else
                  data.setPixel(pixelX, pixelY, 0);

              }
            }

            gc.setAdvanced(true);

            Image tempImage = new Image(gc.getDevice(), data);
            gc.drawImage(tempImage, x + 1, y + 1);
            tempImage.dispose();
            gc.setAdvanced(false);
            gc.drawImage(image, x - 1, y - 1);
          }
          else
          {
            gc.drawImage(image, x, y);
          }
        }
        else
        {
          if (GraphicsUtil.checkGdip() && theme.isShowToolImageShadow())
          {
            RGB[] rgbs = image.getImageData().palette.getRGBs();
            if (rgbs != null)
            {
              for (int i = 0; i < rgbs.length; i++)
              {
                RGB rgb = rgbs[i];
                rgb.red = (rgb.red + 76) - (((rgb.red + 32) / 64) * 19);
                rgb.green = (rgb.green + 76) - (((rgb.green + 32) / 64) * 19);
                rgb.blue = (rgb.blue + 76) - (((rgb.blue + 32) / 64) * 19);
              }
              ImageData shadowImage = image.getImageData();
              ImageData data = new ImageData(shadowImage.width,
                  shadowImage.height, shadowImage.depth, new PaletteData(
                      rgbs));
              data.transparentPixel = shadowImage.transparentPixel;
              for (int pixelX = 0; pixelX < shadowImage.width; pixelX++)
              {
                for (int pixelY = 0; pixelY < shadowImage.width; pixelY++)
View Full Code Here

//    return this.image;
//  }
   
    private static BufferedImage convertToBufferedImage(ImageData data) {
        ColorModel colorModel = null;
        PaletteData palette = data.palette;
        if (palette.isDirect) {
          colorModel = new DirectColorModel(data.depth, palette.redMask,
              palette.greenMask, palette.blueMask);
          BufferedImage bufferedImage = new BufferedImage(colorModel,
              colorModel.createCompatibleWritableRaster(data.width,
                  data.height), false, null);
          WritableRaster raster = bufferedImage.getRaster();
          int[] pixelArray = new int[3];
          for (int y = 0; y < data.height; y++) {
            for (int x = 0; x < data.width; x++) {
              int pixel = data.getPixel(x, y);
              RGB rgb = palette.getRGB(pixel);
              pixelArray[0] = rgb.red;
              pixelArray[1] = rgb.green;
              pixelArray[2] = rgb.blue;
              raster.setPixels(x, y, 1, 1, pixelArray);
            }
          }
          return bufferedImage;
        } else {
          RGB[] rgbs = palette.getRGBs();
          byte[] red = new byte[rgbs.length];
          byte[] green = new byte[rgbs.length];
          byte[] blue = new byte[rgbs.length];
          for (int i = 0; i < rgbs.length; i++) {
            RGB rgb = rgbs[i];
View Full Code Here

    }
  }
 
    private static BufferedImage convertToBufferedImage(ImageData data) {
        ColorModel colorModel = null;
        PaletteData palette = data.palette;
        if (palette.isDirect) {
          colorModel = new DirectColorModel(data.depth, palette.redMask,
              palette.greenMask, palette.blueMask);
          BufferedImage bufferedImage = new BufferedImage(colorModel,
              colorModel.createCompatibleWritableRaster(data.width,
                  data.height), false, null);
          WritableRaster raster = bufferedImage.getRaster();
          int[] pixelArray = new int[3];
          for (int y = 0; y < data.height; y++) {
            for (int x = 0; x < data.width; x++) {
              int pixel = data.getPixel(x, y);
              RGB rgb = palette.getRGB(pixel);
              pixelArray[0] = rgb.red;
              pixelArray[1] = rgb.green;
              pixelArray[2] = rgb.blue;
              raster.setPixels(x, y, 1, 1, pixelArray);
            }
          }
          return bufferedImage;
        } else {
          RGB[] rgbs = palette.getRGBs();
          byte[] red = new byte[rgbs.length];
          byte[] green = new byte[rgbs.length];
          byte[] blue = new byte[rgbs.length];
          for (int i = 0; i < rgbs.length; i++) {
            RGB rgb = rgbs[i];
View Full Code Here

                    alpha = true;
                    // Falls through on purpose.
                case RGB:
                    if (alpha) {
                        // use alpha data... XXX: Is this right?
                        image = new ImageData(width, height, 32, new PaletteData(0xFF0000, 0x00FF00, 0x0000FF));
                        image.transparentPixel = -1;
                    } else {
                        image = new ImageData(width, height, 24, new PaletteData(0xFF0000, 0x00FF00, 0x0000FF));
                        image.transparentPixel = 255;
                    }
                    int index,
                    r,
                    g,
View Full Code Here

    private final Cursor getTransparentCursor() {
        if (_transparentCursor == null) {
            final Display display = _control.getDisplay();
            final Color white = display.getSystemColor(SWT.COLOR_WHITE);
            final Color black = display.getSystemColor(SWT.COLOR_BLACK);
            final PaletteData palette = new PaletteData(new RGB[] { white.getRGB(), black.getRGB() });
            final ImageData sourceData = new ImageData(16, 16, 1, palette);
            sourceData.transparentPixel = 0;
            _transparentCursor = new Cursor(display, sourceData, 0, 0);
        }
        return _transparentCursor;
View Full Code Here

  public static ImageData convertToSWT(BufferedImage bufferedImage)
  {
    if (bufferedImage.getColorModel() instanceof DirectColorModel)
    {
      DirectColorModel colorModel = (DirectColorModel) bufferedImage.getColorModel();
      PaletteData palette = new PaletteDatacolorModel.getRedMask(),
                          colorModel.getGreenMask(),
                          colorModel.getBlueMask());
      ImageData data = new ImageDatabufferedImage.getWidth(),
                      bufferedImage.getHeight(),
                      colorModel.getPixelSize(),
                      palette);
      WritableRaster raster = bufferedImage.getRaster();
     
      int[]  pixelArray  = new int[3];
      RGB    rgb      = new RGB(0,0,0);
     
      for (int y = 0; y < data.height; y++)
      {
        for (int x = 0; x < data.width; x++)
        {
          raster.getPixel(x, y, pixelArray);
         
          rgb.red    = pixelArray[0];
          rgb.green  = pixelArray[1];
          rgb.blue  = pixelArray[2];
         
          data.setPixel(x, y, palette.getPixel( rgb ) );
        }
      }
      return data;
    }
   
View Full Code Here

  public static ImageData convertToSWT(BufferedImage bufferedImage)
  {
    if (bufferedImage.getColorModel() instanceof DirectColorModel)
    {
      DirectColorModel colorModel = (DirectColorModel) bufferedImage.getColorModel();
      PaletteData palette = new PaletteDatacolorModel.getRedMask(),
                          colorModel.getGreenMask(),
                          colorModel.getBlueMask());
      ImageData data = new ImageDatabufferedImage.getWidth(),
                      bufferedImage.getHeight(),
                      colorModel.getPixelSize(),
                      palette);
      WritableRaster raster = bufferedImage.getRaster();
     
      int[]  pixelArray  = new int[3];
      RGB    rgb      = new RGB(0,0,0);
     
      for (int y = 0; y < data.height; y++)
      {
        for (int x = 0; x < data.width; x++)
        {
          raster.getPixel(x, y, pixelArray);
         
          rgb.red    = pixelArray[0];
          rgb.green  = pixelArray[1];
          rgb.blue  = pixelArray[2];
         
          data.setPixel(x, y, palette.getPixel( rgb ) );
        }
      }
      return data;
    }
   
View Full Code Here

     */
    public static ImageData convertToSWT(BufferedImage bufferedImage) {
        if (bufferedImage.getColorModel() instanceof DirectColorModel) {
            DirectColorModel colorModel
                    = (DirectColorModel) bufferedImage.getColorModel();
            PaletteData palette = new PaletteData(colorModel.getRedMask(),
                    colorModel.getGreenMask(), colorModel.getBlueMask());
            ImageData data = new ImageData(bufferedImage.getWidth(),
                    bufferedImage.getHeight(), colorModel.getPixelSize(),
                    palette);
            WritableRaster raster = bufferedImage.getRaster();
            int[] pixelArray = new int[3];
            for (int y = 0; y < data.height; y++) {
                for (int x = 0; x < data.width; x++) {
                    raster.getPixel(x, y, pixelArray);
                    int pixel = palette.getPixel(new RGB(pixelArray[0],
                            pixelArray[1], pixelArray[2]));
                    data.setPixel(x, y, pixel);
                }
            }
            return data;
        }
        else if (bufferedImage.getColorModel() instanceof IndexColorModel) {
            IndexColorModel colorModel = (IndexColorModel)
                    bufferedImage.getColorModel();
            int size = colorModel.getMapSize();
            byte[] reds = new byte[size];
            byte[] greens = new byte[size];
            byte[] blues = new byte[size];
            colorModel.getReds(reds);
            colorModel.getGreens(greens);
            colorModel.getBlues(blues);
            RGB[] rgbs = new RGB[size];
            for (int i = 0; i < rgbs.length; i++) {
                rgbs[i] = new RGB(reds[i] & 0xFF, greens[i] & 0xFF,
                        blues[i] & 0xFF);
            }
            PaletteData palette = new PaletteData(rgbs);
            ImageData data = new ImageData(bufferedImage.getWidth(),
                    bufferedImage.getHeight(), colorModel.getPixelSize(),
                    palette);
            data.transparentPixel = colorModel.getTransparentPixel();
            WritableRaster raster = bufferedImage.getRaster();
View Full Code Here

     */
    public static ImageData convertToSWT(BufferedImage bufferedImage) {
        if (bufferedImage.getColorModel() instanceof DirectColorModel) {
            DirectColorModel colorModel
                    = (DirectColorModel) bufferedImage.getColorModel();
            PaletteData palette = new PaletteData(colorModel.getRedMask(),
                    colorModel.getGreenMask(), colorModel.getBlueMask());
            ImageData data = new ImageData(bufferedImage.getWidth(),
                    bufferedImage.getHeight(), colorModel.getPixelSize(),
                    palette);
            WritableRaster raster = bufferedImage.getRaster();
            int[] pixelArray = new int[3];
            for (int y = 0; y < data.height; y++) {
                for (int x = 0; x < data.width; x++) {
                    raster.getPixel(x, y, pixelArray);
                    int pixel = palette.getPixel(new RGB(pixelArray[0],
                            pixelArray[1], pixelArray[2]));
                    data.setPixel(x, y, pixel);
                }
            }
            return data;
        }
        else if (bufferedImage.getColorModel() instanceof IndexColorModel) {
            IndexColorModel colorModel = (IndexColorModel)
                    bufferedImage.getColorModel();
            int size = colorModel.getMapSize();
            byte[] reds = new byte[size];
            byte[] greens = new byte[size];
            byte[] blues = new byte[size];
            colorModel.getReds(reds);
            colorModel.getGreens(greens);
            colorModel.getBlues(blues);
            RGB[] rgbs = new RGB[size];
            for (int i = 0; i < rgbs.length; i++) {
                rgbs[i] = new RGB(reds[i] & 0xFF, greens[i] & 0xFF,
                        blues[i] & 0xFF);
            }
            PaletteData palette = new PaletteData(rgbs);
            ImageData data = new ImageData(bufferedImage.getWidth(),
                    bufferedImage.getHeight(), colorModel.getPixelSize(),
                    palette);
            data.transparentPixel = colorModel.getTransparentPixel();
            WritableRaster raster = bufferedImage.getRaster();
View Full Code Here

TOP

Related Classes of org.eclipse.swt.graphics.PaletteData

Copyright © 2018 www.massapicom. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.