Transfer type to transfer SWT ImageData objects. : Image « SWT JFace Eclipse « Java

Java
1. 2D Graphics GUI
2. 3D
3. Advanced Graphics
4. Ant
5. Apache Common
6. Chart
7. Collections Data Structure
8. Database SQL JDBC
9. Design Pattern
10. Development Class
11. Email
12. Event
13. File Input Output
14. Game
15. Hibernate
16. J2EE
17. J2ME
18. JDK 6
19. JSP
20. JSTL
21. Language Basics
22. Network Protocol
23. PDF RTF
24. Regular Expressions
25. Security
26. Servlets
27. Spring
28. Swing Components
29. Swing JFC
30. SWT JFace Eclipse
31. Threads
32. Tiny Application
33. Velocity
34. Web Services SOA
35. XML
Microsoft Office Word 2007 Tutorial
Java Tutorial
Java Source Code / Java Documentation
Java Open Source
Jar File Download
Java Articles
Java Products
Java by API
C# / C Sharp
C# / CSharp Tutorial
ASP.Net
JavaScript DHTML
JavaScript Tutorial
JavaScript Reference
HTML / CSS
HTML CSS Reference
C / ANSI-C
C Tutorial
C++
C++ Tutorial
PHP
Python
SQL Server / T-SQL
Oracle PL / SQL
Oracle PL/SQL Tutorial
PostgreSQL
SQL / MySQL
MySQL Tutorial
VB.Net
VB.Net Tutorial
Java » SWT JFace Eclipse » ImageScreenshots 
Transfer type to transfer SWT ImageData objects.

/**
 * Transfer type to transfer SWT ImageData objects.
 */

import java.io.ByteArrayInputStream;
import java.io.ByteArrayOutputStream;
import java.io.DataInputStream;
import java.io.DataOutputStream;
import java.io.IOException;

import org.eclipse.swt.SWT;
import org.eclipse.swt.dnd.ByteArrayTransfer;
import org.eclipse.swt.dnd.DND;
import org.eclipse.swt.dnd.TransferData;
import org.eclipse.swt.graphics.ImageData;
import org.eclipse.swt.graphics.ImageLoader;

public class ImageTransfer extends ByteArrayTransfer {

  private static final String TYPENAME = "imagedata";

  private static final int TYPEID = registerType(TYPENAME);

  private static ImageTransfer _instance = new ImageTransfer();

  public static ImageTransfer getInstance() {
    return _instance;
  }

  public void javaToNative(Object object, TransferData transferData) {
    if (!checkImage(object|| !isSupportedType(transferData)) {
      DND.error(DND.ERROR_INVALID_DATA);
    }
    ImageData imdata = (ImageDataobject;
    try {
      // write data to a byte array and then ask super to convert to
      // pMedium
      ByteArrayOutputStream out = new ByteArrayOutputStream();
      DataOutputStream writeOut = new DataOutputStream(out);
      ImageLoader loader = new ImageLoader();
      loader.data = new ImageData[] { imdata };
      loader.save(writeOut, SWT.IMAGE_BMP);
      writeOut.close();
      byte[] buffer = out.toByteArray();
      super.javaToNative(buffer, transferData);
      out.close();
    catch (IOException e) {
    }
  }

  public Object nativeToJava(TransferData transferData) {
    if (!isSupportedType(transferData))
      return null;

    byte[] buffer = (byte[]) super.nativeToJava(transferData);
    if (buffer == null)
      return null;

    ImageData imdata;
    try {
      ByteArrayInputStream in = new ByteArrayInputStream(buffer);
      DataInputStream readIn = new DataInputStream(in);
      imdata = new ImageData(readIn);
      readIn.close();
    catch (IOException ex) {
      return null;
    }
    return imdata;
  }

  protected String[] getTypeNames() {
    return new String[] { TYPENAME };
  }

  protected int[] getTypeIds() {
    return new int[] { TYPEID };
  }

  boolean checkImage(Object object) {
    return (object != null && object instanceof ImageData);
  }

  protected boolean validate(Object object) {
    return checkImage(object);
  }
}


           
       
Related examples in the same category
1. Image Analyzer in SWTImage Analyzer in SWT
2. Set icons with different resolutionsSet icons with different resolutions
3. Capture a widget image with a GCCapture a widget image with a GC
4. Create an icon (in memory)Create an icon (in memory)
5. Display an animated GIFDisplay an animated GIF
6. Rotate and flip an imageRotate and flip an image
7. Display an image in a groupDisplay an image in a group
8. SWT and Image
9. Draw Images ExampleDraw Images Example
10. Clip ImageClip Image
11. Double BufferDouble Buffer
12. Image BasicsImage Basics
13. File Icon Util
14. Demonstrates how to draw imagesDemonstrates how to draw images
15. scroll an image (flicker free, no double buffering)scroll an image (flicker free, no double buffering)
ww_w_.___ja__v___a__2s.__com_ | Contact Us
Copyright 2003 - 08 Demo Source and Support. All rights reserved.
All other trademarks are property of their respective owners.