001: /*
002: * Copyright (C) 2005 - 2008 JasperSoft Corporation. All rights reserved.
003: * http://www.jaspersoft.com.
004: *
005: * Unless you have purchased a commercial license agreement from JasperSoft,
006: * the following license terms apply:
007: *
008: * This program is free software; you can redistribute it and/or modify
009: * it under the terms of the GNU General Public License version 2 as published by
010: * the Free Software Foundation.
011: *
012: * This program is distributed WITHOUT ANY WARRANTY; and without the
013: * implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
014: * See the GNU General Public License for more details.
015: *
016: * You should have received a copy of the GNU General Public License
017: * along with this program; if not, see http://www.gnu.org/licenses/gpl.txt
018: * or write to:
019: *
020: * Free Software Foundation, Inc.,
021: * 59 Temple Place - Suite 330,
022: * Boston, MA USA 02111-1307
023: *
024: *
025: *
026: *
027: * TransferableObject.java
028: *
029: * Created on 14 novembre 2003, 0.54
030: *
031: */
032:
033: package it.businesslogic.ireport.gui.dnd;
034:
035: /**
036: *
037: * @author Administrator
038: */
039: public class TransferableObject implements
040: java.awt.datatransfer.Transferable {
041:
042: Object obj;
043: java.awt.datatransfer.DataFlavor this Flavor;
044:
045: /** Creates a new instance of TransferableObject */
046: public TransferableObject(Object obj) {
047: this .obj = obj;
048: this Flavor = new java.awt.datatransfer.DataFlavor(obj
049: .getClass(), obj.getClass().getName());
050: }
051:
052: public Object getTransferData(
053: java.awt.datatransfer.DataFlavor flavor)
054: throws java.awt.datatransfer.UnsupportedFlavorException,
055: java.io.IOException {
056: if (flavor.equals(this Flavor)) {
057: return obj;
058: }
059: // GDN new code start
060: else if (flavor
061: .equals(java.awt.datatransfer.DataFlavor.stringFlavor)) {
062: return new String(); // anything non-null
063: } else
064: // GDN new code end
065: return null;
066: }
067:
068: public java.awt.datatransfer.DataFlavor[] getTransferDataFlavors() {
069: // GDN new code start
070: java.awt.datatransfer.DataFlavor stringFlavor = java.awt.datatransfer.DataFlavor.stringFlavor;
071: return new java.awt.datatransfer.DataFlavor[] { this Flavor,
072: stringFlavor };
073: // GDN new code end
074:
075: // GDN comment out-->return new java.awt.datatransfer.DataFlavor[]{thisFlavor};
076: }
077:
078: public boolean isDataFlavorSupported(
079: java.awt.datatransfer.DataFlavor flavor) {
080: // GDN comment out
081: // if (flavor != null && flavor.equals( thisFlavor ))
082: // {
083: // return true;
084: // }
085: //
086: // return false;
087: // GDN comment out
088: // GDN new code begin
089: if (flavor == null)
090: return false;
091: else if (flavor.equals(this Flavor))
092: return true;
093: else if (flavor
094: .equals(java.awt.datatransfer.DataFlavor.stringFlavor))
095: return true;
096: else
097: return false;
098: // GDN new code end
099: }
100:
101: }
|