summaryrefslogtreecommitdiffstats
path: root/qtjava/javalib/examples/dragdrop/SecretDrag.java
diff options
context:
space:
mode:
Diffstat (limited to 'qtjava/javalib/examples/dragdrop/SecretDrag.java')
-rw-r--r--qtjava/javalib/examples/dragdrop/SecretDrag.java53
1 files changed, 53 insertions, 0 deletions
diff --git a/qtjava/javalib/examples/dragdrop/SecretDrag.java b/qtjava/javalib/examples/dragdrop/SecretDrag.java
new file mode 100644
index 00000000..fd12aed3
--- /dev/null
+++ b/qtjava/javalib/examples/dragdrop/SecretDrag.java
@@ -0,0 +1,53 @@
+/***************************************************************************
+* $Id$
+**
+* Custom MIME type implementation example
+**
+* Created : 979899
+**
+* Copyright (C) 1997 by Trolltech AS. All rights reserved.
+**
+* This file is part of an example program for Qt. This example
+* program may be used, distributed and modified without limitation.
+**
+****************************************************************************/
+import org.kde.qt.*;
+
+
+class SecretDrag extends QStoredDrag {
+
+//create the object withe the secret byte
+public SecretDrag( byte secret, QWidget parent, String name )
+{
+ super( "secret/magic", parent, name );
+ byte[] data = { 0 };
+ data[0]= secret;
+ setEncodedData( data );
+}
+
+public SecretDrag( byte secret, QWidget parent )
+{
+ this(secret, parent, null);
+}
+
+
+public static boolean canDecode( QDragMoveEvent e )
+{
+ return e.provides( "secret/magic" );
+}
+
+//decode it into a string
+public static boolean decode( QDropEvent e, StringBuffer str )
+{
+ byte[] payload = e.data( "secret/magic" );
+ if ( payload.length > 0 ) {
+ e.accept();
+ String msg = "The secret number is " + payload[0];
+ str.setLength(0);
+ str.append(msg);
+ return true;
+ }
+ return false;
+}
+
+}